You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@climate.apache.org by "Goodman, Alexander (398K)" <al...@jpl.nasa.gov> on 2016/07/20 19:25:43 UTC

[ANNOUNCE] new ocw conda package!

Hi all,

I am pleased to inform you all that we now have a prototype conda package
for OCW. If you have conda installed (if you don't, then you should!),
users may now install ocw to their ocw environment using

conda install -c agoodman ocw

There are some caveats to this approach for using OCW, which I stated
earlier in another mailing list:

> 1) Currently this installs the latest version of OCW from the github repo.
> However, the actual source is in a tarball rather than from cloning the
> repo directly as the Easy-OCW workflow does, so a manual upload (at least,
> to the best of my current knowledge) is necessary if we will wish to keep
> the package source code at cutting edge versions at all times. This could
> however be a pro too given that the latest version is not necessarily going
> to be stable at any given moment. conda also allows the user to easily
> switch between versions as any good package manager should.
> 2) A few of the dependencies are not available on the main anaconda
> channels (eg, some the ESGF related modules). This means that in addition
> to OCW itself, we would be responsible for keeping up to date versions of
> those packages available on our own channel. Since they are not updated
> nearly as frequently as, say, numpy, it probably won't be an issue in
> practice but again something to keep in mind
> 3) Running the install script will install OCW to your conda environment
> (eg, your anaconda/lib/python2.7/site-packages directory). Essentially, it
> automatically installs all of the dependencies needed to run the examples
> and allow the end user to use the ocw python module without fiddling with
> their PYTHONPATH. Developers as well as those running the RCMES config file
> examples will still need to clone the repo as they have always done.
> Now for some good news:
> 1) Creating Linux and (gasp) Windows versions of the package is quite
> easy. This can literally be done in one shell command. I'll get around to
> doing this right after sending this message.
> 2) Although the channel is called "agoodman", it is certainly possible to
> give other people besides myself the ability to update and maintain the
> package here. We can always make a shared account and password and copy all
> of the packages there too.
> 3) conda has the ability to create virtual environments for testing
> purposes, as was originally intended with Easy-OCW's installation of
> virtualenv. Since this was the component of Easy-OCW that we've had trouble
> installing, this should give users who would ever need this feature a peace
> of mind. More info on this can be found here: [1]
> [1] - http://conda.pydata.org/docs/using/envs.html


If this proves to be effective then I think we should begin directing users
towards this installation method instead of Easy-OCW, since it is far more
platform agnostic and directly talks to conda, which is the main
installation method that's used for most of our dependencies already. Kyo
has already tested the examples using this installation method on a clean
OSX system, so we can comfortably say that this at least works for OCW
standalone / RCMES.

Very soon I will be committing the conda build recipes to the main repo, as
well as adding some more detailed instructions on how to maintain our conda
packages. For collaboration purposes, we have two options we should decide
on:

1) Use my existing anaconda channel (agoodman). To update any packages, we
may share a token amongst ourselves and then upload any changes directly.

2) Create a new anaconda account / password combination that is shared
between all of us. The existing packages would need to be copied over.

In the meantime, feel free to test the package install out and let me know
which option of the two above you prefer.

Thanks,
Alex
-- 
Alex Goodman
Data Scientist I
Science Data Modeling and Computing (398K)
Jet Propulsion Laboratory
California Institute of Technology
Tel: +1-818-354-6012