* base functionality
* fix-restart-flow
* Fix subSource / subSink cancellation handling
* GraphStage-fix
* Fix ambiguity between complete and cancellation (for isAvailable / grab)
* rename lastCancellationCause
* add mima
* fix cancellation cause propagation in OutputBoundary
* Fix cancellation cause propagation in SubSink
* Add cancellation cause logging to Flow.log
* add more comments about GraphStage portState internals
* Add some assertions in onDownstreamFinish to prevent wrong usage
* Also deprecate onDownstreamFinish() so that no one calls the wrong one
accidentally
* add SubSinkInlet.cancel(cause)
* Propagate causes in two other places
* Suggest to use `cancel(in, cause)` but don't deprecate old one
* previous `schedule` method is trying to maintain a fixed average frequency
over time, but that can result in undesired bursts of scheduled tasks after a long
GC or if the JVM process has been suspended, same with all other periodic
scheduled message sending via various Timer APIs
* most of the time "fixed delay" is more desirable
* we can't just change because it's too big behavioral change and some might
depend on previous behavior
* deprecate the old `schedule` and introduce new `scheduleWithFixedDelay`
and `scheduleAtFixedRate`, when fixing the deprecation warning users should
make a concious decision of which behavior to use (scheduleWithFixedDelay in
most cases)
* Streams
* SchedulerSpec
* test both fixed delay and fixed rate
* TimerSpec
* FSM and PersistentFSM
* mima
* runnable as second parameter list, also in typed.Scheduler
* IllegalStateException vs SchedulerException
* deprecated annotations
* api and reference docs, all places
* migration guide
* ⇒, →, ←
* because we don't want to show them in documentation snippets and
then it's complicated to avoid that when snippets are
located in src/test/scala in individual modules
* dont replace object `→` in FSM.scala and PersistentFSM.scala
* Add CopyrightHeader support for sbt-boilerplate plugin.
* Add CopyrightHeader support for `*.proto` files.
* Add regex match for both `–` and `-` for CopyrightHeader.
* Add CopyrightHeader support for sbt build files.
* Update copyright from 2018 to 2019.
* it was noticed in Source.fromIterator depending on where the
iterator throwed exception
* fromIterator, as many other things, is implemented with
statefulMapConcat
* supervision was only used for exceptions in onPush and not
in onPull, added it there also
progressed with cleanup, removing the same thread exec context is
weird... causes issues :-/ Need to debug more, could be that some race
also exists in mapAsync then :\
WIP
finish ask impl via watch stage
mima
consistency spec
fix paradox, and fix adding ask/watch to javadsl source
follow up review
Instead of renaming - deprecating and documenting
Renaming defaultInitialAttributes to defaultAttributes and adding docs
Tests passing
More work on using attributes for the attribute settings in ActorMaterializerSettings
Mark some attributes as mandatory and provide a smoother access w/o allocation for those
Another warning notice
MiMa filters
Part of the review adressed
Incorrect rebase fixed + formatting
Review feedback adressed
Formatting ...
* =str #22880 fix mapAsync racy failure handling
* =str #22881 test also resume case for throwing mid-stream mapAsync
* address review feedback, the handle calls must be exactly like that
* added a failing test to demonstrate a bug in groupedWeightedWithin with zero cost function
* fixed the bug by adding a flag indicating if there are elements in buffer, and using it instead of totalWeight in case onTimer is called
* #22506 Mark materializer extension as @InternalApi
* #22506 Added missing annotations on internal apis in the fusing package
* #22506 Missing annotations in io package
* #22506 Add internal api annotations in impl package
* #22563 more hiding of the classes in the impl package
* #22563 Formatting fixes
* #22506 Fix private access in stream tcl tests
* Add comprehensive tests
* Add documentation
* Damn comma after rebase
* Add documentation for foldAsync and scanAsync
* Rename aggreator and aggreating to current
* Remove out availability check
* Revert removing out and some refactors
* Formatting documentation
* Use after instead of Promise in test
* Use package reference to after and some refactoring
* fail fast in mapAsync for completed failed future, #21318
* the callback was not run until todo == parallelism or the sync
event limit was reached, and that can be a problem if upstream
stages are slow (noticed this for a blocking Kafka producer stage)
* skip callback for completed futures
* fix callback allocation