|
2 | 2 |
|
3 | 3 | All notable changes to TypeBridge will be documented in this file. |
4 | 4 |
|
| 5 | +## [1.2.4] - 2026-01-30 |
| 6 | + |
| 7 | +### New Features |
| 8 | + |
| 9 | +#### TypeDB 3.8.0 Built-in Functions (PR #88) |
| 10 | +- **Added support for TypeDB 3.8.0 built-in functions** |
| 11 | + - Identity functions: `iid()`, `label()` |
| 12 | + - Math functions: `abs_()`, `ceil()`, `floor()`, `round_()` |
| 13 | + - Collection functions: `len_()`, `max_()`, `min_()` |
| 14 | + - Location: `type_bridge/expressions/builtins.py` |
| 15 | + |
| 16 | +**Usage Example:** |
| 17 | +```python |
| 18 | +from type_bridge.expressions import iid, label, abs_, ceil, floor |
| 19 | + |
| 20 | +# Get entity IID |
| 21 | +query = Person.manager(db).filter(iid() == "0x1a2b3c").execute() |
| 22 | + |
| 23 | +# Use math functions |
| 24 | +query = Person.manager(db).filter(abs_(Age.value) > 18).execute() |
| 25 | +``` |
| 26 | + |
| 27 | +#### Unicode XID Identifier Validation (PR #88) |
| 28 | +- **Added Unicode identifier validation for TypeDB 3.8.0 compatibility** |
| 29 | + - Validates identifiers follow Unicode XID_Start/XID_Continue rules |
| 30 | + - Ensures TypeQL identifiers are compatible with TypeDB 3.8.0 |
| 31 | + - Clear error messages for invalid identifiers |
| 32 | + - Location: `type_bridge/validation.py` |
| 33 | + |
| 34 | +### Bug Fixes |
| 35 | + |
| 36 | +#### Value Extraction Fix (PR #88) |
| 37 | +- **Fixed value extraction for `_Value` concepts** |
| 38 | + - Changed from `.as_value()` to `.get()` for proper value extraction |
| 39 | + - Fixes issues with function return values and aggregations |
| 40 | + - Location: `type_bridge/session.py` |
| 41 | + |
| 42 | +#### Driver Initialization Warning Fix (PR #88) |
| 43 | +- **Fixed "Failed to initialize logging" warning** |
| 44 | + - Suppresses fd 2 (stderr) during TypeDB driver initialization |
| 45 | + - Eliminates spurious warning messages on startup |
| 46 | + - Location: `type_bridge/typedb_driver.py` |
| 47 | + |
| 48 | +### Documentation |
| 49 | + |
| 50 | +- **Added AI Assistant Skill Documentation** (`docs/SKILL.md`) |
| 51 | + - Guidelines for using TypeBridge with AI code assistants |
| 52 | + |
| 53 | +### Testing |
| 54 | + |
| 55 | +- 32 new unit tests for builtin expressions |
| 56 | +- 7 new integration tests for `iid()` and `label()` functions |
| 57 | +- All existing tests pass with TypeDB 3.8.0-rc0 |
| 58 | +- Fixed hardcoded port 1729 in tests to use TEST_DB_ADDRESS |
| 59 | + |
| 60 | +### CI/CD |
| 61 | + |
| 62 | +- **Updated CI to TypeDB 3.8.0-rc0** |
| 63 | + - All tests now run against TypeDB 3.8.0-rc0 |
| 64 | + |
| 65 | +### Key Files Modified |
| 66 | + |
| 67 | +- `type_bridge/expressions/builtins.py` - New built-in function expressions |
| 68 | +- `type_bridge/session.py` - Value extraction fix |
| 69 | +- `type_bridge/typedb_driver.py` - Driver initialization fix |
| 70 | +- `type_bridge/validation.py` - Unicode identifier validation |
| 71 | +- `docs/SKILL.md` - New AI assistant documentation |
| 72 | + |
5 | 73 | ## [1.2.3] - 2025-12-28 |
6 | 74 |
|
7 | 75 | ### New Features |
|
0 commit comments