Skip to content

Changelog

3.27.1 (2024-06-20)

Features

  • Honor repository's compression_type for publications unless overridden #3614

Bugfixes

  • Declared compatibility against pulpcore<3.70. #3620

3.27.0 (2024-06-16)

Features

  • Added /rpm/prune/ endpoint to allow "pruning" old Packages from repositories. #2909
  • Added (tech preview) support for signing RPM packages when uploading to a Repository. #2986

Bugfixes

  • Taught tests to find centos8 at vault.centos.org. #3572
  • Fix a flaw that still allowed to add duplicate advisories to a repository version. #3587
  • Made sync more tolerant of poorly configured webservers. #3599

3.26.1 (2024-06-16)

Bugfixes

  • Taught tests to find centos8 at vault.centos.org. #3572
  • Fix a flaw that still allowed to add duplicate advisories to a repository version. #3587
  • Made sync more tolerant of poorly configured webservers. #3599

3.26.0 (2024-05-28)

Features

  • Added django admin command to analyse repository disk size. #3003
  • Added support for repository-size management command. #3312

Bugfixes

  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380
  • Fixed modulemd upload raising an error when "packages" parameter was passed. #3427
  • Fixed an issue where the value of gpgcheck wasn't appropriately set on some publications. #3462
  • Fix publications created by mirror_complete syncs not having checksum_type set properly. #3484
  • Fixed modulemd_defaults create endpoint not setting the content digest. #3495

Improved Documentation

  • Improved pages about Post/Delete Content (from Pulp) and Add/Remove/Copy existing Content (from Repos). #3482

Misc


3.25.5 (2024-06-16)

Bugfixes

  • Taught tests to find centos8 at vault.centos.org. #3572
  • Fix a flaw that still allowed to add duplicate advisories to a repository version. #3587
  • Made sync more tolerant of poorly configured webservers. #3599

Misc


3.25.4 (2024-05-28)

Bugfixes

  • Fixed modulemd upload raising an error when "packages" parameter was passed. #3427

Misc


3.25.3 (2024-04-18)

Bugfixes

  • Fix publications created by mirror_complete syncs not having checksum_type set properly. #3484
  • Fixed modulemd_defaults create endpoint not setting the content digest. #3495

3.25.2 (2024-04-02)

Bugfixes

  • Fixed an issue where the value of gpgcheck wasn't appropriately set on some publications. #3462

3.25.1 (2024-02-09)

Bugfixes

  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380

3.25.0 (2024-01-18)

Features

  • Added a compression_type option to allow publishing metadata files with zstd compression (in addition to the default gzip). #3316
  • Raised pulpcore requirement to 3.44.1 to fix an RBAC related bug. #3381

