Skip to content

Conversation

@dreamorosi
Copy link
Contributor

@dreamorosi dreamorosi commented Jan 6, 2026

Summary

Changes

Remove the baseUrl: "." configuration from all TypeScript configuration files across the monorepo and update affected import paths to prepare for potential future adoption of Microsoft's native TypeScript compiler.

This change removes technical debt by eliminating an unused configuration option while positioning the codebase for potential future performance improvements. During experimentation with Microsoft's @typescript/native-preview compiler, we discovered significant performance gains (5-6x faster local builds, 33% faster CI builds) but found that the native compiler doesn't support baseUrl. This preparation work ensures compatibility when the native compiler becomes stable.

Changes made:

  • Remove baseUrl: "." from all tsconfig.json and tsconfig.cjs.json files (22+ files)
  • Fix import paths in layers/bin/layers.ts to use relative imports with .js extensions
  • Maintains full compatibility with current TypeScript compiler
  • All builds and tests continue to work as expected

Issue number: closes #4924


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

@boring-cyborg boring-cyborg bot added internal PRs that introduce changes in governance, tech debt and chores (linting setup, baseline, etc.) layers Items related to the Lambda Layers pipeline labels Jan 6, 2026
@pull-request-size pull-request-size bot added the size/XXL PRs with 1K+ LOC, largely documentation related label Jan 6, 2026
…er compatibility

- Remove baseUrl from all tsconfig.json files (not supported by native TypeScript compiler)
- Fix import paths in layers/bin/layers.ts to use relative imports with .js extensions
- Prepares codebase for potential future adoption of @typescript/native-preview
- Maintains full compatibility with current TypeScript compiler
- All builds continue to work as expected
@dreamorosi dreamorosi force-pushed the feat/remove-baseurl-for-future-compatibility branch from bd304b3 to 9767057 Compare January 6, 2026 21:43
@pull-request-size pull-request-size bot added size/S PR between 10-29 LOC and removed size/XXL PRs with 1K+ LOC, largely documentation related labels Jan 6, 2026
@dreamorosi dreamorosi self-assigned this Jan 6, 2026
@sonarqubecloud
Copy link

sonarqubecloud bot commented Jan 6, 2026

@dreamorosi
Copy link
Contributor Author

Re-run the test a second time on top of the retry, all green: https://github.com/aws-powertools/powertools-lambda-typescript/actions/runs/20763482582

@dreamorosi dreamorosi merged commit e83509f into main Jan 6, 2026
177 of 178 checks passed
@dreamorosi dreamorosi deleted the feat/remove-baseurl-for-future-compatibility branch January 6, 2026 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

internal PRs that introduce changes in governance, tech debt and chores (linting setup, baseline, etc.) layers Items related to the Lambda Layers pipeline size/S PR between 10-29 LOC

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Maintenance: Remove baseUrl from TypeScript configurations for future compiler compatibility

2 participants