hgext/lfs/TODO.rst
author Matt Harbison <matt_harbison@yahoo.com>
Sat, 04 May 2019 01:16:42 -0400
changeset 42242 1756859a65fa
child 42479 ed9a99564051
permissions -rw-r--r--
lfs: add a TODO file This is a cleaned up and reorganized list of items I sent out about a year ago. But tracking this in the repo (like the narrow extension) gives more visibility in case anyone wants to help out.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
42242
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     1
Prior to removing (EXPERIMENTAL)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     2
--------------------------------
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     3
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     4
These things affect UI and/or behavior, and should probably be implemented (or
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     5
ruled out) prior to taking off the experimental shrinkwrap.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     6
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     7
#. Finish the `hg convert` story
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     8
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
     9
   * Add an argument to accept a rules file to apply during conversion?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    10
     Currently `lfs.track` is the only way to affect the conversion.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    11
   * drop `lfs.track` config settings
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    12
   * splice in `.hglfs` file for normal repo -> lfs conversions?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    13
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    14
#. Stop uploading blobs when pushing between local repos
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    15
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    16
   * Could probably hardlink directly to the other local repo's store
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    17
   * Support inferring `lfs.url` for local push/pull (currently only supports
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    18
     http)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    19
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    20
#. Stop uploading blobs on strip/amend/histedit/etc.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    21
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    22
   * This seems to be a side effect of doing it for `hg bundle`, which probably
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    23
     makes sense.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    24
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    25
#. Handle a server with the extension loaded and a client without the extension
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    26
   more gracefully.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    27
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    28
   * `changegroup3` is still experimental, and not enabled by default.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    29
   * Figure out how to `introduce LFS to the server repo
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    30
     <https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-September/122281.html>`_.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    31
     See the TODO in test-lfs-serve.t.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    32
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    33
#. Remove `lfs.retry` hack in client?  This came from FB, but it's not clear why
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    34
   it is/was needed.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    35
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    36
#. `hg export` currently writes out the LFS blob.  Should it write the pointer
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    37
   instead?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    38
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    39
   * `hg diff` is similar, and probably shouldn't see the pointer file
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    40
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    41
#. `Fix https multiplexing, and re-enable workers
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    42
   <https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-January/109916.html>`_.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    43
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    44
#. Show to-be-applied rules with `hg files -r 'wdir()' 'set:lfs()'`
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    45
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    46
   * `debugignore` can show file + line number, so a dedicated command could be
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    47
     useful too.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    48
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    49
#. Filesets, revsets and templates
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    50
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    51
   * A dedicated revset should be faster than `'file(set:lfs())'`
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    52
   * Attach `{lfsoid}` and `{lfspointer}` to `general keywords
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    53
     <https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-January/110251.html>`_,
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    54
     IFF the file is a blob
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    55
   * Drop existing items that would be redundant with general support
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    56
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    57
#. Can `grep` avoid downloading most things?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    58
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    59
   * Add a command option to skip LFS blobs?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    60
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    61
#. Add a flag that's visible in `hg files -v` to indicate external storage?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    62
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    63
#. Server side issues
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    64
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    65
   * Check for local disk space before allowing upload.  (I've got a patch for
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    66
     this.)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    67
   * Make sure the http codes used are appropriate.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    68
   * `Why is copying the Authorization header into the JSON payload necessary
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    69
     <https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-April/116230.html>`_?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    70
   * `LFS-Authenticate` header support in client and server(?)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    71
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    72
#. Add locks on cache and blob store
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    73
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    74
   * This is complicated with a global store, and multiple potentially unrelated
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    75
     local repositories that reference the same blob.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    76
   * Alternately, maybe just handle collisions when trying to create the same
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    77
     blob in the store somehow.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    78
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    79
#. Are proper file sizes reported in `debugupgraderepo`?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    80
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    81
#. Finish prefetching files
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    82
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    83
   * `-T {rawdata}`
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    84
   * `verify`
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    85
   * `grep`
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    86
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    87
#. Output cleanup
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    88
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    89
   * Can we print the url when connecting to the blobstore?  (A sudden
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    90
     connection refused after pulling commits looks confusing.)  Problem is,
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    91
     'pushing to main url' is printed, and then lfs wants to upload before going
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    92
     back to the main repo transfer, so then *that* could be confusing with
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    93
     extra output. (This is kinda improved with 380f5131ee7b and 9f78d10742af.)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    94
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    95
   * Add more progress indicators?  Uploading a large repo looks idle for a long
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    96
     time while it scans for blobs in each outgoing revision.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    97
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    98
   * Print filenames instead of hashes in error messages
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
    99
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   100
     * subrepo aware paths, where necessary
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   101
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   102
   * Is existing output at the right status/note/debug level?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   103
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   104
#. Can `verify` be done without downloading everything?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   105
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   106
   * If we know that we are talking to an hg server, we can leverage the fact
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   107
     that it validates in the Batch API portion, and skip d/l altogether.  OTOH,
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   108
     maybe we should download the files unconditionally for forensics.  The
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   109
     alternative is to define a custom transfer handler that definitively
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   110
     verifies without transferring, and then cache those results.  When verify
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   111
     comes looking, look in the cache instead of actually opening the file and
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   112
     processing it.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   113
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   114
   * Yuya has concerns about when blob fetch takes place vs when revlog is
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   115
     verified.  Since the visible hash matches the blob content, I don't think
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   116
     there's a way to verify the pointer file that's actually stored in the
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   117
     filelog (other than basic JSON checks).  Full verification requires the
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   118
     blob.  See
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   119
     https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-April/116133.html
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   120
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   121
   * Opening a corrupt pointer file aborts.  It probably shouldn't for verify.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   122
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   123
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   124
Future ideas/features/polishing
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   125
-------------------------------
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   126
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   127
These aren't in any particular order, and are things that don't have obvious BC
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   128
concerns.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   129
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   130
#. Garbage collection `(issue5790) <https://bz.mercurial-scm.org/show_bug.cgi?id=5790>`_
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   131
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   132
   * This gets complicated because of the global cache, which may or may not
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   133
     consist of hardlinks to the repo, and may be in use by other repos.  (So
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   134
     the gc may be pointless.)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   135
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   136
#. `Compress blobs <https://github.com/git-lfs/git-lfs/issues/260>`_
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   137
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   138
   * 700MB repo becomes 2.5GB with all lfs blobs
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   139
   * What implications are there for filesystem paths that don't indicate
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   140
     compression?  (i.e. how to share with global cache and other local repos?)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   141
   * Probably needs to be stored under `.hg/store/lfs/zstd`, with a repo
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   142
     requirement.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   143
   * Allow tuneable compression type and settings?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   144
   * Support compression over the wire if both sides understand the compression?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   145
   * `debugupgraderepo` to convert?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   146
   * Probably not worth supporting compressed and uncompressed concurrently
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   147
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   148
#. Determine things to upload with `readfast()
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   149
   <https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-August/121315.html>`_
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   150
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   151
   * Significantly faster when pushing an entire large repo to http.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   152
   * Causes test changes to fileset and templates; may need both this and
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   153
     current methods of lookup.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   154
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   155
#. Is a command to download everything needed?  This would allow copying the
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   156
   whole to a portable drive.  Currently this can be effected by running
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   157
   `hg verify`.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   158
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   159
#. Stop reading in entire file into one buffer when passing through filelog
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   160
   interface
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   161
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   162
   * `Requires major replumbing to core
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   163
     <https://www.mercurial-scm.org/wiki/HandlingLargeFiles>`_
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   164
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   165
#. Keep corrupt files around in 'store/lfs/incoming' for forensics?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   166
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   167
   * Files should be downloaded to 'incoming', and moved to normal location when
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   168
     done.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   169
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   170
#. Client side path enhancements
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   171
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   172
   * Support paths.default:lfs = ... style paths
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   173
   * SSH -> https server inference
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   174
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   175
     * https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-April/115416.html
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   176
     * https://github.com/git-lfs/git-lfs/blob/master/docs/api/server-discovery.md#guessing-the-server
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   177
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   178
#. Server enhancements
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   179
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   180
   * Add support for transfer quotas?
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   181
   * Download should be able to send the file in chunks, without reading the
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   182
     whole thing into memory
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   183
     (https://www.mercurial-scm.org/pipermail/mercurial-devel/2018-March/114584.html)
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   184
   * Support for resuming transfers
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   185
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   186
#. Handle 3rd party server storage.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   187
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   188
   * Teach client to handle lfs `verify` action.  This is needed after the
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   189
     server instructs the client to upload the file to another server, in order
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   190
     to tell the server that the upload completed.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   191
   * Teach the server to send redirects if configured, and process `verify`
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   192
     requests.
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   193
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   194
#. `Is any hg-git work needed
1756859a65fa lfs: add a TODO file
Matt Harbison <matt_harbison@yahoo.com>
parents:
diff changeset
   195
   <https://groups.google.com/d/msg/hg-git/XYNQuudteeM/ivt8gXoZAAAJ>`_?