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

Merge 5.0 breaking changes into the main line of development #1268

Merged
merged 28 commits into from Dec 5, 2023
Merged

Conversation

jyemin
Copy link
Contributor

@jyemin jyemin commented Dec 4, 2023

This PR merges the 5.x branch so that it becomes the main line of development in preparation for the 5.0.0 release.

@jyemin jyemin self-assigned this Dec 4, 2023
@jyemin jyemin requested a review from stIncMale December 4, 2023 17:47
@jyemin jyemin changed the title Merge 5.x into main branch Merge 5.x into the main line of development Dec 4, 2023
@jyemin jyemin changed the title Merge 5.x into the main line of development Merge 5.0 breaking changes into the main line of development Dec 4, 2023
  MongoClientSettings#getStreamFactoryFactory()
  MongoClientSettings.Builder#streamFactoryFactory(StreamFactoryFactory)
  AsynchronousSocketChannelStreamFactory
  AsynchronousSocketChannelStreamFactoryFactory
  BufferProvider
  SocketStreamFactory
  Stream
  StreamFactory
  StreamFactoryFactory
  TlsChannelStreamFactoryFactory
  NettyStreamFactory
  NettyStreamFactoryFactory

JAVA-5161
* Remove builders
* Remove now-unused factory configuration
* Simplify usage in MongoClient instantiation

JAVA-5161
* ServerAddress#getSocketAddress
* ServerAddress#getSocketAddresses
* UnixServerAddress#getSocketAddress
* UnixServerAddress#getUnixSocketAddress

JAVA-4937
Since we ended up adding explain support to FindIterable,
no reason to leave it deprecated in the legacy API.

JAVA-5154
The dead code is a remnant of when the driver supported the
full range of OP_REPLY wire protocol message usage.  Since the driver
now only runs against MongoDB releases that support OP_MSG,
OP_REPLY is only used for the response to the `hello` command
in the handshake, and therefore most of the OP_REPLY-handling code is
no longer on any execution paths.

JAVA-5204
Now that Stream is not part of the API, this method
can be removed.  It only existed due to the possibility
that an application creates its own Stream implementation.

JAVA-5180
from the following internal interfaces:

* ClusterAwareReadWriteBinding
* AsyncClusterAwareReadWriteBinding

The interfaces remain as they have picket up a second method.

JAVA-5217
Since StreamFactoryFactory is now internal, just made that interface
extend AutoCloseable in order to simplify MongoClients code

JAVA-5158
* ConnectionPoolOpenedEvent
* ConnectionAddedEvent
* ConnectionRemovedEvent
* ConnectionPoolListener#connectionPoolOpened
* ConnectionPoolListener#connectionAdded
* ConnectionPoolListener#connectionRemoved

JAVA-5151
* ClusterListenerAdapter
* ConnectionPoolListenerAdapter
* ServerListenerAdapter
* ServerMonitorListenerAdapter

JAVA-5151
It's still used by IterableCodecProvider, so it can't be removed entirely.
(Though IterableCodecProvider is almost entirely supplanted by CollectionCodecProvider,
it was not itself deprecated because it provides a codec for any Iterable, while
CollectionCodecProvider only provides one for any Collection, which is not quite the
same thing).

JAVA-5142
@jyemin
Copy link
Contributor Author

jyemin commented Dec 4, 2023

Converting to draft as there are retryable writes test failures on 4.0 and 4.2 replica sets. Seems due to the change with error labels on write concern errors (#1257).

@jyemin
Copy link
Contributor Author

jyemin commented Dec 4, 2023

Reverted the change that was breaking the tests.

@jyemin jyemin marked this pull request as ready for review December 4, 2023 21:02
@jyemin jyemin merged commit 75c00da into master Dec 5, 2023
56 checks passed
@jyemin jyemin deleted the 5.x branch December 5, 2023 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants