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 as an RFC? #870

Open
mnot opened this issue Jan 24, 2022 · 31 comments
Open

TOML as an RFC? #870

mnot opened this issue Jan 24, 2022 · 31 comments
Labels

Comments

@mnot
Copy link

mnot commented Jan 24, 2022

Have you considered publishing v1.0.0 as an RFC?

I can see two immediate benefits:

  • The format would be easier to use / reference from other RFCs and by other standards efforts.
  • You could get application/toml registered1.

If you'd consider it, I'd be happy to help - you don't have to go through the full standards process, the independent stream would be very appropriate for this and comparatively lightweight.

Footnotes

  1. You don't need an RFC for the full format to get the registration -- but it does require some sort of standards publication.

@paulehoffman
Copy link
Contributor

+1 to the "happy to help". @mnot and I both have written dozens of RFCs (although none together, yet).

@pradyunsg
Copy link
Member

Have you considered publishing v1.0.0 as an RFC?

Yes! That's the motivation behind keeping the language grammer in ANBF.

IIUC, the blocker here is one of the authors figuring out the "paperwork" of the process and doing it. Help would very much be welcome! :)

@paulehoffman
Copy link
Contributor

If one of the main contributors wants to step up as the primary author, I'm happy to walk you through the paperwork. @mnot will probably do so as well, and may agree with me on some of it. :-)

@mnot
Copy link
Author

mnot commented Sep 29, 2022

Definitely. Consider us at your disposal. From our side, we just need buy-in from the TOML project and someone to work with; we can handle the process issues, etc.

@eksortso
Copy link
Contributor

I'm just a bit player here. But with a number of serious enhancements in the pipeline, TOML v1.1.0 would be a better candidate for an RFC once it's released. Is there an immediate demand for an RFC to be filed now, or can we take the time to propose one with TOML's new features?

Deferring until the v1.1.0 release would also give us an opportunity to move toward a set of documents that would line up more with the requirements of an RFC, where it would make sense to further that process in the project as it stands.

@ChristianSi
Copy link
Contributor

Yes, I agree. The changes made since TOML 1.0 are significant and certainly justify the release of 1.1 in the foreseeable future. So, to be really future-proof, that's a better target for standardization.

@mcarans

This comment was marked as off-topic.

@eksortso

This comment was marked as off-topic.

@mcarans

This comment was marked as off-topic.

@paulehoffman
Copy link
Contributor

I'm happy to help with the mechanical part of the RFC process, including the Markdown stuff.

@robertlagrant
Copy link

Just wondering if this is likely to happen. I don't see it in the registry. We have a use for it!

@eksortso
Copy link
Contributor

eksortso commented Mar 5, 2024

Your use may give this process a boost! What's your use case?

@aamelnikov
Copy link

aamelnikov commented Sep 6, 2024

Hi,
I am one of designated expert reviewers for Media Types appointed by IETF and I just received a request to register application/toml using the following template:


Name: Ben van Hartingsveldt
Email: ben.vanhartingsveldt@yocto.com
Media type name: application
Media subtype name: toml
Required parameters: N/A
Optional parameters: N/A
Encoding considerations: 8bit
Security considerations: (1) TOML files don't contain executable content.
(2) Information contained in TOML files do not require privacy or integrity services. If a client is storing information that is potentially sensitive, some sort of security is recommended. TLS, and specifically HTTPS, are the recommended way to protect potentially sensitive information.

Interoperability considerations: N/A
Published specification: https://toml.io/
Applications which use this media: Various
Fragment identifier considerations: N/A
Restrictions on usage: N/A
Provisional registration? (standards tree only): No
Additional information:

  1. Deprecated alias names for this type: none
  2. Magic number(s): none
  3. File extension(s): .toml
  4. Macintosh file type code: TEXT
  5. Object Identifiers: none

General Comments:

Person to contact for further information:

  1. Name: Ben van Hartingsveldt
  2. Email: ben.vanhartingsveldt@yocto.com

Intended usage: COMMON

Author/Change controller: Ben van Hartingsveldt


Do you have any objections/support/have correction(s) to this registration?

In particular note that the "Change controller" is the person who is contacted when further changes (for example if you decide to publish an RFC describing TOML format) to the media type registration are suggested. (Also note that there is no implication that the Change Controller of the registration has any control over the underlying format.)

Best Regards,
Alexey

@paulehoffman
Copy link
Contributor

The TOML project seems to be either dead (stuck at 1.0.0) or badly wedged; see #928

Having a media type that does not specify the version may be acceptable, but is possibly dangerous, given that the proposed changes in 1.1.0 are breaking changes to the allow bytes in the format (that is, new restrictions on which Unicode charaters are allowed). OTOH, I'm sure that there are similar problems with other formats that have media types.

@arp242
Copy link
Contributor

arp242 commented Sep 6, 2024

In particular note that the "Change controller" is the person who is contacted when further changes (for example if you decide to publish an RFC describing TOML format) to the media type registration are suggested. (Also note that there is no implication that the Change Controller of the registration has any control over the underlying format.)

