Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Embed and extract DataAssets from their owner (EmbedDataAssetAttribute)

Aperta
#231 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

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
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
csharp
Ambito
backend, tooling

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

c:editor c:engine p:low size:M t:feature

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

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di MASS4ORG/Turian

Tutte le issue di MASS4ORG/Turian

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.