[AstroPy] POLL: vision for a common Astronomy package

Mark Sienkiewicz sienkiew at stsci.edu
Thu Jul 7 15:07:16 EDT 2011


Ole Streicher wrote:
> Am 06.07.2011 16:21, schrieb Mark Sienkiewicz:
>   
>> I often have the opposite problem -- the package that the system 
>> provides is the one that is older and broken.  For example, every one of 
>> my Solaris machines already has BLAS installed, and every one of them is 
>> missing a function that scipy needs.  At times, I've had to make 
>> difficult hacks to autoconfigs to make it use the copy of some library 
>> that I provide.
>>     
>
> Sorry, but I would call "Solaris" a really special case -- 

I don't think Solaris has any kind of monopoly on crappy software.  You 
can pretend I said "Mac OSX had a bad BLAS/LAPACK", or "autoconf found 
something that I didn't know that Fink installed", or "Linux had a 
too-old copy of freetype", or "my linux machine comes with subversion 
1.1".  All of these are issues that I've had to deal with.

I'm talking about a large class of problems.  That one particular 
library on one particular operating system was just an example.


>> If there is an ACTIVE choice made by the user, I agree.  The user could 
>> choose to use the already-installed package if they need to do that.  
>>     
>
> I do not speak so much about "users", but about "package maintainers",
> who compile the software and create packages that can then be installed
> by the users, taking care of about all the dependencies one would need.
>   


I absolutely need to talk about users.  It is a mistake to think that 
users only ever install software from the packages that package 
maintainers are creating.

Users typically know just enough to make their computer work, and 
(judging from the support tickets I handle) some of them don't even know 
that.  You should expect that because they are concentrating on their 
application (e.g. astronomy) rather than the computer.  For them, all 
the default choices should work as smoothly and easily as possible.


> For example, when I packaged pywcs for Ubuntu, I created in two
> packages: one with the wcslib (since wcslib was not available for
> Ubuntu), and another for the python wrapper itself. The latter package
> has the dependency for the lib; if needed one could even specify that a
> specific version should be installed. On systems that allow a smart
> package management, we should allow (and encourage) to use it as much as
> possible. Wouldn't his help for Solaris?
>   


It is not clear.  I am quite reluctant to use things that automatically 
select software for me, because I have had them choose badly on so many 
occasions.


>> I would object if there is an automatic detector that prefers the system 
>> package, primarily because that is a scenario that causes problems for 
>> me all the time both as a user and as a support engineer.
>>     
>
> My goal is that the use any external package that is used in astropy is
> well-documented (which versions are compatible, where to get it etc.)
> and if the external package is included in the python package, there
> should be a switch to use the external library instead.
>   

At the end, this is the solution that we can both agree on.  You can 
tell it to use the external library when you want to, and I can tell it 
not to.  As long as it responds correctly to our respective directives, 
it works well for everybody.

Mark




More information about the AstroPy mailing list