Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 61 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
###############################################################################
# CODEOWNERS
###############################################################################
#
# Purpose
# -------
# This file defines code ownership for the JULES repository.
#
# Notes
# -----
# * Code ownership indicates leadership and review responsibility, not a
# commitment to undertake all work or reviews.
# * Planned changes should be discussed with the relevant module leader.
# * Module leaders should be offered the option to review changes affecting
# their areas.
# * Interfaces between components must be agreed by all affected parties.
# * When leadership changes, this file should be updated.
# * Rose meta-data (in rose-meta) is owned by the appropriate module leader.
#
###############################################################################
# Science Module Leaders (informational)
###############################################################################
# Surface: John Edwards, Rich Ellis
# Hydrology: Nic Gedney, Sonja Folwell
# Vegetation: Lina Mercado, Karina Williams, Rebecca Oliver
# Veg3 RED Demography: Andy Wiltshire, Arthur Argles
# Biogeochemistry: Eleanor Burke, Noah Smith
# Biogenic fluxes: Garry Hayman, James Weber
# Fire: Doug Kelley, Chantelle Burton
# Lakes: Helen Johnson
# Evaluation: Nina Raoult, Siyuan Tian
# CABLE Science: Ian Harman, Claire Carouge
# IMOGEN: Chris Huntingford, Eleanor Burke
#
###############################################################################
# Code Owners
###############################################################################

/** @GiorgiaLine
rose-meta/**/version*.py @james-bruten-mo
rose-meta/jules-shared/**/HEAD/rose-meta.conf @maggiehendry
rose-meta/jules-standalone/HEAD/rose-meta.conf @maggiehendry
rose-meta/jules-um/HEAD/rose-meta.conf @maggiehendry
rose-meta/jules-lfric/HEAD/rose-meta.conf @maggiehendry
rose-stem/ @james-bruten-mo
etc/ @MetOffice/ssdteam
**/science/river_routing/ @maggiehendry
**/initialisation/rivers-standalone/ @maggiehendry
**/control/rivers-standalone/ @maggiehendry
**/control/shared/jules_rivers_mod.F90 @maggiehendry
**/io/rivers-standalone/ @maggiehendry
**/control/shared/surf_couple_rivers_mod.F90 @maggiehendry
**/initialisation/standalone/ancillaries/init_ancillaries_coupling_mod.F90 @maggiehendry
**/initialisation/standalone/ancillaries/init_rivers_process_data_mod.F90 @maggiehendry
**/initialisation/standalone/ancillaries/init_rivers_props_mod.F90 @maggiehendry
**/initialisation/standalone/ancillaries/jules_rivers_props_mod.F90 @maggiehendry
**/initialisation/standalone/grid/init_river_out_grid_mod.F90 @maggiehendry
**/initialisation/standalone/init_rivers.F90 @maggiehendry
**/control/shared/jules_water_resources_mod.F90 @maggiehendry
**/control/shared/overbank_inundation_mod.F90 @maggiehendry
**/io/dump/get_dim_info_mod.F90 @maggiehendry
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Code Reviewer: <!-- CR id, filled by SSD -->
- [ ] Comments have been included that aid undertanding and enhance the
readability of the code
- [ ] My changes generate no new warnings
- [ ] If editing `rose-meta/jules-shared` then have you supplied a linked UM PR?
- [ ] If editing `rose-meta/jules-shared` then have you supplied a linked UM and LFRic Apps PR?

## Testing

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/cla-check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ jobs:
cla:
uses: MetOffice/growss/.github/workflows/cla-check.yaml@main
with:
runner: 'ubuntu-24.04'
cla-url: 'https://github.com/MetOffice/jules/blob/main/CLA.md'
4 changes: 2 additions & 2 deletions .github/workflows/user-guide.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
outputs:
should-deploy: ${{ steps.check-deploy.outputs.should-deploy }}
env:
PYTHON_VRSN: '3.13'
PYTHON_VRSN: '3.12'
JULES_PATH: jules
ARTIFACT_PATH: artifact
OUTPUT_PATH: jules_docs
Expand All @@ -43,7 +43,7 @@ jobs:
- name: Check deployment conditions
id: check-deploy
run: |
if [[ "${{ github.repository }}" == "MetOffice/jules" && "${{ github.ref_name }}" == "main" && ("${{ github.event_name }}" == "push" || "${{ github.event_name }}" == "merge_group" || "${{ github.event_name }}" == "release" || "${{ github.event_name }}" == "workflow_dispatch") ]]; then
if [[ "${{ github.repository }}" == "MetOffice/jules" && ("${{ github.ref_name }}" == "main" || "${{ github.ref_name }}" == "stable") && ("${{ github.event_name }}" == "push" || "${{ github.event_name }}" == "merge_group" || "${{ github.event_name }}" == "release" || "${{ github.event_name }}" == "workflow_dispatch") ]]; then
echo "should-deploy=true" >> $GITHUB_OUTPUT
else
echo "should-deploy=false" >> $GITHUB_OUTPUT
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ processed_data/*.dat
.idea
*.pyc
.pytest_cache
*.egg-info/

# ignore build output
*build/
Expand Down
217 changes: 217 additions & 0 deletions CLA.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,217 @@
---
Title: JULES Contributor Licence Agreement
Version: "1.0"
---

# JULES Contributor Licence Agreement

Thank you for your interest in contributing to JULES, which is managed by the
Met Office.

In order to clarify the intellectual property licence granted with Contributions
from any person or entity, the Met Office must have a Contributor License
Agreement ("CLA" or "Agreement") that has been signed by each Contributor,
indicating agreement to the licence terms below. Each contributing individual
within a contributing organisation must personally sign the CLA form.

This licence is for your protection as a Contributor as well as the protection
of JULES and its users; it does not change your rights to use your own
Contributions for any other purpose.

**To sign the CLA, please enter your details in the `CONTRIBUTORS.md` file
located in the software repository. By adding your details, you confirm your
agreement to the terms of this CLA. Once agreed, this constitutes a legally
binding agreement between You and the Met Office.**

The Met Office will collect, use and process your Personal Data for the purpose
of supporting the development of JULES and recording ownership of Contributions.
Your Personal Data will be processed in accordance with the Met Office
[Privacy Policy](https://www.metoffice.gov.uk/about-us/legal/privacy). The legal
basis for processing is **contractual necessity**, as set out in the
[Privacy Policy](https://www.metoffice.gov.uk/about-us/legal/privacy). Personal
Data processed by the Met Office will not be disclosed to third parties for
marketing purposes. Your GitHub username will be published on a public website
in order to permit Developers of JULES to ascertain that Your Contribution is
covered by a signed CLA. Your Personal Data will be stored on a GitHub
repository belonging to JULES administrators and may therefore result in the
data leaving the UK / European Economic Area. For further information, please
see GitHub's
[Privacy Policy](https://docs.github.com/en/site-policy/privacy-policies).

To end this Agreement please contact <Scientific_Partnerships@metoffice.gov.uk>.
This will result in your GitHub username being removed from the public list of
CLA signees and will prevent further Contributions from You being accepted into
JULES. Please be aware that for the purpose of recording previous agreements
covering Your existing Contributions, it is not possible to withdraw the signed
CLA from the historical archive. This does not affect your rights as a data
subject, as set out in the
[Privacy Policy](https://www.metoffice.gov.uk/about-us/legal/privacy).

You accept and agree to the following terms and conditions for Your past,
present and future Contributions submitted to JULES. In return, the Met Office
shall not use Your Contributions in a way that is contrary to the interests of
users of JULES. Except for the licence granted herein to the Met Office and
recipients of JULES, You reserve all right, title, and interest in and to Your
Contributions.

## 1. Definitions

**"You"** (or **"Your"**) shall mean the copyright owner or legal entity
authorised by the copyright owner that is making this Agreement with the Met
Office. For legal entities, the entity making a Contribution and all other
entities that control, are controlled by, or are under common control with that
entity are considered to be a single Contributor.

For the purposes of this definition, **"control"** means (i) the power, direct
or indirect, to cause the direction or management of such entity, whether by
contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

**"Contribution"** shall mean any original work of authorship, including any
modifications or additions to an existing work, that is intentionally submitted
by You to JULES. For the purposes of this definition, "submitted" means any form
of electronic, verbal, or written communication sent to JULES and/or the Met
Office or their representatives or members, including (but not limited to)
communication on electronic mailing lists, source code control systems, and
issue tracking systems that are managed by, or on behalf of, JULES and/or the
Met Office for the purpose of discussing and improving JULES, but excluding
communication that is conspicuously marked or otherwise designated in writing by
You as "Not a Contribution".

**"JULES"** shall mean software tools made available under the JULES name and/or
logo and published through public channels.

**"Met Office"** shall mean the Met Office, an Executive Agency of the
Department for Science, Innovation & Technology of the United Kingdom of Great
Britain and Northern Ireland ("DSIT"), whose principal place of business is
situated at FitzRoy Road, Exeter, Devon EX1 3PB, United Kingdom, for and on
behalf of DSIT.

**"Parties"** shall mean the Met Office and You.

**"Working Day"** shall mean a day other than a Saturday, Sunday or public
holiday in England when banks in London are open for business.

**"Personal Data"** shall have the meaning given in s.3 of the Data Protection
Act 2018.

## 2. Grant of copyright licence

Subject to the terms and conditions of this Agreement, You hereby grant to the
Met Office and to recipients of JULES a perpetual, worldwide, non-exclusive,
royalty-free, irrevocable copyright licence to reproduce, prepare derivative
works of, publicly display, publicly perform, sublicense, and distribute Your
Contributions and such derivative works under the terms of the
[BSD 3-clause licence](https://opensource.org/license/bsd-3-clause). Full
details of the licence specified for JULES can be found in the LICENCE file of
the project's source code repository.

You agree and acknowledge that the Met Office may sublicense and distribute your
Contributions under any subsequent version of the licence specified for JULES.
Furthermore, You agree that the Met Office may change the licence from time to
time to an alternative open source license from the list maintained by the
[Open Source Initiative](https://opensource.org/) in order to suit the evolution
of JULES.

## 3. Intellectual property rights infringement

If any third party makes any claim against You or any other entity, alleging
that your Contribution, or the work to which you have contributed, infringes the
intellectual property rights of that third party, then You shall inform the Met
Office within five (5) Working Days of such claim in order for the Met Office to
take all appropriate action it deems necessary in relation to the claim.

## 4. Legal entitlement

You represent that you are legally entitled to grant the above licence. If your
employer(s) holds rights to intellectual property that you create that includes
your Contributions, you represent that you have received permission to make
Contributions on behalf of that employer, or that your employer has waived such
rights for your Contributions to JULES.

## 5. Contribution of Your creation(s)

You represent that each of Your Contributions is Your original creation and that
you have not assigned or otherwise given up your interest in the Contribution to
any third party. You represent that Your Contribution submissions include
complete details of any third-party licence or other restriction (including, but
not limited to, related patents and trademarks) of which you are personally
aware and which are associated with any part of Your Contributions.

## 6. Notification

You agree to notify the Met Office of any facts or circumstances of which you
become aware that would make these representations inaccurate in any respect.
You further agree to fully indemnify, and keep indemnified, the Met Office
against any losses suffered as a result of any fraudulent or negligent
misrepresentation made by you under Clauses 4 or 5.

## 7. Dispute resolution

The Parties shall attempt in good faith to negotiate a settlement to any dispute
arising between them out of or in connection with this Agreement within thirty
(30) Working Days of the dispute arising.

If the dispute cannot be resolved, then the Parties shall attempt to settle it
by mediation in accordance with the Centre for Effective Dispute Resolution
("CEDR") Model Mediation Procedure from time-to-time in force.

To initiate the mediation a party to the Agreement must give notice in writing
(the "ADR Notice") to the other party requesting mediation in accordance with
this clause.

## 8. Mediation

The mediation is to take place not later than thirty (30) Working Days after the
ADR Notice is received. If there is any issue concerning the conduct of the
mediation upon which the Parties cannot agree within fourteen (14) Working Days
of the ADR Notice being received, then CEDR shall, at the request of either
party, decide the issue for the Parties, having consulted with them.

Unless otherwise agreed, all negotiations connected with the dispute and any
settlement shall be conducted in confidence and without prejudice to the rights
of the Parties in any future proceedings.

If the Parties reach agreement on the resolution of the dispute, the agreement
shall be reduced to writing and shall be binding on the Parties once it is
signed by both You and the Met Office.

If the Parties fail to reach agreement within sixty (60) Working Days of the
initiation of the mediation, or such longer period as may be agreed by the
Parties, then any dispute or difference between them may be referred to the
courts.

Nothing in this Agreement affects the right of You or the Met Office to apply to
the court for urgent interim equitable relief (including, but not limited to, an
injunction)

## 9. General

1. For the purposes of clarity: this Agreement constitutes a contract for the
grant of a licence and not a contract of employment.
2. No waiver by either party of any of its rights under this Agreement shall
release the other party from full performance of its other obligations stated
herein.
3. Nothing in this Agreement shall be deemed to constitute, evidence, or
comprise a partnership between the Parties or to constitute either party the
agent of the other.
4. Neither party may assign its rights under this Agreement in whole or in part
to any person, firm or company without the prior written agreement of the
other party.
5. No amendment, waiver, or variation, of this Agreement, whether in whole or in
part, shall be binding on the Parties unless set out in writing and signed by
or on behalf of the Parties by their duly authorised representatives.
6. If any provision of this Agreement is held by a competent authority to be
illegal, invalid, or unenforceable, whether in whole or in part, the validity
of the remainder of the relevant provision and the remaining provisions shall
not be affected or prejudiced.
7. Each party shall, at its own cost and expense, from time to time do or
procure the execution of all documents as may be reasonably necessary in
order to give effect to the provisions of this Agreement.
8. The Parties to this Agreement do not intend that any of its terms will be
enforceable by any person not a party to it.
9. This Agreement shall be governed by and construed in accordance with the laws
of the England and Wales.

Please confirm acceptance of this CLA by entering your details in the
`CONTRIBUTORS.md` file located in the software repository.
10 changes: 3 additions & 7 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@

| GitHub user | Real Name | Affiliation | Date |
| --------------- | ---------------- | ----------- | ---------- |
| james-bruten-mo | James Bruten | Met Office | 2025-12-09 |
| ppharris | Phil Harris | UKCEH | 2025-12-18 |
| maggiehendry | Maggie Hendry | Met Office | 2026-01-26 |
| andrewcoughtrie | Andrew Coughtrie | Met Office | 2026-02-10 |
| yaswant | Yaswant Pradhan | Met Office | 2026-02-11 |
| ScottWales | Scott Wales | Bureau of Meteorology | 2026-02-16 |
| t00sa | Sam Clarke-Green | Met Office | 2026-02-27 |
| yaswant | Yaswant Pradhan | Met Office | 2026-06-30 |
| doucla | Douglas Clark | UKCEH | 2026-07-03 |
| james-bruten-mo | James Bruten | Met Office | 2026-07-09 |
24 changes: 24 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,12 @@ projects (e.g., [CMIP6](https://wcrp-cmip.org/cmip-phases/cmip6/)) and is placed
firmly at the cutting edge of international land surface modelling because of
continual science development and improved accessibility.

Further details about how JULES works can be found in the [JCHMR overview document](https://jules.jchmr.org/about).

## Documentation

For releases since version 8.0, please see the [current Jules documentation](https://metoffice.github.io/jules/). For version 7.9 and earlier, please see the [legacy Jules documentation](https://jules-lsm.github.io/)

## Contributing Guidelines

Welcome!
Expand Down Expand Up @@ -49,3 +55,21 @@ Questions are encouraged in the Simulation Systems

Please be aware of and follow the Simulation Systems
[AI Policy.](https://metoffice.github.io/simulation-systems/FurtherDetails/ai.html)


### Mailing Lists & Github Discussions

[JULES-USERS@MAILLISTS.READING.AC.UK](JULES-USERS@MAILLISTS.READING.AC.UK) is a list for all users of JULES. Please use this list to ask a science questions to the community.

[JULES@MAILLISTS.READING.AC.UK](JULES@MAILLISTS.READING.AC.UK) is a list of all people with an interest in JULES. Please use this list to share information relevant to the whole community. For example, new papers, conferences, code release versions etc.

To join, use the [mailing list registration page](https://maillists.reading.ac.uk/scripts/wa-READING.exe?GETPW1=&X=&Y=) to enter your details and wait at least 10 minutes for the email for confirming the registration.

Then:

* register with the [Jules users mailing list](https://maillists.reading.ac.uk/scripts/wa-READING.exe?SUBED1=JULES-USERS) to join the user community mailing list
* register with the [Jules community mailing list](https://maillists.reading.ac.uk/scripts/wa-READING.exe?SUBED1=JULES) to join the wider community

If you need to unsubscribe from either list, you can go to the same subscription link.

You can also join [Simulation Systems Jules discussion board](https://github.com/MetOffice/simulation-systems/discussions/categories/jules) on github.
2 changes: 1 addition & 1 deletion dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@ jules:

SimSys_Scripts:
source: git@github.com:MetOffice/SimSys_Scripts.git
ref: 2026.03.1
ref: 2026.07.1
Loading
Loading