Skip to content

[DO NOT MERGE] Tentative vfs-2.28.0 branch#283

Merged
derrickstolee merged 0 commit intovfs-2.28.0from
tentative/vfs-2.28.0
Jul 28, 2020
Merged

[DO NOT MERGE] Tentative vfs-2.28.0 branch#283
derrickstolee merged 0 commit intovfs-2.28.0from
tentative/vfs-2.28.0

Conversation

@derrickstolee
Copy link

Here is the update including v2.28.0-rc0.

The range-diff is the easiest yet:

  1:  7b29ef457c =   1:  f60c0af6fe reset --stdin: trim carriage return from the paths
  2:  9167b96c8e0 !   2:  8a95ad158e5 gvfs: start by adding the -gvfs suffix to the version
    @@ GIT-VERSION-GEN
      #!/bin/sh
      
      GVF=GIT-VERSION-FILE
    --DEF_VER=v2.27.0
    -+DEF_VER=v2.27.0.vfs.1.1
    +-DEF_VER=v2.27.GIT
    ++DEF_VER=v2.28.0.vfs.0.0
      
      LF='
      '
  3:  758bdf42ad4 =   3:  980393c1e30 gvfs: ensure that the version is based on a GVFS tag
  4:  a18c086fc9e =   4:  bd5fca3c9f3 gvfs: add a GVFS-specific header file
  5:  a191ed6c292 =   5:  a6d1ed0feaa gvfs: add the core.gvfs config setting
  6:  65d8c2ab28d =   6:  5aae9a30322 gvfs: add the feature to skip writing the index' SHA-1
  7:  18135adc0a9 =   7:  2dc368f6f0c gvfs: add the feature that blobs may be missing
  8:  64985fc31fa =   8:  7998d28ae1e gvfs: prevent files to be deleted outside the sparse checkout
  9:  4e8499ce8e7 =   9:  c4c1365c2a0 gvfs: optionally skip reachability checks/upload pack during fetch
 10:  63c4477e767 =  10:  f70b6c00143 gvfs: ensure all filters and EOL conversions are blocked
 11:  9ea9339971b =  11:  b4ba151ebff Add a new run_hook_argv() function
 12:  e00561c4cad =  12:  dd277b2795f gvfs: allow "virtualizing" objects
 13:  a04f755876b =  13:  a6e236ac5f3 Hydrate missing loose objects in check_and_freshen()
 14:  26cf7c24f20 =  14:  927aec103c1 Add support for read-object as a background process to retrieve missing objects
 15:  5bad1782d27 =  15:  f4bb908a972 sha1_file: when writing objects, skip the read_object_hook
 16:  0e12bee541e =  16:  ff429bf7c61 gvfs: add global command pre and post hook procs
 17:  3ff73431293 =  17:  3bb2b0cd063 t0400: verify that the hook is called correctly from a subdirectory
 18:  7eb4ebe27c2 =  18:  7975ea74f6a Pass PID of git process to hooks.
 19:  5df40b350e8 =  19:  cca952a9840 pre-command: always respect core.hooksPath
 20:  240417aef1c =  20:  8fb0743e74f sparse-checkout: update files with a modify/delete conflict
 21:  5e4a1154426 =  21:  ef8a4668b64 sparse-checkout: avoid writing entries with the skip-worktree bit
 22:  732cc4702f2 =  22:  c4ecd320c31 Fix reset when using the sparse-checkout feature.
 23:  02b3ad134e2 =  23:  7fb620eb9af Do not remove files outside the sparse-checkout
 24:  3e3a826894c =  24:  a06c2b96b0b gvfs: refactor loading the core.gvfs config value
 25:  892ddf7bad5 =  25:  b8ae36b43f3 send-pack: do not check for sha1 file when GVFS_MISSING_OK set
 26:  8f48b096dd1 =  26:  ce9cef0ed30 cache-tree: remove use of strbuf_addf in update_one
 27:  19044c0eecf =  27:  70637bedeed gvfs: block unsupported commands when running in a GVFS repo
 28:  9bf76c97d60 =  28:  e8955dedebe gvfs: allow overriding core.gvfs
 29:  e483af85651 =  29:  dab906bc353 BRANCHES.md: Add explanation of branches and using forks
 30:  3a8dcbeb9e3 =  30:  3301a683fff vfs: disable `git update-git-for-windows`
 31:  2b889242058 =  31:  8a7227e4e11 Add virtual file system settings and hook proc
 32:  d5e00e25b93 =  32:  4598e99d34b Update the virtualfilesystem support
 33:  513d5eceb4e =  33:  a210707776d virtualfilesystem: don't run the virtual file system hook if the index has been redirected
 34:  13db71446b8 =  34:  a135a006ffa virtualfilesystem: fix bug with symlinks being ignored
 35:  1a38880336f =  35:  b4d78c9f67d virtualfilesystem: check if directory is included
 36:  b99bb749f0c =  36:  ab7c632ca9d vfs: fix case where directories not handled correctly
 37:  4451a05e385 =  37:  1c0006cfb34 backwards-compatibility: support the post-indexchanged hook
 38:  7a272055c13 =  38:  8a5c236e5e7 status: add status serialization mechanism
 39:  ecaf77217fc =  39:  43b3a5d37ed Teach ahead-behind and serialized status to play nicely together
 40:  146e74d0c61 =  40:  4853ee9f1f8 status: serialize to path
 41:  ebe420e1ddb =  41:  9d22375b7ee status: reject deserialize in V2 and conflicts
 42:  a035faeed99 =  42:  5763ddfc98a status: fix rename reporting when using serialization cache
 43:  2d406779faf =  43:  076ed8b6284 serialize-status: serialize global and repo-local exclude file metadata
 44:  1cb226a02ff =  44:  287a33ee9f4 status: deserialization wait
 45:  ce3f9318ca0 =  45:  c8e01560d12 merge-recursive: avoid confusing logic in was_dirty()
 46:  bfaaaa41458 =  46:  dfc01ce2615 merge-recursive: add some defensive coding to was_dirty()
 47:  4ad0ad9c5e1 =  47:  e94bf305721 merge-recursive: teach was_dirty() about the virtualfilesystem
 48:  b78a80352fd =  48:  e2f8ab1c63e status: deserialize with -uno does not print correct hint
 49:  7f49dd21e2c =  49:  b53c3494969 wt-status-deserialize: fix crash when -v is used
 50:  cbe29945ecc =  50:  ed18cda5238 fsmonitor: check CE_FSMONITOR_VALID in ce_uptodate
 51:  563d9c28884 =  51:  8036b1d0dd1 fsmonitor: add script for debugging and update script for tests
 52:  d043db00352 =  52:  b448a440dd4 status: disable deserialize when verbose output requested.
 53:  a4568d6348a =  53:  ee3ff66d823 t7524: add test for verbose status deserialzation
 54:  f9465bbd0b6 =  54:  155676bbddd deserialize-status: silently fallback if we cannot read cache file
 55:  b73ece7e626 =  55:  4e434394de1 gvfs:trace2:data: add trace2 tracing around read_object_process
 56:  61571d06682 =  56:  9c617fdc24a gvfs:trace2:data: status deserialization information
 57:  e14a7a7794f =  57:  1bdd9100f50 gvfs:trace2:data: status serialization
 58:  ea4a6014d76 =  58:  d401b818e4d gvfs:trace2:data: add vfs stats
 59:  59608b9f68b =  59:  9c4ccae2b20 trace2: refactor setting process starting time
 60:  1b6a0551897 =  60:  a84cfd2513d trace2:gvfs:experiment: clear_ce_flags_1
 61:  4d00479344f =  61:  fd51f28ef3b trace2:gvfs:experiment: traverse_trees
 62:  02fecff252a =  62:  f9d546189df trace2:gvfs:experiment: report_tracking
 63:  c049d39cde1 =  63:  f96f3c14ee4 trace2:gvfs:experiment: read_cache: annotate thread usage in read-cache
 64:  7e4b0be2ab3 =  64:  9b2fd9e7e2f trace2:gvfs:experiment: read-cache: time read/write of cache-tree extension
 65:  b9df0c9b28e =  65:  a07e682d0f2 trace2:gvfs:experiment: add prime_cache_tree region
 66:  1fb6b1eef1c =  66:  de781874927 trace2:gvfs:experiment: add region to apply_virtualfilesystem()
 67:  91c711ba602 =  67:  2df82d4243c trace2:gvfs:experiment: add region around unpack_trees()
 68:  93c4f147bd6 =  68:  5e45487c2ee trace2:gvfs:experiment: add region to cache_tree_fully_valid()
 69:  bea2a6c7f6c =  69:  419d5f7fe10 trace2:gvfs:experiment: add unpack_entry() counter to unpack_trees() and report_tracking()
 70:  8960222f7d3 =  70:  ce1a1681e63 trace2:gvfs:experiment: increase default event depth for unpack-tree data
 71:  72c0ef9e6e7 =  71:  7b8d4234ace trace2:gvfs:experiment: add data for check_updates() in unpack_trees()
 72:  966460205e4 =  72:  a6f132cf874 Trace2:gvfs:experiment: capture more 'tracking' details
 73:  83b1df3690c =  73:  3b391dcb420 credential: set trace2_child_class for credential manager children
 74:  871e8d04d2d =  74:  50865ba5c88 sub-process: do not borrow cmd pointer from caller
 75:  c0be9284e29 =  75:  ef10ee12f66 sub-process: add subprocess_start_argv()
 76:  935747e2a8b =  76:  3002cf90f51 sha1-file: add function to update existing loose object cache
 77:  dbc6974a3ac =  77:  ddb2ef88a23 packfile: add install_packed_git_and_mru()
 78:  d643ee4916c =  78:  7e6b28321d9 index-pack: avoid immediate object fetch while parsing packfile
 79:  8efa4afb0c5 =  79:  b87a52f0fa4 gvfs-helper: create tool to fetch objects using the GVFS Protocol
 80:  1cf9d052fd4 =  80:  c80bb6a694e gvfs-helper: fix race condition when creating loose object dirs
 81:  0cee3acba95 =  81:  cfb577220c5 sha1-file: create shared-cache directory if it doesn't exist
 82:  6e47e3d5871 =  82:  228b1b37ab6 gvfs-helper: better handling of network errors
 83:  a52413b15f9 =  83:  8bec2e1d9f4 gvfs-helper-client: properly update loose cache with fetched OID
 84:  0eb1006a8ef =  84:  5ef35034fc5 gvfs-helper: V2 robust retry and throttling
 85:  c041e732ee7 =  85:  5f6ac008a00 gvfs-helper: expose gvfs/objects GET and POST semantics
 86:  11be079ce65 =  86:  662cfac0f9e gvfs-helper: dramatically reduce progress noise
 87:  6c2fa6bd4ac =  87:  ac55092c01d gvfs-helper-client.h: define struct object_id
 88:  03cfdaa8338 =  88:  ec417864e55 gvfs-helper: handle pack-file after single POST request
 89:  6f69b270e0f =  89:  4f629235270 test-gvfs-prococol, t5799: tests for gvfs-helper
 90:  f97ef3bef12 =  90:  1716ba80a43 gvfs-helper: move result-list construction into install functions
 91:  e8543f75ed7 =  91:  20ffe0ccd1c t5799: add support for POST to return either a loose object or packfile
 92:  376b1235fe6 =  92:  1b786c8b725 t5799: cleanup wc-l and grep-c lines
 93:  6c5d207a13d =  93:  24a8ed20ffb gvfs-helper: add prefetch support
 94:  2729138fc65 =  94:  6d69f8fb3dc gvfs-helper: add prefetch .keep file for last packfile
 95:  076972a4aca =  95:  228876a4f62 gvfs-helper: do one read in my_copy_fd_len_tail()
 96:  86c49e67d9f =  96:  8c8a1dcad60 gvfs-helper: move content-type warning for prefetch packs
 97:  5da693a6da5 =  97:  d9d61ffc977 fetch: use gvfs-helper prefetch under config
 98:  79fd7614bc5 =  98:  4e510c3456b gvfs-helper: better support for concurrent packfile fetches
 99:  1a44eecdc96 =  99:  b5bcbc82c3c remote-curl: do not call fetch-pack when using gvfs-helper
