Skip to content
This repository has been archived by the owner on Feb 8, 2018. It is now read-only.

RubyGems.org integration #223

Closed
qrush opened this issue Aug 4, 2012 · 45 comments
Closed

RubyGems.org integration #223

qrush opened this issue Aug 4, 2012 · 45 comments

Comments

@qrush
Copy link

qrush commented Aug 4, 2012

Let's have gittip buttons on http://rubygems.org! We can fit a button in here:

Here's the problem:

  1. We only have emails from users, not GitHub usernames.
  2. Gems can have > 1 "owner" (email). The vast majority have 1 or 2.
  3. I'm not sure if we should allow tipping each author individually, or how that would be presented.
  4. I'd really prefer just to put an <a> tag in instead of an <iframe>. We could drop a little 16x16px logo in too.

This is probably doable after #89. Let's make it happen!

@steveklabnik
Copy link

👍

@steveklabnik
Copy link

The issue with <a> is that it's a GET, which is bad.... then again, it could just link to the author's gittip page.

@brianmario
Copy link

👍 maybe rubygems.org could let users link to their GitHub profiles via oauth like gittip?

@steveklabnik
Copy link

#27 relates to having tips go to a project, not a single author, which would solve the 'multiple authors' bit.

@qrush
Copy link
Author

qrush commented Aug 4, 2012

Right now I'm 👎 on adding GitHub usernames to RubyGems.org. Linking just via email seems barebones enough to work.

@benburton
Copy link

👍

@benjaminws
Copy link

👍

@BrandonMathis
Copy link

Link to gittip profile page so ppl can select how much monies they want to tip.

@chadwhitacre
Copy link
Contributor

This is really exciting. :-)

Consider #89 bumped up on my personal priority list.

@chadwhitacre
Copy link
Contributor

This is a notice that I'm on vacation this week. I'll be back on Friday, August 10 to run Gittip #10, and will pick up with development the week following. In an emergency please call my cell, +1-412-925-4220. Thanks!

@chadwhitacre
Copy link
Contributor

