-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compatibility with igraph 2.0.0 #517
Comments
@krlmlr: This is not related to
|
After installing
I don't know either |
Thanks, good catch! I'll make a note to fix our configuration code here. |
Thanks both. @krlmlr any immediate clues based on this as to what I should be looking for based on known igraph changes?
|
Not sure, but a minimal reproducible example would already help. |
OK so @krlmlr this is because of a change in the behaviour of
vs
|
@szhorvat: Can you please comment? We did change some of the |
@jefferis: Thanks for tracking this down! |
@krlmlr It's best to ask @ntamas as I was not the last one to touch this function. In fact I am not deeply familiar with it because I did not expose it in the Mathematica interface. Mathematica's built-in version is much more powerful than what's in igraph, and in fact I was hoping to get a much improved version in before 1.0 ... But for now, what I can see in the docs is that this is an intentional change. The
Is the truncation to 2 elements intentional in R, or some side effect of converting to a vertex sequence? Personally, I do think that truncation makes more sense than padding ... but again, ask @ntamas. I am sick at the moment and my mind is not very clear. |
One more note: in 0.9, indices were represented as |
The I don't know what the reason for the padding is; this comes from the early days of igraph before my time. We did not bother to change it for fears of breaking backward compatibility with R. The only advantage I see right now is that we don't need to dynamically reallocate the vector as new items are appended to it during the traversal. @krlmlr What's the plan with dealing this on the R side? If you plan to add a custom function that restores |
New anticipated release data: January 12. We propagated the new values for the other components of |
Whichever makes more sense in the R context, I'm not that familiar with existing conventions in R. I think that the two most promising options are: 1) restore the original behaviour with |
I think the new behavior of library(igraph)
#>
#> Attaching package: 'igraph'
#> The following objects are masked from 'package:stats':
#>
#> decompose, spectrum
#> The following object is masked from 'package:base':
#>
#> union
g <- make_graph(c(1, 2, 3, 4))
g
#> IGRAPH 8bd2d6e D--- 4 2 --
#> + edges from 8bd2d6e:
#> [1] 1->2 3->4
dfs(g, root = 3, order.out = TRUE, unreachable = FALSE, dist = TRUE)
#> $root
#> [1] 3
#>
#> $mode
#> [1] "out"
#>
#> $order
#> + 4/4 vertices, from 8bd2d6e:
#> [1] 3 4 NA NA
#>
#> $order.out
#> + 4/4 vertices, from 8bd2d6e:
#> [1] 4 3 NA NA
#>
#> $father
#> NULL
#>
#> $dist
#> [1] -1 -1 0 1
#>
#> $neimode
#> [1] "out"
bfs(g, root = 3, unreachable = FALSE, dist = TRUE)
#> $root
#> [1] 3
#>
#> $mode
#> [1] "out"
#>
#> $order
#> + 4/4 vertices, from 8bd2d6e:
#> [1] 3 4 NA NA
#>
#> $rank
#> NULL
#>
#> $father
#> NULL
#>
#> $pred
#> NULL
#>
#> $succ
#> NULL
#>
#> $dist
#> [1] -1 -1 0 1
#>
#> $neimode
#> [1] "out" Created on 2023-12-31 with reprex v2.0.2 |
Unfortunately, the problem with nat persists even with the change. |
@krlmlr can you tell me which branch I should test against? pak::pak("igraph/[email protected]") is no longer an option and so I tried: pak::pak("igraph/rigraph@f-nat-dfs") This does indeed fail for the same example, but the dfs output has changed for unreachable vertices ( old igraph 1.5.1
vs
|
* this still seems to be up in the air but at least some preparatory branches for igraph 2.0 use a 0 rather than NaN to signal unreachable nodes * see #517
Thanks. Development has now moved to the mainline, |
Thanks @krlmlr. This is still unresolved because igraph/rigraph#1062 doesn't quite behave as I would expect. Reprex:
|
Thanks for the heads-up, fixed the vs-es = FALSE case in igraph. We're planning to send igraph to CRAN on January 23. |
* this still seems to be up in the air but at least some preparatory branches for igraph 2.0 use a 0 rather than NaN to signal unreachable nodes * see #517
* this still seems to be up in the air but at least some preparatory branches for igraph 2.0 use a 0 rather than NaN to signal unreachable nodes * see #517
* this still seems to be up in the air but at least some preparatory branches for igraph 2.0 use a 0 rather than NaN to signal unreachable nodes * see #517
@jefferis @jdmanton @mmc46 @dmurdoch: This package fails its checks for the release candidate for igraph 2.0.0. See https://github.com/igraph/rigraph/blob/igraph-0.10/revdep/problems.md for details.
Is this a problem in your package? Should we be doing things differently?
Install the 2.0.0 release candidate using
pak::pak("igraph/[email protected]")
.We're planning to release igraph 2.0.0 just before CRAN's closing on Christmas. This should give us at least until mid-January to resolve this and keep CRAN happy at the same time. Thank you for your help!
Tracker: igraph/rigraph#989.
The text was updated successfully, but these errors were encountered: