1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
#+title: tex-fmt
* Tasks
** TODO Add to Nix home-manager with empty config file
** TODO Indicate which args are CLI and which are config
** TODO Add link to treefmt-nix in README
* Options and documentation
** Args struct
** OptionArgs struct
** Implement Default, Display, from for Args
** CLI command
** CLI args parser function
** Config args parser function
** Args resolver
** GitHub README
* Release process
** Update release notes
*** git log --oneline --no-merges vX.X.X..main
*** Write in NEWS.md
** Update version number in Cargo.toml
** Update Nix flake and lock
*** Check for new NixOS version (nixos-XX.XX) for flake.nix
*** just nix
** Update Rust version
*** just upgrade
** Run tests
*** just
*** just perf
*** Update performance results in README.md
** Push to GitHub and check tests pass
** Create a git tag
*** git tag vX.X.X
*** git push --tags
** Publish to crates.io with cargo publish
*** Pass --allow-dirty if notes.org has changed
** Publish GitHub release with notes from NEWS.md
*** GitHub binaries published automatically with actions
** Publish in nixpkgs
*** Check out master branch of nixpkgs fork
*** git fetch upstream
*** git rebase upstream/master
*** git fetch
*** git push --force-with-lease origin master
*** git branch -d update-tex-fmt
*** git switch --create update-tex-fmt upstream/master
*** nvim pkgs/by-name/te/tex-fmt/package.nix
*** Update version and invalidate src.hash and cargoHash
*** nix-build -A tex-fmt
*** Fix both hashes, get a successful build
*** git add pkgs/by-name/te/tex-fmt/package.nix
*** git commit -m "tex-fmt: X.X.X -> Y.Y.Y"
*** git push --set-upstream origin HEAD
*** Go to GitHub and create a pull request
*** Submit pull request and check relevant boxes
** Tidy repository
*** Commit any new changes to NEWS.md or notes.org
|