Replies: 4 comments 1 reply
-
The strategy I employ in toml++ is to always target the most recently-released TOML version by default, and provide some additional 'unreleased' features gated behind a compile-time |
Beta Was this translation helpful? Give feedback.
-
@eksortso pointed me here as a more relevant place for my comment than #870. Is there a plan for releasing 1.1? I think it would be a good prompt for library implementers to support the significant changes that have been made since 1.0. That in turn will hopefully prompt some developers who've been reticent to use TOML (and specifically pyproject.toml) to reconsider since I think the changes overcome concerns or limitations that they had raised. @eksorto mentioned in reply "This is a significant subject, I know, because Python 3.11 was released yesterday, and it has built-in support for TOML parsing in its standard library (the tomllib module, based on tomli. Standard libraries change slowly, and I know that. But the exposure to the format will draw interest from new users." I see a PR in tomli to introduce one of the most important changes but it looks like it is stuck in draft awaiting that change to be official (ie. in a 1.1 release). |
Beta Was this translation helpful? Give feedback.
-
I found the strategy for the 1.0.0 release of TOML quite useful, several release candidates allowed libraries to implement the RC version and provide feedback here. I would suggest to keep this strategy for future releases as it gives libraries a phase to catch up with the TOML standard and allows them to already provide full support once the final versions comes out, since the changes in the RC candidates tend to be minor and do not affect all implementations. |
Beta Was this translation helpful? Give feedback.
-
I added the There were much fewer |
Beta Was this translation helpful? Give feedback.
-
What is the general strategy of TOML library implementors here to add support for unreleased TOML features?
Implementing features early before a release allows to provide access to users of TOML early, but comes with the disadvantage that the feature might change or other TOML related tooling is not compatible yet. I have seen some libraries provide a way to opt-in at compile time / run time for newer features.
Testing and validation is also a bit more tricky, especially when previously incorrect TOML documents are becoming valid.
Any thoughts on this are welcome.
Beta Was this translation helpful? Give feedback.
All reactions