100:  cfe30433a2e = 100:  7f285d1374b fetch: reprepare packs before checking connectivity
101:  1b4b87de616 = 101:  567cd8d6405 gvfs-helper: retry when creating temp files
102:  38088906e28 = 102:  289f0e83f59 gvfs-helper: fix support for NTLM
103:  f0f0e3facb9 = 103:  8d3dd7f33b8 gvfs-helper: cleanup NTLM fix
104:  e4018742249 ! 104:  35312de7db6 upload-pack: fix race condition in error messages
    @@ Commit message
         Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
     
      ## upload-pack.c ##
    -@@ upload-pack.c: static void check_non_tip(struct object_array *want_obj,
    - 	for (i = 0; i < want_obj->nr; i++) {
    - 		struct object *o = want_obj->objects[i].item;
    - 		if (!is_our_ref(o)) {
    +@@ upload-pack.c: static void check_non_tip(struct upload_pack_data *data)
    + 	for (i = 0; i < data->want_obj.nr; i++) {
    + 		struct object *o = data->want_obj.objects[i].item;
    + 		if (!is_our_ref(o, data->allow_uor)) {
     +			warning("git upload-pack: not our ref %s",
     +				oid_to_hex(&o->oid));
    - 			packet_writer_error(writer,
    + 			packet_writer_error(&data->writer,
      					    "upload-pack: not our ref %s",
      					    oid_to_hex(&o->oid));
     -			die("git upload-pack: not our ref %s",
105:  b0fa428765e <   -:  ---------- msvc: fix "REG_STARTEND" issue

@derrickstolee derrickstolee force-pushed the tentative/vfs-2.28.0 branch 3 times, most recently from 8bd9eb0 to 44d3eda Compare July 20, 2020 12:20
@derrickstolee derrickstolee force-pushed the tentative/vfs-2.28.0 branch 2 times, most recently from 96d2ac8 to f496cd0 Compare July 28, 2020 01:12
@derrickstolee derrickstolee merged commit f496cd0 into vfs-2.28.0 Jul 28, 2020
derrickstolee added a commit to microsoft/VFSForGit that referenced this pull request Jul 28, 2020
derrickstolee added a commit to microsoft/scalar that referenced this pull request Jul 28, 2020
See microsoft/git#283.

The new logic around `core.repositoryFormatVersion` and `extensions.*` config options causes problems in Scalar due to our use of sparse-checkout. This is resolved by some upstream fixes and some more careful config here.
@derrickstolee derrickstolee deleted the tentative/vfs-2.28.0 branch March 30, 2021 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants