Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to Clap v4, bump MSRV to 1.75 #298

Merged
merged 3 commits into from
Jun 16, 2024
Merged

Migrate to Clap v4, bump MSRV to 1.75 #298

merged 3 commits into from
Jun 16, 2024

Conversation

dbrgn
Copy link
Collaborator

@dbrgn dbrgn commented Oct 22, 2022

Again, this is a pretty big update with multiple breaking changes that requires changing how our argument parsing is set up. (If I ignore the effort to upgrade, this update does contain some nice API improvements, so I guess in the long term it's worth it. The blogpost is an interesting read.)

Fixes #350.

@dbrgn
Copy link
Collaborator Author

dbrgn commented Feb 4, 2024

I think everything should work fine now, but the PR is currently blocked on #352.

@dbrgn dbrgn marked this pull request as ready for review February 11, 2024 14:21
@dbrgn dbrgn force-pushed the clap-v4 branch 2 times, most recently from 110dfd7 to da68269 Compare February 11, 2024 14:36
docs/src/usage.txt Outdated Show resolved Hide resolved
docs/src/usage.txt Show resolved Hide resolved
Copy link
Collaborator

@niklasmohrin niklasmohrin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks mostly good, some thoughts:

src/types.rs Outdated Show resolved Hide resolved
src/cli.rs Outdated Show resolved Hide resolved
src/cli.rs Outdated Show resolved Hide resolved
src/cli.rs Outdated Show resolved Hide resolved
@dbrgn dbrgn force-pushed the clap-v4 branch 3 times, most recently from dfa170d to f0b5137 Compare June 10, 2024 21:20
@dbrgn
Copy link
Collaborator Author

dbrgn commented Jun 10, 2024

@niklasmohrin updated! Should be ready now, I think.

@dbrgn
Copy link
Collaborator Author

dbrgn commented Jun 10, 2024

MSRV had to be bumped due to clap dependencies. I picked 1.75, which was released in December 2023.

@dbrgn dbrgn changed the title Migrate to Clap v4 Migrate to Clap v4, bump MSRV to 1.75 Jun 10, 2024
Copy link
Collaborator

@niklasmohrin niklasmohrin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good :)

