Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.10, 3.9, 3.8, 3-bullseye, 3.10-bullseye, 3.9-bullseye, 3.8-bullseye, 3-buster, 3.10-buster, 3.9-buster, 3.8-buster
ARG VARIANT=3.8
# [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.10, 3-bullseye, 3.10-bullseye, 3-buster, 3.10-buster
ARG VARIANT=3.10
FROM mcr.microsoft.com/vscode/devcontainers/python:${VARIANT}

# [Choice] Node.js version: none, lts/*, 16, 14, 12, 10
Expand All @@ -21,8 +21,8 @@ RUN git clone --depth=1 https://github.com/pyenv/pyenv.git .pyenv
ENV PYENV_ROOT="/home/vscode/.pyenv"
ENV PATH="$PYENV_ROOT/shims:$PYENV_ROOT/bin:$PATH"

RUN pyenv install 3.8 3.9 3.10 3.11 3.12 3.13
RUN pyenv local 3.8 3.9 3.10 3.11 3.12 3.13
RUN pyenv install 3.10 3.11 3.12 3.13
RUN pyenv local 3.10 3.11 3.12 3.13
RUN pyenv global ${VARIANT}

# Set up pyenv-virtualenv
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"dockerfile": "Dockerfile",
"context": "..",
"args": {
// Update 'VARIANT' to pick a Python version: 3, 3.13, 3.12, 3.11, 3.10, 3.9, 3.8
// Update 'VARIANT' to pick a Python version: 3, 3.13, 3.12, 3.11, 3.10
// Append -bullseye or -buster to pin to an OS version.
// Use -bullseye variants on local on arm64/Apple Silicon.
"VARIANT": "3.10",
Expand Down
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@

## Unreleased (v7.0.0)
* (Major): Python 3.10 or newer is required. Support for Python 3.8 and 3.9 has been dropped.
* (Major): `UnleashClient` and `AsyncUnleashClient` take their settings as option groups: `identity=IdentityOptions(...)`, `http=HttpOptions(...)`, `mode=PollingOptions(...)` or `mode=StreamingOptions()`, and `metrics=MetricsOptions(...)`. Every argument after `url` and `app_name` is keyword-only. `ExperimentalMode` has been removed. See the [v7 migration guide](./v7_MIGRATION_GUIDE.md).
* (Major): Settings can no longer be changed on an existing client. The `unleash_*` settings properties and the `strategy_mapping` and `connector_mode` properties have been removed, together with their setters.
* (Major): The API token is passed as `api_key="<API token>"`. An `Authorization` header in `HttpOptions.headers` raises `ValueError`.
* (Major): The deprecated `environment` setting has been removed. The `environment` field of the evaluation context and the impact metrics `environment` label come from the API token, or are `"default"` when the token doesn't name one.
* (Major): Upgraded to yggdrasil-engine 3, new engine built with PyO3 for better performance.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

* (Minor): New `FETCH_COMPLETED` event, emitted after every feature fetch with how it ended: `CHANGED`, `NOT_CHANGED`, `UNAUTHORIZED`, `RATE_LIMITED`, `UNAVAILABLE` or `INVALID_RESPONSE`.

## v6.9.1
Expand Down
4 changes: 2 additions & 2 deletions UnleashClient/_payloads.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from platform import python_implementation, python_version
from typing import Any, Dict, Optional

import yggdrasil_engine
from yggdrasil_engine.engine import UnleashEngine

from UnleashClient.config import UnleashConfig
from UnleashClient.constants import CLIENT_SPEC_VERSION, SDK_NAME, SDK_VERSION
Expand All @@ -17,7 +17,7 @@ def _client_metadata(config: UnleashConfig) -> Dict[str, Any]:
"connectionId": config.connection_id,
"platformName": python_implementation(),
"platformVersion": python_version(),
"yggdrasilVersion": yggdrasil_engine.__yggdrasil_core_version__,
"yggdrasilVersion": UnleashEngine.get_core_version(),
"specVersion": CLIENT_SPEC_VERSION,
}
if config.identity.sdk_flavor:
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ dependencies=[
"importlib_metadata",
"python-dateutil",
"semver < 4.0.0",
"yggdrasil-engine >= 2.0.0, < 3.0.0",
"yggdrasil-engine >= 3.0.0a1, < 4.0.0",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"yggdrasil-engine >= 3.0.0a1, < 4.0.0",
"yggdrasil-engine >= 3.0.0, < 4.0.0",

Is it necessary to make the alpha the limit of the set?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so far yes, because i have not published the 3.0.0 yet, will bump the version when it is on pypi

"launchdarkly-eventsource",
]

Expand Down
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ mmhash3
python-dateutil
requests
semver
yggdrasil-engine==2.0.0
yggdrasil-engine==3.0.0a1
launchdarkly-eventsource
aiohttp

Expand Down
Loading