Cylc
Cylc: A Workflow Engine for Cycling Systems - Published in JOSS (2018)
Science Score: 59.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: ieee.org, joss.theoj.org, zenodo.org -
✓Committers with academic emails
8 of 52 committers (15.4%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.6%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Cylc: a general purpose workflow engine with a gift for cycling
Basic Info
- Host: GitHub
- Owner: cylc
- License: gpl-3.0
- Language: Python
- Default Branch: master
- Homepage: https://cylc.github.io
- Size: 125 MB
Statistics
- Stars: 355
- Watchers: 14
- Forks: 95
- Open Issues: 558
- Releases: 112
Topics
Metadata Files
README.md
Cylc (pronounced silk) is a general purpose workflow engine that also manages cycling systems very efficiently. It is used in production weather, climate, and environmental forecasting on HPC, but is not specialized to those domains.
Quick Start
```bash
install cylc
conda install cylc-flow
extract an example to run
cylc get-resources examples/integer-cycling
install and run it
cylc vip integer-cycling # vip = validate, install and play
watch it run
cylc tui integer-cycling ```
The Cylc Ecosystem
- cylc-flow - The core Cylc Scheduler for defining and running workflows.
- cylc-uiserver - The web-based Cylc graphical user interface for monitoring and controlling workflows.
- cylc-rose - Provides integration with Rose.
Migrating From Cylc 7
Migration Guide | Migration Support
Cylc 8 can run most Cylc 7 workflows in compatibility mode with little to no changes, go through the migration guide for more details.
Quick summary of major changes:
- Python 2 -> 3.
- Internal communications converted from HTTPS to ZMQ (TCP).
- PyGTK GUIs replaced by:
- Terminal user interface (TUI) included in cylc-flow.
- Web user interface provided by the cylc-uiserver package.
- A new scheduling algorithm with support for branched workflows.
- Command line changes:
cylc run <id>->cylc play <id>cylc restart <id>->cylc play <id>rose suite-run->cylc install; cylc play <id>
- The core package containing Cylc scheduler program has been renamed cylc-flow.
- Cylc review has been removed, the Cylc 7 version remains Cylc 8 compatible.
Citations & Publications
Copyright and Terms of Use
Copyright (C) 2008-2025 NIWA & British Crown (Met Office) & Contributors.
Cylc is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Cylc is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Cylc. If not, see GNU licenses.
Contributing
Contributions welcome:
- Read the contributing page.
- Development setup instructions are in the developer docs.
- Involved change proposals can be found in the admin pages.
- Touch base in the developers chat.
This repository contains some code that was generated by GitHub Copilot.
Owner
- Name: The Cylc Workflow Engine
- Login: cylc
- Kind: organization
- Email: hilary.oliver@niwa.co.nz
- Location: Wellington, New Zealand
- Website: https://cylc.github.io
- Repositories: 20
- Profile: https://github.com/cylc
A workflow engine for cycling systems.
GitHub Events
Total
- Create event: 115
- Issues event: 244
- Release event: 8
- Watch event: 26
- Delete event: 112
- Issue comment event: 1,144
- Push event: 309
- Pull request review comment event: 1,281
- Pull request event: 584
- Pull request review event: 1,684
- Fork event: 4
Last Year
- Create event: 117
- Issues event: 245
- Release event: 8
- Watch event: 26
- Delete event: 116
- Issue comment event: 1,148
- Push event: 315
- Pull request review comment event: 1,288
- Pull request event: 585
- Pull request review event: 1,695
- Fork event: 4
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Hilary Oliver | h****r@g****m | 8,124 |
| Oliver Sanders | o****s@m****k | 1,559 |
| Matt Shin | m****n@m****k | 1,001 |
| Ronnie Dutta | r****a@m****k | 982 |
| Tim Pillinger | t****r@m****k | 834 |
| Ben Fitzpatrick | b****k@m****k | 645 |
| Andrew Clark | a****k@m****k | 425 |
| Bruno Kinoshita | k****w@a****g | 342 |
| Mel Hall | m****l@m****k | 250 |
| David Sutherland | d****d@n****z | 182 |
| Sadie Bartholomew | s****w@m****k | 138 |
| Declan Valters | d****s@e****k | 83 |
| Martin Ryan | m****n@b****u | 76 |
| github-actions[bot] | g****s@n****m | 72 |
| Tomek Trzeciak | t****k@m****k | 51 |
| Tim Whitcomb | t****b@n****l | 44 |
| Prasanna Challuri | P****i@n****z | 40 |
| dependabot[bot] | 4****] | 36 |
| Samuel Gaist | s****t@i****h | 33 |
| David Matthews | d****s@m****k | 31 |
| Luis Kornblueh | l****h@z****e | 31 |
| Kerry Day | k****y@m****k | 29 |
| Scott Wales | s****s@b****u | 26 |
| Thomas Coleman | t****n@b****u | 21 |
| John Haiducek | j****e@g****m | 8 |
| Scott Wales | s****s@u****u | 8 |
| Mark Dawson | m****n@m****k | 7 |
| Gilliano Menezes | g****s@g****m | 7 |
| Jonny Williams | j****s@n****z | 5 |
| Lois Huggett | l****t@m****k | 4 |
| and 22 more... | ||
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 575
- Total pull requests: 1,477
- Average time to close issues: 8 months
- Average time to close pull requests: 21 days
- Total issue authors: 38
- Total pull request authors: 21
- Average comments per issue: 2.6
- Average comments per pull request: 2.17
- Merged pull requests: 1,127
- Bot issues: 1
- Bot pull requests: 420
Past Year
- Issues: 181
- Pull requests: 641
- Average time to close issues: 16 days
- Average time to close pull requests: 8 days
- Issue authors: 20
- Pull request authors: 12
- Average comments per issue: 0.82
- Average comments per pull request: 1.41
- Merged pull requests: 464
- Bot issues: 1
- Bot pull requests: 196
Top Authors
Issue Authors
- oliver-sanders (220)
- hjoliver (122)
- ColemanTom (61)
- wxtim (49)
- MetRonnie (49)
- dpmatthews (12)
- dwsutherland (11)
- elliotfontaine (5)
- jfrost-mo (4)
- jarich (4)
- sadielbartholomew (4)
- kinow (3)
- ScottWales (2)
- jamesgrimmett (2)
- uwagura (2)
Pull Request Authors
- github-actions[bot] (386)
- oliver-sanders (318)
- MetRonnie (275)
- wxtim (221)
- hjoliver (142)
- dwsutherland (48)
- dependabot[bot] (34)
- markgrahamdawson (12)
- ColemanTom (11)
- psa (8)
- ChrisPaulBennett (4)
- ScottWales (4)
- jfrost-mo (2)
- TomekTrzeciak (2)
- pdearnshaw (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
- Total downloads: unknown
-
Total dependent packages: 6
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 21
conda-forge.org: cylc-flow-base
Cylc ("silk") is a workflow engine for cycling systems - it orchestrates distributed workflows of interdependent cycling tasks that may continue to run indefinitely. There are two cylc-flow packages: * `cylc-flow`: The full installation, recommended for most uses. * `cylc-flow-base`: A minimal package, recommended for installation on job hosts where the full range of user-facing commands is not required. The `cylc report-timings` command requires two additional dependencies which you must specify manually if you want this functionality: * `pandas >=1.0,<2` * `matplotlib-base`
- Homepage: https://cylc.org/
- License: GPL-3.0-only
-
Latest release: 8.0.3
published over 3 years ago
Rankings
conda-forge.org: cylc-flow
Cylc ("silk") is a workflow engine for cycling systems - it orchestrates distributed workflows of interdependent cycling tasks that may continue to run indefinitely. There are two cylc-flow packages: * `cylc-flow`: The full installation, recommended for most uses. * `cylc-flow-base`: A minimal package, recommended for installation on job hosts where the full range of user-facing commands is not required. The `cylc report-timings` command requires two additional dependencies which you must specify manually if you want this functionality: * `pandas >=1.0,<2` * `matplotlib-base`
- Homepage: https://cylc.org/
- License: GPL-3.0-only
-
Latest release: 8.0.3
published over 3 years ago
Rankings
Dependencies
- actions/checkout v3 composite
- actions/setup-python v4 composite
- cylc/release-actions/build-python-package v1 composite
- cylc/release-actions/check-shortlog v1 composite
- cylc/release-actions/stage-1/checkout-pr-branch v1 composite
- cylc/release-actions/stage-1/create-release-pr v1 composite
- cylc/release-actions/stage-1/sanitize-inputs v1 composite
- cylc/release-actions/stage-1/set-python-package-version v1 composite
- cylc/release-actions/stage-1/update-changelog-release-date v1 composite
- actions/checkout v3 composite
- actions/create-release v1 composite
- actions/setup-python v4 composite
- cylc/release-actions/build-python-package v1 composite
- cylc/release-actions/stage-2/bump-dev-version v1 composite
- cylc/release-actions/stage-2/comment-on-pr v1 composite
- cylc/release-actions/stage-2/get-version-from-pr v1 composite
- pypa/gh-action-pypi-publish v1.6.4 composite
- actions/checkout v3 composite
- actions/upload-artifact v3 composite
- actions/checkout v3 composite
- cylc/release-actions/check-shortlog v1 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/upload-artifact v3 composite
- codecov/codecov-action v3 composite
- cylc/release-actions/configure-git v1 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/upload-artifact v3 composite
- codecov/codecov-action v3 composite
- cylc/release-actions/configure-git v1 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- cylc/release-actions/configure-git v1 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- cylc/cylc-doc/.github/actions/install-dependencies master composite
- actions/checkout v3 composite
- cylc/release-actions/checkout-copyright-branch v1 composite
- cylc/release-actions/configure-git v1 composite
- cylc/release-actions/create-pr v1 composite
- conda/miniconda3 latest build
- cylc-dev latest build
- actions/checkout v3 composite
- cylc/release-actions/configure-git v1 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- cylc/release-actions/build-python-package v1 composite