Hello,
Piotr has kindly moved pypi2deb to salsa[1] and given me access to the project so i was able to merge my changes and release[2] a new version
of this tool in Debian.
[1] https://salsa.debian.org/python-team/tools/pypi2deb
[2] https://tracker.debian.org/news/1343951/accepted-pypi2deb-320220707-source-into-unstable/
My goal is to make py2dsp (contained in pypi2deb) the default tool
used to create Python packages in Debian (like many other
language-specific tools already do f.e. for go, rust, npm, etc). The
new release contains several enhancements that should cover many of
the packaging needs, in particular:
* the ability to package directly from a github project url
* create the salsa project in the DPT group
Please let me know if you think something is missing, or should be expanded/fix, you can also open bugs against the package or directly
MR to the salsa project.
Should we start advertising this tool in other locations, like the
python policy, guidelines, wiki, etc? what do y'all think?
Thanks,
--
Sandro "morph" Tosi
My website: http://sandrotosi.me/
Me at Debian: http://wiki.debian.org/SandroTosi
Twitter: https://twitter.com/sandrotosi
<div style="font-family:monospace;font-size:small" class="gmail_default">resources that are checked when someone starts packaging Python modules in Debian.</div><div style="font-family:monospace;font-size:small" class="gmail_default"></div><div><br></monospace;font-size:small" class="gmail_default">[1] <a href="https://wiki.debian.org/Python/LibraryStyleGuide">https://wiki.debian.org/Python/LibraryStyleGuide</a></div><div style="font-family:monospace;font-size:small" class="gmail_default"><br></div><
<div><div style="font-family:monospace;font-size:small" class="gmail_default">[0] <a href="https://www.debian.org/doc/packaging-manuals/python-policy/">https://www.debian.org/doc/packaging-manuals/python-policy/</a></div></div><div style="font-family:
My goal is to make py2dsp (contained in pypi2deb) the default tool
used to create Python packages in Debian (like many other
language-specific tools already do f.e. for go, rust, npm, etc). The
new release contains several enhancements that should cover many of
the packaging needs, in particular:
$ py2dsp -v pystowrevision='0~py2deb', message='converte0~py2deb', name='pystow')
D: py2dsp py2dsp:156: version: 3.20220707
D: py2dsp py2dsp:157: ['/usr/bin/py2dsp', '-v', 'pystow'] /usr/bin/py2dsp:163: DeprecationWarning: There is no current event loop
loop = asyncio.get_event_loop()
D: py2dsp py2dsp:44: args: Namespace(verbose=True, quiet=False, root='/home/andreas/debian-maintain/salsa/python-team/packages/0_prospective/result', clean=False, build=False, application=False, profile=None, github=None, distribution='UNRELEASED',
E: py2dsp py2dsp:167: 'releases'
Traceback (most recent call last):
File "/usr/bin/py2dsp", line 165, in <module>
loop.run_until_complete(main(args))
File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
return future.result()
File "/usr/bin/py2dsp", line 74, in main
fname = yield from download(name, version=version, destdir=args.root)
File "/usr/share/pypi2deb/pypi2deb/pypi.py", line 124, in download
release = details['releases'].get(version, {})
KeyError: 'releases'
a fix for this was available in the git repo but not released, i took
care of that with version 3.20220721 that has just been ACCEPTED.
Before I've sent my mail I also checked Git HEAD which was no change.
Are you sure thet the package version 3.20220721 contains the correct executables?
Are you sure thet the package version 3.20220721 contains the correct executables?
yes, i simply forgot to bump the internal version; what really matters
is: does the last release fix the problem you were having?
No, the problem persists:
$ py2dsp -v pystow
D: py2dsp py2dsp:156: version: 3.20220707
D: py2dsp py2dsp:157: ['/usr/bin/py2dsp', '-v', 'pystow'] /usr/bin/py2dsp:163: DeprecationWarning: There is no current event loop
loop = asyncio.get_event_loop()
D: py2dsp py2dsp:44: args: Namespace(verbose=True, quiet=False, root='/tmp/result', clean=False, build=False, application=False, profile=None, github=None, distribution='UNRELEASED', revision='0~py2deb', message='converte0~py2deb', name='pystow')
E: py2dsp py2dsp:167: 'releases'
Traceback (most recent call last):
File "/usr/bin/py2dsp", line 165, in <module>
loop.run_until_complete(main(args))
File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
return future.result()
File "/usr/bin/py2dsp", line 74, in main
fname = yield from download(name, version=version, destdir=args.root)
File "/usr/share/pypi2deb/pypi2deb/pypi.py", line 124, in download
release = details['releases'].get(version, {})
KeyError: 'releases'
this seems to be related to https://discuss.python.org/t/backwards-incompatible-change-to-pypi-json-api/17154
, although they say /pypi/<project>/json (what py2dsp uses to gather
the latest released verison) still contains the releases key, what i
noticed is that endpoint now returns 2 concatenated jsons, and aiohttp
json() (quite understandably) returns the latest one, which does not
contain releases.
appreciate if you can log a bug via reportbug
I wonder whether you are able to reproduce the issue at your side since
in one of your last mails you asked whether the new version might have
fixed the issue. This might implicitly mean it works for you since I
assume you fired up the command line at your side as well.
I wonder whether you are able to reproduce the issue at your side since
in one of your last mails you asked whether the new version might have fixed the issue. This might implicitly mean it works for you since I assume you fired up the command line at your side as well.
it never worked.
I was able to run
py2dsp pystow
with a sufficient result for my purposes...
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 349 |
Nodes: | 16 (2 / 14) |
Uptime: | 117:41:31 |
Calls: | 7,612 |
Files: | 12,786 |
Messages: | 5,683,923 |