Releases: igraph/rigraph
igraph 2.0.2
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 theout.seq
andout.dist
arguments again, regression introduced in igraph 2.0.0 (#1226).isomorphisms()
andsubgraph_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
andorder.out
components returned bydfs()
, 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 forgreedy_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()
andsubgraph_isomorphisms()
(#1225).
Packaging
- Always use bundled mini-gmp (#1233).
config.h
definesHAVE___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 forwin
anducrt
(#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
igraph 2.0.1.1
Bug fixes
- Avoid
is.R()
which is deprecated in R 4.4.0.
igraph 2.0.1
Bug fixes
- Use cpp11 for simpleraytracer glue to avoid
-Wlto
warnings (#1163).
igraph 1.6.0
## Breaking changes - New `arpack_defaults()` replaces `igraph.arpack.default` and `arpack_defaults` lists (#800), with consistent usage checks (#966). - Define methods for `ape::as.phylo()` instead of own `as_phylo()` generic, remove deprecated `asPhylo()` (#763). - `bfs()` with unreachable nodes returns zero instead of `NaN` as `rank` (#956), and negative instead of `NaN` for `dist` (#926). - `random_walk()` adds one more step, the resulting list of vertices is of length `steps + 1` (#934). - `girth()` returns `Inf` for acyclic graphs (#931). - Remove some behaviour / parameters that were deprecated in 1.3 (#842). - Remove `scg_eps()`, `scg_group()` and `scg_semi_proj()`, broken and no longer maintained (#946). ## Bug fixes - Fix `printf()` warning (#975). - Fix calls to `isSymmetric()` for matrix objects with a class (#965). - Reduce frequency of interruption checks (#957). ## Features - Change "incidence matrix" naming to "biadjacency matrix" (#962). - Add aliases using the neighborhood terminology for all ego functions: (#950). - Rename arguments to `assortativity(values, values.in)` from `types1` and `types2` (#952). - Add ellipsis to `cluster_label_prop()` (#954). - Placeholders for `is_acyclic()` and `is_forest()`, to be implemented in igraph 2.0.0 (#945). - `is_tree(details = TRUE)` designates the first vertex as root for non-trees (#935). - `all_shortest_paths()` returns the vertex list in both `res` and `vpaths` components (#930). - Improve symmetry check for adjacency matrices on input (#911). - Warn if non-symmetric undirected adjacency matrix (#904). ## Documentation - Remove duplicate `\seealso{}` (#948). - Update `knnk()` and `sir()` docs. - Fix formula in `reciprocity()` docs. - `strength()` does not give a warning when no weights are given. - Update `sample_smallworld()` manual page (#895). - Correct documentation for weighted cliques. - Update Erdos-Renyi model docs. ## Testing - Clean up tests (#967). - Stabilize tests for `cluster_label_prop()` (#932), `sample_pa()` (#927), `cluster_louvain()` (#933), SIR (#936), `sample_forestfire()` (#929). - Hard-code graph used in test (#928). - Update GML test file (#925). - Improve test for sampling from Dirichlet distribution (#923). - Omit test that no longer holds with igraph 0.10 (#922). - Stabilize test in preparation for upgrade (#920). - Stabilize plot test (#919). - Fix checks.
igraph 1.5.1
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()
andR_SEXP_to_igraph_copy()
getigraph_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
inMakevars.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).
igraph 1.5.0.1
- Remove
ETIME()
call from Fortran code.
igraph 1.5.0
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()
whensimplify = ...
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()
byecount()
(#827). -
Fix typos in
?eigen_centrality
docs (@JJ). -
Add DOI to CITATION (#773).
Internal
igraph 1.4.3
igraph 1.4.2
Breaking changes
-
Remove
igraph.eigen.default()
andeigen_defaults
, introduce internaleigen_defaults()
as a function (#741). -
Remove broken
nexus*()
functions (#705), andsrand()
(#701).
C core
-
Update C core.
-
ARPACK-based calculations are now interruptible.
-
shortest_paths()
andall_shortest_paths()
no longer crash when an invalidfrom
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 ofbfs()
), 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()
withmake_graph()
in examples (#738). -
Add docs for
as.hclust.igraphHRG()
(#733). -
Merged man page of
hub_score()
andauthority_score()
(#698). -
Refactor contributors listing (#647).
-
Improve "family" titles (#679).
-
Improve docs of ego/neighborhood functions.
-
Improve
transitivity()
docs.
Internal
igraph 1.4.1
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
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.