Skip to content

Commit e226f59

Browse files
authored
Merge branch 'main' into issue-6687-v2
2 parents faa6871 + cf2614f commit e226f59

File tree

160 files changed

+3792
-1800
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

160 files changed

+3792
-1800
lines changed

.github/system_tests/test_daemon.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -437,14 +437,20 @@ def launch_all():
437437
run_multiply_add_workchain()
438438

439439
# Testing the stashing functionality
440+
# To speedup, here we only check with StashMode.COPY.
441+
# All stash_modes are tested individually in `test_execmanager.py`
440442
print('Testing the stashing functionality')
441443
process, inputs, expected_result = create_calculation_process(code=code_doubler, inputval=1)
442444
with tempfile.TemporaryDirectory() as tmpdir:
443445
# Delete the temporary directory to test that the stashing functionality will create it if necessary
444446
shutil.rmtree(tmpdir, ignore_errors=True)
445447

446448
source_list = ['output.txt', 'triple_value.*']
447-
inputs['metadata']['options']['stash'] = {'target_base': tmpdir, 'source_list': source_list}
449+
inputs['metadata']['options']['stash'] = {
450+
'stash_mode': StashMode.COPY.value,
451+
'target_base': tmpdir,
452+
'source_list': source_list,
453+
}
448454
_, node = run.get_node(process, **inputs)
449455
assert node.is_finished_ok
450456
assert 'remote_stash' in node.outputs

.github/workflows/ci-code.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
strategy:
2727
fail-fast: false
2828
matrix:
29-
python-version: ['3.9', '3.12']
29+
python-version: ['3.9', '3.13']
3030
database-backend: [psql]
3131
include:
3232
- python-version: '3.9'
@@ -102,7 +102,7 @@ jobs:
102102
- name: Install aiida-core
103103
uses: ./.github/actions/install-aiida-core
104104
with:
105-
python-version: '3.11'
105+
python-version: '3.13'
106106

107107
- name: Setup SSH on localhost
108108
run: .github/workflows/setup_ssh.sh
@@ -124,7 +124,7 @@ jobs:
124124
- name: Install aiida-core
125125
uses: ./.github/actions/install-aiida-core
126126
with:
127-
python-version: '3.12'
127+
python-version: '3.13'
128128
from-lock: 'true'
129129
extras: ''
130130

.github/workflows/nightly.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: nightly
22

33
on:
44
schedule:
5-
- cron: 0 0 * * * # Run every day at midnight
5+
- cron: 0 0 * * * # Run every day at midnight
66
pull_request:
77
paths:
88
- .github/workflows/nightly.yml
@@ -15,7 +15,7 @@ on:
1515

1616
# https://docs.github.com/en/actions/using-jobs/using-concurrency
1717
concurrency:
18-
# only cancel in-progress jobs or runs for the current workflow - matches against branch & tags
18+
# only cancel in-progress jobs or runs for the current workflow - matches against branch & tags
1919
group: ${{ github.workflow }}-${{ github.ref }}
2020
cancel-in-progress: true
2121

@@ -26,7 +26,7 @@ jobs:
2626

2727
nightly-tests:
2828

29-
if: github.repository == 'aiidateam/aiida-core' # Prevent running the builds on forks as well
29+
if: github.repository == 'aiidateam/aiida-core' # Prevent running the builds on forks as well
3030
runs-on: ubuntu-24.04
3131

3232
services:

.github/workflows/pre-commit.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: pre-commit
2+
# NOTE: This job is not duplicating pre-commit.ci job,
3+
# since that once skips running mypy type-checking\
4+
# due to technical limitations of pre-commit.ci runners.
5+
6+
on:
7+
push:
8+
branches-ignore: [gh-pages]
9+
pull_request:
10+
branches-ignore: [gh-pages]
11+
12+
env:
13+
FORCE_COLOR: 1
14+
15+
jobs:
16+
17+
pre-commit:
18+
19+
runs-on: ubuntu-24.04
20+
timeout-minutes: 15
21+
22+
steps:
23+
- uses: actions/checkout@v4
24+
25+
- name: Install python dependencies
26+
uses: ./.github/actions/install-aiida-core
27+
with:
28+
python-version: '3.11'
29+
from-lock: 'true'
30+
31+
- name: Run pre-commit
32+
run: pre-commit run --all-files || ( git status --short ; git diff ; exit 1 )

.github/workflows/test-install.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ jobs:
111111
fail-fast: false
112112
matrix:
113113

114-
python-version: ['3.9', '3.10', '3.11', '3.12']
114+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
115115

116116
# Not being able to install with conda on a specific Python version is
117117
# not sufficient to fail the run, but something we want to be aware of.
@@ -162,7 +162,7 @@ jobs:
162162
strategy:
163163
fail-fast: false
164164
matrix:
165-
python-version: ['3.9', '3.10', '3.11', '3.12']
165+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
166166

167167
services:
168168
postgres:

.pre-commit-config.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,8 @@ repos:
201201
files: >-
202202
(?x)^(
203203
pyproject.toml|
204-
utils/dependency_management.py
204+
utils/dependency_management.py|
205+
environment.yml|
205206
)$
206207
207208
- id: validate-conda-environment

docs/source/index.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
:sd_hide_title:
22

3+
.. HTML meta tag to verify aiida.readthedocs.io in Google Search Console (aiidateam account)
4+
.. meta::
5+
:google-site-verification: wLcoklPmiTRQs5TXRD6At5hNXGYSwexWnx0wygU4Uxk
6+
37
.. grid::
48
:reverse:
59
:gutter: 2 3 3 3

docs/source/installation/docker.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ Any data that was created in a previous session is still available.
7777

7878
.. caution::
7979

80-
When the container is not just stopped but *deleted*, any data stored in the container, including the data stored in the profile's storage, is permanently localhost
80+
When the container is not just stopped but *deleted*, any data stored in the container, including the data stored in the profile's storage, is permanently deleted.
8181
To ensure the data is not lost, it should be persisted on a volume that is mounted to the container.
8282
Refer to the section on :ref:`persisting data <installation:docker:persisting-data>` for more details.
8383

docs/source/installation/guide_complete.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ Although it is possible to run AiiDA without a daemon it does provide significan
157157

158158
.. tab-item:: MacOS X
159159

160-
#. Install `Homebrew <https://docs.brew.sh/Installation>`.
160+
#. Install `Homebrew <https://docs.brew.sh/Installation>`__.
161161

162162
#. Install RabbitMQ:
163163

@@ -315,7 +315,7 @@ The options specific to the ``core.sqlite_dos`` storage plugin are:
315315
This storage plugin uses `PostgreSQL <https://www.postgresql.org/>`_ and the `disk-objectstore <https://disk-objectstore.readthedocs.io/en/latest/>`_ to store data.
316316
The ``disk-objectstore`` is a Python package that is automatically installed as a dependency when installing ``aiida-core``, which was covered in the :ref:`Python package installation section <installation:guide-complete:python-package>`.
317317
The storage plugin can connect to a PostgreSQL instance running on the localhost or on a server that can be reached over the internet.
318-
Instructions for installing PostgreSQL is beyond the scope of this guide.
318+
Instructions for installing PostgreSQL is beyond the scope of this guide. You can find the installation instructions for your system on the `PostgreSQL website <https://www.postgresql.org/docs/current/tutorial-install.html>`__.
319319

320320
Before creating a profile, a database (and optionally a custom database user) has to be created.
321321
First, connect to PostgreSQL using ``psql``, the `native command line client for PostgreSQL <https://www.postgresql.org/docs/current/app-psql.html>`_:

docs/source/intro/index.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ Introduction
1010

1111
AiiDA is an open-source Python infrastructure to help researchers with automating, managing, persisting, sharing and reproducing the complex workflows associated with modern computational science and all associated data.
1212

13-
AiiDA is built to support and streamline the four core pillars of the ADES model: Automation, Data, Environment, and Sharing (described `here <https://arxiv.org/abs/1504.01163>`__). Some of the key features of AiiDA include:
13+
AiiDA is built to support and streamline the four core pillars of the ADES model: Automation, Data, Environment, and Sharing (described `here <https://arxiv.org/abs/1504.01163>`__, `doi <https://doi.org/10.1016/j.commatsci.2015.09.013>`__). Some of the key features of AiiDA include:
1414

1515
* **Workflows:** AiiDA allows to build and execute complex, auto-documenting workflows linked to multiple codes on local and remote computers.
1616
* **High-throughput:** AiiDA's event-based workflow engine supports tens of thousands of processes per hour with full check-pointing.
1717
* **Data provenance:** AiiDA automatically tracks and records inputs, outputs and metadata of all calculations and workflows in extensive provenance graphs that preserve the full lineage of all data.
1818
* **Advanced queries:** AiiDA's query language enables fast graph queries on millions of nodes.
1919
* **Plugin interface:** AiiDA can support via plugins any computational code and data analytics tool, data type, scheduler, connection mode, etc. (see `public plugin repository <https://aiidateam.github.io/aiida-registry/>`__).
20-
* **HPC interface:** AiiDA can seamlessly deal with heterogeneous and remote computing resources; it works with many schedulers out of the box (`SLURM <https://slurm.schedmd.com>`__, `PBS Pro <https://www.pbspro.org/>`__, `torque <http://www.adaptivecomputing.com/products/torque/>`__, `SGE <http://gridscheduler.sourceforge.net/>`__ or `LSF <https://www.ibm.com/docs/en/spectrum-lsf>`__).
20+
* **HPC interface:** AiiDA can seamlessly deal with heterogeneous and remote computing resources; it works with many schedulers out of the box (`SLURM <https://slurm.schedmd.com>`__, `PBS Pro <https://www.pbspro.org/>`__, `torque <https://docs.adaptivecomputing.com/torque/5-0-0/help.htm>`__, `SGE <http://gridscheduler.sourceforge.net/>`__ or `LSF <https://www.ibm.com/docs/en/spectrum-lsf>`__).
2121
* **Open science:** AiiDA allows to export both full databases and selected subsets, to be shared with collaborators or made available and browsable online on the `Archive <https://archive.materialscloud.org/>`__ and `Explore <https://www.materialscloud.org/explore>`__ sections of `Materials Cloud <https://www.materialscloud.org>`__.
2222
* **Open source:** AiiDA is released under the `MIT open-source license <https://github.com/aiidateam/aiida-core/blob/main/LICENSE.txt>`__.
2323

0 commit comments

Comments
 (0)