Skip to content
This repository has been archived by the owner on Feb 27, 2024. It is now read-only.

Latest commit

 

History

History
103 lines (102 loc) · 3.38 KB

TODO.md

File metadata and controls

103 lines (102 loc) · 3.38 KB

TODO

  • Set up Bazel scaffolding
  • Set up testing
  • Proto file support
    • Syntax
    • Imports
    • Package
    • Options
  • Enum support
    • Empty enum
    • Enum options
    • Fields
      • Empty statements
      • Values
      • Value options
    • Reserveds
  • Message support
    • Empty message
    • Empty statements
    • Options
    • Fields
      • Basic fields
      • Field options
      • OneOfs
        • Basic oneofs
        • OneOf options
        • Field options
      • Maps
        • Basic maps
        • Map options
      • Reserveds
      • Extensions
      • Optional
    • Nested messages
    • Nested enums
  • Service support
    • Empty service
    • Empty statements
    • Service options
    • rpcs
      • Basic RPC
      • stream request
      • stream response
      • RPC options & empty statements
  • Comment support
    • Single-line // comments
    • Multi-line /* */ comments
    • Same-line comment serialization support
    • Top-of-file comment support
  • Extending support
  • Google well-known protobuf support
    • Mount in Google protobufs
    • Parseable
    • Idempotent de/serialization
  • Diffs
    • Normalizing
    • Complete diffs
      • Proto file-level diffs
        • Syntax changes
        • Import changes
        • Package changes
        • Option changes
      • Enum-level diffs
        • Additions/removals
        • Option changes
        • Field changes
          • Value changes
          • Option changes
        • Reserveds changes
      • Message-level diffs
        • Additions/removals
        • Option changes
        • Field changes
        • Reserved changes
        • Nested enum changes
        • Nested message changes
      • Service-level diffs
        • Additions/removals
        • Option changes
        • RPC changes
          • Additions/removals
          • Option changes
      • Comment diffs
    • Backwards-compatibility check
    • eq should enforce parent equality
    • Scoping of diffs under containing objects
      • Enum options under enums
      • Enum value changes under enums
      • Enum value option changes under enum values
      • Enum reserved changes under enums
      • Message option changes under messages
      • Message field changes under messages
      • Message reserved changes under messages
      • Message nested enum changes under messages
      • Message nested message changes under messages
  • (Perf) use iterators
    • In parsing
    • In properties
  • Remove Proto* and proto_ from everything