-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Allow regular flags to mix with --build #25613
Comments
Hijacking title a bit. The current design is intentionally that regular flags don't "mix" with We might opt in specific flags that have clear meanings under a multi-project build -- discussion of which ones you'd like to see and what your use cases are would be useful data. Thanks! |
@RyanCavanaugh Parcel uses the In this situation, how can parcel work with project references to build dependencies too? |
@rrousselGit if you're using If you want to read the references from the tsconfig to walk the dependency graph and build upstream projects, you can call |
@RyanCavanaugh I ran into this today with other flags like I tried a custom build script that called |
The thing is: there is nothing you're "protecting" users against by removing these flags right now anyway. You can simply override stuff in a single tsconfig file. That has always mapped directly to the cli flags, and I think that's how it should stay. So keep it simple. Let the flags behave just as if it's normal build: only apply them to the build that is called directly. Should one need full control over how all the dependencies are built (which should be rare), simply walk the dependency tree yourself and call them in order with the appropriate overrides. Or just not use I for one don't care about the potential inconsistency with upstream dependencies. If I want to use the flags and something weird happens, that is my problem. See my use case in #26763 |
This is a frustrating situation to be in. We don't use typescript to actually compile code (we use babel) and it's seems very difficult to get a setup using project references that also allows building declaration files.
At this point i've got:
It feels silly, And much of this could be avoided if |
Arguments like |
I came across of this issue while trying to set up an incremental build in Azure and it seemed like After failing to set up a build with I wish TypeScript docs would be more technical and contained fewer things like "Don't worry about ..." and more of what those features actually do and how they interact. Maybe then docs would capture more clearly the intent behind some of those features. This also includes the TypeScript language docs. Back to |
To start, only Here are some initial command line options that could be supported in
(I haven't verified whether all of these options currently don't work in Supporting options such as |
I would love to see --skipLibCheck override with --build supported. It would make it much easier for us to enable skipLibCheck but to periodically test without (e.g. when someone changes a node_module version or adds a new dependency). skipLibCheck is a major (nearly 50%) wall time win for our project – minutes faster – and the fact that we aren't using it yet is blocking us from breaking up our project into more granular composite projects. See #45691 What can we do to help get this prioritized? |
Summary: Many large composite projects rely on skipLibCheck to improve build times. However, skipLibCheck does introduce some risk that projects miss typescript errors in new node module versions they install. This is in response to Issues microsoft#45691, microsoft#25613, and microsoft#41185 Test Plan: New tsbuild unit test scenario that tests overriding the skipLibCheck value with a flag. Validated with verbose output that the actual build overrode the value in the tsconfig.json file.
Is there any interest in making progress on this? I sent a PR for skipLibCheck a month ago and there haven't been any comments. It's beginning to get stale. Should I even bother rebasing? |
Hey folks. Wondering if this is something we can tackle as part of 4.6. I'd be happy to contribute here. |
Just to note it here, in the module-ified version of the TS compiler, I thought it would be nice to add a The list on #25613 (comment) looks pretty reasonable to me. |
Chiming in here that I'm currently unable to check the version when using |
TypeScript Version:
3.0.0-rc
,3.0.0-dev.20180712
Search Terms:
build mode, --build
Code
I have project with the following
tsconfig.json
:and compile it with command:
Note, that
outDir
androotDir
options come from command line arguments, because I want to share output directory for another command (clean
).Expected behavior:
outDir
androotDir
options will be took from command line.Actual behavior:
Compiler ignores this options:
Playground Link:
Related Issues: #25600
The text was updated successfully, but these errors were encountered: