Skip to content
This repository was archived by the owner on Jul 26, 2026. It is now read-only.

Support universal wheels - #29

Merged
Byron merged 1 commit into
gitpython-developers:masterfrom
graingert:patch-1
Sep 11, 2016
Merged

Byron merged 1 commit into
gitpython-developers:masterfrom
graingert:patch-1

Conversation

@graingert

Copy link
Copy Markdown
Contributor

No description provided.

@Byron
Byron merged commit 97035c6 into gitpython-developers:master Sep 11, 2016
@Byron

Byron commented Sep 11, 2016

Copy link
Copy Markdown
Member

Thank you very much ! I hope getting wheels support can be as trivial for smmap and gitpython too.

@graingert

graingert commented Sep 11, 2016 •

Copy link
Copy Markdown
Contributor Author

Already done https://github.com/gitpython-developers/smmap/blob/master/setup.cfg#L2 https://github.com/gitpython-developers/GitPython/blob/master/setup.cfg#L2

they all just need a new release with python3 setup.py sdist bdist_wheel register upload

@Byron

Byron commented Sep 11, 2016

Copy link
Copy Markdown
Member

Thanks for the hint ! Unfortunately, this command-line pip3 install wheel && python3 setup.py sdist bdist_wheel upload fails with

Requirement already satisfied (use --upgrade to upgrade): wheel in /usr/local/lib/python3.5/site-packages
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'install_requires'
  warnings.warn(msg)
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'zip_safe'
  warnings.warn(msg)
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: invalid command 'bdist_wheel'

It's a bit odd, and I have no explanation for that :/.

@graingert

Copy link
Copy Markdown
Contributor Author

Ah I know the issue. Please await a PR...

On 11 Sep 2016 17:48, wrote:

python3 -m venv /tmp/gitpython/
source /tmp/gitpython/bin/activate
pip install -U pip setuptools wheel
python setup.py sdist bdist_wheel register upload

On 11 Sep 2016 17:44, "Sebastian Thiel" notifications@github.com wrote:

Thanks for the hint ! Unfortunately, this command-line pip3 install
wheel && python3 setup.py sdist bdist_wheel upload fails with

Requirement already satisfied (use --upgrade to upgrade): wheel in /usr/local/lib/python3.5/site-packages
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'install_requires'
warnings.warn(msg)
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'zip_safe'
warnings.warn(msg)
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help

error: invalid command 'bdist_wheel'

It's a bit odd, and I have no explanation for that :/.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZQTKcxFQHugp0JAG_nemshLM9mf7fNks5qpC_XgaJpZM4J282M
.

@graingert

Copy link
Copy Markdown
Contributor Author

python3 -m venv /tmp/gitpython/
source /tmp/gitpython/bin/activate
pip install -U pip setuptools wheel
python setup.py sdist bdist_wheel register upload

On 11 Sep 2016 17:44, "Sebastian Thiel" notifications@github.com wrote:

Thanks for the hint ! Unfortunately, this command-line pip3 install wheel
&& python3 setup.py sdist bdist_wheel upload fails with

Requirement already satisfied (use --upgrade to upgrade): wheel in
/usr/local/lib/python3.5/site-packages
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261:
UserWarning: Unknown distribution option: 'install_requires'
warnings.warn(msg)
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261:
UserWarning: Unknown distribution option: 'zip_safe'
warnings.warn(msg)
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help

error: invalid command 'bdist_wheel'

It's a bit odd, and I have no explanation for that :/.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZQTKcxFQHugp0JAG_nemshLM9mf7fNks5qpC_XgaJpZM4J282M
.

@Byron

Byron commented Sep 11, 2016

Copy link
Copy Markdown
Member

Thanks again !
Even after creating the virtualenv, I am seeing the same issue:

$ /tmp/gitpython/bin/python ./setup.py sdist bdist_wheel register upload
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'zip_safe'
  warnings.warn(msg)
/usr/local/Cellar/python3/3.5.2_1/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/dist.py:261: UserWarning: Unknown distribution option: 'install_requires'
  warnings.warn(msg)
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: invalid command 'bdist_wheel'

Maybe it's something odd with my system installation, which still seems to be part of the mix.

@ankostis

ankostis commented Oct 2, 2016

Copy link
Copy Markdown
Contributor

@Byron I dont' know what's the status of it, but actually the "official" guide does not recommend this command.
Use twine tool instead.

@graingert

Copy link
Copy Markdown
Contributor Author

You don't need to bother with twine on python3

