Skip to content

Breaking API updates #9

@MoralCode

Description

@MoralCode

This is an issue for compiling a list of breaking API changes that would be nice to have, but arent really worth doing on their own. The plan is to save them all up and apply them all at once whenever version 1.0 is considered ready.

The list:

  • rename the model classes to have more descriptive names
  • give all the model classes a consistent API (and maybe create some superclass or interface for this?)
    • make the parse() methods on each class generic (using fields and methods defined by the model classes) and pull it up into a superclass for deduplication
  • convert the constructor of the Days class to a class method from_range and make a simpler constructor (this will require some pretty major refactoring)
  • allow the output format to be customized #3
  • rename Times to TimeRange and create a class Times that can store multiple TimeRange's similar to Days (see support several opening and closing times for a single day #5)
  • make is_24_hr() and is_12_hour() in Time consistent
  • create a common system for specifying assumptions to make when the information is not available (for AM/PM, and century/year)
  • make all the from_parse_results methods consistent with regard to if they are processing a clean dictionary or a pyparsing.ParseResult object and possibly rename them to from_parse_result_dict

Metadata

Metadata

Assignees

No one assigned

    Labels

    discussionissues or PR's created for future planning or soliciting feedback and discussion

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions