aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/src/gen_statem.erl
AgeCommit message (Collapse)Author
2018-01-24Merge branch 'maint'Raimo Niskanen
Conflicts: lib/stdlib/src/gen_statem.erl
2018-01-16Optimize plain call response timeRaimo Niskanen
2017-10-11Merge pull request #1595 from ↵Raimo Niskanen
RaimoNiskanen/raimo/stdlib/gen_statem-clean_timeout-infinity/OTP-13073 Change gen_statem:call(_, _, {clean_timeout,infinity}) to use proxy
2017-10-10Update gen_statem.erlRuan Pienaar
2017-10-09Change {clean_timeout,infinity} to use proxyRaimo Niskanen
2017-09-05stdlib: add Unicode translation modifier in debug format funsSiri Hansen
This is now ok since sys opens the debug file with encoding utf8. Conflicts: lib/stdlib/src/gen_server.erl
2017-09-05stdlib : Improve handling of UnicodeHans Bolinder
2017-05-18stdlib: Limit the size of gen_statem's error eventsHans Bolinder
The postponed events, the user state and data, and the error reason are all limited in error events (if the Kernel variable error_logger_format_depth is set).
2017-05-02Rolled back loop_receive function. HibernateAfterTimeout timeout used even ↵Anton N Ryabkov
in case of active timers exists. Added unit tests for hibernate_after functionality combined with gen_statem timers.
2017-05-02"auto_hibernate_timeout" option renamed to "hibernate_after".Anton N Ryabkov
It was done because "hibernate_after" option already used in ssl for the same reason.
2017-05-02Added support of auto_hibernate_timeout option for gen_statem.Anton N Ryabkov
2017-04-21Implement {timeout,Name} timeoutsRaimo Niskanen
2017-04-20Implement erlang:start_timer optsRaimo Niskanen
2017-04-20Make Module:init/1 mandatoryRaimo Niskanen
2017-02-23Make code_change/4 optionalRaimo Niskanen
2017-02-23Implement fallback for terminate/3Raimo Niskanen
2017-02-22Stop pampering with stacktracesRaimo Niskanen
2017-02-22Clean up timer handlingRaimo Niskanen
2017-02-07Remove event timer optimizationRaimo Niskanen
Handle the event timer more like other timers and do not optimize the odd case of combining an event timeout with inserting custom events, wich by definition cancels the event timeout.
2017-02-07Clean up timer handlingRaimo Niskanen
2017-02-03Reduce number of loop variables hence code massRaimo Niskanen
2017-02-02Optimize by using async cancel_timerRaimo Niskanen
2017-02-01Bugfix: callback mode not cached after code changeRaimo Niskanen
Fix lots of internal state updates just before termination that could cause crash reports confused about timers.
2017-01-30Implement repeat_state and repeat_state_and_dataRaimo Niskanen
2017-01-23Correct type checking function for action {next_event,,}Raimo Niskanen
2017-01-20Change arity of type to init_result/1Raimo Niskanen
2016-10-26Log terminate to sys debugRaimo Niskanen
2016-10-26Optimize event timeoutRaimo Niskanen
Do not start an event timer unless there are no enqueued events.
2016-10-26Rework timeout handlingRaimo Niskanen
Handling of timers and timeouts has been cleaned up and generalized. Semantic change regarding state timeout zero: Previously if one state caused a state timeout zero and managed to stay in the same state to insert additional timeout zero(s) in the next state callback invocation, then there would be only one timeout zero event. The mindset was that the machine was faster then the timeout zero. This has changed with the mindset that all state callback invocations should be independent, so now the machine will get one state timeout zero event per started state timeout zero. Note that just using zero timeouts is fairly esoteric...
2016-10-24Fix doc and type for state enter callsRaimo Niskanen
2016-10-14Fix race condition in cancel_timer/1Raimo Niskanen
2016-10-13Use parameterized typesRaimo Niskanen
2016-10-12Implement state timeoutsRaimo Niskanen
2016-10-04Improve docs and typesRaimo Niskanen
2016-09-30Change state entry events into state enter callsRaimo Niskanen
2016-09-16Implement state entry eventsRaimo Niskanen
2016-09-16Implement call/3 dirty_timeoutRaimo Niskanen
2016-08-18Improve sys debugRaimo Niskanen
2016-08-17Handle exceptions in init/1 and callback_mode/0Raimo Niskanen
2016-08-17Clarify error valuesRaimo Niskanen
2016-08-10Doc fixesRaimo Niskanen
2016-07-27Rewrite gen_statem for M:callback_mode/0Raimo Niskanen
2016-07-18Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187Raimo Niskanen
2016-05-04Fix documentationRaimo Niskanen
2016-04-28Clean up terminate functionsRaimo Niskanen
2016-04-27Fix callback mode after code change not usedRaimo Niskanen
2016-04-27Restructure loop_* to clarify S handlingRaimo Niskanen
2016-04-27Fix hibernation subtletyRaimo Niskanen
2016-04-21Modify code_change/4 to return CallbackModeRaimo Niskanen
Also move check of non-atom states in callback mode state_functions to where the state function is called. This gives homogenous diagnostics for state functions, code_change/4 and system_replace_state StateFun. Irregularities pointed out by James Fish.
2016-04-12Fix missing short forms for event timeoutRaimo Niskanen