On 2 Oct 2016 21:44, "Kostis Anagnostopoulos" notifications@github.com
wrote:

@Byron https://github.com/Byron I dont' know what's the status of it,
but actually the "official" guide does not recommend this command
https://packaging.python.org/distributing/#register-your-project.
Use twine tool https://pypi.python.org/pypi/twine instead.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZQTC0EQjXDpKjrZL8U2S0aDdf0m7JOks5qwBeugaJpZM4J282M
.

@ankostis

ankostis commented Oct 2, 2016

Copy link
Copy Markdown
Contributor

@graingert wrote:

You don't need to bother with twine on python3

Would you mind explaining a bit more on that point?
And possibly provide an example command for @Byron on #511?

@graingert

Copy link
Copy Markdown
Contributor Author

Ah sorry I thought this was a different thread. This package can't do
simple universal wheels unless it drops the c extensions

On 2 Oct 2016 22:05, "Kostis Anagnostopoulos" notifications@github.com
wrote:

@graingert https://github.com/graingert wrote:

You don't need to bother with twine on python3

Would you mind explaining a bit more on that point?
And possibly provide an example command for @Byron
https://github.com/byron on #511?

—
You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZQTFNYikZgXYxzA0sslUp81CrDFqnDks5qwByhgaJpZM4J282M
.

@ankostis

ankostis commented Oct 2, 2016

Copy link
Copy Markdown
Contributor

But there are no C extensions, are they?

@graingert

Copy link
Copy Markdown
Contributor Author

I thought there was...

On 2 Oct 2016 22:18, "Kostis Anagnostopoulos" notifications@github.com
wrote:

But there are no C extensions, are they?

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZQTDh-MLmG2W0iOaAwe4981lvdIGDhks5qwB-RgaJpZM4J282M
.

@kevin-brown

Copy link
Copy Markdown
Contributor

But there are no C extensions, are they?

There are

gitdb/setup.py

Line 92 in 847a21e

ext_modules=[Extension('gitdb._perf', ['gitdb/_fun.c', 'gitdb/_delta_apply.c'], include_dirs=['gitdb'])],

@ankostis

ankostis commented Oct 3, 2016 •

Copy link
Copy Markdown
Contributor

Thank you, I'm involved in this project the last days so I miss a lost of stuff.

I have not managed to build them - trying also in Appveyor without success.
Anyway, they semm to be optional, so wheels are universal.
Using twine should be the safest option to deply them into PyPi.

[edit: ankostis]
And assuming they are built, it may be possible to systematically deploy Windows native-wheels from within Appveyor with a setup like this:

environment:
  PYPI_USER: "FOO"
  PYPI_PSWD:
    # See https://www.appveyor.com/docs/build-configuration/#secure-variables
    secure: <paste-your-encrypted-value>

#... regular build here

on_success:
  - ps: >-
      $cmtid = git rev-parse HEAD
      if (git describe --exact-match $cmtid) {
        twine upload -u PYPI_USER -p PYPI_PSWD dist/*
      }

@ankostis

ankostis commented Oct 3, 2016 •

Copy link
Copy Markdown
Contributor

On another issue, actually I never really liked git modules for managing project dependencies - they complicate things needlesly. They may have been useful back when python packaging was imature and a major cause of hurdles. Now, eating our wn dogfood, pushng wheels into PyPi and re-using them aterwards should be a better alternative.

I'm interesting to here any feedback on a change along these lines (drop submodules from gitdb and gitpython and depend on regulat python wheels.

@graingert

Copy link
Copy Markdown
Contributor Author

It would be good to extract the optional c extension into an optional,
separate, -fast package

On 3 Oct 2016 7:35 pm, "Kostis Anagnostopoulos" notifications@github.com
wrote:

Actually I never really liked git modules for managing project
dependencies - they complicate things needlesly. They may have been useful
back when python packaging was imature and a major cause of hurdles. Now,
eating our wn dogfood, pushng wheels into PyPi and re-using them
aterwards should be a better alternative.

I'm interesting to here any feedback on a change along these lines (drop
submodules from gitdb and gitpython and depend on regulat python
wheels.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAZQTBx0oeDUGnQwhJkzYV2THNrPi3JGks5qwUrjgaJpZM4J282M
.

@ankostis

ankostis commented Oct 3, 2016

Copy link
Copy Markdown
Contributor

Any PR is welcome.

@graingert
graingert deleted the patch-1 branch September 18, 2023 19:25
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants