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 support for GNU coreutils b2sum files #9

Open
lxp opened this issue Mar 11, 2019 · 7 comments
Open

Add support for GNU coreutils b2sum files #9

lxp opened this issue Mar 11, 2019 · 7 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@lxp
Copy link
Member

lxp commented Mar 11, 2019

Implemented in GNU coreutils with this commit: coreutils/coreutils@ea94589

@lxp lxp added enhancement New feature or request help wanted Extra attention is needed labels Mar 11, 2019
@mtausig
Copy link
Contributor

mtausig commented Oct 7, 2020

How are external dependencies handled by this project? Right now, there do not appear to be any. Would a new one be acceptable?

@lxp
Copy link
Member Author

lxp commented Oct 7, 2020

Currently, there is no mechanism to manage external dependencies. However, there is also no hard-dependency yet, as most functionality works fine with just the Python standard library.
You can find the optional dependencies in the README: https://github.com/cfv-project/cfv/blob/master/README.md#optional
These functions simply do not work or use some other implementations, when they are not available.

One option would be to use setuptools for dependencies, as it is already used anyway. However, I am not sure, if it is easy to specify optional dependencies.
What other options are there to manage dependencies in Python?

@mtausig
Copy link
Contributor

mtausig commented Oct 7, 2020

What other options are there to manage dependencies in Python?

We could add a requirements.txt file whose contents gets installed by pip.

@lxp
Copy link
Member Author

lxp commented Oct 7, 2020

We could add a requirements.txt file whose contents gets installed by pip.

The project is also distributed via PyPI, so the dependencies should be automatically pulled when doing a pip install cfv. Does this work, when we just have a requirements.txt?

@mtausig
Copy link
Contributor

mtausig commented Oct 7, 2020

You have to put them in setup.py as well iirc.
If you are not opposed to having a dependency, I will give it a shot.

As an alternative, there would be a pure-python blake2b implementation, but that is of course not competitive performance-wise.

@lxp
Copy link
Member Author

lxp commented Oct 7, 2020

I am not against adding dependencies, especially, if there are some good libraries for the job.
Also, performance is a relevant factor for cfv.
Please keep in mind that the library should be available via PyPI, run on Python 2.7/3 and there are bonus points, if it is already available as a Debian package, as we want to have a cfv Debian package again in the future too.

@lxp
Copy link
Member Author

lxp commented Jul 14, 2021

Since Python 3.6 hashlib suports BLAKE2 [1]. If the hashlib support is enough for supporting GNU coreutils b2sum, then I would opt for using it.

In any case, please consider implementing it in cfv 3.x (currently the python3 branch), as no feature releases are planned for cfv 2.x (currently the master branch).

[1] https://docs.python.org/3/library/hashlib.html#blake2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants