Skip to content

Conversation

@RaoulLuque
Copy link
Member

This PR continues the work done in #783. Thus, this resolves #588.

The trait bound on the Csr to be Directed for from_sorted_edges was lifted. Thus, it was noticed that at no point in from_sorted_edges, the edge_count is increased. This is only relevant for Undirected graphs, as Directed graphs use their self.column.len() as the edge_count() under the hood.

@RaoulLuque RaoulLuque added C-feature-request Category: A feature request A-crate Area: Petgraph crate functionality C-feature-accepted Category: A feature request that has been accepted pending implementation S-waiting-on-review Status: Awaiting review from the assignee but also other interested parties labels Jul 29, 2025
@RaoulLuque RaoulLuque added this to the 0.8.3 milestone Jul 29, 2025
@RaoulLuque RaoulLuque requested a review from starovoid July 29, 2025 15:46
@RaoulLuque RaoulLuque force-pushed the continue_csr_from_edges branch from a9b560d to 912b9ab Compare July 29, 2025 15:50
@RaoulLuque RaoulLuque added this pull request to the merge queue Jul 31, 2025
Merged via the queue into petgraph:master with commit 6b676bf Jul 31, 2025
11 checks passed
@RaoulLuque RaoulLuque deleted the continue_csr_from_edges branch July 31, 2025 12:59
@github-actions github-actions bot mentioned this pull request Jul 31, 2025
RaoulLuque added a commit to RaoulLuque/petgraph that referenced this pull request Sep 21, 2025
… increase edge_count in Csr::from_sorted_edges (petgraph#861)

This PR continues the work done in petgraph#783. Thus, this resolves petgraph#588.

The trait bound on the `Csr` to be `Directed` for `from_sorted_edges`
was lifted. Thus, it was noticed that at no point in
`from_sorted_edges`, the `edge_count` is increased. This is only
relevant for `Undirected` graphs, as `Directed` graphs use their
`self.column.len()` as the `edge_count()` under the hood.

---------

Co-authored-by: Jan Baudisch <jan.baudisch@uni-ulm.de>
RaoulLuque added a commit to RaoulLuque/petgraph that referenced this pull request Sep 21, 2025
… increase edge_count in Csr::from_sorted_edges (petgraph#861)

This PR continues the work done in petgraph#783. Thus, this resolves petgraph#588.

The trait bound on the `Csr` to be `Directed` for `from_sorted_edges`
was lifted. Thus, it was noticed that at no point in
`from_sorted_edges`, the `edge_count` is increased. This is only
relevant for `Undirected` graphs, as `Directed` graphs use their
`self.column.len()` as the `edge_count()` under the hood.

---------

Co-authored-by: Jan Baudisch <jan.baudisch@uni-ulm.de>
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/petgraph@v0.8.2...petgraph@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 <52821033+starovoid@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-crate Area: Petgraph crate functionality C-feature-accepted Category: A feature request that has been accepted pending implementation C-feature-request Category: A feature request S-waiting-on-review Status: Awaiting review from the assignee but also other interested parties

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Can we remove Directed trait constraint?

3 participants