feat: Add map_owned and filter_map_owned for Graph and StableGraph#863
Merged
starovoid merged 6 commits intopetgraph:masterfrom Sep 3, 2025
Merged
Conversation
starovoid
approved these changes
Aug 8, 2025
Collaborator
starovoid
left a comment
There was a problem hiding this comment.
looks nice, thank you.
I just have an additional suggestion to add doc examples, first of all it would help beginners in Rust. But this is up to you, I consider this task a low priority.
Closed
… in different scenarios
d093c0d to
6f4ca20
Compare
Merged
Member
Author
That is a very good idea : ) I just didn't have time yet to add this yet, so I just added it to the PR #856 👍 |
RaoulLuque
added a commit
to RaoulLuque/petgraph
that referenced
this pull request
Sep 21, 2025
…raph` (petgraph#863) This PR continues the work done in PR petgraph#794. Thus, it resolves petgraph#542. It adds `map_owned` and `filter_map_owned` methods for both `Graph` and `StableGraph` which take ownership of the respective graphs and their respective associated data in comparison to the `map` and `filter_map` counterparts which only take `&` references. Appropriate tests for this have been added. If desired, I can also add quickchecks, but this did not seem necessary. --------- Co-authored-by: Pete Hayes <[email protected]>
RaoulLuque
added a commit
to cactusdualcore/petgraph
that referenced
this pull request
Sep 21, 2025
…raph` (petgraph#863) This PR continues the work done in PR petgraph#794. Thus, it resolves petgraph#542. It adds `map_owned` and `filter_map_owned` methods for both `Graph` and `StableGraph` which take ownership of the respective graphs and their respective associated data in comparison to the `map` and `filter_map` counterparts which only take `&` references. Appropriate tests for this have been added. If desired, I can also add quickchecks, but this did not seem necessary. --------- Co-authored-by: Pete Hayes <[email protected]>
RaoulLuque
added a commit
to RaoulLuque/petgraph
that referenced
this pull request
Sep 21, 2025
…raph` (petgraph#863) This PR continues the work done in PR petgraph#794. Thus, it resolves petgraph#542. It adds `map_owned` and `filter_map_owned` methods for both `Graph` and `StableGraph` which take ownership of the respective graphs and their respective associated data in comparison to the `map` and `filter_map` counterparts which only take `&` references. Appropriate tests for this have been added. If desired, I can also add quickchecks, but this did not seem necessary. --------- Co-authored-by: Pete Hayes <[email protected]>
github-merge-queue bot
pushed a commit
that referenced
this pull request
Sep 30, 2025
## 🤖 New release * `petgraph`: 0.8.2 -> 0.8.3 (✓ API compatible changes) <details><summary><i><b>Changelog</b></i></summary><p> <blockquote> ## [0.8.3](https://github.com/petgraph/petgraph/compare/[email protected]@v0.8.3) - 2025-09-28 ### Bug Fixes - Infinite `subgraph_isomorphisms_iter` for empty isomorphisms ([#780](#780)) - Algos don't work on `UndirectedAdaptor` ([#870](#870)) ([#871](#871)) - use a queue for SPFA ([#893](#893)) - `StableGraph::reverse` breaks free lists ([#890](#890)) ### Documentation - Fix examples link in README and unify typesetting of one word ([#823](#823)) - Add link to multigraph definition to isomorphism algos ([#824](#824)) - Fix auxiliary space (and time) complexity of bron-kerbosch ([#825](#825)) - Fix Typo in Operator Module Documentation ([#831](#831)) - Sync the crate feature flags in the README and docs ([#832](#832)) - Remove all \[Generic\] tags from algo docstrings ([#835](#835)) - Fix typos in comments ([#836](#836)) - Revamp CONTRIBUTING.md ([#833](#833)) - Update `GraphMap` link in README ([#857](#857)) - Add doc comment for `Dot::with_attr_getters` ([#850](#850)) - Specify iteration order for neighbors and edges and their variants ([#790](#790)) - Collection of Doc fixes ([#856](#856)) ### New Features - Add `into_nodes_edges_iters` to `StableGraph` ([#841](#841)) - Add methods to reserve & shrink `StableGraph` capacity ([#846](#846)) - Add Dinic's Maximum Flow Algorithm ([#739](#739)) - make Csr::from_sorted_edges generic over edge type and properly increase edge_count in Csr::from_sorted_edges ([#861](#861)) - Add `map_owned` and `filter_map_owned` for `Graph` and `StableGraph` ([#863](#863)) - Add dijkstra::with_dynamic_goal ([#855](#855)) - Fix self-loop bug in all_simple_paths and enable multiple targets ([#865](#865)) - mark petgraph::dot::Dot::graph_fmt as public ([#866](#866)) - Add bidirectional Dijkstra algorithm ([#782](#782)) ### Performance - Make A* tie break on lower h-values ([#882](#882)) ### Refactor - add examples for scc algorithms and reorganize into dedicated module ([#830](#830)) - Remove unnecessary trait bounds from impls/methods ([#828](#828)) - replace uses of 'crate::util::zip' with 'core::iter::zip' ([#849](#849)) - Fix clippy (and other) lints ([#851](#851)) - Cleanup repo ([#854](#854)) - replace crate::util::enumerate with Iterator::enumerate ([#881](#881)) ### Testing - Add dependency list for 'quickcheck' feature ([#822](#822)) - Fix feature cfg capitalization in doctest ([#852](#852)) </blockquote> </p></details> --- This PR was generated with [release-plz](https://github.com/release-plz/release-plz/). --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Egor Starovoitov <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR continues the work done in PR #794. Thus, it resolves #542.
It adds
map_ownedandfilter_map_ownedmethods for bothGraphandStableGraphwhich take ownership of the respective graphs and their respective associated data in comparison to themapandfilter_mapcounterparts which only take&references.Appropriate tests for this have been added. If desired, I can also add quickchecks, but this did not seem necessary.