Show More
@@ -217,7 +217,8 b' class _gitlfsremote(object):' | |||||
217 | batchreq.add_header('Accept', 'application/vnd.git-lfs+json') |
|
217 | batchreq.add_header('Accept', 'application/vnd.git-lfs+json') | |
218 | batchreq.add_header('Content-Type', 'application/vnd.git-lfs+json') |
|
218 | batchreq.add_header('Content-Type', 'application/vnd.git-lfs+json') | |
219 | try: |
|
219 | try: | |
220 |
r |
|
220 | rsp = self.urlopener.open(batchreq) | |
|
221 | rawjson = rsp.read() | |||
221 | except util.urlerr.httperror as ex: |
|
222 | except util.urlerr.httperror as ex: | |
222 | raise LfsRemoteError(_('LFS HTTP error: %s (action=%s)') |
|
223 | raise LfsRemoteError(_('LFS HTTP error: %s (action=%s)') | |
223 | % (ex, action)) |
|
224 | % (ex, action)) | |
@@ -226,6 +227,19 b' class _gitlfsremote(object):' | |||||
226 | except ValueError: |
|
227 | except ValueError: | |
227 | raise LfsRemoteError(_('LFS server returns invalid JSON: %s') |
|
228 | raise LfsRemoteError(_('LFS server returns invalid JSON: %s') | |
228 | % rawjson) |
|
229 | % rawjson) | |
|
230 | ||||
|
231 | if self.ui.debugflag: | |||
|
232 | self.ui.debug('Status: %d\n' % rsp.status) | |||
|
233 | # lfs-test-server and hg serve return headers in different order | |||
|
234 | self.ui.debug('%s\n' | |||
|
235 | % '\n'.join(sorted(str(rsp.info()).splitlines()))) | |||
|
236 | ||||
|
237 | if 'objects' in response: | |||
|
238 | response['objects'] = sorted(response['objects'], | |||
|
239 | key=lambda p: p['oid']) | |||
|
240 | self.ui.debug('%s\n' | |||
|
241 | % json.dumps(response, indent=2, sort_keys=True)) | |||
|
242 | ||||
229 | return response |
|
243 | return response | |
230 |
|
244 | |||
231 | def _checkforservererror(self, pointers, responses, action): |
|
245 | def _checkforservererror(self, pointers, responses, action): | |
@@ -301,6 +315,13 b' class _gitlfsremote(object):' | |||||
301 | response = b'' |
|
315 | response = b'' | |
302 | try: |
|
316 | try: | |
303 | req = self.urlopener.open(request) |
|
317 | req = self.urlopener.open(request) | |
|
318 | ||||
|
319 | if self.ui.debugflag: | |||
|
320 | self.ui.debug('Status: %d\n' % req.status) | |||
|
321 | # lfs-test-server and hg serve return headers in different order | |||
|
322 | self.ui.debug('%s\n' | |||
|
323 | % '\n'.join(sorted(str(req.info()).splitlines()))) | |||
|
324 | ||||
304 | if action == 'download': |
|
325 | if action == 'download': | |
305 | # If downloading blobs, store downloaded data to local blobstore |
|
326 | # If downloading blobs, store downloaded data to local blobstore | |
306 | localstore.download(oid, req) |
|
327 | localstore.download(oid, req) |
@@ -54,7 +54,32 b' store.' | |||||
54 | checking for updated bookmarks |
|
54 | checking for updated bookmarks | |
55 | listing keys for "bookmarks" |
|
55 | listing keys for "bookmarks" | |
56 | lfs: computing set of blobs to upload |
|
56 | lfs: computing set of blobs to upload | |
|
57 | Status: 200 | |||
|
58 | Content-Length: 309 | |||
|
59 | Content-Type: application/vnd.git-lfs+json | |||
|
60 | Date: $HTTP_DATE$ | |||
|
61 | { | |||
|
62 | "objects": [ | |||
|
63 | { | |||
|
64 | "actions": { | |||
|
65 | "upload": { | |||
|
66 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
67 | "header": { | |||
|
68 | "Accept": "application/vnd.git-lfs" | |||
|
69 | }, | |||
|
70 | "href": "http://localhost:$HGPORT/objects/31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b" | |||
|
71 | } | |||
|
72 | }, | |||
|
73 | "oid": "31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b", | |||
|
74 | "size": 12 | |||
|
75 | } | |||
|
76 | ] | |||
|
77 | } | |||
57 | lfs: uploading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) |
|
78 | lfs: uploading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) | |
|
79 | Status: 200 | |||
|
80 | Content-Length: 0 | |||
|
81 | Content-Type: text/plain; charset=utf-8 | |||
|
82 | Date: $HTTP_DATE$ | |||
58 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b |
|
83 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b | |
59 | lfs: uploaded 1 files (12 bytes) |
|
84 | lfs: uploaded 1 files (12 bytes) | |
60 | 1 changesets found |
|
85 | 1 changesets found | |
@@ -99,7 +124,32 b' Clear the cache to force a download' | |||||
99 | resolving manifests |
|
124 | resolving manifests | |
100 | branchmerge: False, force: False, partial: False |
|
125 | branchmerge: False, force: False, partial: False | |
101 | ancestor: 000000000000, local: 000000000000+, remote: 99a7098854a3 |
|
126 | ancestor: 000000000000, local: 000000000000+, remote: 99a7098854a3 | |
|
127 | Status: 200 | |||
|
128 | Content-Length: 311 | |||
|
129 | Content-Type: application/vnd.git-lfs+json | |||
|
130 | Date: $HTTP_DATE$ | |||
|
131 | { | |||
|
132 | "objects": [ | |||
|
133 | { | |||
|
134 | "actions": { | |||
|
135 | "download": { | |||
|
136 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
137 | "header": { | |||
|
138 | "Accept": "application/vnd.git-lfs" | |||
|
139 | }, | |||
|
140 | "href": "http://localhost:$HGPORT/objects/31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b" | |||
|
141 | } | |||
|
142 | }, | |||
|
143 | "oid": "31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b", | |||
|
144 | "size": 12 | |||
|
145 | } | |||
|
146 | ] | |||
|
147 | } | |||
102 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) |
|
148 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) | |
|
149 | Status: 200 | |||
|
150 | Content-Length: 12 | |||
|
151 | Content-Type: text/plain; charset=utf-8 | |||
|
152 | Date: $HTTP_DATE$ | |||
103 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache |
|
153 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache | |
104 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b |
|
154 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b | |
105 | a: remote created -> g |
|
155 | a: remote created -> g | |
@@ -125,10 +175,65 b' When the server has some blobs already' | |||||
125 | listing keys for "bookmarks" |
|
175 | listing keys for "bookmarks" | |
126 | listing keys for "bookmarks" |
|
176 | listing keys for "bookmarks" | |
127 | lfs: computing set of blobs to upload |
|
177 | lfs: computing set of blobs to upload | |
|
178 | Status: 200 | |||
|
179 | Content-Length: 901 | |||
|
180 | Content-Type: application/vnd.git-lfs+json | |||
|
181 | Date: $HTTP_DATE$ | |||
|
182 | { | |||
|
183 | "objects": [ | |||
|
184 | { | |||
|
185 | "actions": { | |||
|
186 | "download": { | |||
|
187 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
188 | "header": { | |||
|
189 | "Accept": "application/vnd.git-lfs" | |||
|
190 | }, | |||
|
191 | "href": "http://localhost:$HGPORT/objects/31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b" | |||
|
192 | } | |||
|
193 | }, | |||
|
194 | "oid": "31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b", | |||
|
195 | "size": 12 | |||
|
196 | }, | |||
|
197 | { | |||
|
198 | "actions": { | |||
|
199 | "upload": { | |||
|
200 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
201 | "header": { | |||
|
202 | "Accept": "application/vnd.git-lfs" | |||
|
203 | }, | |||
|
204 | "href": "http://localhost:$HGPORT/objects/37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19" | |||
|
205 | } | |||
|
206 | }, | |||
|
207 | "oid": "37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19", | |||
|
208 | "size": 20 | |||
|
209 | }, | |||
|
210 | { | |||
|
211 | "actions": { | |||
|
212 | "upload": { | |||
|
213 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
214 | "header": { | |||
|
215 | "Accept": "application/vnd.git-lfs" | |||
|
216 | }, | |||
|
217 | "href": "http://localhost:$HGPORT/objects/d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998" | |||
|
218 | } | |||
|
219 | }, | |||
|
220 | "oid": "d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998", | |||
|
221 | "size": 19 | |||
|
222 | } | |||
|
223 | ] | |||
|
224 | } | |||
128 | lfs: need to transfer 2 objects (39 bytes) |
|
225 | lfs: need to transfer 2 objects (39 bytes) | |
129 | lfs: uploading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) |
|
226 | lfs: uploading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) | |
|
227 | Status: 200 | |||
|
228 | Content-Length: 0 | |||
|
229 | Content-Type: text/plain; charset=utf-8 | |||
|
230 | Date: $HTTP_DATE$ | |||
130 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 |
|
231 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 | |
131 | lfs: uploading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) |
|
232 | lfs: uploading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) | |
|
233 | Status: 200 | |||
|
234 | Content-Length: 0 | |||
|
235 | Content-Type: text/plain; charset=utf-8 | |||
|
236 | Date: $HTTP_DATE$ | |||
132 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 |
|
237 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 | |
133 | lfs: uploaded 2 files (39 bytes) |
|
238 | lfs: uploaded 2 files (39 bytes) | |
134 | 1 changesets found |
|
239 | 1 changesets found | |
@@ -175,11 +280,53 b' Clear the cache to force a download' | |||||
175 | resolving manifests |
|
280 | resolving manifests | |
176 | branchmerge: False, force: False, partial: False |
|
281 | branchmerge: False, force: False, partial: False | |
177 | ancestor: 99a7098854a3, local: 99a7098854a3+, remote: dfca2c9e2ef2 |
|
282 | ancestor: 99a7098854a3, local: 99a7098854a3+, remote: dfca2c9e2ef2 | |
|
283 | Status: 200 | |||
|
284 | Content-Length: 608 | |||
|
285 | Content-Type: application/vnd.git-lfs+json | |||
|
286 | Date: $HTTP_DATE$ | |||
|
287 | { | |||
|
288 | "objects": [ | |||
|
289 | { | |||
|
290 | "actions": { | |||
|
291 | "download": { | |||
|
292 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
293 | "header": { | |||
|
294 | "Accept": "application/vnd.git-lfs" | |||
|
295 | }, | |||
|
296 | "href": "http://localhost:$HGPORT/objects/37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19" | |||
|
297 | } | |||
|
298 | }, | |||
|
299 | "oid": "37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19", | |||
|
300 | "size": 20 | |||
|
301 | }, | |||
|
302 | { | |||
|
303 | "actions": { | |||
|
304 | "download": { | |||
|
305 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
306 | "header": { | |||
|
307 | "Accept": "application/vnd.git-lfs" | |||
|
308 | }, | |||
|
309 | "href": "http://localhost:$HGPORT/objects/d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998" | |||
|
310 | } | |||
|
311 | }, | |||
|
312 | "oid": "d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998", | |||
|
313 | "size": 19 | |||
|
314 | } | |||
|
315 | ] | |||
|
316 | } | |||
178 | lfs: need to transfer 2 objects (39 bytes) |
|
317 | lfs: need to transfer 2 objects (39 bytes) | |
179 | lfs: downloading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) |
|
318 | lfs: downloading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) | |
|
319 | Status: 200 | |||
|
320 | Content-Length: 20 | |||
|
321 | Content-Type: text/plain; charset=utf-8 | |||
|
322 | Date: $HTTP_DATE$ | |||
180 | lfs: adding 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 to the usercache |
|
323 | lfs: adding 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 to the usercache | |
181 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 |
|
324 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 | |
182 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) |
|
325 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) | |
|
326 | Status: 200 | |||
|
327 | Content-Length: 19 | |||
|
328 | Content-Type: text/plain; charset=utf-8 | |||
|
329 | Date: $HTTP_DATE$ | |||
183 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache |
|
330 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache | |
184 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 |
|
331 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 | |
185 | b: remote created -> g |
|
332 | b: remote created -> g | |
@@ -206,7 +353,32 b' Test a corrupt file download, but clear ' | |||||
206 | resolving manifests |
|
353 | resolving manifests | |
207 | branchmerge: False, force: True, partial: False |
|
354 | branchmerge: False, force: True, partial: False | |
208 | ancestor: dfca2c9e2ef2+, local: dfca2c9e2ef2+, remote: dfca2c9e2ef2 |
|
355 | ancestor: dfca2c9e2ef2+, local: dfca2c9e2ef2+, remote: dfca2c9e2ef2 | |
|
356 | Status: 200 | |||
|
357 | Content-Length: 311 | |||
|
358 | Content-Type: application/vnd.git-lfs+json | |||
|
359 | Date: $HTTP_DATE$ | |||
|
360 | { | |||
|
361 | "objects": [ | |||
|
362 | { | |||
|
363 | "actions": { | |||
|
364 | "download": { | |||
|
365 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
366 | "header": { | |||
|
367 | "Accept": "application/vnd.git-lfs" | |||
|
368 | }, | |||
|
369 | "href": "http://localhost:$HGPORT/objects/d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998" | |||
|
370 | } | |||
|
371 | }, | |||
|
372 | "oid": "d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998", | |||
|
373 | "size": 19 | |||
|
374 | } | |||
|
375 | ] | |||
|
376 | } | |||
209 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) |
|
377 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) | |
|
378 | Status: 200 | |||
|
379 | Content-Length: 7 | |||
|
380 | Content-Type: text/plain; charset=utf-8 | |||
|
381 | Date: $HTTP_DATE$ | |||
210 | abort: corrupt remote lfs object: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 |
|
382 | abort: corrupt remote lfs object: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 | |
211 | [255] |
|
383 | [255] | |
212 |
|
384 | |||
@@ -235,6 +407,27 b' Test a corrupted file upload' | |||||
235 | listing keys for "bookmarks" |
|
407 | listing keys for "bookmarks" | |
236 | listing keys for "bookmarks" |
|
408 | listing keys for "bookmarks" | |
237 | lfs: computing set of blobs to upload |
|
409 | lfs: computing set of blobs to upload | |
|
410 | Status: 200 | |||
|
411 | Content-Length: 309 | |||
|
412 | Content-Type: application/vnd.git-lfs+json | |||
|
413 | Date: $HTTP_DATE$ | |||
|
414 | { | |||
|
415 | "objects": [ | |||
|
416 | { | |||
|
417 | "actions": { | |||
|
418 | "upload": { | |||
|
419 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
420 | "header": { | |||
|
421 | "Accept": "application/vnd.git-lfs" | |||
|
422 | }, | |||
|
423 | "href": "http://localhost:$HGPORT/objects/e659058e26b07b39d2a9c7145b3f99b41f797b6621c8076600e9cb7ee88291f0" | |||
|
424 | } | |||
|
425 | }, | |||
|
426 | "oid": "e659058e26b07b39d2a9c7145b3f99b41f797b6621c8076600e9cb7ee88291f0", | |||
|
427 | "size": 17 | |||
|
428 | } | |||
|
429 | ] | |||
|
430 | } | |||
238 | lfs: uploading e659058e26b07b39d2a9c7145b3f99b41f797b6621c8076600e9cb7ee88291f0 (17 bytes) |
|
431 | lfs: uploading e659058e26b07b39d2a9c7145b3f99b41f797b6621c8076600e9cb7ee88291f0 (17 bytes) | |
239 | abort: detected corrupt lfs object: e659058e26b07b39d2a9c7145b3f99b41f797b6621c8076600e9cb7ee88291f0 |
|
432 | abort: detected corrupt lfs object: e659058e26b07b39d2a9c7145b3f99b41f797b6621c8076600e9cb7ee88291f0 | |
240 | (run hg verify) |
|
433 | (run hg verify) | |
@@ -245,14 +438,73 b' Archive will prefetch blobs in a group' | |||||
245 | $ rm -rf .hg/store/lfs `hg config lfs.usercache` |
|
438 | $ rm -rf .hg/store/lfs `hg config lfs.usercache` | |
246 | $ hg archive --debug -r 1 ../archive |
|
439 | $ hg archive --debug -r 1 ../archive | |
247 | http auth: user foo, password *** |
|
440 | http auth: user foo, password *** | |
|
441 | Status: 200 | |||
|
442 | Content-Length: 905 | |||
|
443 | Content-Type: application/vnd.git-lfs+json | |||
|
444 | Date: $HTTP_DATE$ | |||
|
445 | { | |||
|
446 | "objects": [ | |||
|
447 | { | |||
|
448 | "actions": { | |||
|
449 | "download": { | |||
|
450 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
451 | "header": { | |||
|
452 | "Accept": "application/vnd.git-lfs" | |||
|
453 | }, | |||
|
454 | "href": "http://localhost:$HGPORT/objects/31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b" | |||
|
455 | } | |||
|
456 | }, | |||
|
457 | "oid": "31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b", | |||
|
458 | "size": 12 | |||
|
459 | }, | |||
|
460 | { | |||
|
461 | "actions": { | |||
|
462 | "download": { | |||
|
463 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
464 | "header": { | |||
|
465 | "Accept": "application/vnd.git-lfs" | |||
|
466 | }, | |||
|
467 | "href": "http://localhost:$HGPORT/objects/37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19" | |||
|
468 | } | |||
|
469 | }, | |||
|
470 | "oid": "37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19", | |||
|
471 | "size": 20 | |||
|
472 | }, | |||
|
473 | { | |||
|
474 | "actions": { | |||
|
475 | "download": { | |||
|
476 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
477 | "header": { | |||
|
478 | "Accept": "application/vnd.git-lfs" | |||
|
479 | }, | |||
|
480 | "href": "http://localhost:$HGPORT/objects/d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998" | |||
|
481 | } | |||
|
482 | }, | |||
|
483 | "oid": "d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998", | |||
|
484 | "size": 19 | |||
|
485 | } | |||
|
486 | ] | |||
|
487 | } | |||
248 | lfs: need to transfer 3 objects (51 bytes) |
|
488 | lfs: need to transfer 3 objects (51 bytes) | |
249 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) |
|
489 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) | |
|
490 | Status: 200 | |||
|
491 | Content-Length: 12 | |||
|
492 | Content-Type: text/plain; charset=utf-8 | |||
|
493 | Date: $HTTP_DATE$ | |||
250 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache |
|
494 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache | |
251 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b |
|
495 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b | |
252 | lfs: downloading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) |
|
496 | lfs: downloading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) | |
|
497 | Status: 200 | |||
|
498 | Content-Length: 20 | |||
|
499 | Content-Type: text/plain; charset=utf-8 | |||
|
500 | Date: $HTTP_DATE$ | |||
253 | lfs: adding 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 to the usercache |
|
501 | lfs: adding 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 to the usercache | |
254 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 |
|
502 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 | |
255 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) |
|
503 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) | |
|
504 | Status: 200 | |||
|
505 | Content-Length: 19 | |||
|
506 | Content-Type: text/plain; charset=utf-8 | |||
|
507 | Date: $HTTP_DATE$ | |||
256 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache |
|
508 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache | |
257 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 |
|
509 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 | |
258 | lfs: found 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b in the local lfs store |
|
510 | lfs: found 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b in the local lfs store | |
@@ -272,11 +524,53 b' Cat will prefetch blobs in a group' | |||||
272 | $ rm -rf .hg/store/lfs `hg config lfs.usercache` |
|
524 | $ rm -rf .hg/store/lfs `hg config lfs.usercache` | |
273 | $ hg cat --debug -r 1 a b c |
|
525 | $ hg cat --debug -r 1 a b c | |
274 | http auth: user foo, password *** |
|
526 | http auth: user foo, password *** | |
|
527 | Status: 200 | |||
|
528 | Content-Length: 608 | |||
|
529 | Content-Type: application/vnd.git-lfs+json | |||
|
530 | Date: $HTTP_DATE$ | |||
|
531 | { | |||
|
532 | "objects": [ | |||
|
533 | { | |||
|
534 | "actions": { | |||
|
535 | "download": { | |||
|
536 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
537 | "header": { | |||
|
538 | "Accept": "application/vnd.git-lfs" | |||
|
539 | }, | |||
|
540 | "href": "http://localhost:$HGPORT/objects/31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b" | |||
|
541 | } | |||
|
542 | }, | |||
|
543 | "oid": "31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b", | |||
|
544 | "size": 12 | |||
|
545 | }, | |||
|
546 | { | |||
|
547 | "actions": { | |||
|
548 | "download": { | |||
|
549 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
550 | "header": { | |||
|
551 | "Accept": "application/vnd.git-lfs" | |||
|
552 | }, | |||
|
553 | "href": "http://localhost:$HGPORT/objects/d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998" | |||
|
554 | } | |||
|
555 | }, | |||
|
556 | "oid": "d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998", | |||
|
557 | "size": 19 | |||
|
558 | } | |||
|
559 | ] | |||
|
560 | } | |||
275 | lfs: need to transfer 2 objects (31 bytes) |
|
561 | lfs: need to transfer 2 objects (31 bytes) | |
276 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) |
|
562 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) | |
|
563 | Status: 200 | |||
|
564 | Content-Length: 12 | |||
|
565 | Content-Type: text/plain; charset=utf-8 | |||
|
566 | Date: $HTTP_DATE$ | |||
277 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache |
|
567 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache | |
278 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b |
|
568 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b | |
279 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) |
|
569 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) | |
|
570 | Status: 200 | |||
|
571 | Content-Length: 19 | |||
|
572 | Content-Type: text/plain; charset=utf-8 | |||
|
573 | Date: $HTTP_DATE$ | |||
280 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache |
|
574 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache | |
281 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 |
|
575 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 | |
282 | lfs: found 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b in the local lfs store |
|
576 | lfs: found 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b in the local lfs store | |
@@ -297,14 +591,73 b' Revert will prefetch blobs in a group' | |||||
297 | reverting b |
|
591 | reverting b | |
298 | reverting c |
|
592 | reverting c | |
299 | reverting d |
|
593 | reverting d | |
|
594 | Status: 200 | |||
|
595 | Content-Length: 905 | |||
|
596 | Content-Type: application/vnd.git-lfs+json | |||
|
597 | Date: $HTTP_DATE$ | |||
|
598 | { | |||
|
599 | "objects": [ | |||
|
600 | { | |||
|
601 | "actions": { | |||
|
602 | "download": { | |||
|
603 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
604 | "header": { | |||
|
605 | "Accept": "application/vnd.git-lfs" | |||
|
606 | }, | |||
|
607 | "href": "http://localhost:$HGPORT/objects/31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b" | |||
|
608 | } | |||
|
609 | }, | |||
|
610 | "oid": "31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b", | |||
|
611 | "size": 12 | |||
|
612 | }, | |||
|
613 | { | |||
|
614 | "actions": { | |||
|
615 | "download": { | |||
|
616 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
617 | "header": { | |||
|
618 | "Accept": "application/vnd.git-lfs" | |||
|
619 | }, | |||
|
620 | "href": "http://localhost:$HGPORT/objects/37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19" | |||
|
621 | } | |||
|
622 | }, | |||
|
623 | "oid": "37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19", | |||
|
624 | "size": 20 | |||
|
625 | }, | |||
|
626 | { | |||
|
627 | "actions": { | |||
|
628 | "download": { | |||
|
629 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
630 | "header": { | |||
|
631 | "Accept": "application/vnd.git-lfs" | |||
|
632 | }, | |||
|
633 | "href": "http://localhost:$HGPORT/objects/d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998" | |||
|
634 | } | |||
|
635 | }, | |||
|
636 | "oid": "d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998", | |||
|
637 | "size": 19 | |||
|
638 | } | |||
|
639 | ] | |||
|
640 | } | |||
300 | lfs: need to transfer 3 objects (51 bytes) |
|
641 | lfs: need to transfer 3 objects (51 bytes) | |
301 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) |
|
642 | lfs: downloading 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b (12 bytes) | |
|
643 | Status: 200 | |||
|
644 | Content-Length: 12 | |||
|
645 | Content-Type: text/plain; charset=utf-8 | |||
|
646 | Date: $HTTP_DATE$ | |||
302 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache |
|
647 | lfs: adding 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b to the usercache | |
303 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b |
|
648 | lfs: processed: 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b | |
304 | lfs: downloading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) |
|
649 | lfs: downloading 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 (20 bytes) | |
|
650 | Status: 200 | |||
|
651 | Content-Length: 20 | |||
|
652 | Content-Type: text/plain; charset=utf-8 | |||
|
653 | Date: $HTTP_DATE$ | |||
305 | lfs: adding 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 to the usercache |
|
654 | lfs: adding 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 to the usercache | |
306 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 |
|
655 | lfs: processed: 37a65ab78d5ecda767e8622c248b5dbff1e68b1678ab0e730d5eb8601ec8ad19 | |
307 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) |
|
656 | lfs: downloading d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 (19 bytes) | |
|
657 | Status: 200 | |||
|
658 | Content-Length: 19 | |||
|
659 | Content-Type: text/plain; charset=utf-8 | |||
|
660 | Date: $HTTP_DATE$ | |||
308 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache |
|
661 | lfs: adding d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 to the usercache | |
309 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 |
|
662 | lfs: processed: d11e1a642b60813aee592094109b406089b8dff4cb157157f753418ec7857998 | |
310 | lfs: found 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b in the local lfs store |
|
663 | lfs: found 31cf46fbc4ecd458a0943c5b4881f1f5a6dd36c53d6167d5b69ac45149b38e5b in the local lfs store | |
@@ -325,6 +678,27 b' Check error message when the remote miss' | |||||
325 | resolving manifests |
|
678 | resolving manifests | |
326 | branchmerge: False, force: True, partial: False |
|
679 | branchmerge: False, force: True, partial: False | |
327 | ancestor: 62fdbaf221c6+, local: 62fdbaf221c6+, remote: ef0564edf47e |
|
680 | ancestor: 62fdbaf221c6+, local: 62fdbaf221c6+, remote: ef0564edf47e | |
|
681 | Status: 200 | |||
|
682 | Content-Length: 308 | |||
|
683 | Content-Type: application/vnd.git-lfs+json | |||
|
684 | Date: $HTTP_DATE$ | |||
|
685 | { | |||
|
686 | "objects": [ | |||
|
687 | { | |||
|
688 | "actions": { | |||
|
689 | "upload": { | |||
|
690 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
691 | "header": { | |||
|
692 | "Accept": "application/vnd.git-lfs" | |||
|
693 | }, | |||
|
694 | "href": "http://localhost:$HGPORT/objects/8e6ea5f6c066b44a0efa43bcce86aea73f17e6e23f0663df0251e7524e140a13" | |||
|
695 | } | |||
|
696 | }, | |||
|
697 | "oid": "8e6ea5f6c066b44a0efa43bcce86aea73f17e6e23f0663df0251e7524e140a13", | |||
|
698 | "size": 6 | |||
|
699 | } | |||
|
700 | ] | |||
|
701 | } | |||
328 | abort: LFS server error. Remote object for "b" not found:(.*)! (re) |
|
702 | abort: LFS server error. Remote object for "b" not found:(.*)! (re) | |
329 | [255] |
|
703 | [255] | |
330 |
|
704 | |||
@@ -371,6 +745,27 b' Check error message when object does not' | |||||
371 | resolving manifests |
|
745 | resolving manifests | |
372 | branchmerge: False, force: False, partial: False |
|
746 | branchmerge: False, force: False, partial: False | |
373 | ancestor: 000000000000, local: 000000000000+, remote: d2a338f184a8 |
|
747 | ancestor: 000000000000, local: 000000000000+, remote: d2a338f184a8 | |
|
748 | Status: 200 | |||
|
749 | Content-Length: 308 | |||
|
750 | Content-Type: application/vnd.git-lfs+json | |||
|
751 | Date: $HTTP_DATE$ | |||
|
752 | { | |||
|
753 | "objects": [ | |||
|
754 | { | |||
|
755 | "actions": { | |||
|
756 | "upload": { | |||
|
757 | "expires_at": "$ISO_8601_DATE_TIME$", | |||
|
758 | "header": { | |||
|
759 | "Accept": "application/vnd.git-lfs" | |||
|
760 | }, | |||
|
761 | "href": "http://localhost:$HGPORT/objects/bdc26931acfb734b142a8d675f205becf27560dc461f501822de13274fe6fc8a" | |||
|
762 | } | |||
|
763 | }, | |||
|
764 | "oid": "bdc26931acfb734b142a8d675f205becf27560dc461f501822de13274fe6fc8a", | |||
|
765 | "size": 6 | |||
|
766 | } | |||
|
767 | ] | |||
|
768 | } | |||
374 | abort: LFS server error. Remote object for "a" not found:(.*)! (re) |
|
769 | abort: LFS server error. Remote object for "a" not found:(.*)! (re) | |
375 | [255] |
|
770 | [255] | |
376 |
|
771 |
General Comments 0
You need to be logged in to leave comments.
Login now