frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

In-House Counsel Is About to Get Good

https://www.whatrunsai.com/research/harvey
1•hmichaelson20•1m ago•0 comments

Where We Expect AMD EPYC 9006 CPUs in the Era of Agentic AI – ServeTheHome

https://www.servethehome.com/where-we-expect-amd-epyc-9006-cpus-in-the-era-of-agentic-ai/
1•rbanffy•1m ago•0 comments

Micron projects tightening RAM shortages through 2028, generates record profit

https://www.tomshardware.com/pc-components/dram/micron-projects-tightening-ram-shortages-through-...
1•rbanffy•2m ago•0 comments

Books that made me a 10x engineer

https://www.thetrueengineer.com/p/3-books-that-made-me-a-10x-engineer
1•adletbalzhanov•2m ago•0 comments

Custom Automations are now GA in Factory

https://twitter.com/FactoryAI/status/2105713248507138483
1•kstrauser•3m ago•0 comments

.si Registrations Surge After US Shift to 'Super Intelligence'

https://circleid.com/posts/dot-si-domain-registrations-surge-after-us-shift-to-super-intelligence
2•speckx•3m ago•0 comments

US jobless claims near 57-year low as layoffs fall in September

https://www.reuters.com/legal/litigation/us-weekly-jobless-claims-fall-layoffs-drop-september-202...
1•frank_clover•4m ago•0 comments

ExplainDB: A Database System Built for Understandability

https://github.com/explaindb/explaindb
1•pykello•4m ago•0 comments

Show HN: I built an app that scours the internet to create a daily news briefing

https://github.com/yogthos/newsroom
1•yogthos•5m ago•0 comments

The Front Page of the Internet Is Killing RSS Feeds

https://www.extremetech.com/internet/the-front-page-of-the-internet-is-killing-rss-feeds
1•rreyes1979•5m ago•0 comments

Show HN: Yedric – Add a natural-language interface to your SaaS

https://www.yedric.ai
2•aaroneous•8m ago•0 comments

View: Program that drew, in 3D, what Apollo astronauts would see out the window

https://claude.ai/artifact/5cPjoQTJ8PvXF5FUwwbLEC
1•mariuz•10m ago•1 comments

Everybody Loves Big Boy

https://defector.com/everybody-loves-big-boy
1•speckx•12m ago•0 comments

Last.fm Album Linkr: adds 'headers' on Recent Tracks section and Album collages

https://github.com/StigNygaard/Stigs_Last.fm_Album_Linkr
1•Baljhin•12m ago•0 comments

EU/Jev – First System One Model Hosted in the EU

https://jev.bevel.software/
1•juanviera23•13m ago•0 comments

I Gave My OpenClaw Agent a Physical Body

https://www.wired.com/story/i-gave-my-openclaw-agent-physical-body-robot/
1•gmays•14m ago•0 comments

Twitter Follower Distribution (2022)

https://www.johndcook.com/blog/2022/08/09/twitter-follower-distribution/
1•theanonymousone•14m ago•0 comments

Show HN: RGBoo – interactive lofi stream for Halloween

https://rgboo.com/
2•na10•15m ago•1 comments

Record-Low 31% Say College Education Is 'Important'

https://news.gallup.com/poll/715133/record-low-say-college-education-important.aspx
2•bilsbie•16m ago•0 comments

Show HN: Vote on which of Hacker News' challenges for AI have been met

https://stoppels.ch/goalposts/
1•stabbles•19m ago•0 comments

TwIL-LM3-Pro: 3.6B formal-logic model that beats VibeThinker-3B

https://huggingface.co/webAI-Official/TwIL-LM3-Pro
3•CD_webai•22m ago•0 comments

Ask HN: Email leaked while traveling abroad?

2•thatonehack•22m ago•0 comments

The GPU Black Market That Washington Can't Shut Down

https://www.amcompute.com/blog/gpu-black-market-washington-cant-shut-down
2•ilreb•24m ago•0 comments

Pebble Round 2 Starts Shipping

https://repebble.com/blog/pebble-round-2-starts-shipping
1•gumby271•25m ago•0 comments

MCP server for editing Excel with real-time calc and diffs

https://github.com/pixelsmasher13/gridpath
2•escapingsingula•26m ago•0 comments

We are inventing the governor module

https://techcrunch.com/2026/09/30/openais-jev-clone-could-help-the-frontier-lab-stop-its-swarming...
1•gmarkwa•26m ago•0 comments

