Skip to content

Commit 3d3b43b

Browse files
authored
DOCSP-45211 Upgrade major versions (#134)
1 parent f3960dd commit 3d3b43b

File tree

2 files changed

+86
-5
lines changed

2 files changed

+86
-5
lines changed

source/index.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
View the Source <https://github.com/mongodb/mongo-ruby-driver>
2525
API Documentation <{+api-root+}>
2626
What's New </whats-new>
27+
Upgrade </upgrade>
2728
Compatibility </compatibility>
2829
Databases & Collections </databases-collection>
2930

@@ -32,7 +33,6 @@
3233
Monitor Your Application </monitoring>
3334
Security </security>
3435
Issues & Help </issues-and-help>
35-
Upgrade </upgrade>
3636

3737
Introduction
3838
------------
@@ -104,11 +104,11 @@ What's New
104104
For a list of new features and changes in each version, see the :ref:`What's New <ruby-whats-new>`
105105
section.
106106

107-
.. Upgrade Driver Versions
108-
.. -----------------------
107+
Upgrade Driver Versions
108+
-----------------------
109109

110-
.. Learn what changes you must make to your application to upgrade driver
111-
.. versions in the :ref:`ruby-upgrade` section.
110+
Learn what changes you must make to your application to upgrade driver
111+
versions in the :ref:`ruby-upgrade` section.
112112

113113
Compatibility
114114
-------------

source/upgrade.txt

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
.. _ruby-upgrade:
2+
3+
=======================
4+
Upgrade Driver Versions
5+
=======================
6+
7+
.. facet::
8+
:name: genre
9+
:values: reference
10+
11+
.. meta::
12+
:keywords: backwards compatibility, update
13+
14+
.. contents:: On this page
15+
:local:
16+
:backlinks: none
17+
:depth: 2
18+
:class: singlecol
19+
20+
Overview
21+
--------
22+
23+
In this section, you can identify the changes you must make to your application
24+
to upgrade your driver to a new version.
25+
26+
Before you upgrade, perform the following actions:
27+
28+
- Ensure the new driver version is compatible with the {+mdb-server+} versions
29+
your application connects to and the Ruby versions your application runs on.
30+
To view compatibility information, see the :ref:`Compatibility <ruby-compatibility>` page.
31+
32+
- Address any breaking changes between the current version of the driver your
33+
application is using and your planned upgrade version in the :ref:`Breaking
34+
Changes <ruby-breaking-changes>` section.
35+
36+
Starting with version 2.18.0, the driver uses feature flags to manage breaking
37+
changes. This feature allows you to opt into breaking changes before the next
38+
major version release.
39+
40+
Versioning
41+
----------
42+
43+
Each {+driver-short+} release has a version number in the format
44+
``MAJOR.MINOR.PATCH``. The {+driver-short+} uses `Semantic Versioning (SemVer)
45+
<https://semver.org/>`_, which typically means:
46+
47+
- Breaking changes, enablement of new functionality, and removal of deprecated
48+
functionality will only be done in major version releases.
49+
50+
- New functionality will be added using feature flags, which must be enabled via
51+
an opt-in configuration change. These feature flags may be added in either
52+
major or minor releases.
53+
54+
- Functionality may be marked as deprecated in either major or minor releases,
55+
but will not be removed until the next major release, at the earliest.
56+
57+
- Patch version releases will contain only non-breaking fixes and security
58+
updates.
59+
60+
.. _ruby-breaking-changes:
61+
62+
Breaking Changes
63+
----------------
64+
65+
A breaking change is a modification in a convention or behavior in
66+
a specific version of the driver that might prevent your application from
67+
working properly if you don't address it before upgrading.
68+
69+
The breaking changes in this section are categorized by the driver version that
70+
introduced them. When upgrading driver versions, address all the breaking
71+
changes between the current and upgrade versions.
72+
73+
.. _ruby-breaking-changes-2.20:
74+
75+
Version 2.20 Breaking Changes
76+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77+
78+
This driver version introduces the following breaking change:
79+
80+
- Discontinues support for Ruby 2.5 and 2.6. Deprecates support for Ruby 2.7 and
81+
JRuby 9.2.

0 commit comments

Comments
 (0)