* Elide import equals in transpileModule if referenced only by export type.
* Revise approach to avoid marking alias in export type as referenced.
* Handle type only export specifier.
* Store dts change file path in buildinfo
* With composite, do not write d.ts files if they changed
* Determine dts change based on outputs
* Instead of storing time in buildinfo store filename which was last updated to get modified time stamp from
* Get declaration time change lazily
* Rename per feedback
* Add test when declaration emit has errors and d.ts emit doesnt change which results in incorrect incremental behaviour
* Refactor
* Use declaration diagnostics in the d.ts signature for the file so it can be more accurate for detecting changes to file that could affect other files
Fixes#49527
* Renames and clarifications
* Simplify serialize declaration diagnostics for signature purpose
Do not serialize file name if error is in same file we are emitting. this should avoid having to do file path computation in most cases.
Locations are start and length instead of line and character.
Do not use any indents
* Fix baselines
* Add a simple queue implementation with better performance than `Array.shift`
This lets us clean up the hack introduced in #49581
* Correct typo
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
* add bug repro test
* add test and start fix implementation
* adjust for useAlias preference
* fix existing renaming test
* refactor to get rid of options
* fix named bindings & other imports cases
* fix eslint error
* address cr comments
* hopefully actually fix eslint
* clean up stale baseline
* make API change non-breaking
* add/fix comments
* Allow instantiation expression to be followed by let or interface on new line
* Add tests
* Update src/compiler/parser.ts
* Instantiation expressions followed by line breaks or binary operators
* Add more tests
* Accept new baselines
* Fix lint error
* Update fourslash test
Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
* Merge 'decorators' into 'modifiers' on various Nodes
* Drop RESERVED argument in favor of removing parameter
* Ignore grammar error nodes when asserting invariants
* Revert 'illegalX' property renames
* PR Feedback
* Convert some of the watchEnvironment tests to baselines for updating later
* Add tests for inode watching by making fsWatch part of system function that tests presence before creating fs watch
* Refactor for simpler tests
* Accept map of file content or file or symlink or folder
* Add test when rename event occurs when file has already reappeared
* On rename event for the file, replace file watcher irrespective of file presence
* Fix regex
* Ensure that when doing inode watching watchers is replaces only on disappearance or appearance
* Some logging for debugging further
* Revert "Some logging for debugging further"
This reverts commit dd2164ac83.
* Add test when rename event occurs on mac with ~ appended to file name
* If the relativeFileName ends with tilde, remove it from the event
* Some logging for debugging further
* Revert "Some logging for debugging further"
This reverts commit e1ba8a8d5f.
* Add documentation and fail safe the event firing
* Revise and simplify CFA for `typeof` check expressions
* Accept new baselines
* Add regression test
* Slight change to preserve type when related in both directions
* Add regression test
* Explain reasons for exact sequence of type checks