Skip to content

Commit 273b9f0

Browse files
Update the 17.0.0 changelog + sync the release branch with some of the changes from develop. (#12071)
* Add HyperFormula to docs deprecation policy page (#12061) * Extend the CHANGELOG.md file with a "Deprecated" section. * Update docs READMEs to reflect GitHub Actions-based release process. (#12074) * Add prerelease filter to docs versions (#12073) * Update the actions/upload-artifact version for the NuGet publishing logic. * Bump the versions of some of the actions in the publishing script. --------- Co-authored-by: Adrian Dusinkiewicz <155736789+adrianspdev@users.noreply.github.com>
1 parent 4859393 commit 273b9f0

6 files changed

Lines changed: 19 additions & 11 deletions

File tree

.github/workflows/publish.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -860,7 +860,7 @@ jobs:
860860
run: node .github/scripts/generate-nuget-package.mjs
861861

862862
- name: Upload NuGet package artifact
863-
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # https://github.com/actions/upload-artifact/releases/tag/v4.6.2
863+
uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # https://github.com/actions/upload-artifact/releases/tag/v7.0.0
864864
with:
865865
name: nuget_pack_${{ steps.version.outputs.version }}
866866
path: Handsontable.*.nupkg
@@ -1023,12 +1023,12 @@ jobs:
10231023
run: node .github/scripts/purge-jsdelivr-cache.mjs '${{ needs.stable-build.outputs.version }}'
10241024

10251025
- name: Download NuGet package artifact
1026-
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # https://github.com/actions/download-artifact/releases/tag/v4.3.0
1026+
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # https://github.com/actions/download-artifact/releases/tag/v8.0.0
10271027
with:
10281028
name: nuget_pack_${{ needs.stable-build.outputs.version }}
10291029

10301030
- name: NuGet login (OIDC trusted publishing)
1031-
uses: NuGet/login@d22cc5f58ff5b88bf9bd452535b4335137e24544 # https://github.com/NuGet/login/releases/tag/v1
1031+
uses: NuGet/login@d22cc5f58ff5b88bf9bd452535b4335137e24544 # https://github.com/NuGet/login/releases/tag/v1.0.0
10321032
id: nuget-login
10331033
with:
10341034
user: ${{ secrets.NUGET_USER }}

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,14 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
4747
- Fixed incorrect scrollbar width calculation for scaled environments. [#12035](https://github.com/handsontable/handsontable/pull/12035)
4848
- Fixed and issue with column headers styles [#12058](https://github.com/handsontable/handsontable/pull/12058)
4949

50+
### Deprecated
51+
- Deprecated **numbro.js** for numeric formatting. Copy it to your project or replace it with the `Intl.NumberFormat` API. [Migration guide](https://handsontable.com/docs/javascript-data-grid/migration-from-16.2-to-17.0#_3-migrate-from-numbro-format-to-intl-numberformat)
52+
- Deprecated **Pikaday** for date picking. Switch to native date input. [Migration guide](https://handsontable.com/docs/javascript-data-grid/recipes/cell-types/pikaday)
53+
- Deprecated **moment.js** for date parsing and display. Replace it with the `Intl.DateTimeFormat` API. [Migration guide](https://handsontable.com/docs/javascript-data-grid/migration-from-16.2-to-17.0#_4-migrate-from-moment-js-format-to-intl-datetimeformat)
54+
- Deprecated **DOMPurify** as a built-in XSS sanitizer. Use the new `sanitizer` option or convert content to plain text. [Migration guide](https://handsontable.com/docs/javascript-data-grid/migration-from-16.2-to-17.0#_5-migrate-from-built-in-dompurify-to-the-sanitizer-option)
55+
- Deprecated **core-js** polyfills for ECMAScript features. [Migration guide](https://handsontable.com/docs/javascript-data-grid/migration-from-16.2-to-17.0#_6-core-js-dependency-removed)
56+
- Deprecated bundling **HyperFormula** as a Handsontable dependency. Starting from version 18.0, install and import it separately, then pass it to the Formulas plugin with `licenseKey: 'internal-use'`. [Formula calculation](https://handsontable.com/docs/javascript-data-grid/formula-calculation)
57+
5058
## [16.2.0] - 2025-11-25
5159

5260
### Added

docs/.vuepress/plugins/dump-docs-data/docs-versions.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ async function readFromGitHub() {
4949

5050
releases.data
5151
.map(item => item.tag_name)
52+
.filter(tag => !semver.prerelease(tag))
5253
.sort((a, b) => semver.rcompare(a, b))
5354
.forEach((tag) => {
5455
const minorVersion = `${semver.parse(tag).major}.${semver.parse(tag).minor}`;

docs/README-EDITING.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,7 @@ To deploy the documentation locally at a `[COMMIT_HASH]` commit:
134134
135135
## Documentation versioning
136136
137-
New documentation is created automatically after the Handsontable is released. The `./scripts/release.mjs`
138-
takes care to create a Documentation production branch, generate API content from source code, commit, and deploy the Docs image to the production.
137+
New documentation is created automatically after the Handsontable is released. The `stable-publish` job in `.github/workflows/publish.yml` creates or updates the documentation production branch, generates API content from source code, commits, and pushes — which then triggers the Netlify deployment.
139138
140139
## Markdown links
141140

docs/README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,14 +126,14 @@ docs # All documentation files
126126
127127
Each documentation version has its own production branch from which the deployment is happening. The documentation branches are created using the following pattern `prod-docs/<MAJOR.MINOR>`. The `prod-docs/latest` branch contains all files necessary for Netlify deployment.
128128
129-
The documentation branches are created automatically once the Handsontable release script finishes its job. Depending on the Handsontable release version, two scenarios may happen:
129+
The documentation branches are created and updated automatically by the `stable-publish` job in `.github/workflows/publish.yml`. Depending on the Handsontable release version, two scenarios may happen:
130130
1. Patch release:
131-
* Checkout to the existing branch;
132-
* Regenerate Docs content for the API by executing `npm run docs:api`;
131+
* Check out the existing `prod-docs/<MAJOR.MINOR>` branch;
132+
* Update the docs changelog and regenerate API content via `npm run docs:api`;
133133
* Commit and push the changes to the origin;
134134
2. Major or Minor release:
135-
* Create a new Docs branch, e.g. `prod-docs/13.0` from the `develop` branch (after the release branch is merged to the `develop` branch);
136-
* Generate Docs content for the API by executing `npm run docs:api`;
135+
* Create a new Docs branch, e.g. `prod-docs/13.0`, from the version tag (after the release branch is merged to `master`);
136+
* Update the docs changelog and generate API content via `npm run docs:api`;
137137
* Commit and push the changes to the origin;
138138
139139
The prod-docs/latest branch is automatically recreated by the CI/CD pipeline whenever a patch or release update is applied to the latest documentation version. This branch triggers a GitHub workflow that initiates a rebuild and deploys to Netlify on each push or when a new branch `prod-docs/<MAJOR.MINOR>` is created.

docs/content/guides/upgrade-and-migration/deprecation-policy/deprecation-policy.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,6 @@ Below is a list of current deprecations that are planned to be removed in the ne
5656
| **moment.js** | Parses, validates and displays dates. Needed for Excel compat. | [Migrate from 16.2 to 17.0 → Date/Time](@/guides/upgrade-and-migration/migrating-from-16.2-to-17.0/migrating-from-16.2-to-17.0.md#_4-migrate-from-moment-js-format-to-intl-datetimeformat) |
5757
| **DOMPurify** | An XSS sanitizer for HTML. Use the `sanitizer` option to keep a sanitizer, or convert content to plain text. | [Migrate from 16.2 to 17.0 → DOMPurify](@/guides/upgrade-and-migration/migrating-from-16.2-to-17.0/migrating-from-16.2-to-17.0.md#_5-migrate-from-built-in-dompurify-to-the-sanitizer-option) |
5858
| **core-js** | Polyfills for ECMAScript 5, ECMAScript 6, promises, symbols, collections. | [Migrate from 16.2 to 17.0 → core-js](@/guides/upgrade-and-migration/migrating-from-16.2-to-17.0/migrating-from-16.2-to-17.0.md#_6-core-js-dependency-removed) |
59-
59+
| **Built-in HyperFormula** | The Formulas plugin engine. Will be removed from package.json in 18.0. Import HyperFormula yourself and pass it to the Formulas plugin with `licenseKey: 'internal-use'`. | [Formula calculation](@/guides/formulas/formula-calculation/formula-calculation.md) |
6060

6161

0 commit comments

Comments
 (0)