You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Post-v1 follow-through on v3 data fetching: full Gameplan migration off v1
resources, ergonomic additions surfaced during migration, Frappe v15 backport,
and the eventual v2 deprecation decision.
v3 itself ships in v1.0 via PR #610 with a frozen public import surface.
This umbrella tracks the work that intentionally did not block 1.0.
v3 frozen surface contract: see v1-release/plan.md Data API strategy section
Raw
Ability to append/remove/modify a child row in a document
Ability to fetch a "publicly accessible" document via data fetching utility.
// for some documents that have `public=1`, allow get doc without permission checkdoc=InsightsQuery.get(<>)// same with a few methods that should be callable without auth/permsdoc.execute()
First-class doc editing API
doc.isDirty(), doc.discard()
let todo = ToDo.getDoc(() => props.id)
todo.description = 'asdf'
todo.save.call()
doc.submit.call(), doc.cancel.call()
staleness check api
if a fetched document is changed at the server side, set doc.isStale = true
If multiple doc.setValue.call() calls, there can be two modes: one is queue all setValue calls one after the other, or debounce.
Attempt todo.setValue() (without the .call) with typescript support
Post-v1 follow-through on v3 data fetching: full Gameplan migration off v1
resources, ergonomic additions surfaced during migration, Frappe v15 backport,
and the eventual v2 deprecation decision.
v3 itself ships in v1.0 via PR #610 with a frozen public import surface.
This umbrella tracks the work that intentionally did not block 1.0.
In scope
Gameplan migration
frontend/srcno longer uses:resources: {},$resources,$getResourcecreateResource,createListResource,createDocumentResourcev3 ergonomics (additive within frozen surface contract)
.submit,.cancel, and similar parity gaps surfaced during migrationBackend / framework
/api/v2/*backport — until this lands, v3 stays v16+ onlyfrappe-ui/frappe/*to v3v2 deprecation decision
Acceptance
References
v1-release/plan.md— workstreams §4 (carve-out) and §5frappe/client/spec/{api,core,vue}.md(in PR frappe/client — data-fetching v3 #610)v1-release/plan.mdData API strategy sectionRaw
Ability to append/remove/modify a child row in a document
Ability to fetch a "publicly accessible" document via data fetching utility.
doc.isDirty(), doc.discard()
doc.submit.call(), doc.cancel.call()
staleness check api
if a fetched document is changed at the server side, set doc.isStale = true
If multiple doc.setValue.call() calls, there can be two modes: one is queue all setValue calls one after the other, or debounce.
Attempt todo.setValue() (without the .call) with typescript support
Task.getMeta()