Skip to content
Snippets Groups Projects

Remove pgpsig in PackageDescV2

Merged David Runge requested to merge remove_pgpsig_from_packagedesc into main
  1. Aug 08, 2022
    • David Runge's avatar
      Add changelog entry for PackageDescV2 · fa2a4a7b
      David Runge authored
      docs/repod/changelog.rst:
      Add changelog entry for PackageDescV2 explaining how to make use of the
      new (but not default) PackageDesc version.
      Verified
      fa2a4a7b
    • David Runge's avatar
      Add man page documentation about syncdb_settings · a58397bd
      David Runge authored
      docs/repod/man/repod_conf.rst:
      Extend the repod.conf man page with documentation on syncdb_settings and
      its options and default values.
      Verified
      a58397bd
    • David Runge's avatar
      Use SyncDatabase with desc_version and files_version · 0f79e97e
      David Runge authored
      repod/repo/package/syncdb.py:
      Change `SyncDatabase` to also cover which versions of `PackageDesc` and
      `Files` are used to export data, using the `desc_version` and
      `files_version` attributes.
      Change `SyncDatabase.outputpackagebase_to_tarfile()` require
      packagedesc_version and files_version so that `SyncDatabase` may be
      instantiated properly when calling
      `OutputPackageBase.get_packages_as_models()`.
      
      repod/cli/cli.py:
      Change instantiations of `SyncDatabase` to set the `desc_version` and
      `files_version` attributes to those found in the Settings instance.
      
      repod/repo/management/outputpackage.py:
      Remove fields for `files_version`, `output_package_version` and
      `package_desc_version` from OUTPUT_PACKAGE_BASE_VERSIONS as they are now
      set in `repod.common.enums`.
      Change `OutputPackageBase.from_dict()` to rely on default values
      provided by `FilesVersionEnum` and `OutputPackageVersionEnum` instead of
      the data from OUTPUT_PACKAGE_BASE_VERSIONS.
      Change `OutputPackageBase.get_packages_as_models()` to allow providing
      `packagedesc_version` and `files_version` (default values taken from
      PackageDescVersionEnum and FilesVersionEnum), so that the output type
      may be chosen.
      Change `OutputPackageBase.get_packages_as_models()` to add output for
      `PackageDescV2`.
      
      tests/cli/test_cli.py:
      Change tests to accomodate for the additional `SyncDatabase` attributes.
      
      tests/conftest.py
      Change instantiations of `SyncDatabase` to set the `desc_version` and
      `files_version` attributes using the default values.
      
      tests/repo/management/test_outputpackage.py:
      Change tests for `OutputPackageBase.packages_as_models()` to adapt to
      changes on how data is provided.
      Change tests for `OutputPackageBase.get_packages_as_models()` so that
      cases with `PackageDescV2` are also covered.
      
      tests/repo/package/test_syncdb.py:
      Change tests related to `SyncDatabase.outputpackagebase_to_tarfile()` or
      instantiation of `SyncDatabase` to adapt to the new function signature.
      Verified
      0f79e97e
  2. Aug 06, 2022
    • David Runge's avatar
      Add SyncDbSettings to Settings · 941eb3b9
      David Runge authored
      repod/config/settings.py:
      Add `SyncDbSettings`, which tracks attributes for `desc_version` and
      `files_version` that can be set for repository sync databases to define
      which versions of Files and PackageDesc will be exported.
      Verified
      941eb3b9
    • David Runge's avatar
      Add fixture for PackageDescV2 · b2b8b97d
      David Runge authored
      tests/conftest.py:
      Add fixtures packagedescv2 to provide a valid PackageDescV2 to tests.
      Verified
      b2b8b97d
    • David Runge's avatar
      Add enums to describe versions of classes · f5979073
      David Runge authored
      repod/common/enums.py:
      Add FilesVersionEnum to describe versions of Files,
      OutputPackageVersionEnum to describe versions of OutputPackage and
      PackageDescVersionEnum to describe versions of PackageDesc.
      Verified
      f5979073
    • David Runge's avatar
      Add documentation on PackageDescV2 · b3ed2426
      David Runge authored
      docs/repositories/management_repository.rst:
      Add documentation and JSON schema for PackageDescV2.
      
      docs/repositories/sync_database.rst:
      Add documentation on Desc v2.
      Verified
      b3ed2426
    • David Runge's avatar
      Fix wrong documentation on PGPSIG in Desc v1 · d1d3dbcf
      David Runge authored
      docs/repositories/sync_database.rst:
      Fix documentation on the `%PGPSIG%` identifier in Desc v1. It is in fact
      not a required identifier in the desc file.
      Verified
      d1d3dbcf
    • David Runge's avatar
      Add PackageDescV2, which removes pgpsig · 5818849f
      David Runge authored
      repod/repo/package/syncdb.py:
      Add `PackageDescV2`, which removes pgpsig.
      Change `export_schema()` to also export the schema for `PackageDescV2`.
      
      repod/templates/desc_v2.j2:
      Add jinja2 template which is used for rendering instances of
      `PackageDescV2`.
      
      tests/repo/package/test_syncdb.py:
      Change `test_files_from_dict_derive_file_version()` to add test cases
      which cover the creation of `PackageDescV2`.
      Verified
      5818849f
    • David Runge's avatar
      Do not use host configuration when testing Settings · 265ef0a1
      David Runge authored
      tests/config/test_settings.py:
      Change `test_systemsettings()` and `test_usersettings()` to not make use
      of configuration files potentially existing on the host by patching
      `repod.config.settings.CUSTOM_CONFIG` to point to an empty file.
      
      tests/conftest.py:
      Change `usersettings` fixture to not make use configuration files
      potentially existing on the host system by patching
      `repod.config.settings.CUSTOM_CONFIG` to point to an empty file.
      Verified
      265ef0a1
    • David Runge's avatar
      Fix documentation on PgpSig · ad8beee7
      David Runge authored
      repod/common/models.py,repod/repo/package/syncdb.py:
      Change documentation marking the PgpSig model/field as optional.
      Verified
      ad8beee7
Loading