Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
612036d
feat(gfql): add temporal predicates and type system
lmeyerov Jun 23, 2025
21e24c3
fix(gfql): add TypeGuard annotations and TemporalValue to type unions
lmeyerov Jun 23, 2025
0675f2c
fix(predicates): remove type errors in is_in predicate
lmeyerov Jun 23, 2025
de477f2
refactor(predicates): inline temporal comparison logic into operators
lmeyerov Jun 23, 2025
0259fab
docs: update CHANGELOG.md with GFQL temporal predicates feature
lmeyerov Jun 23, 2025
3b44c62
docs: list supported temporal comparison operators in CHANGELOG
lmeyerov Jun 23, 2025
08a07bd
docs: add is_in to list of temporal operators in CHANGELOG
lmeyerov Jun 23, 2025
2d3412d
fix(types): support TypeGuard across Python 3.8-3.12
lmeyerov Jun 23, 2025
bfa3ca4
fix(is_in): move dynamic imports to module level
lmeyerov Jun 23, 2025
b3e45d2
docs: add temporal predicates documentation
lmeyerov Jun 22, 2025
f3fcb85
docs: consolidate temporal predicates documentation
lmeyerov Jun 23, 2025
2dc9cca
docs(gfql): update CHANGELOG with temporal predicates documentation
lmeyerov Jun 23, 2025
17cfc66
fix(docs): update temporal predicates notebook with correct relative …
lmeyerov Jun 23, 2025
5c44d99
fix(docs): correct temporal values module path in API docs
lmeyerov Jun 23, 2025
d89d18e
docs(gfql): improve temporal predicates documentation clarity
lmeyerov Jun 23, 2025
4e47320
docs(gfql): remove recommendation language for direct facts
lmeyerov Jun 23, 2025
83e38d1
docs(gfql): add wire protocol dict support for ISO strings
lmeyerov Jun 23, 2025
d526ca3
docs(gfql): remove good/bad language from wire protocol examples
lmeyerov Jun 23, 2025
f74a1d7
fix(docs): fix temporal_predicates notebook structure
lmeyerov Jun 23, 2025
9558bc3
feat(docs): add notebook validation to docs build
lmeyerov Jun 23, 2025
6fd739a
build(docs): add ipykernel dependency for notebook execution
lmeyerov Jun 23, 2025
02e3fd7
docs: update CHANGELOG with documentation improvements
lmeyerov Jun 23, 2025
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
2 changes: 2 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -342,6 +342,8 @@ jobs:
- uses: actions/checkout@v3

- name: Test building docs
env:
VALIDATE_NOTEBOOK_EXECUTION: 0 # TODO: Enable once kernel setup is fixed
run: |
cd docs && ./ci.sh

Expand Down
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,29 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm

## Dev

### Added
* GFQL temporal predicates and type system for date/time comparisons
* Support for datetime, date, and time comparisons with operators: `gt`, `lt`, `ge`, `le`, `eq`, `ne`, `between`, `is_in`
* Proper timezone handling for datetime comparisons
* Type-safe temporal value handling with TypeGuard annotations
* Temporal value classes: `DateTimeValue`, `DateValue`, `TimeValue` for explicit temporal types
* Wire protocol support for JSON serialization of temporal predicates
* Comprehensive documentation: datetime filtering guide, wire protocol reference, and examples notebook
* Documentation build improvements:
* Added notebook CI testing infrastructure for validating example notebooks
* Structure validation ensures notebooks have required fields (execution_count)
* Optional execution validation to verify notebooks run without errors
* Currently validates temporal_predicates.ipynb and layout_tree.ipynb

### Breaking
* Plottable is now a Protocol
* py.typed added, type checking active on PyGraphistry!
* transform() and transform_umap() now require some parameters to be keyword-only

### Fixed
* Fixed PlotterBase.py docstring formatting for spanner and kusto methods
* Fixed temporal_predicates.ipynb notebook structure (removed outputs from markdown cells)

## [0.38.0 - 2025-06-17]

### Changed
Expand Down
Loading
Loading