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: 7 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
# Changelog

## [1.2.0](../../releases/tag/v1.2.0) - 2024-12-05
## [1.2.1](../../releases/tag/v1.2.1) - 2024-12-05

### Changed

- Changed `ACTOR_BUILD_TAGS` to be a comma-separated list variable

## [1.2.0](../../releases/tag/v1.2.0) - 2024-12-04

### Added

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "apify_shared"
version = "1.2.0"
version = "1.2.1"
description = "Tools and constants shared across Apify projects."
readme = "README.md"
license = { text = "Apache Software License" }
Expand Down
9 changes: 8 additions & 1 deletion src/apify_shared/consts.py
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,6 @@ class MetaOrigin(str, Enum):
# Actor env vars
ActorEnvVars.BUILD_ID,
ActorEnvVars.BUILD_NUMBER,
ActorEnvVars.BUILD_TAGS,
ActorEnvVars.DEFAULT_DATASET_ID,
ActorEnvVars.DEFAULT_KEY_VALUE_STORE_ID,
ActorEnvVars.DEFAULT_REQUEST_QUEUE_ID,
Expand Down Expand Up @@ -373,3 +372,11 @@ class MetaOrigin(str, Enum):
]

STRING_ENV_VARS: list[STRING_ENV_VARS_TYPE] = list(get_args(STRING_ENV_VARS_TYPE))

COMMA_SEPARATED_LIST_ENV_VARS_TYPE = Literal[
ActorEnvVars.BUILD_TAGS,
]

COMMA_SEPARATED_LIST_ENV_VARS: list[COMMA_SEPARATED_LIST_ENV_VARS_TYPE] = list(
get_args(COMMA_SEPARATED_LIST_ENV_VARS_TYPE)
)
20 changes: 18 additions & 2 deletions tests/unit/test_consts.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

from apify_shared.consts import (
BOOL_ENV_VARS,
COMMA_SEPARATED_LIST_ENV_VARS,
DATETIME_ENV_VARS,
FLOAT_ENV_VARS,
INTEGER_ENV_VARS,
Expand All @@ -20,14 +21,28 @@
class TestConsts:
def test_env_vars_types_unique(self: TestConsts) -> None:
"""Test that env var types don't contain any item twice."""
for env_var_type in [BOOL_ENV_VARS, DATETIME_ENV_VARS, FLOAT_ENV_VARS, INTEGER_ENV_VARS, STRING_ENV_VARS]:
for env_var_type in [
BOOL_ENV_VARS,
COMMA_SEPARATED_LIST_ENV_VARS,
DATETIME_ENV_VARS,
FLOAT_ENV_VARS,
INTEGER_ENV_VARS,
STRING_ENV_VARS,
]:
assert isinstance(env_var_type, list)
assert len(env_var_type) == len(set(env_var_type))

def test_env_vars_types_do_not_overlap(self: TestConsts) -> None:
"""Test that there is no overlap between env var types."""
for first, second in itertools.combinations(
[BOOL_ENV_VARS, DATETIME_ENV_VARS, FLOAT_ENV_VARS, INTEGER_ENV_VARS, STRING_ENV_VARS],
[
BOOL_ENV_VARS,
COMMA_SEPARATED_LIST_ENV_VARS,
DATETIME_ENV_VARS,
FLOAT_ENV_VARS,
INTEGER_ENV_VARS,
STRING_ENV_VARS,
],
r=2,
):
assert isinstance(first, list)
Expand All @@ -38,6 +53,7 @@ def test_env_vars_types_defined_for_all_env_vars(self: TestConsts) -> None:
"""Test that all env vars from `ApifyEnvVars` and `ActorEnvVars` have a defined type."""
env_vars_from_types = set(
list(BOOL_ENV_VARS)
+ list(COMMA_SEPARATED_LIST_ENV_VARS)
+ list(DATETIME_ENV_VARS)
+ list(FLOAT_ENV_VARS)
+ list(INTEGER_ENV_VARS)
Expand Down
Loading