Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion .cursorignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,13 @@
!docs/**/*.md
!docs/**/*.py

!sh
!sh/
!sh/**/*.sh


!.github/**
!.env.example
!pyproject.toml
!mkdocs.yaml
!mkdocs.yml
!*.md
34 changes: 31 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,33 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.3.0] - Unreleased
## [1.3.6] - 2025-12-17

### Added
- **Database-agnostic terminology**: Renamed database-specific terminology to be more generic
- `Edge.collection_name` → `Edge.database_name`: More generic field name that works across all database types
- For ArangoDB, `database_name` corresponds to the edge collection name
- For TigerGraph, used as fallback identifier when relation is not specified
- For Neo4j, unused (relation is used instead)
- Updated all references throughout codebase to use `database_name` instead of `collection_name`
- Removed ArangoDB-specific "collection" terminology from `Vertex` and `VertexConfig` classes
- Replaced with generic "vertex" or "vertex class" terminology
- Updated variable names: `_vcollection_numeric_fields_map` → `_vertex_numeric_fields_map`
- Updated error messages and documentation to use database-agnostic terms

- **Enhanced PostgreSQL example documentation**: Significantly improved Example 5 documentation
- Added detailed explanations of schema inference process
- Added visual diagrams showing graph structure, vertex fields, and resource mappings
- Explained data flow from PostgreSQL to graph database
- Added step-by-step breakdown of what happens during each phase
- Included resource mapping diagrams for all table types

- **Improved schema file discovery**: Enhanced `generate_examples_figs.sh` script
- Now handles files ending with `schema.yaml` (e.g., `generated-schema.yaml`)
- Uses pattern matching to find schema files instead of hardcoded filename
- More flexible for generated or custom-named schema files

## [1.3.5] - 2025-12-16

### Added
- **Unified Database Configuration Architecture**: Simplified database configuration system
Expand All @@ -29,6 +55,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- **Environment Variable Support for Schema**: Added `POSTGRES_SCHEMA_NAME` and `TIGERGRAPH_SCHEMA_NAME`
environment variables for schema configuration

## [1.3.4] - 2025-12-12

- **Data Source Architecture**: Formalized data source types as a separate layer from Resources
- New `graflo.data_source` package with abstract base classes and implementations
- `AbstractDataSource`: Base class for all data sources with unified batch iteration interface
Expand Down Expand Up @@ -189,7 +217,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Now correctly uses `fpath` directly as the search directory
- Fixes `FileNotFoundError` when using `FilePattern` with `sub_path` in ingestion

## [1.2.1]
## [1.2.1] - 2025-01-XX

### Added
- **`any_key` parameter for `DescendActor`**: Added support for processing all keys in a dictionary dynamically
Expand All @@ -203,7 +231,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Updated `requires-python` to `~=3.10.0` in `pyproject.toml`
- Maintains compatibility with Python 3.10 while using modern type hints

## [1.2.0]
## [1.2.0] - 2025-01-XX

### Added
- **TigerGraph backend support**: Full support for TigerGraph as a graph database backend
Expand Down
Binary file modified docs/assets/3-ingest-csv-edge-weights/figs/companies_vc2vc.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/assets/4-ingest-neo4j/figs/debian-eco_vc2fields.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/assets/5-ingest-postgres/public_vc2fields.png
Binary file not shown.
10 changes: 6 additions & 4 deletions docs/concepts/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,8 @@ Edges in graflo support a rich set of attributes that enable flexible relationsh
- **`weights.target_fields`**: Fields from target vertex to use as weights (deprecated)

#### Edge Behavior Control
- **`aux`**: Whether this is an auxiliary edge (collection created, but not considered by graflo)
- **`purpose`**: Additional identifier for utility collections between same vertex types
- **`aux`**: Whether this is an auxiliary edge (created in database, but not considered by graflo)
- **`purpose`**: Additional identifier for utility edges between same vertex types

#### Matching and Filtering
- **`match_source`**: Select source items from a specific branch of json
Expand All @@ -91,8 +91,10 @@ Edges in graflo support a rich set of attributes that enable flexible relationsh
- **`type`**: Edge type (DIRECT or INDIRECT)
- **`by`**: Vertex name for indirect edges
- **`graph_name`**: Custom graph name (auto-generated if not specified)
- **`collection_name`**: Custom collection name (auto-generated if not specified)
- **`db_flavor`**: Database flavor (ARANGO or NEO4J)
- **`database_name`**: Database-specific edge identifier (auto-generated if not specified)
- For ArangoDB, this corresponds to the edge collection name
- For TigerGraph, used as fallback identifier when relation is not specified
- For Neo4j, unused (relation is used instead)

#### When to Use Different Attributes

Expand Down
Loading