Skip to content

Commit d075af0

Browse files
authored
Merge branch 'master' into doc/perf-functions
2 parents f4a88b7 + 3ccac58 commit d075af0

File tree

115 files changed

+212
-164
lines changed

Some content is hidden

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

115 files changed

+212
-164
lines changed

ci-scripts/genrelnotes.py

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
#
66
# SPDX-License-Identifier: BSD-3-Clause
77

8-
import collections
98
import re
109
import sys
1110
import subprocess
@@ -15,8 +14,8 @@ def usage():
1514
sys.stderr.write('Usage: %s PREV_RELEASE CURR_RELEASE\n' % sys.argv[0])
1615

1716

18-
def extract_release_notes(git_output, tag):
19-
return re.findall(r'pull request (#\d+).*\s*\[%s\] (.*)' % tag, git_output)
17+
def extract_release_notes(git_output):
18+
return re.findall(r'pull request (#\d+).*\s*\[(\S+)\] (.*)', git_output)
2019

2120

2221
if __name__ == '__main__':
@@ -39,21 +38,30 @@ def extract_release_notes(git_output, tag):
3938
sys.stderr.write(e.stdout)
4039
sys.exit(1)
4140

42-
titles = {
43-
'feat': '## New features and enhancements',
41+
tag_mapping = {
42+
'feat': '## New features',
43+
'enhancement': '## Enhancements',
44+
'doc': '## Enhancements',
4445
'bugfix': '## Bug fixes',
4546
'testlib': '## Test library'
4647
}
47-
sections = collections.OrderedDict()
48-
for tag in ['feat', 'bugfix', 'testlib', 'ci', 'doc']:
49-
title_line = titles.get(tag, '## Other')
50-
sections.setdefault(title_line, [])
51-
for pr, descr in extract_release_notes(completed.stdout, tag):
52-
descr_line = '- %s (%s)' % (descr, pr)
53-
sections[title_line].append(descr_line)
48+
sections = {
49+
'## New features': [],
50+
'## Enhancements': [],
51+
'## Bug fixes': [],
52+
'## Test library': [],
53+
'## Other': []
54+
}
55+
for pr, tag, descr in extract_release_notes(completed.stdout):
56+
title_line = tag_mapping.get(tag, '## Other')
57+
descr_line = f'- {descr} ({pr})'
58+
sections[title_line].append(descr_line)
5459

5560
print('# Release Notes')
5661
for sec_title, sec_lines in sections.items():
62+
if not sec_lines:
63+
continue
64+
5765
print()
5866
print(sec_title)
5967
print()

docs/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/usr/bin/env python3
22
#
3-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
3+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
44
# ReFrame Project Developers. See the top-level LICENSE file for details.
55
#
66
# SPDX-License-Identifier: BSD-3-Clause
@@ -85,7 +85,7 @@
8585

8686
# General information about the project.
8787
project = 'ReFrame'
88-
copyright = '2016-2022, CSCS/ETH Zurich and other ReFrame Project Developers'
88+
copyright = '2016-2023, CSCS/ETH Zurich, ReFrame Project Developers'
8989
author = 'ReFrame Project Developers'
9090

9191
# The version info for the project you're documenting, acts as replacement for

docs/manpage.rst

Lines changed: 31 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,10 @@ An action must always be specified.
220220
.. versionadded:: 3.10.0
221221
Support for different types of listing is added.
222222

223+
.. versionchanged:: 4.0.5
224+
The variable names to which fixtures are bound are also listed.
225+
See :ref:`test_naming_scheme` for more information.
226+
223227
.. option:: -l, --list[=T|C]
224228

225229
List selected tests and their dependencies.
@@ -234,6 +238,10 @@ An action must always be specified.
234238
.. versionadded:: 3.10.0
235239
Support for different types of listing is added.
236240

241+
.. versionchanged:: 4.0.5
242+
The variable names to which fixtures are bound are also listed.
243+
See :ref:`test_naming_scheme` for more information.
244+
237245
.. option:: --list-tags
238246

239247
List the unique tags of the selected tests.
@@ -510,7 +518,8 @@ Options controlling ReFrame execution
510518

511519
``TEST`` can have the form ``[TEST.][FIXT.]*``, in which case ``VAR`` will be set in fixture ``FIXT`` of ``TEST``.
512520
Note that this syntax is recursive on fixtures, so that a variable can be set in a fixture arbitrarily deep.
513-
``TEST`` prefix refers to the test class name, *not* the test name, but ``FIXT`` refers to the fixture name *inside* the referenced test.
521+
``TEST`` prefix refers to the test class name, *not* the test name and ``FIXT`` refers to the fixture *variable name* inside the referenced test, i.e., the test variable to which the fixture is bound.
522+
The fixture variable name is referred to as ``'<varname>`` when listing tests with the :option:`-l` and :option:`-L` options.
514523

515524
Multiple variables can be set at the same time by passing this option multiple times.
516525
This option *cannot* change arbitrary test attributes, but only test variables declared with the :attr:`~reframe.core.pipeline.RegressionMixin.variable` built-in.
@@ -951,24 +960,29 @@ Here is how this test is listed where the various components of the display name
951960

952961
.. code-block:: console
953962
954-
- TestA %x=4 %l.foo=10 %t.p=2 /1c51609b
955-
^Myfixture %p=1 ~TestA_3 /f027ee75
956-
^MyFixture %p=2 ~TestA_3 /830323a4
957-
^X %foo=10 ~generic:default+builtin /7dae3cc5
958-
- TestA %x=3 %l.foo=10 %t.p=2 /707b752c
959-
^MyFixture %p=1 ~TestA_2 /02368516
960-
^MyFixture %p=2 ~TestA_2 /854b99b5
961-
^X %foo=10 ~generic:default+builtin /7dae3cc5
962-
- TestA %x=4 %l.foo=10 %t.p=1 /c65657d5
963-
^MyFixture %p=2 ~TestA_1 /f0383f7f
964-
^MyFixture %p=1 ~TestA_1 /d07f4281
965-
^X %foo=10 ~generic:default+builtin /7dae3cc5
966-
- TestA %x=3 %l.foo=10 %t.p=1 /1b9f44df
967-
^MyFixture %p=2 ~TestA_0 /b894ab05
968-
^MyFixture %p=1 ~TestA_0 /ca376ca8
969-
^X %foo=10 ~generic:default+builtin /7dae3cc5
963+
- TestA %x=4 %l.foo=10 %t.p=2 /8804be5d
964+
^MyFixture %p=1 ~TestA_3 't 'f /f027ee75
965+
^MyFixture %p=2 ~TestA_3 't 'f /830323a4
966+
^X %foo=10 ~generic:default+builtin 'l /7dae3cc5
967+
- TestA %x=3 %l.foo=10 %t.p=2 /89f6f5d1
968+
^MyFixture %p=1 ~TestA_2 't 'f /02368516
969+
^MyFixture %p=2 ~TestA_2 't 'f /854b99b5
970+
^X %foo=10 ~generic:default+builtin 'l /7dae3cc5
971+
- TestA %x=4 %l.foo=10 %t.p=1 /af9b2941
972+
^MyFixture %p=2 ~TestA_1 't 'f /f0383f7f
973+
^MyFixture %p=1 ~TestA_1 't 'f /d07f4281
974+
^X %foo=10 ~generic:default+builtin 'l /7dae3cc5
975+
- TestA %x=3 %l.foo=10 %t.p=1 /a9e50aa3
976+
^MyFixture %p=2 ~TestA_0 't 'f /b894ab05
977+
^MyFixture %p=1 ~TestA_0 't 'f /ca376ca8
978+
^X %foo=10 ~generic:default+builtin 'l /7dae3cc5
970979
Found 4 check(s)
971980
981+
Notice that the variable name to which every fixture is bound in its parent test is also listed as ``'<varname>``.
982+
This is useful for setting variables down the fixture hierarchy using the :option:`-S` option.
983+
984+
985+
972986
Display names may not always be unique.
973987
Assume the following test:
974988

hpctestlib/interactive/jupyter/ipcmagic/src/tf-hvd-sgd-ipc-tf2.ipynb

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
"metadata": {},
2626
"outputs": [],
2727
"source": [
28-
"%ipcluster start -n 2 --mpi"
28+
"%ipcluster start -n 2"
2929
]
3030
},
3131
{
@@ -43,7 +43,7 @@
4343
"metadata": {},
4444
"outputs": [],
4545
"source": [
46-
"%ipcluster start -n 2 --mpi"
46+
"%ipcluster start -n 2"
4747
]
4848
},
4949
{
@@ -52,7 +52,7 @@
5252
"metadata": {},
5353
"outputs": [],
5454
"source": [
55-
"%ipcluster start -n 2 --mpi"
55+
"%ipcluster start -n 2"
5656
]
5757
},
5858
{
@@ -61,7 +61,7 @@
6161
"metadata": {},
6262
"outputs": [],
6363
"source": [
64-
"%ipcluster start -n 2 --mpi"
64+
"%ipcluster start -n 2"
6565
]
6666
},
6767
{
@@ -70,7 +70,7 @@
7070
"metadata": {},
7171
"outputs": [],
7272
"source": [
73-
"%ipcluster start -n 2 --mpi"
73+
"%ipcluster start -n 2"
7474
]
7575
},
7676
{
@@ -94,6 +94,15 @@
9494
"print('cluster ids:', c.ids)"
9595
]
9696
},
97+
{
98+
"cell_type": "code",
99+
"execution_count": null,
100+
"metadata": {},
101+
"outputs": [],
102+
"source": [
103+
"c.close()"
104+
]
105+
},
97106
{
98107
"cell_type": "code",
99108
"execution_count": null,

reframe/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
1+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
22
# ReFrame Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: BSD-3-Clause
55

66
import os
77
import sys
88

9-
VERSION = '4.0.3'
9+
VERSION = '4.0.4'
1010
INSTALL_PREFIX = os.path.normpath(
1111
os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
1212
)

reframe/core/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
1+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
22
# ReFrame Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: BSD-3-Clause

reframe/core/buildsystems.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
1+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
22
# ReFrame Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: BSD-3-Clause

reframe/core/builtins.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
1+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
22
# ReFrame Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: BSD-3-Clause

reframe/core/config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
1+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
22
# ReFrame Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: BSD-3-Clause

reframe/core/containers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2016-2022 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
1+
# Copyright 2016-2023 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
22
# ReFrame Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: BSD-3-Clause

0 commit comments

Comments
 (0)