Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge the gilt and go-gilt projects #107

Closed
0xDEC0DE opened this issue Jan 2, 2024 · 6 comments · Fixed by #123
Closed

Merge the gilt and go-gilt projects #107

0xDEC0DE opened this issue Jan 2, 2024 · 6 comments · Fixed by #123

Comments

@0xDEC0DE
Copy link
Contributor

0xDEC0DE commented Jan 2, 2024

Tools like ruff have shown that it is possible to have non-Python tools that leverage the Python ecosystem (installation via pip, automatic hash checking, etc.), and can even become wildly popular in doing so.

Gilt should attempt to take a page from that playbook, and as a side-effect, unify the schism between implementations.

I'd advocate for putting everything in the "other" repo and retiring this one, but Your House, Your Rules™.

@retr0h
Copy link
Owner

retr0h commented Jan 2, 2024

Tools like ruff have shown that it is possible to have non-Python tools that leverage the Python ecosystem (installation via pip, automatic hash checking, etc.), and can even become wildly popular in doing so.

Yeah, it's been done for Taskfile as well.

@0xDEC0DE it looks like ruff uses maturin which seems magical. Do you know if there is anything similar for golang? I don't think it's as easy as embedding various go binaries in the pip package, and go-task-bin looks to build the binary on install.

@retr0h
Copy link
Owner

retr0h commented Jan 2, 2024

I'd advocate for putting everything in the "other" repo and retiring this one, but Your House, Your Rules™.

Agree... I should have just merged them originally, but at the time I didn't think I would deprecate the python version.

@0xDEC0DE
Copy link
Contributor Author

@0xDEC0DE it looks like ruff uses maturin which seems magical. Do you know if there is anything similar for golang? I don't think it's as easy as embedding various go binaries in the pip package, and go-task-bin looks to build the binary on install.

How on earth did I miss this comment?

No, I really don't know how it's done. But looking at the wheel package format, it appears that it's really is simply a matter of putting your built binaries in specifically-named directories, and they'll land in the venv where they need to. Getting the metadata, etc., right seems to be the REAL trick.

I've gone all-in on Hatch for Python packaging lately, but this kind of thing seems "challenging" to do with that toolchain. The pip-binary-factory seems to be able to get it done pretty effectively with PDM, you might be able to do what they do, but "in reverse", i.e., as a post-build action in your Taskfile.yaml.

Or not. I don't know. 😆

@retr0h
Copy link
Owner

retr0h commented Jan 21, 2024

Maybe we could create a new issue for this specific ask? However, I could probably use your help with this.

@0xDEC0DE
Copy link
Contributor Author

That's what the original issue was about! 😆

@retr0h
Copy link
Owner

retr0h commented Jan 21, 2024

That's what the original issue was about! 😆

Yeah, I had looked at the title yesterday and had forgotten about all the original request, sorry about that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants