-
Notifications
You must be signed in to change notification settings - Fork 2
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
Demo PR for Showcasing Issue Comments Threading #7
base: main
Are you sure you want to change the base?
Conversation
Review: The addition of color options for "red", "cyan", and "yellow" provides more customization for the user, which is a nice enhancement. Updating the default color to "default" seems like a good choice for consistency. Overall, these changes seem straightforward and beneficial for the functionality of the program. Detailed file changes: In cmd/pullpo/main.go:
|
一pullpo一/pr_7_threads.txt
Outdated
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.
Now you can have threaded conversations on PR issue comments
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.
And also have the option to comment from Slack
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.
Demo.mp4
一pullpo一/pr_7_threads.txt
Outdated
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.
@neoxelox replied with:
Hi 👋!
I'm testing these PR threads...
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.
How cool! It works 🚀
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.
Hey @neoxelox, as you can see, the Pullpo bot couldn't impersonate you in the comment. This is because you need to sign in to Pullpo with your GitHub account :)
Useful links:
The problem
By default, GitHub doesn't allow threaded messages in PR issue comments. This has been a pain for many people for a long time:
This means that some Pullpo functionality, like full bidirectionality (sending all Slack PR Channels messages back to GitHub), may not be showcased optimally. This doesn't occur with GitLab and Bitbucket (which we also integrate, by the way).
Before and After
Thanks to .github/workflows/pullpo.yml and the Pullpo app, when someone creates an issue comment on a GitHub PR (or even in its PR Slack channel), the Pullpo app will take that message and transform it into a file comment message referencing a newly created file called
pr_${{ github.event.pull_request.number }}_threads.txt
.Before
After
Why a GitHub action is necessary and not just a GitHub app.
The GitHub action requires write access to your code, this way you can see exactly how this permission is being used. The Pullpo app is not open source, and this way we don't have to ask for any sensitive permission..
Is the new created file going to generate merge conflicts?
No never. The GitHub Action in charge of setting up the
一pullpo一
directory, which allows threaded conversations, produces a distinct file for each new pull request. As the file created for your pull request has its own unique name and is not present in any other pull request, there's no chance of encountering a merge conflict due to Pullpo's threaded conversations workflow.How does it work?
This GitHub Action, named "Pullpo PR Threads," runs whenever a pull request is opened. This action requires write permissions, that's why we make it fully available to you, so that you can see exactly what it does.
Here's what it does:
When a pull request is opened, it creates a special folder called
一pullpo一
if it doesn't already exist. We named it this way so that it always appears at the end of the files changed tab. Inside this folder, a simple text file is created to track discussions related to this specific pull request. Based on how it works, these files will never create merge conflicts.Then when someone creates an issue comment on GitHub (or in a PR Slack channel), the Pullpo app is going to take that message and transform it into a file comment message referencing this newly created file.
Basically, this action sets up a spot for threaded conversations linked to pull requests. It helps the Pullpo app to organize comments more neatly.
Installation
Install Pullpo in your GitHub org or individual account.
First, you will need to install Pullpo in your GitHub account. Installing the Pullpo Slack integration is not necessary for issue threading, but it's recommended. Read more about the installation process here.
Add GitHub action (runs in 10s)
In every repo where you want to enable GitHub PR issue threads you need to add this 10s GitHub action.
(Optional) Enable PR Slack Channels with full bidirectionality.
To get the most out of Pullpo, enable full sync with PR Slack channels. After installing our Slack integration and synchronizing your devs, you can enable full-sync mode in your Pullpo settings.
Try it yourself by generating an issue comment in this PR! Have fun! 😊