Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Code Review 0.4.2..0.4.3-rc3 #3138

Closed
21 of 58 tasks
jbenet opened this issue Aug 28, 2016 · 18 comments
Closed
21 of 58 tasks

Code Review 0.4.2..0.4.3-rc3 #3138

jbenet opened this issue Aug 28, 2016 · 18 comments
Assignees
Labels
need/community-input Needs input from the wider community status/ready Ready to be worked

Comments

@jbenet
Copy link
Member

jbenet commented Aug 28, 2016

I went through and code reviewed all the PRs, commits, and merges from 0.4.2..0.4.3-rc3.

First, a huge thanks to everyone. this is a huge release, with tremendous stuff. Huge shout out to everyone who worked on it, sp @whyrusleeping @Kubuxu @kevina @lgierth @RichardLitt @chriscool and all those listed here https://github.com/ipfs/go-ipfs/blob/master/CHANGELOG.md#043-rc3---2016-08-09 congrats, this is a great release with a ton of bug fixes, stability improvements, and new features. 🎉 🎆 🎊 🎈 🎉

On this Code Review

My code review was for the purpose of finding any remaining problems before the 0.4.3 release. I read all of the code. I didn't look at everything super carefully; i focused on critical sections, UX, API changes, and security issues. I've left a bunch of comments all over the place (Merges, PRs, commits).

I took specific notes of things to address. The "MUST be addressed by 0.4.3" ones should have a commit or PR link to a merged thing (edit this issue's list to add it next to the line item when you check it) before release. It's not that much, but it's also substantial. When done, please add the link like this at the end of the line:

- [ ] <line item> -- resolved in <link-to-merged-PR>

By design, this whole list is negative, as the goal was identifying problems. Meaning, i only highlighted all the stuff that needs to change. I looked at every commit, so a lacking comment here means that those changes implicitly LGTM, and I'm fine with releasing them. So thank you for all that! 👍 😄 🎉 🎉

It's up to @whyrusleeping whether to do these changes on top of master or on top of 0.4.3-rc3. If we want to roll the latest changes (0.4.3-rc3..master) into 0.4.3 (instead of 0.4.4), then i will need to code review that section too. I will get started on that anyway, and should have it done by monday eve.

MUST happen before 0.4.3 release

Important but postponed to 0.4.4

@jbenet jbenet added this to the ipfs-0.4.3-rc4 milestone Aug 28, 2016
@Kubuxu
Copy link
Member

Kubuxu commented Aug 29, 2016

About rebasing PRs before merging, I can't do much in this manner, it is Jeromy who merges them, he can ping me to rebase them (he does in case of conflict) or rebase them himself (my signature won't match then).

@em-ly em-ly added the need/community-input Needs input from the wider community label Aug 29, 2016
@whyrusleeping
Copy link
Member

@jbenet thanks for all the review! The strategy will be to branch off of the 0.4.3-rc3 tag and merge everything to there. Then merge that into master once the release happens.

@Kubuxu
Copy link
Member

Kubuxu commented Aug 29, 2016

I already created version/0.4.3-rc4 which is based off the tag and there are two PRs created to it: #3134 #3135

@ghost
Copy link

ghost commented Aug 29, 2016

Another lesson from the 0.4.3 cycle is that we should only start releasing RC builds once we're absolutely positive that this is what we want to release. We're close to a 1.5 months RC cycle.

@Kubuxu
Copy link
Member

Kubuxu commented Aug 29, 2016

@jbenet Is blockstore.{RuntimeHashing -> HashOnRead} neccesary for 0.4.3, it would be best to keep the changeset minimal in the 0.4.3 branch to no go into merge conflict hell.

As it is small refactor (and master has already some changes with it), it would be better to keep it on master. Sounds good?

@lgierth I don't know why having long RC cycles is bad thing, it only show that our QA game needs improvement but including community in throughout testing is a good thing.

@jbenet
Copy link
Member Author

jbenet commented Aug 29, 2016

@jbenet Is blockstore.{RuntimeHashing -> HashOnRead} neccesary for 0.4.3, it would be best to keep the changeset minimal in the 0.4.3 branch to go into merge conflict hell.

@Kubuxu it's an interface. our releases are not only binaries, they're also the code. It's pretty minimal, but okay.

@ghost
Copy link

ghost commented Aug 29, 2016

@lgierth I don't know why having long RC cycles is bad thing, it only show that our QA game needs improvement but including community in throughout testing is a good thing.

Sure -- I just mean that if we know that @jbenet is still to review it, and is likely going to have lots of feedback, it's IMO not yet a release candidate. A release candidate is "almost exactly this is going to be the release, unless there are bad bugs or regressions".

@jbenet
Copy link
Member Author

jbenet commented Aug 29, 2016

Agree with @lgierth

@kevina
Copy link
Contributor

kevina commented Aug 29, 2016

@jbenet (also @whyrusleeping @Kubuxu) concerning "best effort" pins, let me know what I need to do. At the moment this seams to be due to a misunderstanding, see #2698 for the reasoning behind them.

@RichardLitt
Copy link
Member

Thanks, @jbenet. Good to see a lot of these comments!

@whyrusleeping
Copy link
Member

@lgierth You're generally more eloquent than I am, could you handle adding better 'error case help text' here? https://github.com/ipfs/go-ipfs/pull/2939/files

@ghost
Copy link

ghost commented Aug 31, 2016

@lgierth You're generally more eloquent than I am, could you handle adding better 'error case help text' here? https://github.com/ipfs/go-ipfs/pull/2939/files

Sure, here: #3158

@jbenet
Copy link
Member Author

jbenet commented Aug 31, 2016

People have been checking boxes above without editing the post and adding:

- [ ] <problem description and issue links> --- resolved in <link-to-merged-PR>

see the "On this Code Review" rection

@jbenet
Copy link
Member Author

jbenet commented Aug 31, 2016

Oh i see some RFCR things. i'll check those

@ghost
Copy link

ghost commented Aug 31, 2016

People have been checking boxes above without editing the post and adding:

sorry that was sloppy -- I clarified that section about the gateway/blocking/reverting questions. Check the linked answers, I think these are resolved. (you're right, I shouldn't check them off, just provide you with enough info.)

@kevina
Copy link
Contributor

kevina commented Sep 1, 2016

I went through and clarified referenced pull requests with ---resolved in #XXX for merged commits. I also added ---needs review #XXX for unmerged commits pending review.

Github makes it way to easy to accidentally toggle a checkbox and does not provide the history of edited comments to verify what I did. Sorry, if I did this and caused something to be wrong.

@whyrusleeping
Copy link
Member

@jbenet alright, your 'must haves' are all addressed at this point. For the rest, we will make issues out of each of them and get them addressed for 0.4.4

@Kubuxu Kubuxu modified the milestones: ipfs 0.4.4, ipfs-0.4.3-rc4 Sep 12, 2016
@Kubuxu
Copy link
Member

Kubuxu commented Sep 12, 2016

Moved to 0.4.4 milestone.

@whyrusleeping whyrusleeping added the status/in-progress In progress label Sep 14, 2016
@Kubuxu Kubuxu added status/ready Ready to be worked and removed status/in-progress In progress labels Sep 26, 2016
@whyrusleeping whyrusleeping self-assigned this Nov 2, 2016
@whyrusleeping whyrusleeping removed this from the ipfs 0.4.5 milestone Jan 10, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
need/community-input Needs input from the wider community status/ready Ready to be worked
Projects
None yet
Development

No branches or pull requests

6 participants