Commit Graph

96 Commits

Author SHA1 Message Date
Jack Wright
cde54b2876
Prevent branch from merging against main (#886)
Having the the main branch listed in the checkout command:
```nushell
git -C $repo checkout -b $branch nushell/main
```

Made my git to track against the main branch, causing it to push to main
instead of a branch. Removing the branch fixed the problem:
```nushell
 git -C $repo checkout -b $branch
```
2024-06-26 06:34:03 -05:00
Ian Manske
e5388d1992
Edit release notes template (#887) 2024-06-26 02:12:36 +00:00
Jakub Žádník
b1cd222c2a
Fix error when listing PRs by milestone (#885) 2024-06-25 21:25:42 +03:00
Ian Manske
85205b0e66
Edit release notes template (#853)
- Removes the note about installing the dataframes feature.
- Moves the command changes section to the top level, renames some sub
sections, and adds some more sub sections.
- Moves and simplifies the hall of fame.
2024-05-28 19:32:39 +00:00
Ian Manske
c133ab2419
Remove nu-cmd-dataframe from release script (#857) 2024-05-28 13:07:59 +00:00
Igor
13f2c47135
Port before_v0.60/make_release folder (#830)
This PR is part of porting all old scripts #221 and ports `make_release`
folder
## Summary

### make_release/this_week_in_nu_weekly.nu
This script has already been ported and has received some updates: #433.
So I just removed it
```yaml
from: before_v0.60/make_release/this_week_in_nu_weekly.nu
to: make_release/this_week_in_nu_weekly.nu
functions:
    do-work: make_release/this_week_in_nu_weekly.nu:1:query-week-span
```

### make_release/this_week_in_nu_release.nu

I have ported this, but I'm not sure if we need it because it has
strange name and we have `prs.nu` and `make_release/release-note/`

```yaml
from: before_v0.60/make_release/this_week_in_nu_release.nu
to: make_release/this_week_in_nu_release.nu
functions:
    do-work: make_release/this_week_in_nu_release.nu:1:do-work
```

### make_release/nu_release.nu

This has already been ported to `make_release/nu_release.nu` and has
received new updates #828 so I just removed it

```yaml
from: before_v0.60/make_release/nu_release.nu
to: make_release/nu_release.nu
```

### make_release/gen-js-ext.nu
This has already been moved to `make_release/gen-js-ext.nu` and has
received new updates #621 but not completely ported so I have ported it
- pipeline `for` to `each`
- `$nu.scope.commands` to `scope commands`
- explicit `print`
```yaml
from: before_v0.60/make_release/gen-js-ext.nu
to: make_release/gen-js-ext.nu
functions:
  gen_keywords: make_release/gen-js-ext.nu:1:gen_keywords
  gen_sub_keywords: make_release/gen-js-ext.nu:20:gen_sub_keywords
```

### make_release/gen-ts-ext.nu
I have ported this script
```yaml
from: before_v0.60/make_release/gen-ts-ext.nu
to: make_release/gen-ts-ext.nu
functions:
  gen-ts-cmds-begin: make_release/gen-ts-ext.nu:1:gen-ts-cmds-begin
  gen-ts-cmds: make_release/gen-ts-ext.nu:18:gen-ts-cmds
  gen-ts-subs: make_release/gen-ts-ext.nu:40:gen-ts-subs
```
2024-05-13 09:53:13 -04:00
Maxim Uvarov
afde2592a6
use typos for corrections (#833)
I used [typos](https://github.com/crate-ci/typos/).
I manually checked all the corrections and they seem safe to me.
There are still some left, but those in this PR are good
2024-05-08 06:47:54 -05:00
Jakub Žádník
4eab7ea772
Fix link for creating release note PR (#728)
@amtoine I couldn't get it to work with the old link, but with this fix,
opening the PR worked like charm!
2024-04-30 16:54:12 -07:00
Ian Manske
fcde8dc870
Update release script (#828)
Add new crates to the release script and updates the order of existing
crates according to the `nu_deps.nu` script.
2024-04-30 21:43:36 +00:00
Stefan Holderbach
660b55c2f0
Add nu_plugin_polars as a crate to release (#814)
For the upcoming `0.93.0` release we want to ship this plugin.

Merge ahead of the release process (not when we have a patch release
inbetween)
2024-04-27 14:38:38 +02:00
Devyn Cairns
dfdd5692d7
Add nu_plugin_nu_example to bump-version.nu (#822)
What it says on the tin. This just updates the `bump-version.nu` script
to also edit the version in
the new nu_plugin_nu_example plugin, the same way it does for python
2024-04-19 15:43:09 -05:00
Stefan Holderbach
f1c247aca6
Bump version in the python plugin example as well (#809)
This is a requirement of the new plugin protocol
2024-04-02 20:27:22 +02:00
Jakub Žádník
368785e3ec
Add nu-plugin-test-support to release script (#810)
Discovered during 0.92.0 release
2024-04-02 20:27:11 +02:00
Ian Manske
a2929c0bf8
Use cargo hack in release process (#804)
This PR adds two [`cargo hack`](https://github.com/taiki-e/cargo-hack)
commands to the release process to check for errors due to combination
of features. The first one will run `cargo check` on each crate multiple
times over, toggling different combinations of features each time. This
is to check for compilation errors regarding missing imports, etc. The
second command will run `cargo build` for each crate separately (with
default features) to check for build errors (from `build.rs` or
whatever).

Using the [error](https://github.com/nushell/nushell/pull/11786) from
the 0.90.0 publishing as a test, the first command does indeed find the
compilation error.

In the future, we should probably put these commands into a manually
triggered CI job so that they will be run on multiple platforms.

Also, this PR cleans up `nu_release.nu` a little bit.
2024-03-30 22:36:20 +00:00
Stefan Holderbach
8a2dcf6cf8
Add option list-merged-pr --table (#774)
Paint a table like one of ~~our French Guys~~ those Amtoine created for
the overview of the hall of fame
2024-03-07 06:19:29 -06:00
Jakub Žádník
351691f118
Allow listing merged PRs by milestone (#773)
Also changes `date?` parameter to `--date` and slight code refactoring
2024-03-05 21:27:30 +01:00
Jakub Žádník
bccdab661a
Reorder release dependencies (#754)
These are the changes after running nu_deps
2024-03-05 21:27:04 +01:00
Jakub Žádník
a17186f25f
Add script to generate lists of PRs (#753)
This wraps existing code from @amtoine to auto-generate the PRs for Full
Changelog and Breaking Changes sections.
2024-02-06 22:59:46 +02:00
Antoine Stevan
725b92b254
add missing tasks to the release note PR (#665)
see https://github.com/nushell/nushell.github.io/pull/1114 for an
example.
2023-12-06 18:52:06 +01:00
Stefan Holderbach
99fe279311
Change nu-deps script to not care about waves (#667)
The script was running endlessly for me and the notion of crate waves
may be out of date, after removing them and manually aligning the output
with the relevant crate waves things went smooth.
2023-11-14 18:19:19 +01:00
Stefan Holderbach
1fd3a3fa6a
Update nu_release.nu for 0.87 release (#668)
New crate `nu-lsp`

Only treat `nu-cmd-lang` with the `build.rs` for `version` with the
`--no-verify` treatment in the separate wave

Reorder `nu-command` crates as there are dev-dependencies that may be a
problem
2023-11-14 17:33:24 +01:00
Antoine Stevan
77f7b40828
fix the TOC of the release note template (#664)
should be the last one... 😇 

this PR adds `-toc` to the links in the TOC of the release note
template, they need that for the back reference to the TOC itself in the
section titles
2023-11-11 16:30:04 +01:00
Antoine Stevan
4d165fa510
fix the indentation of the comments in the release note template... (#663)
was writing https://github.com/nushell/nushell.github.io/pull/1114 and
noticed a very nice bug...

yeah HTML comments in `.md` documents can't be indented otherwise `npm
install` + `npm run dev` can't render the page 👀
2023-11-11 16:17:55 +01:00
Antoine Stevan
63fa27f702
add a command to get last release date in the release note template (#662)
this PR adds
```nushell
let last_release_date = ^gh api /repos/nushell/nushell/releases
    | from json
    | into datetime published_at
    | get published_at
    | sort
    | last
```
to the relaease note template to get the date of the last release and
list the PRs from there to now.
2023-11-11 16:00:03 +01:00
Antoine Stevan
e5e0ef6f7b
complete the release note template (#637)
i've started writting the [release note for
0.86.0](https://github.com/nushell/nushell.github.io/pull/1071) and
thought we could enhance the template for the note even further:

- add some TODOs to make sure we don't forget anything
- make the `NOTE` a real note in the first section, it's just for
prettier rendering
- add some template tables in the "hall of fame"
-  add a table of content to allow jumping back and forth
more easily when the note starts to get big
2023-11-11 15:43:59 +01:00
Antoine Stevan
d233262a35
add a few enhancements to the create-pr script for releases (#642)
related to
- https://github.com/nushell/nushell.github.io/pull/1114

i had to use `create-pr` to open
https://github.com/nushell/nushell.github.io/pull/1114 and i thought the
script could be improved in a few ways
- the template had a hardcoded `.0` path version in the semver, this PR
removes is so that the CLI argument can be a full semver, e.g. `0.87.0`
- switch from `explore` to `$env.EDITOR` to preview the completed
template: because it's valid markdown, it looks better in an editor
- fetch the website repo with HTTP and push with SSH: this allows to not
enter the password of an SSH key in the clone step
2023-11-11 15:38:57 +01:00
Antoine Stevan
7d843e5c7b
make list-merged-prs a module and add template example (#636)
to help writing the release notes, i think being able to list all the
PRs between the last two releases and format them directly to a raw
table is really nice.
this PR
- `export`s the `main` command from `list-merged-prs`
- adds an example to the `template.md` file of the release notes

the example:
```nushell
use ./make_release/release-note/list-merged-prs

list-merged-prs nushell/nushell <last-release-date>
    | where author != "app/dependabot"
    | sort-by mergedAt
    | update url {|it| $"[#($it.number)]\(($it.url)\)" }
    | update author { $"[@($in)]\(https://github.com/($in)\)" }
    | select author title url
    | rename -c {url: pr}
    | to md --pretty
```
will dump all the PRs in a `table<author: string, title: string, pr:
string>` in `md` format:
- `author` is a mardown link to the GitHub page of each author
- `title` is the title of the PRs
- `pr` is a markdown link to the GitHub page of each PR

this pipeline will omit the contributions from @app/dependabot.
2023-11-11 15:36:38 +01:00
Antoine Stevan
bc89655422
make_release: do not annotate boolean switches in public API (#635)
related to
- https://github.com/nushell/nushell/pull/10456
- https://github.com/nushell/nushell.github.io/pull/1071

## description
after the changes on boolean switches from
https://github.com/nushell/nushell/pull/10456, we need to not annotate
then with `: bool` when part of a public API.

this PR is required for
https://github.com/nushell/nushell.github.io/pull/1071 to move forward.
2023-10-14 16:19:04 +02:00
Antoine Stevan
4fe113714a
add a section about *after the release* in the release README (#560)
i thought some words about what happens *after the release* could be
worth adding to the release guide 😋
2023-10-14 09:40:05 +02:00
Antoine Stevan
a68382130c
enhance release note PR template (#618)
in this PR i propose
- to add a note about the use of a "breaking change" banner when
detailing a breaking change in it's own section
👉 see the [*Pythonesque operators removal* section of
0.85](https://www.nushell.sh/blog/2023-09-19-nushell_0_85_0.html#pythonesque-operators-removal)
- because we have had these sections for a few releases now, add "hall
of fame" and "changed to commands" sections
2023-10-14 09:39:24 +02:00
Stefan Holderbach
6947014306
Replace use of $nothing with null (#621)
`$nothing` will be deprecated in nu 0.86

This accompanies
- https://github.com/nushell/nushell/pull/10478
2023-09-26 18:52:49 +02:00
Antoine Stevan
e64355b2ce
tix the release note PR opening script (#611)
* remove `str replace --string`

related to nushell/nushell#10064

* remove the return

lol otherwise of course it won't work xD
2023-09-20 18:58:59 +02:00
Stefan Holderbach
30b06ccc3d
Update the bump-version script (#609)
Remove deprecated `--string` of `str replace`
Use `version = ""` for config as well as folks want to have the same
experience in `rg`
2023-09-19 05:55:53 -05:00
Antoine Stevan
56d948e787
fix scripts (#594) 2023-09-16 10:41:46 +02:00
Stefan Holderbach
f2e35e153c
Script to generate the excerpt of the GH release (#566)
* Script to generate the excerpt of the GH release

This will add a list of PR authors so they will be shown with a profile
image at the end of the GH release.

* Update make_release/release-note/gh-release-excerpt

Co-authored-by: Antoine Stevan <44101798+amtoine@users.noreply.github.com>

* Sort authors, feeks default release cycle

---------

Co-authored-by: Antoine Stevan <44101798+amtoine@users.noreply.github.com>
2023-08-23 00:42:15 +02:00
Antoine Stevan
be47e43db6
rename date format to format date (#571) 2023-08-04 09:08:10 -05:00
Antoine Stevan
fec7f95619
fix the date schedule in the release scripts (#561)
* pass the date as an argument to `get-full-changelog`

* simplify the computation of default date in `list-merged-prs`

* switch to the 4 week-schedule by default

* show the queried date before printing merged PRs

* remove `ansi link` as it's an extra command

* create-pr: show PR parts, explore the note and ask for confirmation
2023-07-31 21:42:54 +02:00
Antoine Stevan
f4f765a946
add a script to bump the version of Nushell (#565)
* add `bump-version.nu` to bump a version automatically

* mention `bump-version` in the release guide insted of `sd`

* remove the Note about `sd`ing the `Cargo.lock` file

* break very long lines

* find and replace in the `.nu` config files only

* fix the `str expand` command call for windows

it appears to not work properly with the `\` introduced by `path join`.
2023-07-28 16:22:35 +02:00
Antoine Stevan
9a459565bb
apply some minor markdown style fixes (#562) 2023-07-26 18:19:42 +02:00
Stefan Holderbach
a98df84c59
Specify that config versions need updating as well (#564)
Our default config files carry a version specifier as well to make diagnosis easier.

You need to update them with the version bump PR!
2023-07-26 14:20:03 +02:00
Antoine Stevan
4f0e47d954
make the release note TODOs HTML comments (#557) 2023-07-20 13:47:46 -05:00
Antoine Stevan
bbbf8afb08
refactor: simplify the nu_release script (#540)
* remove useless comments

* use `--manifest-path` instead of `cd`ing

* add a bit of logging

* use an env-scoped `publish` command instead of `--manifest-path`

this will achieve the same result and make sure we control the
behaviour of the options, which we do not with unclear
`--manifest-path`.
2023-07-08 12:47:40 +02:00
Antoine Stevan
bc54b622fa
fix the release note scripts (#538)
* fix link to `reedline` which is `nushell/reedline`

* add a `#` to the PR number in MD links
2023-07-03 10:10:38 +02:00
Antoine Stevan
3c436c4153
update the make_release/Readme.md with the whole process (#541)
* update the `make_release/Readme.md` with the whole process

* complete the release process of `reedline` and `nu-ansi-term`

* make the 0 section title more clear

* make the Git remotes more general and be clear about that

* use `v0.xx.0` tags for both `reedline` and `nu-ansi-term`
2023-07-02 10:23:55 +02:00
Darren Schroeder
c37fd0449f
update default path in 20k_club 2023-06-30 06:33:23 -05:00
Darren Schroeder
9d12487d11
update syntax for find-deps 2023-06-23 14:39:07 -05:00
Michael Angerman
fde7f5b768
add the new crate nu-cmd-base to the release (#533) 2023-06-22 17:11:53 -07:00
Darren Schroeder
065651c763
update syntax 2023-06-22 14:48:49 -05:00
Antoine Stevan
2e46f056c6
REFACTOR: rewrite the release note scripts (#525)
* move "create release PR" script to `make_release/release-note/`

* move "since last release" script to `make_release/release-note/`

* add a script to list contributions for the release note

* rewrite `since_last_release` to use `list-merged-prs`

This commit also makes the script executable.

* update the `make_release/` readme

* add the commands to run to the release note template

* rename `since_last_release.nu` to `get-full-changelog`

* move the release note PR template to a standalone file

* add another section to inspect Nushell PRs to write changelogs

* fix the name of the command inside it's own doc
2023-06-09 15:26:46 -05:00
Antoine Stevan
b901e0737e
fix the std log import (#524) 2023-06-09 07:57:01 -05:00