cargo-release
toml
cargo-release | toml | |
---|---|---|
11 | 45 | |
1,245 | 19,163 | |
1.2% | 0.4% | |
9.1 | 4.0 | |
1 day ago | 24 days ago | |
Rust | Python | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cargo-release
-
Changelog-Driven Releases
My problem with maintaining a changelog during development is it can serve as a source of merge conflicts. Instead, I follow Covnentional Commit style and manually write my changelog entries based on the commits. I have a tool [0] that can show me the relevant commits for a package in my repo and automates the entire release process, including doing sanity checks.
I also feel like releasing from CI is hard, especially if you have multiple packages in a repo [1], including
- You can't as easily introspect the process
- You can't as easily recover from failure
- Getting a lot of the nuance right, like handling releases concurrent to merging of PRs, is difficult
- When the workflow is an ever-present "release PR" that you merge when ready has issues with selecting which packages to release and at what version
I have been considering making a tool to generate changelogs from fragments. Been keeping notes at https://github.com/epage/epage.github.io/issues/23
[0]: https://github.com/crate-ci/cargo-release
[1]: https://github.com/MarcoIeni/release-plz/discussions/1019
-
Oxlint β written in Rust β 50-100 Times Faster than ESLint
You should combine step 1 and 2 with CI. Just tag a version in your git, push to remote and have CI auto build a release for you.
Use github actions or other setup for other backends.
Or go nuts with cargo-release.
https://github.com/crate-ci/cargo-release
https://github.com/cargo-bins/release-pr
-
Rust 2030 Christmas list: Subcrate dependencies
tools like cargo-release
-
`toml` vs `toml_edit` (ie `toml` 0.6 is out)
Just to check, are you aware of cargo-edit's cargo-set-version or cargo-release?
-
What's everyone working on this week (45/2022)?
I released my first crate that provides a derive macro to easily obtain a name of a current variant in an enum as a string. I did it mostly to learn about procedural macros and the process of releasing a crate. I then found out there is strum which does this and much more. Nonetheless, I learned a lot and I found couple of nice tools like ```cargo-release and git-cliff.
- cargo-release v0.22 is out!
-
A GitHub Action for creating "Release PRs" for Cargo projects.
I'll note there is an issue in the cargo-release repo where this kind of workflow is wanted. https://github.com/crate-ci/cargo-release/issues/119
-
[Gitoxide December Update]: a new object database and upcoming multi-pack index support
cargo-release is on about the same level of features used
-
cargo-release v0.19
cargo-release automates the release process for your crate. For example, with clap, all I do is add entries to the CHANGELOG and run cargo release patch and cargo-release takes care of updating files, publishing to crates.io, tagging, and pushing.
-
Introducing `cargo smart-release` - the new way to release workspace crates
Yes, developers from all three tools were sharing ideas with each other recently
toml
-
Let's meet Black: Python Code Formatting
Black uses by default the pyproject.toml file. This file contains a section for each different tool we want to use. The use of a configuration file like pyproject.toml is quite a good choice and helps the contributors to use the same tools and configurations you're using.
-
Why the fuck are we templating YAML? (2019)
> I don't think even though TOML has some official spec
Read it on https://toml.io/ (Full spec on upper-right⦠with its evolutions up to final 1.00 version).
-
'Hypermodernize' your Python Package
ini2toml which automatically translates .ini/.cfg files into TOML
-
An INI Critique of TOML
toml 1.1 will allow non-ascii in keys (and multi-line inline tables)
See https://github.com/toml-lang/toml/blob/main/CHANGELOG.md
- What Is Wrong with TOML?
- TOML: Tom's Obvious Minimal Language
-
What do ya'll think of TOML's - Support almost all programming language popularized today.
GitHub - toml-lang/toml: Tom's Obvious, Minimal Language
-
`toml` vs `toml_edit` (ie `toml` 0.6 is out)
See https://github.com/toml-lang/toml/blob/main/CHANGELOG.md
-
The YAML Document from Hell
> I still think it's the best format out there.
What do you think of https://toml.io ?
-
7 Python 3.11 new features π€©
TOML built-in support
What are some alternatives?
Rustup - The Rust toolchain installer
tomli - A lil' TOML parser
just - π€ Just a command runner
json5 - JSON5 β JSON for Humans
cargo-make - Rust task runner and build tool.
starship - βποΈ The minimal, blazing-fast, and infinitely customizable prompt for any shell!
Clippy - A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/
dhall - Maintainable configuration files
cargo-ebuild - cargo extension that can generate ebuilds using the in-tree eclasses
tomlplusplus - Header-only TOML config file parser and serializer for C++17.
cargo-modules - Visualize/analyze a Rust crate's internal structure
docker-selenium - Provides a simple way to run Selenium Grid with Chrome, Firefox, and Edge using Docker, making it easier to perform browser automation