On Mon, Apr 27, 2009 at 5:40 PM, Robert Kern <robert.k...@gmail.com> wrote:
> On Mon, Apr 27, 2009 at 18:36, Wes McKinney <wesmck...@gmail.com> wrote: > > On Mon, Apr 27, 2009 at 5:59 PM, Charles R Harris > > <charlesr.har...@gmail.com> wrote: > >> > >> On Mon, Apr 27, 2009 at 3:05 PM, Wes McKinney <wesmck...@gmail.com> > wrote: > >>> > >>> Hello, > >>> > >>> I am wondering if anyone can offer some suggestions on this problem. > Over > >>> the last year or so I have been building a number of libraries on top > of > >>> NumPy + SciPy + matplotlib and other libraries which are being used for > >>> investigative research for my company's problem domain in place of, > say, > >>> Matlab and R (which are more "ready out of the box" systems). I have > >>> approximately 20 users, all of whom are running Windows on a very > >>> Microsoft-centric network with databases, etc. Has anyone had any luck > >>> managing a standardized Python environment on lots of Windows machines > with > >>> a large number of 3rd-party Python libraries? Upgrading packages right > now > >>> involves getting 20 people to click through an .exe installer, which is > >>> hardly a good solution. For example, I was recently forced to upgrade > >>> everyone's NumPy to 1.3 after I discovered that a DLL I had built > against > >>> 1.3 was incompatible with 1.2.x. > >> > >> Out of curiosity, what was the nature of the incompatibility? > >> > >> Chuck > > > > A Cython DLL using the NumPy include and buffer interface (which worked > fine > > in 1.2.x, too) caused a hard crash on import, I wasn't able to diagnose > > further. > > We have also encountered a number of segfaults upon import_array() on > multiple platforms due to an extension module being built against > numpy 1.3 but being imported after numpy 1.2. > Hmm... OK, I think that is because of the endianess function added to the API. It is called during module load and since it isn't there for 1.2, crash. There is also a check for the API version that should have raised an error, but evidently not. I think the endianess check should probably be moved to testing and not be done during the load. Or it can simply be removed from the interface and/or be implemented inline. I don't think having it in the interface is that important. Chuck
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion