Skip to content
  • Tristan Van Berkom's avatar
    Replace format-version with min-version · 6ef6be52
    Tristan Van Berkom authored
      * "min-version" is specified as a <major>.<minor> point version
        and uses the installed BuildStream version instead of having
        a separate versioning number for the format.
    
      * The presence of "format-version" is now used to indicate
        that we might be loading a BuildStream 1 project.
    
      * For now, where parsing the version at startup is concerned, and
        also where `bst init` is concerned, we artificially bump the
        detected BuildStream version to 2.0 if we detect a version < 2.0,
        these exceptions can be removed once 2.0 is tagged and released.
    
    Summary of changes:
    
      _project.py: Now parse "min-version" and detect "format-version" to
                   warn about loading a BuildStream 1 project
    
      _versions.py: Remove obsolete BST_FORMAT_VERSION numbers from here
    
      data/projectconfig.yaml: Remove old "format-version" from defaults
    
      utils.py: Added new private _parse_version() helper function, and another
                _get_bst_api_version() to get an adjusted API version.
    
      frontend/app.py, frontend/cli.py: Updated `bst init` implementation
    
      testing (buildstream.testing): Updated testing utilities to generate
      and use projects with min-version instead of format-version.
    
      tests and examples: Updated to use min-version across the board.
    6ef6be52