marcosschroh / dataclasses-avroschema

Generate avro schemas from python classes. Code generation from avro schemas. Serialize/Deserialize python instances with avro schemas
https://marcosschroh.github.io/dataclasses-avroschema/
MIT License
213 stars 64 forks source link

Conda Support #706

Closed Petzep closed 3 weeks ago

Petzep commented 1 month ago

Is your feature request related to a problem? Please describe. I'm always frustrated when amazing packages like these are not in the conda-forge channel

Describe the solution you'd like Adding the package to conda-forge. The creation of a recipe is straight forward, as the python package is available in PyPi. This allows using grayskull to automatically generate a recipe.

Unfortunately, the package inflector is not available on conda-forge. Usage of the inflector package can be substituted by the inflection package.

Additional context For the community, by the community. I can help with the changes needed

marcosschroh commented 1 month ago

@Petzep I will try to add the package to conda asap. Thanks for reporting the issue.

marcosschroh commented 3 weeks ago

@Petzep https://github.com/conda-forge/staged-recipes/pull/27276

Any ideas why some checks are failing? It seems that for other PRs for python packages the same checks are failing as well.

Petzep commented 3 weeks ago

According to the logs there is a conflict with the package python-datautil (PyPi, conda-forge)

The latest version on Conda-forge is 2.9.0 and according to the history at PyPi the latest version is 2.9.0.post0.

So far so good, but the thing that confuses me is that recipe for the dataclasses-avroschema package specifies python-dateutil >=2.9.0,<3.0.0 but the pipeline fails due to dataclasses-avroschema 0.62.6 has requirement python-dateutil<3.0.0,>=2.9.0.post0, but you have python-dateutil 2.9.0

I think it has to do with #645 as it set the requirement the dependency to python-dateutil == 2.9.0.post0 I requested an update of the feedstock https://github.com/conda-forge/python-dateutil-feedstock/issues/27

The bot of conda-forge already created a PR (https://github.com/conda-forge/python-dateutil-feedstock/pull/28) Once that one is approved by the maintainers and the conda package is updated the issue could be fixed automagically.

If not, you could change the requirement in the recipe form python-dateutil >=2.9.0,<3.0.0 to python-dateutil >=2.9.0.post0,<3.0.0 just to be sure.

I hope this will help 😁

marcosschroh commented 3 weeks ago

Thanks for the feedback!! I think I will change the requirement python-dateutil = "^2.7".

marcosschroh commented 3 weeks ago

Done. Let’s wait for the merge

Petzep commented 3 weeks ago

Nice, it works!

Thanks and congratulations! 🥳 https://anaconda.org/conda-forge/dataclasses-avroschema