Embed and extract DataAssets from their owner (EmbedDataAssetAttribute)
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 30/100
Direzione di ricerca
Start by reading the serializer, inspector, undo system, and DataAsset variant handling; the issue names no files or tests. Trace how DataAsset members are currently serialized and referenced, then define embedded and referenced round trips, extraction and embedding with undo, and variant behavior. Done means both forms round-trip, extract/embed restore the original file contents and undo, and existing projects remain compatible.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Current State
A DataAsset that references another (for example the project's settings, or a build profile's settings overrides) always points at a separate .dataasset file. A new project therefore starts with one file per settings kind, even when nothing about them is customized yet. [SerializeInline] exists for component members, but there is no way to keep a referenced DataAsset inside its owner and move it out later.
Tasks
- Add an
EmbedDataAssetAttribute(or extend[SerializeInline]) for DataAsset members that may hold either an embedded payload or a reference to a separate asset. - Serializer: read and write both forms for the same member; loading resolves either to the same payload type.
- Inspector: an Extract button that writes the embedded payload to its own
.dataasset(with meta) and replaces it with a reference, and an Embed button that does the reverse when nothing else references the asset. Both undoable. - Let new projects start compact: the Project asset embeds its default settings until the user extracts one (to make a variant, share it, or split it out for version control).
- Decide how variants interact with embedding (a variant's base must be a separate asset).
Acceptance Criteria
- A member marked with the attribute round-trips both the embedded and the referenced form.
- Extract then Embed returns the original file contents; both steps undo.
- Existing projects keep working unchanged.
Related
Central Project asset and build-profile settings overrides; DataAsset variants; #62 #35.
- Lingua principale
- C#
- Stelle
- 1
- Fork
- 1
- Merge medio
- 1h 45m
- PR unite (30g)
- 31
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di MASS4ORG/Turian
-
c:assets p:low size:XS t:task
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
c:engine c:scripting p:medium size:XL t:refactor
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
I maintainer di solito rispondono entro 1 giorno
-
c:assets c:platform p:low size:M t:feature
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
I maintainer di solito rispondono entro 1 giorno
-
c:platform c:scripting p:low size:M t:task
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
I maintainer di solito rispondono entro 1 giorno
-
c:docs good first issue p:low size:S t:docs
Difficoltà 3/5 1-2 giorni Idoneità per principianti 67/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di MASS4ORG/Turian
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
area:re1 bounty help wanted needs-game
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
StackExchange/StackExchange.Redis#3274 ·
I maintainer di solito rispondono entro 1 giorno
-
affected/v17 affected/v18 area/frontend type/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
umbraco/Umbraco-CMS#24186 ·
I maintainer di solito rispondono entro 2 giorni
-
bug interpreter silently-wrong small
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno