pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/math/R-igraph



Module Name:    pkgsrc
Committed By:   mef
Date:           Thu Apr 28 15:44:48 UTC 2022

Modified Files:
        pkgsrc/math/R-igraph: Makefile distinfo
Added Files:
        pkgsrc/math/R-igraph/patches: patch-src_vendor_plfit_hzeta.c

Log Message:
(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.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 pkgsrc/math/R-igraph/Makefile
cvs rdiff -u -r1.4 -r1.5 pkgsrc/math/R-igraph/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/math/R-igraph/Makefile
diff -u pkgsrc/math/R-igraph/Makefile:1.10 pkgsrc/math/R-igraph/Makefile:1.11
--- pkgsrc/math/R-igraph/Makefile:1.10  Mon Apr 18 19:11:34 2022
+++ pkgsrc/math/R-igraph/Makefile       Thu Apr 28 15:44:47 2022
@@ -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@localhost

Index: pkgsrc/math/R-igraph/distinfo
diff -u pkgsrc/math/R-igraph/distinfo:1.4 pkgsrc/math/R-igraph/distinfo:1.5
--- pkgsrc/math/R-igraph/distinfo:1.4   Tue Oct 26 10:55:28 2021
+++ pkgsrc/math/R-igraph/distinfo       Thu Apr 28 15:44:47 2022
@@ -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

Added files:

Index: pkgsrc/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c
diff -u /dev/null pkgsrc/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c:1.1
--- /dev/null   Thu Apr 28 15:44:48 2022
+++ pkgsrc/math/R-igraph/patches/patch-src_vendor_plfit_hzeta.c Thu Apr 28 15:44:47 2022
@@ -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 {



Home | Main Index | Thread Index | Old Index