Replies: 1 comment
-
Update! Almost all of our external storage stuff is done with #1587 (thanks @marwan-at-work 😄 ). Let's move on to offline mode support |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I was going through some old issues today and noticed a bunch of them fall into two major categories:
I want to post this publicly, but not before I get some feedback and edits. What better place to do it than here!
Storage Drivers
This one is fairly easy to categorize. There are some issues that flat out ask for more storage drivers, some PRs that have tried it, or some issues that storage drivers might fix:
http
#1131$GOPATH/pkg/mod
directoryDelete
method in the storageinterface
Offline Mode
This one is more nuanced, and also related to storage drivers. Athens has always tried to function while cut off from the internet. That's easier said than done since the proxy protocol has a mix of immutable and immutable endpoints. And adding the checksum DB on top makes it even more difficult.
Right now, Athens can run air-gapped if storage is full of all module versions that someone has in their
go.sum
. That's a common case for most teams. Lucky for us, if a team doesn't do ago get -u
, or any other command that hits a mutable proxy endpoint, then Athens won't have to reach out to the internet for mutable module metadata or checksum information.Over time, people have wanted to start doing those things though. Not much work has started on making a full "offline mode", so there are mostly issues.
/list
API. It's almost a subset of the Availability vs. correctness in list API #1532 discussion, but it has some of Uber's needs and use cases, and that leads into custom storage drivers as wellThat's it
It's late so I didn't have time to make this more coherent. I think that we have enough use cases and desire to build in some kind of support for storage drivers.
Offline mode seems amorphous right now, but I think we're close to having a good idea what we need to do. When we have it, I'm sensing that it'll be a popular feature.
I'm looking forward to hearing what you all think!
Beta Was this translation helpful? Give feedback.
All reactions