buildinspace / peru

a generic package manager, for including other people's code in your projects
MIT License
1.12k stars 69 forks source link

Status of the project #246

Open jankap opened 1 year ago

jankap commented 1 year ago

Dear maintainers, I just discovered peru a couple of weeks ago and it suits my needs perfectly, so thank you very much for that! I'm about to spread the usage in my company, but before doing that I'd like to understand the status of the project. Is it actively maintained? I see there are answers to some issues, but 9 PRs are open and the last commit is from April.

I fully understand that priorities change and life and job etc. happens, so please don't feel offended, it's just a question. Will there be much maintenance in the future? I'm talking especially about significant changes in Git and probably Python - if there are any of course.

We're also thinking about forking the project internally and giving back useful changes, but that won't work if PRs don't get accepted :)

Again, thank you very much for this awesome tool! Jan

jankap commented 9 months ago

kindly ping @oconnor663 :)

oconnor663 commented 9 months ago

Ah thanks for the ping. peru is maintained insofar as I try to keep CI on the latest version of Python (which in theory is 3.12, but Arch Linux is still on 3.11 and I don't feel bad about being only as far behind as Arch :) and fix any bugs that show up in that process. I also use peru to manage my own dotfiles and vim plugins and have no plans to stop. However, my attention has been on other projects for many years now, and I'd say it's unlikely @olson-sean-k or I will add any new features to peru.

If you're thinking about depending on peru in a big way, I think the biggest risk is upstream Git behavior changes like this one: https://github.com/buildinspace/peru/issues/221. peru is tightly coupled to Git's "plumbing" commands, which are usually stable, but from time to time they do change things. In that issue, the effects of the change were relatively minor and obscure, so I just deleted a test for the old behavior and gave up on it. But if the effects of a future change are more problematic, recovering our intended behavior might require a big refactoring that I'm unlikely to ever want to do. That could be a "ticking time bomb" for the project?