Pull Request №683 RosettaCommons/rosetta/main ← everyday847/rosetta/correlated-perturbation
Merge: cf532f89b6bbb7e67fd75031f3cc2aa95fb5ce19←bb306f5089bb1aadf8c93971dc2d2b928c5d3142
Add correlated parameter perturbation to PerturbBundle
----------------
Merge commit message:
Add correlated parameter perturbation to PerturbBundle
Introduces <Correlation> sub-tags for PerturbBundle that specify
Pearson correlation coefficients between bundle parameters. When
present, correlated parameters are perturbed jointly via multivariate
Gaussian sampling (Cholesky decomposition of the covariance matrix).
Parameters not involved in correlations continue to be perturbed
independently.
Adds a Cholesky decomposition wrapper in numeric/linear_algebra/
backed by Eigen::LLT, exposing only vector1-based types.
Pull Request №674 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/basic-otstream-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←77f1ba2d66e0e1ec62e5d9dd75cc9bb7c64eb770
Modernize copy prevention in basic_otstream and TracerImpl
----------------
Merge commit message:
Modernize copy prevention in basic_otstream and TracerImpl
basic_otstream: replace private undefined copy ctor with explicit
= delete in the public section for both copy ctor and copy assignment.
Add a comment explaining why: the destructor calls delete this->rdbuf(),
so a copy sharing the same buffer would cause a double-free.
TracerImpl: move the already-deleted copy ctor from private to public
and add the missing copy assignment = delete.
Pull Request №678 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/basic-emitter-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←a02c82e50df8c1a7a3a93d80ee50f7b5b122e322
Modernize copy prevention in Emitter, YamlEmitter, and JsonEmitter
----------------
Merge commit message:
Modernize copy prevention in Emitter, YamlEmitter, and JsonEmitter
Replace private/protected undefined copy ctor declarations with explicit
= delete in the public section, and add the missing copy assignment = delete.
Also remove the redundant undefined null-ctor declarations (suppressed
automatically in C++11 by the presence of user-declared non-default ctors).
Pull Request №669 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/irstream-modernize-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←56292bf7c603504d2f187fef7e3981440511b307
Modernize copy prevention in irstream to use = delete
----------------
Merge commit message:
Modernize copy prevention in irstream to use = delete
Replace old-style private-and-undefined copy constructor/assignment
with explicit = delete in the public section. Matches the treatment
already applied to the sibling orstream class.
Pull Request №670 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/registrant-modernize-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←61c9a26d96c83d65f054961f4dae132e43c4b090
Modernize copy prevention in factory/Registrant to use = delete
----------------
Merge commit message:
Modernize copy prevention in Registrant to use = delete
Replace old-style private-and-undefined copy constructor/assignment
with explicit = delete. A comment explains the non-obvious reason:
each constructor calls ProductFactory::add(), so a copy would
silently re-register the same key.
Pull Request №671 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/keylookup-modernize-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←102fc88740667713fe7d03f5e62820dc103d2fb0
Modernize copy prevention in KeyLookup to use = delete
----------------
Merge commit message:
Modernize copy prevention in KeyLookup to use = delete
Replace old-style private-and-undefined copy constructor/assignment
with explicit = delete. KeyLookup is a monostate singleton (all
methods and data are static), so copies are meaningless.
Pull Request №672 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/graph-modernize-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←0ccc000fb7c5f72b3a1f502bd5835647e3df5a8e
Modernize copy prevention in utility/graph EdgeList/Node/Edge to use = delete
----------------
Merge commit message:
Modernize copy prevention in graph EdgeList/Node/Edge to use = delete
Replace old-style private-and-undefined copy constructor/assignment in
Graph.hh (EdgeList, Node, Edge) and Digraph.hh (DirectedEdgeList,
DirectedNode, DirectedEdge) with explicit = delete. Also corrects the
copy assignment signatures from non-const T& to const T& to match the
standard copy assignment operator form.
Pull Request №673 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/basic-modernize-copy-prevention
Merge: 5c9f6db69d1a20db6353738e3724092516415bd3←aa9828ef329b75e624b5d314be79edd69207c8d0
Modernize copy prevention in basic/ComparingTracer and MessageListenerFactory
----------------
Merge commit message:
Modernize copy prevention in basic/ComparingTracer and MessageListenerFactory
ComparingTracer: replace private-undefined copy ctor with public = delete;
also explicitly delete copy assignment (std::fstream member makes copies
impossible anyway, but = delete documents the intent clearly).
MessageListenerFactory: remove redundant private-undefined copy ctor and
assignment -- SingletonBase already deletes them via inheritance.
Pull Request №668 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/signals-modernize-copy-prevention
Merge: 8556abcecef09877257656a5144b1902b5f7c699←45ad271fbf7645713af9216c17f1f187d246729c
Modernize copy prevention in utility/signals classes to use = delete
----------------
Merge commit message:
Modernize copy prevention in utility/signals classes to use = delete
Replace old-style private-and-undefined copy constructor/assignment
declarations with explicit = delete in SignalHub, BufferedSignalHub,
PausableSignalHub, TokenHub, and LinkUnit. Also deletes the LinkUnit
default constructor the same way.
Pull Request №667 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/ozstream-unique-ptr
Merge: 8556abcecef09877257656a5144b1902b5f7c699←d06df99ede8699393ad8a30e570bcaeede24699d
Refactor ozstream raw pointers to unique_ptr; modernize orstream copy ops
----------------
Merge commit message:
Refactor ozstream raw pointers to unique_ptr; modernize orstream copy ops
Replace three raw owning pointers in ozstream (char_buffer_p_, zip_stream_p_,
mpi_stream_p_) with std::unique_ptr, eliminating manual delete/nullptr pairs
throughout open(), open_append(), open_append_if_existed(), close(), and the
buffer helpers. Also replace the old private-undefined copy ctor/assignment in
orstream with explicit = delete, consistent with the irstream/izstream refactor.
Pull Request №665 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/timer-delete-copy
Merge: f9c5b025aa6240de1105fd6cdcf04f7a535ea67d←776a3e20b99c27214dd542508fbf49c8056c617f
Explicitly delete copy constructor and assignment in Timer
----------------
Merge commit message:
Explicitly delete copy constructor and assignment in Timer
Timer's destructor calls Report(), printing the elapsed time. Without
explicit copy deletion, a copied Timer would silently produce a second
Report() call on destruction, logging a duplicate timing entry for the
same measured interval. Both tag_ and t_ are non-owning pointers so
there is no memory-safety risk, but the semantic hazard is real.
Deleting copy constructor and copy assignment makes the non-copyable
intent explicit.
Rosetta Benchmark 2 months Tests for this revision was automatically canceled because newer set of tests for pull-request №665 was submitted!
Pull Request №663 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/refactor/variant-option-key-unique-ptr
Merge: 068bd85322153b1ddc5a354f8cf0633a5631e9fa←28a846a04cea64e67d633086273b0ce57e64417e
Refactor VariantKey and VariantOption raw pointers to unique_ptr
----------------
Merge commit message:
Remove unnecessary = default move ctor/assignment from VariantKey and VariantOption
Both classes have user-declared copy constructor and copy-assignment, which
suppress implicit move generation (C++11). The explicit = default moves were
performance-only; without them, moves fall back to deep-clone copies, which
is semantically correct. Per project policy, this performance-only benefit is
not worth the added noise.