isomorphic-git 1.40.4 → 1.40.5

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.
package/index.cjs CHANGED
@@ -9572,8 +9572,8 @@ function filterCapabilities(server, client) {
9572
9572
 
9573
9573
  const pkg = {
9574
9574
  name: 'isomorphic-git',
9575
- version: '1.40.4',
9576
- agent: 'git/isomorphic-git@1.40.4',
9575
+ version: '1.40.5',
9576
+ agent: 'git/isomorphic-git@1.40.5',
9577
9577
  };
9578
9578
 
9579
9579
  class FIFO {
@@ -11961,11 +11961,13 @@ function formatInfoRefs(remote, prefix, symrefs, peelTags) {
11961
11961
  const _key = key.replace('^{}', '');
11962
11962
  // Peeled tags are almost always listed immediately after the original tag
11963
11963
  const last = refs[refs.length - 1];
11964
- const r = last.ref === _key ? last : refs.find(x => x.ref === _key);
11965
- if (r === undefined) {
11966
- throw new Error('I did not expect this to happen')
11964
+ const r = last?.ref === _key ? last : refs.find(x => x.ref === _key);
11965
+ // The tag itself can be absent when `prefix` filtered it out: the
11966
+ // peeled name is longer, so it can match a prefix the tag does not.
11967
+ // There is nothing to attach the peeled oid to, so drop it.
11968
+ if (r !== undefined) {
11969
+ r.peeled = value;
11967
11970
  }
11968
- r.peeled = value;
11969
11971
  }
11970
11972
  continue
11971
11973
  }
package/index.js CHANGED
@@ -9559,8 +9559,8 @@ function filterCapabilities(server, client) {
9559
9559
 
9560
9560
  const pkg = {
9561
9561
  name: 'isomorphic-git',
9562
- version: '1.40.4',
9563
- agent: 'git/isomorphic-git@1.40.4',
9562
+ version: '1.40.5',
9563
+ agent: 'git/isomorphic-git@1.40.5',
9564
9564
  };
9565
9565
 
9566
9566
  class FIFO {
@@ -11948,11 +11948,13 @@ function formatInfoRefs(remote, prefix, symrefs, peelTags) {
11948
11948
  const _key = key.replace('^{}', '');
11949
11949
  // Peeled tags are almost always listed immediately after the original tag
11950
11950
  const last = refs[refs.length - 1];
11951
- const r = last.ref === _key ? last : refs.find(x => x.ref === _key);
11952
- if (r === undefined) {
11953
- throw new Error('I did not expect this to happen')
11951
+ const r = last?.ref === _key ? last : refs.find(x => x.ref === _key);
11952
+ // The tag itself can be absent when `prefix` filtered it out: the
11953
+ // peeled name is longer, so it can match a prefix the tag does not.
11954
+ // There is nothing to attach the peeled oid to, so drop it.
11955
+ if (r !== undefined) {
11956
+ r.peeled = value;
11954
11957
  }
11955
- r.peeled = value;
11956
11958
  }
11957
11959
  continue
11958
11960
  }