Giter VIP home page Giter VIP logo

scitools.org.uk's Introduction

scitools.org.uk

This is the repository containing content found at scitools.org.uk.

Building content for scitools.org.uk

The content is generated by running the build.py script at the root of the repository. build.py takes special template blocks from index.html and injects them into the resulting html.

Adding built docs

The html in this repository is a combination of generated and static content. The built documentation for tools such as Iris and cartopy must be generated using sphinx outside of this repository and subsequently added here. To do so, create the appropriate folder (e.g. iris/docs/v2.2) with the built documentation (typically created via sphinx). Once the content is in place, consider running tools/symlink_common.py . from the root of the repository. This will look through all files and share any common assets into the shared_assets folder, thus reducing the overall repository size to those that need to clone the repository.

Read the Docs Adoption

As of 25/01/2021, with the release of Iris 3 all documentation for Iris will be provisioned by Read the Docs (https://scitools-iris.readthedocs.io/en/stable/), this includes latest (master) and stable (most recent tagged release). The scitools.org.uk repo now has a latest and stable redirect that points towards Read the Docs. The older documentation (Iris 2.4 and earlier) will still be present in this repo, and as of today should no longer need to be updated via this repo, only via the Iris repo and then automatically built and served by Read the Docs.

cf-units is also provisioned by Read the Docs (https://cf-units.readthedocs.io/en/stable/) since the cf-units v3.0.0 release. Older documentation (v2.0 and earlier) lives in this repo.

Example workflow

Note, this example workflow uses Iris. As stated in the previous section this is not how the Iris documentation is released, it should however still apply to Cartopy.

To update scitools.org.uk so that it includes the Iris documentation for the Iris 1.12 release the following steps need to be followed.

  1. Build the Iris documentation using sphinx and add it to the scitools.org.uk repo.
$ cd <path_to_iris_repo>/docs/iris
$ make html
$ cp -a build/html <path_to_scitools.org.uk_repo>/iris/docs/v1.12
  1. Update the latest symlink.
$ cd <path_to_scitools.org.uk_repo>/iris/docs
$ unlink latest
$ ln -s v1.12 latest
  1. Update available versions in iris/docs/version_switch.js.

  2. Generate the shared_assets.

$ cd <path_to_scitools.org.uk_repo>
$ python tools/symlink_common.py .

Adding contributors

Our contributors list, and Contributor License Agreement (the "CLA"), are currently in the process of change.
There is a long list of earlier SciTools contributors who signed our original CLA based explictly on the LGPL3 License.
However, we are now attempting to re-license all the SciTools projects under a new CLA that will allow us in future to adopt any OSI license, as explained here.

This process will only be complete when all previous contributors have signed the new terms. Until then, we respect the rights of all the original contributors, in addition to those on the new list.

Details of the former, original Iris CLA and contributors list were as follows :

``contributors.json``, in this repo, contains a JSON dictionary of all contributors who have
signed the scitools CLA. It is the definitive source of such contributors.
It is where the [CLA bot](https://github.com/SciTools-incubator/scitools-cla-checker)
looks to determine if a CLA is required.
If you've signed the CLA and aren't yet on this list, please consider submitting a PR
to speed the process up. 
A [rendered view](https://scitools.org.uk/signed_cla.html) of the list is also
available.

The current CLA bot checks for an entry in either the old or the new contributors list.

(C) British Crown Copyright 2010 - 2022, Met Office

scitools.org.uk's People

Contributors

abooton avatar ajdawson avatar bblay avatar bjlittle avatar corinnebosley avatar djkirkham avatar dopplershift avatar dpeterk avatar esc24 avatar greglucas avatar kaedonkers avatar lbdreyer avatar marqh avatar munslowa avatar pelson avatar pp-mo avatar qulogic avatar rcomer avatar rhattersley avatar tkknight avatar trexfeathers avatar tv3141 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scitools.org.uk's Issues

User guide change to highlight non-standard cubes

Following discussions with users it was agreed that we could modify the user guide to illustrate that Iris 'cubes' are not always of a 'standard' form (e.g. time, height, latitude, longitude).

A possible example would be the use of polar coordinates and elevation from radar. Perhaps we could find a way of illustrating the contents of this non-rectangular 'cube' along with a gallery example.

"print iris.load" shows some GRIB fields as "unknown"

"print iris.load" shows some fields as "unknown"

For example, with this GRIB2 file : http://bv.waihee.org/gfs.2015010800/gfs.t00z.pgrbf0-96-3.2p5deg.grib2 , doing "print iris.load" shows one field as "unknown", but when I convert that file to NetCDF (using "wgrib2") : http://bv.waihee.org/gfs.2015010800/gfs.t00z.pgrbf0-96-3.2p5deg.nc ) and do "print iris.load" on it, then the field shows up as "Precipitation Rate / (kg/m^2/s)" . I suspect this is because wgrib2 is reading "nameECMF" (or "name") field, whereas "iris.load" is reading "cfNameECMF" (or "cfName").

Another example : this GRIB1 file : http://bv.waihee.org/gfs.2015010800/gfs20150108081701674.grb . Three fields show up as "unknown" . grib_dump shows them as "Mean sea level pressure", "Precipitation rate" and "Geopotential Height" (strangely, cfNameECMF = geopotential_height, so iris.load is apparently not using the "cfNameECMF" field). FYI, I got this GRIB1 file from "http://saildocs.com", which is a GRIB email service used by sailors over slow data connections.

Thanks,
Ken

Humble suggestions

Simple, clean and accessible, good stuff!

Might be worth mentioning, on the home page, that the list of formats is extensible.

Also might be worth, on the governance page:

  • Turning the cla text into a link,
    as it might put people off, not bothering to find out for themselves.
  • Mentioning that the benevolent dictator model is intended to end (if it still is).
  • The mention of "TIS" won't mean anything to people. Perhaps "IT" or "TIS (IT)"?
  • "We have listed below the available support channels for the project". Fibber!

Finally, on the code page, the table of contents seems silly on such a tiny page :D

Reinstate the contributors list

I'd like to see the rendered list of contributors return to the scitools website. The README states that:

contributors.json contains a JSON dictionary of all contributors who have signed the scitools CLA. It is the definitive source (as rendered in scitools.org.uk/about.html)

This is no longer true, in that the about page is different and does not contain the rendered list of contributors.

This page was useful when a human wants to check why the CLA bot failed (sometimes the submitting user has signed the CLA but the commit isn't using a registered email) and provide feedback to users submitting PRs.

Documentation for 2.2.1 shows error 404

It looks like there is a spurious html directory inside the iris 2.2.1 docs directory merged in #223, the content from that directory should be moved into the 2.2.1 directory (iris/docs/v2.2.1/html/* -> iris/docs/v2.2.1/)

Purge redundant website content

The website is currently updated by adding bits (i.e. uploading stuff),

  • but this can leave obsolete stuff in place.

Have now removed all references to the obsolete /pages/ htmls

But ideally, we do also need to purge out all the obsolete info.

Key aim : make the scitools website a simple image of the repo.

Add Privacy Policy web page

Add approved privacy policy for contributors to be informed on how personal data will be protected, access to it controlled and procedure for review and update.

Rationale for symlinking does not seem valid

The rationale given is "thus reducing the overall repository size to those that need to clone the repository", but one of the old taglines for git is it's the "stupid content tracker", key word being content. Having multiple copies of the same file does not substantially change the size to be cloned:

mkdir separate
git init separate
cd separate
mkdir a b c
# This is the largest file in the repo at ~7M:
cp ../cartopy/docs/v0.15/examples/wmts_time_00_00.pdf a/
cp ../cartopy/docs/v0.15/examples/wmts_time_00_00.pdf b/
cp ../cartopy/docs/v0.15/examples/wmts_time_00_00.pdf c/
git add a b c
git commit -m 'Initialize'
git gc --aggressive
cd ../

mkdir symlinked
git init symlinked/
cd symlinked
mkdir a b c shared
cp ../cartopy/docs/v0.15/examples/wmts_time_00_00.pdf a/
cp ../cartopy/docs/v0.15/examples/wmts_time_00_00.pdf b/
cp ../cartopy/docs/v0.15/examples/wmts_time_00_00.pdf c/
../tools/symlink_common.py . --shared-dir shared
git add a/ b/ c/ shared/
git commit -m 'Initialize'
git gc --aggressive
cd ..

This gives:

$ du -hsc */.git
7.3M	separate/.git
7.3M	symlinked/.git

Symlinking might be useful to reduce checkout size though, so maybe that's what it should say?

Decouple from Iris + cartopy docs

Found while scanning for the 'real' changes in #36 that there is a lot of noise in the commits, as all the new source files for cartopy v0.5 are listed as changes. All that is actually change in cartopy itself -- i.e. it is managed in another repo, so it could be much tidier if we factored that stuff out.
What it needs is for this repo to contain a build process, which constructs the docs (for the various release versions) from tag-links into the iris + cartopy repos -- instead of having all those html pages here themselves.
At present, it seems it could get a bit messy. Plus, we will eventually get to store loads+loads of different docs pages in multiple versions here, so that will eventually get cumbersome.

Content for documentation page

Content for the page needs to written to point to current documentation for the stable release along with pointers to historic releases. Documentation for 0.9 and 1.0 releases will need to be uploaded to the website.

Publish a CLA for contributors

Once the data proetction act issues have been resolved, publish a CLA along with fair processing notice so that potential contributors can give their permission for distribution of source code, documentation and any bug fixes.

Help creating wind barbs plot

Not really an "issue", but I'm hoping that someone can make a quick cartopy script to display wind barbs from a GFS file.

For example, I wrote a little bash/curl script to get surface pressure, wind speed, prate, etc. Here is a resulting data file (converted to NetCDF w/ wgrib2) with all the forecasts concatenated together : http://bv.waihee.org/gfs.2015010800/gfs.t00z.pgrbf0-96-3.2p5deg.nc .

If someone could write a simple cartopy qplot script with wind barbs, I'd appreciate it.

Is it possible to make one plot with a contour lines for PRMSL, barbs for U/VGRD and contourf for the PRATE ?

Cheers,
Ken

Issues with new site design

The menu button (3-bars that replace right hand side navbar items) that appears in the mobile view doesn't do anything when you click on it. It should display a menu pop-up with the navbar options (Home, Organisation, Documentation, Github). You can reproduce in Chrome by navigating to https://scitools.org.uk and using the developer tools to simulate Pixel 2 (although any mobile setting I tried including iPad shows the same issue).

There is also a warning in the console: Failed to load resource: net::ERR_NAME_NOT_RESOLVED count.json:1. I don't know what this relates to or if it is important.

Custom 404

The site could have a custom 404 page, with the same styling as the site, at present it defaults to the host's 404, which looks/feels quite different.

It just feels a bit clunky, it's not a major issue.

TOC in 'Code' pages

Scitools contains 'code' detail pages for both iris + cartopy ...

At present, both these contain a redundant TOC which does basically nothing (because the page is so short, clicking takes you nowhere different).
It actually looks (IMHO) like it is presenting you a list of three useful activity links (cos it's not immediately obvious it's a TOC). But they go nowhere!

Probably just remove?

Favicon for Cartopy

Create and upload a favicon for Cartopy pages. Favicon needs to be based on Cartopy logo but without the word 'Cartopy' on it.

Front page update

Add the following paragraph:

"Iris and Cartopy are open source Python libraries created by the Met Office to enable the visualisation of weather and climate data. Both libraries are actively developed in collaboration within the scientific community."

remove usernames

remove usernames from the source, such as this.

I think these text files might just be intermediate build files.
If so we could add them to .gitignore.

Content for download page

Content for the download page will need to be written to direct the user to scitools/iris tags page.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.