• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / supabase-flutter / 38740500642
92%

Build:
DEFAULT BRANCH: main
Ran 15 Oct 2026 01:13PM UTC
Jobs 11
Files 178
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

15 Oct 2026 01:10PM UTC coverage: 92.264% (+0.6%) from 91.655%
38740500642

push

github

web-flow
feat(postgrest)!: order and limit inside a to-many embed on the typed surface (#1960)

## Summary

The typed `order()` had no way to address an embed, and the typed
`limit()` and `range()` still took an untyped `String? referencedTable`.
Sorting the rows inside a to-many embed was therefore impossible on the
typed surface, so `limit(1, referencedTable: 'books')` trimmed an
unsorted embed and returned an arbitrary row.

This adds `embedded()` to the typed transform builder, following the
scope Swift shipped in supabase/supabase-swift#1458:

```dart
await client
    .table(Authors.table)
    .selectOnly([Authors.name, Authors.books.select([Books.title])])
    .embedded(
      Authors.books,
      (books) => books.order(Books.createdAt.desc()).limit(1),
    );
// select=name,books(title)&books.order=created_at.desc&books.limit=1
```

- `embedded()` takes a `PostgrestToManyRelation<Row, Target>`. The
callback receives a `PostgrestEmbeddedScope<Target>`, so ordering by a
column of another table does not compile.
- The scope offers `order`, `limit`, `range` and `embedded`. Nested
scopes render dotted paths, such as `books.reviews.limit=3`.
- An aliased embed is addressed by its alias.
- Repeated scopes of one embed append their sort keys, and the last
limit or range wins.
- Scopes also apply to the rows a mutation returns.

## Breaking

The typed `limit()` and `range()` no longer take `referencedTable`. The
typed surface is experimental, so the change is covered in the "Moving
from `from()` to the typed table API" section of `MIGRATION.md` and not
as its own breaking section.

## Out of scope

Filtering inside an embed and the `requiring` (`!inner`) counterpart
will ship together in a follow-up. An embedded filter without
`requiring` silently keeps every parent row.

## Other changes

- `PostgrestTableRequest` is now `@internal`. It was already hidden from
the package export, and the annotation keeps its fields out of the
compliance symbol check.
- Removed ... (continued)

47 of 47 new or added lines in 5 files covered. (100.0%)

62 existing lines in 6 files now uncovered.

10066 of 10910 relevant lines covered (92.26%)

5.36 hits per line

Coverage Regressions

Lines Coverage ∆ File
39
95.1
1.48% packages/supabase_typegen/lib/src/dart_generator.dart
7
89.13
4.35% packages/postgrest/lib/src/postgrest_typed_builder.dart
7
95.32
-0.03% packages/supabase/lib/src/supabase_client.dart
6
94.78
11.61% packages/postgrest/lib/src/postgrest_table_executor.dart
2
97.78
0.59% packages/supabase_typegen/lib/src/introspection/sort.dart
1
99.67
0.08% packages/supabase_typegen/lib/src/generator_metadata_parser.dart
Jobs
ID Job ID Ran Files Coverage
3 supabase_functions - 38740500642.3 15 Oct 2026 01:13PM UTC 4
93.28
GitHub Action Run
4 iceberg - 38740500642.4 15 Oct 2026 01:13PM UTC 6
71.32
GitHub Action Run
5 supabase_storage - 38740500642.5 15 Oct 2026 01:15PM UTC 9
98.47
GitHub Action Run
6 supabase - 38740500642.6 15 Oct 2026 01:16PM UTC 17
95.04
GitHub Action Run
7 supabase_auth - 38740500642.7 15 Oct 2026 01:16PM UTC 32
92.48
GitHub Action Run
8 supabase_flutter - 38740500642.8 15 Oct 2026 01:13PM UTC 15
80.58
GitHub Action Run
9 supabase_realtime - 38740500642.9 15 Oct 2026 01:15PM UTC 14
90.92
GitHub Action Run
10 supabase_typegen - 38740500642.10 15 Oct 2026 01:15PM UTC 25
97.14
GitHub Action Run
11 postgrest - 38740500642.11 15 Oct 2026 01:16PM UTC 32
94.31
GitHub Action Run
11 supabase_common - 38391038446.11 13 Oct 2026 11:35AM UTC 23
87.92
GitHub Action Run
11 yet_another_json_isolate - 37623283614.11 07 Oct 2026 12:48PM UTC 1
98.44
GitHub Action Run
Source Files on build 38740500642
  • Tree
  • List 178
  • Changed 15
  • Source Changed 15
  • Coverage Changed 15
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #38740500642
  • 973de4f9 on github
  • Prev Build on main (#38712825303)
  • Next Build on main (#38742076258)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc