Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Migrate IDs to int64 type #816
Through this PR, I attempt to complete the migration of all the struct IDs(which refer to GitHub IDs) from platform dependent
Also, a helper function
Sure, if there's a good place for it. Can you think of one?
I don't think it's critical for getting this in. We can take care of it later if desired. In any case, it'll be something for reviewers to look out when doing future reviews (because some contributors can miss the documentation).
(That's a "good thing" from the 80's
@willnorris - I can't remember now if you also wanted to add a
type ID int64 to the code or leave it like this?
It would cause quite a bit of churn for this one PR, but now is the time to do that if we decide we want it. I remember discussing the pros/cons and it seemed like it will cause the same amount of disturbance to end users of this repo with or without that change, if I recall... so I'm fine either way.
This is a large PR. Thank you again @kshitij10496!
I've reviewed the fields that were modified first. They match up with the table in #597 (comment), with the exception of
Then I reviewed the method parameters that were modified. This was harder to do, but the ones I saw modified look right. I can't be sure if any are missing though (but that's easier to fix in the future, if needed).
Overall, once we come to a resolution about
It's still a bit scary because this is going to be a relatively large breaking change.
@bradfitz We (almost always) merge PRs via squash strategy, so the entire diff will be just one commit once it lands to
We encourage contributors not to squash during the course of the PR, because that makes it harder to review and see what has changed since last review (this isn't Gerrit; you can't see old versions of a PR).
Does that address your concern?
Checked it out locally, it went well. Out of the 7 non-toy packages I have that directly import go-github, I only needed to update one type conversion in one package. I really expected there to be more breakages (but of course other packages may vary).
It's probably nice to wait until Monday (so people who don't vendor their dependencies can enjoy their weekend without breaking API changes), but otherwise we can merge this anytime if there are no further objections.