Skip to content

Commit 9a40095

Browse files
authored
(DOCSP-44283) Removed EOL'd v4.9 (#580) (#583)
1 parent 2fd7ace commit 9a40095

File tree

1 file changed

+1
-351
lines changed

1 file changed

+1
-351
lines changed

source/whats-new.txt

Lines changed: 1 addition & 351 deletions
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,6 @@ Learn what's new in:
2727
* :ref:`Version 5.0 <version-5.0>`
2828
* :ref:`Version 4.11 <version-4.11>`
2929
* :ref:`Version 4.10 <version-4.10>`
30-
* :ref:`Version 4.9 <version-4.9>`
31-
* :ref:`Version 4.8 <version-4.8>`
32-
* :ref:`Version 4.7.1 <version-4.7.1>`
33-
* :ref:`Version 4.7.0 <version-4.7.0>`
34-
* :ref:`Version 4.6 <version-4.6>`
35-
* :ref:`Version 4.5.1 <version-4.5.1>`
36-
* :ref:`Version 4.5 <version-4.5>`
37-
* :ref:`Version 4.4 <version-4.4>`
38-
* :ref:`Version 4.3 <version-4.3>`
39-
* :ref:`Version 4.2 <version-4.2>`
40-
* :ref:`Version 4.1 <version-4.1>`
41-
* :ref:`Version 4.0 <version-4.0>`
4230

4331
.. _java-version-5.2:
4432

@@ -431,342 +419,4 @@ New features of the 4.10 driver release include:
431419
- Support for :ref:`qe-manual-feature-qe` (QE). To learn
432420
more about the requirements for using the QE feature, see the
433421
:ref:`Queryable Encryption Driver Compatibility Table
434-
<qe-compatibility-reference>`.
435-
436-
.. _version-4.9:
437-
438-
What's New in 4.9
439-
-----------------
440-
441-
.. important:: Aggregation Expression Operations Are in Beta
442-
443-
This driver version introduces an API for creating
444-
:ref:`aggregation expressions <java-aggregation-expression-operations>`.
445-
This feature is in beta phase.
446-
447-
New features of the 4.9 driver release include:
448-
449-
- Added a new exception to identify when a constructor annotated by
450-
``BsonCreator`` contains parameters with annotations other than
451-
``BsonProperty`` or ``BsonId``.
452-
- Changed the log message format for command monitoring messages reported
453-
by the ``org.mongodb.driver.protocol.command`` package.
454-
- Added support for the ``$documents`` aggregation pipeline stage to the
455-
`Aggregates <{+api+}/apidocs/mongodb-driver-core/com/mongodb/client/model/Aggregates#documents(java.util.List)>`__
456-
helper class.
457-
- Added `MongoClientSettings.Builder.applyToLoggerSettings() <{+api+}/apidocs/mongodb-driver-core/com/mongodb/MongoClientSettings.Builder.html#applyToLoggerSettings(com.mongodb.Block)>`__
458-
and `LoggerSettings.Builder.maxDocumentLength() <{+api+}/apidocs/mongodb-driver-core/com/mongodb/LoggerSettings.Builder.html#maxDocumentLength(int)>`__
459-
methods that let you specify a maximum length for the extended JSON representation of a
460-
BSON document in a log message.
461-
462-
.. _version-4.8:
463-
464-
What's New in 4.8
465-
-----------------
466-
467-
.. warning:: Breaking Changes in v4.8
468-
469-
The v4.8 driver contains breaking changes. See :ref:`<java-breaking-changes-v4.8>`
470-
and :ref:`<java-server-release-change-v4.8>` for more information.
471-
472-
.. important:: Deprecation Notice
473-
474-
The ``MapCodec`` and ``IterableCodec`` classes are deprecated.
475-
Instead of ``MapCodec``, use ``MapCodecProvider``. Instead of ``IterableCodec``,
476-
use ``CollectionCodecProvider``, or ``IterableCodecProvider`` for ``Iterable``
477-
types that aren't ``Collection`` types.
478-
479-
Behavioral changes with the 4.8 driver release include:
480-
481-
- Requirement that you add an explicit dependency on the ``org.bson.codecs.record``
482-
module if your application deploys the driver in an OSGi container and
483-
relies on the driver for encoding and decoding Java records.
484-
- Logging of new connection messages at the ``DEBUG`` level instead
485-
of at ``INFO``.
486-
487-
New features of the 4.8 driver release include:
488-
489-
- Support for authentication with AWS. The driver takes an
490-
optional dependency on both AWS SDK version 1 and version 2.
491-
- Support for obtaining credentials from the environment for both GCP
492-
and Azure for in-use encryption.
493-
- Support for deserialization of records containing components with
494-
generic parameters.
495-
- Support for deserialization of records containing components with more
496-
specific container types, such as ``SortedSet``, ``NavigableMap``, ``LinkedList``,
497-
or ``TreeSet``.
498-
- Support for recursive record types, records whose type
499-
definitions contain cycles.
500-
- Inclusion of the ``disambiguatedPaths`` field in change stream update events
501-
when the ``showExpandedEvents`` server feature is enabled on MongoDB v6.1
502-
and later. Learn more about this field from the `getDisambiguatedPaths() <https://mongodb.github.io/mongo-java-driver/4.8/apidocs/mongodb-driver-core/com/mongodb/client/model/changestream/UpdateDescription.html#getDisambiguatedPaths()>`__
503-
API documentation. Learn more about the ``showExpandedEvents`` setting from
504-
the :manual:`Expanded Events </reference/change-events/#expanded-events>`
505-
server documentation.
506-
507-
.. _version-4.7.1:
508-
.. _version-4.7:
509-
510-
What's New in 4.7.1
511-
-------------------
512-
513-
The 4.7.1 driver patches a bug that affects
514-
Client-Side Field Level Encryption and Queryable Encryption.
515-
The bug can cause data corruption when rotating :ref:`Data Encryption Keys <csfle-key-architecture>`
516-
(DEKs) encrypted with a :ref:`Customer Master Key <csfle-key-architecture>`
517-
hosted on Google Cloud Key Management Service or Azure
518-
Key Vault. The bug was present in version 4.7.0 of the driver
519-
in the ``RewrapManyDataKey`` method and causes the
520-
loss of your DEKs.
521-
522-
.. important:: Back Up your Key Vault Collection
523-
524-
Always back up your :ref:`Key Vault Collection <csfle-reference-key-vault>`
525-
before you rotate your DEKs. If you lose your DEKs, you lose access to all
526-
the data encrypted with those keys.
527-
528-
.. _version-4.7.0:
529-
530-
What's New in 4.7
531-
-----------------
532-
533-
.. warning:: Breaking Changes in v4.7
534-
535-
The v4.7 driver contains breaking changes. See :ref:`<java-breaking-changes-v4.7>`
536-
for more information.
537-
538-
New features of the 4.7 driver release include:
539-
540-
- Added full support for MongoDB 6.0.
541-
542-
- Added the following change stream support improvements:
543-
544-
- Enhanced pre-image and post-image support for :ref:`change streams <java-usage-watch>`.
545-
Change stream watch helpers now accept ``whenAvailable`` and ``required``
546-
for the ``fullDocument`` option. See the :manual:`change stream </changeStreams/#change-streams-with-document-pre--and-post-images>`
547-
reference documentation for more information.
548-
- Added a new ``fullDocumentBeforeChange`` option, which accepts
549-
``whenAvailable`` and ``required``.
550-
- Change events now include a ``fullDocumentBeforeChange`` field
551-
when configured for display on your MongoDB collection.
552-
- Added ``showExpandedEvents`` support for change streams.
553-
- Added ``wallTime`` support to the ``ChangeStreamDocument`` class.
554-
555-
- Added :ref:`clustered index <java-clustered-indexes>` creation support.
556-
- Support for new features related to :ref:`qe-manual-feature-qe`,
557-
including support for automatic encryption (MongoDB v6.0 Enterprise or later
558-
is required) and manual encryption.
559-
560-
- Support for the new Queryable Encryption shared library, which removes the need
561-
for the ``mongocryptd`` process. The queryable encryption shared library requires
562-
`org.mongodb:mongodb-crypt <https://mvnrepository.com/artifact/org.mongodb/mongodb-crypt>`__
563-
version ``1.5.1.1`` or later.
564-
565-
- Added a new API for encryption key management.
566-
567-
- Added builder API methods for more aggregation stages
568-
including :pipeline:`$search`/:pipeline:`$searchMeta` (Atlas only),
569-
:pipeline:`$densify`, and :pipeline:`$fill`. Learn more about these
570-
methods on the :ref:`Aggregates Builder <aggregates-builders>` page.
571-
572-
- Added the ``BsonExtraElements`` annotation that can be used with POJO encoding
573-
and decoding. ``BsonExtraElements`` enables decoding objects that might receive
574-
new fields in the future without requiring developers to explicitly map
575-
those new fields.
576-
577-
- Performance optimizations including:
578-
579-
- Lock-free implementations of the server session pool and the buffer pool.
580-
- A new cleanup implementation of ``DBCursor`` that uses Java's
581-
Cleaner API instead of finalization, available in Java 9 or later.
582-
583-
- The :ref:`setWindowFields <builders-aggregates-setWindowFields>` builder API
584-
is no longer a beta feature. Changes in the API break both binary and source
585-
compatibility. See :ref:`<java-breaking-changes-v4.7>` for more information.
586-
587-
.. _version-4.6:
588-
589-
What's New in 4.6
590-
-----------------
591-
592-
New features of the 4.6 Java driver release include:
593-
594-
- The buffer pool is now shared across all ``MongoClient`` instances. The
595-
buffer pool prunes buffers that have been idle for one minute.
596-
- Added an API to specify suppliers for AWS KMS credentials for
597-
Client-Side Field Level Encryption (CSFLE). See the
598-
`AutoEncryptionSettings.Builder.kmsProviderPropertySuppliers() <https://mongodb.github.io/mongo-java-driver/4.6/apidocs/mongodb-driver-core/com/mongodb/AutoEncryptionSettings.Builder.html#kmsProviderPropertySuppliers(java.util.Map)>`__
599-
and the `ClientEncryptionSettings.Builder.kmsProviderPropertySuppliers() <https://mongodb.github.io/mongo-java-driver/4.6/apidocs/mongodb-driver-core/com/mongodb/ClientEncryptionSettings.html#getKmsProviderPropertySuppliers()>`__
600-
API documentation for more information.
601-
- Added compatibility to ``org.mongodb:mongodb-crypt``, a dependency for
602-
CSFLE, for Apple M1 ARM-based hardware.
603-
- Added a service provider interface (SPI) to allow the driver to specify
604-
a custom DNS client. See the `DnsClient <https://mongodb.github.io/mongo-java-driver/4.6/apidocs/mongodb-driver-core/com/mongodb/spi/dns/DnsClient.html>`__
605-
and the `DnsClientProvider <https://mongodb.github.io/mongo-java-driver/4.6/apidocs/mongodb-driver-core/com/mongodb/spi/dns/DnsClientProvider.html>`__
606-
interface API documentation for more information.
607-
- Added driver support for encoding and decoding between `Java records <https://docs.oracle.com/en/java/javase/17/language/records.html>`__
608-
and BSON documents, which is enabled by default. See :ref:`<fundamentals-records>`
609-
for more information.
610-
611-
.. _version-4.5:
612-
.. _version-4.5.1:
613-
614-
What's New in 4.5.1
615-
-------------------
616-
617-
If the DNS server returns an NXDomain error,
618-
indicating a non-existent domain, the 4.5.1
619-
driver no longer throws an exception.
620-
621-
.. _version-4.5.0:
622-
623-
What's New in 4.5
624-
-----------------
625-
626-
New features of the 4.5 Java driver release include:
627-
628-
- Added support for specifying custom service names of SRV resource
629-
records. See the ``srvServiceName`` setting in the :ref:`Connection
630-
Options <connection-options>` guide for more information.
631-
- Added support to customize UUID representation in a codec registry using
632-
the ``CodecRegistries.withUuidRepresentation()`` method.
633-
- Added support for overriding listener settings in ``ClusterSettings``,
634-
``ServerSettings`` and ``ConnectionPoolSettings`` builders.
635-
- All events received by ``ClusterListener``, ``ServerListener``, and
636-
``ServerMonitorListener`` are now totally ordered using
637-
a happens-before relationship when the listeners are not shared by
638-
different MongoClient instances. To learn more about the happens-before
639-
ordering, see `Happens-before Order <https://docs.oracle.com/javase/specs/jls/se17/html/jls-17.html#jls-17.4.5>`__
640-
in the Java Language Specification.
641-
- Added ``EnumCodec`` and ``EnumCodecProvider`` classes to separate codec
642-
support for ``enum`` types from the ``PojoCodec`` class. The default
643-
codec registries, which you can access from the ``MongoClientSettings`` and the ``Bson``
644-
interfaces, now include the ``enum`` codec classes. If your application uses
645-
a custom enumeration codec and one of the default registries, ensure
646-
you order them as described in the section on :ref:`overriding codecs <codecs-override>`.
647-
- Resolved performance issues that impacted versions 4.4 and 4.3 of the
648-
driver. Performance in this version is similar to performance in 4.2.
649-
- Resolved an issue in which errors originating from retrieving the cluster
650-
description weren't passed to the ``onError`` Subscriber callback
651-
- Resolved an issue with releasing ``ByteBuf`` instances when you connect
652-
with compression enabled.
653-
- Removed an unnecessary dependency on the ``javax.annotation.*`` packages
654-
from the ``org.mongodb.driver-core`` OSGi bundle.
655-
656-
.. _version-4.4:
657-
658-
What's New in 4.4
659-
-----------------
660-
661-
New features of the 4.4 Java driver release include:
662-
663-
- Compatibility with MongoDB 5.1 and support for Java 17
664-
- Added support for index hints in an ``AggregateIterable``
665-
- Added support for the ``$merge`` and ``$out`` aggregation stages on secondaries
666-
- Use of the ``mergeObjects()`` method in the ``Updates`` builder
667-
- ``DocumentCodec`` does not ignore a :ref:`CodecRegistry <codecs-codecregistry>` when writing to an ``Iterable`` or a ``Map`` instance
668-
669-
.. _version-4.3:
670-
671-
What's New in 4.3
672-
-----------------
673-
674-
New features of the 4.3 Java driver release include:
675-
676-
- Added support for the MongoDB {+stable-api+}. For more information, see our
677-
:ref:`{+stable-api+} guide <stable-api-java>`.
678-
679-
.. note::
680-
681-
Starting from February 2022, the **Versioned API** is known the
682-
**{+stable-api+}**. All concepts and features remain the same with this
683-
naming change.
684-
685-
- Added support for connection to
686-
`MongoDB Atlas Serverless Instances <https://www.mongodb.com/use-cases/serverless>`__.
687-
For more information about setup, see our documentation on how to
688-
:atlas:`Create a New Serverless Instance </tutorial/create-new-serverless-instance/?jmp=docs_driver_java>`
689-
- Added a builder API for the ``setWindowFields`` pipeline stage to allow the use of window operators
690-
- Added support for setting Netty `io.netty.handler.ssl.SslContext <https://netty.io/4.1/api/io/netty/handler/ssl/SslContext.html>`__
691-
- Added support for snapshot reads to ``ClientSession``
692-
- Limited the rate of establishing new connections per connection pool
693-
- Removed most restrictions on allowed characters in the field names of documents you insert or replace. This is a behavioral change for any application that is relying on client-side enforcement of these restrictions.
694-
695-
The following table shows the restriction status on allowed characters
696-
in the field names of documents:
697-
698-
.. list-table::
699-
:header-rows: 1
700-
:stub-columns: 1
701-
:widths: 15 25 60
702-
703-
* - Character
704-
- Operation
705-
- Description
706-
707-
* - **.**
708-
- Insert and Replace
709-
- Removed restrictions on field names containing this character.
710-
711-
* - **$**
712-
- Insert
713-
- Removed restrictions on field names starting with this character.
714-
715-
* - **$**
716-
- Replace
717-
- Removed restrictions in nested documents on field names containing this character.
718-
719-
* - **$**
720-
- Replace
721-
- Kept restrictions in top-level documents on field names starting with this character. This prevents accidental use of a replace operation when the intention was to use an update operation.
722-
723-
.. note::
724-
725-
Unacknowledged writes using dollar-prefixed or dotted keys might
726-
be silently rejected by pre-5.0 servers, where some restrictions on
727-
field names are still enforced in the server.
728-
729-
.. _version-4.2:
730-
731-
What's New in 4.2
732-
-----------------
733-
734-
.. warning:: Breaking Changes in v4.2
735-
736-
The v4.2 driver contains breaking changes. See :ref:`<java-breaking-changes-v4.2>`
737-
for more information.
738-
739-
New features of the 4.2 Java driver release include:
740-
741-
- Added Azure and GCP key stores to client-side field level encryption
742-
- Added Kerberos caching tickets for reuse in multiple authentication requests
743-
- Added `MongoClients <https://mongodb.github.io/mongo-java-driver/4.2/apidocs/mongodb-driver-sync/com/mongodb/client/MongoClients.html>`_ instances with ``MongoClientSettings`` or ``ConnectionString`` as the configuration
744-
- Use of the ``explain()`` method on `find <https://mongodb.github.io/mongo-java-driver/4.2/apidocs/mongodb-driver-sync/com/mongodb/client/FindIterable.html#explain()>`_ and `aggregate <https://mongodb.github.io/mongo-java-driver/4.2/apidocs/mongodb-driver-sync/com/mongodb/client/AggregateIterable.html#explain()>`_ commands
745-
- Added a `JsonObject <https://mongodb.github.io/mongo-java-driver/4.2/apidocs/bson/org/bson/json/JsonObject.html>`_ class to make encoding from and decoding to JSON more efficient by avoiding an intermediate Map representation
746-
- Added a `BsonRepresentation <https://mongodb.github.io/mongo-java-driver/4.2/apidocs/bson/org/bson/codecs/pojo/annotations/BsonRepresentation.html>`_ annotation that allows you to represent the ``ObjectId`` BSON values as a ``String`` in `POJO <https://en.wikipedia.org/wiki/Plain_old_Java_object>`_ classes
747-
- Added a `Filters.empty() <https://mongodb.github.io/mongo-java-driver/4.2/apidocs/mongodb-driver-core/com/mongodb/client/model/Filters.html#empty()>`_ method
748-
749-
.. _version-4.1:
750-
751-
What's New in 4.1
752-
-----------------
753-
754-
New features of the 4.1 Java driver release include:
755-
756-
- Significant reduction in client-perceived failover times during planned maintenance events
757-
- The `update() <https://mongodb.github.io/mongo-java-driver/4.1/apidocs/mongodb-driver-core/com/mongodb/client/model/UpdateOptions.html#hint(org.bson.conversions.Bson)>`_ and `delete() <https://mongodb.github.io/mongo-java-driver/4.1/apidocs/mongodb-driver-core/com/mongodb/client/model/DeleteOptions.html#hint(org.bson.conversions.Bson)>`_ methods now support index hints
758-
- The ``find()`` method supports `allowDiskUse() <https://mongodb.github.io/mongo-java-driver/4.1/apidocs/mongodb-driver-sync/com/mongodb/client/FindIterable.html#allowDiskUse(java.lang.Boolean)>`_ for sorts that require too much memory to execute in RAM
759-
- Added support for the MONGODB-AWS authentication mechanism using Amazon Web Services (AWS) Identity and Access Management (IAM) credentials
760-
- Authentication requires fewer round trips to the server, resulting in faster connection setup
761-
762-
.. _version-4.0:
763-
764-
What's New in 4.0
765-
-----------------
766-
767-
.. warning:: Breaking Changes in v4.0
768-
769-
The v4.0 driver contains breaking changes. See :ref:`<java-breaking-changes-v4.0>`
770-
for more information.
771-
772-
This release adds no new features.
422+
<qe-compatibility-reference>`.

0 commit comments

Comments
 (0)