From 139f12cc13eddc7d162db381542a8f445c4015c3 Mon Sep 17 00:00:00 2001 From: Jack Keene <87364579+Jack-Keene@users.noreply.github.com> Date: Thu, 16 Feb 2023 10:20:22 +0000 Subject: [PATCH 1/5] Add deprecation warnings for V1 changes (close #315) PR #316 * Add Celery deprecation warning * Add Redis deprecation warning * Add ecommerce event deprecation warnings --- snowplow_tracker/celery/celery_emitter.py | 7 ++++++- snowplow_tracker/redis/redis_emitter.py | 6 ++++++ snowplow_tracker/tracker.py | 20 ++++++++++++++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/snowplow_tracker/celery/celery_emitter.py b/snowplow_tracker/celery/celery_emitter.py index bb1a1b96..c92712e3 100644 --- a/snowplow_tracker/celery/celery_emitter.py +++ b/snowplow_tracker/celery/celery_emitter.py @@ -17,6 +17,7 @@ import logging from typing import Any, Optional +from warnings import warn from snowplow_tracker.emitters import Emitter from snowplow_tracker.typing import HttpProtocol, Method @@ -41,7 +42,6 @@ class CeleryEmitter(Emitter): """ if _CELERY_OPT: - celery_app = None def __init__( @@ -53,6 +53,11 @@ def __init__( batch_size: Optional[int] = None, byte_limit: Optional[int] = None, ) -> None: + warn( + "The Celery Emitter will be deprecated in future versions.", + DeprecationWarning, + stacklevel=2, + ) super(CeleryEmitter, self).__init__( endpoint, protocol, port, method, batch_size, None, None, byte_limit ) diff --git a/snowplow_tracker/redis/redis_emitter.py b/snowplow_tracker/redis/redis_emitter.py index bb4cf5f4..86eee6b9 100644 --- a/snowplow_tracker/redis/redis_emitter.py +++ b/snowplow_tracker/redis/redis_emitter.py @@ -18,6 +18,7 @@ import json import logging from typing import Any, Optional +from warnings import warn from snowplow_tracker.typing import PayloadDict, RedisProtocol _REDIS_OPT = True @@ -48,6 +49,11 @@ def __init__( :param key: The Redis key for the list of events :type key: string """ + warn( + "The Redis Emitter will be deprecated in future versions.", + DeprecationWarning, + stacklevel=2, + ) if rdb is None: rdb = redis.StrictRedis() diff --git a/snowplow_tracker/tracker.py b/snowplow_tracker/tracker.py index 4f9d9047..20882a4f 100644 --- a/snowplow_tracker/tracker.py +++ b/snowplow_tracker/tracker.py @@ -345,6 +345,11 @@ def track_add_to_cart( :type event_subject: subject | None :rtype: tracker """ + warn( + "track_add_to_cart will be deprecated in future versions.", + DeprecationWarning, + stacklevel=2, + ) non_empty_string(sku) properties = {} @@ -400,6 +405,11 @@ def track_remove_from_cart( :type event_subject: subject | None :rtype: tracker """ + warn( + "track_remove_from_cart will be deprecated in future versions.", + DeprecationWarning, + stacklevel=2, + ) non_empty_string(sku) properties = {} @@ -606,6 +616,11 @@ def track_ecommerce_transaction_item( :type event_subject: subject | None :rtype: tracker """ + warn( + "track_ecommerce_transaction_item will be deprecated in future versions.", + DeprecationWarning, + stacklevel=2, + ) non_empty_string(order_id) non_empty_string(sku) @@ -666,6 +681,11 @@ def track_ecommerce_transaction( :type event_subject: subject | None :rtype: tracker """ + warn( + "track_ecommerce_transaction will be deprecated in future versions.", + DeprecationWarning, + stacklevel=2, + ) non_empty_string(order_id) pb = payload.Payload() From fb7aa1cde3d91d017a3a684d903054dfadad7a2b Mon Sep 17 00:00:00 2001 From: Jack Keene <87364579+Jack-Keene@users.noreply.github.com> Date: Mon, 27 Feb 2023 14:14:55 +0000 Subject: [PATCH 2/5] Update GH actions to use Node16 (close #317) PR #318 * Update GH actions to Node16 --- .github/workflows/cd.yml | 18 +++++++++--------- .github/workflows/ci.yml | 4 ++-- .github/workflows/documentation.yml | 2 +- .github/workflows/snyk.yml | 4 ++-- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index c028f253..5e95d341 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -13,10 +13,10 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 - name: Get tag and tracker versions id: version @@ -40,10 +40,10 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} @@ -57,7 +57,7 @@ jobs: python setup.py sdist bdist_wheel - name: Upload artifacts - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: distfiles_${{ github.run_id }} path: dist @@ -68,15 +68,15 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup Python - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: '3.x' - name: Download artifacts - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: distfiles_${{ github.run_id }} path: ${{ github.workspace }}/dist @@ -100,7 +100,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Release uses: softprops/action-gh-release@v1 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e5d5fb09..346c62f8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,10 +28,10 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index eefd7831..c50ac5e2 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -8,7 +8,7 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 - uses: ammaraskar/sphinx-action@master with: docs-folder: "docs/" diff --git a/.github/workflows/snyk.yml b/.github/workflows/snyk.yml index 7e86a6ba..b2e36c27 100644 --- a/.github/workflows/snyk.yml +++ b/.github/workflows/snyk.yml @@ -9,11 +9,11 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: snyk/actions/setup@master - name: Set up Python 3.8 - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: 3.8 - name: Install dependencies From b2993c784fd0b77bc417d5c9684f15a0446b538c Mon Sep 17 00:00:00 2001 From: Jack Keene <87364579+Jack-Keene@users.noreply.github.com> Date: Tue, 7 Mar 2023 10:42:08 +0000 Subject: [PATCH 3/5] Add event store to snowplow interface (close #320) (#321) - Add event store to snowplow interface --- snowplow_tracker/snowplow.py | 1 + 1 file changed, 1 insertion(+) diff --git a/snowplow_tracker/snowplow.py b/snowplow_tracker/snowplow.py index 92e96461..b967cdec 100644 --- a/snowplow_tracker/snowplow.py +++ b/snowplow_tracker/snowplow.py @@ -80,6 +80,7 @@ def create_tracker( byte_limit=emitter_config.byte_limit, request_timeout=emitter_config.request_timeout, custom_retry_codes=emitter_config.custom_retry_codes, + event_store=emitter_config.event_store, ) tracker = Tracker( From c5a916687f4c43ad811973af2a8cc77020c9164e Mon Sep 17 00:00:00 2001 From: Jack-Keene Date: Tue, 21 Mar 2023 15:53:11 +0000 Subject: [PATCH 4/5] Add missing parameters to async emitter (close #323) --- snowplow_tracker/emitters.py | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/snowplow_tracker/emitters.py b/snowplow_tracker/emitters.py index 760fc398..19151885 100644 --- a/snowplow_tracker/emitters.py +++ b/snowplow_tracker/emitters.py @@ -439,8 +439,10 @@ def __init__( on_failure: Optional[FailureCallback] = None, thread_count: int = 1, byte_limit: Optional[int] = None, + request_timeout: Optional[Union[float, Tuple[float, float]]] = None, max_retry_delay_seconds: int = 60, buffer_capacity: int = None, + custom_retry_codes: Dict[int, bool] = {}, event_store: Optional[EventStore] = None, ) -> None: """ @@ -476,17 +478,19 @@ def __init__( :type event_store: EventStore """ super(AsyncEmitter, self).__init__( - endpoint, - protocol, - port, - method, - batch_size, - on_success, - on_failure, - byte_limit, - max_retry_delay_seconds, - buffer_capacity, - event_store, + endpoint=endpoint, + protocol=protocol, + port=port, + method=method, + batch_size=batch_size, + on_success=on_success, + on_failure=on_failure, + byte_limit=byte_limit, + request_timeout=request_timeout, + max_retry_delay_seconds=max_retry_delay_seconds, + buffer_capacity=buffer_capacity, + custom_retry_codes=custom_retry_codes, + event_store=event_store, ) self.queue = Queue() for i in range(thread_count): From b04e35a301900464cc2246e886a4a58c2eea7f6e Mon Sep 17 00:00:00 2001 From: Jack-Keene Date: Tue, 21 Mar 2023 16:17:53 +0000 Subject: [PATCH 5/5] Prepare for release 0.14.0 --- CHANGES.txt | 7 +++++++ docs/source/conf.py | 2 +- setup.py | 2 +- snowplow_tracker/_version.py | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index d6e2f6be..9a9b82b9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,10 @@ +Version 0.14.0 (2023-03-21) +--------------------------- +Adds deprecation warnings for V1 changes (#315) +Update GH actions to use Node16 (#317) +Adds event store parameter to Snowplow interface (#320) +Adds missing parameters to async emitter (#323) + Version 0.13.0 (2023-01-24) --------------------------- Adds Snowplow Interface (#295) diff --git a/docs/source/conf.py b/docs/source/conf.py index 9edb36f8..59bfe9df 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -28,7 +28,7 @@ author = 'Alex Dean, Paul Boocock, Matus Tomlein, Jack Keene' # The full version, including alpha/beta/rc tags -release = "0.13" +release = "0.14" # -- General configuration --------------------------------------------------- diff --git a/setup.py b/setup.py index 2ae76007..b7968c9a 100644 --- a/setup.py +++ b/setup.py @@ -33,7 +33,7 @@ setup( name="snowplow-tracker", - version="0.13.0", + version="0.14.0", author=authors_str, author_email=authors_email_str, packages=[ diff --git a/snowplow_tracker/_version.py b/snowplow_tracker/_version.py index aacd565c..d9f39c84 100644 --- a/snowplow_tracker/_version.py +++ b/snowplow_tracker/_version.py @@ -15,6 +15,6 @@ # language governing permissions and limitations there under. # """ -__version_info__ = (0, 13, 0) +__version_info__ = (0, 14, 0) __version__ = ".".join(str(x) for x in __version_info__) __build_version__ = __version__ + ""