Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use IPLD for IPFS binary cache #15

Merged
merged 21 commits into from
Jun 18, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
f1d6066
Move ipfs-specific method to own functions
matthewbauer Jun 15, 2020
4ca9724
Correctly specify visibility of ipfs-binary-cache-store
matthewbauer Jun 15, 2020
784e786
Add ipfsObjectExists
matthewbauer Jun 15, 2020
ca1a565
Fixup ipfs-binary-cache-store modifiers
matthewbauer Jun 15, 2020
054cabf
Add dag helper methods
matthewbauer Jun 15, 2020
df3aea2
Implement Store directly instead of via BinaryCacheStore
matthewbauer Jun 16, 2020
213ded3
Remove offline from publish
matthewbauer Jun 16, 2020
93d71ae
Use IPLD instead of UnixFS
matthewbauer Jun 16, 2020
d1fc077
Make error message more idiomatic
matthewbauer Jun 16, 2020
afb080b
Merge remote-tracking branch 'obsidian/ipfs-binary-cache-develop' int…
Ericson2314 Jun 17, 2020
9408826
Merge remote-tracking branch 'obsidian/ipfs-binary-cache-develop' int…
Ericson2314 Jun 17, 2020
7fa8391
Properly store compression / system in ipfs binary cache
matthewbauer Jun 17, 2020
5caf620
Increment CURLOPT_EXPECT_100_TIMEOUT_MS to 5 min
matthewbauer Jun 17, 2020
2c89c62
Set allow-offline=true on publish
matthewbauer Jun 18, 2020
f70023a
Merge remote-tracking branch 'obsidiansystems/cn-fix-ipns-upload' int…
matthewbauer Jun 18, 2020
ed0e05d
Add note regarding key lookup
matthewbauer Jun 18, 2020
81abf59
Verify a derivation with dependencies works in ipfs
matthewbauer Jun 18, 2020
9da7b5b
Merge remote-tracking branch 'obsidiansystems/ipfs-binary-cache-devel…
matthewbauer Jun 18, 2020
ba7a4b7
Readd ipfs gateway tests
matthewbauer Jun 18, 2020
9e4268d
Add FIXME for CURLOPT_EXPECT_100_TIMEOUT_MS
matthewbauer Jun 18, 2020
61997ab
Merge remote-tracking branch 'obsidiansystems/ipfs-binary-cache-devel…
matthewbauer Jun 18, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions src/libstore/filetransfer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,14 @@ struct curlFileTransfer : public FileTransfer
curl_easy_setopt(req, CURLOPT_LOW_SPEED_LIMIT, 1L);
curl_easy_setopt(req, CURLOPT_LOW_SPEED_TIME, fileTransferSettings.stalledDownloadTimeout.get());

/* FIXME: We hit a weird issue when 1 second goes by
* without Expect: 100-continue. curl_multi_perform
* appears to block indefinitely. To workaround this, we
* just set the timeout to a really big value unlikely to
* be hit in any server without Expect: 100-continue. This
* may specifically be a bug in the IPFS API. */
curl_easy_setopt(req, CURLOPT_EXPECT_100_TIMEOUT_MS, 300000);

/* If no file exist in the specified path, curl continues to work
anyway as if netrc support was disabled. */
curl_easy_setopt(req, CURLOPT_NETRC_FILE, settings.netrcFile.get().c_str());
Expand Down
Loading