[Reproducible-builds] Bug#796196: strip .py suffix from diffoscope within sources repo as well)
Mattia Rizzolo
mattia at mapreri.org
Sat Aug 22 11:44:47 UTC 2015
On Thu, Aug 20, 2015 at 07:59:50AM -0400, Yaroslav Halchenko wrote:
>
> On Thu, 20 Aug 2015, Mattia Rizzolo wrote:
> > > ignore the patch I have submitted (done in a rush, incorrect). But what
> > > about the idea in general?
>
> > Umh, but why?
>
> > Shipped package does not have .py.
>
> > Also, why should we move the script to an another directory? (and then we would
> > need to set PYTHONPATH to be able to do anything…)
>
> > Can you elaborate on your rationale?
>
> Sure!
>
> 1. debian policy on "not having suffix" is not really Debian-specific --
> it is a general recommendation. In your case diffoscope as utility
> could later be rewritten in some other language etc, which would then
> reflect itself in changing the suffix
That thing relates to the installed binary, and indeed we do not have a suffix
in the /usr/bin/diffoscope file name.
The git repository is something for the development, and the development of
diffoscope depends on the current implementation.
> 2. There is now a dichotomy between how diffoscope should be executed as
> installed from debian package (without suffix) and then if someone
> installs it using setup.py (with the suffix) or just reading your
> documentation (e.g. README)
This to my experience is normal development. stuff in a VCS tends to be a bit
different than installed one.
The README tells about how to use it out of the vcs clone.
> I do appreciate though the fact that with such a change and relocation
> setting of PYTHONPATH is necessary if someone wants to invoke diffoscope
> without e.g. 'python setup.py develop' (ideally within a virtualenv).
> Within fail2ban we even made some ugly workaround for such invocations,
> e.g.
>
> if os.path.exists("diffoscope/__init__.py"):
> sys.path.insert(0, ".")
>
> so someone could invoke directly within source code-base.
This is currently really possible and easy to do, just `./diffoscope.py ...`.
> Alternative to all of the above could be moving that script entirely
> under diffoscope/ module codebase and just establishing entry points with
> setuptools' setup() call. E.g. how we do in e.g. datalad
>
> https://github.com/datalad/datalad/blob/master/setup.py#L30
>
> which would then allow you to craft a test to verify functionality of the code
> in the script.
The current structure seems really sensible and sane to me, while I wouldn't
understand having the program entry point inside the module.
> Anyways -- decision is yours to make ;)
To me your proposals makes really little sense. But let's wait for the main
developer to show up :)
--
regards,
Mattia Rizzolo
GPG Key: 66AE 2B4A FCCF 3F52 DA18 4D18 4B04 3FCD B944 4540 .''`.
more about me: http://mapreri.org : :' :
Launchpad user: https://launchpad.net/~mapreri `. `'`
Debian QA page: https://qa.debian.org/developer.php?login=mattia `-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20150822/4c1e29f7/attachment.sig>
More information about the Reproducible-builds
mailing list