I don't think this person has had any involvement in TOML (AFAIK); I don't think it's a good idea to record them as the contact.

I don't really know who would be; the project is in a "absent maintainer, but not handed over to anyone else"-state.

Also:

Encoding considerations: 8bit

I'm not sure what "8bit" refers to exactly here, but TOML files are always UTF-8 (which is "8 bit" for some but not all meanings of it).

@aamelnikov
Copy link

In particular note that the "Change controller" is the person who is contacted when further changes (for example if you decide to publish an RFC describing TOML format) to the media type registration are suggested. (Also note that there is no implication that the Change Controller of the registration has any control over the underlying format.)

I don't think this person has had any involvement in TOML (AFAIK); I don't think it's a good idea to record them as the contact.

I don't really know who would be; the project is in a "absent maintainer, but not handed over to anyone else"-state.

Thank you.

Also:

Encoding considerations: 8bit

I'm not sure what "8bit" refers to exactly here, but TOML files are always UTF-8 (which is "8 bit" for some but not all meanings of it).

This field is actually an enum with 3 choices: 7bit, 8bit and binary. 8bit is anything excluding NUL, so UTF-8 without NUL seems consistent with that.

@aamelnikov
Copy link

The TOML project seems to be either dead (stuck at 1.0.0) or badly wedged; see #928

Having a media type that does not specify the version may be acceptable, but is possibly dangerous, given that the proposed changes in 1.1.0 are breaking changes to the allow bytes in the format (that is, new restrictions on which Unicode charaters are allowed). OTOH, I'm sure that there are similar problems with other formats that have media types.

Existence of 2 versions is probably a "Interoperability consideration" for the registration template.

@notpushkin
Copy link

@aamelnikov Thanks for looking into this!
Would you recommend getting a provisional registration for TOML in meantime?

@ChristianSi
Copy link
Contributor

ChristianSi commented Sep 8, 2024

@aamelnikov While all the suggested values seem correct and I suppose this is a good-faith submission, having as change controller someone who seems to be unrelated to the TOML project is not a good idea, so I too suggest not to accept this submission for now.

Regarding the state of the project: it's currently stalled, because @pradyunsg, the sole remaining maintainer, has largely become inactive but failed to appoint any successors so far. However, there's still hope that that'll change sooner or later and at that point things might move swiftly again.

As for incompatible versions, there's actually no need to worry about that. All versions, from fairly early drafts (I think) up to the latest 1.1 draft, are backwards compatible. As TOML uses semantic versioning, the first breaking changes might come with 2.0, and that's certainly a long time off, if it ever comes.

@paulehoffman
Copy link
Contributor

I agree that having an unrelated person as the change controller is a bad idea. @ChristianSi: are you maybe willing to step up for that role? There is nearly nothing to do but be available for questions in the foreseeable future.

As for the "incompatible versions" part: is there a full list of diffs from 1.0.0 to the intended 1.1.0? I thought that I saw the allowed characters list in parts of 1.1.0 was smaller, meaning that some valid 1.0.0. documents would become invalid. If I'm wrong about that, I'm happy.

@ChristianSi
Copy link
Contributor

ChristianSi commented Sep 9, 2024

@paulehoffman:

@ChristianSi: are you maybe willing to step up for that role? There is nearly nothing to do but be available for questions in the foreseeable future.

Thanks for the suggestion, but while I'm involved with TOML, others such as @eksortso are even more so, and in any case I'm afraid that without a functional maintainer structure such a decision would be arbitrary.

As for the "incompatible versions" part: is there a full list of diffs from 1.0.0 to the intended 1.1.0? I thought that I saw the allowed characters list in parts of 1.1.0 was smaller, meaning that some valid 1.0.0. documents would become invalid. If I'm wrong about that, I'm happy.

Yes, see the "unreleased" section at the start of the Changelog.

There it says: "Relax comment parsing; most control characters are again permitted." So it's the opposite of what you thought: TOML 1.0 is fairly restrictive in what it allows in comments, possibly causing parsing to fail because of stuff that's commented out, which is unintuitive and might lead to nasty surprises, since people generally expect text in comments to be ignored rather than cause parsing errors. So TOML 1.1 attempts to correct that as far as reasonably possible, accepting more documents but never rejecting any that were already valid.

@mnot
Copy link
Author

mnot commented Sep 9, 2024

The change controller doesn't need to be a person -- e.g., if you have a community mailing list that could do it - or maybe even the GitHub issues list (although that might raise some eyebrows?).

Another approach would be to nominate Tom Preston-Werner.

@arp242
Copy link
Contributor

arp242 commented Sep 9, 2024

Tom has been active even less than Pradyun.

I think the issue list is fine, and better than any single person. There isn't really an email address for it though.

@paulehoffman
Copy link
Contributor

Or, maybe leave it blank. It is a "general comment", and I think a correct answer is "None". I like @mnot's suggestion, but that is probably a worse can-o-worms than "None"

@paulehoffman
Copy link
Contributor

As for the "incompatible versions" part: is there a full list of diffs from 1.0.0 to the intended 1.1.0? I thought that I saw the allowed characters list in parts of 1.1.0 was smaller, meaning that some valid 1.0.0. documents would become invalid. If I'm wrong about that, I'm happy.

Yes, see the "unreleased" section at the start of the Changelog.

There it says: "Relax comment parsing; most control characters are again permitted." So it's the opposite of what you thought: TOML 1.0 is fairly restrictive in what it allows in comments, possibly causing parsing to fail because of stuff that's commented out, which is unintuitive and might lead to nasty surprises, since people generally expect text in comments to be ignored rather than cause parsing errors. So TOML 1.1 attempts to correct that as far as reasonably possible, accepting more documents but never rejecting any that were already valid.

Thanks! I had misread this in some other comment in an issue or PR. I'm happy that alll of what is proposed is forwards-compatible.

It would be grand if @pradyunsg would cede control to one of the many people here who seem eager, we get 1.1 out, and then put it in the freezer.

@aamelnikov
Copy link

The change controller doesn't need to be a person -- e.g., if you have a community mailing list that could do it - or maybe even the GitHub issues list (although that might raise some eyebrows?).

Another approach would be to nominate Tom Preston-Werner.

Tom Preston-Werner should probably be listed as "Author", but doesn't need to be "Change Controller".

@aamelnikov
Copy link

@aamelnikov Thanks for looking into this! Would you recommend getting a provisional registration for TOML in meantime?

I had to research this :-). Provisional might be the next best thing, but I think this can be registered in the main registry after some changes to the submitted registration template are made.

@ben221199
Copy link

ben221199 commented Oct 14, 2024

Hi, I am one of designated expert reviewers for Media Types appointed by IETF and I just received a request to register application/toml using the following template:


Name: Ben van Hartingsveldt
Email: ben.vanhartingsveldt@yocto.com
Media type name: application
Media subtype name: toml
Required parameters: N/A
Optional parameters: N/A
Encoding considerations: 8bit
Security considerations: (1) TOML files don't contain executable content.
(2) Information contained in TOML files do not require privacy or integrity services. If a client is storing information that is potentially sensitive, some sort of security is recommended. TLS, and specifically HTTPS, are the recommended way to protect potentially sensitive information.

Interoperability considerations: N/A
Published specification: https://toml.io/
Applications which use this media: Various
Fragment identifier considerations: N/A
Restrictions on usage: N/A
Provisional registration? (standards tree only): No
Additional information:

  1. Deprecated alias names for this type: none
  2. Magic number(s): none
  3. File extension(s): .toml
  4. Macintosh file type code: TEXT
  5. Object Identifiers: none

General Comments:

Person to contact for further information:

  1. Name: Ben van Hartingsveldt
  2. Email: ben.vanhartingsveldt@yocto.com

Intended usage: COMMON

Author/Change controller: Ben van Hartingsveldt

Do you have any objections/support/have correction(s) to this registration?

In particular note that the "Change controller" is the person who is contacted when further changes (for example if you decide to publish an RFC describing TOML format) to the media type registration are suggested. (Also note that there is no implication that the Change Controller of the registration has any control over the underlying format.)

Best Regards, Alexey

Currently, the reviewer accepted on changing the information to the following, before it was sent to IESG for it to be grandfathered:

Author: Tom Preston-Werner <tom@mojombo.com>
Change controller: https://github.com/toml-lang/toml/issues/870
Submitter: Ben van Hartingsveldt <ben.vanhartingsveldt@yocto.com>

The submission was done with good-faith. Tom is mentioned as Author, I as Submitter and the Change controller is currently this issue #870. During submission, I just entered my own name to have a submission already and get the ball rolling. You don't need an RFC to have a media type registered at IANA, but I think it would be a good idea to have eventually TOML standardized in the RFC way.

@ben221199
Copy link

Hello all,

I just received an email from IANA that the media type application/toml is finally officially registered.

The registry can be seen here: http://www.iana.org/assignments/media-types
The registration can be seen here: https://www.iana.org/assignments/media-types/application/toml

I'm looking forward to have TOML standardized by RFC in the future and I'm willing to help with that too, but for now lets celebrate this milestone.

@arp242
Copy link
Contributor

arp242 commented Oct 21, 2024

TOML is already standardized – right here. Most implementations follow this reasonably well.

@patcon
Copy link

patcon commented Oct 21, 2024

Appreciate the effort, @ben221199!

re: #870 (comment)

I don't think this person has had any involvement in TOML (AFAIK); I don't think it's a good idea to record them as the contact. -- @arp242

@aamelnikov can you confirm or deny whether having someone minimally involved in the project is how we should leave it? Regardless, now that it's locked in as a milestone, who do you recommend be listed here? (It seems to me it should reflect someone active on the project, yes?)

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

No branches or pull requests