You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue tracks potential feature additions for future releases. The library has reached solid TOML 1.1 compliance. These are enhancements that could improve usability and expand use cases.
Strict TOML 1.0 parsing/encoding is being handled separately in PR #15, so the roadmap below now focuses on the remaining follow-up areas.
1. Extended Encoder Options
Problem: The encoder produces canonical output but users may want control over formatting.
Current options:
sortKeys - alphabetically sort keys
skipNulls - omit null values instead of throwing
documentFormatting - source-aware vs normalized
version - strict TOML 1.0 vs default TOML 1.1-compatible behavior
Proposed additions:
Integer formatting
integerBase - Output integers as hex/octal/binary (0xFF, 0o77, 0b1010)
Overview
This issue tracks potential feature additions for future releases. The library has reached solid TOML 1.1 compliance. These are enhancements that could improve usability and expand use cases.
Strict TOML 1.0 parsing/encoding is being handled separately in PR #15, so the roadmap below now focuses on the remaining follow-up areas.
1. Extended Encoder Options
Problem: The encoder produces canonical output but users may want control over formatting.
Current options:
sortKeys- alphabetically sort keysskipNulls- omit null values instead of throwingdocumentFormatting- source-aware vs normalizedversion- strict TOML 1.0 vs default TOML 1.1-compatible behaviorProposed additions:
Integer formatting
integerBase- Output integers as hex/octal/binary (0xFF, 0o77, 0b1010)integerGrouping- Output as 1_000_000 (Add encoder formatting options: integerGrouping, trailingComma, dottedKeys #19)String formatting
stringStyle- Use literal strings ('single quotes')multilineThreshold- Use multiline for long stringsArray formatting
arrayStyle- Always use multiline arraystrailingComma- Add trailing commas (Add encoder formatting options: integerGrouping, trailingComma, dottedKeys #19)Table formatting
inlineTableThreshold- Inline tables with <=N keysdottedKeys- Use a.b.c = 1 instead of [a.b] \n c = 1 (Add encoder formatting options: integerGrouping, trailingComma, dottedKeys #19)2. Schema Validation
Problem: Users want to validate TOML structure against expected types and constraints.
Use cases:
Proposed approach:
Option A: PHP-native schema
Option B: JSON Schema compatibility
Scope:
Priority
Discussion
Feedback welcome on: