Skip to content
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

Make UnmodifiableMultiset.removeIf() unsupported #6703

Closed
wants to merge 2 commits into from

Conversation

etellman
Copy link
Contributor

@etellman etellman commented Sep 5, 2023

Even if there's nothing to remove, removeIf() should throw an UnsupportedOperationException.

see #6702

Even if there's nothing to remove, removeIf() should throw an
`UnsupportedOperationException`.

see google#6702
@google-cla
Copy link

google-cla bot commented Sep 5, 2023

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

copybara-service bot pushed a commit that referenced this pull request Sep 12, 2023
Even if there's nothing to remove, `removeIf(Predicate)` should throw an
`UnsupportedOperationException`. This is theoretically an incompatible change, in that some existing code might have been calling `removeIf` with a predicate that is never true. None of Google's internal uses show this problem in tests.

Fixes #6702.
Closes #6703.

RELNOTES=`Multisets.unmodifiableMultiset(set).removeIf(predicate)` now throws an exception always, even if nothing matches `predicate`.
PiperOrigin-RevId: 564194620
copybara-service bot pushed a commit that referenced this pull request Sep 12, 2023
Even if there's nothing to remove, `removeIf(Predicate)` should throw an
`UnsupportedOperationException`. This is theoretically an incompatible change, in that some existing code might have been calling `removeIf` with a predicate that is never true. None of Google's internal uses show this problem in tests.

Fixes #6702.
Closes #6703.

RELNOTES=`Multisets.unmodifiableMultiset(set).removeIf(predicate)` now throws an exception always, even if nothing matches `predicate`.
PiperOrigin-RevId: 564194620
@cpovirk cpovirk added this to the 32.1.3 milestone Oct 6, 2023
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.

3 participants