-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[No QA] Add proposal template for contributors #14817
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I love the idea of this!
- Excessively wordy explanations. | ||
|
||
3. Choose the first proposal that has a reasonable answer to all the required questions. | ||
--> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Getting-your-thoughts: Should we also say something that it's OK to hide comments if they are off-topic or no longer need to be considered? I think that can be helpful.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Like, maybe if someone doesn't use the proposal template, or they haven't completed all the questions, those are good candidates to be hidden.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like this, but I'm not sure if C+ has moderation tools available.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're right, they do not have that. Do you have any idea if it's easily possible to give them moderation ability? I don't know much about how fine-grained the settings are. CC @johnmlee101 or @coleaeason if you know.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So, I just looked this up and there actually is a concept of a "moderator" in GitHub:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sounds perfect!
7. Once hired, post a comment in the Github issue stating when you expect to have your PR ready for review | ||
5. Refrain from leaving additional comments until someone from the Contributor-Plus team and / or someone from Expensify provides feedback on your proposal (do not create a pull request yet). | ||
6. If your proposal is accepted by the Expensify engineer assigned to the issue, Expensify will hire you on Upwork and assign the GitHub issue to you. | ||
7. Once hired, post a comment in the Github issue stating when you expect to have your PR ready for review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Getting-your-thoughts: Should we say something about only posting one proposal at a time? Oftentimes I see someone will come along and post up to as many as four different proposals. On high-traffic issues, it's a lot to manage.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that's a good call out. I think ideally a contributor should only have one "proposal waiting for a review" at a time. Sometimes it happens that you come up with alternate solutions. But I'd argue those belong back the proposal you have open and you should update the current proposal if it hasn't been reviewed yet.
Which also makes me wonder whether we want people to "update their original proposal" or post a new one (since people don't all do this the same way).
Thinking more on all of this and I think my ideal would probably be something like:
- Always wait for a response to your current proposal before leaving additional proposals.
- It's OK to update a proposal if it hasn't been reviewed yet.
- If you're making a new proposal or updating a proposal then edit your original proposal and leave a comment like:
## Proposal
[Updated](link to proposal)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Always wait for a response to your current proposal before leaving additional proposals.
maybe that is unclear though. because we are saying it's ok to leave additional proposals. I think it would be better to just have one proposal that the contributor is tweaking and evolving until it's perfect.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe something like...
- Do not leave more than one proposal.
- Do not make extensive changes to your current proposal until after it has been reviewed.
- If you want to make an entirely new proposal or update an existing proposal please go back and edit your original proposal and leave a comment like this:
## Proposal
[Updated](link to proposal)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the idea of always keeping 1 post per proposal and only having one proposal reviewed at a time. I don't quite get the link to proposal
when updating an existing one. If it's all in the same post, then there isn't anything to link to. Plus, GH keeps the edit history of the post anyway.
The thing I dislike is when there is one large proposal that keeps getting tweaked, and so the tweaked proposal exists in several different forms across comments and it's difficult to see what changed between them.
That's why I like just always keeping it in a single post and making updates to the existing post rather than posting a new comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If it's all in the same post, then there isn't anything to link to
Ah, so in my head it was a link to the comment which "jumps" you to the proposal in the same issue.
I think the idea with posting an update to a proposal is just that it encourages the best practice of letting everyone know your proposal is "ready for review" again. And then we'd have a general loop of:
- Propose
- Incorporate feedback
- Update proposal
- Request re-review
- Etc.
This probably happens organically already (perhaps inconsistently) so maybe the attempt to create a process for this seems pointless.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah, I got you. Just like how we post "updated" on a PR to let people know it can be reviewed again. I like that
…ing proposals.
contributingGuides/CONTRIBUTING.md
Outdated
@@ -114,6 +114,13 @@ Additionally if you want to discuss an idea with the open source community witho | |||
4. After you reproduce the issue, complete the [proposal template here](./PROPOSAL_TEMPLATE.md) and post it as a comment in the corresponding GitHub issue (linked in the Upwork job). | |||
- Note: Before submitting a proposal on an issue, be sure to read any other existing proposals. Any new proposal should be substantively different from existing proposals. | |||
5. Refrain from leaving additional comments until someone from the Contributor-Plus team and / or someone from Expensify provides feedback on your proposal (do not create a pull request yet). | |||
- Do not leave more than one proposal. | |||
- Do not make extensive changes to your current proposal until after it has been reviewed. | |||
- If you want to make an entirely new proposal or update an existing proposal please go back and edit your original proposal and leave a comment like this: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- If you want to make an entirely new proposal or update an existing proposal please go back and edit your original proposal and leave a comment like this: | |
- If you want to make an entirely new proposal or update an existing proposal, please go back and edit your original proposal, then post a new comment to the issue in this format to alert everyone that it has been updated: |
This adds a little bit of information about why we want the new comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep good clarification. Thanks.
Updated! P.S. I think we can look into the moderators thing separately to this. I like the idea of giving C+ the ability to hide comments, but I'm also a little unsure about if we need it yet. I think it's a pretty extreme case where someone internaly has to hide or dismiss a comment. And maybe with more clear instructions we will have even less cases where it's needed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works for me!
@tgolen looks like this was merged without a test passing. Please add a note explaining why this was done and remove the |
Oh, yes, I did not fill out the checklist because this is not a code change, only documentation. |
🚀 Deployed to staging by https://github.com/tgolen in version: 1.2.67-2 🚀
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.2.67-7 🚀
|
Details
Fixed Issues
https://expensify.slack.com/archives/CC7NECV4L/p1675192167083009
Tests
N/A
Offline tests
N/A
QA Steps
N/A
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)src/languages/*
files and using the translation methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
this
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)ScrollView
component to make it scrollable when more elements are added to the page.Screenshots/Videos
Web
Mobile Web - Chrome
Mobile Web - Safari
Desktop
iOS
Android