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

treefmt 2.0.1 #175969

Merged
merged 2 commits into from
Jun 29, 2024
Merged

treefmt 2.0.1 #175969

merged 2 commits into from
Jun 29, 2024

Conversation

chenrui333
Copy link
Member

Created by brew bump


Created with brew bump-formula-pr.

release notes
We have rewritten `treefmt` in Go but have tried to retain backward compatibility as much as possible. 

For the most part, treefmt 2.0 should be a drop-in replacement for 1.0.

Users may find some behaviour differences in how treefmt 2.0 traverses the filesystem. Please review the new website treefmt.com for more info.

If you have any problems, please create an issue, and we will do our best to resolve it promptly.

For some background, you can read more here.

Features

  • migrated cache storage from Toml to boltdb
  • introduced the concept of walkers to make filesystem traversal extensible. It currently supports auto, git, and filesystem. You no longer have to exclude the .git directory; ' treefmtwill traverse files based on the git index if a.git` directory is detected.
  • we now guarantee only one formatter will operate on a given path at any time.
  • ordering for formatters can now be controlled with a new priority field.
  • improved performance by up to 8x when cached based on a nixpkgs benchmark
  • migrated docs from mkdocs to vitepress
  • docs are now hosted under a custom domain, treefmt.com

Changelog

  • c07305e6b06d50c4b5189255e534818f1f26d842: cli: remove global state, init function usage (@katexochen)
  • 56d8561125827b7c98c5642c48e950fa8ee0a81f: feat: improve unmatched logic (@brianmcgee)
  • e29107d3ee11255dbe2ee7824bc4805a10c43134: fix: only cancel formatters on background errors (@zimbatm)
  • c68261e9799996d427417fadf68ba54d06d9ff2b: fix: stop hard-killing formatters (@zimbatm)
  • 088479eb271b4e28726c3c6f776e4fbfb04720a4: Update cli/cli.go (@zimbatm)
  • bd32d36a33f3eca49000402c91112ef8956d30f8: cli: search for the tree root by default (@zimbatm)
  • bc89625cb946b15e6fe1f21c37ee77426f0e707c: fix TreeRootFile type (@zimbatm)
  • 089eb171a0716087e3a225264a825afd0eb92253: fix: --stdin flag (@brianmcgee)
  • 0511e9acf1cc0cffa32ae006d390334427bed544: fixes cli: search for the tree root by default numtide/treefmt#309 (comment) (@zimbatm)
  • 7f4697fc4958833de7cddc0a0ce5b7090cf168a1: simplify logic (@zimbatm)
  • 1b517c65024f9a80daaafe27064b7423b15cad82: feat: add --on-unmatched (@brianmcgee)
  • ce14ee828faa35aa39b95f9ac16a16881699506f: feat: simplify pipeline model (@brianmcgee)
  • ff3bfaa0b661fffbda1bd03bc4cb85dd7f4e77fd: feat: demote some cache related logging to debug level (@brianmcgee)
  • 06e41453ec58d4bb4e09cf9974cc5de7eec11ca7: feat: error out when a path matches multiple formatters (@brianmcgee)
  • 385fbc36cf7dd5e446dbfd79b501fb0800423aa4: feat: improve formatter cache debug logging (@brianmcgee)
  • 3c264c623e07e1184e1f48121abab8d36fb5cfea: feat: log out the formatter command being applied at debug level (@brianmcgee)
  • c002eca8b775c0f49dbfd27ee164739c6e1abdd8: feat: log out when a path is not matched to any formatter (@brianmcgee)
  • affbb99ef906e5aeeb9f1cfc5e768efed5fa9d81: feat: switch back to numtide/treefmt-nix (@brianmcgee)
  • 24114f5e0cd10bc14b93a8038102dd28141ceac7: feat: update go modules (@brianmcgee)
  • f7cc274b07cd6ddf9283bd8c51bb1af8f7711853: fix wording (@fricklerhandwerk)
  • 4d07521d97493ec7445cfa2c3548cb6ce6b20202: fix: -f short flag for specifying formatters (@brianmcgee)
  • 3649e4789ce16dea4d021ef59120f71cacb53dcd: fix: support core.untrackedCache in git (@brianmcgee)
  • 2b944804615130f16c1cdd00526bb57e237b21b5: fix: use resolved executable when applying a formatter (@brianmcgee)
  • 187375c6c4c1fc4fffe6a2a89a0090a20a77ffba: README: update link to the Rust v1 (@zimbatm)
  • 400d0c70949df8ac43de6f6e5d6cf1c9ed52ed4e: Revert "chore: temporarily remove settings.yml workflow" (@brianmcgee)
  • 8de5446c64a87a56392a4262c24fbb85842531ef: Revert "ci: add go workflow" (@brianmcgee)
  • 811f883a2be1011e98ab9bd64c67ca5f320acd75: feat/bust-cache-validators-change (#14) (@brianmcgee)
  • cb9564c7ef738b8899648cf9df464eeec2e7bc1b: feat: add -s -w build flags to reduce binary size (@brianmcgee)
  • 4ffe2ca16c2a125f97f17e0740dc44d7c95f80a9: feat: add CGO dependencies to devshell (@brianmcgee)
  • 2b49923bf7d01e78cb9a4b57b1095756e265c6ad: feat: add an example of 'before' (@brianmcgee)
  • a79ae9583c139cc3672cc904ee7845775e9014fd: feat: add cpu profile flag (@brianmcgee)
  • ad3e66166a5b1577de8999400b79e095cdc7128b: feat: add flake compat (@brianmcgee)
  • aa75d3db4e1d4c18495565e67677f8d46797822d: feat: add initial github workflow (@brianmcgee)
  • 4dd4c55ff51a81e06de06006f005ba6f8ca50037: feat: add nix direnv source to .envrc (@brianmcgee)
  • ebfd17b76a9a51b59217bce399138aaa1e85a603: feat: add nix github workflow (@brianmcgee)
  • 6ae0e4f8e44cf44761014ce77a0455182b61fe12: feat: add pipeline priority field (@brianmcgee)
  • 0c5c34d6828664e00ad2a4f1f2c37b82f8bd5f8f: feat: add release workflow (@brianmcgee)
  • 04330a39fa3f55fdadb6f64629b25cb5b2955063: feat: add stats output similar to treefmt.rs (@brianmcgee)
  • 12452b01b6a59bcf80a951d033c4429edfcfa014: feat: align example treefmt config with flake treefmt config (@brianmcgee)
  • 4c45d2aa7e322ca40b6d7c1f42bc933ed16ffbb2: feat: allow missing formatters (#6) (@brianmcgee)
  • 9b841552654109b63a5098d30fded9996323903a: feat: allow specifying formatters in cli (@brianmcgee)
  • 298e5ac21732607ad8f101d5da5e795c85e6a21c: feat: change module root to git.numtide.com (@brianmcgee)
  • b6405d07140eb168e179f1af54767c9b8088a822: feat: clean up and documentation (@brianmcgee)
  • 18bdb7210d82051c92ee1ef44727042bfb3abe92: feat: compare with cache before reporting a file as changed (@brianmcgee)
  • 757d5e746ab529980bca26093680a327c4a051d9: feat: configure a pipeline for formatting nix code (@brianmcgee)
  • b8d9e2ac9b98cd590b59a2eb58d0766882afe4c9: feat: configure numtide binary cache (@brianmcgee)
  • b1093584900b9e2ab122e7ae154673d0f85175ac: feat: create config package (#25) (@brianmcgee)
  • 40b76b74a0053324d683823ef7ad70f5b29f0dc9: feat: ensure deterministic application of formatters (@brianmcgee)
  • c71d69051aceee8597725aba473b2ce5a96b407d: feat: have each formatter filter paths again if part of a pipeline (@brianmcgee)
  • 26c2ae1cda2a6daf110a4585102226d0a972b986: feat: hex encode db name (@brianmcgee)
  • 2ad87c25041946479e9e802445fb7b2828984b39: feat: implement init (@brianmcgee)
  • 92321c873705af68639e92e61fb5be6c3dcdfb92: feat: improve specifying formatters test (@brianmcgee)
  • 53ea16a42ce026de9e36c5019a03ac851257bbb9: feat: improve stats assertion feedback (@brianmcgee)
  • 8af5b3c076017955bca062adab823add4d3f4e45: feat: introduce concept of pipelines for better concurrency (@brianmcgee)
  • 7c137bfe356ef4ecf29571cc4f79052a103f39f4: feat: listen for shutdown correctly (@brianmcgee)
  • 2e77e123d1de1a74c250f77edeb69bc20f28592f: feat: optimize git walker (@brianmcgee)
  • 2eaf999a0e74bfa9c86eae861787c664094fbb2a: feat: refactor some config init logic into config package (@brianmcgee)
  • 9b00e006660893fac1f1d39ac1f0f675d7c967cd: feat: set nix package version to shortRev (@brianmcgee)
  • ada9a72a7e56ffea11af5899cb711b6bb66a7293: feat: simplify some test code (@brianmcgee)
  • 8b92dca9c6d729773924c33c62d47536568ec9b1: feat: streaming processing of paths from stdin and paths argument (@brianmcgee)
  • da82b80f29beb85b0beeeeedcb1fdace2c2857d3: feat: support --no-cache (@brianmcgee)
  • d53f98ea051105f2456fc951109ab1ccfc2da611: feat: support --version (@brianmcgee)
  • 5711caebb91e229198a4d4dd6519fb9dd3b8a409: feat: support .gitignore files (#19) (@brianmcgee)
  • a3ca7825a6ea4c6e150854eb62d48114dac76bc4: feat: support changing work directory (#15) (@brianmcgee)
  • 84629f7b9490e42fe89b763b72afa666d61c2f17: feat: support fail on change (#16) (@brianmcgee)
  • 96b156032768f7de0aa915d7bda623b45a57f484: feat: support global excludes (#13) (@zimbatm)
  • 0fbae06f19d03ca50f3da50339dc94b92018ab3b: feat: support reading paths from stdin (@brianmcgee)
  • 8e23c8602a7012f62fe65cfc242c52cc56532d5c: feat: update flake inputs (@brianmcgee)
  • 1002f052e19148be02c0858941a2cf0cd1032ff2: feat: update module go version to 1.22 (@brianmcgee)
  • 28ec6f8f92782330a156ea6ddf0caa28db659cc1: feat: upgrade modules (@brianmcgee)
  • 0c93d9848375b4d6d4277e1b648933784113a9c4: feat: use a named type for Cli options (@brianmcgee)
  • d8d666a132a5a5d91ed9bbbc2448e5d8d339b5c3: feat: use exec.LookPath to find formatter executable (@brianmcgee)
  • 80e99b6d7516ab860a754f87bbb0997e07a27578: feat: use go-git index instead of git ls-files (#23) (@brianmcgee)
  • fcce518d5eadc2681ce2bf81b37b6e7864cba4c3: feat: various perf improvements (@brianmcgee)
  • 6c66daf26bfab12a235654cbf926585632c9a766: fix: devshell commands for docs (@brianmcgee)
  • 15db7f459c049fcd044cc6106e7be294d9b53ce5: fix: duplicate processing in ordered formatters (#24) (@brianmcgee)
  • ed10f976f815074ca6f6c5d067bd62b0f21752f1: fix: fmt.Errorf formats (@brianmcgee)
  • 12aa9a7bef1a9c44a4c7a25c12277dd1283a522e: fix: glob patterns for includes and excludes (@brianmcgee)
  • f322e1ffb8c79ce2b98101f50895b528903cd9f6: fix: include correct gotools package (@brianmcgee)
  • 249f807e9208c8023e37394ba0e895fe33e3189c: fix: install node dependencies in devshell commands (@brianmcgee)
  • 25230e236f282479a673f964f6d9c47b35ce5f7f: fix: license contributors (@brianmcgee)
  • 4a78a1e31991b3b2293129ba6622101f81d35dd5: fix: nix build (@brianmcgee)
  • 397d0510885c09a3b1fb8563c2f44e98309079d5: fix: nix filter for package (@brianmcgee)
  • 3000c65eadd4f43469c4aac46f9f86763fc261eb: fix: nix-filter config for package (@brianmcgee)
  • 5a5c1ea03e41e19008dd52b7cb4eabc66fab5e2d: fix: record cache entries for files that don't match formatters (@brianmcgee)
  • cb8565d68365b1a548c4c1bd59385346a80aaa01: fix: reduce log verbosity (@brianmcgee)
  • 710efbd049dc102337161031a42c5d802ecccdce: fix: remember timestamps from logging (@brianmcgee)
  • 97e94ba84829928fc421e5e78a724d9afaba78c4: fix: remove -dirty suffix from revision (@brianmcgee)
  • 6ec924c69e75782774dc3b774a49645e920dafaf: fix: remove goreleaser from running on pull requests (@brianmcgee)
  • 87a0be977d46bd28aeb2ab21ff725f1564df133c: fix: remove md extension from LICENSE file (@brianmcgee)
  • f1f56d1bfcfc8a75fc27ebefb9c3662820ef54ed: fix: remove setting of cpu profile rate (@brianmcgee)
  • 602751aabb9dc5d015a347721c5fe0c1413e5060: fix: rename treefmt.go to treefmt-go (@brianmcgee)
  • 49596b8e08725afd0629a60ce54e56c08c723b37: fix: setting build Name and Version (@brianmcgee)
  • ab7bf54a31800ff74dc4d6b5834c429dfa590777: fix: source filter in package build (@brianmcgee)
  • 55ca4468ccc5ad4f31f7fa8fe66b75c62cf5039f: fix: stalling on large file sets (#18) (@brianmcgee)
  • 0ec0c3dbe11b867668731ef72e8855c9b5961a5a: fix: update filter to prevent rebuilds (@brianmcgee)
  • 95bc3e8fc7966cfa14ea7e45ae5cfb6c11a19267: fix: update settings.yml to point to treefmt instead of treefmt-go (@brianmcgee)
  • 4a6fbf943c8c5800174f52e191cdde2994e8fc39: fix: vhs command wrapper (@brianmcgee)
  • aebbcfd4f17e597eab7c3119e2ef90370bc28a4c: nit: clean batch capacity (#17) (@zimbatm)
  • c7d0138a0255ed81f34f0920c6bdff5066ab2a11: support formatter ordering (#20) (@brianmcgee)

@github-actions github-actions bot added rust Rust use is a significant feature of the PR or issue bump-formula-pr PR was created using `brew bump-formula-pr` labels Jun 29, 2024
treefmt: update build and test

Signed-off-by: Rui Chen <[email protected]>

autobump: add treefmt

Signed-off-by: Rui Chen <[email protected]>
@chenrui333 chenrui333 force-pushed the bump-treefmt-2.0.1 branch from bf3afb3 to 0d28c38 Compare June 29, 2024 22:53
@github-actions github-actions bot added automerge-skip `brew pr-automerge` will skip this pull request autobump and removed rust Rust use is a significant feature of the PR or issue labels Jun 29, 2024
@chenrui333 chenrui333 added ready to merge PR can be merged once CI is green and removed automerge-skip `brew pr-automerge` will skip this pull request labels Jun 29, 2024
Copy link
Contributor

🤖 An automated task has requested bottles to be published to this PR.

@github-actions github-actions bot added the CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. label Jun 29, 2024
@BrewTestBot BrewTestBot enabled auto-merge June 29, 2024 23:23
@BrewTestBot BrewTestBot added this pull request to the merge queue Jun 29, 2024
Merged via the queue into master with commit b9b6433 Jun 29, 2024
14 checks passed
@BrewTestBot BrewTestBot deleted the bump-treefmt-2.0.1 branch June 29, 2024 23:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autobump bump-formula-pr PR was created using `brew bump-formula-pr` CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. ready to merge PR can be merged once CI is green
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants