Skip to content

Commit 6fb4af9

Browse files
tpellissierclaude
andcommitted
Add QueryBuilder with fluent API and composable filter expressions
Implements the QueryBuilder feature from the SDK redesign design doc: - Fluent query builder (client.query.builder("table")) with 20 chainable methods - Composable filter expression tree (models/filters.py) with &, |, ~ operators - filter_in, filter_between, and where() for expression tree composition - Automatic column name lowercasing and OData value formatting - datetime/date/uuid.UUID auto-formatting in filter values 309 tests passing (126 new for QueryBuilder + filters). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 78eb5dd commit 6fb4af9

File tree

7 files changed

+1861
-1
lines changed

7 files changed

+1861
-1
lines changed
Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
# Copyright (c) Microsoft Corporation.
22
# Licensed under the MIT license.
33

4-
"""Data models for Dataverse metadata types."""
4+
"""
5+
Data models and type definitions for the Dataverse SDK.
6+
7+
Provides dataclasses and helpers for Dataverse entities:
8+
9+
- :class:`~PowerPlatform.Dataverse.models.query_builder.QueryBuilder`: Fluent query builder.
10+
- :mod:`~PowerPlatform.Dataverse.models.filters`: Composable OData filter expressions.
11+
- :class:`~PowerPlatform.Dataverse.models.upsert.UpsertItem`: Upsert operation item.
12+
13+
Import directly from the specific module, e.g.::
14+
15+
from PowerPlatform.Dataverse.models.query_builder import QueryBuilder
16+
from PowerPlatform.Dataverse.models.filters import eq, gt
17+
"""
518

619
__all__ = []

0 commit comments

Comments
 (0)