Changed
- use
git-config-value
crate
New Features
protocol::Context::to_bstring()
, and use it inexample/git-credential-lite
- an example implementing a custom credential helper program
helper::main
to easily create credential helper implementations- add
helper::Action::get_for_url(…)
helper::invoke(helper, action, context)
function that allows for more flexible helper invocation
Other
- :main::Action::as_str()`
Changed (BREAKING)
- upgrade
bstr
to1.0.1
- rename
git()
tobuiltin()
- rename
Program::Custom*
variants toProgram::External*
It's more true to what it is. - differentiate between top-level functions and those which are invoked
That way it's easier to use as it can assure an account was actually
provided. - invoke::Outcome can now represent partial identities
That way these can be assembled by multiple helpers called in a row. - move
helper::(Next)Action
intohelper::invoke::
module
These are only relevant for invoke, hence the change. - rename
helper::NextAction
variants tostore
anderase
- rename
helper::Action
variants to 'Get', 'Store', 'Erase'
It's more obvious what it does and is more typical for what credentials
helpers do. - Use
helper::Context
inhelper::Action::Fill()
That way additional information, like from configuration, can be passed
as well. - move
helper::invoke()
related types intohelper::invoke
module.
Also allow to pass arbitrary bytes (more or less) as context by not
forcing it all into a string. Values can now be everything, which
helps with passing paths or other values. - use
thiserror
instead ofquickerror
- hide
helper::action()
in favor of single path viahelper()
Other (BREAKING)
-
helper::Kind
toprogram::Kind
-
helper::(encode|decode)_message(…)
to::message::(encode|decode)(…)
Commit Statistics
- 115 commits contributed to the release over the course of 27 calendar days.
- 27 days passed between releases.
- 21 commits were understood as conventional.
- 2 unique issues were worked on: #450, #470
Thanks Clippy
Clippy helped 5 times to make code idiomatic.
Commit Details
view details
- #450
- upgrade
bstr
to1.0.1
(99905ba) - :main::Action::as_str()` (d95029e)
protocol::Context::to_bstring()
, and use it inexample/git-credential-lite
(15f1afc)- assure that protocol::Context::to_url() never shows passwords (e9f4d40)
- Make sure the helper::Cascade never sends the URL to helper programs (9059de8)
- fix docs (9a5ec7b)
- move
program::Cascade
tohelper::Cascade
which is what it is (6149a14) - An example on how to invoke the git credential helper driver (be0f834)
- Context has to serialize url or else the builtin credential helper may not work. (87ae404)
- credential context won't send url and quit fields to helpers (337a53b)
- Cascade supports
use_http_path
and respects it when setting up the context (959c0bd) - make it less easy to start a cascade with platform_defaults() (4b5d63f)
- make clearer what platform builtins actually are (9788e30)
- credential-cascade now passes on prompt options (baad8a0)
- refactor (c8f1b41)
- always compile prompting support in (bd0ea68)
- set version of git-prompt to 0.1 and turn prompting on (7657693)
- fix warnings (e011242)
- more helpful prompt error messages when asking for credentials (b0c6863)
- use
git-config-value
crate (43656d5) - proper prompt generation (63ee38d)
- remove rustyline in favor of
git-prompt
(b3e5e59) - add interactive example for prompt, but… (a3fadea)
- blindly implement prompting if it is allowed (c78f4b8)
- frame to support prompting (as compile-time feature) (afaae28)
- another test (569b7bc)
- remove unnecessary
Helper
trait (19b84f0) - use fixtures in all tests (24da911)
- fix tests on linux (89db8ee)
- more tests (57e9060)
- refactor (561bb35)
- another test (52d2e54)
- fix CI (d526c6d)
- improve path normalization; a new ignored test (ece5a3f)
- parse 'quit' according to spec (5e260da)
- Allow disabling stderr on credential programs (4abec50)
- refactor (cdfcea4)
- url-preprocessing for scripts (c00cc35)
- breaking credential helpers don't stop everything (0cdbde7)
- refactor; try harder not to spill secrets in errors (525fa97)
- first step towards our own
git credential
-like implementation (1d1622a) - refactor (ce16f51)
- Platform specific defaults for the program cascade (b66258f)
- refactor (85f8cd9)
- refactor (23fb302)
- A sketch of how a custom 'git credential' could look like (4767a14)
- make 'quit' handler request representable and raise it to an error (39b6514)
- rename
git()
tobuiltin()
(783a1a7) - fix docs (f86364c)
- rename
Program::Custom*
variants toProgram::External*
(bfa2545) - refactor (52e958d)
- fix build (99958c6)
- differentiate between top-level functions and those which are invoked (811985a)
- invoke::Outcome can now represent partial identities (49b9bd5)
- make clear what
helper()
does by renaming it togit
(2edb58b) - Make clear in the error type that the helper program couldn't be started (c09d223)
- improved error when identity could not be obtained (08c1287)
- support for
quit
field in context (5a50528) - refactor (7487b5a)
- support for non-consuming operation of
Program
(bcfe5ca) - disable test that seems to fail on linux (419ca56)
- More tests for custom helper scripts (b396032)
- Support for script invocations (377cf14)
- use git_path::is_absolute() (2ba836f)
- fix tests on windows (f4bc860)
- also fill in the git credential command prefix (b2f4fe8)
- initial version of parsing of custom helper definitions (2b2cd00)
helper::Kind
toprogram::Kind
(b8c54f0)- sketch additional credentials programs (46e3045)
- first test for launching the git credential helper (4d7b1dd)
- an example implementing a custom credential helper program (b1d528a)
- add docs (a360594)
helper::main
to easily create credential helper implementations (eaff67c)- move
helper::(Next)Action
intohelper::invoke::
module (4b7d0b6) - sketch for helper::invoke (get) test (c48eb39)
- refactor (cb9d32a)
- rename
helper::NextAction
variants tostore
anderase
(ddd5398) - fix docs (d9b4ba5)
- add
helper::Action::get_for_url(…)
(a253d30) - rename
helper::Action
variants to 'Get', 'Store', 'Erase' (2073b58) - Use
helper::Context
inhelper::Action::Fill()
(9c6f024) - remaining decode tests (0e76efe)
- test context value validation (20dde9e)
- basic round-tripping of fully fleshed-out context (280e4a3)
- flesh out
helper::Context
as it will soon be used. (0cb1ed4) - move
helper::invoke()
related types intohelper::invoke
module. (71f6519) - refactor (03bf747)
- express
helper()
in terms ofhelper::invoke()
(f2a2c5e) helper::invoke(helper, action, context)
function that allows for more flexible helper invocation (64bc2ec)- refactor (af27d20)
- prepare for more additional implementations of helpers (486ef98)
- refactor (167b521)
- fix docs (db46b60)
- re-add
Result
type (de92fce) - use
thiserror
instead ofquickerror
(4c1a1a2) - hide
helper::action()
in favor of single path viahelper()
(081934c) helper::(encode|decode)_message(…)
to::message::(encode|decode)(…)
(4c39521)- refactor (a395308)
- upgrade
- #470
- update changelogs prior to release (caa7a1b)
- Uncategorized
- Release git-hash v0.9.10, git-features v0.22.5, git-date v0.2.0, git-actor v0.12.0, git-glob v0.4.0, git-path v0.5.0, git-quote v0.3.0, git-attributes v0.4.0, git-config-value v0.8.0, git-tempfile v2.0.5, git-validate v0.6.0, git-object v0.21.0, git-ref v0.16.0, git-sec v0.4.0, git-config v0.8.0, git-discover v0.5.0, git-traverse v0.17.0, git-index v0.5.0, git-worktree v0.5.0, git-testtools v0.9.0, git-command v0.1.0, git-prompt v0.1.0, git-url v0.9.0, git-credentials v0.5.0, git-diff v0.19.0, git-mailmap v0.4.0, git-chunk v0.3.2, git-pack v0.23.0, git-odb v0.33.0, git-packetline v0.13.0, git-transport v0.20.0, git-protocol v0.20.0, git-revision v0.5.0, git-refspec v0.2.0, git-repository v0.24.0, git-commitgraph v0.9.0, gitoxide-core v0.18.0, gitoxide v0.16.0, safety bump 28 crates (29a043b)
- Merge branch 'index-from-tree' (172f73c)
- make fmt (535e967)
- Merge branch 'main' into filter-refs-by-spec (9aa1d3d)
- Merge branch 'main' into filter-refs-by-spec (1f6e5ab)
- Merge branch 'main' into filter-refs-by-spec (51dc828)
- Merge branch 'main' into filter-refs-by-spec (56ba481)
- Merge branch 'main' into filter-refs-by-spec (a36c05d)
- Release git-path v0.4.2, git-config-value v0.7.0 (c48fb31)
- Merge branch 'main' into filter-refs-by-spec (cef0b51)
- thanks clippy (c1399d1)
- thanks clippy (e8e80f5)
- Merge branch 'main' into filter-refs-by-spec (dbfa328)
- thanks clippy (9b8a6d6)
- thanks clippy (8317b46)
- thanks clippy (01efe88)