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

Add proper python package #177

Open
SuperSandro2000 opened this issue Sep 17, 2024 · 6 comments
Open

Add proper python package #177

SuperSandro2000 opened this issue Sep 17, 2024 · 6 comments
Labels
help wanted Extra attention is needed

Comments

@SuperSandro2000
Copy link

I am packaging FediFetcher for nixpkgs/NixOS and it would help us a lot if the package would provide a minimal but proper python package from which we can build a wheel and check if all the dependencies are there.

@nanos
Copy link
Owner

nanos commented Sep 17, 2024

I'd be quite happy to do that, if you have some guidance for me.

However, how do we ensure that package stays up to date? The reason I'm asking this, is because there is already a package on AUR and it lags behind a little from time to time, as I cannot push updates to it.

I really like the idea of this package, but ideally, I'd like the ability for this to be updated automatically using GitHub Actions on release. Is this possible?

@nanos nanos added the help wanted Extra attention is needed label Sep 17, 2024
@SuperSandro2000
Copy link
Author

I think there may be some miss understanding here so let me clarify. It does not need to be uploaded to pypi.org or so, we just need a setup.cfg or the newer pyproject.toml from which we can build the wheel. Right now we just copy the files into the final package but with that change we would also validate if all requirements are installed at build time.

However, how do we ensure that package stays up to date?

In Nixpkgs/NixOS that is taken care by us with the help of an update bot. So it usually takes 2 to 3 days to open a PR and a few more days to land in our rolling release. There is no interaction from you required but you can open PRs with updates or changes if you like but you would need to have nix installed to properly do the update.

Right now our rolling release has version 7.1.7 and probably gets the new updates in a day or two. The stable branch is still on 7.0.4 and will likely stay on that.

I'd like the ability for this to be updated automatically using GitHub Actions on release. Is this possible?

It would theoretically be possible to do that but since we already have the update bot I think it is more than enough to stay on that.

@nanos
Copy link
Owner

nanos commented Sep 17, 2024

I think there may be some miss understanding here so let me clarify. It does not need to be uploaded to pypi.org or so, we just need a setup.cfg or the newer pyproject.toml from which we can build the wheel.

I will look into this

The stable branch is still on 7.0.4 and will likely stay on that.

Why? 7.0.4 is extremely out of date, and really shouldn't be used anymore. Why not use the latest version as stable, given that, well, the latest version is stable?

@SuperSandro2000
Copy link
Author

SuperSandro2000 commented Sep 18, 2024

It is from March, not really up to date but not that old if we are honest.

We usually only backport fixes and security patches to the stable channel of nixos and there are general exemptions for software that talks to online services or if there is another good reason. So we could do a backport here. I am usually a bit hesitant to backport every release because there are just sometimes many and feature releases are not backported.

NixOS/nixpkgs#342787

SuperSandro2000 added a commit to SuperSandro2000/nixpkgs that referenced this issue Sep 18, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 18, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
@nanos
Copy link
Owner

nanos commented Sep 19, 2024

It is from March, not really up to date but not that old if we are honest.

It is really quite old for FediFetcher standards. Versions before 7.1 also caused significant issues for some instance operators, so really shouldn't be used anymore.

there are general exemptions for software that talks to online services

Isn't that exactly what FediFetcher does?

Overall I'm not a fan of NixOS deciding that outdated versions is all they will offer for their users.

SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 21, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 23, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
@nanos
Copy link
Owner

nanos commented Sep 24, 2024

Hm. I've looked into this, and there are a couple of things that aren't clear to me (please bear with me: I'm not a python dev, and only know just enough python to maintain this project 😆)

  • As far as I can see I'd need to list all requirements in that file. That would duplicate simply the requirements.txt file, which I can almost guarantee I'll forget eventually, so some automation will be needed.
  • The docs mention all sorts of extra meta data that I may or may not need in this case for either setup.cfg or pyproject.toml.

Are you able to provide any guidance? (or maybe even a PR?)

SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 25, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 26, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 28, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Sep 29, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 1, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 4, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 5, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 6, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 8, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 10, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 12, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 13, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 16, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 18, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 19, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 21, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 22, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandro2000 added a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 24, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
SuperSandroBot pushed a commit to NuschtOS/nuschtpkgs that referenced this issue Oct 27, 2024
Until we have a proper wheel, we can check with that if all deps are
there.

nanos/FediFetcher#177
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants