Skip to content

Is the version unambiguous? #14

Open

Description

@chadwhitacre

Is the Fernet spec's versioning unambiguous? The spec on current master says:

This document describes version 0x80 (currently the only version) of the fernet format.

However, the current master is the sixteenth commit since the doc started, and it was called 0x80 when it started, too. What did those commits change? Should some of them have bumped the version?

The current lack of tags further suggests that version 0x80 is ambiguous.

Activity

  1. changed the title [-]is the version unambiguous?[/-] [+]Is the version unambiguous?[/+] on May 4, 2016
  2. chadwhitacre commented on May 4, 2016

    @chadwhitacre
    Author

    From a skim of the 16 commits, here are the ones that jump out as potentially version-bumping changes:

    ca8b345 pins to CBC, meaning that implementations of 1fa950a's 0x80 don't guarantee CBC.

    58d2827 appears to change from nanoseconds to seconds—the commit message ("new format") and diff (wait—"gAAAAA" is new?! 😳 ) in 115850d further suggest a version-bump-worthy change.

    3bbe466 "document checking version byte"—so it is new

    c55d0d4 diff suggests that base64url was indicated in at least some specific locations in the original 0x80—was it so indicated everywhere?

    0514d7d clear algorithm change

    was it so indicated everywhere?

    0250c59 Answer: no.

  3. chadwhitacre commented on May 4, 2016

    @chadwhitacre
    Author

    Is the version unambiguous?

    The answer appears to be "yes."

    In which case, the action item here is to ... what? Clean up Fernet's versioning somehow. By applying new version numbers to the version-bumping commits above? By dropping back to Git SHA for version? By adopting semantic versioning?

  4. chadwhitacre commented on May 5, 2016

    @chadwhitacre
    Author

    To be explicit: this issues makes auditing somewhat more difficult.

  5. chadwhitacre commented on May 5, 2016

    @chadwhitacre
    Author

    Clean up Fernet's versioning somehow.

    By tagging 0250c59 as 0x80 and adopting a versioning policy for future changes?

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions