msel-source / pymef

Python wrapper for MEF library
Other
5 stars 3 forks source link

Updated project description and added usage example to readme #39

Closed MaxvandenBoom closed 1 year ago

MaxvandenBoom commented 1 year ago

Hi Jan,

Since I have PyMef as a dependency in my own project I thought would make some modest tweaks to the presentation :) Three small updates:

Hope you feel these updates are an improvement as well

MaxvandenBoom commented 1 year ago

Hmm, the tests are failing because I (deliberately) left out the ['version'] tag from the pyproject.toml. I was hoping it would work without that tag.

Normally I would have pyproject pull it automatically from the code, but I did not find it being tracked there. How do you go about versioning the releases in your builds?

cimbi commented 1 year ago

the version is in setup.py but I am happy to move it to project.toml

MaxvandenBoom commented 1 year ago

I can do that for you in this pull request if you want. This way you can merge it including the example I added to the readme.

cimbi commented 1 year ago

yes, please do. should the args be removed from setup.py then?

MaxvandenBoom commented 1 year ago

From what I understand the best solution is to have the version in a separate file, like this: https://github.com/MultimodalNeuroimagingLab/ieegprep/blob/master/ieegprep/version.py

In __init__.py I would add: from pymef.version import __version__

Then in the setup.py file you can have:

from pymef import __version__
setup(
    name = 'pymef',
    version = __version__,
    ...
    )

and in pyproject.toml you can do:

[tool.setuptools.dynamic]
version = {attr = "pymef.version.__version__"}

I'll update this pull request so you can see

MaxvandenBoom commented 1 year ago

Ready to go/merge!

The versioning is only tracked in /pymef/version.py I currently left it at 1.4.1

I removed the duplicate fields from setup.py, these are already defined in pyproject.toml. According to PEP 517, PEP 518 and PEP 621, pyproject.toml is the standard for these fields, with setup.py for (compiling) extras that are not yet implemented in the pyproject.toml structure.