=========
Changelog
=========
.. current developments
v0.4.0
====================
This release includes significant improvements to documentation, as well as a few bug fixes and behavior improvements.
**Changed:**
* NetworkPlanners' ``mappers`` attribute is now always represented as a tuple (or ``None``) upon initialization (`PR #232 `_).
* Reorganization and general updates to documentation (`PRs #231 `_, `#228 `_, `#229 `_, `#230 `_, `#246 `_).
**Deprecated:**
* Deprecated ``konnektor.network_analysis.get_is_connected()``.
Use the ligand_network's ``.is_connected()`` `method `_ instead, which is functionally equivalent (`PR #250 `_).
**Removed:**
* ``konnektor.Component``, ``konnektor.ProteinComponent``, and ``konnektor.SmallMoleculeComponent`` have been removed.
Please use ``gufe.Component``, ``gufe.ProteinComponent``, and ``gufe.SmallMoleculeComponent``, which are identical, respectively, instead (`PR #225 `_).
**Fixed:**
* Fixed bug in NetworkPlanners where passing a generator to the ``mappers`` argument would consume the generator upon initialization (`PR #232 `_).
* Fixed API docstrings to accurately reflect behavior (`PRs #232 `_, `#236 `_, `#241 `_, `#242 `_, `#248 `_).
v0.3.0
====================
**Changed:**
* ``ExplicitNetworkGenerator`` no longer uses ``multiprocessing`` if ``n_processes=1`` (`PR #210 `_).
**Deprecated:**
* ``konnektor.network_tools.concatenate_networks()`` has been deprecated and will be removed in v0.4.0.
Concatenator class methods should be used directly instead. For example, instead of ``network_tools.concatenate_networks(mst_concatenator, list_of_networks)``, use ``mst_concatenator.concatenate_networks(list_of_networks)``.
**Fixed:**
* Scores generated by ``konnektor.toy_data`` scorers are now deterministic when called in parallel, meaning that results will be identical whether operations on these datasets are run in serial or in parallel. Note that this was only a bug in these toy datasets, not in the actual konnektor parallelization.
* Fixed bug where MST concatenator would fail when run interactively, such as in a jupyter notebook (`Issue #202 `_, `PR #210 `_)
v0.2.1
====================
**Fixed:**
* Fixed bug where ``konnektor.visualization.draw_ligand_network`` did not work for networks without scored edges (frequently star/radial or explicit networks) (`PR #191 `_).
v0.2.0
======
**Changed:**
* For both ``ExplicitNetworkGenerator.generate_network_from_indices()`` and ``ExplicitNetworkGenerator.generate_network_from_names()``, all ``components`` will be included as nodes in the network. If this results in a disconnected network (in the case where one or more of the ``components`` is not included in ``indices``, or ``names``, respectively), a warning will be raised (`#122 `_).
* If multiple mappers are passed to a network planner, but no scorer, the *first* mapping from the *first* mapper provided will be used. This is a change from the previous behavior, which would use the *first* mapping from the *last* mapper. The current behavior is now consistent with ``openfe``\'s network planning behavior (`#84 `_).
* ``clustering.auxilliary_featurizer.ChargeTransformer`` parameter ``parallel`` renamed to ``n_jobs`` which allows for designating the maximum number of concurrently running jobs (`#133 `_).
* For radial (star) network generation, if ``central_component`` is already in the list passed to ``components``, a self-edge will no longer be created, and a warning is raised (`#145 `_).
* **konnektor** now treats mapping scores of 1.0 as best, and 0.0 as worst. This is an inversion from the prior behavior (0.0 best, 1.0 worst) to match the behavior of the rest of the openfe ecosystem (`#138 `_).
* Renamed ``RadialLigandNetworkPlanner`` to ``RadialNetworkGenerator`` to be consistent with the other network generator class names (`#160 `_).
* For ``RedundantMinimalSpanningTreeNetworkGenerator``, if the number of redundancies (``n_redundancy``) is larger than the number of redundant MSTs able to be generated for the network, a warning will be raised, and the resulting network will contain the most redundant MSTs able to be generated (`#122 `_).