Skip to content

Commit ed05266

Browse files
catsoutrefi64
authored andcommitted
node: Fix non tgz index_entry not valied on npm 8 by adding reqHeaders
1 parent 341fa77 commit ed05266

1 file changed

Lines changed: 15 additions & 3 deletions

File tree

  • node/flatpak_node_generator/providers

node/flatpak_node_generator/providers/npm.py

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,10 @@
3434
from . import LockfileProvider, ModuleProvider, ProviderFactory, RCFileProvider
3535
from .special import SpecialSourceProvider
3636

37+
_NPM_CORGIDOC = (
38+
'application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*'
39+
)
40+
3741

3842
class NpmLockfileProvider(LockfileProvider):
3943
_ALIAS_RE = re.compile(r'^npm:(.[^@]*)@(.*)$')
@@ -163,8 +167,14 @@ def get_cacache_content_path(self, integrity: Integrity) -> Path:
163167
/ self.get_cacache_integrity_path(integrity)
164168
)
165169

166-
def add_index_entry(self, url: str, metadata: RemoteUrlMetadata) -> None:
170+
def add_index_entry(
171+
self,
172+
url: str,
173+
metadata: RemoteUrlMetadata,
174+
request_headers: Dict[str, str] = {},
175+
) -> None:
167176
key = f'make-fetch-happen:request-cache:{url}'
177+
168178
index_json = json.dumps(
169179
{
170180
'key': key,
@@ -173,7 +183,7 @@ def add_index_entry(self, url: str, metadata: RemoteUrlMetadata) -> None:
173183
'size': metadata.size,
174184
'metadata': {
175185
'url': url,
176-
'reqHeaders': {},
186+
'reqHeaders': request_headers,
177187
'resHeaders': {},
178188
},
179189
}
@@ -304,7 +314,9 @@ def _finalize(self) -> None:
304314
)
305315
content_path = self.get_cacache_content_path(metadata.integrity)
306316
self.gen.add_data_source(raw_data, content_path)
307-
self.add_index_entry(index.url, metadata)
317+
self.add_index_entry(
318+
index.url, metadata, request_headers={'accept': _NPM_CORGIDOC}
319+
)
308320

309321
patch_commands: DefaultDict[Path, List[str]] = collections.defaultdict(
310322
lambda: []

0 commit comments

Comments
 (0)