Up to [cvs.NetBSD.org] / pkgsrc / sysutils / git-annex
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
*: recursive bump for icu 77 and libxml2 2.14
Recursive bump for security/hs-tls
recursive revbump after patching lang/ghc910
Bump all Haskell packages after switching the default compiler.
sysutils/git-annex: update to git-annex-10.20250115 git-annex (10.20250115) upstream; urgency=medium * Improve handing of ssh connection problems during remote annex.uuid discovery. * log: Support --key, as well as --branch and --unused. * Avoid verification error when addurl --verifiable is used with an url claimed by a special remote other than the web. * Fix installation on Android. * Allow enableremote of an existing webdav special remote that has read-only access. * git-remote-annex: Use enableremote rather than initremote. * Windows: Fix permission denied error when dropping files that have the readonly attribute set. * Added freezecontent-annex and thawcontent-annex hooks that correspond to the git configs annex.freezecontent and annex.thawcontent. * Added secure-erase-annex hook that corresponds to the git config annex.secure-erase-command. * Added commitmessage-annex hook that corresponds to the git config annex.commitmessage-command. * Added http-headers-annex hook that corresponds to the git config annex.http-headers-command. * Added git configs annex.post-update-command and annex.pre-commit-command that correspond to the post-update-annex and pre-commit-annex hooks. * Added annex.pre-init-command git config and pre-init-annex hook that is run before git-annex repository initialization. * Linux standalone builds' bundled rsync updated to fix security holes. -- Joey Hess <id@joeyh.name> Wed, 15 Jan 2025 11:39:12 -0400 git-annex (10.20250102) upstream; urgency=medium * Added config `url.<base>.annexInsteadOf` corresponding to git's `url.<base>.pushInsteadOf`, to configure the urls to use for accessing the git-annex repositories on a server without needing to configure remote.name.annexUrl in each repository. * Work around git hash-object --stdin-paths's odd stripping of carriage return from the end of the line (some windows infection), avoiding crashing when the repo contains a filename ending in a carriage return. * Document that settting preferred content to "" is the same as the default unset behavior. * sync: Avoid misleading warning about future preferred content transition when preferred content is set to "". * Honor annex.addunlocked configuration when importing a tree from a special remote. * Removed the i386ancient standalone tarball build for linux, which was increasingly unable to support new git-annex features. * Removed support for building with ghc older than 9.0.2, and with older versions of haskell libraries than are in current Debian stable. * stack.yaml: Update to lts-23.2. -- Joey Hess <id@joeyh.name> Thu, 02 Jan 2025 12:31:58 -0400 git-annex (10.20241202) upstream; urgency=medium * add: Consistently treat files in a dotdir as dotfiles, even when ran inside that dotdir. * add: When adding a dotfile as a non-large file, mention that it's a dotfile. * p2phttp: Added --directory option which serves multiple git-annex repositories located inside a directory. * When remote.name.annexUrl is an annex+http(s) url, that uses the same hostname as remote.name.url, which is itself a http(s) url, they are assumed to share a username and password. This avoids unnecessary duplicate password prompts. * git-remote-annex: Fix a reversion introduced in version 10.20241031 that broke cloning from a special remote. * git-remote-annex: Fix cloning from a special remote on a crippled filesystem. * git-remote-annex: Fix buggy behavior when annex.stalldetection is configured. * git-remote-annex: Require git version 2.31 or newer, since old ones had a buggy git bundle command. * S3: Support versioning=yes with a readonly bucket. (Needs aws-0.24.3) * S3: Send git-annex or other configured User-Agent. (Needs aws-0.24.3) * S3: Fix infinite loop and memory blowup when importing from an unversioned S3 bucket that is large enough to need pagination. * S3: Use significantly less memory when importing from a versioned S3 bucket. * vpop: Only update state after successful checkout. -- Joey Hess <id@joeyh.name> Mon, 02 Dec 2024 12:31:08 -0400 git-annex (10.20241031) upstream; urgency=medium * Sped up proxied downloads from special remotes, by streaming. * Added GETORDERED request to external special remote protocol. When the external special remote responds with ORDERED, it can stream through a proxy. * p2phttp: Support serving unauthenticated users while requesting authentication for operations that need it. Eg, --unauth-readonly can be combined with --authenv. * p2phttp: Allow unauthenticated users to lock content by default. * p2phttp: Added --unauth-nolocking option to prevent unauthenticated users from locking content. * Allow enabling the servant build flag with older versions of stm, allowing building with ghc 9.0.2. * git-remote-annex: Fix bug that prevented using it with external special remotes, leading to protocol error messages involving "GITMANIFEST". * adjust: Allow any order of options when combining --hide-missing with options like --unlock. * Support P2P protocol version 4. This allows DATA-PRESENT to be sent after PUT (and in the HTTP P2P protocol, v4/put has a data-present parameter). When used with a proxy to a special remote like a S3 bucket, this allows a custom client to upload content to S3 itself, and then use the P2P protocol to inform the proxy that the content has been stored there, which will result in the same git-annex branch state updates as sending DATA via the proxy. * Fix hang when receiving a large file into a proxied special remote. -- Joey Hess <id@joeyh.name> Thu, 31 Oct 2024 17:19:56 -0400 git-annex (10.20240927) upstream; urgency=medium * Detect when a preferred content expression contains "not present", which would lead to repeatedly getting and then dropping files, and make it never match. This also applies to "not balanced" and "not sizebalanced". * Fix --explain display of onlyingroup preferred content expression. * Allow maxsize to be set to 0 to stop checking maxsize for a repository. * Fix bug that prevented anything being stored in an empty repository whose preferred content expression uses sizebalanced. * sim: New command, can be used to simulate networks of repositories and see how preferred content and other configuration makes file content flow through it. -- Joey Hess <id@joeyh.name> Mon, 30 Sep 2024 19:15:35 -0400 git-annex (10.20240831) upstream; urgency=medium * Special remotes configured with exporttree=yes annexobjects=yes can store objects in .git/annex/objects, as well as an exported tree. * Support proxying to special remotes configured with exporttree=yes annexobjects=yes, and allow such remotes to be used as cluster nodes. * post-retrieve: When proxying is enabled for an exporttree=yes special remote (or it is a cluster node) and the configured remote.name.annex-tracking-branch is received, the tree is exported to the special remote. * Support "balanced=", "fullybalanced=", "sizebalanced=" and "fullysizebalanced=" in preferred content expressions. * Added --rebalance option. * Added the annex.fullybalancedthreshhold git config. * maxsize: New command to tell git-annex how large the expected maximum size of a repository is, and to display repository sizes. * vicfg: Include maxsize configuration. * info: Improved speed by using new repository size tracking. * lookupkey: Allow using --ref in a bare repository. * export: Added --from option. * git-remote-annex: Store objects in exportree=yes special remotes in the same paths used by annexobjects=yes. This is a backwards compatible change. * updateproxy, updatecluster: Prevent using an exporttree=yes special remote that does not have annexobjects=yes, since it will not work. * The config versioning=true is now reserved for use by versioned special remotes. External special remotes should not use that config for their own purposes. -- Joey Hess <id@joeyh.name> Sat, 31 Aug 2024 19:48:17 -0400 git-annex (10.20240808) upstream; urgency=medium * Remove debug output (to stderr) accidentially included in last version. * When getting from a P2P HTTP remote, prompt for credentials when required, instead of failing. * When proxying an upload to a special remote, verify the hash. * Avoid loading cluster log at startup. -- Joey Hess <id@joeyh.name> Thu, 08 Aug 2024 15:26:26 -0400 git-annex (10.20240731) upstream; urgency=medium * New HTTP API that is equivilant to the P2P protocol. * New p2phttp command to serve the HTTP API. * annex+http and annex+https urls can be configured for remote.name.annexUrl to use the HTTP API to communicate with a server. This supports writable repositories, as well as accessing clusters and proxied remotes over HTTP. * When a http remote has annex.url set to an annex+http url in the git config file on the website, it will be copied into remote.name.annexUrl the first time git-annex uses the remote. * assistant: Fix a race condition that could cause a pointer file to get ingested into the annex. * Avoid potential data loss in unlikely situations where git-annex-shell or git-annex remotedaemon is killed while locking a key to prevent its removal. * When proxying a download from a special remote, avoid unncessary hashing. * When proxying an upload to a special remote, verify the hash. * Propagate --force to git-annex transferrer. * Added a build flag for servant, enabling annex+http urls and git-annex p2phttp. * Added a dependency on the haskell clock library. * Updated stack.yaml to nightly-2024-07-29. -- Joey Hess <id@joeyh.name> Wed, 31 Jul 2024 14:02:21 -0400 git-annex (10.20240701) upstream; urgency=medium * git-annex remotes can now act as proxies that provide access to their remotes. Configure this with remote.name.annex-proxy and the git-annex update proxy command. * Clusters are now supported. These are collections of nodes that can be accessed as a single entity, accessed by one or more gateway repositories. * Added git-annex initcluster, updatecluster, and extendcluster commands. * Fix a bug where interrupting git-annex while it is updating the git-annex branch for an export could later lead to git fsck complaining about missing tree objects. * Tab completion of options like --from now includes special remotes, as well as proxied remotes and clusters. * Tab completion of many commands like info and trust now includes remotes. * P2P protocol version 2. * Fix Windows build with Win32 2.13.4+ Thanks, Oleg Tolmatcev * When --debugfilter or annex.debugfilter is set, avoid propigating debug output from git-annex-shell, since it cannot be filtered. -- Joey Hess <id@joeyh.name> Mon, 01 Jul 2024 15:11:48 -0400 git-annex (10.20240531) upstream; urgency=medium * git-remote-annex: New program which allows pushing a git repo to a git-annex special remote, and cloning from a special remote. (Based on Michael Hanke's git-remote-datalad-annex.) * initremote, enableremote: Added --with-url to enable using git-remote-annex. * When building an adjusted unlocked branch, make pointer files executable when the annex object file is executable. * group: Added --list option. * fsck: Fix recent reversion that made it say it was checksumming files whose content is not present. * Avoid the --fast option preventing checksumming in some cases it was not supposed to. * testremote: Really fsck downloaded objects. * Typo fixes. Thanks, Yaroslav Halchenko -- Joey Hess <id@joeyh.name> Fri, 31 May 2024 12:32:29 -0400
*: recursive bump for icu 76 shlib major version bump
*: revbump for icu downgrade
*: recursive bump for icu 76.1 shlib bump
revbump after icu and protobuf updates
Recursive revbump after changing the default Haskell compiler
sysutils/git-annex: Update to 10.20240430 git-annex (10.20240430) * Bug fix: While redundant concurrent transfers were already prevented in most cases, it failed to prevent the case where two different repositories were sending the same content to the same repository. * addurl, importfeed: Added --verifiable option, which improves the safety of --fast or --relaxed by letting the content of annexed files be verified with a checksum that is calculated on a later download from the web. This will become the default later. * Added rclone special remote, which can be used without needing to install the git-annex-remote-rclone program. This needs a forthcoming version of rclone (1.67.0), which supports "rclone gitannex". * sync, assist, import: Allow -m option to be specified multiple times, to provide additional paragraphs for the commit message. * reregisterurl: New command that can change an url from being used by a special remote to being used by the web remote. * annex.maxextensions configuration controls how many filename extensions to preserve. * find: Fix --help for --copies. Thanks, Gergely Risko * Windows: Fix escaping output to terminal when using old versions of MinTTY. * Added dependency on unbounded-delays. git-annex (10.20240227) * importfeed: Added --scrape option, which uses yt-dlp to screen scrape the equivilant of an RSS feed. * importfeed --force: Don't treat it as a failure when an already downloaded file exists. (Fixes a behavior change introduced in 10.20230626.) * importfeed --force: Avoid creating duplicates of existing already downloaded files when yt-dlp or a special remote was used. * addurl, importfeed: Added --raw-except option. * stack.yaml: Update to lts-22.9 and use crypton. * assistant, undo: When committing, let the usual git commit hooks run. * Added annex.commitmessage-command config. * pre-commit: Avoid committing the git-annex branch (except when a commit is made in a view, which changes metadata). * Pass --no-warnings to yt-dlp. git-annex (10.20240129) * info: Added "annex sizes of repositories" table to the overall display. * import: Sped up import from special remotes. * import: Added --message/-m option. * Support using commands that implement the Stateless OpenPGP command line interface, as an alternative to gpg. Currently only supported for encryption=shared special remotes, when annex.shared-sop-command is configured. * test: Test a specified Stateless OpenPGP command when run with eg --test-git-config annex.shared-sop-command=sqop * Improve disk free space checking when transferring unsized keys to local git remotes. * Added configs annex.stalldetection-download, annex.stalldetection-upload, annex.bwlimit-download, annex.bwlimit-upload, and similar per-remote configs. * Improve annex.stalldetection to handle remotes that update progress less frequently than the configured time period. * external: Monitor file size when getting content from external special remotes and use that to update the progress meter, in case the external special remote program does not report progress. * Added --expected-present file matching option. * webapp: Added --port option, and annex.port config. * assistant: When generating a gpg secret key, avoid hardcoding the key algorithm and size. git-annex (10.20231227) * migrate: Support distributed migrations by recording each migration, and adding a --update option that updates the local repository incrementally, hard linking annex objects to their new keys. * pull, sync: When operating on content, automatically handle distributed migrations. * Added annex.syncmigrations config that can be set to false to prevent pull and sync from migrating object content. * migrate: Added --apply option that (re)applies all recorded distributed migrations to the objects in repository. * migrate: Support adding size to URL keys that were added with --relaxed, by running eg: git-annex migrate --backend=URL foo * When importing from a special remote, support preferred content expressions that use terms that match on keys (eg "present", "copies=1"). Such terms are ignored when importing, since the key is not known yet. Before, such expressions caused the import to fail. * Support git-annex copy/move --from-anywhere --to remote. * Make git-annex get/copy/move --from foo override configuration of remote.foo.annex-ignore, as documented. * Lower precision of timestamps in git-annex branch, which can reduce the size of the branch by up to 8%. * sync: Fix locking problems during merge when annex.pidlock is set. * Avoid a problem with temp file names ending in "." on certian filesystems that have problems with such filenames. * sync, push: Avoid trying to send individual files to special remotes configured with importtree=yes exporttree=no, which would always fail. * Fix a crash opening sqlite databases when run in a non-unicode locale. (Needs persistent-sqlite 2.13.3.) git-annex (10.20231129) * Fix bug in git-annex copy --from --to that skipped files that were locally present. * Make git-annex copy --from --to --fast actually fast. * Fix crash of enableremote when the special remote has embedcreds=yes. * Ignore directories and other unusual files in .git/annex/journal/ * info: Added calculation of combined annex size of all repositories. * log: Added options --sizesof, --sizes and --totalsizes that display how the size of repositories changed over time. * log: Added options --interval, --bytes, --received, and --gnuplot to tune the output of the above added options. * findkeys: Support --largerthan and --smallerthan. * importfeed: Use caching database to avoid needing to list urls on every run, and avoid using too much memory. * Improve memory use of --all when using annex.private. * lookupkey: Sped up --batch. * Windows: Consistently avoid ending standard output lines with CR. This matches the behavior of git on Windows. * Windows: Fix CRLF handling in some log files. * Windows: When git-annex init is installing hook scripts, it will avoid ending lines with CR for portability. Existing hook scripts that do have CR line endings will not be changed.
*: recursive bump for icu 74.1
git-annex: add missing dependency on git-base Bump PKGREVISION.
Revbump all Haskell after updating lang/ghc96
sysutils/git-annex: import git-annex-10.20230926 git-annex allows managing files with git, without checking the file contents into git. While that may seem paradoxical, it is useful when dealing with files larger than git can currently easily handle, whether due to limitations in memory, time, or disk space. It can store large files in many places, from local hard drives, to a large number of cloud storage services, including S3, WebDAV, and rsync, and many other usable via plugins. Files can be stored encrypted with gpg, so that the cloud storage provider cannot see your data. git-annex keeps track of where each file is stored, so it knows how many copies are available, and has many facilities to ensure your data is preserved. git-annex can also be used to keep a folder in sync between computers, noticing when files are changed, and automatically committing them to git and transferring them to other computers. The git-annex webapp makes it easy to set up and use git-annex this way.