[ncl-talk] Policy on support for contributed code

Mary Haley haley at ucar.edu
Wed Aug 6 12:42:01 MDT 2014


Hi Simon,

You bring up some good questions and I don't mind that you posted to
ncl-talk.

Here are the answers to your two questions, and I'll provide some
additional information below.

----------------------

A1) The "contributed.ncl" functions and procedures that are documented here:

        http://www.ncl.ucar.edu/Document/Functions/Contributed/

are a set of routines written mostly by Dennis Shea with contributions by
Adam Phillips and other NCL users.  Dennis and Adam are associate
scientists in NCAR's Climate and Global Dynamics Division and are not
officially paid by the NCL project to develop these routines.

However, the NCL team recognizes these routines as critical contributions
to NCL and hence we work with Dennis and Adam to fully support them. This
includes fixing bugs, updating documentation, and adding new functions as
appropriate.

On occasion, we've added routines to this file that were contributed by
users outside of NCAR. If these functions are listed in the above URL, then
they are also supported by the NCL team.

*Caveat*: there are many *undocumented* supplemental routines inside of
"contributed.ncl".  If they are not officially documented somewhere on the
above URL, then that means they could change, disappear, or be renamed.  We
do not guarantee the backwards compatibility or continual existence of
undocumented functions.

A2) We are pretty strict about backwards-compatibility for "officially"
documented routines.

With the exception of special user-contributed scripts (mentioned below),
all routines listed here:

http://www.ncl.ucar.edu/Document/Functions/list_alpha.shtml

are ones that we plan to keep forever, and are strict about keeping
backwards compatibility. This means we don't change or reorder the
arguments that are passed to the routine, or we don't suddenly return
different values, say in a different units.

There are many functions that we've provided better versions of, but unless
there's a serious bug or some other reason not to keep it, we keep the
older functions around.  We usually document these as "deprecated" on the
function pages.  As an example, see "ut_calendar" which we deprecated and
now encourage people to use "cd_calendar":

http://www.ncl.ucar.edu/Document/Functions/Built-in/ut_calendar.shtml


----------------------

Special note about other user-contributed routines:

For user-contributed routines that we want to include with NCL but can't
promise support, we use a different method. We put these in a directory
called "$NCARG_ROOT/lib/ncarg/nclscripts/contrib" as NCL scripts that you
have to load individually.

We do document some of these routines in our giant alphabetical list of
routines for convenience, but we usually try to get the contributing person
to volunteer to provide support if possible.

To see a list of the different types of NCL scripts that we have, and the
routines that are documented in each of these, go to:

http://www.ncl.ucar.edu/Document/Functions/list_type.shtml

With the exception of the very last one called "User contributed scripts",
which are the routines that go in the "contrib" directory I just described,
all of the functions and procedures listed in the given links are supported
by us.

Let me know if you have any further questions or concerns.

--Mary



On Wed, Aug 6, 2014 at 3:34 AM, Simon Read <s.read at reading.ac.uk> wrote:

> Dear NCL team and users,
>
> I'm new NCL user, working in academia, who is evalauting a software
> package that is largely based on NCL.
>
> This post is about the culture of NCL rather than a technical issue, but I
> hope you don't mind me posting it here. Specifically, but I have a couple
> of questions about present and future support for contributed code, i.e.
> those functions and procedures loaded from:
>
> $NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl
>
> Q1) I'm sure the contributed code is very reliable, but in the unlikely
> event a bug was identified, would it be the responsibility of the NCL
> development team to fix it, or the contributing author?
>
> Q2) Is it the intention to keep all the existing contributed functions and
> procedures in future NCL distributions for the foreseeable future? Put
> conversely, may some contributed functions and procedures be left out of
> future NCL versions, e.g. due to the presence of better alternatives, or
> incompatibility with other code in the new version?
>
> Many thanks in advance for any advice you can give.
>
> Kind regards,
> Simon
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20140806/f82767a6/attachment.html 


More information about the ncl-talk mailing list