Okay, so to set expectations: My goal is to have giving to emails (#89) implemented by mid-September. I am prioritizing payouts (#22) and redesign (#66) ahead of that.

I am scheduled to be at XOXO in September, and I would really like to have something besides just GitHub in place before then. Since email synergizerizes with RubyGems and is basically the most open we could be (in terms of pledging to people who haven't necessarily joined yet) it seems like that's the one to tackle. Again, that ticket is #89. Let's keep this one for any RubyGems-specific issues.

@matin
Copy link
Contributor

matin commented Aug 27, 2012

I would much rather RubyGems give me the ability to choose to add my gittip account to my RubyGems profile. That gives me choice. This also goes along with the idea of the opt in model (#28).

I wouldn't want a gittip button for the balanced ruby gem, and it make me personally feel disingenuous asking someone to support me for working on a open source client for a company.

@chadwhitacre
Copy link
Contributor

I thought of a way to implement this. We can add these pages to Gittip:

  • /on/rubygems/gems/slim/
  • /on/rubygems/profiles/astone/
  • /on/rubygems/profiles/minad/
  • /on/rubygems/profiles/fredwu/

The first would be like a GitHub org page is now:

Screen shot 2012-12-13 at 11 12 53 AM

It would link to the gem and list the individuals associated with it. Then for /on/rubygems/profiles/ pages we'd have something similar to the other Twitter and GitHub profile pages on Gittip. However, you'd only be able to attach a RubyGems profile to an existing Gittip account. So if you were signed into Gittip you'd have the option to "Connect this RubyGems profile" or some such. That would fire an email with a link that would make the connection.

This is a variant of @lyndsysimon's suggestion on #89 for passwordless email verification. It's using email to handle the connection but not general authentication for Gittip.

@chadwhitacre
Copy link
Contributor

@matin I reticketed the opt-in/opt-out question as rubygems/rubygems.org#500.

@matin
Copy link
Contributor

matin commented Dec 13, 2012

@whit537 awesome! Get more gittip buttons out into the world, and drive more growth

@chadwhitacre
Copy link
Contributor

Sounds like @tehgeekmeister is going to take this on. Huzzah! :D

@heartpunk
Copy link
Contributor

Have this partially working on the rubygems side over at: rubygems/rubygems.org#505.

@heartpunk
Copy link
Contributor

This is blocked on build failures over on rubygems/rubygems.org#500. It looked like they were travis problems, rather than my code, and they were going to see about getting the CI to rerun. Haven't heard more since, so if someone else wants to follow up while I'm busy, we can get this out.

@chadwhitacre
Copy link
Contributor

Thanks @tehgeekmeister. I'm swamped with work for YouGov right now. Let's regroup in a day or two when things ease up for both of us and get this out there.

@heartpunk
Copy link
Contributor

Sounds good. I should have time at some point next week.

On Wednesday, January 16, 2013, Chad Whitacre wrote:

Thanks @tehgeekmeister https://github.com/tehgeekmeister. I swamped
with work for YouGov right now. Let's regroup when things ease up for both
of us and get this out there.


Reply to this email directly or view it on GitHubhttps://github.com/zetaweb/www.gittip.com/issues/223#issuecomment-12357839.

heartpunk added a commit to heartpunk/www.gittip.com that referenced this issue Jan 30, 2013
@chadwhitacre
Copy link
Contributor

I did some more work on this, posting to #575. See e317598 and ca0cad6.

@chadwhitacre
Copy link
Contributor

The two pages we need on the Gittip side are:

  • /on/rubygems/gems/slim/
  • /on/rubygems/profiles/stone/

/on/rubygems/gems/slim/

The first page we need is roughed in. The API call I'm seeing behind the gems page is:

https://rubygems.org/api/v1/gems/slim/owners.json

This appears to give us email addresses but nothing else. For each owner, we need RG username [required] and Gittip username [optional]. Does that info exist in another RG API? Can we add it to the owners.json endpoint? Once we have that info, we need to finish the /on/rubygems/gems/slim/ page. It should parallel the GitHub org page, where we group individuals by whether or not they're on Gittip, linking to Gittip accounts and allowing tips for those who are, and linking to /on/rubygems/profiles/foo/ for those who aren't.

/on/rubygems/profiles/astone/

The second page we need is an empty file at the moment. We need to implement it parallel to /on/twitter/foo/ and /on/github/individual/ pages. Here we need a JSON endpoint over on RG for a single profile, giving RG username [required] and Gittip username [optional].

@chadwhitacre
Copy link
Contributor

@tehgeekmeister Can you comment on the availability of these json endpoints on the RG side? I'm happy to handle the Gittip side if you can take care of us on the RG side.

@heartpunk
Copy link
Contributor

Yes, the first endpoint already exists. That's the only reason that page was working when I pushed it. It has to be tested, of course, against the relevant rubygems branch, because that endpoint doesn't exist in production yet.

Looks like the user API just doesn't exist. I can build that out, though! Shouldn't be hard, it's just a matter of when I get to it. I'll try for as early as tomorrow, but per my new rule, I don't commit to timelines.

Also, I honestly don't feel super motivated to fix any of the presentation stuff, unless no one else would be willing to fix that? I'm happy to get all the data in place and get it displaying on the page, so it's pretty simple work to fix, but stuff that's that far front end just isn't so compelling to me right now.

@chadwhitacre
Copy link
Contributor

@tehgeekmeister Awesome. If you handle the RubyGems API side, I'm happy to build out the Gittip front-end.

!m

@chadwhitacre
Copy link
Contributor

Per IRC convo, here's what we're looking at:

/api/v1/gems/{gem_name}/owners.json

[{ username: "username"                <= guaranteed
 , email: "email"                      <= guaranteed
 , gittip_username: "gittip_username"  <= will be missing (undefined) if the user hasn't set this
  }]


/api/v1/profiles/{username}.json

{ username: "username"                <= guaranteed
, email: "email"                      <= guaranteed
, gittip_username: "gittip_username"  <= will be missing (undefined) if the user hasn't set this
 }

Where gittip_username is only set if the user has opted into gittip integration with rubygems, and the JSON response from the profiles endpoint is only returned if the requested user exists. In both cases, if gem_name/username is unknown, we'll get an HTTP 404 from the endpoint with a json body with some explanatory text.

@heartpunk
Copy link
Contributor

^== comment partially written by me, so don't blame @whit537 if it's terribly wrong.

[ :) —ed.]

@chadwhitacre
Copy link
Contributor

http://blog.rubygems.org/2013/10/14/gittip.html

Blam! Yinz rawk. 🤘

!m *

@seanlinsley
Copy link
Contributor

I'm confused; the blog post says that you can change the Gittip username for a gem, but there isn't any such option. Instead, it generates https://www.gittip.com/on/rubygems/gem/[your gem]/ which doesn't appear to work.

@heartpunk
Copy link
Contributor

I don't believe there is any such option, and I hope I'd know as I wrote the ruby gems stuff. Maybe it's there and I forgot?


Sent from Mailbox for iPhone

On Tue, Oct 15, 2013 at 9:35 AM, Sean Linsley [email protected]
wrote:

I'm confused; the blog post says that you can change the Gittip username for a gem, but there isn't any such option. Instead, it generates https://www.gittip.com/on/rubygems/gem/[your gem]/ which doesn't appear to work.

Reply to this email directly or view it on GitHub:
#223 (comment)

@chadwhitacre
Copy link
Contributor

the blog post says that you can change the Gittip username for a gem

Does it? I'm not seeing that.

@heartpunk
Copy link
Contributor

Oh, no, I think there is! It's in the edit page for the gem, iirc.


Sent from Mailbox for iPhone

On Tue, Oct 15, 2013 at 9:35 AM, Sean Linsley [email protected]
wrote:

I'm confused; the blog post says that you can change the Gittip username for a gem, but there isn't any such option. Instead, it generates https://www.gittip.com/on/rubygems/gem/[your gem]/ which doesn't appear to work.

Reply to this email directly or view it on GitHub:
#223 (comment)

@chadwhitacre
Copy link
Contributor

You can now link to your Gittip account from your RubyGems profile page.

Gittip is a way to give small weekly cash gifts to people you love and are inspired by. You can find more details on the Gittip about page. If you don’t have a Gittip account you can quickly create one by clicking the sign-in button in the top-right corner and logging in through Twitter, Github or Bitbucket. You can also create a Gittip account for an organization.

After you’ve signed in, you can edit your RubyGems profile to include your Gittip username.

PS: Here is the RubyGems.org team account

@chadwhitacre
Copy link
Contributor

@daxter All I'm seeing reference to there is the profile-level integration. No?

@heartpunk
Copy link
Contributor

My original guess and Chad's reading of the post are right, I just reviewed
the code this is based off of. If the post is unclear, perhaps that should
be addressed, though?

On Tue, Oct 15, 2013 at 9:39 AM, Chad Whitacre [email protected]:

@daxter https://github.com/Daxter All I'm seeing reference to there is
the profile-level integration. No?


Reply to this email directly or view it on GitHubhttps://github.com//issues/223#issuecomment-26350943
.

@chadwhitacre
Copy link
Contributor

@tehgeekmeister If I'm reading https://github.com/rubygems/rubygems.org/pull/505/files right then we have a vestigial gittip_url on the Rubygem model, but it's not exposed in UI anywhere nor is it a field in the db. Am I reading that right?

@daxter Are you seeing something different?

@seanlinsley
Copy link
Contributor

Right now there's a Gittip link on Rubygems:
screen shot 2013-10-15 at 11 53 17 am
That goes to the URL https://www.gittip.com/on/rubygems/gem/[your gem]/, which results in a 404

@chadwhitacre
Copy link
Contributor

Okay, @daxter can you ticket that over at Rubygems? We should drop that link for the time being.

@heartpunk
Copy link
Contributor

Might be less work to just fix that on the gittip side. I'd be happy to update my work so it can be merged.


Sent from Mailbox for iPhone

On Tue, Oct 15, 2013 at 9:55 AM, Chad Whitacre [email protected]
wrote:

Okay, @daxter can you ticket that over at Rubygems? We should drop that link for the time being.

Reply to this email directly or view it on GitHub:
#223 (comment)

@heartpunk
Copy link
Contributor

s/less work/a better use of time/


Sent from Mailbox for iPhone

On Tue, Oct 15, 2013 at 9:55 AM, Chad Whitacre [email protected]
wrote:

Okay, @daxter can you ticket that over at Rubygems? We should drop that link for the time being.

Reply to this email directly or view it on GitHub:
#223 (comment)

@chadwhitacre
Copy link
Contributor

@tehgeekmeister The accounts elsewhere infrastructure is in the middle of a big refactor (#1369), so it's not really an appropriate time to make changes there. I'll see about a PR to RubyGems to disable the link at least.

@heartpunk
Copy link
Contributor

Alright, I can do that tonight.


Sent from Mailbox for iPhone

On Tue, Oct 15, 2013 at 10:32 AM, Chad Whitacre [email protected]
wrote:

@tehgeekmeister The accounts elsewhere infrastructure is in the middle of a big refactor (#1369), so it's not really an appropriate time to make changes there. I'll see about a PR to RubyGems to disable the link at least.

Reply to this email directly or view it on GitHub:
#223 (comment)

@chadwhitacre
Copy link
Contributor

Adding /on/rubygems pages reticketed as #1591.

@chadwhitacre
Copy link
Contributor

I've made a quick, untested PR: rubygems/rubygems.org#612

@heartpunk
Copy link
Contributor

I haven't tested it either (my ruby gems environment hasn't received any love in months), but it looks good to me!


Sent from Mailbox for iPhone

On Tue, Oct 15, 2013 at 11:06 AM, Chad Whitacre [email protected]
wrote:

I've made a quick, untested PR:

rubygems/rubygems.org#612

Reply to this email directly or view it on GitHub:
#223 (comment)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants