Skip to content

Commit 3aeabeb

Browse files
authored
docs: maintenance (#403)
1 parent 64227d1 commit 3aeabeb

2 files changed

Lines changed: 59 additions & 1 deletion

File tree

MAINTENANCE.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Release Schedule
2+
3+
| Release Date | Release |
4+
| ------------ | ------------------------------------------------------------------------------------------ |
5+
| Nov 19 2024 | [Release 1.0.0](https://github.com/awslabs/aws-advanced-nodejs-wrapper/releases/tag/1.0.0) |
6+
| Dec 12 2024 | [Release 1.1.0](https://github.com/awslabs/aws-advanced-nodejs-wrapper/releases/tag/1.1.0) |
7+
8+
`aws-advanced-nodejs-wrapper` [follows semver](https://semver.org/#semantic-versioning-200) which means we will only
9+
release breaking changes in major versions. Generally speaking patches will be released to fix existing problems without
10+
adding new features. Minor version releases will include new features as well as fixes to existing features. We will do
11+
our best to deprecate existing features before removing them completely.
12+
13+
For minor version releases, `aws-advanced-nodejs-wrapper` uses a “release-train” model. Approximately every four weeks we
14+
release a new minor version which includes all the new features and fixes that are ready to go.
15+
Having a set release schedule makes sure `aws-advanced-nodejs-wrapper` is released in a predictable way and prevents a
16+
backlog of unreleased changes.
17+
18+
In contrast, `aws-advanced-nodejs-wrapper` releases new major versions only when there are a critical mass of
19+
breaking changes (e.g. changes that are incompatible with existing APIs). This tends to happen if we need to
20+
change the way the driver is currently working. In the event that the API changes we will release a version to be compatible.
21+
22+
Please note: Both the roadmap and the release dates reflect intentions rather than firm commitments and may change
23+
as we learn more or encounter unexpected issues. If dates do need to change, we will be as transparent as possible,
24+
and log all changes in the changelog at the bottom of this page.
25+
26+
# Maintenance Policy
27+
28+
For `aws-advanced-nodejs-wrapper` new features and active development always takes place against the newest version.
29+
The `aws-advanced-nodejs-wrapper` project follows the semantic versioning specification for assigning version numbers
30+
to releases, so you should be able to upgrade to the latest minor version of that same major version of the
31+
software without encountering incompatible changes (e.g., 1.1.0 → 1.3.x).
32+
33+
Sometimes an incompatible change is unavoidable. When this happens, the software’s maintainers will increment
34+
the major version number (e.g., increment from `aws-advanced-nodejs-wrapper` 1.1.1 to `aws-advanced-nodejs-wrapper` 2.0.0).
35+
The last minor version of the previous major version of the software will then enter a maintenance window
36+
(e.g., 1.3.x). During the maintenance window, the software will continue to receive bug fixes and security patches,
37+
but no new features.
38+
39+
We follow OpenSSF’s best practices for patching publicly known vulnerabilities, and we make sure that there are
40+
no unpatched vulnerabilities of medium or higher severity that have been publicly known for more than 60 days
41+
in our actively maintained versions.
42+
43+
The duration of the maintenance window will vary from product to product and release to release.
44+
By default, versions will remain under maintenance until the next major version enters maintenance,
45+
or 1-year passes, whichever is longer. Therefore, at any given time, the current major version and
46+
previous major version will both be supported, as well as older major versions that have been in maintenance
47+
for less than 12 months. Please note that maintenance windows are influenced by the support schedules for
48+
dependencies the software includes, community input, the scope of the changes introduced by the new version,
49+
and estimates for the effort required to continue maintenance of the previous version.
50+
51+
The software maintainers will not back-port fixes or features to versions outside the maintenance window.
52+
That said, PRs with said back-ports are welcome and will follow the project's review process.
53+
No new releases will result from these changes, but interested parties can create their own distribution
54+
from the updated source after the PRs are merged.
55+
56+
| Major Version | Latest Minor Version | Status | Initial Release | Maintenance Window Start | Maintenance Window End |
57+
| ------------- | -------------------- | ----------- | --------------- | ------------------------ | ---------------------- |
58+
| 1 | 1.1.0 | Maintenance | Nov 19, 2024 | Dec 12, 2024 | |

common/lib/plugins/failover2/failover2_plugin.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -494,7 +494,7 @@ export class Failover2Plugin extends AbstractConnectionPlugin implements CanRele
494494

495495
async releaseResources(): Promise<void> {
496496
const hostListProvider: HostListProvider = this.pluginService.getHostListProvider();
497-
if (!!this.pluginService.isBlockingHostListProvider(hostListProvider)) {
497+
if (this.pluginService.isBlockingHostListProvider(hostListProvider)) {
498498
await hostListProvider.clearAll();
499499
}
500500
}

0 commit comments

Comments
 (0)