CHANGELOG: Radicle 1.5.0
This commit is contained in:
parent
8bc578bfa8
commit
4787b53b1e
102
CHANGELOG.md
102
CHANGELOG.md
|
|
@ -11,11 +11,94 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
## Deprecations
|
## Deprecations
|
||||||
|
|
||||||
- The option `rad self --nid` was deprecated in favor of `rad status --only nid`
|
## New Features
|
||||||
|
|
||||||
|
- `rad issue` now uses `clap` to parse its command-line arguments.
|
||||||
|
This affects error reporting as well as help output.
|
||||||
|
|
||||||
|
## Fixed Bugs
|
||||||
|
|
||||||
|
## 1.5.0
|
||||||
|
|
||||||
|
## Release Highlights
|
||||||
|
|
||||||
|
### Better Support for Bare Repositories
|
||||||
|
|
||||||
|
[gitrepostiory-layout]: https://git-scm.com/docs/gitrepository-layout/2.49.0
|
||||||
|
|
||||||
|
Some improvements to supporting bare repositories have been made for `rad` and
|
||||||
|
`git-remote-rad`. For `rad`, the `rad clone` command has learned a new flag
|
||||||
|
`--bare`, which clones the repository into a bare repository, as opposed to
|
||||||
|
having a working tree (see [gitrepository-layout]).
|
||||||
|
|
||||||
|
`git-remote-rad` (our Git remote helper), also learned to better handle bare
|
||||||
|
repositories, when using `git push` and `git fetch` with a `rad://` remote.
|
||||||
|
|
||||||
|
For `jj` users, this begins to unlock being able to use `jj` without co-location
|
||||||
|
of the Git repository. Further improvements to interoperability with `jj` are
|
||||||
|
in progress and will be released in future versions.
|
||||||
|
|
||||||
|
### Introducing the `patch.branch` Option
|
||||||
|
|
||||||
|
Continuing on the theme of making `jj` users happy, `git-remote-rad` can now
|
||||||
|
handle the option `-o patch.branch[=<name>]`. When the option is passed without
|
||||||
|
a name, i.e. `-o patch.branch`, an upstream branch will be created which is
|
||||||
|
named after the patch being created – `patches/<PATCH ID>`. Alternatively, the
|
||||||
|
`<name>` value is used if supplied.
|
||||||
|
|
||||||
|
This allows you to specify if you want a tracking branch (or bookmark in `jj`)
|
||||||
|
for the patch. This means that you can avoid using `rad patch checkout`.
|
||||||
|
|
||||||
|
### Improved `rad patch show`
|
||||||
|
|
||||||
|
The `rad patch show` command has received some love by improving its output. The
|
||||||
|
`Base` of the patch is now always output, where before it was behind the
|
||||||
|
`--verbose` flag.
|
||||||
|
|
||||||
|
The previous output would differentiate "updates", where the original author
|
||||||
|
creates a new revision, and "revisions", where another author creates a
|
||||||
|
revision. This could be confusing since updates are also revisions. Instead, the
|
||||||
|
output shows a timeline of the root of the patch and each new revision, without
|
||||||
|
any differentiation. The revision identifiers, head commit of the revision, and
|
||||||
|
author are still printed as per usual.
|
||||||
|
|
||||||
|
### Structured Logging
|
||||||
|
|
||||||
|
The `radicle-node` has learned to output structure logging using the new
|
||||||
|
`--log-logger structured` and `--log-format json` option pairs. If they are not
|
||||||
|
specified, then the logging will remain the same as per usual.
|
||||||
|
|
||||||
|
### Deprecations in `rad`
|
||||||
|
|
||||||
|
It is important to note that we are now emitting deprecation and obsoletion
|
||||||
|
warnings for several `rad` commands and options.
|
||||||
|
|
||||||
|
For `rad diff`, the whole command is deprecated, and `git diff` should be used
|
||||||
|
instead. It is better to use the tools that already exist in this case.
|
||||||
|
|
||||||
|
The option `rad self --nid` was deprecated in favor of `rad node status --only nid`.
|
||||||
|
The reason for this is that we will be making efforts to separate the cryptographic
|
||||||
|
identity of user and node.
|
||||||
|
For this case, the node will – in a future version – read the location of the
|
||||||
|
secret key to use from configuration or arguments at runtime. This means that a
|
||||||
|
running node is required to report the correct Node ID – and the command cannot
|
||||||
|
rely on the default location, which is shared with the user.
|
||||||
|
|
||||||
|
The options `rad patch review [--patch | --delete]` are marked as obsolete,
|
||||||
|
since their functionality never worked as intended. Reviews are something that
|
||||||
|
requires more research and time to implement. These commands will likely be
|
||||||
|
removed before a next major release, since their lack of functionality is
|
||||||
|
confusing.
|
||||||
|
|
||||||
|
## Deprecations
|
||||||
|
|
||||||
|
- The option `rad self --nid` was deprecated in favor of `rad node status --only nid`
|
||||||
- `rad diff` was deprecated in favor of using `git diff`
|
- `rad diff` was deprecated in favor of using `git diff`
|
||||||
- `rad patch review --patch` and `rad patch review --delete` are made obsolete.
|
- `rad patch review --patch` and `rad patch review --delete` are made obsolete.
|
||||||
This functionality never worked as intended, and may be removed before the
|
This functionality never worked as intended, and may be removed before the
|
||||||
next major release.
|
next major release.
|
||||||
|
- The option `radicle-node --log` was deprecated in favor of
|
||||||
|
`radicle-node --log-level` to be in line with `--log-logger` and `--log-format`.
|
||||||
|
|
||||||
## New Features
|
## New Features
|
||||||
|
|
||||||
|
|
@ -29,11 +112,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
- `git-remote-rad` now correctly reports the default branch to Git by listing
|
- `git-remote-rad` now correctly reports the default branch to Git by listing
|
||||||
the symbolic reference `HEAD`.
|
the symbolic reference `HEAD`.
|
||||||
- `rad status` learned a new option `--only nid` for printing the Node ID.
|
- `rad status` learned a new option `--only nid` for printing the Node ID.
|
||||||
- `rad issue` now uses `clap` to parse its command-line arguments.
|
- The remote helper has learned a new server option `patch.branch[=<name>]`.
|
||||||
This affects error reporting as well as help output.
|
This will create an upstream branch when creating the branch. This upstream
|
||||||
|
can then be used for updating the patch, post creation.
|
||||||
|
- `radicle-node` has learned `--log-logger structured` and `--log-format json`
|
||||||
|
options. The node will output its logs in a structured, JSON format when
|
||||||
|
specified.
|
||||||
|
|
||||||
## Fixed Bugs
|
## Fixed Bugs
|
||||||
|
|
||||||
|
- The `rad` CLI now uses [indicatif](https://crates.io/crates/indicatif) for
|
||||||
|
emitting progress spinners. This fixes an issue when the terminal size was
|
||||||
|
too small for the spinner line. It also fixes when there is a user interrupt,
|
||||||
|
the cursor would disappear.
|
||||||
|
- The remote helper will no longer attempt to verify Git hooks twice, when
|
||||||
|
performing a `git push`.
|
||||||
|
- The default Git remote options, when using `rad remote`, now set `pruneTags`
|
||||||
|
to prevent canonical tags from being pruned from the working copy of the
|
||||||
|
repository's `refs/tags`.
|
||||||
- `rad init --setup-signing` now works in combination with `--existing`.
|
- `rad init --setup-signing` now works in combination with `--existing`.
|
||||||
|
|
||||||
## 1.4.0
|
## 1.4.0
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue