Rigraph Versions Save

igraph R package

v2.0.2

2 months ago

See https://github.com/igraph/rigraph/blob/f3fa58b/src/vendor/cigraph/CHANGELOG.md for a complete changelog of the bundled C core, and https://github.com/igraph/rigraph/compare/1bd2bf79..f3fa58b#diff-aeb78e0159780a9b26daabaf6f95f450b0cfec7161fc735f27ad69145a57dc84 for the changes since the igraph 2.0.1. (A permanent link to the most recent changelog of the C core used in the R package is https://github.com/igraph/rigraph/blob/main/src/vendor/cigraph/CHANGELOG.md.)

Bug fixes

  • g + vertices(1, 2, foo = 3) works again, regression introduced in igraph 2.0.0 (#1247).
  • sample_pa() respects the out.seq and out.dist arguments again, regression introduced in igraph 2.0.0 (#1226).
  • isomorphisms() and subgraph_isomorphisims(method = "vf2") work again, regression introduced in 2.0.0 (#1219).
  • biconnected_components() now returns edge and vertex sequences again, regression introduced in 2.0.0 (#1213).
  • Remove zeros from the order and order.out components returned by dfs(), regression introduced in 2.0.0 (#1179).
  • Memory leaks when converting data to C (#1196).

Features

  • realize_bipartite_degseq() creates a bipartite graph from two degree sequences (#1212).
  • is_biconnected() checks if a graph is biconnected (#1204).
  • distances() now supports the Floyd-Warshall algorithm (#1186).

Documentation

  • Use more culturally diverse names in intro vignettes (#1246).
  • Formatting tweaks in introductory vignettes (#1243).
  • Recommend {pak} instead of {remotes} (#1228).
  • Fix typo in mean_distance() docs.
  • Update troubleshooting document, emphasize issues with Anaconda environments (#1209).
  • Improved docs for shortest path functions (#1201).
  • Document "dsatur" heuristic for greedy_vertex_coloring() (#1206).
  • Remove scg related docs (#1167).
  • Fix typo in ?articulation_points (#1191).
  • Improve installation and troubleshooting instructions (#1184).
  • Improve docs of assortativity (#1151).

Testing

  • Add tests for isomorphisms() and subgraph_isomorphisms() (#1225).

Packaging

  • Always use bundled mini-gmp (#1233).
  • config.h defines HAVE___UINT128_T (#1216).
  • Do not rely on which program during configuration (#1232).
  • configure manage libxml multiple include paths (#1197).
  • Remove empty string in configure (#1235).
  • Link Fortran runtime on Windows as needed by arpack. (#1215).
  • Workaround for deprecated enum values not being supported with old GCC (#1205).
  • HAVE_GFORTRAN flag for win and ucrt (#1171).
  • make_empty_graph() is now fully auto-generated (#1068).
  • Eliminate manual edits from autogenerated files (#1207).
  • Add read-only comments for RStudio IDE (#1152).

Internal

  • Remove unused patch files (#1234).
  • Update stimulus to 0.21.4 (#1210).
  • Avoid duplicate objects (#1223).
  • Eliminate a compiler warning from simpleraytracer (#1185).

v2.0.1.1

3 months ago

Bug fixes

  • Avoid is.R() which is deprecated in R 4.4.0.

v2.0.1

3 months ago

Bug fixes

  • Use cpp11 for simpleraytracer glue to avoid -Wlto warnings (#1163).

v1.6.0

5 months ago

v1.5.1

9 months ago

Breaking changes

  • Breaking change: start deprecation of estimate_betweenness(), estimate_edge_betweenness(), estimate_closeness() (#852).

Bug fixes

  • identical_graphs() now correctly detects identical graphs without node or edge attributes (#757).

Internal

  • Change ownership rules of attribute objects (#870).

  • R_SEXP_to_igraph() and R_SEXP_to_igraph_copy() get igraph_t object from external pointer (#865).

  • Remove ETIME() call from Fortran code, already in CRAN version 1.5.0.1 (#858).

  • Ensure that _GNU_SOURCE is always defined (#877).

  • Fix make clean (#860).

  • Fix generation of code for functions with VERTEX_COLOR out-arguments (#850).

  • Use -lquadmath in Makevars.win, for compatibility with alternative R distributions such as Microsoft R Open (#855).

  • getRversion() uses strings.

Documentation

  • Add cffr file and a GHA workflow that updates it automatically (#873).

  • Undeprecate neighborhood() (#851).

  • Remove redundant reference to AUTHORS from DESCRIPTION.

Refactoring

  • Breaking change: start deprecation of estimate_betweenness(), estimate_edge_betweenness(), estimate_closeness() (#852).

v1.5.0.1

9 months ago
  • Remove ETIME() call from Fortran code.

v1.5.0

11 months ago

Breaking changes

The internal format of graph objects has changed in a mostly backward-compatible way, to prepare for upgrading the C core to 0.10. Details are described at https://github.com/igraph/rigraph/wiki/The-igraph-object-format. Accessing graph objects that have been created with an older igraph version give a clean error message with instructions (#832). The new format cannot be read by igraph 1.4.3 or older, the following error is raised when trying to do so:

This graph was created by an old(er) igraph version.
  Call upgrade_graph() on it to use with the current igraph version
  For now we convert it on the fly...
Error in is_directed(object) : 
  REAL() can only be applied to a 'numeric', not a 'NULL'

The only supported remedy is to upgrade the igraph package to version 1.5.0 or later.

graph_version() now returns an integer scalar (#832, #847), 4 as of igraph 1.5.0 (#835).

Features

  • Vertex and edge sequences are converted to numeric vectors when used in attributes (#808).

  • New largest_component() returns the largest connected component (#786, @ngmaclaren).

Bug fixes

  • Fix error message in make_graph() when simplify = ... is used with a non-formula (#834).

Testing

  • Add more tests for graph_from_literal() (#826).

  • Reenable serialization test and tests for dyad_census(), stabilize tests (#809, #822, #823).

Documentation

  • The documentation for the R package is now hosted at https://r.igraph.org/ (#780).

  • Update vignette("installation-troubleshooting").

  • Fix use of deprecated functions in examples, e.g., replace gsize() by ecount() (#827).

  • Fix typos in ?eigen_centrality docs (@JJ).

  • Update CONTRIBUTING.md and ORCID information (#791, #774).

  • Add DOI to CITATION (#773).

Internal

  • Add data for old igraph versions as constructed objects, and tests (#838).

  • Ensure we're always using named indexes to access the internal data structure (#784).

  • Prepare migration to igraph/C 0.10 (#781).

  • Update generated interface (#765).

v1.4.3

11 months ago

Internal

  • Fix tests for dev waldo (#779, @hadley).

  • Fix linking on Windows: gfortran needs quadmath. (#778).

Documentation

  • Mention limitation of Pajek reader (#776).

v1.4.2

1 year ago

Breaking changes

  • Remove igraph.eigen.default() and eigen_defaults, introduce internal eigen_defaults() as a function (#741).

  • Remove broken nexus*() functions (#705), and srand() (#701).

C core

  • Update C core.

  • ARPACK-based calculations are now interruptible.

  • shortest_paths() and all_shortest_paths() no longer crash when an invalid from vertex is passed and weights are being used.

See diff for details.

Printing

  • Use true vertex names for printing vertex sets. If a vertex set captures a relationship between vertices (e.g., the father component of bfs()), the vertex set is printed as a named vector (#754).

  • Suggest restarting R session after fatal error (#745).

Bug fixes

  • as_long_data_frame() now correctly processes vertex attributes and works with graphs without vertex attributes (#748).

  • as.hclust(hrg.fit(g)) works again (#721).

Documentation

  • The documentation is now available at https://igraph.org/ (#743).

  • Reorganize function reference (#662).

  • Replace graph() with make_graph() in examples (#738).

  • Add docs for as.hclust.igraphHRG() (#733).

  • Merged man page of hub_score() and authority_score() (#698).

  • Refactor contributors listing (#647).

  • Improve "family" titles (#679).

  • Improve docs of ego/neighborhood functions.

  • Improve transitivity() docs.

Internal

  • Introduce cpp11 package to improve error handling in the long run (#720).

  • Avoid longjmp for error handling and interrupts (#751).

  • as.hclust.igraphHRG uses .Call() interface (#727).

v1.4.1

1 year ago

Bug fixes

  • console() now works again and provides a Tcl/Tk based UI where igraph can post status messages and progress info (#664).

  • Fix errors when printing long vertex names (#677, @ahmohamed).

  • Fix regression that broke builds on some systems (e.g., GCC version 5 or earlier), introduced in igraph 1.4.0 (#670, #671).

  • fit_hrg() does not crash any more when called with a graph that has less than three vertices.

Documentation

  • Various improvements (#663, @maelle; #667).

Internal

  • Fix warning about yyget_leng() returning wrong type when using LTO (#676).

  • Don't mention C++11 or C++17 for best compatibility with both newest R and older compilers, while still requesting a C++ compiler for linking.

  • Don't ignore build/ when building the package because the vignette index is built there.

  • Skip plot test entirely on R-devel.

  • Avoid submodules for building igraph (#674).

  • Makevars cleanup (#671).

  • Add Zenodo configuration file.