summaryrefslogtreecommitdiff
path: root/math
diff options
context:
space:
mode:
authormef <mef@pkgsrc.org>2022-04-28 15:44:47 +0000
committermef <mef@pkgsrc.org>2022-04-28 15:44:47 +0000
commite8247b0340ef98e473502910e08ffd2b7223ac02 (patch)
tree50e540b89b489279d715cb40b9f50d1d213c99b3 /math
parent2f43eb280cce004e3c0a47da8efc7ad1b1721e46 (diff)
downloadpkgsrc-e8247b0340ef98e473502910e08ffd2b7223ac02.tar.gz
(devel/R-igraph) Updated 1.2.4.1 to 1.3.1
(pkgsrc) - Add two tentative macro, in patch, log1pl, expm1l. Tks tnn@ for hint (and correct me if misleading) (upstream) # igraph 1.3.1 Fixed: - `graph_from_adjacency_matrix()` now works with sparse matrices even if the cell values in the sparse matrix are unspecified. - Fixed crash in `cluster_walktrap()` when `modularity=FALSE` and `membership=FALSE` - `edge_attr()` does not ignore its `index=...` argument any more. - `automorphisms()`, `automorphism_group()` and `canonical_permutation()` now allow all possible values supported by the C core in the `sh` argument. Earlier versions supported only `"fm"`. - The `vertex.frame.width` plotting parameter now allows zero and negative values; these will simply remove the outline of the corresponding vertex. - The documentation of the `sh` argument of the BLISS isomorphism algorithm in `isomorphic()` was fixed; earlier versions incorrectly referred to `sh1` and `sh2`. - `dominator_tree()` now conforms to its documentation with respect to the `dom` component of the result: it contains the indices of the dominator vertices for each vertex and -1 for the root of the dominator tree. - Mentions of the `"power"` algorithm of `page_rank()` have been removed from the documentation, as this method is no longer available. - Several other documentation fixes to bring the docs up to date with new behaviours in igraph 1.3. # igraph 1.3.0 The C core is updated to 0.9.7, fixing a range of bugs and introducing a number of new functions. Added: - `has_eulerian_path()` and `has_eulerian_cycle()` decides whether there is an Eulerian path or cycle in the graph. - `eulerian_path()` and `eulerian_cycle()` returns the edges and vertices in an Eulerian path or cycle in the graph. - `any_loop()` checks whether a graph contains at least one loop edge. - `is_tree()` checks whether a graph is a tree and also finds a possible root - `to_prufer()` converts a tree graph into its Prufer sequence - `make_from_prufer()` creates a tree graph from its Prufer sequence - `sample_tree()` to sample labelled trees uniformly at random - `sample_spanning_tree()` to sample spanning trees of an undirected graph uniformly at random - `automorphisms()` and `canonical_permutation()` now supports vertex colors - `random_edge_walk()` to record the edges traversed during a random walk - `harmonic_centrality()` calculates the harmonic centrality of vertices, optionally with a cutoff on path lengths - `mean_distance()` now supports edge weights and it can also return the number of unconnected vertex pairs when `details=TRUE` is passed as an argument - `greedy_vertex_coloring()` finds vertex colorings based on a simple greedy algorithm. - `bridges()` finds the bridges (cut-edges) of a graph - The frame width of circle, rectangle and square vertex shapes can now be adjusted on plots with the `frame.width` vertex attribute or the `vertex.frame.width` keyword argument, thanks to @simoncarrignon . See PR #500 for more details. - `automorphism_group()` returns a possible (not necessarily minimal) generating set of the automorphism group of a graph. - `global_efficiency()` calculates the global efficiency of the graph. - `local_efficiency()` calculates the local efficiency of each vertex in a graph. - `average_local_efficiency()` calculates the average local efficiency across the set of vertices in a graph. - `rewire(each_edge(...))` now supports rewiring only one endpoint of each edge. - `realize_degseq()` generates graphs from degree sequences in a deterministic manner. It is also available as `make_(degseq(..., deterministic=TRUE))`. - `clique_size_counts()` counts cliques of different sizes without storing them all. - `feedback_arc_set()` finds a minimum-weight feedback arc set in a graph, either with an exact integer programming algorithm or with a linear-time approximation. - `make_bipartite_graph()` now handles vertices with names. - `shortest_paths()` now supports graphs with negative edge weights. - `min_cut()` now supports s-t mincuts even if `value.only=FALSE`. - `as.matrix()` now supports converting an igraph graph to an adjacency or edge list matrix representation. See `as.matrix.igraph()` for more details. This function was migrated from `intergraph`; thanks to Michal Bojanowski. Fixed: - `is_connected()` now returns FALSE for the null graph - Calling `length()` on a graph now returns the number of vertices to make it consistent with indexing the graph with `[[`. - `diameter()` now corrently returns infinity for disconnected graphs when `unconnected=FALSE`. Previous versions returned the number of vertices plus one, which was clearly invalid for weighted graphs. - `mean_distance()` now correctly treats the path length between disconnected vertices as infinite when `unconnected=FALSE`. Previous versions used the number of vertices plus one, adding a bias towards this number, even if the graph was weighted and the number of vertices plus one was not a path length that could safely have been considered as being longer than any "valid" path. - `layout_with_sugiyama()` now handles the case of exactly one extra virtual node correctly; fixes #85 - `bfs()` and `dfs()` callback functions now correctly receive 1-based vertex indices and ranks; it used to be zero-based in earlier versions - Accidentally returning a non-logical value from a `bfs()` or `dfs()` callback does not crash R any more - Calling `print()` on a graph with a small `max.lines` value (smaller than the number of lines needed to print the attribute list and the header) does not raise an error any more; fixes #179 - `as_adjacency_matrix(edges=TRUE, sparse=TRUE)` now consistently returns the last edge ID for each cell in the matrix instead of summing them. - Using the `+` and `-` operators with a `path()` object consisting of two vertices is now handled correctly; fixes #355 - `topo_sort()` now throws an error if the input graph is not acyclic instead of returning an incorrect partial ordering. - Weighted transitivity calculations (i.e. `transitivity(mode="barrat")` now throw an error for multigraphs; the implementation does not work correctly for multigraphs and earlier versions did not warn about this. Changed: - The `neimode` argument of `bfs()` and `dfs()` was renamed to `mode` for sake of consistency with other functions. The old argument name is deprecated and will be removed in 1.4.0. - `bfs()` and `dfs()` callback functions now correctly receive 1-based vertex indices and ranks; it used to be zero-based in earlier versions. (This is actually a bugfix so it's also mentioned in the "Fixed" section). - `closeness()`, `betweenness()` and `edge_betweenness()` now all take a `cutoff` argument on their own. `estimate_closeness()`, `estimate_betweenness()` and `estimate_edge_betweenness()` became aliases, with identical signature. They are _not_ deprecated but their implementation might change in future versions to provide proper estimation schemes instead of a simple cutoff-based approximation. If you explicitly need cutoffs and you want your results to be reproducible with future versions, use `closeness()`, `betweenness()` and `edge_betweenness()` in your code with a `cutoff` argument. - `closeness()` now only considers _reachable_ vertices during the calculation; in other words, closeness centrality is now calculated on a per-component basis for disconnected graphs. Earlier versions considered _all_ vertices. Deprecated: - Using `cutoff=0` for `closeness()`, `betweenness()` and `edge_betweenness()` is deprecated; if you want exact scores, use a negative cutoff. `cutoff=0` will be interpreted literally from igraph 1.4.0. - `centr_degree_tmax()` now prints a warning when it is invoked without an explicit `loops` argument. `loops` will be mandatory from igraph 1.4.0. - The `nexus_list()`, `nexus_info()`, `nexus_get()` and `nexus_search()` functions now return an error informing the user that the Nexus graph repository has been taken offline (actually, several years ago). These functions will be removed in 1.4.0. - The `edges` argument of `as_adjacency_matrix()` is deprecated; it will be removed in igraph 1.4.0. Removed: - The deprecated `page_rank_old()` function and the deprecated `power` method of `page_rank()` were removed. # igraph 1.2.11 Dec 27, 2021 No user visible changes. # igraph 1.2.10 Dec 14, 2021 Fixed: - The macOS versions of `igraph` were accidentally built without GraphML support on CRAN; this should now be fixed. # igraph 1.2.9 Nov 22, 2021 No user visible changes. # igraph 1.2.8 Oct 26, 2021 No user visible changes. # igraph 1.2.7 Oct 15, 2021 The C core is updated to 0.8.5, fixing a range of bugs and introducing a number of new functions. Added: - cluster_leiden added (#399). - cluster_fluid_communities added (#454) Fixed: - `make_lattice()` correctly rounds `length` to the nearest integer while printing a warning (#115). - `make_empty_graph(NULL)` now prints an error instead of producing an invalid graph (#404). - `make_graph(c())` now produces an empty graph instead of printing a misleading error message (#431). - Printing a graph where some edges have NA as the names of both endpoints does not produce a misleading error message any more (#410). - The `types` argument of functions related to bipartite graphs now prints a warning when the types are coerced to booleans (#476). - Betweenness normalisation no longer overflows (#442). - `layout_with_sugiyama()` returns a layout of type matrix even if there is only one vertex in the graph (#408). - Plotting a null graph (i.e. a graph with no vertices) does not throw an error any more (#387). Deprecated: - The `membership` argument of `modularity.matrix()` is now deprecated as the function never needed it anyway. - `modularity()` now prints a warning when it is applied on a directed graph because the implementation in igraph's C core does not support directed graphs as of version 0.8.5. The warning will be turned into an error in the next minor (1.3.0) version of the R interface; the error will be removed later when the C core is updated to a version that supports modularity for directed networks. - `transitivity()` now prints a warning when its local variant (`type="local"`) is called on a directed graph or a graph with multiple edges beecause the implementation in the C core of igraph does not work reliably in these cases as of version 0.8.5. The warning will be turned into an error in the next minor (1.3.0) version of the R interface; the error will be removed later when the C core is updated to a version that supports transitivity for networks with multiple edges. Misc: - Documentation improvements. # igraph 1.2.6 Oct 5, 2020 No user visible changes. # igraph 1.2.5 Mar 27, 2020 No user visible changes.
Diffstat (limited to 'math')
-rw-r--r--math/R-igraph/Makefile5
-rw-r--r--math/R-igraph/distinfo10
-rw-r--r--math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c19
3 files changed, 26 insertions, 8 deletions
diff --git a/math/R-igraph/Makefile b/math/R-igraph/Makefile
index 796ba1c1d03..05e9c4a2559 100644
--- a/math/R-igraph/Makefile
+++ b/math/R-igraph/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.10 2022/04/18 19:11:34 adam Exp $
+# $NetBSD: Makefile,v 1.11 2022/04/28 15:44:47 mef Exp $
R_PKGNAME= igraph
-R_PKGVER= 1.2.4.1
-PKGREVISION= 5
+R_PKGVER= 1.3.1
CATEGORIES= math graphics
MAINTAINER= minskim@NetBSD.org
diff --git a/math/R-igraph/distinfo b/math/R-igraph/distinfo
index 895f9ee4913..647e94cee52 100644
--- a/math/R-igraph/distinfo
+++ b/math/R-igraph/distinfo
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.4 2021/10/26 10:55:28 nia Exp $
+$NetBSD: distinfo,v 1.5 2022/04/28 15:44:47 mef Exp $
-BLAKE2s (R/igraph_1.2.4.1.tar.gz) = 88c9e34444b1237bafb24ff9b40e107b52ee1ea55b6103dadeb430fb0cd736b3
-SHA512 (R/igraph_1.2.4.1.tar.gz) = f35ed49726aab69d407baececff2d68ce17a750f1cf7ff293f4ecc62de4bc81d544178d86faf1f200359fa83a7410e431e61a2ce2a7a5b360d01c4d310b6f99f
-Size (R/igraph_1.2.4.1.tar.gz) = 2704004 bytes
-SHA1 (patch-configure) = f3f6fc7c3c877f02b9b29c9758f1ac9edb51341c
+BLAKE2s (R/igraph_1.3.1.tar.gz) = 86dabeb6a382153941acd99b45fc295cfc84dda328de6acc9cbb17f8b20cd412
+SHA512 (R/igraph_1.3.1.tar.gz) = 3b725ca47a117501a9902e64cdb29ed5fe59bfba3b056b98a1fb4035fdd9a5f9ea274b87053ebab558e206a9def09af46e957cff0280fe6093dd9638dd3d5f71
+Size (R/igraph_1.3.1.tar.gz) = 2489895 bytes
+SHA1 (patch-src_vendor_plfit_hzeta.c) = b175e674d0c19f45ee2827e573d9afe8b20aa997
diff --git a/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c b/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c
new file mode 100644
index 00000000000..b3321adafbe
--- /dev/null
+++ b/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c
@@ -0,0 +1,19 @@
+$NetBSD: patch-src_vendor_plfit_hzeta.c,v 1.1 2022/04/28 15:44:47 mef Exp $
+
+/* tweak the macro, not found in NetBSD as of 9.99.96 */
+
+--- src/vendor/plfit/hzeta.c.orig 2022-04-20 01:23:25.000000000 +0900
++++ src/vendor/plfit/hzeta.c 2022-04-29 00:33:15.125029161 +0900
+@@ -64,6 +64,12 @@
+ #define M_LOG2E 1.44269504088896340735992468100 /* log_2 (e) */
+ #endif
+
++/* tweak the macro, not found in NetBSD as of 9.99.96 */
++#ifdef __NetBSD__
++#define log1pl(x) logl(1.0f+(x))
++#define expm1l(x) expl(x) - 1
++#endif
++
+ /* imported from gsl_sf_result.h */
+
+ struct gsl_sf_result_struct {