all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Gabriel Arazas <foo.dogsquared@gmail.com>
To: 56010@debbugs.gnu.org
Cc: Gabriel Arazas <foo.dogsquared@gmail.com>
Subject: [bug#56010] [PATCH 2/2] gnu: Add treefmt.
Date: Thu, 16 Jun 2022 13:00:39 +0800	[thread overview]
Message-ID: <65448f1ebe0612b33c2b91332a232b7216f011a0.1655351682.git.foo.dogsquared@gmail.com> (raw)
In-Reply-To: <293660d428aa4648c2b4b12ca972306b726b3cfe.1655351682.git.foo.dogsquared@gmail.com>

* gnu/packages/rust-apps.scm (treefmt): New variable.
---
 gnu/packages/rust-apps.scm | 51 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 6d97e289c2..e84528dff2 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -1129,6 +1129,57 @@ (define-public tectonic
 of support files.")
     (license license:expat)))
 
+(define-public treefmt
+  (package
+    (name "treefmt")
+    (version "0.4.1")
+    (source (origin
+              (method url-fetch)
+              (uri (crate-uri "treefmt" version))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1rarg6rffzl1cf6r167h9p14wr696kwnzr85kwbdy7x7x5zpj5li"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs (("rust-anyhow" ,rust-anyhow-1) ("rust-console" ,rust-console-0.13)
+                       ("rust-directories" ,rust-directories-3)
+                       ("rust-filetime" ,rust-filetime-0.2)
+                       ("rust-globset" ,rust-globset-0.4)
+                       ("rust-ignore" ,rust-ignore-0.4)
+                       ("rust-log" ,rust-log-0.4)
+                       ("rust-path-clean" ,rust-path-clean-0.1)
+                       ("rust-rayon" ,rust-rayon-1)
+                       ("rust-serde" ,rust-serde-1)
+                       ("rust-serde-json" ,rust-serde-json-1)
+                       ("rust-sha-1" ,rust-sha-1-0.9)
+                       ("rust-structopt" ,rust-structopt-0.3)
+                       ("rust-tempfile" ,rust-tempfile-3)
+                       ("rust-toml" ,rust-toml-0.5)
+                       ("rust-which" ,rust-which-4))
+       #:cargo-development-inputs
+       (("rust-criterion" ,rust-criterion-0.3))))
+    (home-page "https://numtide.github.io/treefmt")
+    (synopsis "Command-line application to format the code tree")
+    (description
+     "This application provides a way to unify the formatting process of the
+codebase. It is nice for large code trees where using multiple formatters are
+common. @command{treefmt} comes with the following features.
+
+@itemize @bullet
+@item Unified CLI and output.
+@item Runs formatters in parallel.
+@item Cache changed files for performance.
+@end itemize
+
+The application does have some design decisions to keep in mind.
+
+@itemize @bullet
+@item The source code is kept under version control, making it possible to revert and check changes.
+@item Only one formatter per file, making outputs idempotent.
+@end itemize")
+    (license license:expat)))
+
 (define-public hex
   (package
     (name "hex")
-- 
2.36.1





  reply	other threads:[~2022-06-16  5:02 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-16  4:51 [bug#56010] [PATCH] Add treefmt Gabriel Arazas
2022-06-16  5:00 ` [bug#56010] [PATCH 1/2] gnu: rust-sha-1-0.9: Update to 0.9.8 Gabriel Arazas
2022-06-16  5:00   ` Gabriel Arazas [this message]
2022-09-01  8:18 ` bug#56010: [PATCH] Add treefmt Efraim Flashner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=65448f1ebe0612b33c2b91332a232b7216f011a0.1655351682.git.foo.dogsquared@gmail.com \
    --to=foo.dogsquared@gmail.com \
    --cc=56010@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.