-
Notifications
You must be signed in to change notification settings - Fork 7
Add download button near perspective and modal #205
Conversation
33421d3
to
beac0ad
Compare
I have some concerns about this one, even though I like the idea a lot! Share currently has a miscellaneous collection of releases and copies of trunk from different libraries, including base. If people download stuff from Share, they won't have an easy way to know what version they're using and there's a good chance it's one that isn't actively being supported by the maintainers (like it has an old version of a data type that existed in trunk temporarily but was refactored). If people are going to download an unreleased thing meant as more of a preview, that should be indicated somehow. Also, we're missing some indication of where the library's canonical location is, if you want to contribute changes back. I do want library installation to be this easy and discoverable but I'm concerned that this button makes it easy to accidentally do the wrong thing and create a mess. I'm not sure what to do about this:
|
@pchiusano yeah I think this is a very valid concern (I brought this up in #base-dev a few days ago). Especially with I think the right solution here has to do with projects, but in lieu of that, the readme option seems like a high impact, low effort way to deal with this without making things difficult for us later when we find out how to deal with projects. Alternative, (or perhaps simultaneously) we can try brainstorm on the project dependency features with download from Share particularly in mind for a v1 of projects. |
The Readmes are a good idea, but there's the problem of what to do about all the stuff that's already on Share that has no Readme. I think rebuilding Share from a transcript would go a long way and is doable in short order. I think we could also put version hints in the namespaces. Like put random snapshots of trunk in a
And maybe the modal gives some warning if you're downloading something from the |
I'm worried about cluttering the namespaces with structure that should really be meta data resulting in strange download commands, but perhaps there's a decent middle ground there. Let's connect on this and the transcript idea, it's not clear to me how we get meta data around the canonical location into Share. |
beac0ad
to
9dea545
Compare
I'm going to extract the non download modal parts of this into a separate PR. Edits:
|
Add a new download button near the perspective details that when clicked shows a new download modal with `pull` instructions and a command copy field. This button only shows up on Unison Share. The copy field uses a webcomponent to reach out from Elm into JS and access the clipboard. The download command being generated also uncovered a problem with the way FQNs were being deserialized, such that they'd always include a . prefix. This lead to some strange URLs and didn't buy us anything and was removed.
9dea545
to
aac3ac1
Compare
Closing in favor of #278 |
Overview
Add a new download button near the perspective details that when clicked
shows a new download modal with
pull
instructions and a command copyfield. This button only shows up on Unison Share.
This fixes #145
Implementation notes
The copy field uses a webcomponent to reach out from Elm into JS and
access the clipboard.
Interesting/controversial decisions
The download command being generated also uncovered a problem with theway FQNs were being deserialized, such that they'd always include a .
prefix. This lead to some strange URLs and didn't buy us anything and was removed.
Extracted the FQN dot fix into #210