Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TOML 1.0: What all do we want to do? #617

Closed
pradyunsg opened this issue May 6, 2019 · 15 comments
Closed

TOML 1.0: What all do we want to do? #617

pradyunsg opened this issue May 6, 2019 · 15 comments

Comments

@pradyunsg
Copy link
Member

Hello everyone!

TOML has been fairly stable for a while now and has been adopted by quite a few projects. This means that it's about time that TOML "grows up" to 1.0. I've just gone ahead and created a project board for tracking our 1.0 release.

I do not want to time box our release plans just yet but I do hope to get this done this year. We won't be making backward incompatible changes or adding new syntax, between TOML 0.5 and TOML 1.0. I'm hoping that our 0.5 parser implementations will be able to bump up to 1.0 easily.


Consider this issue a meta issue for the discussion of what is needed for TOML's major version bump. I welcome everyone to post ideas for things 'we must address' + 'we'd like to address' prior to 1.0.

To make it feasible and easier to keep track of things, I request you to post one suggestion per post, state "critical path" or "nice to have", link to an existing issue and provide some summary/rationale. If a suggestion does not have an existing issue filed for it, please file a new issue before posting your suggestion here. We can discuss additional details and the merits of the suggestion on the linked issues. I hope this process is not too much of an overhead. :)

I want to hear from others what they think should be done as a part of TOML 1.0 release process. I'll populate the board as we figure out our plans.

@ehuss
Copy link

ehuss commented May 6, 2019

#499: Behavior of dotted keys. critical path.

Different parsers are treating restrictions on dotted keys differently, in a variety of ways. This is related to the open/closed discussion at #446 (comment). I think it would be undesirable to have this ambiguity in the final spec. I'm not sure how to make progress on that issue, though, since it involves both subjective aesthetics and implementation complications.

@drunkwcodes

This comment has been minimized.

@lmna
Copy link

lmna commented May 7, 2019

#585: An official/blessed test suite. nice to have.

Additional note: Make sure that abnf passes tests.

@graza
Copy link

graza commented May 7, 2019

#620: Railroad diagrams for the grammar. nice to have.

I discovered TOML recently and wrote a blog post for myself to help me understand/remember it. As part of that I created a syntax diagram and wondered if it would be a useful to use this form as part of any official documentation on a github-pages site (on toml.org?).

The blog post is here.

@nolange
Copy link

nolange commented May 10, 2019

(@pradyunsg: not happening since this is new syntax)

#562: Lossless float representation. critical path.

Reason being that without you are not able to convert float -> string -> float losslessly, particularly in an efficient manner without even using floating point hardware or ridiculously large integers.

Further, this would make toml's float representation identical to C99/C++11 and directly compatible with the C string functions like strtod. So it actually could simplify implementations.

@eksortso

This comment has been minimized.

@nolange

This comment has been minimized.

@graza

This comment has been minimized.

@pradyunsg
Copy link
Member Author

We can discuss additional details and the merits of the suggestion on the linked issues.

Please move the conversation on decimal literals to the relevant issue or create a new one.

@pradyunsg
Copy link
Member Author

Thanks for the suggestions! Keep them coming if there are any more.

I've taken the liberty to change the first line of each comment to be of a consistent style, and marked all non-suggestion/unclear comments as off-topic.

@eksortso
Copy link
Contributor

@pradyunsg My apologies for raising the subject. My intent was to highlight that any features that have not been discussed at any length are off the table until after v1.0 is released.

@pradyunsg
Copy link
Member Author

@eksortso Please, don't apologize. 🙈

What you (and others) did is perfectly fine; it's just that I want to keep this issue easier to look at for summaries.

@eksortso
Copy link
Contributor

Let's add PR #619 to the Critical Path. This is critical because code points U+D800 to U+DFFF, which are explicitly restricted to UTF-16, are forbidden in UTF-8.

@pradyunsg
Copy link
Member Author

Things have settled down here. Taking that as a cue that everyone who wanted to say something has said it, I've updated the project board as needed.

Thanks everyone who contributed to the discussion here! :D

@waldyrious
Copy link

For future reference, after three release candidates, TOML 1.0 was released on 12 January 2021! 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants