From 67cba9d5191c5a0abb1375c59bb0bba29e42adf5 Mon Sep 17 00:00:00 2001 From: Dawn Pattison Date: Wed, 13 Sep 2023 13:25:38 -0500 Subject: [PATCH] Add Collections Skip Processing Flag (#165) * Add "skip_processing" flag underneath Collection > fides_meta for DSR processing. --- CHANGELOG.md | 23 ++++++++++++++++++++++- src/fideslang/models.py | 1 + tests/fideslang/test_models.py | 29 +++++++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5cb054b1..484762d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,20 @@ The types of changes are: - `Fixed` for any bug fixes. - `Security` in case of vulnerabilities. -## [Unreleased](https://github.com/ethyca/fideslang/compare/2.0.2...main) +## [Unreleased](https://github.com/ethyca/fideslang/compare/2.0.3...main) + + +### Changed + +- Add Collection > Fides Meta > Skip Processing Flag to skip collections in DSR processing [#165](https://github.com/ethyca/fideslang/pull/165) + + +## [2.0.3](https://github.com/ethyca/fideslang/compare/2.0.2...2.0.3) + +### Changed + +- Relax system legal basis for transfer fields [#162](https://github.com/ethyca/fideslang/pull/162) + ## [2.0.2](https://github.com/ethyca/fideslang/compare/2.0.1...2.0.2) @@ -39,6 +52,14 @@ The types of changes are: - Updated the Data Categories and Data Uses to support GVL [#144](https://github.com/ethyca/fideslang/pull/144) - Add version metadata to the default taxonomy items [#147](https://github.com/ethyca/fideslang/pull/147) + +## [1.4.6 (Hotfix)](https://github.com/ethyca/fideslang/compare/1.4.5...1.4.6) + +### Changed + +- Relax system legal basis for transfer fields [#162](https://github.com/ethyca/fideslang/pull/162) + + ## [1.4.5 (Hotfix)](https://github.com/ethyca/fideslang/compare/1.4.4...1.4.5) ### Changed diff --git a/src/fideslang/models.py b/src/fideslang/models.py index fb783f69..c1a22647 100644 --- a/src/fideslang/models.py +++ b/src/fideslang/models.py @@ -604,6 +604,7 @@ class CollectionMeta(BaseModel): """Collection-level specific annotations used for query traversal""" after: Optional[List[FidesCollectionKey]] + skip_processing: Optional[bool] = False class DatasetCollection(FidesopsMetaBackwardsCompat): diff --git a/tests/fideslang/test_models.py b/tests/fideslang/test_models.py index 43924559..81e18982 100644 --- a/tests/fideslang/test_models.py +++ b/tests/fideslang/test_models.py @@ -540,6 +540,35 @@ def test_dataset_deprecated_fields(self, deprecated_field, value) -> None: } ) + def test_dataset_collection_skip_processing(self): + collection = DatasetCollection( + name="dataset_collection_1", + data_qualifier="data_collection_data_qualifier_1", + data_categories=["dataset_collection_data_category_1"], + fields=[], + ) + assert not collection.fides_meta + + collection = DatasetCollection( + name="dataset_collection_1", + data_qualifier="data_collection_data_qualifier_1", + data_categories=["dataset_collection_data_category_1"], + fides_meta={"after": ["third_dataset.blue_collection"]}, + fields=[], + ) + + assert collection.fides_meta.skip_processing is False + + collection = DatasetCollection( + name="dataset_collection_1", + data_qualifier="data_collection_data_qualifier_1", + data_categories=["dataset_collection_data_category_1"], + fides_meta={"skip_processing": True}, + fields=[], + ) + + assert collection.fides_meta.skip_processing + class TestDataUse: def test_minimal_data_use(self):