Asher Gomez
2d59372e7a
feat(publish): check for uncommitted files in deno publish --dry-run
( #22981 )
...
Closes #22936
2024-03-22 12:41:33 -07:00
David Sherret
f96f167dc8
feat(unstable/publish): error when a package's module is excluded from publishing ( #22948 )
...
Closes #22657
2024-03-21 21:42:23 +00:00
David Sherret
c10d96cb21
fix(slow-types): improved exports tracing and infer type literals in as exprs ( #22849 )
...
Several fixes in deno_graph:
* https://github.com/denoland/deno_graph/pull/411
* https://github.com/denoland/deno_graph/pull/413
* https://github.com/denoland/deno_graph/pull/414
* https://github.com/denoland/deno_graph/pull/415
* https://github.com/denoland/deno_graph/pull/416
* https://github.com/denoland/deno_graph/pull/417
Also created https://github.com/denoland/publish_smoke_tests to help
prevent regressions in the future.
Closes https://github.com/denoland/deno/issues/22829
Closes https://github.com/denoland/deno/issues/22819
Closes https://github.com/denoland/deno/issues/22802
2024-03-12 17:45:38 +00:00
David Sherret
ad6b00a2bf
chore: enable clippy unused_async rule ( #22834 )
2024-03-11 23:48:00 -04:00
David Sherret
644ac0fe43
chore: hidden tool for overwriting files with fast check output ( #22822 )
...
Not sure if we should do this, but it's a nice hidden tool that
overwrites the working tree with the fast check output.
2024-03-11 11:42:12 -04:00
David Sherret
f8543a9fd8
fix(publish): regression - publishing with vendor folder ( #22830 )
...
In
https://github.com/denoland/deno/pull/22720/files#diff-d62d85de2a7ffb816cd2fdbaa47e588352f521c7c43d058b75649bbb255e0ae1R70
, I copy and pasted from another area of the code and didn't think about
removing how it ignores the vendor folder by default.
2024-03-09 20:40:53 -05:00
David Sherret
119744c285
fix(publish): suggest using --allow-dirty
on uncommitted changes ( #22810 )
2024-03-08 22:49:15 +00:00
Bartek Iwańczuk
914b7495a8
fix(publish): reland error if there are uncommitted changes ( #22613 ) ( #22632 )
...
Reverted in https://github.com/denoland/deno/pull/22625
2024-03-07 22:13:36 +01:00
Matt Mastracci
4791d16a8e
perf(cli): use faster_hex ( #22761 )
...
`cli::util::checksum` was showing up on flame graphs because it was
concatenating allocated strings. We can use `faster-hex` to improve it.
2024-03-07 10:00:43 -07:00
David Sherret
594d8397ad
fix(publish): properly display graph validation errors ( #22775 )
...
The graph validation errors were displaying cryptically during publish.
This fixes that.
2024-03-07 17:30:30 +01:00
Divy Srivastava
156950828e
fix(publish): permissionless dry-run in GHA ( #22679 )
...
Fixes https://github.com/denoland/deno/issues/22658
2024-03-06 18:26:20 +05:30
David Sherret
942dcbad84
refactor: move deno json functionality to args module ( #22710 )
2024-03-05 15:45:44 -05:00
David Sherret
878384aefa
fix(unstable/publish): repect --no-check
in no-slow-types ( #22653 )
2024-03-01 15:54:46 +00:00
Bartek Iwańczuk
ea3651a1ac
fix(publish): disable provenance if not in GHA ( #22638 )
...
The condition was wrong
2024-02-29 21:19:30 +00:00
Bartek Iwańczuk
fb31ae73e4
feat(unstable): deno add
subcommand ( #22520 )
...
This commit adds "deno add" subcommand that has a basic support for
adding "jsr:" packages to "deno.json" file.
This currently doesn't support "npm:" specifiers and specifying version
constraints.
2024-02-29 19:12:04 +00:00
Divy Srivastava
9ffc34c159
feat(publish): enable package provenance by default on github actions ( #22635 )
2024-02-29 21:48:47 +05:30
Bartek Iwańczuk
c9b2139b1e
Revert "fix(publish): error if there are uncommitted changes ( #22613 )" ( #22625 )
...
This reverts commit c2c4e745a5
.
2024-02-28 21:35:02 +00:00
Ryan Dahl
f54acb53ed
fix(publish): make the already published message look like a warning ( #22620 )
2024-02-28 21:30:20 +01:00
Bartek Iwańczuk
c2c4e745a5
fix(publish): error if there are uncommitted changes ( #22613 )
...
Closes https://github.com/denoland/deno/issues/22330
2024-02-28 10:21:12 +01:00
Divy Srivastava
9b5d2f8c1b
feat(publish): provenance attestation ( #22573 )
...
Supply chain security for JSR.
```
$ deno publish --provenance
Successfully published @divy/test_provenance@0.0.3
Provenance transparency log available at https://search.sigstore.dev/?logIndex=73657418
```
0. Package has been published.
1. Fetches the version manifest and verifies it's matching with uploaded
files and exports.
2. Builds the attestation SLSA payload using Github actions env.
3. Creates an ephemeral key pair for signing the github token
(aud=sigstore) and DSSE pre authentication tag.
4. Requests a X.509 signing certificate from Fulcio using the challenge
and ephemeral public key PEM.
5. Prepares a DSSE envelop for Rekor to witness. Posts an intoto entry
to Rekor and gets back the transparency log index.
6. Builds the provenance bundle and posts it to JSR.
2024-02-28 07:58:02 +05:30
Luca Casonato
8d5c231349
feat(publish): support sloppy imports and bare node built-ins ( #22588 )
2024-02-27 15:13:16 +00:00
Bartek Iwańczuk
f1a691274e
feat(publish): discover jsr.json and jsr.jsonc files ( #22587 )
...
Closes https://github.com/denoland/deno/issues/22491
2024-02-27 08:27:21 +00:00
Marvin Hagemeister
cddefecfff
feat: infer dependencies from package.json ( #22563 )
...
<!--
Before submitting a PR, please read
https://docs.deno.com/runtime/manual/references/contributing
1. Give the PR a descriptive title.
Examples of good title:
- fix(std/http): Fix race condition in server
- docs(console): Update docstrings
- feat(doc): Handle nested reexports
Examples of bad title:
- fix #7123
- update docs
- fix bugs
2. Ensure there is a related issue and it is referenced in the PR text.
3. Ensure there are tests that cover the changes.
4. Ensure `cargo test` passes.
5. Ensure `./tools/format.js` passes without changing files.
6. Ensure `./tools/lint.js` passes.
7. Open as a draft PR if your work is still in progress. The CI won't
run
all steps, but you can add '[ci]' to a commit message to force it to.
8. If you would like to run the benchmarks on the CI, add the 'ci-bench'
label.
-->
This PR enhances the `deno publish` command to infer dependencies from
`package.json` if present.
2024-02-23 15:56:49 +01:00
David Sherret
9166d8a4e9
feat(publish): type check on publish ( #22506 )
...
Supersedes #22501 and also fixes that issue.
2024-02-21 08:35:25 -05:00
David Sherret
f90889e5ee
perf(jsr): fast check cache and lazy fast check graph ( #22485 )
2024-02-20 21:29:57 +00:00
Luca Casonato
54a3eb585d
fix(publish): print files that will be published ( #22495 )
2024-02-20 13:30:34 +01:00
David Sherret
66424032a2
feat(unstable/lint): no-slow-types for JSR packages ( #22430 )
...
1. Renames zap/fast-check to instead be a `no-slow-types` lint rule.
1. This lint rule is automatically run when doing `deno lint` for
packages (deno.json files with a name, version, and exports field)
1. This lint rules still occurs on publish. It can be skipped by running
with `--no-slow-types`
2024-02-19 15:28:41 +00:00
David Sherret
828d9b8485
refactor: remove module graph setup from ModuleLoader ( #22442 )
...
`ModuleLoader` was doing too much duplicate work.
2024-02-16 22:10:06 +00:00
Nayeem Rahman
012a9d8aeb
chore: rename DENO_REGISTRY_URL to JSR_URL ( #22414 )
2024-02-14 18:30:44 +00:00
Leo Kettmeir
981a19f067
feat(unstable): define config in publish url ( #22406 )
2024-02-14 12:53:15 +01:00
David Sherret
e5e2c45998
fix: upgrade to deno_ast 0.33 ( #22341 )
...
* Uses diagnostics from deno_ast
* Real fix for https://github.com/denoland/deno/pull/22310
* Moves `deno lint --json` code here
* Upgrades swc
Closes #22117
Closes #22109
Closes #21927
Closes #20993
2024-02-09 01:40:26 +00:00
David Sherret
83d72e5c1c
refactor: extract out runtime::colors
to deno_terminal::colors
( #22324 )
2024-02-07 11:25:14 -05:00
David Sherret
c6def993e0
fix(publish): lazily parse sources ( #22301 )
...
Closes #22290
2024-02-06 15:57:10 -05:00
Bartek Iwańczuk
aba91490d6
fix(publish): use lighter crate for opening browser ( #22224 )
...
Alternative to https://github.com/denoland/deno/pull/22223 which
switches `webbrowser` crate to `open` (https://crates.io/crates/open )
which is lighterweight.
2024-02-01 16:25:56 +01:00
Bartek Iwańczuk
830d096b66
fix(publish): rename --no-fast-check to --no-zap ( #22214 )
...
Also prints an information about the flag when there are `zap` errors.
2024-02-01 02:16:52 +00:00
Bartek Iwańczuk
163491f237
chore(publish): try to automatically open the web browser ( #22208 )
2024-01-31 22:38:57 +01:00
Bartek Iwańczuk
560390c93c
chore(publish): add --no-fast-check flag ( #22203 )
2024-01-31 16:10:31 +01:00
Luca Casonato
316093fec4
feat(publish): error on invalid external imports ( #22088 )
2024-01-24 21:59:18 +00:00
Luca Casonato
52ad1ef154
feat(publish): give diagnostic on invalid package files ( #22082 )
2024-01-24 21:24:52 +00:00
Luca Casonato
176118a046
feat(publish): exclude and include ( #22055 )
2024-01-24 20:30:08 +00:00
Luca Casonato
745333f073
chore: improve unanalyzable dynamic import diagnostic ( #22051 )
2024-01-24 14:49:33 +01:00
Luca Casonato
137f1a0c68
feat(cli): improved diagnostics printing ( #22049 )
...
This initially uses the new diagnostic printer in `deno lint`,
`deno doc` and `deno publish`. In the limit we should also update
`deno check` to use this printer.
2024-01-23 16:37:43 +01:00
Luca Casonato
052fd78690
refactor: use parsed source cache when unfurling import map ( #22001 )
2024-01-23 12:40:23 +01:00
David Sherret
35c1652f56
fix(lsp): regression - formatting was broken on windows ( #21972 )
...
~~Waiting on: https://github.com/denoland/deno_config/pull/31~~
Closes #21971
Closes https://github.com/denoland/vscode_deno/issues/1029
2024-01-18 15:57:30 -05:00
David Sherret
4e72ca313a
refactor: use globbing from deno_config ( #21925 )
2024-01-15 19:15:39 -05:00
Bartek Iwańczuk
72ecfe0419
fix(publish): support deno.jsonc file ( #21948 )
2024-01-15 15:07:57 +00:00
Bartek Iwańczuk
f45ceb2320
chore(publish): add --dry-run flag ( #21895 )
2024-01-11 21:17:03 +00:00
David Sherret
70ac06138c
feat(unstable): fast subset type checking of JSR dependencies ( #21873 )
2024-01-10 22:40:30 +00:00
David Sherret
0efb17b2cb
fix(unstable/tar): skip node_modules, .git, and config "exclude" ( #21816 )
2024-01-08 18:51:49 -05:00
Bartek Iwańczuk
43d2ecd4f0
fix(registry): wait for already pending publish ( #21663 )
...
Co-authored-by: Luca Casonato <hello@lcas.dev>
2024-01-08 15:25:18 +00:00