- Housekeeping:
- Upgrade from setup.py to pyproject.toml (#62, thanks @AdrianVollmer!)
- Bugfixes:
- Fix NetworkX
degreeparity (#64)
- Fix NetworkX
- Features:
- Upgrade codspeed CI runner to v3
- Bugfixes:
- Fix
get_node_by_idmethod inSQLBackend(#59. thanks @davidmezzetti!) - Add
remove_nodeto theCachedBackend(#59. thanks @davidmezzetti!)
- Fix
- Features:
- Add
remove_nodemethod to SQLBackend (#58. thanks @davidmezzetti!)
- Add
- Bugfixes:
- Modify sqlite backend
has_nodeto return a bool vs int (#58. thanks @davidmezzetti!) - Update method parameters to conform to existing naming standards (#58. thanks @davidmezzetti!)
- Modify sqlite backend
- Bugfixes:
- Fixes SQLBackend mistakenly referencing Nodes table for enumeration of Edges (#55, #56)
- Bugfixes:
- Fixes SQLBackend bug where graphs would not commit down to disk after transactions (#51, thanks @acthecoder23!)
- Features
- #45 (thanks @davidmezzetti!)
- Improved support for SQL backend, including an index on edge.sources and edge.targets
- Improved batch-adding performance for nodes and edges
- #45 (thanks @davidmezzetti!)
- Housekeeping
- Removed extra arguments to Graph constructor and improved Graph kwargs handing
- Added
grand.DiGraphconvenience wrapper for directed graphs
- Dialects
- Expanded Networkit dialect test coverage
- Added support for exporting NetworkX graphs by adding
graphattribute
- Backends
- NEW:
DataFrameBackendsupports operations on a pandas-like API.
- NEW:
- Housekeeping
- Added tests for metadata stores
- Added IGraph and Networkit backends to the standard GitHub Actions CI test suite
- Improvements
- Dialects
- NetworkX Dialect:
- Edges are now reported as EdgeViews or other NetworkX reporting classes.
- NetworkX Dialect:
- Dialects
- Housekeeping
- Removed unused tests
- Removed DotMotif dialect, which is no longer a goal of this repository (and is still possible by passing a grand.Graph#nx to the DotMotif library.)
- Improvements
- Backends
- SQLBackend:
- Add support for user-specified edge column names, with
edge_table_source_columnandedge_table_target_columnarguments. - Fix buggy performance when updating nodes and edges.
- Add support for user-specified edge column names, with
- Caching support. You can now cache the results from backend methods by wrapping with a class that inherits from
CachedBackend.
- SQLBackend:
- Backends
- Housekeeping
- Fix
pip install grand-graph[sql]andpip install grand-graph[dynamodb], which failed on previous versions due to a faulty setup.py key. - Rename all backend files.
- Fix
This version adds support for Gremlin-compatible graph databases, such as AWS Neptune, TinkerPop, Janus, etc, through the
GremlinBackend, and loosens the requirements for the base installation ofgrand-graph. You can now installgrand-graph[sql]orgrand-graph[dynamodb]to get additional functionality (with additional dependencies).
- Improvements
- Backends
- Add
GremlinBackendto the list of supported backends
- Add
- Backends
- Housekeeping
- Remove sqlalchemy and boto3 from the list of requirements for the base install. You can now install these with
pip3 install grand-graph[sql]or[dyanmodb].
- Remove sqlalchemy and boto3 from the list of requirements for the base install. You can now install these with
This version adds a new
IGraphBackend(non-default install). If you have IGraph installed already, you can now import this backend withfrom grand.backends.igraph import IGraphBackend.
- Improvements
- Backends
- Add
IGraphBackendto the list of supported backends
- Add
- Backends
This version adds dependency-install support to installations with
pip. (Thanks @Raphtor!)
- Improvements
- Faster edge-indexing support for the SQLBackend, using compound primary keys rather than columnwise lookups