Matt Mastracci
86c3c4f343
feat(core): initialize SQLite off-main-thread ( #18401 )
...
This gets SQLite off the flamegraph and reduces initialization time by
somewhere between 0.2ms and 0.5ms. In addition, I took the opportunity
to move all the cache management code to a single place and reduce
duplication. While the PR has a net gain of lines, much of that is just
being a bit more deliberate with how we're recovering from errors.
The existing caches had various policies for dealing with cache
corruption, so I've unified them and tried to isolate the decisions we
make for recovery in a single place (see `open_connection` in
`CacheDB`). The policy I chose was:
1. Retry twice to open on-disk caches
2. If that fails, try to delete the file and recreate it on-disk
3. If we fail to delete the file or re-create a new cache, use a
fallback strategy that can be chosen per-cache: InMemory (temporary
cache for the process run), BlackHole (ignore writes, return empty
reads), or Error (fail on every operation).
The caches all use the same general code now, and share the cache
failure recovery policy.
In addition, it cleans up a TODO in the `NodeAnalysisCache`.
2023-03-27 22:01:52 +00:00
Cre3per
fd0658fb42
feat(cli): --ext parameter for run, compile, and bundle ( #17172 )
...
Adds `--ext` to `deno run`, closes #5088
Additionally
- Adds `--ext` to `deno compile` and `deno bundle`
2023-03-22 10:15:53 -04:00
David Sherret
f5840bdcd3
chore: upgrade to Rust 1.67 ( #17548 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2023-01-27 10:43:16 -05:00
David Sherret
b5b4887c4a
feat(fmt): make semi-colon option a boolean ( #17527 )
2023-01-25 15:06:00 -05:00
Bartek Iwańczuk
e1c51f3c0d
feat(fmt): add ability to configure semicolons ( #17292 )
...
Allows to change behavior of `deno fmt` to use "ASI" setting for
semicolons instead of always prefering them, this is done
by "--options-semi=asi" flag or `"semi": "asi"` setting
in the config file.
2023-01-24 21:07:00 +01:00
Leo Kettmeir
df4d0c55c0
fix(cli/fmt): show filepath for InvalidData error ( #17361 )
2023-01-16 00:30:52 +00:00
Geert-Jan Zwiers
052bcc62bb
refactor(cli/tools): reduce cloning ( #17309 )
2023-01-13 22:39:19 +01:00
Geert-Jan Zwiers
84ef26ac9b
refactor(cli/tools): move flag and config logic to CliOptions ( #17008 )
...
Co-authored-by: David Sherret <dsherret@gmail.com>
2023-01-07 15:22:09 -05:00
David Sherret
0ee64ad847
fix: upgrade deno_ast to 0.23 ( #17269 )
...
Closes #17172
Closes #15669
Closes #8529
2023-01-04 18:54:54 -05:00
David Sherret
10e4b2e140
chore: update copyright year to 2023 ( #17247 )
...
Yearly tradition of creating extra noise in git.
2023-01-02 21:00:42 +00:00
David Sherret
653aebfa1a
fix: respect the --quiet
flag in more cases ( #16998 )
2022-12-09 10:54:24 -05:00
David Sherret
9c1ab39e19
feat: ignore node_modules
and .git
folders when collecting files everywhere ( #16862 )
...
We currently only do this for fmt. This makes it so they're excluded by
default, but you can still opt into these directories by explicitly
specifying them.
2022-12-07 13:10:10 -05:00
David Sherret
2d4c46c975
refactor: create util folder, move nap_sym to napi/sym, move http_cache to cache folder ( #16857 )
2022-11-28 17:28:54 -05:00
Aaron O'Mullan
238590aa9f
chore: use Rust 1.65.0 ( #16688 )
2022-11-18 02:59:10 +01:00
Mathias Lafeldt
4b01ef5c23
chore: use Rust 1.64.0 ( #16035 )
2022-09-26 21:52:16 +02:00
David Sherret
1464b756a4
refactor: move out test files from root testdata directory into sub directories ( #15949 )
2022-09-19 10:32:21 -04:00
David Sherret
79fe8ffff8
fix(fmt): add the file path to the panic messages when formatting is unstable ( #15693 )
2022-08-30 14:46:03 -04:00
David Sherret
0c87dd1e98
perf: use emit from swc instead of tsc ( #15118 )
2022-07-12 18:58:39 -04:00
David Sherret
8c4420c005
refactor: rename RootConfig
to CliOptions
( #15007 )
2022-06-29 11:51:11 -04:00
David Sherret
01adbb1efb
refactor: add RootConfig
( #14985 )
2022-06-28 16:45:55 -04:00
David Sherret
e1c90963fb
refactor: create args
folder ( #14982 )
2022-06-27 16:54:09 -04:00
Bartek Iwańczuk
1e3713c3bc
fix(fmt): ignore node_modules directory ( #14943 )
2022-06-23 01:17:49 +02:00
David Sherret
f564497630
fix(fmt): should fail --check
on parse error ( #14907 )
2022-06-18 12:44:43 -04:00
David Sherret
3dd981e199
feat(fmt): support formatting cjs, cts, mjs, and mts files ( #14837 )
2022-06-09 19:55:04 -04:00
Baoshuo Ren
2c33293f66
chore: remove git.io link ( #14402 )
...
All links on git.io will stop redirecting after April 29, 2022.
- https://github.blog/changelog/2022-04-25-git-io-deprecation/
2022-04-26 18:39:47 -04:00
David Sherret
ae479b1036
perf(fmt/lint): incremental formatting and linting ( #14314 )
2022-04-19 22:14:00 -04:00
TrickyPi
85e16a08c7
feat(cli/fmt): ignore .git folder when formatting files ( #14138 )
2022-03-29 14:57:42 -04:00
David Sherret
03c71a8b4a
chore: upgrade dprint-core to 0.54.1 ( #14146 )
2022-03-29 13:33:00 -04:00
David Sherret
3b12afd072
chore: upgrade to Rust 1.59 ( #13767 )
2022-02-24 20:03:12 -05:00
Maxim
65de5fb465
refactor: use Arc
instead of making copies of Flags
struct ( #13610 )
2022-02-11 14:04:31 -05:00
Zheyu Zhang
5490cfed20
feat(cli): add "--no-clear-screen" flag ( #13454 )
...
This commit adds "--no-clear-screen" flag which can be used
with "--watch" flag to disable clearing of terminal screen on
each file change.
2022-01-31 17:39:39 +01:00
Ryan Dahl
39ea4abff4
feat: auto-discover config file ( #13313 )
2022-01-17 20:10:17 -05:00
Ryan Dahl
1fb5858009
chore: update copyright to 2022 ( #13306 )
...
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2022-01-07 22:09:52 -05:00
David Sherret
19c8cd3a45
fix: upgrade swc_ecmascript to 0.103 ( #13284 )
2022-01-04 17:02:56 -05:00
David Sherret
f530189c50
fix(watch): mitigate race condition between file write by other process and watch read ( #13038 )
2021-12-09 20:24:37 -05:00
WenheLI
b51b0c834b
feat(cli): use deno fmt for lock and coverage files ( #13018 )
2021-12-07 19:21:04 -05:00
Zheyu Zhang
bd989143e1
refactor(cli): simplify lint/format resolver logic ( #12898 )
2021-11-29 09:17:57 -05:00
David Sherret
adc5974333
fix(lsp): lsp should respect include/exclude files in format config ( #12876 )
2021-11-24 15:14:19 -05:00
David Sherret
51e3db956a
fix(cli): config file should resolve paths relative to the config file ( #12867 )
...
* Add `specifier_to_file_path` to support converting a ModuleSpecifier with a unix-style path to a PathBuf on Windows.
2021-11-23 10:38:11 -05:00
Zheyu Zhang
3fb23ab772
fix(cli): linter/formater watches current directory without args ( #12550 )
2021-10-30 19:20:56 +02:00
Zheyu Zhang
85a2943435
fix(cli): lint/format all discoverd files on each change ( #12518 )
2021-10-30 09:59:53 +02:00
David Sherret
43cd0459b9
fix(lsp): formatting should error on certain additional swc diagnostics ( #12491 )
2021-10-21 10:18:18 -04:00
Satya Rohith
c5442abc23
feat(cli/fmt): support more markdown extensions ( #12195 )
2021-09-23 21:49:25 +05:30
Bartek Iwańczuk
cba1e7b5a3
feat: add option flags to 'deno fmt' ( #12060 )
2021-09-13 22:06:45 +02:00
Bartek Iwańczuk
0dbeb774ba
feat(fmt): add support for configuration file ( #11944 )
...
This commit adds support for configuration file for "deno fmt"
subcommand. It is also respected by LSP when formatting
files.
Example configuration:
{
"fmt": {
"files": {
"include": ["src/"],
"exclude": ["src/testdata/"]
},
"options": {
"useTabs": true,
"lineWidth": 80,
"indentWidth": 4,
"singleQuote": true,
"textWrap": "preserve"
}
}
}
2021-09-13 20:19:10 +02:00
David Sherret
2c2e3ec1ca
refactor(lsp): use deno_ast and cache swc ASTs ( #11780 )
2021-09-07 10:39:32 -04:00
Feng Yu
bb99d5da4c
fix(doc): fix rustdoc bare_urls warning ( #11921 )
2021-09-05 16:22:45 +02:00
Ryan Dahl
163f2ef571
fix: parse error when transpiling code with BOM ( #11688 )
...
Co-authored-by: David Sherret <dsherret@gmail.com>
2021-08-16 09:28:29 +02:00
Yusuke Tanaka
8f00b5542c
chore: upgrade Rust to 1.54.0 ( #11554 )
2021-07-30 15:03:41 +02:00
Bartek Iwańczuk
3b220c64f6
chore: upgrade crates ( #10867 )
...
* deno_doc - 0.5.0
* deno_lint - 0.6.0
* dprint-plugin-typescript - 0.46.0
* dprint-plugin-markdown - 0.8.0
* dprint-plugin-json - 0.12.0
* swc_bundler - 0.37.4
* swc_ecmascript - 0.36.0
2021-06-06 18:42:12 +02:00