Skip to content

Commit 46d016b

Browse files
Update stack-graphs version to v0.11.0 and update changelog
1 parent 3ab2aed commit 46d016b

File tree

5 files changed

+17
-5
lines changed

5 files changed

+17
-5
lines changed

languages/tree-sitter-stack-graphs-typescript/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ clap = { version = "4", optional = true }
3232
glob = "0.3"
3333
serde = { version = "1.0", features = ["derive"] }
3434
serde_json = "1.0"
35-
stack-graphs = { version = "0.10", path = "../../stack-graphs" }
35+
stack-graphs = { version = "0.11", path = "../../stack-graphs" }
3636
tree-sitter-stack-graphs = { version = "0.6", path = "../../tree-sitter-stack-graphs" }
3737
tree-sitter-typescript = "0.20.2"
3838
tsconfig = "0.1.0"

stack-graphs/CHANGELOG.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,34 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8-
## Unreleased
8+
## v0.11.0 -- 2023-06-08
99

1010
### Added
1111

1212
- New `Defines` and `Refers` assertions test for the presence of definitions and references, respectively, without resolution.
1313
- A method `StackGraph::get_file` to look up an existing file.
1414
- A field named `fully_qualified_name` was added to `SourceInfo`.
15+
- A new `serde` module (requiring the `serde` feature) adds serialization and deserialization of stack graphs and partial paths.
16+
- Stack graphs can now record debug information for edges as it did for noeds. This is also displayed in the HTML visualization when hovering over an edge arrow.
17+
- A new `storage` module (requiring the `storage` feature) implements a simple SQLite database for storing stack graphs and partial paths.
18+
19+
### Fixed
20+
21+
- A bug in `PartialPath::concatenate` that prevented stitching partial paths that were joined at a pop or push node.
1522

1623
### Changed
1724

1825
- The `IncorrectDefinitions` error is renamed to `IncorrectlyDefined`, and `IncorrectDefinitions` is the error used for the `Defines` assertion.
1926
- The `PartialPaths::find_all_partial_paths_in_file` method has been replaced by `PartialPaths::find_minimal_partial_path_set_in_file`, which computes a smaller set. The `ForwardPartialPathStitcher::find_locally_maximal_partial_path_set` function can be used to compute the set previously returned by `find_all_partial_paths_in_file` from the minimal partial path set.
27+
- The cycle detection algorithm, which had the dual repsonisbility of detecting path cycles and culling duplicate paths, has been replaced by a new approach consisting of a new cycle detection algorithm and an optional duplicate path detection algorithm. This fixes issues with the old approach which was based on a heuristic and would sometimes keep too many paths, and sometimes throw away too many. The new algorithms are precise instead of using a heuristic and resolve unpredictable resolution behavior.
28+
- An empty scope stack postcondition is not required anymore for a path to be considered complete. (Symbol stack postconditions must still be empty in complete paths!)
29+
- The visualization code requires the `visualization` feature instead of the `json` feature, and implies the `serde` feature.
30+
- A new `CancelAfterDuration` cancellation flag implementation has been added to easily set timeout-based cancellation.
2031

2132
### Removed
2233

2334
- The method `StackGraph::get_file_unchecked` is removed. Use the new `StackGraph::get_file` instead.
35+
- All the functionality related to `Path` has been removed in favor of using `PartialPath`. In general, the `Path` behavior of can be achieved by using a `PartialPath` with finite preconditions (i.e., no symbol or scope stack variables), which can be created using `PartialPath::eliminate_precondition_stack_variables`.
2436

2537
## v0.10.2 -- 2023-01-10
2638

stack-graphs/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "stack-graphs"
3-
version = "0.10.2"
3+
version = "0.11.0"
44
description = "Name binding for arbitrary programming languages"
55
homepage = "https://github.com/github/stack-graphs/tree/main/stack-graphs"
66
repository = "https://github.com/github/stack-graphs/"

stack-graphs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ To use this library, add the following to your `Cargo.toml`:
99

1010
``` toml
1111
[dependencies]
12-
stack-graphs = "0.10"
12+
stack-graphs = "0.11"
1313
```
1414

1515
Check out our [documentation](https://docs.rs/stack-graphs/) for more details on

tree-sitter-stack-graphs/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ regex = "1"
6969
rust-ini = "0.18"
7070
serde_json = { version="1.0", optional=true }
7171
sha1 = { version="0.10", optional=true }
72-
stack-graphs = { version="0.10", path="../stack-graphs" }
72+
stack-graphs = { version="0.11", path="../stack-graphs" }
7373
thiserror = "1.0"
7474
time = { version = "0.3", optional = true }
7575
tokio = { version = "1.26", optional = true, features = ["io-std", "rt", "rt-multi-thread"] }

0 commit comments

Comments
 (0)