tree-sitter / tree-sitter-haskell

Haskell grammar for tree-sitter.
MIT License
151 stars 36 forks source link

Failed builds due to very big file(s). #114

Open carlca opened 6 months ago

carlca commented 6 months ago

I have a couple of Rust projects which appears to have tree-sitter-haskell as a dependency. The builds are failing consistently because they are timing out when the tree-sitter-haskell is being read. This seems to be because something in the repo is taking up an inordinate amount of space. Indeed when I tried to git clone the repo, this is what I got...

SCR-20240203-ljwf

Admittedly, I do have a rather slow WiFi connection, but this is the first time that a Rust cargo build and a git clone have failed to complete because of timeouts.

I'm not using a a proxy or any other shenanigans that would affect things.

What in the world is so large that it is killing any use of the repo?

tek commented 6 months ago

The generated C file needs to be checked in, see this discussion. Since this grammar is extraordinarily complex, the accumulated size of the parser sources is substantial.

Maybe it would be reasonable to prune the history of this repo…a workaround for consumers might be to create a shallow clone, but I don't know how you would convince cargo to do that.

carlca commented 6 months ago

I've managed to download the entire repo to my local disk by using a neat Mac app which allows you to mount a GitHub repo as a drive. This means I can just copy the files using Finder or my file manager of choice QSpace Pro. The next step is going to be to get the Rust project in question to access the local copy of the repo...

tek commented 6 months ago

if you're doing that, you can also run git clone --depth 1 to get a repo that only contains HEAD