Bugfixes

  • Added support for preventing unquoted NSVCA numerical values (e.g. "stream": 2.10) of having zeros stripped on modulemd YAML files. #3285
  • Fixed bug about malformed tuple introduced on the removal of sqlite-metadata support (PR #3328). #3351
  • Fixed server error when trying to create repository with deprecated gpgcheck and repo_gpgcheck. #3357
  • Fixes bug where RpmPublications couldn't be created when using a non-admin user. #3381

Deprecations and Removals

  • Removed the ability to generate sqlite metadata during repository publish. #2457
  • Removed support for publishing repos with a checksum type of md5, sha1, or sha224 #2488

Misc


3.24.1 (2024-01-05)

Bugfixes

  • Added support for preventing unquoted NSVCA numerical values (e.g. "stream": 2.10) of having zeros stripped on modulemd YAML files. #3285
  • Fixed server error when trying to create repository with deprecated gpgcheck and repo_gpgcheck. #3357

3.24.0 (2023-11-03)

Features

  • Added pulpcore 3.40 compatibility.
  • Added ability to customize config .repo file. #2295
  • Added new json field repo_config that can be used to configure .repo file #2902
  • Added new json field repo_config that can be used to configure .repo file. #2903

Bugfixes

  • Improved performance by reducing the number of small queries during exports. #3286

3.23.4 (2024-06-16)

Bugfixes

  • Fixed modulemd upload raising an error when "packages" parameter was passed. #3427
  • Fixed modulemd_defaults create endpoint not setting the content digest. #3495
  • Taught tests to find centos8 at vault.centos.org. #3572
  • Fix a flaw that still allowed to add duplicate advisories to a repository version. #3587
  • Made sync more tolerant of poorly configured webservers. #3599

3.23.3 (2024-02-09)

Bugfixes

  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380

3.23.2 (2024-01-27)

No significant changes.


3.23.1 (2024-01-26)

Bugfixes

  • Added support for preventing unquoted NSVCA numerical values (e.g. "stream": 2.10) of having zeros stripped on modulemd YAML files. #3285

3.23.0 (2023-10-13)

Features

  • Added NOCACHE_LIST config to enable specifying files to be served with a no-cache header.

    By default, repomd.xml, repomd.key, and repomd.key.asc are served with Cache-control: no-cache. #2947

  • Added to the distribution generate_repo_config field specifying whether Pulp should generate *.repo files. Defaults to False. #2985

  • Added a filename filter to package list endpoint. #3215

  • Adjusted default access policies for new labels api. #3243

Bugfixes

  • Fixed a deadlock during concurrent syncs of rpm-repos that need data fixups. #2980
  • Don't write invalid characters to a repo id, even if the distro name contains them. #3170
  • Made 0048 migration more robust in the face of unexpected data. #3177
  • Stopped package upload to parse the artifact twice. #3183
  • Remove the non functional retrieve logic from advisories upload, fixing a bug that appeared with pulpcore >= 3.29. #3195
  • Made 0049 migration more robust in the face of unexpected data. #3196
  • Adjust modules uniqueness to allow two modules with same NSVCA but different snippet content. #3241
  • Improved performance of exports significantly in some circumstances by optimizing a query. #3259
  • Fixed sporadic error due to to set domain on non-Content objects at sync time. #3275

Misc


3.22.8 (2024-06-16)

Bugfixes

  • Taught tests to find centos8 at vault.centos.org. #3572
  • Fix a flaw that still allowed to add duplicate advisories to a repository version. #3587

3.22.7 (2024-02-09)

Bugfixes

  • Added support for preventing unquoted NSVCA numerical values (e.g. "stream": 2.10) of having zeros stripped on modulemd YAML files. #3285
  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380

3.22.6 (2023-10-16)

Bugfixes

  • Fixed sporadic error due to to set domain on non-Content objects at sync time. #3275
  • Improved performance by reducing the number of small queries during exports. #3286

Misc


3.22.5 (2023-09-29)

Bugfixes

  • Improved performance of exports significantly in some circumstances by optimizing a query. #3259

3.22.4 (2023-09-18)

Misc


3.22.3 (2023-07-26)

Bugfixes

  • Stopped package upload to parse the artifact twice. #3183
  • Remove the non functional retrieve logic from advisories upload, fixing a bug that appeared with pulpcore >= 3.29. #3195
  • Made 0049 migration more robust in the face of unexpected data. #3196

3.22.2 (2023-07-06)

Bugfixes

  • Made 0048 migration more robust in the face of unexpected data. #3177

3.22.1 (2023-06-14)

Bugfixes

  • Fixed a deadlock during concurrent syncs of rpm-repos that need data fixups. #2980
  • Don't write invalid characters to a repo id, even if the distro name contains them. #3170

3.22.0 (2023-06-12)

Features

  • Added support for Domains. #3008

3.21.1 (2023-07-06)

Bugfixes

  • Fixed a deadlock during concurrent syncs of rpm-repos that need data fixups. #2980
  • Made 0048 migration more robust in the face of unexpected data. #3177

3.21.0 (2023-05-17)

Features

  • Declares (and requires at least) pulpcore/3.25 compatibility. #3151

Improved Documentation

  • Fixed infinite loading when searching for specific terms. #3150

3.20.0 (2023-05-05)

Features

  • The package upload feature was changed to allow the upload of packages which are already uploaded - in this scenario, the API will display the existing package as if it had just been created. #2764
  • Added the ability to replicate RPM distributions/repositories from an upstream Pulp instance. #2995
  • Added a new setting RPM_METADATA_USE_REPO_PACKAGE_TIME that will set the primary.xml timestamp of each package to when the package was added to the repo rather than when the package first appeared in Pulp. #3009
  • Added more filter options on the packages API. #3135

Bugfixes

  • Publish all metadata with a stable sort order. This should reduce artifact churn when certain metadata files are published repeatedly unchanged. #2752
  • Fixed a failure that can occur during migration from 3.17 to 3.18 #2952
  • Fix a minor module metadata parsing regression that broke Pulp-to-Pulp sync in some scenarios. #2961
  • Stopped publishing updateinfo.xml when there are no advisories. #2967
  • Fixed 0044_noartifact_modules migration that was failing with object storage. #2988
  • Loosen modulemd validation to allow version numbers that have string type but represent integers #2998
  • Fixed a regression in 3.19 which resulted in unintentional API changes and problems with "depsolving" repo copy. #3012
  • Fix import/export not importing modulemd_packages data with ManyToMany relationship. #3019
  • Fix relative path and location href mismatch of the uploaded rpm caused by filename and rpm header mismatch. Clients are getting HTTP 404 Not Found error when downloading the rpm. #3039
  • Fix a bug with copying modules with depsolving enabled - dependencies were not copied. #3119
  • Fix a bug for certain repos (e.g. mercurial) relating to how modules are handled. #3121
  • Fix an issue where the name of UpdateCollection is not defined and might affect import/export, and added a data repair script (pulpcore-manager rpm-datarepair 3127). #3127
  • Fixes an accidental change that was made to how "profiles" are formatted in the modulemd API. #3131

Misc


3.19.12 (2024-02-09)

Bugfixes

  • Added support for preventing unquoted NSVCA numerical values (e.g. "stream": 2.10) of having zeros stripped on modulemd YAML files. #3285
  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380

3.19.11 (2023-10-16)

Bugfixes

  • Improved performance by reducing the number of small queries during exports. #3286

Misc


3.19.10 (2023-09-29)

Bugfixes

  • Improved performance of exports significantly in some circumstances by optimizing a query. #3259

Misc


3.19.9 (2023-07-24)

Bugfixes

  • Made 0049 migration more robust in the face of unexpected data. #3196

3.19.8 (2023-07-06)

Bugfixes

  • Made 0048 migration more robust in the face of unexpected data. #3177

3.19.7 (2023-06-14)

Bugfixes

  • Fixed a deadlock during concurrent syncs of rpm-repos that need data fixups. #2980

3.19.6 (2023-05-05)

Bugfixes

  • Fix an issue where the name of UpdateCollection is not defined and might affect import/export, and added a data repair script (ulpcore-manager rpm-datarepair 3127). #3127
  • Fixes an accidental change that was made to how "profiles" are formatted in the modulemd API. #3131

3.19.5 (2023-05-02)

Bugfixes

  • Fix a bug with copying modules with depsolving enabled - dependencies were not copied. #3119
  • Fix a bug for certain repos (e.g. mercurial) relating to how modules are handled. #3121

3.19.4 (2023-04-10)

Bugfixes

  • Fix import/export not importing modulemd_packages data with ManyToMany relationship. #3019

Misc


3.19.3 (2023-03-29)

Bugfixes

  • Fix relative path and location href mismatch of the uploaded rpm caused by filename and rpm header mismatch. Clients are getting HTTP 404 Not Found error when downloading the rpm. #3039

Misc


3.19.2 (2023-03-20)

Bugfixes

  • Loosen modulemd validation to allow version numbers that have string type but represent integers #2998
  • Fixed a regression in 3.19 which resulted in unintentional API changes and problems with "depsolving" repo copy. #3012

Misc


3.19.1 (2023-03-06)

Bugfixes

  • Publish all metadata with a stable sort order. This should reduce artifact churn when certain metadata files are published repeatedly unchanged. #2752
  • Fixed a failure that can occur during migration from 3.17 to 3.18 #2952
  • Fix a minor module metadata parsing regression that broke Pulp-to-Pulp sync in some scenarios. #2961
  • Stopped publishing updateinfo.xml when there are no advisories. #2967
  • Fixed 0044_noartifact_modules migration that was failing with object storage. #2988

Misc


3.19.0 (2023-02-06)

Features

  • Add RBAC support for RPM plugin. #2272
  • Add documentation for RBAC. #2506
  • Enabled pulp_rpm to take advantage of "create_repositories" at PulpImport time. #2585
  • Added new condition on uploads to require repository field if user is not an admin. #2588
  • Added "treeinfo" to available skip_types at sync-time. This option allows the user to sync a repository without pulling down kickstart data and sub-repositories. #2848

Bugfixes

  • Fixed concurrent-overlapping-sync of subrepos by making them repository-unique.

    This change is transparent to end-users. #2278

  • Perform a data repair during the sync process to address a couple of data quality issues. Namely: fix changelogs in some cases where what is saved no longer matches what is synced, and fix packages which were previously incorrectly marked as non-modular. #2643

  • Deduplicate file entries #2719

  • Fix recreation of modular snippet when missing. #2735

  • Allow syncing repos with a compressed comps.xml "group" metadata declared in repomd.xml. #2753

  • Fix migration from modular artifacts to db snippets. #2777

  • Fix metadata for users who already attempted to migrate to 3.18.1 unsuccessfully. #2786

  • Ensured unsupported metadata files are also handled during publish. #2795

  • Taught RPM how to handle duplicate-advisory-ids at repository-version-create time. #2821

  • Fix migration of modular snippets from filesystem to DB. #2827

  • Fix migrations to work on any storage backend. #2843

  • Fix syncing repos with missing epoch metadata for packages. #2858

  • Fix an issue where the public key (repomd.xml.key) files generated by Pulp would be empty. #2892

Misc


3.18.21 (2024-06-20)

Bugfixes

  • Taught tests to find centos8 at vault.centos.org. #3572
  • Fix a flaw that still allowed to add duplicate advisories to a repository version. #3587

3.18.20 (2024-02-09)

Bugfixes

  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380

3.18.19 (2023-10-16)

Bugfixes

  • Improved performance by reducing the number of small queries during exports. #3286

Misc


3.18.18 (2023-09-29)

Bugfixes

  • Improved performance of exports significantly in some circumstances by optimizing a query. #3259

Misc


3.18.17 (2023-06-14)

Bugfixes

  • Fixed a deadlock during concurrent syncs of rpm-repos that need data fixups. #2980

3.18.16 (2023-05-05)

Bugfixes

  • Fix an issue where the name of UpdateCollection is not defined and might affect import/export, and added a data repair script (pulpcore-manager rpm-datarepair 3127). #3127

3.18.15 (2023-05-02)

Bugfixes

  • Fix a bug with copying modules with depsolving enabled - dependencies were not copied. #3119

3.18.14 (2023-04-10)

Bugfixes

  • Fix import/export not importing modulemd_packages data with ManyToMany relationship. #3019

Misc


3.18.13 (2023-03-29)

Bugfixes

  • Fix relative path and location href mismatch of the uploaded rpm caused by filename and rpm header mismatch. Clients are getting HTTP 404 Not Found error when downloading the rpm. #3039

Misc


3.18.12 (2023-03-06)

Bugfixes

  • Publish all metadata with a stable sort order. This should reduce artifact churn when certain metadata files are published repeatedly unchanged. #2752
  • Stopped publishing updateinfo.xml when there are no advisories. #2967
  • Fixed 0044_noartifact_modules migration that was failing with object storage. #2988

Misc


3.18.11 (2023-02-15)

Bugfixes

  • Allow syncing repos with a compressed comps.xml "group" metadata declared in repomd.xml. #2753

3.18.10 (2023-01-27)

Bugfixes

  • Taught RPM how to handle duplicate-advisory-ids at repository-version-create time. #2821

Misc


3.18.9 (2022-11-21)

Bugfixes

  • Fixed concurrent-overlapping-sync of subrepos by making them repository-unique.

    This change is transparent to end-users. #2278

  • Fix syncing repos with missing epoch metadata for packages. #2858

  • Fix an issue where the public key (repomd.xml.key) files generated by Pulp would be empty. #2892


3.18.8 (2022-11-07)

Bugfixes

  • Fix migrations to work on any storage backend. #2843

Misc


3.18.7 (2022-10-12)

No significant changes.


3.18.6 (2022-10-12)

Bugfixes

  • Deduplicate file entries #2719
  • Fix recreation of modular snippet when missing. #2735
  • Fix migration of modular snippets from filesystem to DB. #2827

3.18.5 (2022-09-30)

Misc


3.18.4 (2022-09-29)

No significant changes.


3.18.3 (2022-09-27)

Bugfixes

  • Perform a data repair during the sync process to address a couple of data quality issues. Namely: fix changelogs in some cases where what is saved no longer matches what is synced, and fix packages which were previously incorrectly marked as non-modular. #2643
  • Ensured unsupported metadata files are also handled during publish. #2795

3.18.2 (2022-09-19)

Bugfixes

  • Fix migration from modular artifacts to db snippets. #2777

3.18.1 (2022-09-13)

Deprecations and Removals

  • Removed "pulp_rpm to take advantage of "create_repositories" at PulpImport time" due to a compatibility issue - it will be shipped in 3.19. #2585

Misc


3.18.0 (2022-09-12)

Features

  • RPM metadata is now sorted by package name and version information, which slightly improves compression efficiency. #2274
  • Make relative_path optional when uploading a package. #2440
  • Shows modulemd profiles and description to user. #2456
  • Support Modulemd obsoletes. #2570
  • Enabled pulp_rpm to take advantage of "create_repositories" at PulpImport time. #2585
  • Keep modular metadata in database as a string instead of saving them to the disk. #2621

Bugfixes

  • Fixed treeinfo processing to handle some very old treeinfo formats. #2243
  • Update installation dependencies. #2289
  • The use of skip_types while performing a sync under the mirror_complete sync policy is now disallowed. Previously it would be silently ignored instead. #2293
  • Substantial improvements to the memory consumption of syncs, with a modest improvement in time required to sync. #2296
  • Improved error reporting in one scenario where it could be highly confusing. #2395
  • Added an exception for a case where repository metadata is incorrect in such a way that it should not be "mirrored", and a warning in other cases. If these warnings / errors are encountered, the party which manages the repo should be contacted. If it is a public repo, an issue can be filed in our tracker, and we will follow up with that party following confirmation of the issue. #2398
  • Made sure that Pulp doesn't publish repos with duplicate NEVRA in some edge case scenarios. #2407
  • Taught advisory-conflict-resolution to handle just-EVR-differences in incoming advisory's package-list. This solves the case of repositories that update advisories to always have the newest versions of RPMs (looking at you, EPEL...). #2422
  • Fix ULN remote username and password fields which ought to have been write-only and hidden. #2428
  • Fix the behavior of gpgcheck and repo_gpgcheck options when specified on the repository. #2430
  • Fixed an issue that could cause orphan cleanup to fail for certain repos. #2459
  • Fix an issue where package requirements containing an ampersand character in the name might have their data parsed incorrectly, and added a data repair script (pulpcore-manager rpm-datarepair 2460). #2460
  • Changed the naming of the trim_rpm_changelogs management command to rpm-trim-changelogs to better match with other command names. #2470
  • Fixed instances of /tmp/ being used instead of the worker's working directory. #2475
  • Using retain_package_versions (with the required "additive" sync_policy) will now avoid downloading the older packages when synced with download_policy "on_demand", resulting in much faster and more efficient syncs. #2479
  • Converted RepoMetadataFile.data_type to TextField in order to drop the max_length restriction. #2501
  • Fixes ACS to not require name in bindings. #2504
  • Fix ACS to update last refreshed time. #2505
  • Fixed unix timestamps not being parsed correctly for issued and updated dates. #2528
  • Fix a small FD leak during complete mirror syncs #2624
  • Fix import/export of Alma linux repositories. #2648
  • Improved error message for Alternate Content Source refresh when it has insufficient permissions. #2667
  • Don't raise a fatal error when encountering mostly valid metadata that contains data we don't expect, or data in the wrong places, in situations where it doesn't really matter. #2686
  • Allow syncing repositories with duplicate NEVRA in mirror_complete mode, but make sure syncing those packages are skipped. #2691
  • Do not optimize sync if retain-package-versions was set/changed #2704
  • Fixed a bug were some SLES repos were publishing metadata with missing drpms. #2705
  • Fixed orphan cleanup error in case Addon(Variant) were pointing to same subrepo. #2733

Improved Documentation

  • Added documentation steps to remove content. #2303

Deprecations and Removals

  • sqlite metadata support is being deprecated. See this discourse thread for additional details, or to advocate for the continued support of the feature. #2457

Misc


3.17.22 (2024-02-09)

No significant changes.


3.17.21 (2024-02-09)

Bugfixes

  • Taught RPM how to handle duplicate-advisory-ids at repository-version-create time. #2821
  • Addressed some edge-cases involving advisory-collection-naming and imports. #3380

3.17.20 (2023-10-13)

Bugfixes

  • Improved performance by reducing the number of small queries during exports. #3286

3.17.19 (2023-10-02)

Bugfixes

  • Fixed a deadlock during concurrent syncs of rpm-repos that need data fixups. #2980
  • Improved performance of exports significantly in some circumstances by optimizing a query. #3259

3.17.18 (2023-05-16)

Bugfixes

  • Fixed concurrent-overlapping-sync of subrepos by making them repository-unique.

    This change is transparent to end-users. #2278


3.17.17 (2023-04-10)

Bugfixes

  • Fix import/export not importing modulemd_packages data with ManyToMany relationship. #3019

3.17.16 (2023-02-16)

Bugfixes

  • Allow syncing repos with a compressed comps.xml "group" metadata declared in repomd.xml. #2753

3.17.15 (2022-11-21)

Bugfixes

  • Fix syncing repos with missing epoch metadata for packages. #2858
  • Fix an issue where the public key (repomd.xml.key) files generated by Pulp would be empty. #2892

3.17.14 (2022-10-19)

Bugfixes

  • Deduplicate file entries #2719

Misc


3.17.13 (2022-09-27)

Bugfixes

  • Perform a data repair during the sync process to address a couple of data quality issues. Namely: fix changelogs in some cases where what is saved no longer matches what is synced, and fix packages which were previously incorrectly marked as non-modular. #2643
  • Fix import/export of Alma linux repositories. #2648
  • Do not optimize sync if retain-package-versions was set/changed #2704
  • Fixed a bug were some SLES repos were publishing metadata with missing drpms. #2705
  • Fixed orphan cleanup error in case Addon(Variant) were pointing to same subrepo. #2733
  • Ensured unsupported metadata files are also handled during publish. #2795

Misc


3.17.12 (2022-08-16)

No significant changes.


3.17.11 (2022-08-15)

No significant changes.


3.17.10 (2022-08-08)

Bugfixes

  • Made sure that Pulp doesn't publish repos with duplicate NEVRA in some edge case scenarios. #2407
  • Allow syncing repositories with duplicate NEVRA in mirror_complete mode, but make sure syncing those packages are skipped. #2691

3.17.9 (2022-08-03)

Bugfixes

  • Don't raise a fatal error when encountering mostly valid metadata that contains data we don't expect, or data in the wrong places, in situations where it doesn't really matter. #2686

3.17.8 (2022-08-01)

Bugfixes

  • Improved error reporting in one scenario where it could be highly confusing. #2395
  • Fix package temporary upload path. #2403
  • Using retain_package_versions (with the required "additive" sync_policy) will now avoid downloading the older packages when synced with download_policy "on_demand", resulting in much faster and more efficient syncs. #2479
  • Improved error message for Alternate Content Source refresh when it has insufficient permissions. #2667

Misc


3.17.7 (2022-07-05)

Bugfixes

  • Fixed an issue that could cause orphan cleanup to fail for certain repos. #2459
  • Fixed unix timestamps not being parsed correctly for issued and updated dates. #2528
  • Fix a small FD leak during complete mirror syncs #2624

Misc


3.17.6 (2022-06-21)

Features

  • RPM metadata is now sorted by package name and version information, which slightly improves compression efficiency. #2274

Bugfixes

  • Fixed treeinfo processing to handle some very old treeinfo formats. #2243

3.17.5 (2022-04-12)

Bugfixes

  • Substantial improvements to the memory consumption of syncs, with a modest improvement in time required to sync. #2296
  • Taught advisory-conflict-resolution to handle just-EVR-differences in incoming advisory's package-list. This solves the case of repositories that update advisories to always have the newest versions of RPMs (looking at you, EPEL...). #2422
  • Fix ULN remote username and password fields which ought to have been write-only and hidden. #2428
  • Fix the behavior of gpgcheck and repo_gpgcheck options when specified on the repository. #2430
  • Fix an issue where package requirements containing an ampersand character in the name might have their data parsed incorrectly, and added a data repair script (pulpcore-manager rpm-datarepair 2460). #2460
  • Fixed instances of /tmp/ being used instead of the worker's working directory. #2475
  • Changed the naming of the trim_rpm_changelogs management command to rpm-trim-changelogs to better match with other command names. #2488

3.17.4 (2022-02-24)

Bugfixes

  • Added an exception for a case where repository metadata is incorrect in such a way that it should not be "mirrored", and a warning in other cases. If these warnings / errors are encountered, the party which manages the repo should be contacted. If it is a public repo, an issue can be filed in our tracker, and we will follow up with that party following confirmation of the issue. #2398

3.17.3 (2022-01-29)

Bugfixes

  • Fixed a Directory not empty error during publication creation. Usually observed on NFS and during pulp-2to3-migration but any publication creation can be affected. #2379

3.17.2 (2022-01-22)

Features

  • Added a debug option for greater visibility into dependency solving. #2343

Bugfixes

  • Fixed an edge case with the changelog limit. #2363
  • Fixed downloading from addon repositories provided as a part of a distribution/kickstart tree. #2373

Misc


3.17.1 (2022-01-18)

Bugfixes

  • Fixed a migration to be able to upgrade to pulp_rpm 3.17. #2356

3.17.0 (2022-01-17)

Features

  • Added API to allow uploading of a comps.xml file. #2313
  • Added a per-package changelog entry limit with a default value of 10, which is controlled by a setting named KEEP_CHANGELOG_LIMIT. This only impacts the output of [dnf changelog $package]{.title-ref} - it is always possible to get the full list of changelogs using [rpm -qa --changelog $package]{.title-ref} if the package is installed on the system. This limit can yield very substantial savings time and resources for some repositories. #2332
  • Added support for Alternate Content Sources. #2340

Bugfixes

  • Fixed distribution tree sync for repositories with partial .treeinfo (e.g. most of CentOS 8 repositories). #2305
  • Fixed a regression dealing with downloads of filenames containing special characters. Specifically, synching Amazon linux repositories with RPMs like uuid-c++. #2315
  • Fixed a bug that could result in incomplete repo metadata when "mirror_complete" sync policy is combined with the "optimize" option. #2316
  • Ensured that RPM plugin uses only a worker working directory and not /tmp which could have caused the out-of-disc-space issue since it's not expected that Pulp uses /tmp. #2317
  • In case that only a subtree is synced, it can happen that the PRIMARY_REPO key does not exists in repo_sync_results and the sync failed with accessing a not existing key at the end. #2318
  • Fixed sync of repositories using 'sha' as an alias for the sha1 checksum-type. #2319
  • Fixed FileNotFoundError during sync and Pulp 2 to Pulp 3 migration when a custom repo metadata has its checksum as a filename. #2321
  • Fix HTTP-proxy support for ULN-remotes #2322
  • Fixed file descriptor leak during repo metadata publish. #2331

Improved Documentation

  • Expanded the documentation to include examples using pulp-cli. #2314

Misc


3.16.2 (2021-12-22)

Bugfixes

  • Fixed sync of repositories using 'sha' as an alias for the sha1 checksum-type. (backported from #9580) #9624
  • In case that only a subtree is synced, it can happen that the PRIMARY_REPO key does not exists in repo_sync_results and the sync failed with accessing a not existing key at the end. (backported from #9565) #9628
  • Ensured that RPM plugin uses only a worker working directory and not /tmp which could have caused the out-of-disc-space issue since it's not expected that Pulp uses /tmp. (backported from #9551) #9629
  • Fixed FileNotFoundError during sync and Pulp 2 to Pulp 3 migration when a custom repo metadata has its checksum as a filename. (backported from #9636) #9650
  • Fix HTTP-proxy support for ULN-remotes (backported from #9647) #9653

Misc


3.16.1 (2021-10-27)

Bugfixes

  • Fixed a bug that could result in incomplete repo metadata when "mirror_complete" sync policy is combined with the "optimize" option. (backported from #9535) #9536
  • Fixed a regression dealing with downloads of filenames containing special characters. Specifically, synching Amazon linux repositories with RPMs like uuid-c++. (backported from #9529) #9537

3.16.0 (2021-10-20)

Features

  • Added a sync_policy parameter to the /sync/ endpoint which will replace the mirror parameter and provides additional options and flexibility about how the sync should be carried out. The mirror parameter is now deprecated but for backwards compatibility it will remain present. #9316
  • Make sync optimization less sensitive to remote changes which wouldn't have any impact on the sync outcomes, and fix some situations where the sync should not be skipped. #9398

Bugfixes

  • Fixed metadata generation after changing ALLOWED_CONTENT_CHECKSUMS. #8571

  • For certain repos which use a rare feature of RPM metadata, "mirroring" would lead to a surprising / suboptimal result for most Pulp users. We now reject syncing these repos with mirroring enabled. #9303

  • Fix an error that could occur when performing a non-mirror sync while using the skip_types option. #9308

  • For certain repos which use a rare feature of RPM metadata, "mirroring" would lead to a broken repo. We now reject syncing these repos with mirroring enabled. #9328

  • Fixes a regression in support for syncing from mirrorlists. #9329

  • Fix an edge case where the repo gpg key URL would be calculated incorrectly if CONTENT_PREFIX was set to "/". #9350

  • Vastly improved copy-with-depsolving performance. #9387

  • For certain repos which use Delta RPMs (which Pulp 3 does not and will not support) we now reject syncing these repos with mirroring enabled to avoid confusing clients with unusable Delta metadata. #9407

  • Generated .repo file now includes the "name" field. #9438

  • Use checksum type of a package for publication if it's not configured. #9448

  • Restored the functionality of specifying basic-auth parameters in a remote's URL.

    NOTE: it's much better to specify username/pwd explcitly on the Remote, rather than relying on embedding them in the URL. This fix will probably be deprecated in the future. #9464

  • Fixed an issue where some repositories were unnecessarily prevented from using mirror-mode sync. #9486

  • Disallowed adding simultaneously multiple advisories with the same id to a repo. Resolved the case when two or more advisories were already in a repo version. #9503

Improved Documentation

  • Added a note about scheduling tasks. #9147

Misc


3.15.0 (2021-08-27)

Features

  • Enable reclaim disk space for packages. This feature is available with pulpcore 3.15+. #9176

Bugfixes

  • Taught pulp_rpm to be more lenient in the face of non-standard repos. #7208
  • Fixed multiple bugs in distribution tree metadata generation regarding "variant" and "variants" metadata. #8622
  • Fixed Pulp 3 to Pulp 2 sync for the package groups with empty packagelist, e.g. RHEL8 Appstream repository. #8713
  • Taught downloader to be handle rpms with special characters in ways Amazon likes. #8875
  • Fixed some errors that can occur on occasions when identical content is being synced from multiple sources at once. #9029
  • Comply with orphan clean up changes introduced in pulpcore 3.15 #9151
  • Unpublished content is no longer available for consumption. #9223
  • Fixed an issue where mirror-mode syncs would not provide all of the files described in the .treeinfo metadata. #9230
  • Taught copy-depsolving to behave better in a multiarch environment. #9238
  • Fixed bug where sync tasks would open a lot of DB connections. #9253
  • Improved the parallelism of copy operations. #9255
  • Taught copy/ API to only do depsolving once when asked for. #9287

Deprecations and Removals

  • Dropped support for Python 3.6 and 3.7. pulp_rpm now supports Python 3.8+. #9033

Misc


3.14.20 (2022-08-08)

Bugfixes

  • Made sure that Pulp doesn't publish repos with duplicate NEVRA in some edge case scenarios. #2407
  • Allow syncing repositories with duplicate NEVRA in mirror_complete mode, but make sure syncing those packages are skipped. #2691

3.14.19 (2022-08-04)

Bugfixes

  • Using retain_package_versions (with the required "additive" sync_policy) will now avoid downloading the older packages when synced with download_policy "on_demand", resulting in much faster and more efficient syncs. #2479

Misc


3.14.18 (2022-08-03)

Bugfixes

  • Don't raise a fatal error when encountering mostly valid metadata that contains data we don't expect, or data in the wrong places, in situations where it doesn't really matter. #2686

3.14.17 (2022-08-02)

Bugfixes

  • Substantial improvements to the memory consumption of syncs, with a modest improvement in time required to sync. #2296
  • Improved error reporting in one scenario where it could be highly confusing. #2395

Misc


3.14.16 (2022-07-08)

Bugfixes

  • Fixed an issue that could cause orphan cleanup to fail for certain repos. #2459
  • Fix a small FD leak during complete mirror syncs #2624

Misc


3.14.15 (2022-04-12)

Bugfixes

  • Fix an issue where package requirements containing an ampersand character in the name might have their data parsed incorrectly, and added a data repair script (pulpcore-manager rpm-datarepair 2460). #2460
  • Fixed instances of /tmp/ being used instead of the worker's working directory. #2475

3.14.14 (2022-03-25)

Bugfixes

  • Taught advisory-conflict-resolution to handle just-EVR-differences in incoming advisory's package-list. This solves the case of repositories that update advisories to always have the newest versions of RPMs (looking at you, EPEL...). #2422
  • Fix the behavior of gpgcheck and repo_gpgcheck options when specified on the repository. #2430

3.14.13 (2022-03-08)

Bugfixes

  • Added an exception for a case where repository metadata is incorrect in such a way that it should not be "mirrored", and a warning in other cases. If these warnings / errors are encountered, the party which manages the repo should be contacted. If it is a public repo, an issue can be filed in our tracker, and we will follow up with that party following confirmation of the issue. #2398

3.14.12 (2022-01-29)

Bugfixes

  • Fixed a Directory not empty error during publication creation. Usually observed on NFS and during pulp-2to3-migration but any publication creation can be affected. #2379

3.14.11 (2022-01-22)

Bugfixes

  • Fixed an edge case with the changelog limit. #2363
  • Fixed downloading from addon repositories provided as a part of a distribution/kickstart tree. #2373

3.14.10 (2022-01-17)

Bugfixes

  • Fixed distribution tree sync for repositories with partial .treeinfo (e.g. most of CentOS 8 repositories). #2327
  • Fixed file descriptor leak during repo metadata publish. (backported from #2331) #2347
  • Added a per-package changelog entry limit with a default value of 10, which is controlled by a setting named KEEP_CHANGELOG_LIMIT. This only impacts the output of [dnf changelog $package]{.title-ref} - it is always possible to get the full list of changelogs using [rpm -qa --changelog $package]{.title-ref} if the package is installed on the system. This limit can yield very substantial savings time and resources for some repositories. (backported from #2332) #2348

3.14.9 (2021-12-21)

Bugfixes

  • Added a sync_policy parameter to the /sync/ endpoint which will replace the mirror parameter and provides options for how the sync should be carried out. The mirror parameter is deprecated but will retain its current function. (backported from #9316) #9620
  • Fixed sync of repositories using 'sha' as an alias for the sha1 checksum-type. (backported from #9580) #9625
  • Ensured that RPM plugin uses only a worker working directory and not /tmp which could have caused the out-of-disc-space issue since it's not expected that Pulp uses /tmp. (backported from #9551) #9630
  • Fixed FileNotFoundError during sync and Pulp 2 to Pulp 3 migration when a custom repo metadata has its checksum as a filename. (backported from #9636) #9649
  • Fix HTTP-proxy support for ULN-remotes (backported from #9647) #9652

Misc


3.14.8 (2021-10-27)

Bugfixes

  • Fixed a regression dealing with downloads of filenames containing special characters. Specifically, synching Amazon linux repositories with RPMs like uuid-c++. (backported from #9529) #9541

3.14.7 (2021-10-18)

Bugfixes

  • Disallowed adding simultaneously multiple advisories with the same id to a repo. Resolved the case when two or more advisories were already in a repo version. (backported from #9503) #9519

3.14.6 (2021-10-05)

Bugfixes

  • Fixed an issue where some repositories were unnecessarily prevented from using mirror-mode sync. (backported from #9486) #9487

3.14.5 (2021-09-29)

Bugfixes

  • Generated .repo file now includes the "name" field. (backported from #9438) #9439

  • Use checksum type of a package for publication if it's not configured.

    (backported from #9448) #9449

  • Restored the functionality of specifying basic-auth parameters in a remote's URL.

    NOTE: it's much better to specify username/pwd explcitly on the Remote, rather than relying on embedding them in the URL. This fix will probably be deprecated in the future. (backported from #9464) #9472

Misc


3.14.4 (2021-09-22)

Bugfixes

  • Fixed metadata generation after changing ALLOWED_CONTENT_CHECKSUMS. (backported from #8571) #9332
  • Vastly improved copy-with-depsolving performance. (backported from #9387) #9388
  • For certain repos which use a rare feature of RPM metadata, "mirroring" would lead to a broken repo. We now reject syncing these repos with mirroring enabled. (backported from #9328) #9392
  • Fixes a regression in support for syncing from mirrorlists. (backported from #9329) #9394
  • For certain repos which use Delta RPMs (which Pulp 3 does not and will not support) we now reject syncing these repos with mirroring enabled to avoid confusing clients with unusable Delta metadata. (backported from #9407) #9408
  • Fix an edge case where the repo gpg key URL would be calculated incorrectly if CONTENT_PREFIX was set to "/". (backported from #9350) #9429

3.14.3 (2021-08-31)

Bugfixes

  • Taught copy-depsolving to behave better in a multiarch environment. (backported from #9238) #9293
  • Taught copy/ API to only do depsolving once when asked for. (backported from #9287) #9298
  • Fix an error that could occur when performing a non-mirror sync while using the skip_types option. (backported from #9308) #9312
  • For certain repos which use a rare feature of RPM metadata, "mirroring" would lead to a surprising / suboptimal result for most Pulp users. We now reject syncing these repos with mirroring enabled. (backported from #9303) #9315

Misc


3.14.2 (2021-08-24)

Bugfixes

  • Fixed some errors that can occur on occasions when identical content is being synced from multiple sources at once. (backported from #9029) #9267
  • Fixed an issue where mirror-mode syncs would not provide all of the files described in the .treeinfo metadata. (backported from #9230) #9270

Misc


3.14.1 (2021-08-11)

Bugfixes

  • Taught pulp_rpm to be more lenient in the face of non-standard repos. (backported from #7208) #9192
  • Fixed Pulp 3 to Pulp 2 sync for the package groups with empty packagelist, e.g. RHEL8 Appstream repository. (backported from #8713) #9193
  • Taught downloader to be handle rpms with special characters in ways Amazon likes. (backported from #8875) #9198
  • Fixed multiple bugs in distribution tree metadata generation regarding "variant" and "variants" metadata. (backported from #8622) #9218
  • Unpublished content is no longer available for consumption. (backported from #9223) #9226

3.14.0 (2021-07-24)

Bugfixes

  • Taught pulp_rpm how to deal with timestamp and filename oddities of SUSE repos. #8275
  • Updated the signing service code to be compatible with pulpcore 3.10+. #8608
  • Fixed inclusion by package group of an additional version of packages already selected to be copied #9055
  • User proxy auth credentials of a Remote when syncing content. #9064
  • Fixed server error when accessing /config.repo while using auto-distribute #9071
  • Fixed a SUSE sync-error involving repomd-extra files with '-' in their filename. #9096
  • Fix repository "mirroring" for repositories with Kickstart metadata / "Distribution Trees". #9098
  • The fix for a previous issue resulting in incorrect metadata (#8995) was still regressing in some circumstances. Implemented a complete fix and added tests to ensure it never recurs. #9107
  • Fixed an issue where mirrored syncs could fail if extra_files.json declared a checksum of a type that was disallowed in the Pulp settings. #9111

Misc


3.13.3 (2021-07-07)

Bugfixes

  • #9023
  • Restored ability to correctly handle complicated mirrorlist URLs. (backported from #8981) #9026
  • Fix UnboundLocalException if Pulp receives a non-404 HTTP error code when attempting to download metadata. (backported from #8787) #9027

Misc


3.13.2 (2021-06-23)

Bugfixes

  • Taught sync to process modulemd before packages so is_modular can be known. (backported from #8952) #8964

3.13.1 (2021-06-23)

Bugfixes

  • Fix filelists and changelogs not always being parsed correctly. (backported from #8955) #8961
  • Fix an AssertionError that could occur when processing malformed (but technically valid) metadata. (backported from #8944) #8962

3.13.0 (2021-06-17)

Features

  • A sync with mirror=True will automatically create a publication using the existing metadata downloaded from the original repo, keeping the repository signature intact. #6353
  • Allow the checksum types for packages and metadata to be unspecified, and intelligently decide which ones to use based on context if so. #8722
  • Auto-publish no longer modifies distributions. Auto-distribute now only requires setting a distribution's repository field. #8759
  • Substantially improved memory consumption while processing extremely large repositories. #8864

Bugfixes

  • Fixed publication of a distribution tree if productmd 1.33+ is installed. #8807
  • Fixed sync for the case when SRPMs are asked to be skipped. #8812
  • Allow static_context to be absent. #8814
  • Fixed a trailing slash sometimes being inserted improperly if sles_auth_token is used. #8816

Misc


3.12.0 (2021-05-19)

Features

  • Add support for automatic publishing and distributing. #7622
  • Added the ability to synchronize Oracle ULN repositories using ULN remotes. You can set an instance wide ULN server base URL using the DEFAULT_ULN_SERVER_BASE_URL setting. #7905

Bugfixes

  • Fixed advisory upload-and-merge of already-existing advisories. #7282
  • Taught pulp_rpm to order resources on export to avoid deadlocking on import. #7904
  • Reduce memory consumption when syncing extremely large repositories. #8467
  • Fix error when updating a repository. #8546
  • Fixed sync/migration of the kickstart repositories with floating point build_timestamp. #8623
  • Fixed a bug where publication used the default metadata checksum type of SHA-256 rather than the one requested by the user. #8644
  • Fixed advisory-upload so that a failure no longer breaks uploads forever. #8683
  • Fixed syncing XZ-compressed modulemd metadata, e.g. CentOS Stream "AppStream" #8700
  • Fixed a workflow where two identical advisories could 'look different' to Pulp. #8716

Improved Documentation

  • Added workflow documentation for the new ULN remotes. #8426

Misc


3.11.4 (2022-01-29)

Bugfixes

  • Fixed file descriptor leak during repo metadata publish. #2331
  • Fixed a Directory not empty error during publication creation. Usually observed on NFS and during pulp-2to3-migration but any publication creation can be affected. #2379

3.11.3 (2022-01-06)

Bugfixes

  • Fixed FileNotFoundError during sync and Pulp 2 to Pulp 3 migration when a custom repo metadata has its checksum as a filename. (backported from #2321) #2310
  • Fixed distribution tree sync for repositories with partial .treeinfo (e.g. most of CentOS 8 repositories) #2326

3.11.2 (2021-08-24)

Bugfixes

  • Taught pulp_rpm how to deal with timestamp and filename oddities of SUSE repos. (backported from #8275) #9113
  • Fixed Pulp 3 to Pulp 2 sync for the package groups with empty packagelist, e.g. RHEL8 Appstream repository. (backported from #8713) #9195
  • Taught pulp_rpm to be more lenient in the face of non-standard repos. (backported from #7208) #9285

Misc


3.11.1 (2021-05-31)

Bugfixes

  • Fixed sync for the case when SRPMs are asked to be skipped. (backported from #8812) #8813
  • Allow static_context to be absent. (backported from #8814) #8815

3.11.0 (2021-05-18)

Features

  • Taught sync/copy/publish to recognize the new static_context attribute of modules. #8638

Bugfixes

  • Fixed syncing XZ-compressed modulemd metadata, e.g. CentOS Stream "AppStream" (backported from #8700) #8751
  • Fixed a bug where publication used the default metadata checksum type of SHA-256 rather than the one requested by the user. (backported from #8644) #8752
  • Reduce memory consumption when syncing extremely large repositories. (backported from #8467) #8753

3.10.0 (2021-03-25)

Features

  • Added the ALLOW_AUTOMATIC_UNSAFE_ADVISORY_CONFLICT_RESOLUTION configuration option.

    When set to True, overrides Pulp's advisory-merge logic regarding 'suspect' advisory collisions at sync and upload time and simply processes the advisory. #8250

Bugfixes

  • Taught pulp_rpm how to handle remotes whose URLs do not end in '/'.

    Specifically, some mirrors (e.g. Amazon2) return remotes like this. #7995

  • Caught remaining places that needed to know that 'sha' is an alias for 'sha1'.

    Very old versions of createrepo used 'sha' as a checksum-type for 'sha-1'. The recent ALLOWED_CHECKSUMS work prevented repositories created this way from being synchronized or published. #8052

  • Fixed DistributionTree parsing for boolean fields which could cause a failure at sync or migration time. #8245

  • Taught advisory-conflict-resolution how to deal with another edge-case. #8249

  • Fixed regression in advisory-upload when pkglist included in advisory JSON. #8380

  • Fixed the case when no package checksum type cofiguration is provided for publications created outside, not by RPM plugin endpoints. E.g. in pulp-2to3-migration plugin. #8422

Misc


3.9.1 (2021-03-11)

Bugfixes

  • Fixed DistributionTree parsing for boolean fields which could cause a failure at sync or migration time. #8374

3.9.0 (2021-02-04)

Features

  • Make creation of sqlite metadata at Publication time an option, and default to false. #7852
  • Check allowed checksum types when publish repository. #7855

Bugfixes

  • Fixed content serialization so it displays content checksums. #8002
  • Fixing OpenAPI schema for on demand Distribution Trees #8050
  • Fix a mistake in RPM copy that could lead to modules being copied when they should not be. #8091
  • Fixed a mistake in dependency calculation code which could result in incorrect copy results and errors. #8114
  • Fixed a bug that occurs when publishing advisories without an "updated" date set, which includes SUSE advisories. #8162

Improved Documentation

  • Fixed a mistake in the RPM copy workflow documentation. #7978
  • Fixed a mistake in the copy API documentation - dependency solving was described as defaulting to OFF when in fact it defaults to ON. #8009

Misc


3.8.0 (2020-11-12)

Features

  • Added new fields allowing users to customize gpgcheck signature options in a publication. #6926

Bugfixes

  • Fixed re-syncing of custom repository metadata when it was the only change in a repository. #7030
  • User should not be able to remove distribution trees, custom repository metadata and comps if they are used in repository. #7431
  • Raise ValidationError when other type than JSON is provided during Advisory upload. #7468
  • Added handling of HTTP 403 Forbidden during DistributionTree detection. #7691
  • Fixed the case when downloads were happening outside of the task working directory during sync. #7698

Improved Documentation

  • Fixed broken documentation links. #6981
  • Added documentation clarification around how checksum_types work during the Publication. #7203
  • Added examples how to copy all content. #7494
  • Clarified the advanced-copy section. #7705

Misc


3.7.0 (2020-09-23)

Bugfixes

  • Remove distribution tree subrepositories when a distribution tree is removed. #7440
  • Avoid intensive queries taking place during the handling of the "copy" API web request. #7483
  • Fixed "Value too long" error for the distribution tree sync. #7498

Misc


3.6.3 (2020-11-19)

Bugfixes

  • Fixed duplicate key error after incomplete sync task. #7844

3.6.2 (2020-09-04)

Bugfixes

  • Fixed a bug where dependency solving did not work correctly with packages that depend on files, e.g. depending on /usr/bin/bash. #7202
  • Fixed crashes while copying SRPMs with depsolving enabled. #7290
  • Fix sync using proxy server. #7321
  • Fix sync from mirrorlist with comments (like fedora's mirrorlist). #7354
  • Copying advisories/errata no longer fails if one of the packages is not present in the repository. #7369
  • Fixing OpenAPI schema for Variant #7394

3.6.1 (2020-08-20)

Bugfixes

  • Updated Rest API docs to contain only rpm endpoints. #7332
  • Fix sync from local (on-disk) repository. #7342

Improved Documentation

  • Fix copy script example typos. #7176

3.6.0 (2020-08-17)

Features

  • Taught advisory-merge to proactively avoid package-collection-name collisions. #5740
  • Added the ability for users to import and export distribution trees. #6739
  • Added import/export support for remaining advisory-related entities. #6815
  • Allow a Remote to be associated with a Repository and automatically use it when syncing the Repository. #7159
  • Improved publishing performance by around 40%. #7289

Bugfixes

  • Prevented advisory-merge from 'reusing' UpdateCollections from the merging advisories. #7291

Misc


3.5.1 (2020-08-11)

Bugfixes

  • Handle optimize=True and mirror=True on sync correctly. #7228
  • Fix copy with depsolving for packageenvironments. #7248
  • Taught copy that empty-content means 'copy nothing'. #7284

3.5.0 (2020-07-24)

Features

  • Add a retention policy feature - when specified, the latest N versions of each package will be kept and older versions will be purged. #5367
  • Add support for comparing Packages by EVR (epoch, version, release). #5402
  • Added support for syncing from a mirror list feed #6225
  • Comps types (PackageCategory, PackageEnvironment, PackageGroup) can copy its children. #6316
  • Added support for syncing Suse enterprise repositories with authentication token. #6729

Bugfixes

  • Fixed the sync issue for repositories with the same metadata files but different filenames. E.g. productid in RHEL8 BaseOS and Appstream. #5847
  • Fixed an issue with an incorrect copy of a distribution tree. #7046
  • Fixed a repository deletion when a distribution tree is a part of it. #7096
  • Corrected several viewset-filters to be django-filter-2.3.0-compliant. #7103
  • Allow only one distribution tree in a repo version at a time. #7115
  • API is able to show modular data on advisory collection. #7116

Deprecations and Removals

  • Remove PackageGroup, PackageCategory and PackageEnvironment relations to packages and to each other. #6410
  • Removed the query parameter relative_path from the API which was used when uploading an advisory #6554

Misc


3.4.2 (2020-07-16)

Bugfixes

  • Fixed CentOS 8 kickstart repository publications. #6568
  • Updating API to not return publications that aren't complete. #6974

Improved Documentation

  • Change fixtures URL in the docs scripts. #6656

Misc


3.4.1 (2020-06-03)

Bugfixes

  • Including requirements.txt on MANIFEST.in #6892

3.4.0 (2020-06-01)

Features

  • Distributions now serves a config.repo, and when signing is enabled also a public.key, in the base_path. #5356

Bugfixes

  • Fixed the duplicated advisory case when only auxiliary fields were updated but not any timestamp or version. #6604
  • Fixed dependency solving issue where not all RPM dependencies were coped. #6820
  • Make 'last_sync_revision_number' nullable in all migrations. #6861
  • Fixed a bug where the behavior of RPM advanced copy with dependency solving differed depending on the order of the source-destination repository pairs provided by the user. #6868

Improved Documentation

  • Added documentation for the RPM copy API. #6332
  • Updated the required roles names #6759

Misc


3.3.2 (2020-05-18)

Bugfixes

  • Fix edge case where specifying 'dest_base_version' for an RPM copy did not work properly in all circumstances. #6693
  • Add a new migration to ensure that 'last_sync_revision_number' is nullable. #6743

3.3.1 (2020-05-07)

Bugfixes

  • Taught copy to always include specified packages. #6519
  • Fixed the upgrade issue, revision number can be empty now. #6662

Misc


3.3.0 (2020-04-21)

Features

  • Add dependency solving for modules and module-defaults. #4162
  • Add dependency solving for RPMs. #4761
  • Add incremental update -- copying an advisory also copies the RPMs that it references. #4768
  • Enable users to publish a signed Yum repository #4812
  • Add a criteria parameter to the copy api that can be used to filter content to by copied. #6009
  • Added REST API for copying content between repositories. #6018
  • Add a content parameter to the copy api that accepts a list of hrefs to be copied. #6019
  • Functional test using bindings. #6061
  • Added the field 'sha256' to the public API and enabled users to filter content by this field #6187
  • Added a config param to copy api which maps multiple sources to destinations. #6268
  • Default publish type is alphabetical directory structure under 'Packages' folder. #4445
  • Enabled checksum selection when publishing metadata #4458
  • Advisory version is considered at conflict resolution time. #5739
  • Added support for opensuse advisories. #5829
  • Optimize sync to only happen when there have been changes. #6055
  • Store the checksum type (sum_type) for advisory packages as an integer, but continue displaying it to the user as a string. This brings the internal representation closer to createrepo_c which uses integers. #6442
  • Add support for import/export processing #6473

Bugfixes

  • Fix sync for repositories with modular content. #6229
  • Properly compare modular content between the versions. #6303
  • Deserialize treeinfo files in a scpecific order #6322
  • Fixed the repo revision comparison and sync optimization for sub-repos #6367
  • Fixed repository metadata that was pointing to wrong file locations. #6399
  • Fixed modular advisory publication. #6440
  • Fixed advisory publication, missing auxiliary fields were added. #6441
  • Fixed publishing of module repodata. #6530

Improved Documentation

  • Documented bindings installation for a dev environment #6395

Misc


3.2.0 (2020-03-02)

Features

  • Add mirror mode for sync endpoint. #5738
  • Add some additional not equal filters. #5854
  • SRPM can be skipped during the sync. #6033

Bugfixes

  • Fix absolute path error when parsing packages stored in S3 #5904
  • Fix advisory conflict resolution to check current version first. #5924
  • Handling float timestamp on treeinfo file #5989
  • Raise error when content has overlapping relative_path on the same version #6152
  • Fixed an issue causing module and module-default metadata to be stored incorrectly, and added a data migration to fix existing installations. #6191
  • Fix REST API for Modulemd "Package" list - instead of returning PKs, return Package HREFs as intended. #6196
  • Replace RepositorySyncURL with RpmRepositorySyncURL #6204
  • Modulemd dependencies are now stored corectly in DB. #6214

Improved Documentation

  • Remove the pulp_use_system_wide_pkgs installer variable from the docs. We now set it in the pulp_rpm_prerequisites role. Users can safely leave it in their installer variables for the foreseeable future though. #5992

Misc


3.1.0 (2020-02-03)

Features

  • Advisory now support reboot_suggested info. #5737
  • Skip unsupported repodata. #6034

Misc


3.0.0 (2019-12-12)

Bugfixes

  • Providing a descriptive error message for RPM repos with invalid metadata #4424
  • Improve memory performance on syncing. #5688
  • Improve memory performance on publishing. #5689
  • Resolve the issue which disallowed users to publish uploaded content #5699
  • Provide a descriptive error for invalid treeinfo files #5709
  • Properly handling syncing when there is no treeinfo file #5732
  • Fix comps.xml publish: missing group attributes desc_by_lang, name_by_lang, and default now appear properly. #5741
  • Fix error when adding/removing modules to/from a repository. #5746
  • Splitting content between repo and sub-repo #5761
  • Allow empty string for optional fields for comps.xml content. #5856
  • Adds fields from the inherited serializer to comps.xml content types' displayed fields #5857
  • Assuring uniqueness on publishing. #5861

Improved Documentation

  • Document that sync must complete before kicking off a publish #5006
  • Add requirements to docs. #5228
  • Update installation docs to use system-wide-packages. #5564
  • Remove one shot uploader references and info. #5747
  • Add 'Rest API' to menu. #5749
  • Refactor workflow commands to small scripts. #5750
  • Rename 'Errata' to 'Advisory' for consistency. #5751
  • Update docs to include modularity and comps support to features. Include core-provided browseable distributions in features. #5752
  • Update docs to include Tech Preview section #5753
  • Update Quickstart page #5754
  • Rearrange installation page and add missing information #5755
  • Rearrange workflows section to have individual menu items for each content type. #5758
  • Add content type descriptions and their specifics. #5759
  • Document python build dependencies that must be installed on CentOS / RHEL. #5841

Misc


3.0.0rc1 (2019-11-19)

Features

  • Support for advisory upload. #4012

  • Ensure there are no advisories with the same id in a repo version.

    In case where there are two advisories with the same id, either one of them is chosen, or they are merged, or there is an error raised if there is no way to resolve advisory conflict. #4295

  • No duplicated content can be present in a repository version. #4898

  • Added sync and publish support for comps.xml types. #5495

  • Add/remove RPMs when a repo's modulemd gets added/removed #5526

  • Make repositories "typed". Repositories now live at a detail endpoint. Sync is performed by POSTing to {repo_href}/sync/ remote={remote_href}. #5625

  • Adding sub_repo field to RpmRepository #5627

Bugfixes

  • Fix publication for sub repos #5630
  • Fix ruby bindings for UpdateRecord. #5650
  • Fix sync of a repo which contains modules and advisories. #5652
  • Fix 404 when repo remote URL is without trailing slash. #5655
  • Check that sections exist before parsing them. #5669
  • Stopping to save JSONFields as String. #5671
  • Handling missing trailing slashes on kickstart tree fetching #5677
  • Not require ref_id and title for UpdateReference #5692
  • Refactor treeinfo handling and fix publication for kickstarts #5729

Deprecations and Removals

  • Sync is no longer available at the {remote_href}/sync/ repository={repo_href} endpoint. Instead, use POST {repo_href}/sync/ remote={remote_href}.

    Creating / listing / editing / deleting RPM repositories is now performed on /pulp/api/v3/rpm/rpm/ instead of /pulp/api/v3/repositories/. Only RPM content can be present in a RPM repository, and only a RPM repository can hold RPM content. #5625

  • Remove plugin managed repos #5627

  • Rename endpoints for content to be in plural form consistently

    Endpoints removed -> added:

    /pulp/api/v3/content/rpm/modulemd/ -> /pulp/api/v3/content/rpm/modulemds/ /pulp/api/v3/content/rpm/packagecategory/ -> /pulp/api/v3/content/rpm/packagecategories/ /pulp/api/v3/content/rpm/packageenvironment/ -> /pulp/api/v3/content/rpm/packageenvironments/ /pulp/api/v3/content/rpm/packagegroup/ -> /pulp/api/v3/content/rpm/packagegroups/ #5679

  • Rename module-defaults content endpoint for consistency

    Endpoints removed -> added:

    /pulp/api/v3/content/rpm/modulemd-defaults/ -> /pulp/api/v3/content/rpm/modulemd_defaults/ #5680

  • Remove /pulp/api/v3/rpm/copy/ endpoint

    Removed the /pulp/api/v3/rpm/copy/ endpoint. To copy all content now with typed repos, use the modify endpoint on a repository. #5681

Misc


3.0.0b7 (2019-10-16)

Features

  • Convert all the TextFields which store JSON content into Django JSONFields. #5215

Improved Documentation

  • Change the prefix of Pulp services from pulp-* to pulpcore-* #4554
  • Docs update to use pulp_use_system_wide_pkgs. #5488

Deprecations and Removals

  • Change _id, _created, _last_updated, _href to pulp_id, pulp_created, pulp_last_updated, pulp_href #5457
  • Removing repository from Addon/Variant serializers. #5516
  • Moved endpoints for distribution trees and repo metadata files to /pulp/api/v3/content/rpm/distribution_trees/ and /pulp/api/v3/content/rpm/repo_metadata_files/ respectively. #5535
  • Remove "_" from _versions_href, _latest_version_href #5548

3.0.0b6 (2019-09-30)

Features

  • Add upload functionality to the rpm contents endpoints. #5453
  • Synchronize and publish modular content. #5493

Bugfixes

  • Add url prefix to plugin custom urls. #5330

Deprecations and Removals

  • Removing pulp/api/v3/rpm/upload/ #5453

Misc


3.0.0b5 (2019-09-17)

Features

  • Setting code on ProgressBar. #5184
  • Sync and Publish kickstart trees. #5206
  • Sync and Publish custom/unknown repository metadata. #5432

Bugfixes

  • Use the field relative_path instead of filename in the API calls while creating a content from an artifact #4987
  • Fixing sync task failure. #5285

Misc


3.0.0b4 (2019-07-03)

Features

  • Add total counts to the sync progress report. #4503
  • Greatly speed up publishing of a repository. #4591
  • Add ability to copy content between repositories, content type(s) can be specified. #4716
  • Renamed Errata/Update content to Advisory to better match the terminology of the RPM/DNF ecosystem. #4902
  • Python bindings are now published nightly and with each release as pulp-rpm-client. Also Ruby bindings are published similarly to rubygems.org as pulp_rpm_client. #4960
  • Override the Remote's serializer to allow policy='on_demand' and policy='streamed'. #5065

Bugfixes

  • Require relative_path at the content unit creation time. #4835
  • Fix migraitons failure by making models compatible with MariaDB. #4909
  • Fix unique index length issue for MariaDB. #4916

Improved Documentation

  • Switch to using towncrier for better release notes. #4875
  • Add a docs page about the Python and Ruby bindings. #4960

Misc