新闻

关于 igraph 发布和其他事项

C/igraph 0.9.6

C/igraph 0.9.6,0.9 系列的第六个 bug 修复版本已发布。

源代码可以从 GitHub 发布页面 获取。

此版本包括错误修复、构建系统调整和次要(性能和非性能相关)改进。请继续阅读以了解更多详细信息。

已更改

  • 同构类函数 (igraph_isoclass(), igraph_isoclass_subgraph(), igraph_isoclass_create) 和 motif 查找函数 (igraph_motifs_randesu(), igraph_motifs_randesu_estimate(), igraph_motifs_randesu_callback()) 现在支持大小为 5 和 6 的无向(子)图。以前仅支持大小为 3 和 4。

已修复

  • 使用 vendored GLPK 并启用 TLS 时,igraph 无法使用 MinGW 构建。
  • 从 vendored 库中删除了一些 abort() 的使用,这可能会意外关闭 igraph 高级接口的主机语言。
  • igraph_community_label_propagation() 不再将任何顶点标记为未标记,当这些顶点从任何标记的顶点都无法到达时,即保证返回的成员向量不包含负值 (#1853)。
  • Kamada-Kawai 布局现在可以中断。
  • Fruchterman-Reingold 布局现在可以中断。
  • 修复了 igraph_cmp_epsilon() 中的一个错误,该错误导致在启用 LTO 时,某些罕见情况下使用 x87 浮点数学时,边介数计算结果不正确 (#1894)。
  • 加权 clique 相关函数现在在给定一个空的顶点权重向量时会回退到未加权的变体。
  • igraph_erdos_renyi_game_(gnm|gnp) 不会为单例图生成自环。
  • 修复了 igraph_local_efficiency() 中的一个 bug,该 bug 有时错误地报告有向图中顶点的局部效率为零。
  • igraph_vector_update() (及其特定类型的变体) 没有检查内存分配失败。
  • 修复了 GraphML 读取器中可能发生的崩溃,该崩溃会由某些无效的 GraphML 文件触发。

其他

  • igraph_is_tree() 提高了性能和内存使用率。
  • igraph_is_connected() 在检查弱连通性时提高了性能。
  • 改进了 igraph_maximal_cliques() 和相关函数中的错误处理。
  • 构建系统现在检查 GLPK 是否为兼容版本 (4.57 或更高版本)。
  • Vendored plfit 包已更新至 0.9.3。
  • 您现在可以使用外部 plfit 而不是 vendored 版本来构建 igraph。
  • 文档改进。