All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
2.6.0 (2022-08-09)
- Adjust entropy correction to Miller-Madow (324c9f7)
- Don't write multilevel json output for aggregated higher-order networks (1f5e7ea)
- Fix calc entropy rate for undirected networks (ccd6b6c)
- py: Fix ignored variable_markov_time argument (eedc777)
- py: Fix test for entropy rate (78772b5)
- python: Fix physical leaf node iterator on state networks (#312) (4e2918c), closes #313
- python: Only aggregate states into physical nodes when we have a higher-order network (7e3277c)
- python: Segfault when accessing physical_nodes (cc5c95e), closes #300
2.5.0 (2022-06-07)
- Output per-module codelength in json (eae6650)
- Print all trials using --print-all-trials (e65bea8), closes #298
- Write node metadata to json (472b791)
- Constrain numerical arguments to sensible values (174c99f)
- Don't allow less than 1 trial (18e97e2)
- Json multilevel modules for higher-order networks (d020c7c), closes #266
- Only print all trials when running with more than 1 trial (5f9d8b5)
- python: Fix elapsed running time (1131e84)
- python: Replace MersenneTwister implementation with stdlib (be3effd)
2.4.1 (2022-05-27)
- Json output causes segfault (78e80c5)
2.4.0 (2022-05-24)
- js: React hook (c19a819)
- js-parser: Parse module level from clu files (bb91066)
- js: Correctly parse clu-files without header (04c39ea)
- python: Don't allow adding multilayer intra-inter links and ordinary nodes. (8c3d09c), closes #287
- python: Improve constructor and run signatures (6852e14), closes #286
- python: no_self_links was always set unless include_self_links=True (9afe5fa)
- python: Prevent infinite loop in getMultilevelModules (1174b66), closes #284
- Using deprecated option --include-self-links references missing option --no-loops (1497bf7)
2.3.0 (2022-04-13)
- js: Don't call error on worker terminate (cc57c8c)
- js: More robust heuristic to parse output format type (33bde00)
- Match multilayer nodes by node and layer ids when using --cluster-data (b5f6eb3)
- python: Add no_self_links to api (b3d903d), closes #285
- python: Add recorded teleportation keyword argument (839e1e0), closes #270
- python: Fix matchable multilayer id option (8377e07)
2.2.0 (2022-03-07)
- Add flow-model, higher-order, and state-level fields to json, tree and clu output (24125e5)
- js: More forgiving clu and tree parsing (4764946)
- Write json output with --no-infomap (c0cec87), closes #268
2.1.0 (2022-02-11)
- js: Add progress event callback (0fab95b)
- js: Change Typescript types to use mec instead of modularCentrality (298eed3)
- js: Parse node path as string instead of array of number (51feb73)
- js: Validate parsed results and throw instead of returning null on failure (5f56b94)
2.0.2 (2022-01-31)
- Change json key modularCentrality to mec (78c7a57)
- js: Parse directed field in ftree files (916f54a)
- js: Pass parseLinks to main parse function and correctly detect multilayer tree files (0a40ca6)
- Minify json output (123c2b1), closes #260
2.0.1 (2022-01-26)
- Bug in write state network to json (50f8de2), closes #262
- js: Broken parser due to duplicate variable name (f437e13)
- Use min mass for dangling nodes when regularized (f741d07)
2.0.0 (2022-01-13)
- Removes --input-format.
- Removes --include-self-links.
-
Add new feature flags to python and js api (48245a7)
-
Remove superfluous --input-format flag (2dd77c4)
1.9.0 (2021-11-17)
- Incorrect one-level codelength for higher-order input (5a6d1a1), closes #182
- Write "directed", not "1", in cli output notice (f0a9dc7)
1.8.0 (2021-11-05)
1.7.3 (2021-10-26)
- js: Don't run error callback on finish (13a21f0)
1.7.2 (2021-10-26)
- js: Run error callback on terminate (e83e897)
1.7.1 (2021-10-14)
1.7.0 (2021-10-04)
- python: Add multilevel_modules property (0d4cc37)
- python: Add num_levels property (abd4f7f)
- python: Pass dict to add_nodes (e30870f)
- python: Pass dict to add_state_nodes (5cd9ba2)
- python: Pass dict to set_names (0ed79e8)
- Add directed field to json output (7db19f2)
- Write json multilevel modules and module information (e6796c8)
- python: Adding a networkx DiGraph should set the directed flag (a60a404)
- python: Using directed=False should use undirected flow (be0f6e2)
- Metadata codelength works after multiple runs (ec00ccd), closes #167
- Module ids wrong for uneven depth and chosen level > 1 (c3a0c90), closes #221
1.6.0 (2021-07-08)
- python: Add get_dataframe (13066b3)
- python: Add write method (fdb3ce1)
- python: Add write_state_network and write_pajek (da715a9)
- Intra-module links missing from ftree output (b347e24)
- js: Add type to files parameter (269b426)
- js: Output arguments should not be required to be an array (a292318)
- js: Worker should accept extra files as objects (524a0e7)
- python: get_multilevel_modules should return a dict (f050fb5)
1.5.1 (2021-06-23)
- js: Add missing flow network file output (6b8ddb8)
- js: Handle json parse exceptions in worker (a8a127b)
- js: Pass arguments as object (13e71a0)
- js: Worker should accept network as object (d7184b8)
- Avoid nan values for relative codelength savings (e6a429e)
1.5.0 (2021-06-22)
- js: Add Typescript types to JS worker (f2fecf4)
- python: Add get_links, links and flow_links (a4c2611)
- Write tree to CSV file (5d0d36a)
1.4.4 (2021-06-14)
- python: Fix OpenMP detection (27f9070)
1.4.3 (2021-06-14)
1.4.2 (2021-06-14)
- build: Fix building Python package with OpenMP if available (cfaade5)
1.4.1 (2021-06-10)
- js: Add newick and json to output from JS worker (549ee84)
- python: Add missing write_newick and write_json methods (62c2736)
- Change Newick output extention to .nwk (f0e2e8e)
1.4.0 (2021-06-10)
- Support printing JSON tree (22116d6)
- python: Accept named arguments (5dabf4a)
- python: Add 'add_networkx_graph' method to API (4067d40)
- python: Add effective number of modules (0f9a516)
- python: Add shorthand for accessing number of nodes and links (8808045)
- Add 'flow' to output options for node/edge flow (d74a773)
- python: Also add nodes in networkx example (3a88878)
- python: Fix effective_num_modules (f41827f)
- R: Expose base class methods to avoid c stack usage error (47bdec0)
- R: Fix swig build by hiding python specifics (6b8a67e)
- R: Replace enum class with struct for R (73c702f)
- R: Update R example and build to Infomap v1 (17e1cc0)
- R: Update swig version in docker build (74c4e86)
1.3.0 (2020-12-03)
- Add --hide-bipartite-nodes (#156) (f5e673c)
- New optional flow model for bipartite input (91f35fe)
- Support Newick tree format in output (9749a05)
- Continue searching from input tree (2199921)
- Fine-tune bottom modules in input tree with -F (c187718)
- Implement missing multilayer relax by JSD (95141bf), closes #154
- Use correct objective in coarse tune for memory and multilevel networks (97db558), closes #174
1.2.1 (2020-11-10)
- --clu-level was not respected in command line usage (b82a0b1), closes #153
- Allow ftree cluster data (bfe3601)
- Apply weight-threshold also to multilayer nodes (db2d781)
- Remove ClusterReader/BipartiteClusterReader (8e08309), closes #162
- windows: Include algorithm header (4f9ef88), closes #150
1.2.0 (2020-09-30)
- Add option to --use-node-weights-as-flow (0d75174)
- Show bipartite start id in bipartite output (f6e9233)
- Fix flow calculator for bipartite networks (b725b27)
- python: Fix bipartite_start_id getter (d326298)
1.1.4 (2020-09-13)
- Clarify that the algorithm searches for multi-level solutions by default (47be4de)
- python: Fix color indices in networkx example (dcf5888)
1.1.3 (2020-05-09)
- python: Correct codelength terms after N > 1 (146cee6)
- python: Define module_codelength as L - L_index (fa6eb94)
- python: Don't create empty node names if they didn't already exist (#126) (4d1cd56)
- python: Expose num_non_trivial_top_modules (6b91184)
1.1.2 (2020-04-08)
1.1.1 (2020-04-08)
- Remove implied link direction from --skip-adjust-bipartite-flow (05c3eba)
1.1.0 (2020-03-31)
- Show num levels and modules in file output (0b70cd8)
- python: Expose codelengths for all trials (eab7ae8)
- Don't use physical names in _states_as_physical.net (5889fb1)
1.0.11 (2020-03-31)
- Handle zero weights in intra-layer links (ddc5a3d)
1.0.10 (2020-03-17)
1.0.9 (2020-03-14)
- windows: compilation error on std::min (b6c1a41)
1.0.8 (2020-03-12)
- Fix reconstruct physically merged state nodes (dc91e1a), closes #118
- Remove debug output (#117) (60e7ab3)
1.0.7 (2020-03-09)
- Add header in network and states output (c415a4b)
- Use *Edges/*Arcs instead of *Links in pajek output (ff3a98e)
- Use node_id instead of id in clu output (39cd4e4)
- js: Fix support for all file io in Infomap.js (ea9d899)
1.0.6 (2020-03-03)
- python: Enable numpy.int64 in link weights (8d91206), closes #107
- python: Print tree by default with python cli (1565cab), closes #106
1.0.5 (2020-03-02)
- Common parameters should not be advanced (#101) (2907c86), closes #100
- consistently use 1-based indexing for paths and 0 for indexes (f283818), closes #103
- Fix ftree links since remapping path from 1 (f447b48), closes #102
1.0.4 (2020-02-28)
- js: Revert attempted worker blob optimization (c521373)
1.0.3 (2020-02-28)
- js: Handle Infomap exceptions in js (7a641f9), closes #99
- python: Start module id from 1 in get_[multilevel_]modules (9419798)
1.0.2 (2020-02-28)
1.0.1 (2020-02-27)
- python: Drop support for python 2
- python: Rename physicalId to node_id. Remove initial partition as first argument to run, use initial_partition argument. Start InfomapIterator.path indexing from one.
- Output header format has changed
- Ftree output format has changed to include enter flow
- Clu output now contains top modules instead of leaf modules
- Tree output is sorted on flow
- Clu module ids starts from 1 instead of 0
- Output contains name of the physical node instead of state id
- Full multilayer format require the *multilayer heading
- Remove undirdir and outdirdir, use --flow-model. Rename min-improment to --core-loop-codelength-thresh. Remove random-loop-limit. Rename tune-iteration-threshold to --tune-iteration-relative-threshold. Rename skip-replace-to-one-module to --prefer-modular-solution.
- Removed --print-state-network, use -o states
- Renamed --set-unidentified-nodes-to-closest-module to --assing-to-neighbouring-module
- No support for *path input
- python: Add meta info to infomap package (a2caaf4), closes #63
- Add enter flow to ftree output (bd3255e), closes #82
- Show entropy rate in the beginning (f61692c)
- python: Improve Python API (#87) (c39cd9f)
- Add -o/--output option for comma-separated formats (a255a18)
- Add meta data in output file header (66ccc64)
- Add option to print parameters in json (3a2509d)
- Allow multilayer formats without specifying -i. (08e09f1)
- Allow one-sided multilayer relax limit (a116b83), closes #68
- Begin module id from 1 instead of 0 in clu output (2bbea5d)
- Create npm package with Infomap worker, changelog and parameters (44dae36)
- Output name of physical node instead of state id (dda3277)
- Remove --skip-complete-dangling-memory-nodes (6909f21)
- Remove support for *path input (e7be175)
- Rename --set-unidentified-nodes-to-closest-module (16fdc15)
- Simplify command line interface (f537132)
- Sort tree on flow (6e27858), closes #71
- Write top modules to .clu, not bottom level (1e16a3c)
- js: Add missing this in error handler (7345cdf)