Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version Packages #1639

Merged
merged 1 commit into from
Oct 1, 2024
Merged

Version Packages #1639

merged 1 commit into from
Oct 1, 2024

Conversation

seek-oss-ci
Copy link
Contributor

@seek-oss-ci seek-oss-ci commented Aug 23, 2024

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

skuba@9.0.0

skuba 9 is a reasonably large release but it shouldn't be too much trouble to upgrade.

The main changes are:

  • ESLint 9 and flat config migration (where skuba format should handle most of the work)
  • Swapping out ts-node for tsx
  • Some fixes in Buildkite & Docker files

Read the full changelog:

Major Changes

  • deps: ESLint 9 + typescript-eslint 8 (#1537)

    This major upgrade bundles the following changes:

    • Migration to flat config format

      skuba format will attempt to migrate your existing .eslintignore and .eslintrc.js files to a flat eslint.config.js file.

      See the migration guide for more information.

    • Some lint rules have been changed or renamed

      You will likely need to manually review and adjust your code after running skuba lint.

    • eslint-plugin-import has been replaced with eslint-plugin-import-x

      To migrate, replace references to eslint-plugin-import with eslint-plugin-import-x, and import/ rules with import-x/.

    Wider changes may be necessary if your project has a custom ESLint configuration. Refer to the following resources to get started:

  • node, start: Replace ts-node with tsx (#1623)

    skuba node and skuba start now use tsx instead of ts-node to execute TypeScript files.

    tsx improves support for ESM features like dynamic import()s. However, if you use its REPL by running skuba node without any arguments, there are a couple regressions to note:

    • Static import declarations are no longer supported. Use require and await import() instead.
    • Pasting code into the editor may be more finicky by default. Consider using .editor mode.

    skuba node <file> and skuba start should continue to work as expected, but we have marked this as a major upgrade as it is difficult to comprehensively test every scenario. We strongly recommend to manually verify usage of skuba node and skuba start when you upgrade.

Minor Changes

  • format, lint: Point Docker base images to AWS ECR Public and remove constant --platform arguments (#1684)

    This updates references to node: or python: Docker images in your Dockerfiles and docker-compose.yml files to point to AWS ECR Public to avoid Docker Hub rate limiting. It also removes constant --platform arguments from Dockerfiles.

    - FROM --platform=arm64 node:20-alpine AS dev-deps
    + FROM public.ecr.aws/docker/library/node:20-alpine AS dev-deps

    Your Dockerfiles may not be set up to build multi-platform images, so keep in mind that building them locally on an Intel x86 laptop may not yield images that can execute on AWS Graviton instances.

  • format, lint: Remove obsolete version field from docker-compose.yml files (#1638)

  • format, lint, template: Mount Buildkite .npmrc in /tmp/ rather than <workdir>/tmp/ (#1693)

    This avoids accidental inclusion in Git commits or published artifacts, as per the original intent of this handling.

    - secrets: id=npm,src=tmp/.npmrc
    + secrets: id=npm,src=/tmp/.npmrc
    
    - output-path: tmp/
    + output-path: /tmp/
  • deps: TypeScript 5.6 (#1655)

    This major release includes breaking changes. See the TypeScript 5.6 announcement for more information.

  • format, lint: Fix duplicated YAML merge keys in .buildkite/ pipelines (#1537)

    - - <<: *deploy
    -   <<: *docker
    + - <<: [*deploy, *docker]
        label: stuff

    This change supports standardised YAML parsing across tools such as ESLint; it should not functionally alter the behaviour of your build pipeline.

    The bundled patch is fairly conservative and will not attempt to migrate more complex scenarios, such as where there are other keys between the merge keys. Take care with preserving the order of merge keys when manually updating other occurrences.

    - - <<: *deploy
    + - <<: [*deploy, *docker]
        label: stuff
    -   <<: *docker
  • format, lint: Remove logic to skip autofixing Renovate branches when there is no open pull request (#1687)

    Previously, this was put in place to prevent an issue where a Renovate branch could get stuck in an Edited/Blocked state without a pull request being raised.

    skuba's default autofix commits are now ignored in our recommended Renovate configuration.

Patch Changes

  • template/koa-rest-api: Switch from koa-bodyparser to @koa/bodyparser (#1605)

  • template/koa-rest-api: Enable secure headers middleware by default (#1601)

    See the Koala documentation for more information.

  • template/lambda-sqs-worker-cdk: Comply with AWS tagging guidance (#1643)

  • api: Truncate Buildkite annotations over 1 MiB to resolve buildkite-agent crash (#1645)

  • deps: validate-npm-package-name ^6.0.0 (#1682)

  • deps: normalize-package-data ^7.0.0 (#1681)

  • deps: esbuild ~0.24.0 (#1671)

  • deps: concurrently ^9.0.0 (#1666)

  • template/lambda-sqs-worker-cdk: Replace custom hooks with @seek/aws-codedeploy-infra (#1644)

  • template: Point Docker base images to AWS ECR Public and remove constant --platform arguments (#1684)

eslint-config-skuba@5.0.0

Major Changes

  • ESLint 9 + typescript-eslint 8 + eslint-config-seek 14 (#1537)

    This major upgrade bundles the following changes:

    • Migration to flat config format

      See the migration guide for more information.

    • Some lint rules have been changed or renamed

      You will likely need to manually review and adjust your code after running ESLint.

    • eslint-plugin-import has been replaced with eslint-plugin-import-x

      To migrate, replace references to eslint-plugin-import with eslint-plugin-import-x, and import/ rules with import-x/.

    Wider changes may be necessary if your project has a custom ESLint configuration. Refer to the following resources to get started:

Minor Changes

  • Disable @typescript-eslint/only-throw-error in test files (#1689)

@seek-oss-ci seek-oss-ci requested a review from a team as a code owner August 23, 2024 02:03
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch 4 times, most recently from 4511168 to 99f5f62 Compare September 2, 2024 01:15
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch 11 times, most recently from 01ee83c to eab359c Compare September 10, 2024 05:53
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch 7 times, most recently from bb3cced to 3c7543e Compare September 15, 2024 23:23
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch 7 times, most recently from 4b87e13 to c2d28a1 Compare September 23, 2024 16:32
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch 18 times, most recently from 252a13e to 6a7377c Compare September 30, 2024 10:12
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch from 6a7377c to ab008c0 Compare October 1, 2024 04:08
@seek-oss-ci seek-oss-ci force-pushed the changeset-release/main branch from ab008c0 to 2e996b3 Compare October 1, 2024 05:05
@AaronMoat AaronMoat merged commit e411ed3 into main Oct 1, 2024
15 checks passed
@AaronMoat AaronMoat deleted the changeset-release/main branch October 1, 2024 05:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants