Coder Social home page Coder Social logo

Map bpo users to GitHub users about gh-migration HOT 15 CLOSED

psf avatar psf commented on June 23, 2024
Map bpo users to GitHub users

from gh-migration.

Comments (15)

gvanrossum avatar gvanrossum commented on June 23, 2024

Do you know (roughly) how many users are in the python org and how many are not?

from gh-migration.

ezio-melotti avatar ezio-melotti commented on June 23, 2024

There are ~210 users and ~70 external contributors under the "python" org on Github. This should include all the core devs and possibly some staff, triagers, and people working on other projects under the org. On bpo there are ~33k users.

In other words, only core devs will be mapped, and all the other contributors won't be mapped unless we find a solution (GitHub is aware of the issue and looking into it).

from gh-migration.

gvanrossum avatar gvanrossum commented on June 23, 2024

Thanks for indicating the scale. Creating 33k dummy GitHub users (while surely a drop in the bucket of so many millions of users) seems suboptimal, so I hope GitHub finds a solution. (If they don't, I hope that the dummy users at least links or provides a copy of that user's public bpo metadata -- IIRC there's at least an optional "real name"? And how bad would it be if it linked to the stated GH username, even if we can't verify that?)

from gh-migration.

ezio-melotti avatar ezio-melotti commented on June 23, 2024

As far as I understand, it doesn't create an actual dummy GitHub user -- it just shows the username and a (mannequin) tag next to it. Clicking or hovering on the username doesn't open a popup with the user info nor opens the user page. I also tried to set the full name for the mannequin user while importing the data, but the name doesn't show up anywhere.

This is how it looks like:
20211003--01

from gh-migration.

gvanrossum avatar gvanrossum commented on June 23, 2024

Good luck!

from gh-migration.

warsaw avatar warsaw commented on June 23, 2024

from gh-migration.

ezio-melotti avatar ezio-melotti commented on June 23, 2024

I believe this is by design, and that the migration tool was designed with self-hosted GitHub instances in mind. In that situation, all the users should belong to the organization, and users that are not in the org are likely former employers that left the org and should therefore be replaced by mannequins.

GitHub is checking if there's a way to map external users too. I've also been thinking about potential security concerns, and the only thing I can think of is that a bpo user could create issues or write comments on bpo and set their GitHub username on bpo to the username of e.g. a core dev. After the migration it will appear like the core dev wrote them but they won't be able to post anymore as the core dev, and the core dev should be able to edit/delete the old message. This could also be mitigated by reviewing duplicated GitHub usernames on bpo (in some cases conflating two bpo accounts into one GitHub account might be useful).

from gh-migration.

gvanrossum avatar gvanrossum commented on June 23, 2024

Yeah, I'm pretty sure I have two bpo accounts that I use interchangeably.

from gh-migration.

ezio-melotti avatar ezio-melotti commented on June 23, 2024

I discussed with the SC the approach suggested by GitHub, i.e. creating a dummy org, inviting people to join it, waiting 1/2-week, and then performing the import, but even though this should map the accounts properly, it sounds like it might not be very effective, so the idea has been abandoned.

A better approach might be:

  1. encourage people to add their GitHub username on bpo (by adding a banner on top of bpo, writing to python-dev, and possibly by mailing them directly)
  2. add to the migrated issues people that have their GitHub username set (either by directly mentioning them in their messages, or if possible, by adding them to the issue during the migration)

Currently there are ~33k total users, ~8k have a GitHub username set (I have to double-check this), and the remaining ~25k don't. With this approach:

  • the accounts of the ~200 core devs will be properly mapped
  • the accounts of the ~8k+ people with a GitHub username won't be directly mapped but they will still be added to the issue and receive future notifications. However they won't be able to reclaim their previous messages and mannequin accounts (since they are not part of the org).
  • the remaining ~25k account won't be linked to the new issues and won't receive notifications if new messages are added on GitHub since we don't know their GitHub username (but they can follow a link from bpo to GitHub if they happen to go back to check bpo)

I'm still waiting to hear back from GitHub to see if there are other options available.

from gh-migration.

gvanrossum avatar gvanrossum commented on June 23, 2024

from gh-migration.

FFY00 avatar FFY00 commented on June 23, 2024

FWIW, Github seems to have rolled out an update that enables this kind of data claims. I believe the API is not publicly documented as they are still iterating over the design, you should probably reach out to them (I believe you are already in contact, but I may be wrong 😅).

github-data-claim

from gh-migration.

ezio-melotti avatar ezio-melotti commented on June 23, 2024

There is a way to claim contributions, but afaik it only works for members of the organization. Are you a member of the llvm org?

from gh-migration.

FFY00 avatar FFY00 commented on June 23, 2024

Ah, alright. Yes, I am.

from gh-migration.

asl avatar asl commented on June 23, 2024

A possible workaround is to create a new org,

There is no need for a new org. Just create a new team and invite users there. Our (LLVM) experience shows that mannequin resolution is a manual process (there is no API for this). So, it's tedious click-enter-click-click process. You do not want this for 33k users :) It would be better to create such team in advance and start sending invitations. The invitation expires in 7 days, so some users will certainly miss it, but you can send them several times, say, within a month. This will streamline the process heavily.

from gh-migration.

ezio-melotti avatar ezio-melotti commented on June 23, 2024

Eventually we settled on what I listed here: #11 (comment)

Of the ~35k bpo users, about ~8.8k have a linked GitHub username. Their username will be listed in the body of the message, but it's not possible to automatically subscribe them. #12 propose a solution, and it should be possible to automatically mention them with an action.
Of the 190 users with the iscommitter bit, 131 have a linked GitHub username and 59 don't. The 59 that don't will still be able to reclaim their mannequin after the migration.

from gh-migration.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.