CHANGELOG

v0.5.5 (2025-12-08)

Bug fixes

  • Project: move dependencies to pyproject, tests deps to tox.ini (bc47e16)

Continuous integration

  • Tests: testing on Ubuntu & Windows (12c9554)

  • Tests: requirements file removed (c08f18e)

  • Cleanup: remove templates and code now obsolete with updated copier config (16ed14f)

  • Tests: Run Github Action tests on Windows (8e9c76a)

v0.5.4 (2025-12-08)

Bug fixes

  • Project: converted to copier project template, reapplied, updated (69d2476)

  • McSAS3: updated module names (6d26abf)

Testing

  • Notebook: rerun for updated outputs (5f52fa5)

Unknown Scope

  • Update authors list with Glen J. Smales (d50dae8)

  • Update LICENSE (b78d2de)

  • Update README.rst (363e850)

  • Update README: link to internal doc pages (4a47042)

  • Added wash solvent, volume and number of washes (8f1f095)

v0.5.3 (2024-08-07)

Bug fixes

  • Structure: copy some parameters to DerivedParameters as well (b8833c6)

  • Structure: increase note count with each note (c6547c7)

  • Reagent: append component or reagent if not in list already (9067c63)

Continuous integration

  • docs: install graphviz+dot on Windows (6c941d3)

  • docs: install graphviz+dot on Windows (6eefd83)

  • coverage: syntax fix (2b98edd)

Documentation

  • Changelog: updated (416bbdd)

  • Structure: adjust info messages/output (23f491b)

  • notebook: removed outputs for easier diff (5e70afb)

Refactoring

  • structure: make flake8 happy (2ede69c)

Testing

  • notebook: added outputs again for testing (b57b2fe)

  • requirements: updated for chempy issues with numpy2 (98d1b57)

  • Data: adjusted test data (a4b0d1c)

Unknown Scope

  • previous update. (6393d38)

  • Updated structure with more information (99a5206)

v0.5.2 (2023-11-29)

Bug fixes

  • structure: logging to files (507fec6)

Refactoring

  • Formatting: black applied (b513bcc)

  • General: removed unused import, isort’d (55ef37a)

Testing

  • dachs: tests need assertions (9e5eec4)

v0.5.1 (2023-11-28)

Bug fixes

  • notebook: remove previously added locale change (016ed6b)

  • notebook: ensure utf8 encoding (Windows) (0e950e1)

  • structure: warn if syringe could not be parsed (9992fc2)

  • structure.create: what if TotalLinkerMoles is not found? DivBy0 on L444 (8810462)

  • structure.create: handle missing+optional Mixture container (d2d9cfa)

  • structure.create: previousRLM might be empty (859b665)

  • find_in_log: remove dummy exclude, make it empty list (5fe0cca)

  • format: syntax, put backslashes in raw string (747cde0)

  • reading: handle optional columns gracefully (PriceDate, Using) (33a7897)

Documentation

  • changelog: fix commit message formatting (031ce53)

  • changelog: adjusted changelog for unreleased changes as well (21595ed)

  • changelog: modified changelog template, omit chore changes (8344ef6)

  • changelog: syntax fix (ecbad98)

Refactoring

  • General: some extra print() disabled (37b1b31)

  • formatting: comment (6223aa1)

  • Naming: consistent more specific name member, fixing tests (0d635d6)

Testing

  • notebook: show .h5 files without full path which depends on platform (3e85944)

  • notebook: show .h5 files found (0fb4d8e)

  • dachs: traceback info added, on failures (4060476)

  • notebook: ensure utf8 encoding, required for Windows (dc11f2a)

  • notebook: now with cell outputs (bddeb75)

  • notebook: updated for current structure (2426750)

  • notebook: remove notebook cell outputs (aa885f2)

  • General: updated file paths, output failing file names (bf0fc32)

Unknown Scope

  • update test cases (0dff71a)

  • Adapting to support a third addditive (0ccce64)

  • improved data classes to offload work. (f13761e)

  • Updating synthesis text generation (993136d)

  • Updates on the text block and an additional yield (cc2931e)

  • naming improvements, synthesis text generation (207a6e1)

  • fixing time, yield calc issues, improving naming (c678f54)

  • small upgrade to reaction times (ed1aba0)

  • small update (a34592f)

  • Replaced KeyParameters w/more detailed DerivedPara (c7ba0a6)

  • Result of bug-squashing event with Glen (5173ca7)

  • Adding support for density of mixtures. (de695fe)

  • find_in_log will never return None, clarified. (f5d83a3)

  • removed SynthesisLog-type messages -> RawLog (e0486f1)

  • adding ProductYield to ExtraInformation (0df24b1)

  • skipping blank lines in logs (40f8114)

  • Adding “Using” to the RawLogMessages (95e2552)

  • helper function to split a rowan log per sample. (46d0df1)

  • Removing final mentions of “weight” and minor fix (3de5078)

v0.5.0 (2023-07-28)

Bug fixes

  • Notebook: adjusted for Dash 2.11, tests successful here (31ab924)

  • helpers.whitespaceCleanup: handle Series object properly (f5e791e)

  • serialization: dumpKV() omits custom dachs types now but stores type info (cdbbbcc)

  • Equipment.Description: filter out NaN (set to ‘’) values while parsing (2da1957)

  • serialization.graphKV: fixed for node names containing colons ‘:’ (8570cbb)

  • equipment.PV: reader/parser fixed for extended LogBook xslx format (5cfd521)

Features

  • equipment.PV: updated converters and validators (85ed382)

  • Physical Values: parsing PVs from Logbook .xlsx file to PVs and storing them to HDF5 (9403b40)

Refactoring

  • serialization: removed obsolete filterStoragePaths() (5eee1fb)

  • serialization: debug output improved (850b293)

  • main: file mode change (795d93b)

  • General: regular python files shall not have executable bit set (b3635f4)

  • PV: class names shall be in TitleCase (13e9304)

Testing

  • requirements: fixed chempy version to prevent KeyError about . in formula (6126f4e)

  • PV: fixed tests for recent PV changes (ca51989)

Unknown Scope

  • Updated Logbook with actual PVs and extra info (b0bafab)

v0.4.3-dev.5 (2023-06-09)

Refactoring

  • main: separate main.py for code to be reused in tests (d62f195)

  • scripts: RunMultiple.sh updated for path handling (2eb6b01)

  • formatting: some fixes to agree with flake8 and isort, some reformatting by black (f614cb1)

Testing

  • structure: prevent pytest args to slip through to argparse (17039b3)

  • notebook: note on source .h5 files, outputs for .h5 files generated by tests earlier (27c3f7b)

  • structure: using code from main to generate .h5 files, more dependencies (395b2ca)

v0.4.3-dev.3 (2023-06-02)

Testing

  • Pint: fix currency units definition for latest Pint 0.22 (315222a)

  • reagent: fix PreparationDate argument (6bdeba5)

v0.4.3-dev.2 (2023-05-04)

Code style

  • readers: trailing whitespace (W291) removed (441a4c4)

v0.4.3-dev.1 (2023-05-04)

Code style

  • structure: black formatter (81f160f)

Unknown Scope

  • Computation of solution age added to extraInfo (df5dd85)

  • added test case for AutoMOF_6 series (4fa9ec3)

  • preparing for AutoMOF 6&7 (1d53806)

  • Shell script to run AutoMOF05 (755431d)

  • script to pick apart the raw logs from RoWan (5918e0d)

  • Readin example jupyter notebook launching Dash (afa6065)

  • making a read-in structure python notebook (09a1e55)

  • tests(structure): set AMSET in tests to succeed (e7740a5)

  • removing superfluous weight determination (5ff5fd9)

  • reimplementing calibration and CLI AMSET option (9a4c70f)

v0.4.2 (2023-04-20)

Bug fixes

  • serialization: Graph SVG with transparent background (366287c)

Documentation

v0.4.1 (2023-04-18)

Bug fixes

  • GitHub Actions: Make new release only if tests succeed (94f7a25)

  • requirements: graphviz added for tests (a06f87d)

v0.4.0 (2023-04-17)

Bug fixes

  • data import: whitespace cleanup for texts/descriptions (005be00)

  • ExperimentalSetupClass: removing redundant whitespace from description (5429102)

  • readers: unwanted DataFrame string formatting (880ca0d)

Documentation

  • visualization: Generate SVG Graph in main (31f38f9)

  • visualization: Graph building code added, WIP (1e1ffed)

Features

  • serialization: use the ID for path prefix at singular objects as well (60a08eb)

Refactoring

  • ExperimentalSetupClass: comment about intended behaviour (9a41f7b)

v0.3.0 (2023-04-05)

Bug fixes

  • command line: typo in usage texts (cf39d14)

Documentation

  • structure: fix format (4ccaf91)

  • readme: notes on command line usage (4d11686)

