barsoom / ex-remit Goto Github PK
View Code? Open in Web Editor NEWA self-hosted web app for commit-by-commit code review, written using Phoenix LiveView.
License: MIT License
A self-hosted web app for commit-by-commit code review, written using Phoenix LiveView.
License: MIT License
There is a unique index on commits.sha, but it should probably be on [repo, sha].
We'll also need to change the association from comments to commits, since that's only on the sha currently. Maybe make that one just use the primary key, now that we ensure a commit always exists if the comment does.
The two webhook faker tasks use a hardcoded port number that doesn't match the port ex-remit listens on in dev mode
The UI first gets the latest n commits, then counts stats in memory.
The stats API counts unreviewed commits from all listed commits, so their counts won't match.
The stats API should also get the latest n and count stats in memory.
More important:
Fun polish:
Can wait until after we start using it:
Public release:
Remit shows such a user for e.g. the commit b5889b7.
See discussion: https://auctionet.slack.com/archives/CF9SAN79V/p1592900099078400
See discussion: https://auctionet.slack.com/archives/CF9SAN79V/p1593075011333600
@joakimk says this is how Review behaves and what he prefers.
See discussion: https://auctionet.slack.com/archives/CF9SAN79V/p1592475111389400?thread_ts=1592473726.387600&cid=CF9SAN79V
React-like components: http://surface-demo.msaraiva.io/
Should be properly fixed by #9 but we should also fix it before then.
Maybe a filter, maybe automatically collapsing series of reviewed ones and you can expand (GitHub diff style), or something else.
See discussion: https://auctionet.slack.com/archives/CF9SAN79V/p1593075133334500
Like the old Review app did.
A simple solution without writing JS could be to have a timer running e.g. every minute in the LiveView, setting a virtual column to "overdue" or something for overdue commits, then unsetting it when abandoning the review or marking it as reviewed.
We can't notify the commit author if we don't have the commit in DB.
Plan:
hide: true
hide == true
commits and comments in the UI. Only use them for notifications. Sticking them at the top of the commit list would be annoying (they could be old); sticking them further down gets confusing.Alternatively:
Alternatives:
If a webhook is re-submitted, we should silently not create duplicates.
Gets env at compile-time, so maybe not a good choice in some cases, e.g. for API keys. If we e.g. change the Heroku API key, I believe it wouldn't actually change until the next deploy.
Or hardcode it, but maybe not to my name.
If we move this project into devbox, we could use its convention.
Or we could give instructions for setting up a user by a certain name ("remit" maybe) and default to that.
Like b6c8de2.
Happened to at least me and Olle overnight. We also had some DB timeout errors logged. My guess is Heroku did something that caused these errors. The clients got this error page at some point from the DB timing out, and nothing on the page attempts to recover from that.
So we could for example look into customising the error page
to have some JS to attempt reloads, maybe.
Also look in the old Review repo – I seem to remember seeing some additional error or retry handling in that one that may or may address a similar situation.
Have started in a branch but am a bit blocked by phoenixframework/phoenix_live_view#990 (previously: phoenixframework/phoenix_live_view#960).
This would fix the issue where comments currently reload (the liveview remounts) when filtering (= when params change).
As seen in barsoom/gridlook@1a5a0dd. Gets a broken avatar. Just treat it as though it was called "dependabot"?
See discussion: https://auctionet.slack.com/archives/CF9SAN79V/p1593177290476000
Both dynos and DB.
If we make it a prod-class DB, we should also change the maintenance window.
Such as https://github.com/barsoom/live_bidding/commit/c74404360d1397bc5cc4b88dc7be7f4579ab1637 which had
"author": {
"name": "…",
"email": "…"
},
"committer": {
"name": "…",
"email": "…"
},
with no username passed, and no plus addressing in the emails.
Have asked the dev in question if they know the circumstances: https://auctionet.slack.com/archives/CF9SAN79V/p1591976514145100?thread_ts=1591945393.083400&cid=CF9SAN79V
Looked in DB: we stored authors: []
on the commit.
Simplest solution might be to just make it an explicit, documented requirement that at least one committer/author needs to have a GitHub username, or commit with plus addressing.
We could show "[warning triangle] Unknown username" maybe, with a tooltip like "Committed by Foo Barson with no GitHub username, blabla, Remit won't be able to blabla…".
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.