~qeef/draft-devault-bare

Merge branch 'concise-cbor'
Use cbor more efficient serializing
First pack cbor, then use

clone

read-only
https://git.sr.ht/~qeef/draft-devault-bare
read/write
git@git.sr.ht:~qeef/draft-devault-bare

You can also use your local clone with git send-email.

#draft-devault-bare

Only purpose of this repository is to update BARE I-D to make it published. The copyright corresponds to the draft.

Useful links:

Generate RFC I-D:

xml2rfc draft-devault-bare-01.xml

Update git config

git config format.subjectPrefix "PATCH draft-devault-bare"
git config sendemail.to "~sircmpwn/public-inbox@lists.sr.ht"

Create presentation:

pandoc -f markdown -t beamer -o bare-ietf-114.pdf pres.md

#Notification of authors of BARE implementations

  • bare-ts: conforms to the latest version

#draft-devault-bare-07

Done.

#draft-devault-bare-06

Done.

#draft-devault-bare-05

#Feedback in the mailing list

Done.

#draft-devault-bare-04

#Feedback in the mailing list

Done.

#draft-devault-bare-03

#Feedback in the mailing list

Done.

#draft-devault-bare-02

#Feeback in the mailing list

Done.

Based on "BARE RFC draft expired" https://lists.sr.ht/~sircmpwn/public-inbox/%3Cb3dbd8ad-a9c7-f021-50d8-dcfbbf96d6a9%40svmhdvn.name%3E

Here are my notes for changes needed before the next draft:

  • more examples
  • example Address is incorrect - "123 Main St" rather than "Street"
  • make uint/int canonical by requiring them to use the minimum necessary number of bits
  • "an" mapping of values
  • address union of one member, or of duplicate members

optional-type = "optional<" type ">"

should be:

optional-type = "optional<" non-enum-type ">"

and

Drew, I think you forget about NaN rejection.

Done.

#Before submission

  • Independent Submission instead of Internet Engineering Task Force
  • use current date, update expire dates

Done.

#Little clarifications

  • rewrite which to that, see FAQ
  • reword enum ... from a set of possible values ... -> ... from a set of named values ...
  • reword section describing data<length>: ... MUST NOT be longer than ??? octets (the maximum ...
  • []type consider "(number of values)" instead of "(in values)"
  • map[type A]type B -- missing double quotes around "type A" and "type B"
    • reword "... mapping of "type B" values keyed by "type A" values ..."
  • rewrite (type | type | ...) to (type A | type B | ...)
  • reword Each value is referred to as a "field", ... -> Each value is called "field", and each field has a name and type.
  • reword Each named value of an enum type MUST have a unique value. to Each named value of an enum type MUST be unique.
  • "The length is not encoded into the message." for data
  • unify vspace after t hangText for section 2.1
  • order of types: first w/o len, then w/len (e.g. []type and [length]type)
  • use "struct field type" for void invariant
  • using uint for enum identifier make it possible to encode key with different number of octets. maybe make a note that constant-length enum can be achieved when all the enum values are encoded with the same number of octets and specify number ranges.
  • use ul/ol/dl instead of list; check the XML syntax

Done.

#ABNF

  • UPPER = %x41-5A ; uppercase ASCII letters
    • add A-Z to the comment
    • maybe ; A-Z (uppercase ASCII letters)
    • or ; uppercase ASCII letters A-Z

Done.

Rewrite

enum-value      =  enum-value-name
enum-value      =/ (enum-value-name [WS] "=" [WS] integer)

to

enum-value      = enum-value-name [[WS] "=" [WS] integer]

Done.

Rewrite (but first look if it's written like that in other RFCs)

enum-values     =  enum-value / (enum-values WS enum-value)

to

enum-values     =  enum-value [WS enum-values]

And

union-members   =  union-member
union-members   =/ (union-members [WS] "|" [WS] union-member)

to

union-members   = union-member [[WS] "|" [WS] union-members]

Done.