src/cli.rs Outdated Show resolved Hide resolved
@dbrgn dbrgn enabled auto-merge June 16, 2024 22:36
@dbrgn dbrgn merged commit 83b2bda into main Jun 16, 2024
9 checks passed
@dbrgn dbrgn deleted the clap-v4 branch June 16, 2024 22:51
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Oct 16, 2024
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [dbrgn/tealdeer](https://github.com/dbrgn/tealdeer) | minor | `v1.6.1` -> `v1.7.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>dbrgn/tealdeer (dbrgn/tealdeer)</summary>

### [`v1.7.0`](https://github.com/dbrgn/tealdeer/blob/HEAD/CHANGELOG.md#v170-v170-2024-10-02)

[Compare Source](tealdeer-rs/tealdeer@v1.6.1...v1.7.0)

It's been 24 months since the last release, time for tealdeer 1.7.0! Thanks to
16 individual contributors, a few nice changes and features are included in
this release.

One change is that you can **query multiple platforms at once**. For example:

    tldr --platform openbsd --platform linux df

This will show the `df` page for OpenBSD (if available), followed by Linux (if
available), with fallback to the current platform on which tealdeer runs.

What's that `openbsd` thing up there? Yes, there's now **support for the BSD
platforms `freebsd`, `netbsd` and `openbsd`**.

And since we're already talking about platform support: Our **binary releases
now include builds for ARM64 (aka `aarch64`) on macOS (Apple Silicon, M1/M2/M3)
and Linux**. *(Keep in mind that binary releases are generated in CI and are
unsigned. For a trusted build, please compile from source.)*

There's also a breaking change for the folks using [custom pages and
patches](https://tealdeer-rs.github.io/tealdeer/usage_custom_pages.html): These
files now use a `.md` extension. Old files will continue to work, but will
result a deprecation warning being printed when used.

On a personal note, this will be the last release from me
([Danilo](https://github.com/dbrgn/)) as primary maintainer of tealdeer. For
details, see [#&#8203;376](tealdeer-rs/tealdeer#376).

Changes:

-   \[added] Allow querying multiple platforms (\[[#&#8203;300](tealdeer-rs/tealdeer#300)])
-   \[added] Add BSD platform support (\[[#&#8203;354](tealdeer-rs/tealdeer#354)])
-   \[added] Allow building with native-tls in addition to rustls (\[[#&#8203;303](tealdeer-rs/tealdeer#303)])
-   \[changed] Change custom page files to use a `.md` file extension (\[[#&#8203;322](tealdeer-rs/tealdeer#322)])
-   \[changed] Update to clap v4 for doing command line parsing (\[[#&#8203;298](tealdeer-rs/tealdeer#298)])
-   \[changed] Performance optimization in LineIterator (\[[#&#8203;314](tealdeer-rs/tealdeer#314)])
-   \[changed] Performance optimizations by tweaking Cargo flags (\[[#&#8203;355](tealdeer-rs/tealdeer#355)])
-   \[changed] Include completions in published crate (\[[#&#8203;333](tealdeer-rs/tealdeer#333)])
-   \[changed] Minimal supported Rust version is now 1.75 (\[[#&#8203;298](tealdeer-rs/tealdeer#298)])
-   \[fixed] Fix bash/zsh/fish completions when cache is empty (\[[#&#8203;327](tealdeer-rs/tealdeer#327)], \[[#&#8203;331](tealdeer-rs/tealdeer#331)])
-   \[docs] Publish docs only when tagging a release (\[[#&#8203;362](tealdeer-rs/tealdeer#362)])
-   \[docs] List Scoop and Debian packages (\[[#&#8203;305](tealdeer-rs/tealdeer#305)], \[[#&#8203;315](tealdeer-rs/tealdeer#315)])
-   \[docs] Add "Tips and Tricks" chapter to user manual (\[[#&#8203;342](tealdeer-rs/tealdeer#342)])
-   \[docs] Various docs improvements (\[[#&#8203;293](tealdeer-rs/tealdeer#293)])
-   \[chore] Improvements to CI workflows (\[[#&#8203;324](tealdeer-rs/tealdeer#324)])
-   \[chore] Update Cargo.toml license field following SPDX 2.1 (\[[#&#8203;336](tealdeer-rs/tealdeer#336)])
-   \[chore] Dependency updates

Contributors to this version:

-   \[Adam Henley]\[[@&#8203;adamazing](https://github.com/adamazing)]
-   \[Andrea Frigido]\[[@&#8203;frisoft](https://github.com/frisoft)]
-   \[Blair Noctis]\[[@&#8203;nc7s](https://github.com/nc7s)]
-   \[Danilo Bargen]\[[@&#8203;dbrgn](https://github.com/dbrgn)]
-   \[Felix Yan]\[[@&#8203;felixonmars](https://github.com/felixonmars)]
-   \[Iliia Maleki]\[[@&#8203;iliya-malecki](https://github.com/iliya-malecki)]
-   \[JJ Style]\[[@&#8203;jj-style](https://github.com/jj-style)]
-   \[K.B.Dharun Krishna]\[[@&#8203;kbdharun](https://github.com/kbdharun)]
-   \[Linus Walker]\[[@&#8203;Walker-00](https://github.com/Walker-00)]
-   \[Mohit Raj]\[[@&#8203;agrmohit](https://github.com/agrmohit)]
-   \[Nicolai Fröhlich]\[[@&#8203;nifr](https://github.com/nifr)]
-   \[Niklas Mohrin]\[[@&#8203;niklasmohrin](https://github.com/niklasmohrin)]
-   \[[@&#8203;qknogxxb](https://github.com/qknogxxb)]\[[@&#8203;qknogxxb](https://github.com/qknogxxb)]
-   \[[@&#8203;tveness](https://github.com/tveness)]\[[@&#8203;tveness](https://github.com/tveness)]
-   \[Y.D.X.]\[[@&#8203;YDX-2147483647](https://github.com/YDX-2147483647)]
-   \[Zacchary Dempsey-Plante]\[[@&#8203;zedseven](https://github.com/zedseven)]

Thanks!

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNyIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC43IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

Support for clap version 4
3 participants