Documentation
¶
Overview ¶
Package azureappconfigversion provides version spec parsing for Azure App Configuration (bare key names only).
Azure App Configuration has NO versioning: a key/label pair holds a single current value with no version history. It also imposes almost no restriction on key characters — ':' is the standard ASP.NET configuration-hierarchy separator (e.g. "Logging:LogLevel:Default"), and '#', '~' are legal too.
Because there are no version specifiers to parse, this parser performs NO specifier splitting at all: the entire argument is taken verbatim as the key name. This is what makes keys containing ':', '#', or '~' addressable — the previous behavior mis-read those characters as (unsupported) version specifiers and rejected the key outright.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrVersioningUnsupported = errors.New("the Azure App Configuration store does not support versions")
ErrVersioningUnsupported is returned by the provider's History (App Configuration keeps no version history). Version specifiers are no longer rejected at parse time — they are legal key characters — so this is not produced by Parse.
Functions ¶
func ParseDiffArgs ¶
ParseDiffArgs parses diff command arguments for Azure App Configuration.
Since keys are unversioned and carry no specifiers, only one or two bare keys are accepted (a single key compares against itself). The generic name+specifier concatenation used by versioned stores does not apply here.
Types ¶
type AbsoluteSpec ¶
type AbsoluteSpec struct{}
AbsoluteSpec is empty: Azure App Configuration has no absolute version specifier. It exists only to satisfy the shared version.Spec type parameter.
type Spec ¶
type Spec = version.Spec[AbsoluteSpec]
Spec represents a parsed Azure App Configuration "version" specification.
Grammar: <name> (the whole argument is the key; nothing is split off)
Examples: my-key, /app/config, Logging:LogLevel:Default, weird#key, a~b.