Skip to content

v7.0.0-beta.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@twelch twelch released this 20 May 16:58
· 128 commits to dev since this release

πŸ’₯ Breaking Changes

See v6.x to v7.x migration guide

  • Migration to pure ES Module structure using Vite, Esbuild, Vitest testing framework, and Node 20 in #272.
  • Upgrade from Storybook 6.x to 8.x. Storybook config is now in project space and installed using npm run storybook:install. Example story generation is now managed by report developer using *-example-stories.ts files. Generated stories are put into .story-cache directories which can be safely ignored.
  • Storybook is now started using npm run storybook instead of npm run start-storybook, to match default behavior or storybook.
  • Upgrade to styled-components 6.1.11. Custom reports that use will need to migrate to use styled named export, attrs() function, and transient prop name (e.g. duration -> $duration).

πŸš€ New Feature / Improvement

  • Adds overlapRasterGroupMetrics function by @avmey in #270
  • Add create:report command for generating starter combinations of overlay report and client by @avmey in #271
  • Add support for printing reports. by @avmey in #275
  • Upgrade to Turf 7.0 prerelease
  • Upgrade to flatgeobuf 3.31.1. Supports read of fgb files generates by GDAL 3.4 and later.
  • Upgrade to Typescript 5.4.5
  • Upgrade to aws-cdk 2.142.0. Migrate to Node20 lambda runtime and running ESM code directly.
  • Upgrade to aws-sdk 2.1621.0
  • Upgrade node-fetch. Expectation that it will be able to be dropped altogether in Node v22.
  • Upgrade babel plugins to use official version from proposal
  • Export datasource path utils for use in project space - getJsonPath, getFlatGeobufPath, getGeopackagePath
  • Refactor translation scripts - importTerms, publishTerms to use Node fetch API instead of request library

πŸ› Bug Fix

  • Add Cloudfront access to client bucket to be able to access client files in directories.
  • Update translation:install to be more comprehensive in installing/overwriting i18n files in project space.
  • Remove all use of @seasketch/geoprocessing in client code, notably projectsClient.ts. This was causing node modules to be included in client builds by Vite, which is more strict/less magic than webpack. It is critical that report clients never import from @seasketch/geoprocessing directly but rather use @seasketch/geoprocessing/client-core and @seasketch/geoprocessing/client-ui

🏠 Internal

  • Migrate test suites to use Vitest instead of Jest. Use test filename structure to determine whether unit tests, e2e, browser or node. Jest group directives in test file comments are no longer used.
  • A new top-level report component, ReportApp.tsx, is now generated in the .build-web directory when running npm run build and npm run build:client. It is responsible for dynamic importing of report clients and language locale files.
  • Switch to tsx from ts-node for directly executing Typescript scripts. Better support for ESM structure/runting out of the box.
  • Migrate use of __dirname to import.meta.dirname as required by ESM and supported by latest Node 20 version.
  • Add type assertions to JSON file imports.
  • Refactor buildClient to use esbuild instead of Webpack.
  • Refactor build to use Vite instead of Webpack.

πŸ“ Documentation

  • Changelog file is no longer maintained, opting to use Github release notes to convey changes.
  • Printing support. See Extending page.

Full Changelog: v6.1.2...v7.0.0-beta.0