Respackopts/docs/Migrations.md

68 lines
2.3 KiB
Markdown

# Changes between versions
The `version` specified in your pack.json refers to a rpo format version.
A new rpo format version will be added whenever a change might break previous packs,
which will continue to use the old version.
This page lists the changes relevant to pack developers between versions and migrations (if needed)
## v1
Corresponds to version 1.0 - 1.4.4
- FREX Shader support
- Enum entries (no key translation yet)
- `respackopts.category.<pack>` to `respackopts.title.<pack>`
- Replace dots with underscores in frex definitions
- basic .rpo format
- `respackopts_loaded` in FREX shaders
- Slider support (`{"min": value, "default": value, "max": value}`)
- Tooltips: `respackopts.tooltip.<pack>.<entry>`
- Boolean conditions (and, or, nor, xor, equals): `{"<type>":[<entry 1>, <entry 2>]}`
## v2
Corresponds to version 2.0.0 - 2.2.0
- Removed LibCD compat
- Enum: define enum entries as booleans if they are selected, not their numerical value
- Further shader entry name sanitization
## v3
Corresponds to version 2.3.0
- `respackopts.title.<pack>` to `rpo.<pack>`
- `respackopts.field.<pack>.<entry>` to `rpo.<pack>.<entry>`
- `respackopts.tooltip.<pack>.<entry>` to `rpo.tooltip.<pack>.<entry>`
## v4
Corresponds to version 2.4.0 - 2.5.0
- Resource expansion support
- Directory .rpo support
- Allow using singular names and allow using a single entry instead of an array (`fallbacks` to `fallback`, `conditions` to `condition`, `expansions` to `expansion`)
- Remove requirement for specifying pack id in conditions: `<pack>:some.entry` to `some.entry`
## v5
Corresponds to version 2.6.0 - 2.7.1
- Pack capabilities, no longer includes DirFilter for new packs by default
- Add /rpo command for debugging
## v6
Corresponds to version 2.7.2 - 2.9.1
- allow specifying entries as objects with additional properties (`type`, `default`, `reloadType`)
- Fabulous shader support
- additional StarScript properties
- OPEN_ROOT support (allows custom icon.pngs among other things)
## v7
Corresponds to version 2.10.0
- Replace StarScript representation of enums
## v8
Corresponds to version 3.0.0
- Entirely new condition representation via MuScript
- Entirely new resource expansion using MuScript
- Removal of fabric conditions API interop in favor of enabling cleaner syntax