git-annex 10.20250520b1__py3-none-macosx_13_0_x86_64.whl → 10.20250520b2__py3-none-macosx_13_0_x86_64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- git_annex/git-annex +0 -0
- {git_annex-10.20250520b1.dist-info → git_annex-10.20250520b2.dist-info}/METADATA +42 -3
- git_annex-10.20250520b2.dist-info/RECORD +7 -0
- git_annex-10.20250520b1.dist-info/RECORD +0 -7
- {git_annex-10.20250520b1.dist-info → git_annex-10.20250520b2.dist-info}/WHEEL +0 -0
- {git_annex-10.20250520b1.dist-info → git_annex-10.20250520b2.dist-info}/entry_points.txt +0 -0
git_annex/git-annex
CHANGED
Binary file
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: git-annex
|
3
|
-
Version: 10.
|
3
|
+
Version: 10.20250520b2
|
4
4
|
Summary: manage files with git, without checking their contents into git
|
5
5
|
Project-URL: Homepage, https://git-annex.branchable.com/
|
6
6
|
Project-URL: Documentation, https://git-annex.branchable.com/git-annex
|
@@ -35,7 +35,37 @@ Description-Content-Type: text/markdown
|
|
35
35
|
|
36
36
|
# Python wheel package for git-annex
|
37
37
|
|
38
|
-
|
38
|
+
## Why?
|
39
|
+
|
40
|
+
[Git-annex](https://git-annex.branchable.com/) is written in Haskell and plenty
|
41
|
+
of [installation methods](https://git-annex.branchable.com/install/) are
|
42
|
+
available. However, for deploying git-annex as a dependency of a Python
|
43
|
+
library/application, like [DataLad](https://datalad.org) or
|
44
|
+
[AnnexRemote](https://github.com/Lykos153/AnnexRemote), system packages
|
45
|
+
are a lot less flexible than Python's virtual environments, and other methods
|
46
|
+
are more complex and fragile.
|
47
|
+
|
48
|
+
With git-annex being available from PyPi, versioned dependencies and deployment
|
49
|
+
in application-specific environments are possible via standard means of Python
|
50
|
+
packaging.
|
51
|
+
|
52
|
+
## Caveats
|
53
|
+
|
54
|
+
A standard git-annex deployment is (primarily) a single binary (`git-annex`),
|
55
|
+
and a bunch of symlinks that make this one binary fulfilled multiple roles
|
56
|
+
(`git-annex-shell`, `git-remote-annex`, etc.). A Python wheel, however, is a
|
57
|
+
ZIP file container with no support for symlinks, and also no support for
|
58
|
+
"post-install" scripts.
|
59
|
+
|
60
|
+
In order to square this circle, the git-annex binary is wrapped via regular
|
61
|
+
Python entrypoint scripts that handle calling git-annex as necessary. This
|
62
|
+
delivers a cross-platform compatible wheel, but at a start-up cost (~30ms vs
|
63
|
+
~11ms on my laptop).
|
64
|
+
|
65
|
+
## Installation
|
66
|
+
|
67
|
+
Get the package from [PyPi](https://pypi.org/project/git-annex/), and install like
|
68
|
+
any other package from PyPi.
|
39
69
|
|
40
70
|
[uv](https://docs.astral.sh/uv/) users can deploy git-annex in a dedicated virtual
|
41
71
|
environment via the one-liner:
|
@@ -44,6 +74,8 @@ environment via the one-liner:
|
|
44
74
|
uv tool install git-annex
|
45
75
|
```
|
46
76
|
|
77
|
+
## git-annex build configuration
|
78
|
+
|
47
79
|
Git-annex is built with libmagic support, but without the git-annex assistant.
|
48
80
|
The primary purpose of this package is to provide git-annex (as a dependency),
|
49
81
|
installed in a virtual environment. Users of the git-annex assistant application
|
@@ -73,4 +105,11 @@ to be deployed separately.
|
|
73
105
|
|
74
106
|
### How to update for a new git-annex release?
|
75
107
|
|
76
|
-
|
108
|
+
Advance the submodule `./git-annex` to the new release tag.
|
109
|
+
|
110
|
+
Now adjust the package version in `pyproject.toml` accordingly. This version
|
111
|
+
must follow the [rules for Python
|
112
|
+
packages](https://packaging.python.org/en/latest/discussions/versioning/).
|
113
|
+
|
114
|
+
The included (GitHub) action workflows will build a corresponding wheel
|
115
|
+
and upload it to PyPi.
|
@@ -0,0 +1,7 @@
|
|
1
|
+
git_annex/__init__.py,sha256=j8qJxYY0WVQQP8IXmkSBZQ2nPswrOrwpzPjBQ4VEfrk,895
|
2
|
+
git_annex/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
+
git_annex/git-annex,sha256=ksMB-E7IZGqmusHRbclqmIj0ntow3aQB8fhHnGlTr88,49298392
|
4
|
+
git_annex-10.20250520b2.dist-info/METADATA,sha256=5zF9nF8WvaYQQc5AtHly37eCcUHH_76Fe0XDtkL8dsY,4533
|
5
|
+
git_annex-10.20250520b2.dist-info/WHEEL,sha256=Mg9ffUKlLAZ3neFxGovlcxZht42vBGUz9HUbsaBtTmM,103
|
6
|
+
git_annex-10.20250520b2.dist-info/entry_points.txt,sha256=BI1LqRvI7ETq6hOuPgaT9O9cmmHJwYS3SthvRoNS43s,146
|
7
|
+
git_annex-10.20250520b2.dist-info/RECORD,,
|
@@ -1,7 +0,0 @@
|
|
1
|
-
git_annex/__init__.py,sha256=j8qJxYY0WVQQP8IXmkSBZQ2nPswrOrwpzPjBQ4VEfrk,895
|
2
|
-
git_annex/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
-
git_annex/git-annex,sha256=6VbsZeokU-SFFLIXC0z7piQcIeUsCOhyLKYcI4vPeko,49298272
|
4
|
-
git_annex-10.20250520b1.dist-info/METADATA,sha256=9DVQfuOcyVU-PYxViqj8HwqwLpT-FDOQTZPOATLjSyg,2832
|
5
|
-
git_annex-10.20250520b1.dist-info/WHEEL,sha256=Mg9ffUKlLAZ3neFxGovlcxZht42vBGUz9HUbsaBtTmM,103
|
6
|
-
git_annex-10.20250520b1.dist-info/entry_points.txt,sha256=BI1LqRvI7ETq6hOuPgaT9O9cmmHJwYS3SthvRoNS43s,146
|
7
|
-
git_annex-10.20250520b1.dist-info/RECORD,,
|
File without changes
|
File without changes
|