Conversation
Agent-Logs-Url: https://github.com/igraph/rigraph/sessions/6623329c-8d18-4af2-ad47-a28ac5c5fbd8 Co-authored-by: schochastics <[email protected]>
.apply_modifiers() in make.R
|
@copilot: Resolve conflicts and run tests, fix as needed. |
… NAMESPACE NOTEs Agent-Logs-Url: https://github.com/igraph/rigraph/sessions/dc1d94b4-1708-4b04-b5a1-5419a36aa82e Co-authored-by: krlmlr <[email protected]>
Merged main, resolved conflicts, and fixed the CI failure (commit |
|
@copilot: Ensure this can be merged cleanly into main. The previous attempt still produces a branch with conflicts. |
Co-authored-by: krlmlr <[email protected]>
Merged main cleanly in |
Removes the
## TODO: speed this upcomments in.apply_modifiers()by implementing the actual speedups.Changes
without_attr: Replace three O(N) loops (get names → delete one-by-one) with three direct bulk assignments tostructure(list(), names = character(0))— O(1) regardless of attribute count.with_vertex_/with_edge_: Replace per-attributeset_vertex_attr/set_edge_attrcalls (each doing a full C-level get+modify+set cycle) with a single get → in-memory loop with scalar recycling and length validation → single set. Reduces from N get+set pairs to 1 get + 1 set. Error messages correctly reportmake_()as the call context via thecallparameter.with_graph_: Replace per-attribute loop with the existingmodify_list()helper +graph.attributes<-for a single get+set cycle.with_vertex_()andwith_edge_().🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.