Please no. Squash and merge means that when someone (maybe you) comes across a strange-looking line of code in 18 months and uses git blame to figure out why it was added, they'll be presented with a 1500-line wall of text with no context.
Kodiak is an open source GitHub app that can update, approve, and merge pull requests.
At work we were getting frustrated waiting for CI to merge pull requests, so I built Kodiak to automate this tedious work.
With Kodiak you don't need to wait for CI checks to finish, you simply add a label and Kodiak will merge your pull request when ready. It's super helpful when you have long running CI or "Require branches to be up to date before merging" configured via GitHub branch protection.
A bit of shameless self promotion: I built a more basic merge bot for GitHub that efficiently updates and merges PRs because we were wasting a ton of time keeping branches updated at work.
We started using Kodiak after the Auto Rebase bot was discontinued a few weeks ago. Other than confusing me with a normal merge when I thought it had been configured to do squash-merges, it works great. Thanks for releasing it!
Yeah, when I read about that I thought it sounded neat—make sure the index updates with the data. On the other hand, I think of CAP theorem as an iron triangle. If you are gaining consistency, what’s the trade off?
This _is_ the usual trade off, but what makes FoundationDB so crazy is that it's a CP system that has a performance profile that AP systems would have a hard time matching.
How did you handle upgrading between major Postgres versions with Docker when the container only has one version (you need both for major version updates)?
For a cheater, these are lucrative areas: Areas with low income and education rates, where the populace doesn't typically vote. Stuffing the box won't go noticed due to low election turnout.
In Kansas, we have a system to prevent ballot stuffing. You must show state or federal issued ID. Your name must be in the pollbook for the location and pre-registered before election day.
They have two areas: The first, you show your ID and they check your entry in the location's pollbook. The fact that you showed up to vote along with the ID you presented is recorded electronically statewide and is public information instantly.
They then print an anonymous "voting ticket" and you're taking to a separate area or room. A smart card is exchanged for your voting ticket is put into an air-gapped system and you cast your ballot. Your smart card is removed and tallied on a third air-gapped system. When the poll closes, the tally machine is handed over to the county.
This system makes it nearly impossible to stuff the box, because the number of votes cast at a location cannot exceed the number of IDs presented at the checkin location. It doesn't protect from changing votes, which would require a much more sophisticated attack on the machines themselves.
It's not perfect, but it is fairly good at stopping unsophisticated opportunistic attackers. I would feel much better if all of the USA adopted such a protocol if we go to a popular vote, but that's unlikely to happen, so I can't say I'm comfortable moving away from the electoral college either.
Wait, what states don't use election rolls (id checks do vary by state)?
I'm a lot happier with paper ballots + electronic tabulation than I am with electronic ballots, what do you think those parts of the process you describe are adding?
Right now it's nearly impossible to clean election rolls of dead etc. voters, e.g. the Feds fight this hard.
However, state and Federal issued IDs have a subsidiary feature, perhaps even more important that on the spot election verification now that I think about it, in that they expire, and I'm sure some of them also have revocation measures after the ID holder dies. This is much more true for people moving.
Agreed on the paper ballot + electronic counting, and very glad my county in neighboring Missouri uses that system, I never trusted the totally electronic or electromechanical systems I used in Arlington, VA or Brookline, MA
The US has a total of 3,143 counties or equivalents per Wikipedia, obviously divided between 50 states and D.C., each a separate political domain, both counties and states. Corrupting enough of those under the Electoral College's constraints is a lot harder.
Because you're going directly off of the vote, instead of a representation of that vote via the elector for that area. It's a subtle difference, but one that brings to light some of the fears with direct election.
Make as many commits as you want, just “Squash and merge” at the end using your pull request body for the commit message.