Git has multiple pack object types:
https://git-scm.com/docs/pack-format
Currently chalk can only understand either commit or tag object types however packed repos can store refs themselves as deltas. This means that if the repos HEAD points to such an object, chalk will not be able to understand it.
For example change:
|
git.symbolic_ref(f"refs/tags/foo/{random_hex}-2") |
to use {random_hex}-1 tag and chalk will not report any git information at all.
Although implementing full delta spec which has multiple instructions is more complicated so probably worth looking into getting libgit into chalk as a dep.
Git has multiple pack object types:
https://git-scm.com/docs/pack-format
Currently chalk can only understand either commit or tag object types however packed repos can store refs themselves as deltas. This means that if the repos
HEADpoints to such an object, chalk will not be able to understand it.For example change:
chalk/tests/functional/test_git.py
Line 69 in 2dd2738
to use
{random_hex}-1tag and chalk will not report any git information at all.Although implementing full delta spec which has multiple instructions is more complicated so probably worth looking into getting libgit into chalk as a dep.