Skip to content

Rust implementation of Graph (refactored version of GraphMap from petgraph).

License

Notifications You must be signed in to change notification settings

dalibor-matura/safe-graph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Safe Graph

Rust implementation of Graph, being refactored version of GraphMap from popular petgraph crate.

Crate Documentation Travis CI CodeCov
Crate Documentation Build Status codecov

Refactoring Reasons

  • I don't like to use a big library with a large codebase when I need just a piece of it (in my case GraphMap). It is a high risk of introducing way in for mailicious attackers.
  • Petgraph has almost no tests and I wanted to have a high/full test coverage, so I’ve added tests in.
  • Petgraph has ordermap crate as a dependency, but it is outdated and not stable. Its current stable version was renamed to indexmap, so I've updated to it.
  • I’ve done a few other modifications according to best practice.
  • Petgraph crate doesn't have a stable release version yet and I didn't want to depend on it.

Plans

  • I'm going to contact autors of Petgraph to offer them integrate my improvements.
  • I'm thinking about refactoring of Petgraph into more modular collection of smaller Graph libraries with better Test Coverage and more structured separation of functionality.

License

Licensed under the General Public License (GPL), version 3 (LICENSE http://www.gnu.org/licenses/gpl-3.0.en.html).

About

Rust implementation of Graph (refactored version of GraphMap from petgraph).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages