-
Notifications
You must be signed in to change notification settings - Fork 530
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
build(client): Use new node16 tsconfigs in azure, client, and DDS projects #18152
Merged
tylerbutler
merged 16 commits into
microsoft:main
from
tylerbutler:module-resolution-node16-with-tsconfigs
Nov 8, 2023
Merged
build(client): Use new node16 tsconfigs in azure, client, and DDS projects #18152
tylerbutler
merged 16 commits into
microsoft:main
from
tylerbutler:module-resolution-node16-with-tsconfigs
Nov 8, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
github-actions
bot
added
area: build
Build related issues
area: dds
Issues related to distributed data structures
area: dds: sharedstring
area: dds: tree
area: dev experience
Improving the experience of devs building on top of fluid
area: driver
Driver related issues
area: examples
Changes that focus on our examples
area: framework
Framework is a tag for issues involving the developer framework. Eg Aqueduct
area: loader
Loader related issues
area: odsp-driver
base: main
PRs targeted against main branch
area: runtime
Runtime related issues
area: tests
Tests to add, test infrastructure improvements, etc
dependencies
Pull requests that update a dependency file
public api change
Changes to a public API
labels
Nov 3, 2023
tylerbutler
force-pushed
the
module-resolution-node16-with-tsconfigs
branch
from
November 3, 2023 01:03
b1f5e19
to
c319b6a
Compare
tylerbutler
force-pushed
the
module-resolution-node16-with-tsconfigs
branch
2 times, most recently
from
November 6, 2023 19:56
ff667d7
to
9e88f1e
Compare
github-actions
bot
removed
area: examples
Changes that focus on our examples
area: driver
Driver related issues
area: odsp-driver
area: framework
Framework is a tag for issues involving the developer framework. Eg Aqueduct
area: loader
Loader related issues
area: tests
Tests to add, test infrastructure improvements, etc
area: runtime
Runtime related issues
labels
Nov 6, 2023
github-actions
bot
removed
the
dependencies
Pull requests that update a dependency file
label
Nov 6, 2023
tylerbutler
changed the title
Draft: node16 moduleResolution part 1
Use new node16 tsconfigs in azure and DDS projects
Nov 7, 2023
Josmithr
reviewed
Nov 7, 2023
@@ -17,3 +17,24 @@ It can be extended in your package's local configuration file like the following | |||
|
|||
This package previously exported a series of configurations with differing levels of validation. | |||
These configurations are now deprecated and have been replaced with the configuration noted above. | |||
|
|||
## TypeScript Configurations (`tsconfig.json`) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for adding these docs! These are great!
Josmithr
reviewed
Nov 7, 2023
Josmithr
reviewed
Nov 7, 2023
"rootDir": "./", | ||
"outDir": "../../dist/test", | ||
"types": ["mocha", "node"], | ||
"noUnusedLocals": false, // Need it so memory tests can declare local variables just for the sake of keeping things in memory |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the comment!!
Josmithr
reviewed
Nov 7, 2023
tylerbutler
changed the title
Use new node16 tsconfigs in azure and DDS projects
build(client): Use new node16 tsconfigs in azure, client, and DDS projects
Nov 7, 2023
Josmithr
approved these changes
Nov 7, 2023
This pull request was closed.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area: build
Build related issues
area: dds: sharedstring
area: dds
Issues related to distributed data structures
base: main
PRs targeted against main branch
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is the first in several that will update the CommonJS builds within the repo to use
module: node16
, which impliesmoduleResolution: node16
.There are new configs in the build-common package, and these configs are used as follows:
These configs are designed to be used together using TypeScript's support for extending multiple config files.
module: Node16
and is intended for CommonJS builds. This config is intended tobe layered on top of the base config.
module: ESNext
andmoduleResolution: Node10
and is intended for ESM builds. This config is intended to be layered on top of the base config. This config uses Node10 module resolution because Node16 cannot be used to build both CJS and ESM from a common source.declaration
anddecarationMap
. It also enables thenode
types by default.This PR updates the packages in the packages/common and packages/dds paths. For each package, the CJS, ESM, and test tsconfig files are updated to use the new build-common configs, which means that CJS builds now use module: node16 which implies moduleResolution: node16. ESNext builds continue to use Node10 module resolution because Node16 cannot be used to build both CJS and ESM from a common source.