Skip to content

Cluster Clones

Pre-release
Pre-release
Compare
Choose a tag to compare
@matthewfallan matthewfallan released this 15 Nov 13:42
· 841 commits to main since this release

What's new in v0.9.4

Bugfixes

  • Prior to this release, on some but not all platforms, running multiple EM clustering runs in parallel (but not in series) would cause them to have identical trajectories. I suspect (but have not demonstrated) that this bug happened because on such platforms, the entire Python state (including the random number generator) was copied to each subprocess by concurrent.futures.ProcessPoolExecutor. Further suggesting this mechanism, on the same platforms, subprocesses also log messages the same way as the main process, suggesting that the root logger is also copied. So that each clustering run has a unique trajectory even with the same Python state, each clustering run now accepts a seed for its random number generator, which is randomized by the main process to ensure that each clustering run is seeded uniquely.

Internals

  • Adopt the convention where all strings use double quotation marks.
  • Add more detailed __str__ methods to some custom classes.

Documentation

  • Add more information to the documentation, especially to Manuals -> Workflow.

Full Changelog: v0.9.3...v0.9.4