GitShow/facebook/SPARTA
facebook

SPARTA

SPARTA is a library of software components specially designed for building high-performance static analyzers based on the theory of Abstract Interpretation.

by facebook
Star on GitHubFork

C++

671 stars55 forks52 contributorsActive · 3d agoSince 2018MIT

Meet the team

See all 52 on GitHub →
arthaud
arthaud73 contributions
NTillmann
NTillmann16 contributions
ssj933
ssj9339 contributions
agampe
agampe8 contributions
arnaudvenet
arnaudvenet5 contributions
yuxuanchen1997
yuxuanchen19975 contributions
int3
int34 contributions
zertosh
zertosh3 contributions

Languages

View on GitHub →
C++79.2%
Rust19.9%
CMake0.8%
Shell0.1%

Commit activity

Last 12 weeks · 3 commits

Full graph →

Community health

4 of 6 standards met

Community profile →
75
✓README✓License✓Contributing✓Code of Conduct○Issue Template○PR Template

Recent PRs & issues

Active · 1 in progress · Last activity 3d ago
See all on GitHub →
dgutson
python bindingsOpenIssue

Any intention to add python bindings / FFI?

dgutson · 1y ago
kaidaniel
Fix bounds of `#[derive(DisjointUnion)]` not behaving like identity elementsOpenPR

When using , the resulting abstract domain's "top" is not an identity element of "meet" and the resulting abstract domain's "bottom" is not an identity element of "join". This is described in more detail in #25. This PR proposes adding tests and changing the proc macro so that these tests pass. Depends on #26 (I'll re-base once that one is merged).

kaidaniel · 1y ago
kaidaniel
rust's `#[derive(DisjointUnion)]` derives incorrect bottom and top.OpenIssue

The "bottom" element of a Lattice is the identity element of the "join" operation. The "top" element of a Lattice is the identity element of the "meet" operation. But when using the macro, I can create elements for which and . Reproducible Example These tests should pass: but they fail with the following error message: Solution replace https://github.com/facebook/SPARTA/blob/bd758a81954dc2c8fe75c8b32ab42d327fc4d895/rust-proc-macros/src/lib.rs#L87-L99 with

kaidaniel · 1y ago

Recent fixes

View closed PRs →
salmanmkc
Upgrade GitHub Actions for Node 24 compatibilityMergedPR

Summary Upgrade GitHub Actions to their latest versions to ensure compatibility with Node 24, as Node 20 will reach end-of-life in April 2026. Changes Context Per GitHub's announcement, Node 20 is being deprecated and runners will begin using Node 24 by default starting March 4th, 2026. Why this matters Node 20 EOL: April 2026 Node 24 default: March 4th, 2026 Action**: Update to latest action versions that support Node 24 Security Note Actions that were previously pinned to commit SHAs remain pinned to SHAs (updated to the latest release SHA) to maintain the security benefits of immutable references. Testing These changes only affect CI/CD workflow configurations and should not impact application functionality. The workflows should be tested by running them on a branch before merging.

salmanmkc · 6mo ago
xuhdev
Bump GoogleTest to v1.13.0MergedPR

Summary: GitHub build is failing in main because GoogleTest v1.8.0 doesn't support REGISTER_TYPED_TEST_SUITE_P. Not bumping to v1.17 to be safe because v1.14.0+ requires C++14. Differential Revision: D76534898

xuhdev · 1y ago
kaidaniel
Enable disjoint union testsMergedPR

"Files in subdirectories of the tests directory don’t get compiled as separate crates or have sections in the test output.", so the test is not run by the rust workflow. These changes move to and add s to avoid warnings generated by this test. The rust workflow should show some additional test results:

kaidaniel · 1y ago
Structured data for AI agents

Repository: facebook/SPARTA. Description: SPARTA is a library of software components specially designed for building high-performance static analyzers based on the theory of Abstract Interpretation. Stars: 671, Forks: 55. Primary language: C++. Languages: C++ (79.2%), Rust (19.9%), CMake (0.8%), Shell (0.1%). License: MIT. Open PRs: 1, open issues: 2. Last activity: 3d ago. Community health: 75%. Top contributors: arthaud, NTillmann, ssj933, agampe, arnaudvenet, yuxuanchen1997, int3, zertosh, xuhdev, thezhangwei and others.

·@ofershap

Replace github.com with gitshow.dev