Commit graph

64 commits

Author SHA1 Message Date
Arnout Engelen
c41c0420ad
Update scala to 2.13.3 and silencer to 1.7.0 (#28991)
* Update scala to 2.13.3 and silencer to 1.7.0
* Also travis
* Fix various warnings
2020-08-10 12:54:38 +02:00
contrun
4f2e82e5f6
stream: Unencoded attribute name (#28955) 2020-06-12 13:57:35 +02:00
Arnout Engelen
9a1d5191b9
Allow taking a stream snapshot of a stream that uses TLS (#29047) 2020-05-13 09:14:04 +02:00
kerr
0e4d41ad33
+build Add sort imports support. (#28780)
* Add scalafix plugin for jdk 9.
* Add command alias sortImports.
* Excludes some sources from SortImports.
* Update SortImports to 0.4.0
* Sort imports with `sortImports` command.
2020-04-27 14:32:18 +02:00
Helena Edelson
6bf20f4117 Update all copyright headers to 2020 after new year's #27881 (#28434) 2020-01-02 13:24:59 +01:00
Johan Andrén
a56a53734f Avoid deadlock on concurrent extension with materializer init (#28046)
* Avoid deadlock on concurrent extension with materializer init #28037

* Wrap blocking extension await with blocking context
2019-10-25 17:05:59 +01:00
Johan Andrén
8d8c7dbada Add names for input and output boundaries 2019-10-17 09:30:40 +02:00
Johannes Rudolph
7e6f351138
stream: add CancellationStrategy attribute to configure default stage cancellation behaviors 2019-10-15 14:24:47 +02:00
Johan Andrén
4f9a4b5403 System materializer guardian (#27723)
* Eager creation of system materializer on system startup #26850

* System level materializers always spawned under a specific system actor #26850

* No need for RepointableActorRef logic anymore

* MiMa filter

* Make the creation timeout higher
2019-09-26 22:49:33 +02:00
Johan Andrén
37a76aa9a0
BlockingIODispatcher actually not needed #27632 2019-09-26 15:52:18 +02:00
Patrik Nordwall
1d38f1579a unmoored doc comment in PhasedFusingActorMaterializer (#27641) 2019-09-06 09:39:52 +02:00
Johan Andrén
b68d67008a
Deprecate actor materializer (#27538) 2019-09-05 16:08:37 +02:00
Johan Andrén
aca63ea198
Materializer settings as attributes (#27499)
* Replace MaterializerSettings with Attributes #25559 
 * Field access to settings deprecated to make stages use attributes instead
 * Internal stages updated to use attributes
 * Docs on ActorMaterializerSettings updated to recommend away from using it
 * Verify all stages stopped after each testcase in FlowGroupBySpec
 * Subscription timeout attributes merged into one
2019-09-04 13:37:06 +02:00
Patrik Nordwall
10d32fceb9 scheduleWithFixedDelay vs scheduleAtFixedRate, #26910
* 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
2019-06-05 11:38:04 +02:00
Christopher Batey
e7e628c831 Internal stable markers
A marker on a class means that its name shouldn't change, if any of its
methods should not change they will be marked as well
2019-05-31 14:15:09 +01:00
Johan Andrén
81b1e2ef9b Internal dispatcher to protect against starvation (#26816)
* Allow for dispatcher aliases and define a internal dispatcher
* Test checking dispatcher name
* MiMa for Dispatchers
* Migration guide entry
* No need to have custom dispatcher lookup logic in streams anymore
* Default dispatcher size and migration note about that
* Test checking exact config values...
* Typed receptionist on internal dispatcher
* All internal usages of system.dispatcher gone through
2019-05-02 22:35:25 +02:00
Nicolas Vollmar
c9b3f1de6d GrapheStage implementation for actorRef source (#25324) (#26054)
* Adds internal access to materializer before initialization (#25324)

* Implements new actorRef source based on graph stage  (#25324)

* Removes obsolete actorRef source (#25324)

* Improves backwards compatibility with old implementation (#25324)

* Removes dedicated new subclass for materializer access again  (#25324)

* Improves implementation (#25324)

* Finalizes implementation (#25324)

* Small improvements to API and documentation (#25324)

* Completion strategy as a replacement for poison pill (#25324)

* Adding more tests and updating the documentation (#25324)
2019-03-27 14:16:38 +01:00
Auto Format
75579bed17 format source with scalafmt, #26511 2019-03-15 10:23:46 +01:00
Auto Format
ce404e4f53 format source with scalafmt 2019-03-11 16:58:55 +01:00
Patrik Nordwall
5c96a5f556 replace unicode arrows
* ⇒, →, ←
* 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
2019-03-11 16:58:51 +01:00
Christopher Batey
51add23b2a Cleanup various warnings in akka-stream #26395 2019-02-26 18:28:29 +01:00
kerr
bdc90052aa Update headers from 2018 to 2019 once for all. (#26165)
* 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.
2019-01-02 11:55:26 +01:00
Dale Wijnand
91101d996c Mini cleanup to stream.ActorMaterializer (#25866)
Do it once, instead of in all 4 call sites.
2018-11-05 14:10:54 +01:00
kerr
fafc59b19d update headers to regular comment (#25807) 2018-10-29 05:19:37 -04:00
Johan Andrén
dfd8d8aa81
Additional tests for async boundaries and GroupBy #24676 2018-05-03 13:24:51 +02:00
Konrad `ktoso` Malawski
563c7fbcf0 Issue 24594: Integration with sbt-headers and initial header population 2018-03-13 15:45:55 +01:00
Roman Filonenko
0ecadf7235 deduplicate logic for IODispatcher #24604 (#24619)
* deduplicate logic for IODispatcher #24604
 * introduce a resolveDispatcher helper in ActorAttributes
 * mention akka.stream.materializer.blocking-io-dispatcher instead of akka.stream.blocking-io-dispatcher in scaladocs
 * fix a flaky test
 * cosmetic changes in the touched files

* move resolveDispather helper to the Dispatcher companion object under a new name resolve

* filter out mima warning

* fix mima excludes after the 2.5.11 release

* address review comments
 * update stream-io.md with the correct dispatcher config key
 * mark ActorAttributes.Dispatcher#resolve as internal API
 * use the dispatche config key in ActorMaterializer

* add private[akka] to the resolve methods
2018-03-07 15:12:34 +01:00
Johan Andrén
fd6f30673a Actually use the relative blocking io dispatcher setting #24357
* Remove docs and have only deprecation comment on old setting
* ConfigFactory.load fixed
2018-02-22 13:42:59 +01:00
Konrad Malawski
6264f8ea70 +str #24229 back to Future[] API for stream refs
nitpicks
2018-01-23 02:27:10 +09:00
Konrad Malawski
c5a2785c7c +str #24229 implement flattening of mat values, may block; SHOULD BE INTERNAL API
add java documentation

images
2018-01-23 02:27:10 +09:00
Johan Andrén
df40ef7bc0
Actually check the shutdown status before materializing anything (#24307) 2018-01-16 09:10:21 +01:00
Johan Andrén
4dde0742d0 Untangle settings from attributes in materializer #24063
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 ...
2018-01-11 14:14:38 +09:00
Christopher Batey
009214ae07
Update copyright to 2018 (#24241) 2018-01-04 17:26:29 +00:00
WangYifu
7c62d52151 delete unnecessary code (#24168) 2017-12-19 11:44:38 +01:00
WangYifu
d793ffb5dc fix the name of SinkModulePhase (#23939) 2017-11-09 11:01:12 +01:00
drewhk
fd0d5324bf Documentation of the new materializer system (#22699) 2017-05-19 13:46:24 +02:00
Patrik Nordwall
191bd0fe41 =str #22584 make subfusing work if diff materialize() is called
Also: removed unecessary method with wrong name, #22350
2017-03-17 12:42:13 +01:00
Martynas Mickevičius
2a9c0370e0 Add @InternalApi annotations and private markers on internal apis (#22563)
* #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
2017-03-16 20:04:07 +01:00
Patrik Nordwall
6414aaccbc small change in method dispatch that seems to impact bench results (#22564) 2017-03-16 10:27:59 +01:00
Johan Andrén
d51f7abd63 Give a good error message on unassigned ports #22552 2017-03-15 18:03:52 +01:00
Johan Andrén
60d918c490 Deprecate auto-fusing setting #22431 2017-03-15 09:15:18 +01:00
Martynas Mickevičius
11c513fda7 Merge pull request #22542 from 2m/wip-resize-mat-connections-2m
#22429 Resize connections array when needed
2017-03-13 19:43:50 +02:00
Martynas Mickevičius
9550e34394 #22429 Use Arrays.copy instead of scala builder 2017-03-13 14:52:56 +02:00
Johan Andrén
5ea2e0536c Remove superflous ownerId fields in interpreter Connection #22447 2017-03-13 12:42:49 +01:00
Johannes Rudolph
d5660acb64 Merge pull request #22513 from jrudolph/jr/w/remove-most-asInstanceOfs-in-TraversalBuilder
Small improvements to TraversalBuilder
2017-03-13 09:43:55 +01:00
Martynas Mickevičius
4bb283b458 #22429 Resize connections array when needed 2017-03-13 09:49:25 +02:00
Patrik Nordwall
9f84be6d3e optimize ins and outs of size <= 1
* avoid iterator allocation
2017-03-10 17:05:33 +01:00
Patrik Nordwall
305347d396 use new Array instead of Array.ofDim
* to avoid allocations of ClassTag and other overhead of ofDim
2017-03-10 17:02:02 +01:00
Patrik Nordwall
f542ce885c optimize actor names 2017-03-10 17:02:01 +01:00
Patrik Nordwall
8156a45818 optimize Attributes 2017-03-10 17:02:01 +01:00