Releases: rwx-research/mint-cli
Mint CLI unstable
The Mint CLI unstable release and tag exist to provide an easy way to download the latest unstable.x.x release of the Mint CLI. For example, you can always download the latest Linux x86 unstable release at this URL: https://github.com/rwx-research/mint-cli/releases/download/unstable/mint-linux-x86_64. (Look at the assets attached to this release to find the other available downloads.) This release and its assets are updated whenever a new unstable.x.x version of the Mint CLI is released.
Mint CLI v1.3.1
This release fixes a small bug when starting a run and passing a file to --dir
What's Changed
- Do not grab mint directory entries when it is not a directory by @kylekthompson in #112
Full Changelog: v1.3.0...v1.3.1
Mint CLI v1
The Mint CLI v1 release and tag exist to provide an easy way to download the latest v1.x.x release of the Mint CLI. For example, you can always download the latest Linux x86 v1 release at this URL: https://github.com/rwx-research/mint-cli/releases/download/v1/mint-linux-x86_64. (Look at the assets attached to this release to find the other available downloads.) This release and its assets are updated whenever a new v1.x.x version of the Mint CLI is released.
Mint CLI v1.3.0
When initiating a new run, this version will send the entire contents of the .mint directory recursively.
What's Changed
- Update Mint leaves to the latest version by @mint-rwx-mint-leaves-update in #107
- Use rwx-bot for GitHub automation by @dan-manges in #108
- Remove mocks of filesystems and use the filesystem directly by @kylekthompson in #109
- Recursively send the entire mint directory contents, not just the first level of yaml by @kylekthompson in #110
Full Changelog: v1.2.0...v1.3.0
Mint CLI v1.2.0
What's Changed
- Handle snippets when linting by @TAGraves in #105
- Adds support for new user message format for runs and linting by @TAGraves in #106
Full Changelog: v1...v1.2.0
Mint CLI v1.1.2
What's Changed
- Update Mint leaves to the latest version by @mint-rwx-mint-leaves-update in #101
- Don't validate YAML by @TAGraves in #104
Full Changelog: v1...v1.1.2
Mint CLI v1.1.1
What's Changed
Full Changelog: v1...v1.1.1
Mint CLI v1.1.0
What's Changed
- Bump the minor-dependencies group with 2 updates by @dependabot in #90
- Update Mint leaves to the latest version by @mint-rwx-mint-leaves-update in #94
- Bump the minor-dependencies group with 2 updates by @dependabot in #95
- Use mint/tool-versions leaf. by @doxavore in #97
- Add internal memoryfs for testing. by @doxavore in #99
- Add
mint lint
command. by @doxavore in #100 - Update Mint leaves to the latest version by @mint-rwx-mint-leaves-update in #98
- Update to Go v1.23.0 by @doxavore in #102
Full Changelog: v1...v1.1.0
Mint CLI v1.0.0
We've just released Mint 1.0 which represents a major milestone for Mint. Mint is now considered stable and featureful enough for all production use cases. We've released an immense number of improvements since our generally available release two months ago, and we'll take a look at some of what's new below.
Improved support for Docker
We've added new controls to manage how Docker works inside of your tasks. You can now control whether Mint will persist and cache your Docker data, which enables volume caching and incremental Docker builds inside Mint.
Docker can produce non-deterministic data, which can be problematic in Mint since it results in cache misses for cases in which you'd otherwise have a cache hit. We therefore used to always delete any data produced by Docker at the end of each task. Now, with the new docker: preserve-data
setting, you can opt into keeping Docker's data for use in subsequent tasks. Keeping Docker's data unlocks powerful new features inside Mint while keeping Mint fast and predictable in all cases where you don't need to preserve the data.
Cached Docker images
You can pull Docker images in one task and then use those images in a subsequent task. This allows you to take advantage of Mint's caching with the Docker images you use, which is much faster than pulling the images from Dockerhub!
Cached Docker volumes
If you have expensive database setup that you need to perform before running your test suite, you can now perform that setup in one task and then use the same Docker volume in a subsequent task. With Mint's caching, you'll only perform the database setup when something changes that could affect the database setup, leading to a substantial performance improvement when setting up tasks to run your test suite.
Incremental Docker builds
Combining preserved Docker data with a tool cache allows you to get cache hits within your Docker builds by preserving the Docker build cache across builds.
You can read more about using Docker with Mint in the documentation.
Custom GitHub Apps
We now support supplying your own GitHub app for your Mint runs and dynamically generating access tokens for your self-managed GitHub apps. Combined with vault controls, you can now fine-tune exactly which runs can perform which actions on GitHub, and you can now enable actions on GitHub that were previously impossible, such as managing deployment environments or opening PRs.
You can read more about custom GitHub apps in the documentation.
Improved YAML parser
We rewrote our YAML parser from the ground up to dramatically improve our ability to return actionable error messages when something is configured wrong with your YAML definition. YAML error messages now include the exact file, line, and column number of the error, in addition to being more friendly to read.
Improved log performance
We rewrote our log-handling server and dramatically simplified its infrastructure from one that used a NoSQL database to one that just uses files. As a result, logs now load much faster in the Cloud UI.
Improved Secrets Handling
We replaced our previous secrets handling store with a new store. The new store improves security by encrypting your secrets with an encryption key specific to your organization, and it also provides better tracking around when each secret was last used and who set each secret and when.
New environment variables
Mint now sets several environment variables that help third party tools understand the context in which they are running, including MINT
, MINT_RUN_ID
, and MINT_TASK_ID
. Additionally, we've created new capabilities for tasks to set their own environment variables without affecting the task cache. For example, the mint/git-clone
leaf now sets variables like MINT_GIT_COMMIT_SHA
and MINT_GIT_REF_NAME
.
Improved Agent startup times
We implemented a slate of strategies for pooling agents ahead of time. We now keep both a "hot" pool of already started agents and a "warm" pool of agents that can be started quickly to ensure that no task waits too long before being assigned an agent.
Improved UI performance
We reworked a large portion of the Cloud UI to make it more intelligently load only the data you need. We decreased page load times by 90% in several common cases, including viewing the Run overview page.
Looking forward
We're incredibly excited about what Mint 1.0 represents for us and for the future of Mint. Mint is the fastest CI platform with the best developer experience, and we've still got a lot more on our plate for making it even better, including:
- Improved test result management for parallel tasks
- Easier ways to debug tasks that have already completed
- Additional integrations with services like Slack to make it easy to manage your own notifications
- Support for running tasks with different infrastructure and agent types
Mint CLI v0.2.2
What's Changed
- Enable cron updates of Mint leaves. by @doxavore in #69
- Remove nix by @dan-manges in #71
- Update release workflow for nix removal by @dan-manges in #72
- Use → when displaying updates to leaves by @dan-manges in #70
- Use embedded runs in Mint by @dan-manges in #74
- Bump github.com/onsi/ginkgo/v2 from 2.17.1 to 2.17.2 in the minor-dependencies group by @dependabot in #75
- Make
--file
a required flag by @pierrebeaucamp in #76 - Print user-facing error message on 410 reponse when debugging by @pierrebeaucamp in #77
- Update Mint leaves to the latest version. by @mint-rwx-mint-leaves-update in #78
- Bump the minor-dependencies group with 3 updates by @dependabot in #79
- Fix bigtest and use .tool-versions in Mint by @dan-manges in #81
- Bump github.com/onsi/ginkgo/v2 from 2.17.2 to 2.17.3 in the minor-dependencies group by @dependabot in #80
- Use github.token by @kylekthompson in #82
- Fixes the release build by @TAGraves in #84
New Contributors
- @mint-rwx-mint-leaves-update made their first contribution in #78
Full Changelog: v0.2.1...v0.2.2