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

Roadmap #36

Open
9 tasks done
aripalo opened this issue Nov 20, 2024 · 0 comments
Open
9 tasks done

Roadmap #36

aripalo opened this issue Nov 20, 2024 · 0 comments
Assignees

Comments

@aripalo
Copy link
Contributor

aripalo commented Nov 20, 2024

This is a work-in-progress Roadmap issue that will be updated as we go along (so definitely subject to change).

High-level plan/status

Currently we are preparing for the stable version release as a new major version v1. It's been developed in the beta branch (and there are and will be more PRs targeting the beta branch). Some of the work already prepares for future v2/v3 releases.

You can already test the beta release via:

npm i -D @alma-cdk/project@beta

… but consider there might be issues that have not yet been fixed/merged into the beta branch.

Once we have achieved the V1 goals (see below), we will merge beta branch to main and do a new major version production release.

V1

Timeline: November 2024

  • No CloudFormation diff from migration from v0 to v1
    • except one minor (old) bug related diff that can be controlled via feature flag
  • Update all the build system & development related dependencies to latest major version
  • Use TypeScript for projen configuration
  • Improve existing test suites and add more tests
  • Provide migration guide from v0 to v1 (should be minor, as with exception of 1-2 feature flags, there shouldn't be any changes to usage)
  • Configure formatter (Prettier) and format the source code
  • Move from experimental stability level to stable
  • Release new major version (1)
  • Start properly following SemVer

Future

Planning visions/roadmap will start taking place in December 2024 most likely. During that time the future roadmap will become more clear. We may introduce some (non-breaking of course) things via minor or patch features, but most likely during H1/25 there will be one or two major versions (due to heavy changes under the hood).

As part of the roadmap planning, we may utilize GitHub discussions for RFCs. More info on that later.

V2 goals/visions

Timeline estimate: January 2025

  • Consider: Separate (prose) documentation site (starlight)
  • Consider: Change test suite to Vitest (for faster tests)
  • Consider: Change min NodeJS version to 20 (LTS maintenance version)
  • Consider: Matrix build to test with default/min/max Nodejs versions
  • Add some new (requested) features
  • Deprecate support of some legacy feature flags (this requires a bit more investigation still)
  • Refactor the internals
    • some things can be simplified internally
    • restructuring/rearchitecting of the internal code base
    • introducing a tool like Zod makes sense for validations etc
    • memoization could be used to speed things up
  • Improve documentation
  • Preparation work for V3 (might include feature flags)
  • Add proper integration tests using tools like cdk-integ (so far we've manually tested things out)

V3 goals/visions

Timeline estimate: Q1/25

  • Consider: Change min NodeJS version to 22 (active LTS version)
  • Strongly consider moving to use CDK Stages behind the scenes:
  • Some construct/function names can be renamed if makes sense
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

No branches or pull requests

1 participant