vaab / gitchangelog

Creates a changelog from git log history.
Other
584 stars 139 forks source link

Request: drop d2to1 #136

Open ahesford opened 3 years ago

ahesford commented 3 years ago

d2to1 is deprecated. It seems like setuptools_scm has overtaken the arena for building Python packages with metadata in setup.cfg.

When updating setuptools for Void Linux, I noticed that its python3-changelog package was broken because it does not offer the necessary python3-d2to1 package. Previously, setuptools would silently fetch this build dependency. Now, the long-deprecated easy_install has been dropped from setuptools, so the build fails without explicitly installing d2to1.

As a workaround, I patched gitchangelog to allow its use with setuptools_scm. See patches for setup.py and for setup.cfg. The setup.cfg does not carry over the extras_require originally in your setup.py because Void Linux does not account for optional dependencies. However, you should be able to add this information to setup.cfg in the form of a subsection

[options.extras_require]
Mustache =
    pystache
Mako =
    mako
test =
    nose
    minimock
    mako
    pystache

There may be a few adjustments necessary; I'm not well versed on the details of setup.cfg but was able to hack together what was necessary to build the project as expected without d2to1.