From ab62f3e1c5a739bc65fc4923e9e088c9d86c8c17 Mon Sep 17 00:00:00 2001 From: Latent Date: Thu, 28 Nov 2024 16:11:57 -0500 Subject: [PATCH 1/3] feature(telemetry): new optional `api_key` feature(telemetry): new optional `custom_api_key` changelog better change log --- CHANGELOG.md | 2 ++ src/ploomber_core/telemetry/telemetry.py | 4 ++-- tests/telemetry/test_telemetry.py | 8 +++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e443306..20548ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## 0.2.26dev +* [Feature] New optional custom telemetry `api_key` + ## 0.2.25 (2024-02-01) * [Feature] Updates cloud message diff --git a/src/ploomber_core/telemetry/telemetry.py b/src/ploomber_core/telemetry/telemetry.py index d109fb4..72d3f95 100644 --- a/src/ploomber_core/telemetry/telemetry.py +++ b/src/ploomber_core/telemetry/telemetry.py @@ -420,12 +420,12 @@ def __init__(self, api_key, package_name, version, *, print_cloud_message=True): self.print_cloud_message = print_cloud_message @classmethod - def from_package(cls, package_name, *, print_cloud_message=True): + def from_package(cls, package_name, *, print_cloud_message=True, api_key=None): """ Initialize a Telemetry client with the default configuration for a package with the given name """ - default_api_key = "phc_P9SpSeypyPwxrMdFn2edOOEooQioF2axppyEeDwtMSP" + default_api_key = api_key or "phc_P9SpSeypyPwxrMdFn2edOOEooQioF2axppyEeDwtMSP" version = get_package_version(package_name) return cls( api_key=default_api_key, diff --git a/tests/telemetry/test_telemetry.py b/tests/telemetry/test_telemetry.py index 68fcdcf..ca577d2 100644 --- a/tests/telemetry/test_telemetry.py +++ b/tests/telemetry/test_telemetry.py @@ -1080,11 +1080,17 @@ def test_check_cloud(tmp_directory, monkeypatch, capsys, last_cloud_check): def test_from_package(): _telemetry = telemetry.Telemetry.from_package("ploomber-core") - assert _telemetry.api_key + assert _telemetry.api_key == "phc_P9SpSeypyPwxrMdFn2edOOEooQioF2axppyEeDwtMSP" assert _telemetry.version assert _telemetry.package_name == "ploomber-core" +def test_from_package_custom_api_key(): + _telemetry = telemetry.Telemetry.from_package("ploomber-core", api_key="test_custom_key") + + assert _telemetry.api_key == "test_custom_key" + + def test_runs_check_cloud(monkeypatch): mock = Mock() monkeypatch.setattr(telemetry, "check_cloud", mock) From 77cb58ab20629704d5ab5135078dce18507453aa Mon Sep 17 00:00:00 2001 From: Latent Date: Fri, 29 Nov 2024 13:56:28 -0500 Subject: [PATCH 2/3] ci: Python 3.7 version is not available for Ubuntu 24.04 x64 - End of Life (EOL) last year --- .github/workflows/ci.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 8769868..de76528 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -6,7 +6,7 @@ jobs: test: strategy: matrix: - python-version: [3.7, 3.8, 3.9, '3.10', '3.11'] + python-version: [3.8, 3.9, '3.10', '3.11'] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} @@ -87,4 +87,4 @@ jobs: TAG: ${{ github.ref_name }} run: | echo "tag is $TAG" - pkgmt release $TAG --production --yes \ No newline at end of file + pkgmt release $TAG --production --yes From af4bda289aa05bf7aab650e97f376ad05f54004f Mon Sep 17 00:00:00 2001 From: Latent Date: Fri, 29 Nov 2024 13:58:02 -0500 Subject: [PATCH 3/3] style: format code --- tests/telemetry/test_telemetry.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/telemetry/test_telemetry.py b/tests/telemetry/test_telemetry.py index ca577d2..f063556 100644 --- a/tests/telemetry/test_telemetry.py +++ b/tests/telemetry/test_telemetry.py @@ -1086,7 +1086,9 @@ def test_from_package(): def test_from_package_custom_api_key(): - _telemetry = telemetry.Telemetry.from_package("ploomber-core", api_key="test_custom_key") + _telemetry = telemetry.Telemetry.from_package( + "ploomber-core", api_key="test_custom_key" + ) assert _telemetry.api_key == "test_custom_key"