t3-code-android-nightly/.repos/effect-smol/migration/annotations/effect__ConfigProvider.yaml
Julius Marminge e3c85ead63
chore(refs): sync Effect and Alchemy references to rc.115 and beta.78 (#12327)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-09-17 23:21:25 -07:00

69 lines
5 KiB
YAML

"effect/ConfigProvider#ConfigProvider":
replacement: "ConfigProvider.ConfigProvider"
note: "The model remains but now exposes `load(path)`, returning `Effect<Node | undefined, SourceError>`, and `mapInput(f)` for provider-owned path transformation. `undefined` means the path is missing; a `Node` means it exists."
"effect/ConfigProvider#ConfigProvider.Flat":
replacement: "ConfigProvider.ConfigProvider"
note: "Flat providers were removed; implement the unified path-based provider with ConfigProvider.make."
"effect/ConfigProvider#ConfigProvider.FromEnvConfig":
replacement: "Parameters<typeof ConfigProvider.fromEnv>[0]"
note: "Options are inline in v4 and contain env plus preserveEmptyStrings; custom path delimiters moved to provider path transforms, while separated sequences and records use Config.Array and Config.Record."
"effect/ConfigProvider#ConfigProvider.FromMapConfig":
replacement: "none"
note: "fromMap and its delimiter options were removed; expand delimited keys into a nested value and use ConfigProvider.fromUnknown."
"effect/ConfigProvider#ConfigProvider.KeyComponent":
replacement: "ConfigProvider.Path[number]"
note: "Tagged key components became plain string or number path segments."
"effect/ConfigProvider#ConfigProvider.KeyIndex":
replacement: "number"
note: "Tagged KeyIndex values became numeric ConfigProvider.Path segments."
"effect/ConfigProvider#ConfigProvider.KeyName":
replacement: "string"
note: "Tagged KeyName values became string ConfigProvider.Path segments."
"effect/ConfigProvider#ConfigProvider.Proto":
replacement: "ConfigProvider.ConfigProvider"
note: "The public marker prototype was removed; use the provider interface itself."
"effect/ConfigProvider#ConfigProviderTypeId":
replacement: "ConfigProvider.ConfigProvider"
note: "The runtime marker is private in v4; providers are created by public constructors and consumed structurally."
"effect/ConfigProvider#FlatConfigProviderTypeId":
replacement: "none"
note: "The flat-provider abstraction and marker were removed."
"effect/ConfigProvider#fromEnv":
replacement: "ConfigProvider.fromEnv"
note: "The constructor remains; pass env and preserveEmptyStrings options. Paths use underscore semantics, while sequence separators belong on Config schemas."
"effect/ConfigProvider#fromFlat":
replacement: "ConfigProvider.make"
note: "Flat providers were unified with ConfigProvider; return a `Value`, `Record`, or `Array` node for a found path, or `undefined` when missing."
"effect/ConfigProvider#fromJson":
replacement: "ConfigProvider.fromUnknown"
note: "Renamed to reflect support for any in-memory JavaScript value."
"effect/ConfigProvider#fromMap":
replacement: "ConfigProvider.fromUnknown"
note: "Expand the map's delimited keys into a nested object first; v4 removed fromMap and its pathDelim/seqDelim options."
"effect/ConfigProvider#kebabCase":
replacement: "ConfigProvider.mapInput((path) => path.map((part) => typeof part === \"string\" ? String.kebabCase(part) : part))"
note: "Named recasing helpers were removed except constantCase; transform string path segments explicitly."
"effect/ConfigProvider#lowerCase":
replacement: "ConfigProvider.mapInput((path) => path.map((part) => typeof part === \"string\" ? part.toLowerCase() : part))"
note: "Transform string path segments explicitly with mapInput."
"effect/ConfigProvider#make":
replacement: "ConfigProvider.make"
note: "The constructor now takes a path lookup returning `Effect<Node | undefined, SourceError>`, rather than a full Config loader and flattened provider. Return `undefined` for a missing path and a `Node` for a found path."
"effect/ConfigProvider#makeFlat":
replacement: "ConfigProvider.make"
note: "The flat-provider constructor was removed; return a `Value`, `Record`, or `Array` node for a found path, or `undefined` when missing."
"effect/ConfigProvider#mapInputPath":
replacement: "ConfigProvider.mapInput"
note: "Renamed and generalized: the callback receives and returns the complete Path, including numeric array indexes."
"effect/ConfigProvider#snakeCase":
replacement: "ConfigProvider.mapInput((path) => path.map((part) => typeof part === \"string\" ? String.snakeCase(part) : part))"
note: "Named recasing helpers were removed except constantCase; transform string path segments explicitly."
"effect/ConfigProvider#unnested":
replacement: "ConfigProvider.mapInput((path) => path[0] === name ? path.slice(1) : path)"
note: "The named helper was removed; strip the matching leading segment explicitly. Add custom handling if the v3 mismatch error was significant."
"effect/ConfigProvider#upperCase":
replacement: "ConfigProvider.mapInput((path) => path.map((part) => typeof part === \"string\" ? part.toUpperCase() : part))"
note: "Transform string path segments explicitly with mapInput."
"effect/ConfigProvider#within":
replacement: "ConfigProvider.orElse + ConfigProvider.mapInput"
note: "The scoped transform helper was removed; build a provider that transforms paths below the prefix and falls back to the original provider elsewhere."