Changelog
3.0.0 (2023-09-05)
Features
Added
version
,origin
,label
, anddescription
fields to Releases. These fields can be set when creating new Releases via the API. Going forward, they will also be synced from upstream release files if present. #449Specify and remember the Signing Services we want to use for each Repo / Release. #641
Added API filters to limit results by related pulp_deb content types. #646
Added the
publish_upstream_release_fields
field to the repository model. To avoid a breaking change in publication behaviour, existing repositories are populated with the setting set toFalse
, while any newly created repostiroies will default toTrue
. Whatever the value on the repository, it can be overriden when creating a new publication. #793
Bugfixes
Fixed KeyError during publish if package has architecture that’s not supported in the Packages file. Instead, a warning message will be logged. #777
Fixed an async error preventing synchronization with
sync_installer
set toTrue
. #797Fixed content creating code triggered in rare edge cases when unapplying DB migration 0021. #806
Fixed a bug where structured package upload was only working as intended for the first package uploaded to each repository. Also added logging and ensured structure content is added to the creating tasks
created_resources
list. #807
Improved Documentation
Added
pulp-cli-deb
installation instructions. #598Replaced references to the Pulp Ansible installer with references to the Pulp OCI images. #779
Added workflow documentation for creating and using signing services. #867
Completely reworked the “Feature Overview” and “Workflows” docs with an emphasise on Pulp CLI and structured content. #886
Removals
Since release file fields including “Label” and “Version”, are now synced from upstream repositories, we have dropped the PUBLISH_RELEASE_FILE_LABEL and PUBLISH_RELEASE_FILE_VERSION settings. This removes the ability to publish Pulp internal “Label” and “Version” values that never made much sense, and had been disabled by default since at least pulp_deb 2.18.0. #449
The codename and suite fields are removed from the ReleaseComponent and ReleaseArchitecture models and all associated filters and viewsets. #599
The
pulp/api/v3/publications/deb/apt/
API endpoint, used to require users to explicitly set at least one ofsimple
orstructured
toTrue
on the POST. The new behavior is to default tostructured=True
andsimple=False
. #858
Misc
This change includes a large DB migration to drop ‘codename’ and ‘suite’ from the uniqueness constraints of all structure content. The migration will merge any resulting collisions and alter all records with a foreign key relation to the so eliminated content to point at the merge result instead. #599
Added test cases for advanced copy task. #758
Add tests for content filters, and make filters return empty list if Content not in RepoVersion instead of raising ValidationError. #780
Added better scoping for the pytest fixtures. #790
Removed the
pulp-smash
test dependency. #796Converted the publish tests to use the pytest framework. #828
Converted the import/export tests to use the pytest framework. #846
2.21.2 (2023-09-05)
Bugfixes
Fixed advanced copy due to pulpcore deprecations. #869
Misc
Fixed the deb/copy/ API path for scenarios that modify the API root. #879
2.21.1 (2023-07-20)
Bugfixes
Fixed KeyError during publish if package has architecture that’s not supported in the Packages file. Instead, a warning message will be logged. #777
Fixed an async error preventing synchronization with
sync_installer
set toTrue
. #797Fixed content creating code triggered in rare edge cases when unapplying DB migration 0021. #806
Fixed a bug where structured package upload was only working as intended for the first package uploaded to each repository. Also added logging and ensured structure content is added to the creating tasks
created_resources
list. #807
2.21.0 (2023-05-22)
Features
The upload of content has been changed to accept already existing debian packages. This allows multiple users to own identical files. #592
Sign the metadata for all releases in a repo concurrently, greatly speeding up the publish task in environments where signing is slow. #682
Add new parameters component and distribution to the package upload endpoint to enable a structured package upload. #743
Declare and require at least pulpcore/3.25 compatibility. #770
Bugfixes
Improve the pulp_deb “No valid Release file found” error message for gpg validation fail. #399
Fixed a bug where architecture “all” packages were missing when syncing Debian 11 style repositories. #612
Fixed a bug where packages were only showing up in one Packages index file if they belonged to two or more releases. #674
Fixed a bug that prevented orphan cleanup due to protected foreign keys. #690
Fixed bug where PackageReleaseComponents were not being automatically removed when dupes were added to a repo version even though the duplicate Packages they referenced were being removed. #705
Improved Documentation
Removals
Package and generic content API endpoints no longer return errors when entities already exist. Instead they return the existing entities as if they had just been created. #592
Replaced the
release
field with the tripledistribution
,codename
,suite
on the/pulp/pulp/api/v3/content/deb/release_components/
and/pulp/pulp/api/v3/content/deb/release_architectures/
API endpoints. As a result, the available filters where also adjusted for the new fields. #748
Misc
2.20.4 (2023-09-05)
Bugfixes
Improve the pulp_deb “No valid Release file found” error message for gpg validation fail. #399
Misc
Fixed the deb/copy/ API path for scenarios that modify the API root. #879
2.20.3 (2023-07-20)
Bugfixes
Improved Documentation
Fixed infinite loading when searching for specific terms. #765
2.20.2 (2023-04-26)
Bugfixes
Fixed a bug that prevented orphan cleanup due to protected foreign keys. #690
Misc
Add precompiled test data for pytest to use in functional tests #395
2.20.1 (2022-12-07)
Bugfixes
2.20.0 (2022-10-19)
Features
Bugfixes
Fixed handling of download URLs containing special characters in the path part. #571
Fixed several serializer bugs preventing the manual creation of structure content of type
ReleaseArchitecture
,ReleaseComponent
, andPackageReleaseComponent
. #575Added handling for the special case when publishing an upstream repo containing a distribution named “default” using both simple and structured publish modes. #601
Added a better error message when users try to create a repository version containing duplicate APT distributions. #603
Fixed a bug preventing the synchronization of repos referencing a single package from multiple package indices. #632
Improved Documentation
Misc
Add a proper local SigningService setup for tests using pytest. #402
2.19.3 (2022-12-07)
Bugfixes
2.19.2 (2022-10-18)
Bugfixes
Improved Documentation
Added workflow docs on manually creating structured repos. #586
2.19.1 (2022-07-25)
Bugfixes
2.19.0 (2022-06-23)
Bugfixes
Misc
Converted CharField to TextField for pulp_deb models. #532
2.18.3 (2022-12-07)
Bugfixes
2.18.2 (2022-10-18)
Bugfixes
Added a better error message when users try to create a repository version containing duplicate APT distributions. #603
2.18.1 (2022-08-16)
Bugfixes
Fixed handling of download URLs containing special characters in the path part. #571
Fixed several serializer bugs preventing the manual creation of structure content of type
ReleaseArchitecture
,ReleaseComponent
, andPackageReleaseComponent
. #575Added handling for the special case when publishing an upstream repo containing a distribution named “default” using both simple and structured publish modes. #601
2.18.0 (2022-04-21)
Features
Added experimental advanced copy API with support for structured copying. #396
Bugfixes
Made the sync workflow robust with respect to upstream package indices containing packages with a wrong architecture. #422
Changed the release file publication behaviour of the APT publisher to prevent a design clash with apt-secure. You may set PUBLISH_RELEASE_FILE_LABEL and PUBLISH_RELEASE_FILE_VERSION to True to revert to the old behaviour. #443
Misc
2.17.2 (2022-10-18)
Bugfixes
Fixed handling of download URLs containing special characters in the path part. #571
Fixed several serializer bugs preventing the manual creation of structure content of type
ReleaseArchitecture
,ReleaseComponent
, andPackageReleaseComponent
. #575Added handling for the special case when publishing an upstream repo containing a distribution named “default” using both simple and structured publish modes. #601
Added a better error message when users try to create a repository version containing duplicate APT distributions. #603
2.17.1 (2022-04-21)
Bugfixes
Made the sync workflow robust with respect to upstream package indices containing packages with a wrong architecture. #422
Changed the release file publication behaviour of the APT publisher to prevent a design clash with apt-secure. You may set PUBLISH_RELEASE_FILE_LABEL and PUBLISH_RELEASE_FILE_VERSION to True to revert to the old behaviour. #443
Misc
2.17.0 (2022-01-11)
Features
Users can now use the FORCE_IGNORE_MISSING_PACKAGE_INDICES setting to define the corresponding behaviour for all remotes. #9555
Bugfixes
Fixed mirrored metadata handling when creating a new repository version. #8756
Fixed a bug causing package validation to fail, when the package paragraph contains keys without values. #8770
Fixed a bug causing publications to reference any
AptReleaseSigningService
via a full URL instead of just apulp_href
. #9563
2.16.3 (2022-10-18)
Bugfixes
Fixed handling of download URLs containing special characters in the path part. #571
Fixed several serializer bugs preventing the manual creation of structure content of type
ReleaseArchitecture
,ReleaseComponent
, andPackageReleaseComponent
. #575Added handling for the special case when publishing an upstream repo containing a distribution named “default” using both simple and structured publish modes. #601
Added a better error message when users try to create a repository version containing duplicate APT distributions. #603
2.16.2 (2022-04-21)
Features
Users can now use the FORCE_IGNORE_MISSING_PACKAGE_INDICES setting to define the corresponding behaviour for all remotes. #9555
Bugfixes
Made the sync workflow robust with respect to upstream package indices containing packages with a wrong architecture. #422
Changed the release file publication behaviour of the APT publisher to prevent a design clash with apt-secure. You may set PUBLISH_RELEASE_FILE_LABEL and PUBLISH_RELEASE_FILE_VERSION to True to revert to the old behaviour. #443
Misc
2.16.1 (2022-01-13)
Bugfixes
2.16.0 (2021-10-28)
Bugfixes
Misc
Amended dispatch arguments deprecated by pulpcore in anticipation of removal. #9349
2.15.1 (2021-10-27)
Misc
Amended dispatch arguments deprecated by pulpcore in anticipation of removal. (backported from #9349) #9505
2.15.0 (2021-08-26)
Features
Add custom_fields to hold non-standard PackageIndex fields #8232
Bugfixes
The plugins async pipeline was made Django 3 compatible in anticipation of pulpcore 3.15. #9299
Improved Documentation
Reworked the plugin installation docs to be helpful to new users. #9186
Misc
2.14.1 (2021-07-29)
Compatible with: pulpcore>=3.14,<3.16
Misc
2.14.0 (2021-07-22)
Warning
This version was released in a broken state and has been yanked from pypi. The issues are addressed in the 2.14.1 release.
Bugfixes
Removals
Dropped support for Python 3.6 and 3.7. pulp_deb now supports Python 3.8+. #9036
Misc
If remotes specify components or architectures that do not exist in the synchronized Release file, a warning is now logged. #6948
2.13.1 (2021-08-02)
Compatible with: pulpcore>=3.12,<3.15
Bugfixes
Add missing “Size” field in publications (backported from #8506) #9167
2.13.0 (2021-05-27)
Compatible with: pulpcore>=3.12,<3.15
Bugfixes
2.12.1 (2021-05-25)
Compatible with: pulpcore>=3.12,<3.14
Bugfixes
Completely disabled translation file synchronization to prevent sync failures. (Backported from https://pulp.plan.io/issues/8671) #8735
2.12.0 (2021-05-10)
Compatible with: pulpcore>=3.12,<3.14
Features
APT repositories may now reference an APT remote, that will automatically be used for syncs. #8520
Bugfixes
Fixed the relative paths for translation files, which were causing sync failures and missing translation files. #8410
Misc
Migrated to new Distribution model for pulpcore 3.13 compatibility. #8682
2.11.2 (2021-05-25)
Compatible with: pulpcore>=3.10,<3.13
Bugfixes
Completely disabled translation file synchronization to prevent sync failures. (Backported from https://pulp.plan.io/issues/8671) #8736
2.11.1 (2021-04-14)
Compatible with: pulpcore>=3.10,<3.13
Bugfixes
Fixed the relative paths for translation files, which were causing sync failures and missing translation files. (Backported from https://pulp.plan.io/issues/8410) #8556
2.11.0 (2021-03-30)
Compatible with: pulpcore>=3.10,<3.13
No significant changes.
2.10.2 (2021-05-25)
Compatible with: pulpcore>=3.10,<3.12
Bugfixes
Completely disabled translation file synchronization to prevent sync failures. (Backported from https://pulp.plan.io/issues/8671) #8737
2.10.1 (2021-04-14)
Compatible with: pulpcore>=3.10,<3.12
Bugfixes
Fixed the relative paths for translation files, which were causing sync failures and missing translation files. (Backported from https://pulp.plan.io/issues/8410) #8558
2.10.0 (2021-03-17)
Compatible with: pulpcore>=3.10,<3.12
Bugfixes
Ensured the plugin respects the ALLOWED_CONTENT_CHECKSUMS setting. #8388
Improved Documentation
The plugin documentation was moved from https://pulp-deb.readthedocs.io/ to https://docs.pulpproject.org/pulp_deb/. #8113
Added workflow documentation on checksum handling configuration. #8388
Removals
Update AptReleaseSigningService validation to respect new base class requirements. #8307
2.9.3 (2021-11-16)
Misc
Added an upper bound of
<0.1.42
to thepython-debian
dependency to prevent breakage against python<3.7
.
2.9.2 (2021-05-25)
Compatible with: pulpcore>=3.7,<3.11
Bugfixes
Completely disabled translation file synchronization to prevent sync failures. (Backported from https://pulp.plan.io/issues/8671) #8738
2.9.1 (2021-04-14)
Compatible with: pulpcore>=3.7,<3.11
Bugfixes
Fixed the relative paths for translation files, which were causing sync failures and missing translation files. (Backported from https://pulp.plan.io/issues/8410) #8559
2.9.0 (2021-01-14)
Compatible with: pulpcore>=3.7,<3.11
2.8.0 (2020-11-23)
Compatible with: pulpcore>=3.7,<3.10
Features
Added an
ignore_missing_package_indices
flag to remotes which users may set to allow the synchronization of repositories with missing declared package indices. #7467Added the capability to synchronize repositories using “flat repository format”. #7502
Added ability to handle upstream repositories without a “Codename” field. #7886
2.7.0 (2020-09-29)
Compatible with: pulpcore>=3.7,<3.9
2.6.1 (2020-09-03)
Misc
Dropped the beta status of the plugin. The plugin is now GA! #6999
2.6.0b1 (2020-09-01)
Features
Bugfixes
Optional version strings are now stripped from the sourcename before using it for package file paths. #7153
Fixed several field names in the to deb822 translation dict. #7190
Section
andPriority
are no longer required for package indecies. #7236Fixed content creation for fields containing more than 255 characters by using
TextField
instead ofCharField
for all package model fields. #7257Fixed a bug where component path prefixes were added to package index paths twice instead of once when using structured publish. #7295
Improved Documentation
Added a note on per repository package uniqueness constraints to the feature overview documentation. #6429
Fixed several URLs pointing at various API documentation. #6506
Reworked the workflow documentation and added flow charts. #7148
Completely refactored the documentation source files. #7211
Added a high level “feature overview” documentation. #7318
Added meaningful endpoint descriptions to the REST API documentation. #7355
Misc
2.5.0b1 (2020-07-15)
Features
Added additional metadata fields to published Release files. #6907
Bugfixes
Misc
Renamed some internal models to Apt.. to keep API consistent with other plugins. #6897
2.4.0b1 (2020-06-17)
Features
The “Date” field is now added to Release files during publish. #6869
Bugfixes
2.3.0b1 (2020-04-29)
Features
Added Release file signing using signing services. #6171
Bugfixes
Improved Documentation
Documented bindings installation for the dev environment. #6396
Misc
2.2.0b1 (2020-03-03)
Features
2.0.0b4 (2020-01-14)
No significant changes.
2.0.0b3 (2019-11-14)
Features
Deprecations and Removals
Change _id, _created, _last_updated, _href to pulp_id, pulp_created, pulp_last_updated, pulp_href #5457
Remove “_” from _versions_href, _latest_version_href #5548
Removing base field: _type . #5550
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 deb repositories is now performed on /pulp/api/v3/repositories/deb/apt/ instead of /pulp/api/v3/repositories/. #5698
Bugfixes
Fix fields filter. #5543
Misc
Depend on pulpcore, directly, instead of pulpcore-plugin. #5580
2.0.0b2 (2019-10-02)
Features
Deprecations and Removals
Remove one shot uploader in favor of the combined create endpoint. #5403
Bugfixes
Change content serializers to use relative_path instead of _relative_path. #5376
Improved Documentation
Misc
2.0.0b1 (2019-09-06)
Features
Add oneshot upload functionality for deb type packages. #5391