「view this page in B3 βῆτα server」

Revisions №432

branch: rosetta:release 「№432」
Commited by: lyskov-ai
GitHub commit link: 「99f2f5edd2b52003」
Difference from previous tested commit:  code diff
Commit date: 2026-06-07 19:04:44
linux.clang linux.gcc linux.srlz mac.clang
debug
release
unit
icc.icc.build.debug mysql postgres mpi mpi.serialization OpenCL build.header build.levels serialization performance profile m1.clang.python313.release.PyRosetta.MinSizeRel ubuntu.clang.python312.release.PyRosetta.MinSizeRel ubuntu.clang.python314.release.PyRosetta.MinSizeRel ubuntu.clang.python39.release.PyRosetta.MinSizeRel m1.clang.cxx11thread.serialization.python311.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python312.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python313.release.PyRosetta.Release m1.clang.python313.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python312.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python39.release.PyRosetta.Release ubuntu.clang.cxx11thread.serialization.python310.release.PyRosetta.Release ubuntu.clang.python310.release.PyRosetta.Release ubuntu.clang.python311.release.PyRosetta.Release ubuntu.clang.python313.release.PyRosetta.Release ubuntu.clang.python39.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python313.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python311.release.PyRosetta.conda.Release ubuntu-20.04.clang.cxx11thread.serialization.python314.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python312.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python313.release.PyRosetta.conda.Release release.rosetta.conda.release release.rosetta.documentation release.source scripts.pyrosetta scripts.rosetta.parse scripts.rosetta.validate scripts.rosetta.verify util.apps

Apply Rule of Zero across utility/options/ empty destructors (#693) ## Summary Drop user-declared empty destructors from the `utility/options/` and `utility/options/keys/` class hierarchies. The implicit destructor preserves virtual dispatch in every case via inherited virtual destructors: - All option classes inherit (transitively) from `utility::options::Option`, which declares `virtual ~Option()`. - All option-key classes inherit (transitively) from `utility::keys::Key`, which declares `virtual ~Key()`. No class touched here owns a raw resource, declares a non-trivial destructor body, or has a user-declared copy/move that would suppress the implicit destructor. ### `utility/options/` — abstract bases and remaining leaf option classes * Abstract / templated bases: `ScalarOption`, `ScalarOption_T_`, `VectorOption`, `VectorOption_T_`, `AnyOption`, `AnyVectorOption`. * Leaf options: `PathOption`, `PathVectorOption`, `StringOption`, `StringVectorOption`, `ResidueChainVectorOption`. `AnyOption` / `AnyVectorOption` used the `virtual` keyword on the empty body; the rest used `override {}`. Both forms are equivalent to the implicit virtual destructor here. ### `utility/options/keys/` — base + 16 leaf key types * Base: `OptionKey`. * Leaves: `AnyOptionKey`, `AnyVectorOptionKey`, `BooleanOptionKey`, `BooleanVectorOptionKey`, `FileOptionKey`, `FileVectorOptionKey`, `IntegerOptionKey`, `IntegerVectorOptionKey`, `PathOptionKey`, `PathVectorOptionKey`, `RealOptionKey`, `RealVectorOptionKey`, `ResidueChainVectorOptionKey`, `ScalarOptionKey`, `StringOptionKey`, `StringVectorOptionKey`, `VectorOptionKey`. This is the natural follow-up to #692, which intentionally deferred this batch. With this PR, the entire `utility/options*` empty-virtual-destructor pattern is cleaned up. 29 files, 156 deletions, 0 additions. Debug build clean.

...
Test: linux.clang.performance

Failed sub-tests (click for more details):
instantiate_modules_packer_palettes