]>
git.scottworley.com Git - pinch/log
Scott Worley [Wed, 19 Jan 2022 19:25:41 +0000 (11:25 -0800)]
Support restricted mode: Allow manifest access with search paths.
Scott Worley [Fri, 14 Jan 2022 06:00:08 +0000 (22:00 -0800)]
Announce test names as they are run.
This makes it easier to see which test is broken.
Scott Worley [Fri, 14 Jan 2022 05:55:09 +0000 (21:55 -0800)]
Support restricted mode: Allow tarball access with search paths.
This allows 'pinch update' to create a new profile. Updating an
existing profile still doesn't work because nix-env can't read the
existing manifest.
Also, the search path names aren't the best. Multiple links
probably don't work in restricted mode. (This tool is deprecated
& is receiving minimal maintenance; patches welcome.)
Scott Worley [Fri, 14 Jan 2022 00:01:09 +0000 (16:01 -0800)]
Use nix 2.3 because 2.4 broke <nix/unpack-channel.nix>
Nix commit
787469c7b66aec12ab6847e7db2cdc8aef5c325e removed
<nix/unpack-channel.nix>.
Scott Worley [Thu, 13 Jan 2022 23:52:16 +0000 (15:52 -0800)]
Deprecation notice
Scott Worley [Sun, 7 Nov 2021 19:49:19 +0000 (11:49 -0800)]
Show channel fetch URL
Scott Worley [Fri, 14 Jan 2022 00:05:27 +0000 (16:05 -0800)]
Start on 3.0.6
Scott Worley [Fri, 9 Jul 2021 22:36:43 +0000 (15:36 -0700)]
Release 3.0.5
Scott Worley [Fri, 9 Jul 2021 22:31:47 +0000 (15:31 -0700)]
Show filename being hashed
This is handy for identifying which file is corrupt in the nix store.
Scott Worley [Fri, 9 Jul 2021 23:06:34 +0000 (16:06 -0700)]
fallback git-cache 1.3.1 -> 1.4.1
Scott Worley [Fri, 9 Jul 2021 22:12:58 +0000 (15:12 -0700)]
Quiet git init.defaultBranch hints during test runs
Scott Worley [Fri, 9 Jul 2021 22:30:27 +0000 (15:30 -0700)]
Appease linter: No global variables
Scott Worley [Fri, 9 Jul 2021 22:10:12 +0000 (15:10 -0700)]
Start on 3.0.5
Scott Worley [Tue, 8 Jun 2021 06:25:24 +0000 (23:25 -0700)]
fallback git-cache 1.2.1 -> 1.3.1
Scott Worley [Mon, 7 Jun 2021 19:15:42 +0000 (12:15 -0700)]
Release 3.0.4
Scott Worley [Mon, 7 Jun 2021 19:13:43 +0000 (12:13 -0700)]
Use nix from nixpkgs (not from PATH) to avoid nixUnstable
Scott Worley [Mon, 7 Jun 2021 19:13:31 +0000 (12:13 -0700)]
Start on 3.0.4
Scott Worley [Thu, 20 May 2021 07:11:26 +0000 (00:11 -0700)]
Release 3.0.3
Scott Worley [Thu, 20 May 2021 06:57:08 +0000 (23:57 -0700)]
Don't pass --experimental-features to old nix
It complains: error: unrecognised flag '--experimental-features'
Scott Worley [Thu, 20 May 2021 06:48:06 +0000 (23:48 -0700)]
Start on 3.0.3
Scott Worley [Wed, 17 Feb 2021 06:55:26 +0000 (22:55 -0800)]
Release 3.0.2
Scott Worley [Wed, 17 Feb 2021 06:52:20 +0000 (22:52 -0800)]
Don't require experimental-features=nix-command in system nix.conf
Scott Worley [Wed, 17 Feb 2021 06:51:38 +0000 (22:51 -0800)]
Start on 3.0.2
Scott Worley [Tue, 4 Aug 2020 21:53:48 +0000 (14:53 -0700)]
Release 3.0.1
Scott Worley [Tue, 4 Aug 2020 21:51:36 +0000 (14:51 -0700)]
fallback git-cache 1.0.0 -> 1.2.1
Specifying git-cache's dependencies here is unfortunate.
Scott Worley [Tue, 4 Aug 2020 21:50:47 +0000 (14:50 -0700)]
Make tests fast again when using recent git-cache with backoff
Scott Worley [Fri, 17 Jul 2020 22:34:28 +0000 (15:34 -0700)]
Links & feature comparison with require.nix, niv, flakes
Scott Worley [Wed, 15 Jul 2020 19:44:34 +0000 (12:44 -0700)]
Fix typo in README
Scott Worley [Wed, 15 Jul 2020 19:43:20 +0000 (12:43 -0700)]
Start on 3.0.1
Scott Worley [Sat, 11 Jul 2020 04:57:57 +0000 (21:57 -0700)]
Release 3.0.0
Scott Worley [Fri, 10 Jul 2020 20:22:22 +0000 (13:22 -0700)]
Move git_cache out to a separate library
Scott Worley [Tue, 30 Jun 2020 20:35:54 +0000 (13:35 -0700)]
Start on 3.0.0
Scott Worley [Wed, 1 Jul 2020 07:05:38 +0000 (00:05 -0700)]
2.1.1: Pin faster
Scott Worley [Tue, 30 Jun 2020 20:34:31 +0000 (13:34 -0700)]
Release 2.1.0
Scott Worley [Tue, 30 Jun 2020 20:30:13 +0000 (13:30 -0700)]
Specify profile path with --profile
Scott Worley [Thu, 18 Jun 2020 16:41:44 +0000 (09:41 -0700)]
Begin keeping a changelog
As recommended by https://keepachangelog.com/
Scott Worley [Thu, 18 Jun 2020 08:19:53 +0000 (01:19 -0700)]
Factor out symlink_archive()
Scott Worley [Thu, 18 Jun 2020 08:14:18 +0000 (01:14 -0700)]
Start on 2.1.0
Scott Worley [Thu, 18 Jun 2020 06:48:31 +0000 (23:48 -0700)]
Release 2.0.0
Scott Worley [Thu, 18 Jun 2020 06:41:31 +0000 (23:41 -0700)]
Support old mypy version 0.701
Scott Worley [Wed, 17 Jun 2020 23:23:26 +0000 (16:23 -0700)]
Add symlink SearchPath type
Scott Worley [Wed, 17 Jun 2020 21:03:43 +0000 (14:03 -0700)]
Verify unknown config fields raise errors
Scott Worley [Wed, 17 Jun 2020 18:50:13 +0000 (11:50 -0700)]
Process alias and non-alias configs separately
Scott Worley [Wed, 17 Jun 2020 17:48:37 +0000 (10:48 -0700)]
Factor out pin check
Scott Worley [Wed, 17 Jun 2020 17:40:57 +0000 (10:40 -0700)]
Rename read_search_path -> read_config_section
Scott Worley [Wed, 17 Jun 2020 17:39:45 +0000 (10:39 -0700)]
Remove assert that's now handled by types
Scott Worley [Tue, 16 Jun 2020 11:17:27 +0000 (04:17 -0700)]
Immutable SearchPaths
Scott Worley [Tue, 16 Jun 2020 08:29:38 +0000 (01:29 -0700)]
Prefer more type-safe NamedTuple over SimpleNamespace
Scott Worley [Mon, 15 Jun 2020 20:46:34 +0000 (13:46 -0700)]
Continue pulling release_name and git_revision out of SearchPath
Scott Worley [Mon, 15 Jun 2020 20:42:44 +0000 (13:42 -0700)]
Continue pulling release_name and git_revision out of SearchPath
Scott Worley [Mon, 15 Jun 2020 20:35:03 +0000 (13:35 -0700)]
Continue pulling release_name and git_revision out of SearchPath
Scott Worley [Mon, 15 Jun 2020 20:29:01 +0000 (13:29 -0700)]
Continue pulling release_name and git_revision out of SearchPath
Scott Worley [Mon, 15 Jun 2020 19:57:35 +0000 (12:57 -0700)]
Start pulling release_name and git_revision out of SearchPath
Scott Worley [Mon, 15 Jun 2020 19:55:30 +0000 (12:55 -0700)]
Fix not-pinned check
Scott Worley [Mon, 15 Jun 2020 19:52:05 +0000 (12:52 -0700)]
Rename top-level command functions
Scott Worley [Mon, 15 Jun 2020 19:36:25 +0000 (12:36 -0700)]
fetch_resource is just for Channels
Scott Worley [Mon, 15 Jun 2020 19:30:15 +0000 (12:30 -0700)]
Move pin_channel() into ChannelSearchPath.pin()
Scott Worley [Mon, 15 Jun 2020 18:38:12 +0000 (11:38 -0700)]
Require type to be specified in config
Scott Worley [Mon, 15 Jun 2020 18:19:26 +0000 (11:19 -0700)]
Keep config mutability at top level
Scott Worley [Sat, 13 Jun 2020 16:56:32 +0000 (09:56 -0700)]
polymorphic fetch()
Scott Worley [Sat, 13 Jun 2020 16:46:44 +0000 (09:46 -0700)]
Polymorphic pin()
Scott Worley [Sat, 13 Jun 2020 16:27:41 +0000 (09:27 -0700)]
Introduce types {Git,Channel}SearchPath
Scott Worley [Sat, 13 Jun 2020 16:24:41 +0000 (09:24 -0700)]
Rename Channel -> TarrableSearchPath
Scott Worley [Sat, 13 Jun 2020 07:24:24 +0000 (00:24 -0700)]
Use type rather than field presence
Scott Worley [Sat, 13 Jun 2020 07:20:09 +0000 (00:20 -0700)]
Split AliasSearchPath out of Channel
Scott Worley [Sat, 13 Jun 2020 07:05:43 +0000 (00:05 -0700)]
Duplicate searchpath checking in one place
Scott Worley [Sat, 13 Jun 2020 06:45:56 +0000 (23:45 -0700)]
read_search_path returns a SearchPath
Scott Worley [Sat, 13 Jun 2020 06:43:06 +0000 (23:43 -0700)]
Make fetch_channel a Channel method
Scott Worley [Sat, 13 Jun 2020 06:29:55 +0000 (23:29 -0700)]
Make pin() a Channel method
Scott Worley [Sat, 13 Jun 2020 06:28:27 +0000 (23:28 -0700)]
Re-order definitions
Scott Worley [Sat, 13 Jun 2020 06:19:28 +0000 (23:19 -0700)]
Introduce read_search_path()
Scott Worley [Sat, 13 Jun 2020 06:10:08 +0000 (23:10 -0700)]
Introduce SearchPath type
Scott Worley [Thu, 18 Jun 2020 00:02:04 +0000 (17:02 -0700)]
Release: 1.5.1
Scott Worley [Wed, 17 Jun 2020 23:57:47 +0000 (16:57 -0700)]
Support multiple versions of mypy
0.701 needs the type-ignore directives
0.761 needs --no-warn-unused-ignores so it doesn't freak out about the
type-ignore directives for 0.701.
Scott Worley [Fri, 12 Jun 2020 09:16:39 +0000 (02:16 -0700)]
Support "log.showSignature = true"
Don't let "log.showSignature = true" in global git config cause
signature check output to appear in the release name.
Bad excuses for not including a test:
* Would have to add GPG as a dependency.
* Generating a GPG key during the test would be slow.
* Making a local "global" git config in the test would be troublesome.
Scott Worley [Thu, 11 Jun 2020 23:38:34 +0000 (16:38 -0700)]
Separate test and lint
Don't lint in package build. Lint in git pre-commit hook.
Scott Worley [Thu, 11 Jun 2020 23:21:18 +0000 (16:21 -0700)]
Omit build directories from mypy run
Scott Worley [Thu, 11 Jun 2020 20:41:49 +0000 (13:41 -0700)]
Build like a real Python package
Scott Worley [Thu, 11 Jun 2020 20:38:20 +0000 (13:38 -0700)]
Don't hide stderr
Only capture stdout; allow stderr to leak out to the terminal. This
allows diagnosis of errors from subprocesses.
Scott Worley [Thu, 11 Jun 2020 20:33:18 +0000 (13:33 -0700)]
Tests use a private /nix/store
This allows the tests to run inside a nix build. Otherwise, it fails with
error: creating directory '/nix/var': Permission denied
Bonus: This avoids polluting the real store with test artifacts.
See also https://github.com/NixOS/nix/issues/13
Scott Worley [Thu, 11 Jun 2020 20:30:20 +0000 (13:30 -0700)]
Set git user in test harness
This allows git to run in a minimal test environment without git
aborting with "*** Please tell me who you are."
Scott Worley [Thu, 11 Jun 2020 20:29:20 +0000 (13:29 -0700)]
Handle 0 terminal width
Scott Worley [Thu, 11 Jun 2020 20:24:49 +0000 (13:24 -0700)]
Spell "log" in "git log" correctly
This only ever worked because I have a git alias "lo". 😅
Hooray for proper test environment isolation.
Scott Worley [Tue, 2 Jun 2020 18:37:37 +0000 (11:37 -0700)]
Don't depend upon xdg
It's not yet available in a stable release branch of nixpkgs. We don't want to
force folks to use unstable to use pinch.
Revert this commit after 20.09 is released and everyone's had time to upgrade.
Scott Worley [Tue, 2 Jun 2020 18:17:17 +0000 (11:17 -0700)]
Cache nix store paths of generated tarballs
This eliminates the slow "Generating tarball for git revision" step for
tarballs that have already been generated and are already in the nix store.
Scott Worley [Fri, 29 May 2020 06:52:53 +0000 (23:52 -0700)]
Run tests on commit
Scott Worley [Fri, 29 May 2020 06:52:01 +0000 (23:52 -0700)]
Factor out fetch_channel
Appeases pylint's "Too many branches"
Scott Worley [Fri, 29 May 2020 06:22:07 +0000 (23:22 -0700)]
Better error message for running "update" before "pin"
Scott Worley [Fri, 29 May 2020 06:16:50 +0000 (23:16 -0700)]
Verify update fails if run before pin
Scott Worley [Sat, 23 May 2020 04:15:18 +0000 (21:15 -0700)]
More tests around rejecting force pushes
Scott Worley [Sat, 23 May 2020 01:26:41 +0000 (18:26 -0700)]
Use separate cache dir for test isolation
Scott Worley [Sat, 23 May 2020 01:07:37 +0000 (18:07 -0700)]
tests: Depend upon /bin/sh supporting traps
Scott Worley [Sat, 23 May 2020 00:55:41 +0000 (17:55 -0700)]
Factor out test setup
Scott Worley [Sat, 23 May 2020 00:25:24 +0000 (17:25 -0700)]
Use xdg packge to find XDG cache dir
Scott Worley [Sat, 23 May 2020 00:23:22 +0000 (17:23 -0700)]
Appease new mypy 0.761 -> 0.770
Scott Worley [Sat, 23 May 2020 00:07:01 +0000 (17:07 -0700)]
shell.nix
Scott Worley [Fri, 22 May 2020 23:57:54 +0000 (16:57 -0700)]
More tests: pin-twice, reject-nonancestor
Scott Worley [Fri, 22 May 2020 23:55:04 +0000 (16:55 -0700)]
set -e in test scripts
Scott Worley [Fri, 22 May 2020 23:54:41 +0000 (16:54 -0700)]
Add missing type annotation
Scott Worley [Tue, 19 May 2020 07:20:09 +0000 (00:20 -0700)]
Reject duplicate channel names