The AI Pascal's Wager

https://ploum.net/2026-10-01-pascal_wager.html
1•1matin•27m ago•0 comments

TanStack Intent v0.5: Skills you can maintain

https://tanstack.com/blog/intent-0.5-skills-you-can-maintain
2•chrisweekly•29m ago•0 comments

Echo, a new AI site to mimic the styles of particular writers or writing styles

https://echo.fulcrum.inc/
2•shaftoe444•29m ago•0 comments

Show HN: Taracode – a local DevOps agent, and 18 open models scored on one GPU

https://github.com/tara-vision/taracode
1•stefanoski•30m ago•0 comments
Open in hackernews

Git 3.0's upcoming SHA-256 default will be a costly mistake

https://blog.gitbutler.com/git-3-sha-256
68•chmaynard•55m ago

Comments

mrtesthah•36m ago
…
ande-mnoc•26m ago
What does OpenAI have anything to do with this?
storyinmemo•30m ago
Yes every repo is either one or the other but you fix that by rehashing the entire repo. Everyone can do this independently. It's entirely possible to maintain to identical repos in SHA1 and SHA256 mode but for the most part I suspect once updated people will simply pull down the new repo and use git 3.0 as a required version.

As migrations go, it's reading as simple to me. You'll just have to backpoint the commit signatures. I must assume there's a backwards compatible reference for them in git 3, right?

Or drop them and reference the old structure in a dire pinch.

mort96•15m ago
Re-hash the entire repo as in rewriting all history? Hooo boy will that be a mess, I deal with things which reverence commits by hash in repos all the damn time. There are thousands of them in every Yocto project!
iamnothere•12m ago
Yes, this would cause big issues for Nix based build systems or any others that reference commits by hash.
bkolobara•29m ago
I run a small git/jj forge and for us it's already painful dealing with this. Can't imagine how GitHub is going to handle it.
nicoburns•27m ago
From what I'd read, SHA256 in git is showing every sign of being another IPv6. In particular:

- It's implemented in a non-backwards-compatible way

- The benefits over the older model are a bit nebulous

- There's a large amount of tooling that needs to catch up, and little sign that there is movement there

gspr•23m ago
> - The benefits over the older model are a bit nebulous

This is far from the case with IPv6!

post-it•20m ago
Is it? There are many benefits in principle to IPv6, but if my ISP continues to assign me a single dynamic IP, those benefits are entirely moot for me.
embedding-shape•18m ago
Right, but just because you don't happen to have IPv6 right now, how does that remove the benefits for others to have IPv6? That's like saying having a faster CPU wouldn't mean faster performance, because I don't have that CPU yet.
mort96•17m ago
Your ISP assigns you a single dynamic /128? Which ISP is that?
thenewnewguy•16m ago
Is the argument that there are no benefits to IPv6 for anyone/society because your specific ISP messes it up?
ltbarcly3•26m ago
This seems like Y2K fud.

The alternative to making sha256 the default is to leave sha1 the default. Nobody changes to sha256. sha1 is broken in 10 years. Suddenly everyone has to switch all at once on the same day because it is a critical security issue, but github never implemented sha256 because they didn't have to. This would be a major problem.

This is very very easy to fix if you run into it.

1. Adopt git 3.0 if you can with sha256.

2. If you can't use sha256, set the config to put things back to sha1. Wherever you need to do this you probably already set dozens of ENV vars or settings, just add a new one.

Or write a 15 page analysis about how the above is so hard people will probably just find it catastrophic to even think about.

schacon•23m ago
You can certainly do this, as I said, this is Google's backup plan. But defaults matter. People will start running this and getting repos that are uselessly incompatible with other repos, tools, libraries and server instances. Having it as an option is one thing. Making it a default will cause a lot of pain for people who don't want to care about this.
ltbarcly3•20m ago
"defaults matter" is an argument for this change, not against it.
schacon•16m ago
No, my argument is that the change should not happen at all and nobody wants it and it gains the community very, very little but the default change is forcing it on everyone and most will be _entirely_ unaware - now having to solve problems that are difficult to understand. Defaults also matter when they are the wrong defaults.
addaon
amluto•25m ago
I don't understand why Git is not making the SHA-1 and SHA-256 modes far more compatible with each other.

SHA1-hashed objects should be able to refer to SHA-256-hashed objects, although this seems somewhat pointless.

But SHA-256-hashed objects should also be able to refer to SHA1-hashed objects, with a major caveat: if those objects themselves are part of a collision pair, then there is a genuine problem. But this is avoidable! Suppose that Linux decided to migrate to SHA-256. The upstream project could choose a pair of dates, say January 1 2027 and March 1 2027. Up to the first date, maintainers would be welcome to submit hashes of objects that are not yet in the repo but that they think they might submit later on, and, on that date, the upstream tree would finalize the list of these objects and reference it in the repo (with a new mechanism for this purpose). Effective the second date, the repo would start publishing SHA-256 commits and would never again accept a SHA1-hashed object that was not in the repo at the cutoff date or referenced as part of the Jan 1 block.

And now it would be impossible to get a new SHA1 collision in to the repo.

The only new git features needed would be:

a) actual compatibility so that a SHA-256-hashed object could reference a SHA1-hashed object

b) a new object type that's a list of allowed SHA1 hashes (or probably a tree of them) that is itself hashed with SHA-256 and a mechanism to link to one of these from a commit

c) a policy mechanism to set a repo to only allow SHA1-hashed-objects that a reachable from a preconfigured SHA-256-hashed commit

schacon•21m ago
Emily's talk does a pretty good job of summarizing the issues with intermixing the hashes: https://youtu.be/eJJp0RE7cd4
thunderfork•24m ago
A lot of replies here seem to be asserting that this "isn't that hard" without addressing the thing that makes it most hard: submodule compatibility and the breadth of tooling
pixl97•23m ago
Submodules are a mistake.
pphysch•19m ago
I find them extremely useful. It gives me a monorepo experience in repos that otherwise aren't/can't exist as one monorepo for various reasons.
mort96•19m ago
They're the best way we have to reference other repositories from one repository. All other solutions don't have the benefit of being built in to git and having support built in to all git forges.

Ecosystems like Yocto are built around having meta layers as submodules. And, despite the usability flaws of submodules, it works really well.

I also use submodules to include dependencies into C++ projects a lot. It works fine.

bryanlarsen•12m ago
git subtree and git subrepo are compatible with all git forges and don't require normal developers to install the extensions. Only the person/bot doing the occasional sync to the external repo has to install the extension. I prefer git subrepo for most (but not all) use cases.
pavon•
quotemstr•18m ago
Would the author feel the same if git had used MD5 instead of SHA-1?
happytoexplain•15m ago
They address this very theoretical. In short: Yes. Which makes sense if you don't treat the hash as a form of security against malice, especially in the case of attacks that are already impractical, which is the entire thrust of the article.
schacon•12m ago
I do actually literally write in this that if it was MD5 it also would not be a problem.
purpleidea•12m ago
This means, if you migrate your repo, every single commit message that contains text like: "please see commit <sha1>" will now be broken.

This will be a train wreck. I hope they don't release before adding compatibility modes to keep the existing sha1's around in the database.

MBCook•11m ago
So they’ve been talking about this for many years, planning, and finally announce when they’re going to switch the default.

So this is the right time to post that everything they’re doing is wrong? Did you engage in all the discussions about it and how best to handle it? Whether SHA-256 was the best solution?

I don’t see anywhere that it talks about alternate proposals or why they might have been better. Why the particular suggestions here were rejected.

This seems like a bunch of Monday morning quarterbacking.

schacon•8m ago
I do mention this in like the first paragraph. I don't feel great about it, but I've listened to these issues for years now during contributor summits and Git Merge talks and while it's always seemed problematic, I thought they would come up with a good solution. This last Git Merge confirmed that it's close to the switch and not in any way solved or improved. I don't want to just go with it for groupthink reasons. I never thought it was a good idea and I have said that, but we have a last chance to rethink this, so I'm curious if I'm alone or in the silent majority.
nofunsir•5m ago
The plans have been on display in a cellar. Beware of the leopard.
pavon•11m ago
Ugh, I didn't know that SHA-1 submodules wouldn't be supported in SHA-256 repos. That changes the transition from painless to a major dumpster fire. Having to maintain converted forks, and use different hashes from upstream is going to be a mess.
sigmar•11m ago
>it will be an incomprehensibly expensive and ultimately valueless and avoidable global nightmare.

