Giter VIP home page Giter VIP logo

Comments (9)

brianmay avatar brianmay commented on May 20, 2024

Here is a work around that appears to work for me.

def version_scheme(version):
    from setuptools_scm.version import guess_next_dev_version
    version = guess_next_dev_version(version)
    return version.lstrip("v")

setup(
    setup_requires=['setuptools_scm'],
    use_scm_version={
        'version_scheme': version_scheme,
    },
    ....

from setuptools_scm.

RonnyPfannschmidt avatar RonnyPfannschmidt commented on May 20, 2024

Without overriding local-scheme AS well, chances are this will break

from setuptools_scm.

brianmay avatar brianmay commented on May 20, 2024

Not sure I understand what you mean. Am just using the default version_scheme, just striping the leading "v". Haven't seen any breakage yet.

from setuptools_scm.

RonnyPfannschmidt avatar RonnyPfannschmidt commented on May 20, 2024

a non-tagged version will cause a local version tag which is not supported by older setuptools versions

from setuptools_scm.

brianmay avatar brianmay commented on May 20, 2024

Maybe I still haven't understood your concern. If I use setup.py sdist and then extract the result into a directory with no git everything works fine (apart from some expected warnings). This is with setuptools 5.5.1 - in Debian stable:

brian@prune:~/tree/sshuttle$ python setup.py  sdist
your setuptools is too old (<12)
setuptools_scm functionality is degraded
running sdist
running egg_info
writing sshuttle.egg-info/PKG-INFO
writing top-level names to sshuttle.egg-info/top_level.txt
writing dependency_links to sshuttle.egg-info/dependency_links.txt
writing entry points to sshuttle.egg-info/entry_points.txt
reading manifest template 'MANIFEST.in'
writing manifest file 'sshuttle.egg-info/SOURCES.txt'
running check
creating sshuttle-0.76.dev8-ngf59508f
creating sshuttle-0.76.dev8-ngf59508f/sshuttle
creating sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
creating sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
creating sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
making hard links in sshuttle-0.76.dev8-ngf59508f...
hard linking .gitignore -> sshuttle-0.76.dev8-ngf59508f
hard linking .travis.yml -> sshuttle-0.76.dev8-ngf59508f
hard linking CHANGES.rst -> sshuttle-0.76.dev8-ngf59508f
hard linking LICENSE -> sshuttle-0.76.dev8-ngf59508f
hard linking MANIFEST.in -> sshuttle-0.76.dev8-ngf59508f
hard linking README.rst -> sshuttle-0.76.dev8-ngf59508f
hard linking VERSION.txt -> sshuttle-0.76.dev8-ngf59508f
hard linking run -> sshuttle-0.76.dev8-ngf59508f
hard linking setup.py -> sshuttle-0.76.dev8-ngf59508f
hard linking tox.ini -> sshuttle-0.76.dev8-ngf59508f
hard linking sshuttle/__init__.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/__main__.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/assembler.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/client.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/firewall.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/helpers.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/hostwatch.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/linux.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/options.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/server.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/ssh.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/sshuttle.md -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/ssnet.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/ssyslog.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/stresstest.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/version.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle.egg-info/PKG-INFO -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/SOURCES.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/dependency_links.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/entry_points.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/top_level.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle/methods/__init__.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/methods/nat.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/methods/pf.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/methods/tproxy.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/tests/test_firewall.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_helpers.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_methods_nat.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_methods_pf.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_methods_tproxy.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
Writing sshuttle-0.76.dev8-ngf59508f/setup.cfg
Creating tar archive
removing 'sshuttle-0.76.dev8-ngf59508f' (and everything under it)
brian@prune:~/tree/sshuttle$ mkdir /tmp/sshuttle
brian@prune:~/tree/sshuttle$ cd /tmp/sshuttle/
brian@prune:/tmp/sshuttle$ tar -xzvf ~/tree/sshuttle/dist/sshuttle-0.76.dev8-ngf59508f.tar.gz 
sshuttle-0.76.dev8-ngf59508f/
sshuttle-0.76.dev8-ngf59508f/setup.cfg
sshuttle-0.76.dev8-ngf59508f/tox.ini
sshuttle-0.76.dev8-ngf59508f/run
sshuttle-0.76.dev8-ngf59508f/PKG-INFO
sshuttle-0.76.dev8-ngf59508f/.travis.yml
sshuttle-0.76.dev8-ngf59508f/LICENSE
sshuttle-0.76.dev8-ngf59508f/sshuttle/
sshuttle-0.76.dev8-ngf59508f/sshuttle/version.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/helpers.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/options.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/ssh.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/hostwatch.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/__main__.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/assembler.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/linux.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/firewall.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/sshuttle.md
sshuttle-0.76.dev8-ngf59508f/sshuttle/ssnet.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/methods/
sshuttle-0.76.dev8-ngf59508f/sshuttle/methods/tproxy.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/methods/pf.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/methods/nat.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/methods/__init__.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/__init__.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/stresstest.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/ssyslog.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/tests/
sshuttle-0.76.dev8-ngf59508f/sshuttle/tests/test_methods_pf.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/tests/test_helpers.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/tests/test_methods_nat.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/tests/test_firewall.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/tests/test_methods_tproxy.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/client.py
sshuttle-0.76.dev8-ngf59508f/sshuttle/server.py
sshuttle-0.76.dev8-ngf59508f/CHANGES.rst
sshuttle-0.76.dev8-ngf59508f/README.rst
sshuttle-0.76.dev8-ngf59508f/.gitignore
sshuttle-0.76.dev8-ngf59508f/MANIFEST.in
sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info/
sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info/dependency_links.txt
sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info/SOURCES.txt
sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info/PKG-INFO
sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info/entry_points.txt
sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info/top_level.txt
sshuttle-0.76.dev8-ngf59508f/VERSION.txt
sshuttle-0.76.dev8-ngf59508f/setup.py
brian@prune:/tmp/sshuttle$ cd sshuttle-0.76.dev8-ngf59508f/
brian@prune:/tmp/sshuttle/sshuttle-0.76.dev8-ngf59508f$ python setup.py  sdist
your setuptools is too old (<12)
setuptools_scm functionality is degraded
running sdist
running egg_info
writing sshuttle.egg-info/PKG-INFO
writing top-level names to sshuttle.egg-info/top_level.txt
writing dependency_links to sshuttle.egg-info/dependency_links.txt
writing entry points to sshuttle.egg-info/entry_points.txt
reading manifest file 'sshuttle.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'sshuttle.egg-info/SOURCES.txt'
running check
creating sshuttle-0.76.dev8-ngf59508f
creating sshuttle-0.76.dev8-ngf59508f/sshuttle
creating sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
creating sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
creating sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
making hard links in sshuttle-0.76.dev8-ngf59508f...
hard linking .gitignore -> sshuttle-0.76.dev8-ngf59508f
hard linking .travis.yml -> sshuttle-0.76.dev8-ngf59508f
hard linking CHANGES.rst -> sshuttle-0.76.dev8-ngf59508f
hard linking LICENSE -> sshuttle-0.76.dev8-ngf59508f
hard linking MANIFEST.in -> sshuttle-0.76.dev8-ngf59508f
hard linking README.rst -> sshuttle-0.76.dev8-ngf59508f
hard linking VERSION.txt -> sshuttle-0.76.dev8-ngf59508f
hard linking run -> sshuttle-0.76.dev8-ngf59508f
hard linking setup.cfg -> sshuttle-0.76.dev8-ngf59508f
hard linking setup.py -> sshuttle-0.76.dev8-ngf59508f
hard linking tox.ini -> sshuttle-0.76.dev8-ngf59508f
hard linking sshuttle/__init__.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/__main__.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/assembler.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/client.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/firewall.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/helpers.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/hostwatch.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/linux.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/options.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/server.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/ssh.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/sshuttle.md -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/ssnet.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/ssyslog.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/stresstest.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle/version.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle
hard linking sshuttle.egg-info/PKG-INFO -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/SOURCES.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/dependency_links.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/entry_points.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle.egg-info/top_level.txt -> sshuttle-0.76.dev8-ngf59508f/sshuttle.egg-info
hard linking sshuttle/methods/__init__.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/methods/nat.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/methods/pf.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/methods/tproxy.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/methods
hard linking sshuttle/tests/test_firewall.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_helpers.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_methods_nat.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_methods_pf.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
hard linking sshuttle/tests/test_methods_tproxy.py -> sshuttle-0.76.dev8-ngf59508f/sshuttle/tests
copying setup.cfg -> sshuttle-0.76.dev8-ngf59508f
Writing sshuttle-0.76.dev8-ngf59508f/setup.cfg
creating dist
Creating tar archive
removing 'sshuttle-0.76.dev8-ngf59508f' (and everything under it)

from setuptools_scm.

RonnyPfannschmidt avatar RonnyPfannschmidt commented on May 20, 2024

it seems it normalizes in that case, can you show me the output of setup.py --version

from setuptools_scm.

brianmay avatar brianmay commented on May 20, 2024
brian@prune:~/tree/sshuttle$ ./setup.py  --version
your setuptools is too old (<12)
setuptools_scm functionality is degraded
0.76.dev8+ngf59508f

from setuptools_scm.

RonnyPfannschmidt avatar RonnyPfannschmidt commented on May 20, 2024

i see, looks reasonable

just wondering, would you be up for providing a pull request ensuring setuptools_scm would at least take leading non-numeric characters away on old setuptools?

from setuptools_scm.

brianmay avatar brianmay commented on May 20, 2024

I will have a look.

from setuptools_scm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.