Features

  • command line: new parameter -o allows to specify location and name of HDF5 output file (fab741a)

Refactoring

  • serialization: use McHDF.storeKVPairs avoids separate loop (34b9cd9)

  • serialization: add type info (1e946d4)

  • serialization: rename storagePaths() -> dumpKV() (4ac7f96)

  • structure: main module reuses structure.create() (be72352)

  • structure: moved testing code to separate module for reuse (6b78abf)

  • root: rename top-level class to more meaningful name Experiment (0fe03dc)

v0.2.0 (2023-04-04)

Code style

  • serialization: fix file header (029c20c)

Documentation

  • readme: info & reminder how to get stdout/stderr with pytest (20fc960)

Features

  • ComponentMasses: store as dict associated to their respective Component (a797b0b)

  • serialization: use object IDs instead of numerical index where available (fef04b0)

Unknown Scope

  • tests(structure): commented core for dumping all storage paths (450d660)

v0.1.2 (2023-04-03)

Bug fixes

  • Serialization: store lists of quantities, fixes #7 (d311d5b)

  • EquipmentList: price unit parsing (971a54d)

Refactoring

  • Tests: mcsas3 can be installed with pip now (4d17768)

v0.1.2-dev.3 (2023-03-31)

Code style

  • documentation: comment formatting (1129c56)

v0.1.2-dev.2 (2023-03-31)

Code style

  • changelog: version number prefixed by v (1840736)

Documentation

  • General: inheritance diagram in reference (946cdd8)

v0.1.1 (2023-03-28)

Bug fixes

  • reagent: adjust units and method names for tests to succeed (0b5b21e)

Code style

  • general: satisfy flake8 (ce44d64)

  • general: code formatting line length set to 115 (d013773)

  • general: reformat main.py, whitespace fixes (7b9954b)

  • general: isort imports (0467ca3)

  • general: formatted with black (1b67618)

  • line length: 115) (4b19763)

Documentation

  • general: disable link check temporarily (332a112)

  • general: remove section title (d1fd17b)

  • general: initial setup (a490cb1)

  • project: readme updated (caed30c)

Refactoring

  • general: fix ureg imports (38e7a19)

Unknown Scope

  • v0.1.0 (e9e288f)

  • Many small fixes, now also runs from CLI (a06bb98)

  • adding yield, ML ratio, more test cases (3fe80a9)

  • Fix for the DACHS paths issue and other minor (6dc1362)

  • added the reaction mixture and automatic mm calcs. (36a90df)

  • tests passing (9aa39ef)

  • Mixture class operational, structure test broken. (e5d8e7e)

  • Updated naming and start on Mixture class. (6846636)

  • adjusting reagent, but will rewrite mixture (44f9108)

  • Provisioning some essential derived data on mixes (f657f79)

  • added price per volume and mass to reagent (a084f21)

  • bugfixes (976b687)

  • equipment and experimentalSetup unit test (2750dcd)

  • Changed UID to ID and fixed excel read (a1ccde0)

  • using updated McHDF.storeKV() (e7fa4de)

  • disabled debug output (4621d21)

  • using PurePath for hdf5 path, to work in Windows as well (3c2f4d3)

  • using PurePosixPath for hdf5 path not being filesystem related (d9caa87)

  • remove defaults for required fields (90487d5)

  • hdf5 export in test_integral() using McSAS3 writer (4b627d8)

  • fixed test_integral() (22257c7)

  • removed empty file (eb4ad06)

  • Adding derived parameters extractors, not yet work (90dcf7f)

  • Modified support for derived parameters (404a746)

  • Added readers for message log and starting compoun (b04479f)

  • Added RawLogMessage tests (0343aeb)

  • Created and moved pytests to tests directory (24541c2)

  • file name typo (e1c09cf)

  • let git ignore macOS file meta data (cfc8642)

  • Change datacass factory for optionals. test update (05ab72d)

  • small modifications to get the test working (70ba6d1)

  • packaging and versioneer. (7acd484)

  • support for concentration calculations in mixture (c4ff11b)

  • Updates. Can now do mixtures of reagents (0ed07a6)

  • probably better with raw strings. (327ba00)

  • addition of a UID, for storing in HDF5 tree (8783109)

  • unit and unit conversions added. (0557be3)

  • Added units support, see MolarMass (16ee937)

  • reagent now has a convenient items() iterable (8c1914b)

  • Reagent class, just as example (331be46)

  • Initial commit (b0a911d)