[racket] the current package submission system is a mess

From: Jay McCarthy (jay.mccarthy at gmail.com)
Date: Thu Nov 6 11:58:22 EST 2014

On Wed, Nov 5, 2014 at 9:19 PM,  <scott at thinkmoore.net> wrote:
> I also ran into trouble that it seemed like the correct url for a github
> repo is not git: but github:, and it needed the branch name tacked on at the
> end.

This is not correct. If you refer to the package source documentation
I linked before, there are two syntaxes for a Github repo:

git://github.com/‹user›/‹repo›[.git][/][?path=‹path›][#‹rev›]

and

github://github.com/‹user›/‹repo›/‹rev›[/‹path›]

The second is considered "old" and provided for backwards
compatibility with an early version of the package system, before it
was stable.

Jay

> On Wed, Nov 5, 2014 at 8:55 PM, Jay McCarthy <jay.mccarthy at gmail.com> wrote:
>>
>> Hi Ryan,
>>
>>
>> On Wed, Nov 5, 2014 at 7:14 PM, Ryan Davis <zenspider at gmail.com> wrote:
>> > The package submission system is hostile and incredibly frustrating to
>> > use.
>> >
>> > I've tried a bazillion times now to submit a package (check-sexp-equal)
>> > and ensure that:
>> >
>> > 1) the source points to a git repo properly: it keeps going to an https
>> > url and then fails on install because it doesn't have a MANIFEST file.
>> > Subsequent changes to git: protocol urls get reverted silently.
>>
>> When you use an HTTP(S) URL that points to a directory, such as
>> "https://github.com/zenspider/check-sexp-equal/" then this means to
>> take the directory and look for a MANIFEST file with a list of the
>> other files to get. This is because HTTP does not provide a directory
>> browsing feature. This is documented where package sources are [1] in
>> bullet four, labeled "a remote URL naming a directory".
>>
>> You probably meant to name a Github repository, with the syntax...
>> git://github.com/‹user›/‹repo›
>>
>> If you look at an example package, such as samth's abnf [2], you'll
>> see that his source is: "git://github.com/samth/abnf". For
>> convenience, the Web site makes this package source and Web link to
>> the Github WWW interface, "http://github.com/samth/abnf/tree/master".
>> But that link is not the source. The source is thing displayed next to
>> "Source:".
>>
>> It is possible that we could make something like, "I see you are using
>> HTTPS for a Github package, are you sure that's what you want?"
>> Similarly, it is not intuitive that the "Copy link address" isn't a
>> good thing to copy for the source, although I'm afraid I'm at a loss
>> for where else would be a better place to put the link to the source
>> code. Do you have any ideas?
>>
>> 1.
>> http://docs.racket-lang.org/pkg/Package_Concepts.html#%28part._concept~3asource%29
>> 2. http://pkgs.racket-lang.org/#[abnf]
>>
>> I assume that the behavior you're seeing of "changes ... get reverted
>> silently" is because of what I comment on in the next item.
>>
>> > 2) it is tagged properly: the tags deleted themselves and now I can't
>> > edit the tags.
>>
>> When you input a new tag, the Web page you are seeing reflects your
>> changes, but those changes are not necessarily updated through-out the
>> world or when you hit refresh. When you refresh (and in the original
>> window) it says (at the top in yellow), "update upload being computed:
>> the information below may not represent all recent changes and
>> updates".
>>
>> I need to improve the UI when the update computation fails. I assume
>> that something happened on the server that lost the update and lost
>> the changes you made.
>>
>> > 3) it is deleted. If nobody can install it, maybe I should delete it and
>> > start over? Can't.
>>
>> You don't need to delete it, you can just change the source. Of
>> course, the reason deletion didn't work is because updates were broken
>> on the server side.
>>
>> > Now when I reload the page it just says "Logging in..." at the top. Is
>> > this why my edits aren't going through?
>>
>> Yes, that means the server is busted and needs to be kicked, which I
>> have done. I presume it died in the middle of your updates, which is
>> why they were lost.
>>
>> > There's no way to log out, it seems. I guess I can forcibly delete any
>> > cookies for the domain, but is this really the way?
>>
>> If you are logged in, there is a log out button. If you are not logged
>> in (such as being in the middle of "Logging in...") then you can't log
>> out, because you aren't in.
>>
>> > I have no idea how to fix this at this point and need help. I'd be happy
>> > if the package were obliterated and I could start over.
>>
>> I believe you just want to change your source to
>> "git://github.com/zenspider/check-sexp-equal" or something similar.
>>
>> > I just want to share code with you guys.
>> >
>> > This shouldn't be painful.
>> >
>> > I should want to do it again.
>>
>> I'm sorry that it was painful. I'm very interested in trying to
>> improve and increase the reliability of the server. I'm happy to work
>> with you on it. I'm "jeapostrophe" on the IRC channel and I'm happy to
>> PM you my cell if that would be a more convenient way to work through
>> it.
>>
>> Jay
>>
>> >
>> > ____________________
>> > Racket Users list:
>> > http://lists.racket-lang.org/users
>>
>>
>>
>> --
>> Jay McCarthy
>> http://jeapostrophe.github.io
>>
>> "Wherefore, be not weary in well-doing,
>> for ye are laying the foundation of a great work.
>> And out of small things proceedeth that which is great."
>> - D&C 64:33
>>
>> ____________________
>> Racket Users list:
>> http://lists.racket-lang.org/users
>
>



-- 
Jay McCarthy
http://jeapostrophe.github.io

           "Wherefore, be not weary in well-doing,
      for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
                          - D&C 64:33


Posted on the users mailing list.