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

MONEI / dynamoose / 38905040194
100%
main: 99%

Build:
Build:
LAST BUILD BRANCH: docs/upstream-prs
DEFAULT BRANCH: main
Ran 16 Oct 2026 01:05PM UTC
Jobs 1
Files 49
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

16 Oct 2026 01:02PM UTC coverage: 99.902%. Remained the same
38905040194

push

github

jimmyn
Adding nested path support to Model.update

An update key can now be a path into a nested attribute: dots for map keys
and brackets for list indexes (address.city, tags[0], friends[0].name), for
$SET, $ADD, $REMOVE and $DELETE. Before, such a key was sent as one
attribute name, so DynamoDB created a top-level attribute literally named
"address.city".

The expression gets one name per path part, with list indexes literal
(#a0[0].#a1). Each nested value is wrapped in the object its path
describes and converted by objectFromSchema, so type checks, enum,
validate, set modifiers and custom types (Date storage, sets) apply as for
a full write. A new nestedScope setting limits defaults to the written
path and stops an ancestor rule from seeing a partial object:
- default and required are checked on the nested attribute, not its parent,
  and required also on what a written object holds below it
- a nested key the schema drops (undeclared, not covered by saveUnknown)
  is skipped, as a full write would drop it; an update that writes
  nothing else throws instead of sending only timestamps
- a parent with declared children and its own set or validate refuses
  the nested write; a record or schemaless parent runs its rule on the
  written entry
- a value no definition of a multi-type parent accepts throws instead of
  removing the stored value
- __proto__ and constructor path parts throw
- a malformed path throws (empty part, unclosed or non-numeric index, a
  name right after an index); checks use the parsed path, so every
  spelling of a path resolves to the same schema attribute

Combine sources and forced defaults now match only the top-level name of
each expression term, since a nested path part can share a name with a
top-level attribute.

1567 of 1570 branches covered (99.81%)

Branch coverage included in aggregate %.

168 of 169 new or added lines in 2 files covered. (99.41%)

2531 of 2532 relevant lines covered (99.96%)

77368.99 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
99.56
0.0% packages/dynamoose/lib/Model/index.ts
Jobs
ID Job ID Ran Files Coverage
1 38905040194.1 16 Oct 2026 01:05PM UTC 49
99.9
GitHub Action Run
Source Files on build 38905040194
  • Tree
  • List 49
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 2df3ead8 on github
  • Prev Build on upstream-pr/feat-update-nested-paths (#38902333962)
  • 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