Releases: vfeskov/gitpunch
"lemme change my email ffs"
I bet that most people if asked whether changing emails was useful would be like:
Well, I never had to change my email and didn't implement this feature thinking everybody was like me. After some time I realized what a pain in the ass it was to use GitPunch after changing email on GitHub:
- one would get a new clean GitPunch account for the new email
- they would have to re-enter all their settings again
- but also they would continue receiving notifications on the old email
- there would be no way to login to the old account
- except switching their GitHub email back to the old email
Clearly it was a big mess and the guilt was weighing me down... but not anymore!
You can now change your email by clicking on it 🎉
Some will also see this dialog when signing in with GitHub
Not a huge or unique feature but an absolute must I think
Another thing I did
Another thing I did since the last release was moving the star-syncer script out of the main server to AWS Lambda. The script runs every 15 minutes and adds starred repos to GitPunch. I had to move it because it was degrading the server performance and once every few months the script would stop running completely. Now the server doesn't stagger as much as it used to and the script never stops running
Personal update
GitPunch is my personal challenge and I learned so much from it because I just do whatever I want for as long as I want. I mean, keeping server side rendering and service worker for so long is just nuts, no sane person would bother fixing it every time it broke. And NodeJS without framework? Nuts. And yet it all works without my intervention and costs me two cups of coffee per month. I might start working on another feature from suggestions because I really wanna try that useContext
thing from react
Until next time, peace!
Select which type of releases you're interested in
Full sync with repos starred on GitHub: new stars get added, unstarred repos get removed
There's a new toggle Remove nonstars
in the "Watch ★ Stars" dialog 🎉
When toggled, the recurrent synchronization job will not only add new repos that you starred on GitHub, but also remove unstarred repos.
This made input field and delete button next to each repo meaningless since GitHub Stars would be the single source of truth, so they are now hidden when the toggle is on:
Unfortunately, ALL existing users that signed in with GitHub accidentally got their stars added to GitPunch
- I haven't made a DB backup in a while, the one I have is too old
- Logs on my side didn't include repos that were added, just user ids
- Repos don't have timestamps when they are added to GitPunch
- Free tier of MongoDB Atlas doesn't expose logs, I contacted support, but I doubt they will help
It seems there's no way to fix this on my side at the moment, please check which repos you're watching on https://gitpunch.com/ and delete the ones you're not interested in
I already made my log include repos and will work on recurrent backup job ASAP so this wouldn't happen again, apologies for the inconvenience
Auto-add new stars, mute single repos, better emails
Auto-add new stars #24
The homepage https://gitpunch.com has all the repos for which you will receive emails about new releases
If you turn on "Watch All Stars" like so:
then new repos that you star on GitHub will automatically be added to the homepage. GitPunch checks every 15 minutes if you have any new stars and adds the new ones
Not closing the #24 because still need to support full sync, meaning unstarred repos should optionally also be removed
Mute single repos #13
You can mute emails for repos by clicking a bell icon on the homepage https://gitpunch.com :
When muted it looks like this:
Better emails #13 #38
Repos are now sorted alphabetically in subject and body, table of contents has been added for easier navigation, threw a bit of design in there too:
Realtime re-enabled
This release is to mark the solution of #25
Old model was to fetch atom feeds of all watched repos every minute. It worked great when there were <500 repos, but it did not scale well when that number increased to 11k+. Main problem with it was the cost of upload traffic those requests were making
The new model is to monitor GitHub public events and every minute fetch only those repos for which there were release events recently. Every hour though it falls back to the old model, to cover the case of events missed by gitpunch server
Other things that happened since last release:
GitPunch.com
"Rebranding" the project from WinABeer → GitPunch
Reasons:
- Some email servers bounce messages if they contain link to winabeer.com
- qq.com mailbox alerts users to not fall for a scam #21
- WinABeer is just too crazy of a name, not trustworthy and feels irresponsible #19
All the other domains (beer.vfeskov.com, winabeer.com) should redirect to gitpunch.com now. If they don't, please delete cache or go to gitpunch.com directly
Favicon sucks but I'm working on it
Watch All ★ Starred Repos
You can now watch releases of all your starred repos by pressing a single button 🎉
The more repos are being watched the more it costs me, right now it's negligible (~$3 a month), but some precautions have to be done to prevent the costs from exploding
From now on you can only watch repos that have at least one release. Because of that, when you click "SELECT ALL", only the ones with at least one release will be added to the watch list
It doesn't tell when the SELECT ALL button finishes doing it's thing besides becoming enabled again, I'll add a popup later
HUGE visual re-design + intro animation explaining the name
-
An intro animation has been added that shows a dispute between two peeps and a beer being won, visit to see it ;)
-
HUGE visual re-design has been made, everything is flat now, occupies space better and a touch of gradient has been added too. In general, structure has been changed to something users are more used to, e.g., header and footer.
Check outin-action.gif
:
Realtime + Release Descriptions
Huge features this time! 🎉
- Realtime updates instead of hourly
- Release descriptions are included in emails from now on
Some minor stuff:
- Decrease clutter in UI a bit by removing hint text in "Watch repo" section
- Update material-ui package, which changes colors but they look good to me so Imma keep it
- Make cancel buttons in dialogs the same
- Add in-action GIF