Changelog¶
3.2.0 (2024-03-04)¶
Features¶
Added feature to serve published artifacts from previous publications for 3 days. This fulfills the apt-by-hash/acquire-by-hash spec by allowing by-hash files to be cached for a period of 3 days. #911
Added retrieve functionality for ReleaseArchitecture and ReleaseComponent content. #1010
Allow optimize with mirror mode if nothing at all has changed in the repository being synced. #1027
Bugfixes¶
Fixed repo uniqueness constraints. Duplicate packages with identical checksums are now allowed. In addition, duplicates are now also handled for the set of incoming content. #921
Fixed a bug where pulp_deb was serving unpublished content when distributing a repository that has content but no publications. #976
Fixed a bug where enabling the
APT_BY_HASH
setting did not enable the feature. #984Fixed DEBUG logging of prohibited duplicate packages. #994
Suppressed deb822’s confusing log warning about python-apt not being installed. #1019
Removals¶
The API endpoints for ReleaseArchitecture and ReleaseComponent creation will no longer return a 400
non_field_errors
if the content to be created already exists. Instead a task is triggered that will list the existing content in itscreated_resources
field. #1010
Misc¶
3.1.2 (2024-02-29)¶
Bugfixes¶
3.1.1 (2023-12-12)¶
Bugfixes¶
Fixed repo uniqueness constraints. Duplicate packages with identical checksums are now allowed. In addition, duplicates are now also handled for the set of incoming content. #921
Fixed a bug where pulp_deb was serving unpublished content when distributing a repository that has content but no publications. #976
Misc¶
Added tests that verify the download of content served by
pulp_deb
. #919
3.1.0 (2023-11-09)¶
Features¶
Add support for handling source packages. #409
Added an option to publish by-hash/ files to mitigate the Hash Sum Mismatch error in debian repos as specified here: https://wiki.debian.org/DebianRepository/Format#indices_acquisition_via_hashsums_.28by-hash.29. Use the APT_BY_HASH setting to enable this feature. #795
Fixed the
create_repositories=True
parameter for importing content. #872Add additional package name filters such as
name__contains
andname__startswith
. Check the REST docs for a complete list. #909Added extra filters linking SourcePackages to Releases and ReleaseComponents. #926
Made the plugin compatible with pulpcore 3.40.1+. #928
Bugfixes¶
3.0.2 (2024-02-29)¶
Bugfixes¶
3.0.1 (2023-12-12)¶
Features¶
Fixed the
create_repositories=True
parameter for importing content. #872
Bugfixes¶
Improved the performance of structured
/pulp/api/v3/deb/copy/
actions. #870Optimize mode can now take effect, when switching from mirrored to not mirrored mode between syncs. #903
Fixed repo uniqueness constraints. Duplicate packages with identical checksums are now allowed. In addition, duplicates are now also handled for the set of incoming content. #921
Fixed a bug where pulp_deb was serving unpublished content when distributing a repository that has content but no publications. #976
Misc¶
Added tests that verify the download of content served by
pulp_deb
. #919
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