thought "costly" in the title and "incomprehensibly expensive" in the subheader meant this piece would discuss how much less performant sha-256 is on modern machines, but didn't see anything. isn't there hardware acceleration? how much worse is it?

kpcyrd•9m ago
This article is full of mistakes and misleading claims:

1) It's claiming SHA1 insecurity is theoretical, while SHAttered from 2017 was specifically a pratical proof of concept. The only reason Git wasn't affected, is because they didn't bother bruteforcing a git-blob prefix.

2) It's claiming collision attacks don't matter, only second-preimage attacks do. This is incorrect, collision attacks are enough for code-smuggling problems, when two repositories are on the same git commit (verified by the full commit hash), yet contain different code in their git checkout.

3) The Linus quote "The real security is in distribution" is arguing that "git's content-addressed system should not be used to address content". It's arguing that, in case of curl|sh, you shouldn't use a sha256sum-gate to pin the content to something you've reviewed, you should instead ensure curl is fetching from an https server.

bityard•15m ago
If your ISP is assigning you a single IPv6 address, they are doing IPv6 wrong. You should be getting your own /56.
bigstrat2003•9m ago
Even a /64, while wrong, would be a significant improvement over IPv4.
Onavo•20m ago
There's a massive push right now from top down to have secure software supply chains. Google SBOM and SigStore. It's not an organic need but if you have government customers you don't have many options.
Dayshine•10m ago
Ironically rewriting git history is a perfect opportunity for a supply chain attack.
sltkr•8m ago
The difference with IPv6 adoption is that the internet relies heavily on network effects: so long as some hosts only have an IPv4 address, you need an IPv4 address for full connectivity, but then if everyone has an IPv4 address anyway, there is no immediate need to migrate to IPv6.

(Yes us Hacker News users have plenty of use cases for IPv6, like self-hosting and peer-to-peer networking and so on; we are not the average user.)

This effect doesn't exist for the Git migration. Each repo can be updated independently; it doesn't affect users of other repositories, and most likely, the majority of devs will work on some SHA-1 repos and some SHA-256 repos with no issue.

If anything, I would compare it with the Python 2 to Python 3 migration, which was also painful, but succeeded eventually (despite being much less necessary in the first place).

•
23m ago
> Adopt git 3.0 if you can with sha256.

Who is "you" in the context of a distributed version control system? I think this is not just the plural you, but the unbounded you -- it's all people who not just interact with your project now, but who you hope may interact with it in the future. The question is what the cost is of committing a near-infinite population to this migration, not the cost of doing a single `brew update` on your personal machine, no?

ltbarcly3•21m ago
Just clone the repo again. Jesus Christ, you act like the simplest thing in the world is some kind of insurmountable challenge.
bityard•19m ago
It's easy for _one person_ to fix. It's not easy for the entire git ecosystem as a whole. GitHub, large internal corporate git repos, CI/CD systems, projects with submodules, etc. The second half the article explains all of this.
OutOfHere•15m ago
For the record, Y2K was not fud. It was very real, in a long list of datetime problems that are to come. Further datetime problems are coming at scheduled dates.
bigstrat2003•5m ago
It was definitely FUD. There was a real problem (date counters would roll over), but the impacts of it were so ridiculously overstated that it eclipsed any sane discussion of the issue. We had people at the time predicting that planes would literally fall out of the sky when Y2k hit, which was never a realistic possibility.
wavemode•15m ago
> sha1 is broken in 10 years. Suddenly everyone has to switch all at once on the same day because it is a critical security issue

If you read the OP article, the entire point he's making is that this would never happen, because a hash algorithm being "broken" doesn't matter in practice, because true supply chain security has nothing to do with file hashes.

iamnothere•7m ago
It’s already broken, but even though it’s broken it’s hard to generate git collisions because of the repo metadata. It’s easy to generate (for instance) standalone PDFs with identical hashes, but doing this with git in a useful way is much harder.

That said, it’s still a good idea to migrate to a more robust hashing algorithm. Defense in depth, etc. Just because it’s a difficult migration doesn’t mean it shouldn’t be done.

7m ago
Note that subtree and subrepo have the same SHA-1/SHA-256 incompatibility issue that submodules do, so this will be just as much of a trainwreck for them as well.
purpleidea•8m ago
> Submodules are a mistake.

Someone started this FUD a long time ago and it has worked. Instead of using an elegant mechanism, project have built inelegant wrappers on top of git like go.mod which are actual mistakes.