Charlie Marsh
c03b4da3a2
Properly remove `.git ` extension even for URLs with `@` commit markers ( #320 )
2023-11-04 19:45:30 +00:00
Charlie Marsh
051188dce0
Use separate representations for canonical repository vs. commit ( #317 )
...
Given `https://github.com/pypa/package.git#subdirectory=pkg_a ` and
`https://github.com/pypa/package.git#subdirectory=pkg_b `, we want these
to map to the same shared _resource_ (for locking and cloning), but
different _packages_ (for determining whether the wheel already exists
in the cache). As such, we need two distinct concepts for "canonical
equality".
Closes #316 .
2023-11-04 11:46:42 -04:00
Charlie Marsh
aa9882eee8
Use locks to prevent concurrent accesses to the same Git repo ( #304 )
...
Ensures that if we need to access the same Git repo twice in a
resolution, we only have one handler to that repo at a time. (Otherwise,
`git2` panics.)
2023-11-03 16:33:14 +00:00
Charlie Marsh
8123e1a8f6
Add stable hash crate ( #281 )
...
This PR adds a `puffin-cache` crate that we can share across a variety of
other crates to generate stable hashes.
2023-11-01 23:41:45 +00:00