Skip to content

v9.0.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 24 Jan 13:56
· 371 commits to main since this release

9.0.0 (2025-01-24)

⚠ BREAKING CHANGES

  • updates several major dependencies

The following major dependencies have been updated

  • @terrestris/react-geo from version 23 to 25
  • antd from 4 to 5
  • react from version 17 to 18
  • ol from version 7 to 10
  • geostyler from 12 to 15

In addition webpack has been replaced by rspack.

Dependencies

  • add a watch:buildto npm script entry (18d5500)
  • ignore test-results in subpaths (6eb402c)
  • latest updates especially shogun-util and module federation (46a950a)
  • merge branch 'next' into reloadFeatureFix (810521e)
  • release: 9.0.0-next.1 [skip ci] (ec4134d)
  • release: 9.0.0-next.2 [skip ci] (d75d3d4), closes #1762
  • release: 9.0.0-next.3 [skip ci] (5814db4)
  • release: 9.0.0-next.4 [skip ci] (ce722d3), closes #1785
  • release: 9.0.0-next.5 [skip ci] (aa8af34), closes #1784
  • release: 9.0.0-next.6 [skip ci] (f44f9f3), closes #1791
  • remove non-working update-coverage workflow (18956c6)
  • resolve merge conflicts (e2e534d)
  • resolve merge conflicts for merge into main (91e9bc2)
  • try to fix coverage pipeline (6cc0789)
  • update dependencies (7f91b84)
  • update dependencies (74460e9)
  • update dependencies (e7fc751)
  • update react-geo (c278008)

Changes in configuration

  • define MULTI_LINES_TEXT (f5ba097)
  • ensure proper formatting (8b89ca4)
  • fix end of file (07e397f)
  • fix multiline handling (d6dc266)
  • properly escape echo command (4ef7c94)
  • store and pass multiple-files-input correctly (9a7cb97)

Features

  • add XYZ and Stamen/Stadia serializers (a0141cf)
  • adds a configuration in the ToolConfig in order to customise display of layer-icons per app (2f6538f)
  • adds icon to indicate searchable, hoverable and/or editable layer (25ef26a)
  • adds Map Toolbar to the gis-client (#1784) (6159ce8)
  • adds reroute link from error page to login (133c46c)
  • adds tooltips to layertree icons (#1785) (05cf7ea)
  • include wfs search and refactor MultiSearch (ada52b2)
  • init ImportDataModal (and fix minor styling issues) (08b1016)
  • introduces the new api endpoint applicationName (#1791) (3d07d57)
  • parse map interactions (4525420)
  • remove static loading text, add loading indicator and minor css cleanup (92b0ec7)
  • update all dependencies to their latest versions (3cfe3b3)
  • update react-geo (d51a10b)

Bugfixes

  • add layer to target group before adding it to the map (4279c64)
  • add missing fields due to dependency update (d623c5a)
  • add missing keys in list (9719761)
  • check condition for icon display and styling (bc33a7e)
  • condition checks and css (87a1114)
  • coverage comment (f43c290)
  • coverage comment (use printf) (3c0cab7)
  • create deep clone from state value (66dcc10)
  • cursor jumps on keystroke (691fe6f)
  • drag and drop in nodeTitleRenderer (a9264f2)
  • fix client with terrestris dependencies update (984dc23)
  • geometry edit tools and styling (#1762) (1b6b833)
  • layertree checkbox css (c008409)
  • layout and styling (b8ee0df)
  • layout fixes (3312620)
  • make gfi edit button work in all scenarios (96560c6)
  • make metadata configurable (e8b5d3a)
  • padding and extend link to the text (038f251)
  • padding in header (3ed6ee5)
  • prevent unnecessary rerenders of the Legend (8219f57)
  • reactivate drill down feature info requests (0058b88)
  • readd support for a custom favicon path (7bd4bf4)
  • reloadFeature (703b34f)
  • remove empty element and add check (a06b8ee)
  • restore the initial value (a73e05b)
  • rewording of translation text (f76cf95)
  • set correct translation key (f06f46b)
  • show legend for WMS layers only (26dc9ee)
  • styling (553d512)
  • update feature info to changes in react-geo (35e8ab1)
  • white space (080d582)

Migration Guide: Upgrading Plugins to SHOGun GIS Client v9.0.0

With the release of shogun-gis-client v9.0.0, the build system has migrated from webpack to rspack. If your plugin is intended to be compatible with the latest version, follow this guide to update your configuration accordingly.

Key Changes

  • Migration from webpack to rspack
  • Upgrade to ModuleFederationPlugin v2
  • Replacement of moment with Dayjs
  • Adjustments in build configurations (common, dev, and prod)
  • Dependencies updates in package.json

Configuration File Changes

Updating webpack.common.js to rspack.common.js

Before (webpack.common.js):

const ModuleFederationPlugin = require('webpack/lib/container/ModuleFederationPlugin');

After (rspack.common.js):

const { ModuleFederationPlugin } = require('@module-federation/enhanced/rspack');

Additional changes:

  • resolve.fullySpecified: false may need to be added to module.exports.module.rules.resolve when importing ESM modules that do not have the .js file extension explicitly specified in the import path. This helps avoid module resolution issues in rspack.
  • Module rules and loader configurations must match rspack syntax.

Updating webpack.dev.js to rspack.dev.js

Before:

const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin');

After:

const ReactRefreshPlugin = require('@rspack/plugin-react-refresh');

Other changes:

  • Update the reference to common (webpack.common.jsrspack.common.js).
  • Add new ReactRefreshPlugin() in the plugins array.

Migrating webpack.prod.js to rspack.prod.js

Key adjustments of webpack.prod.js include:

  • Use of rspack.CssExtractRspackPlugin.loader instead of mini-css-extract-plugin.
  • Replacement of copy-webpack-plugin with rspack.CopyRspackPlugin.
  • Ensure output.publicPath is set to auto.

Updating package.json

Ensure @terrestris/shogun-gis-client is at least v9.0.0

"@terrestris/shogun-gis-client": "^9.0.0"

Install Required Packages

npm install --save-dev @module-federation/enhanced @rspack/cli @rspack/core @rspack/plugin-react-refresh

Remove Deprecated Webpack Packages

npm uninstall webpack webpack-bundle-analyzer webpack-dev-server webpack-cli copy-webpack-plugin css-minimizer-webpack-plugin mini-css-extract-plugin terser-webpack-plugin

Remove any other unused or unsupported webpack packages. Refer to the official rspack documentation for details: Rspack Webpack Compatibility

Update scripts Section in package.json

Before:

"build": "webpack --config webpack.prod.js",
"start": "webpack serve --config webpack.dev.js"

After:

"build": "rspack --config rspack.prod.js",
"start": "rspack serve --config rspack.dev.js"

Final Steps

  1. Verify that all dependencies are updated.
  2. Test your plugin with shogun-gis-client v9.0.0.
  3. Refer to the official Rspack documentation for further configuration adjustments.
  4. See the example configuration in the shogun-gis-client-example-plugin.