Skip to content
Snippets Groups Projects
  1. Aug 17, 2021
    • Joey Hess's avatar
      plumb VerifyConfig into retrieveKeyFile · f0754a61
      Joey Hess authored
      This fixes the recent reversion that annex.verify is not honored,
      because retrieveChunks was passed RemoteVerify baser, but baser
      did not have export/import set up.
      
      Sponsored-by: Dartmouth College's DANDI project
      f0754a61
  2. Mar 13, 2019
    • Joey Hess's avatar
      update licenses from GPL to AGPL · 40ecf58d
      Joey Hess authored
      This does not change the overall license of the git-annex program, which
      was already AGPL due to a number of sources files being AGPL already.
      
      Legally speaking, I'm adding a new license under which these files are
      now available; I already released their current contents under the GPL
      license. Now they're dual licensed GPL and AGPL. However, I intend
      for all my future changes to these files to only be released under the
      AGPL license, and I won't be tracking the dual licensing status, so I'm
      simply changing the license statement to say it's AGPL.
      
      (In some cases, others wrote parts of the code of a file and released it
      under the GPL; but in all cases I have contributed a significant portion
      of the code in each file and it's that code that is getting the AGPL
      license; the GPL license of other contributors allows combining with
      AGPL code.)
      40ecf58d
  3. Oct 17, 2017
    • Joey Hess's avatar
      better dup key with -J fix · e1ac299a
      Joey Hess authored
      This avoids all the complication about redundant work discussed in
      the previous try at fixing this. At the expense of needing each command
      that could have the problem to be patched to simply wrap the action in
      onlyActionOn once the key is known. But there do not seem to be many
      such commands.
      
      onlyActionOn' should not be used with a CommandStart (or CommandPerform),
      although the types do allow it. onlyActionOn handles running the whole
      CommandStart chain. I couldn't immediately see a way to avoid mistken
      use of onlyActionOn'.
      
      This commit was supported by the NSF-funded DataLad project.
      e1ac299a
    • Joey Hess's avatar
      Improve behavior when -J transfers multiple files that point to the same key · 68a49adc
      Joey Hess authored
      After a false start, I found a fairly non-intrusive way to deal with it.
      Although it only handles transfers -- there may be issues with eg
      concurrent dropping of the same key, or other operations.
      
      There is no added overhead when -J is not used, other than an added
      inAnnex check. When -J is used, it has to maintain and check a small
      Set, which should be negligible overhead.
      
      It could output some message saying that the transfer is being done by
      another thread. Or it could even display the same progress info for both
      files that are being downloaded since they have the same content. But I
      opted to keep it simple, since this is rather an edge case, so it just
      doesn't say anything about the transfer of the file until the other
      thread finishes.
      
      Since the deferred transfer action still runs, actions that do more than
      transfer content will still get a chance to do their other work. (An
      example of something that needs to do such other work is P2P.Annex,
      where the download always needs to receive the content from the peer.)
      And, if the first thread fails to complete a transfer, the second thread
      can resume it.
      
      But, this unfortunately means that there's a risk of redundant work
      being done to transfer a key that just got transferred.
      That's not ideal, but should never cause breakage; the same
      thing can occur when running two separate git-annex processes.
      
      The get/move/copy/mirror --from commands had extra inAnnex checks added,
      inside the download actions. Without those checks, the first thread
      downloaded the content, and then the second thread woke up and
      downloaded the same content redundantly.
      
      move/copy/mirror --to is left doing redundant uploads for now. It
      would need a second checkPresent of the remote inside the upload
      to avoid them, which would be expensive. A better way to avoid
      redundant work needs to be found..
      
      This commit was supported by the NSF-funded DataLad project.
      68a49adc
  4. Mar 10, 2017
  5. Jan 21, 2016
  6. Jan 21, 2015
  7. Jul 17, 2014
    • Joey Hess's avatar
      · e213ef31
      Joey Hess authored
      git-annex (5.20140717) unstable; urgency=high
      
        * Fix minor FD leak in journal code. Closes: #754608
        * direct: Fix handling of case where a work tree subdirectory cannot
          be written to due to permissions.
        * migrate: Avoid re-checksumming when migrating from hashE to hash backend.
        * uninit: Avoid failing final removal in some direct mode repositories
          due to file modes.
        * S3: Deal with AWS ACL configurations that do not allow creating or
          checking the location of a bucket, but only reading and writing content to
          it.
        * resolvemerge: New plumbing command that runs the automatic merge conflict
          resolver.
        * Deal with change in git 2.0 that made indirect mode merge conflict
          resolution leave behind old files.
        * sync: Fix git sync with local git remotes even when they don't have an
          annex.uuid set. (The assistant already did so.)
        * Set gcrypt-publish-participants when setting up a gcrypt repository,
          to avoid unncessary passphrase prompts.
          This is a security/usability tradeoff. To avoid exposing the gpg key
          ids who can decrypt the repository, users can unset
          gcrypt-publish-participants.
        * Install nautilus hooks even when ~/.local/share/nautilus/ does not yet
          exist, since it is not automatically created for Gnome 3 users.
        * Windows: Move .vbs files out of git\bin, to avoid that being in the
          PATH, which caused some weird breakage. (Thanks, divB)
        * Windows: Fix locking issue that prevented the webapp starting
          (since 5.20140707).
      
      # imported from the archive
      e213ef31
  8. Apr 11, 2014
    • Joey Hess's avatar
      · 2a82adc4
      Joey Hess authored
      git-annex (5.20140412) unstable; urgency=high
      
        * Last release didn't quite fix the high cpu issue in all cases, this should.
      
      # imported from the archive
      2a82adc4
  9. Apr 02, 2014
    • Joey Hess's avatar
      · b6d46c21
      Joey Hess authored
      git-annex (5.20140402) unstable; urgency=medium
      
        * unannex, uninit: Avoid committing after every file is unannexed,
          for massive speedup.
        * --notify-finish switch will cause desktop notifications after each
          file upload/download/drop completes
          (using the dbus Desktop Notifications Specification)
        * --notify-start switch will show desktop notifications when each
          file upload/download starts.
        * webapp: Automatically install Nautilus integration scripts
          to get and drop files.
        * tahoe: Pass -d parameter before subcommand; putting it after
          the subcommand no longer works with tahoe-lafs version 1.10.
          (Thanks, Alberto Berti)
        * forget --drop-dead: Avoid removing the dead remote from the trust.log,
          so that if git remotes for it still exist anywhere, git annex info
          will still know it's dead and not show it.
        * git-annex-shell: Make configlist automatically initialize
          a remote git repository, as long as a git-annex branch has
          been pushed to it, to simplify setup of remote git repositories,
          including via gitolite.
        * add --include-dotfiles: New option, perhaps useful for backups.
        * Version 5.20140227 broke creation of glacier repositories,
          not including the datacenter and vault in their configuration.
          This bug is fixed, but glacier repositories set up with the broken
          version of git-annex need to have the datacenter and vault set
          in order to be usable. This can be done using git annex enableremote
          to add the missing settings. For details, see
          http://git-annex.branchable.com/bugs/problems_with_glacier/
        * Added required content configuration.
        * assistant: Improve ssh authorized keys line generated in local pairing
          or for a remote ssh server to set environment variables in an
          alternative way that works with the non-POSIX fish shell, as well
          as POSIX shells.
      
      # imported from the archive
      b6d46c21
  10. Mar 26, 2014
    • Joey Hess's avatar
      · f4a98d2d
      Joey Hess authored
      git-annex (5.20140320~bpo70+1) wheezy-backports; urgency=medium
      
        * Updating backport to newest release.
        * Note that this backport does not feature constant time webapp auth token
          comparisons. It's not recommended to use the webapp on multiuser systems,
          since another use may be able to use a timing attack to guess its auth
          token. If you need that, it should not be hard to backport
          haskell-securemem.
      
      # imported from the archive
      f4a98d2d
  11. Feb 20, 2014
    • Joey Hess's avatar
      · 9c426c0d
      Joey Hess authored
      git-annex (5.20140210~bpo70+2) wheezy-backports; urgency=medium
      
        * Updating backport to newest release.
        * Remaining differences in this backport:
          - No webdav special remote support.
          - Test suite is not built into git-annex as it now uses haskell-tasty,
            which is not yet backported.
          - No skein hash support.
      
      # imported from the archive
      9c426c0d
  12. Nov 27, 2013
    • Joey Hess's avatar
      · 7189dfd7
      Joey Hess authored
      git-annex (5.20131127) unstable; urgency=low
      
        * webapp: Detect when upgrades are available, and upgrade if the user
          desires.
          (Only when git-annex is installed using the prebuilt binaries
          from git-annex upstream, not from eg Debian.)
        * assistant: Detect when the git-annex binary is modified or replaced,
          and either prompt the user to restart the program, or automatically
          restart it.
        * annex.autoupgrade configures both the above upgrade behaviors.
        * Added support for quvi 0.9. Slightly suboptimal due to limitations in its
          interface compared with the old version.
        * Bug fix: annex.version did not get set on automatic upgrade to v5 direct
          mode repo, so the upgrade was performed repeatedly, slowing commands down.
        * webapp: Fix bug that broke switching between local repositories
          that use the new guarded direct mode.
        * Android: Fix stripping of the git-annex binary.
        * Android: Make terminal app show git-annex version number.
        * Android: Re-enable XMPP support.
        * reinject: Allow to be used in direct mode.
        * Futher improvements to git repo repair. Has now been tested in tens
          of thousands of intentionally damaged repos, and successfully
          repaired them all.
        * Allow use of --unused in bare repository.
      
      # imported from the archive
      7189dfd7
  13. Nov 06, 2013
    • Joey Hess's avatar
      · d2633388
      Joey Hess authored
      git-annex (4.20131106~bpo70+1) wheezy-backports; urgency=low
      
        * Backport is now built against git 1.8.4, also now available in backports.
        * Improve local pairing behavior when two computers both try to start
          the pairing process separately.
        * sync: Work even when the local git repository is new and empty,
          with no master branch.
        * gcrypt, bup: Fix bug that prevented using these special remotes
          with encryption=pubkey.
        * Fix enabling of gcrypt repository accessed over ssh;
          git-annex-shell gcryptsetup had a bug that caused it to fail
          with permission denied.
        * Fix zombie process that occurred when switching between repository
          views in the webapp.
        * map: Work when there are gcrypt remotes.
        * Fix build w/o webapp.
        * Fix exception handling bug that could cause .git/annex/index to be used
          for git commits outside the git-annex branch. Known to affect git-annex
          when used with the git shipped with Ubuntu 13.10.
      
      # imported from the archive
      d2633388
  14. Aug 15, 2013
    • Joey Hess's avatar
      · 341269e0
      Joey Hess authored
      git-annex (4.20130815) unstable; urgency=low
      
        * assistant, watcher: .gitignore files and other git ignores are now
          honored, when git 1.8.4 or newer is installed.
          (Thanks, Adam Spiers, for getting the necessary support into git for this.)
        * importfeed: Ignores transient problems with feeds. Only exits nonzero
          when a feed has repeatedly had a problems for at least 1 day.
        * importfeed: Fix handling of dots in extensions.
        * Windows: Added support for encrypted special remotes.
        * Windows: Fixed permissions problem that prevented removing files
          from directory special remote. Directory special remotes now fully usable.
      
      # imported from the archive
      341269e0
  15. Jul 04, 2013
  16. Mar 28, 2013
    • Joey Hess's avatar
      webapp: Progess bar fixes for many types of special remotes. · cf07a2c4
      Joey Hess authored
      There was confusion in different parts of the progress bar code about
      whether an update contained the total number of bytes transferred, or the
      number of bytes transferred since the last update. One way this bug
      showed up was progress bars that seemed to stick at zero for a long time.
      In order to fix it comprehensively, I add a new BytesProcessed data type,
      that is explicitly a total quantity of bytes, not a delta.
      
      Note that this doesn't necessarily fix every problem with progress bars.
      Particularly, buffering can now cause progress bars to seem to run ahead
      of transfers, reaching 100% when data is still being uploaded.
      cf07a2c4
  17. Jan 01, 2013
  18. Dec 30, 2012
    • Joey Hess's avatar
      type based git config handling · 7f7c31df
      Joey Hess authored
      Now there's a Config type, that's extracted from the git config at startup.
      Note that laziness means that individual config values are only looked up
      and parsed on demand, and so we get implicit memoization for all of them.
      So this is not only prettier and more type safe, it optimises several
      places that didn't have explicit memoization before. As well as getting rid
      of the ugly explicit memoization code.
      
      Not yet done for annex.<remote>.* configuration settings.
      7f7c31df
  19. Nov 19, 2012
  20. Jan 06, 2012
  21. Dec 31, 2011
  22. Nov 07, 2011
  23. Oct 15, 2011
  24. Jun 02, 2011
  25. Mar 16, 2011
    • Joey Hess's avatar
      rename file · 4594bd51
      Joey Hess authored
      4594bd51
    • Joey Hess's avatar
      first pass at using new keys · 9d49fe2c
      Joey Hess authored
      It compiles. It sorta works. Several subcommands are FIXME marked and
      broken, because things that used to accept separate --backend and --key
      params need to be changed to accept just a --key that encodes all the key
      info, now that there is metadata in keys.
      9d49fe2c
  26. Jan 26, 2011
  27. Oct 27, 2010
  28. Oct 25, 2010
  29. Oct 21, 2010
  30. Oct 18, 2010
  31. Oct 15, 2010
  32. Oct 14, 2010