[Pythonmac-SIG] Advice wanted on dependency building...

Matthias Baas matthias.baas at gmail.com
Fri May 24 15:35:19 CEST 2013


On Thu, May 23, 2013 at 11:41 PM, Chris Barker - NOAA Federal <
chris.barker at noaa.gov> wrote:

> On Thu, May 23, 2013 at 2:29 PM, Matthias Baas <matthias.baas at gmail.com>
> wrote:
>
> > From a user's point of view, I find that Windows installers as generated
> > by bdist_wininst still provide the nicest user experience with OSX
> > packages being a close second.
>
> second? Aren't they essentially the same experience? But anyway..
>

I may be wrong, but I thought pure Python packages that are distributed as
an OSX package are still targeted at one particular version of Python. On
Windows, the installer would provide a list of all the installed Python
versions and ask for which version you want to install the package.
Another difference is that on Windows, I can uninstall the package again.


> > You even mention pip as a solution to type 1 users and again, I do agree
> > with this. That's why I find it a bit surprising that in the remainder
> > of this thread, a lot of the discussion is about pip and virtualenv (as
> > far as I can tell, all the solutions that were mentioned were command
> > line solutions), even though you actually didn't want to target this
> > category of users.
>
> I don't agree -- I'm not opposed to requiring a command-line command
> or two -- really you can't get far as any kind of programmer if you
> can't type:
>

I see. I have seen people that only used Python by launching IDLE and doing
everything from there, they never got into contact with a terminal window.
Telling them to first install pip, then install some other packages, would
complicate things for them quite a bit. But I'm not saying we have to
support those people, it was just that your categorization of users
reminded me of those people.
If pip is more and more becoming the standard way of installing things,
then, of course, it definitely makes sense to follow its way of handling
packages. I suppose sooner or later, a GUI frontend for it will pop up so
that it becomes easier to install packages.


> The advantage of pip and friends is that it handles dependencies --
> simple binary installer don't do that for you.
>

I'm aware of that. From my personal experience, this has never been an
issue for me though. I'm only using a handful of third-party packages on a
more or less regular basis (such as PyQt, Sphinx, numpy, PIL, PyOpenGL,
pygame) and only occasionally install some other packages to try stuff out,
so for me, there hasn't really been a compelling reason why I should use
pip instead. (Maybe it's also that it reminds me too much to systems like
MacPorts and I have just seen MacPort fail too many times to put much trust
in such a system. But then, this always had to do with building packages
locally, whereas you are planning on providing binaries, so this won't be
an issue. Sorry for my rant!)


> I think my plan is now:
>
> The step to building and distributing a package:
>
> 1) build the deps
> 2) build the package
> 3) build the package installer
> 4) put the package installer up somewhere people can find it.
>
> Im going to work on a system for (1) and (2) first -- still not sure
> about the dynamic linking part....
>
> For now, probably use bdist_mpkg for (3) -- when wheels are generally
> supported, maybe use them.
>
> If/when I get a few packages built, I'll think about where to put them up.
>
> Anyone have an idea for a host? I understand gitHub no longer really
> support binary distribution...
>

Sounds all good and promising! As for web space, a lot of people don't seem
to like SourceForge anymore, but at least they do provide some web space
and infrastructure where you could put your stuff.

Cheers,

- Matthias -
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pythonmac-sig/attachments/20130524/64b38396/attachment.html>


More information about the Pythonmac-SIG mailing list