Skip to content

Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 - autoclosed #512

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 30, 2021

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
org.reactivestreams:reactive-streams-tck (source) 1.0.2 -> 1.0.3 age adoption passing confidence

Release Notes

reactive-streams/reactive-streams

v1.0.3

Compare Source

Announcement:

We—the Reactive Streams community—are pleased to announce the immediate availability of Reactive Streams 1.0.3. This update to Reactive Streams brings the following improvements over 1.0.2.

Highlights:

  • Specification
  • Interfaces
    • No changes
  • Technology Compatibility Kit (TCK)
  • Examples
    • No changes
  • Artifacts
    • FlowAdapters artifact removed, FlowAdapters moved into the core jar (#​424)

Specification clarifications 1.0.3

Glossary term "External synchronization" replaced by "Serial(ly)"

1.0.2: Access coordination for thread safety purposes implemented outside of the constructs defined in this specification, using techniques such as, but not limited to, atomics, monitors, or locks.

1.0.3 In the context of a Signal, non-overlapping. In the context of the JVM, calls to methods on an object are serial if and only if there is a happens-before relationship between those calls (implying also that the calls do not overlap). When the calls are performed asynchronously, coordination to establish the happens-before relationship is to be implemented using techniques such as, but not limited to, atomics, monitors, or locks.

Publisher Rule 3 (Rule and Intent clarified)

1.0.2: onSubscribe, onNext, onError and onComplete signaled to a Subscriber MUST be signaled in a thread-safe manner—and if performed by multiple threads—use external synchronization.

The intent of this rule is to make it clear that external synchronization must be employed if the Publisher intends to send signals from multiple/different threads.

1.0.3: onSubscribe, onNext, onError and onComplete signaled to a Subscriber MUST be signaled serially.

The intent of this rule is to permit the signalling of signals (including from multiple threads) if and only if a happens-before relation between each of the signals is established.

Subscriber Rule 1 (Intent clarified)

1.0.2: A Subscriber MUST signal demand via Subscription.request(long n) to receive onNext signals.

The intent of this rule is to establish that it is the responsibility of the Subscriber to signal when, and how many, elements it is able and willing to receive.

1.0.3: A Subscriber MUST signal demand via Subscription.request(long n) to receive onNext signals.

The intent of this rule is to establish that it is the responsibility of the Subscriber to decide when and how many elements it is able and willing to receive. To avoid signal reordering caused by reentrant Subscription methods, it is strongly RECOMMENDED for synchronous Subscriber implementations to invoke Subscription methods at the very end of any signal processing. It is RECOMMENDED that Subscribers request the upper limit of what they are able to process, as requesting only one element at a time results in an inherently inefficient "stop-and-wait" protocol.

Subscriber Rule 5 (Intent clarified)

1.0.2: A Subscriber MUST call Subscription.cancel() on the given Subscription after an onSubscribe signal if it already has an active Subscription

The intent of this rule is to prevent that two, or more, separate Publishers from thinking that they can interact with the same Subscriber. Enforcing this rule means that resource leaks are prevented since extra Subscriptions will be cancelled.

1.0.3: A Subscriber MUST call Subscription.cancel() on the given Subscription after an onSubscribe signal if it already has an active Subscription

The intent of this rule is to prevent that two, or more, separate Publishers from trying to interact with the same Subscriber. Enforcing this rule means that resource leaks are prevented since extra Subscriptions will be cancelled. Failure to conform to this rule may lead to violations of Publisher rule 1, amongst others. Such violations can lead to hard-to-diagnose bugs.

Subscriber Rule 7 (Rule and Intent clarified)

1.0.2: A Subscriber MUST ensure that all calls on its Subscription take place from the same thread or provide for respective external synchronization.

The intent of this rule is to establish that external synchronization must be added if a Subscriber will be using a Subscription concurrently by two or more threads.

1.0.3: A Subscriber MUST ensure that all calls on its Subscription's request and cancel methods are performed serially.

The intent of this rule is to permit the calling of the request and cancel methods (including from multiple threads) if and only if a happens-before relation between each of the calls is established.

TCK alterations 1.0.3

  • PublisherVerification.optional_spec105_emptyStreamMustTerminateBySignallingOnComplete fails if the publisher completes synchronously (#​422)
  • IdentityFlowProcessorVerification throws NPE when createFailedFlowPublisher returns null (#​425)
  • required_spec208_mustBePreparedToReceiveOnNextSignalsAfterHavingCalledSubscriptionCancel does not wait for request before invoking onNext (#​277)
  • Subscriber whitebox verification tests demand (#​280)
  • Incomplete documentation on stochastic tests in TCK (#​278)
  • TCK performance (#​446)
  • TCK: Receptacle#expectError timeout approach (#​451)

Contributors



Configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled due to failing status checks.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by WhiteSource Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 13 times, most recently from f06cd9a to d19f15c Compare April 30, 2021 14:45
@oryan-block
Copy link
Collaborator

oryan-block commented Apr 30, 2021

Waiting for

@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 7 times, most recently from 49d50b3 to 8327e23 Compare May 6, 2021 13:29
@renovate renovate bot changed the title Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 - autoclosed May 7, 2021
@renovate renovate bot closed this May 7, 2021
@renovate renovate bot deleted the renovate/org.reactivestreams-reactive-streams-tck-1.x branch May 7, 2021 08:38
@renovate renovate bot changed the title Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 - autoclosed Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 May 7, 2021
@renovate renovate bot reopened this May 7, 2021
@renovate renovate bot restored the renovate/org.reactivestreams-reactive-streams-tck-1.x branch May 7, 2021 12:13
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 2 times, most recently from d96628c to 4fd57c8 Compare May 12, 2021 13:55
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch from 4fd57c8 to 1acd311 Compare May 17, 2021 19:32
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 2 times, most recently from bb2bb93 to d50bb95 Compare September 27, 2021 18:04
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch from d50bb95 to f7af4ad Compare October 4, 2021 21:34
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 2 times, most recently from 483ea81 to 3d61b75 Compare October 21, 2021 14:04
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch from 3d61b75 to 6a2267d Compare November 8, 2021 16:06
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 5 times, most recently from 5532ab0 to 51e7e2a Compare November 19, 2021 20:31
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch from 51e7e2a to 400323a Compare November 30, 2021 17:27
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 4 times, most recently from 9b6dad6 to 09091be Compare December 21, 2021 14:53
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 2 times, most recently from 1258f8e to 69a323c Compare December 30, 2021 15:25
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch 7 times, most recently from 60923b8 to 01feedd Compare January 14, 2022 21:29
@renovate renovate bot force-pushed the renovate/org.reactivestreams-reactive-streams-tck-1.x branch from 01feedd to cfae40b Compare January 17, 2022 20:06
@renovate renovate bot changed the title Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 Update dependency org.reactivestreams:reactive-streams-tck to v1.0.3 - autoclosed Jan 18, 2022
@renovate renovate bot closed this Jan 18, 2022
@renovate renovate bot deleted the renovate/org.reactivestreams-reactive-streams-tck-1.x branch January 18, 2022 18:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants