Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
29 changes: 23 additions & 6 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
name: CI
name: SindbadCore.jl
on:
pull_request:
paths-ignore:
- 'docs/**'
- '*.md'
branches:
- main
push:
tags:
- '*'
branches:
- main
tags: '*'

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
Expand All @@ -17,6 +26,7 @@ jobs:
version:
- '1.10'
- '1.11'
- '1'
os:
- ubuntu-latest
- macOS-latest
Expand Down Expand Up @@ -44,10 +54,17 @@ jobs:
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- name: Develop and test SindbadCore
shell: julia --project=test_env {0}
run: |
using Pkg
pkg"registry up"
Pkg.update()
pkg"dev ./SindbadCore" # Develop the package in the SindbadCore directory
Pkg.test("SindbadCore"; coverage=true) # Test the package named "SindbadCore"
- uses: julia-actions/julia-processcoverage@v1
with:
directories: SindbadCore/src
- uses: codecov/codecov-action@v5
with:
file: lcov.info
files: lcov.info
45 changes: 20 additions & 25 deletions .github/workflows/Documenter.yml
Original file line number Diff line number Diff line change
@@ -1,43 +1,38 @@
name: Documenter
name: Docs build and deploy
on:
# Runs on pushes targeting the `master` branch.
push:
branches:
- main
tags: ['*']
pull_request:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: write
pages: write
id-token: write
statuses: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.

concurrency:
group: pages
cancel-in-progress: false
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
# Build job
build:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
persist-credentials: false
- name: Setup Julia
uses: julia-actions/setup-julia@v2
- name: Pull Julia cache
with:
version: '1'
- name: Julia cache
uses: julia-actions/cache@v2
- name: Install documentation dependencies
run: julia --project=docs -e 'using Pkg; pkg"dev . ./lib/SindbadUtils ./lib/SindbadData ./lib/SindbadMetrics ./lib/SindbadSetup ./lib/SindbadTEM ./lib/SindbadML"; Pkg.instantiate(); Pkg.precompile(); Pkg.status()'
- name: Build and deploy docs
uses: julia-actions/julia-docdeploy@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # For authentication with GitHub Actions token
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} # For authentication with SSH deploy key
JULIA_DEBUG: "Documenter"
DATADEPS_ALWAYS_ACCEPT: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: >
cd docs;
julia --color=yes make.jl
- name: Upload site as artifact
uses: actions/upload-artifact@v4
with:
name: Docs build
path: ./docs/build
File renamed without changes.
53 changes: 53 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# SINDBAD Research and Development

[![][docs-stable-img]][docs-stable-url][![][docs-dev-img]][docs-dev-url][![][ci-img]][ci-url] [![][codecov-img]][codecov-url][![Julia][julia-img]][julia-url][![License: GPL-3.0](https://img.shields.io/badge/License-GPLv3-blue)](https://github.com/EarthyScience/SINDBAD/blob/main/LICENSE)

<img src="docs/src/assets/logo-RnD.png" align="right" style="padding-left:10px;" width="150"/>

[docs-dev-img]: https://img.shields.io/badge/docs-dev-blue.svg
[docs-dev-url]: https://earthyscience.github.io/SINDBAD/dev/

[docs-stable-img]: https://img.shields.io/badge/docs-stable-blue.svg
[docs-stable-url]: https://earthyscience.github.io/SINDBAD/dev/

[codecov-img]: https://codecov.io/gh/EarthyScience/SINDBAD/branch/master/graph/badge.svg
[codecov-url]: https://codecov.io/gh/EarthyScience/SINDBAD

[ci-img]: https://github.com/EarthyScience/SINDBAD/workflows/CI/badge.svg
[ci-url]: https://github.com/EarthyScience/SINDBAD/actions?query=workflow%3ACI

[julia-img]: https://img.shields.io/badge/julia-v1.10+-blue.svg
[julia-url]: https://julialang.org/

This guideline for research and development is intended for ongoing SINDBAD-RnD projects. This will operate as a private fork shared within the core [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team) to foster an environment of maximized internal collaboration. Researchers and developers working on [the public SINDBAD repo](https://github.com/EarthyScience/SINDBAD) are encouraged to join the RnD-Team on a need basis.

This setup ensures that members can freely exchange ideas, work closely on ongoing research, and develop new capabilities while safeguarding unpublished code from unauthorized public release. By maintaining this private and protected framework, SINDBAD-RnD aims to uphold both the integrity of collaborative efforts and the security of its scientific advancements.

This repository will ONLY be accessible to the members of the [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team)

### Governance Principles of SINDBAD-RnD

1. **Purpose and Structure**:
- The governance structure of `SINDBAD` fosters collaboration, community building, and supports continuous research and development at BGI.
- It is designed to be simple and clear.

2. **Repository Framework**:
- SINDBAD-RnD governance applies to members of the [SINDBAD-RnD repository](https://github.com/EarthyScience/SINDBAD-RnD). Upon the public release of SINDBAD, SINDBAD-RnD will be established as a fork of the main SINDBAD repository where internal development will be carried out.


3. **Function of SINDBAD-RnD**:
SINDBAD-RnD serves as a collaborative, protected space for advancing SINDBAD both technically and scientifically within [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team). *Expansion of [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team) beyond BGI members may be considered in the future but only agreed upon code will be released*.

4. **SINDBAD-RnD-Team Guidelines**:

Members of the SINDBAD-RnD group, forming the [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team), adhere to the following principles:
- Participation is voluntary, with a commitment to follow the guidelines.
- Members may privately fork the SINDBAD-RnD repository and when sharing it commit do so exclusively within the [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team).
- Research and development scopes must be transparently shared across the [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team).
- [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team) members must consult the [SINDBAD-RnD-Team](https://github.com/orgs/EarthyScience/teams/sindbad-rnd-team) before:
- Releasing code of their developments in SINDBAD-RnD.
- Collaborating on SINDBAD-related projects outside the team.
- Submitting research proposals leveraging SINDBAD-RnD, preferably including SINDBAD.
- All members adhere to the [Max Planck Society's guidelines for good scientific practice](https://www.mr.mpg.de/14263212/scientificpractice).

5. **Note on the definition of collaboration**: Collaboration is nuanced. As a guideline, any activity beyond SINDBAD's FAQ, documentation, or workflows/examples qualifies as collaboration.
File renamed without changes.
File renamed without changes.
47 changes: 14 additions & 33 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,39 +1,20 @@
name = "Sindbad"
uuid = "6686e6de-2010-4bf8-9178-b2bcc470766e"
authors = ["SINDBAD Contributors <[email protected]>"]
version = "0.1.0"
authors = ["SINDBAD Contributors <[email protected]>"]

[deps]
Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697"
CodeTracking = "da1fd8a2-8d9e-5ec2-8556-3022fb5608a2"
Crayons = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f"
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
FieldMetadata = "bf96fef3-21d2-5d20-8afa-0e7d4c32a885"
Flatten = "4c728ea3-d9ee-5c9a-9642-b6f7d7dc04fa"
InteractiveUtils = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
Missings = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28"
NaNStatistics = "b946abbf-3ea7-4610-9019-9858bfdeaf2d"
Parameters = "d96e819e-fc66-5662-9728-84c9c7592b0a"
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c"
StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"
TypedTables = "9d95f2ec-7b3d-5a63-8d20-e2491e220bb9"

[compat]
Accessors = "0.1.42"
Crayons = "4.1.1"
Dates = "1.10, 1.11.0"
NaNStatistics = "0.6.50"
Pkg = "1.10.0"
Reexport = "1.2.2"
TypedTables = "1.4.6"
julia = "1.10"

[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
SindbadCore = "7e5cc002-9bc1-4508-860d-3c0816be375a"
SindbadData = "772b809f-5329-4bfd-a2e9-cc4714ce84b1"
SindbadML = "eb1d8004-2d42-4eef-b369-ed0645c101e8"
SindbadMetrics = "7a8077d0-ecf5-44b0-95d4-89eadbafc35c"
SindbadSetup = "2b7f2987-8a1e-48b4-8a02-cc9e7c4eeb1c"
SindbadTEM = "f6108451-10cb-42fa-b0c1-67671cf08f15"

[targets]
test = ["Test"]
[sources]
SindbadCore = {path = "./SindbadCore"}
SindbadData = {path = "./SindbadData"}
SindbadMetrics = {path = "./SindbadMetrics"}
SindbadSetup = {path = "./SindbadSetup"}
SindbadTEM = {path = "./SindbadTEM"}
SindbadML = {path = "./SindbadML"}
Loading
Loading