Skip to content

Commit

Permalink
Release 0.14.5 backports (#1282)
Browse files Browse the repository at this point in the history
* Improve write time

* Print warning if mpi4py is not found in openpmd-pipe

* ADIOS1: Remove task from IO queue if it fails with exception

* `setup.py`: Extra CMake Arg Control

* EMSCRIPTEN: Skip Py Extension

* g++/clang++: Add `-Wsign-compare`

* python/RecordComponent: fix `-Wsign-compare`

* Patch MSVC pybind11 bug

Improve patch comment

* Python: Do Not Strip Symbols In Debug

Avoid stripping symbols for Python debug builds, so we can see lines
in coredumps and debugger runs.

* CI: NVHPC New Apt Repo

Update the NVHPC install instructions to the latest and greatest.
Fix failing CI (dependency install).

Also upgrade to 21.11 as on Perlmutter.

* clang-format & pre-commit & python include

* run pre-commit

* ps_make_timer_name_: add memory leak suppression

* Fix: Missing HDF5 Include

This tries to fix a compile error on Maxwell (DESY).
```
/home/diederse/software/hipace_4GPU/hipace/build/_deps/fetchedopenpmd-src/src/IO/HDF5/HDF5IOHandler.cpp: In member function 'virtual void openPMD::HDF5IOHandlerImpl::readAttribute(openPMD::Writable*, openPMD::Parameter<openPMD::Operation::READ_ATT>&)':
/home/diederse/software/hipace_4GPU/hipace/build/_deps/fetchedopenpmd-src/src/IO/HDF5/HDF5IOHandler.cpp:1586:17: error: 'H5free_memory' was not declared in this scope
 1586 |                 H5free_memory(m1);
      |                 ^~~~~~~~~~~~~
/home/diederse/software/hipace_4GPU/hipace/build/_deps/fetchedopenpmd-src/src/IO/HDF5/HDF5IOHandler.cpp:1609:17: error: 'H5free_memory' was not declared in this scope
 1609 |                 H5free_memory(m1);
      |                 ^~~~~~~~~~~~~
/home/diederse/software/hipace_4GPU/hipace/build/_deps/fetchedopenpmd-src/src/IO/HDF5/HDF5IOHandler.cpp:1628:17: error: 'H5free_memory' was not declared in this scope
 1628 |                 H5free_memory(m2);
      |                 ^~~~~~~~~~~~~
```

* Increase reference count also in other load_chunk overload

Don't know if it is necessary, but looks like we forgot it earlier

Add comment

* Spack: Remove Old Files

* Spack: v0.17.1

* Update Env Files

* Python Iteration: Fix __repr__ (time)

Small numbers, as common for iterations, were flushed to zero
in `std::to_string(double)` of the representation of `Iteration`
variables:
```
step    __repr__
100     <openPMD.Iteration at t = '0.000000 s'>
was:    8.687655225973454e-14 * 1.0
```

* CI: Update CUDA repo key

Nvidia has made changes in the signing keys.

https://forums.developer.nvidia.com/t/notice-cuda-linux-repository-key-rotation/212771

* CI: Switch to Mamba

* Doc: Update HDF5 Coll. Metadata Versions

Update the documentation about HDFFV-11260 and the newly released
fixes in release lines.

* HDF5 Coll. MD Reads: Simplify Wording

* Tiny wording improvement and a +

* Remove deprecated debug parameter in ADIOS2

* HDF5IOHandler: Clang-Format/Clang-Tidy

```
/home/runner/work/openPMD-api/openPMD-api/src/IO/HDF5/HDF5IOHandler.cpp:1835:21:
  warning: repeated branch in conditional chain [bugprone-branch-clone]
                    isLegacyLibSplashAttr =
                    ^
```

* `conda.yaml`: add `pre-commit`

* Fix: Python Variant Issue on Conda

* Test: Demonstrate Pattern Issue

As in #1173

* JSON: Improve File Open Error Message

Include path to file

* Upon parsing, store each iteration's filename

If the padding is inconsistent, a later Iteration::open() needs the
original filename. Trying to compute the filename from the expansion
pattern will lead to wrong filenames.

* Backport: fix-open-iteration (#5)

* Pass-through flushing parameters

* CI fixes

* Test

* Don't flush when opening an iteration

* CI fixes

* FlushLevel: Use default base class in NVC++

* clang-tidy: Define member defaults of Writable in-class

* Update include/openPMD/IO/AbstractIOHandler.hpp

Co-authored-by: Axel Huebl <[email protected]>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Release 0.14.5 conflicting backports (#6)

* Don't safeguard empty strings while reading

* Update TODO Comment

* Add missing update for VEC_CLONG_DOUBLE

* Ignore deprecated AccessType in SerialIOTest

* SerialIOTest: Fix GCC Pragma Check (#1260)

There was a typo in `__GNUC_MINOR__`, causing the test not to work on all GCC versions.

Follow-up to #1213

* Clearly fail when users select a wrong backend

* ICC: Unreachable end of function

* Fix use after free in ADIOS1IOHandler

* Remove unavailable_backend_test

Hard to trigger without explicit backend selection, and test coverage is
present on dev anyway

Co-authored-by: Axel Huebl <[email protected]>

* Version: 0.14.5

including Changelog

Co-authored-by: Jean Luca Bez <[email protected]>
Co-authored-by: Franz Pöschel <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
4 people authored Jun 7, 2022
1 parent 756bffc commit ce25526
Show file tree
Hide file tree
Showing 241 changed files with 23,504 additions and 22,325 deletions.
72 changes: 72 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
Language: Cpp

BasedOnStyle: LLVM
AccessModifierOffset: -4
AlignAfterOpenBracket: AlwaysBreak
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
# AlignEscapedNewlinesLeft: false
AlignEscapedNewlines: Right
AlignOperands: false
AlignTrailingComments: false
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: false
AllowShortLambdasOnASingleLine: true
AllowShortLoopsOnASingleLine: false
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: Yes
BinPackArguments: false
BinPackParameters: false

BreakBeforeBraces: Custom
BraceWrapping:
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterExternBlock: true
AfterFunction: true
AfterNamespace: true
AfterStruct: true
AfterUnion: true
BeforeCatch: true
BeforeElse: true
# BeforeLambdaBody: true
SplitEmptyFunction: false
SplitEmptyNamespace: false
SplitEmptyRecord: false

BreakConstructorInitializers: BeforeComma
BreakInheritanceList: BeforeComma
ColumnLimit: 80
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
FixNamespaceComments: true
IndentWidth: 4
NamespaceIndentation: Inner
PointerAlignment: Right
SortUsingDeclarations: false
SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesInAngles: false
SpacesInContainerLiterals: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: Auto
StatementMacros: ["OPENPMD_private", "OPENPMD_protected"]

---
Language: Json
BasedOnStyle: llvm
...
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/install_problem.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ labels: install
---

**Performed steps**
The following steps
The following steps

```commandline
...
Expand Down
1 change: 1 addition & 0 deletions .github/ci/sanitizer/clang/Leak.supp
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,4 @@ leak:adios_inq_var
# ADIOS2
leak:adios2::core::engine::SstReader::*
leak:adios2::core::engine::SstWriter::*
leak:ps_make_timer_name_
12 changes: 7 additions & 5 deletions .github/ci/spack-envs/clang10_nopy_ompi_h5_ad1_ad2/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,26 +20,26 @@ spack:
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2
cmake:
externals:
- spec: "cmake"
- spec: cmake@3.23.0
prefix: /usr
buildable: False
openmpi:
externals:
- spec: "openmpi"
- spec: openmpi@2.1.1
prefix: /usr
buildable: False
perl:
externals:
- spec: "perl"
- spec: perl@5.26.1
prefix: /usr
buildable: False
python:
externals:
- spec: "python"
- spec: python@3.8.0
prefix: /usr
buildable: False
all:
target: ['x86_64']
target: [x86_64]
variants: ~fortran
providers:
mpi: [openmpi]
Expand All @@ -63,3 +63,5 @@ spack:
config:
build_jobs: 2

mirrors:
E4S: https://cache.e4s.io
4 changes: 3 additions & 1 deletion .github/ci/spack-envs/clang5_nopy_nompi_h5/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ spack:

packages:
all:
target: ['x86_64']
target: [x86_64]
variants: ~mpi ~fortran
compiler: [[email protected]]

Expand All @@ -32,3 +32,5 @@ spack:
config:
build_jobs: 2

mirrors:
E4S: https://cache.e4s.io
12 changes: 7 additions & 5 deletions .github/ci/spack-envs/clang5_nopy_ompi_h5_ad1_ad2_bp3/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,26 @@ spack:
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2
cmake:
externals:
- spec: "cmake"
- spec: cmake@3.23.0
prefix: /usr
buildable: False
openmpi:
externals:
- spec: "openmpi"
- spec: openmpi@2.1.1
prefix: /usr
buildable: False
perl:
externals:
- spec: "perl"
- spec: perl@5.26.1
prefix: /usr
buildable: False
python:
externals:
- spec: "python"
- spec: python@3.8.0
prefix: /usr
buildable: False
all:
target: ['x86_64']
target: [x86_64]
variants: ~fortran
providers:
mpi: [openmpi]
Expand All @@ -61,3 +61,5 @@ spack:
config:
build_jobs: 2

mirrors:
E4S: https://cache.e4s.io
12 changes: 7 additions & 5 deletions .github/ci/spack-envs/clang8_py38_mpich_h5_ad1_ad2/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,26 @@ spack:
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2
cmake:
externals:
- spec: "cmake"
- spec: cmake@3.23.0
prefix: /usr
buildable: False
mpich:
externals:
- spec: "mpich"
- spec: mpich@3.3
prefix: /usr
buildable: False
perl:
externals:
- spec: "perl"
- spec: perl@5.26.1
prefix: /usr
buildable: False
python:
externals:
- spec: "python"
- spec: python@3.8.0
prefix: /usr
buildable: False
all:
target: ['x86_64']
target: [x86_64]
variants: ~fortran
providers:
mpi: [mpich]
Expand All @@ -61,3 +61,5 @@ spack:
config:
build_jobs: 2

mirrors:
E4S: https://cache.e4s.io
12 changes: 7 additions & 5 deletions .github/ci/spack-envs/clangtidy_nopy_ompi_h5_ad1_ad2/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,26 @@ spack:
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2
cmake:
externals:
- spec: "cmake"
- spec: cmake@3.23.0
prefix: /usr
buildable: False
openmpi:
externals:
- spec: "openmpi"
- spec: openmpi@2.1.1
prefix: /usr
buildable: False
perl:
externals:
- spec: "perl"
- spec: perl@5.26.1
prefix: /usr
buildable: False
python:
externals:
- spec: "python"
- spec: python@3.8.0
prefix: /usr
buildable: False
all:
target: ['x86_64']
target: [x86_64]
variants: ~fortran
providers:
mpi: [openmpi]
Expand All @@ -61,3 +61,5 @@ spack:
config:
build_jobs: 2

mirrors:
E4S: https://cache.e4s.io
12 changes: 7 additions & 5 deletions .github/ci/spack-envs/gcc5_py36_ompi_h5_ad1_ad2/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,26 @@ spack:
variants: ~zfp ~sz ~png ~dataman ~python ~fortran ~ssc ~shared ~bzip2
cmake:
externals:
- spec: "cmake"
- spec: cmake@3.23.0
prefix: /usr
buildable: False
openmpi:
externals:
- spec: "openmpi"
- spec: openmpi@2.1.1
prefix: /usr
buildable: False
perl:
externals:
- spec: "perl"
- spec: perl@5.26.1
prefix: /usr
buildable: False
python:
externals:
- spec: "python"
- spec: python@3.6.3
prefix: /usr
buildable: False
all:
target: ['x86_64']
target: [x86_64]
variants: ~fortran
compiler: [[email protected]]

Expand All @@ -59,3 +59,5 @@ spack:
config:
build_jobs: 2

mirrors:
E4S: https://cache.e4s.io
Loading

0 comments on commit ce25526

Please sign in to comment.