With erlang 20 gen_fsm is marked as depricated to make place for
gen_statem. While gen_statem is sure great it feels just silly to
move perfectly good gen_fsm code to gen_statem just because.
As gen_fsm will eventually go away keeping it and just turning off
warnings also isn't the best solution it will just postpone the
problem.
This is the third option, gen_fsm_compat is a 1:1 copy of R19.3
gen_fsm that will keep working without deprication warnings and
in result make a move to 20+ a lot easier.
With erlang 20 gen_fsm is marked as depricated to make place for gen_statem. While gen_statem is sure great it feels just silly to move perfectly good gen_fsm code to gen_statem just because.
As gen_fsm will eventually go away keeping it and just turning off warnings also isn't the best solution it will just postpone the problem.
This is the third option, gen_fsm_compat is a 1:1 copy of R19.3 gen_fsm that will keep working without deprication warnings and in result make a move to 20+ a lot easier.