关于 igraph 发布和其他事项
我们很高兴地宣布 igraph 2.0 已发布!在这篇文章中,我们将重点介绍最重要的变化。
此主要版本使开发与 igraph C 语言库保持一致。R 包的 1.6.0 版本使用 C 核心的 0.9.10 版本。C 核心 0.10 系列中的更改现已在 R 包的 2.0 版本中采用。使 R 包使用最新版本的 C 核心是一项巨大的工程,也是一个重要的里程碑,它使 C 核心 0.10 版本中的许多改进可供 R 用户使用。
在 C 核心中所做的改进将更容易在 R 包的功能中使用。请参阅 C 核心的完整更新日志。虽然我们试图保持与 R 接口的 1.6.0 版本的兼容性,但这并非总是可行。请参阅 R 包的更新日志中的“Breaking changes”(重大更改)部分(重大更改部分)。如果您维护一个依赖 igraph 的包,您可能已经收到了我们的消息。
迁移到 C/igraph 的 0.10 版本带来了许多质量改进,包括在 64 位计算机上支持具有数十亿个顶点和边的图,更严格的错误检查,以及许多在函数间对鲁棒性、可靠性和数学一致性的改进。
未来的工作将致力于进一步自动化从 C 代码生成 R 代码,从而更快地为 R 用户提供改进的 C 核心功能。此外,我们计划公开更多的 C 核心函数,因为并非所有函数都已提供给 R 用户。
igraph R 包现在有一个 网站,该网站使用流行的 pkgdown R 包生成,也就是说,该网站具有可预测的结构,并且包含搜索功能。该网站现在包含一个由 Adrian Diaz 和 Fabio Zanini 贡献的入门小品,提供英语和西班牙语版本。
我们正在努力使函数的生命周期更加明确,以便您知道哪些函数已被弃用,哪些函数更具实验性。例如,我们将缓慢删除大多数 “带点的名称函数”,例如 add.edges() 现在是 add_edges(),尽管这两个版本目前仍然有效。is_biconnected()
函数是一个实验性函数的示例,也就是说,刚刚公开的 C 函数。
如果您在使用新版本时遇到任何困难,我们将非常感谢您的反馈。请在 issue tracker 中给我们留言(并提供 reprex!)。如需更多反馈,请使用 igraph 的 讨论论坛。请不要犹豫在您的社交网络中分享此版本。 😉
非常感谢所有帮助我们制作新 igraph 包的贡献者:@a-lambda、@Antonov548、@barracuda156、@bebejhun、@bockthom、@brooksambrose、@CdeMills、@clpippel、@csqsiew、@dmurdoch、@Flu09、@Ganson2018、@gherrarte、@gwfs521、@jefferis、@jeroen、@jessijessi、@joshua-zh、@kalibera、@knwng、@krlmlr、@Lighter-k、@louisaslett、@lptolik、@lufuhao、@maelle、@maksymiuks、@Matyasch、@mfansler、@ngmaclaren、@noriakis、@reuning、@ntamas、@snowGlint、@stephenashton-dhsc、@szhorvat、@tdhock、@vtraag、@xinguo1236 和 @Zhaoju-Deng。