kiarina-lib-redis 1.2.0__tar.gz → 1.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/.gitignore +0 -5
  2. kiarina_lib_redis-1.4.0/.vscode/settings.json +7 -0
  3. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/CHANGELOG.md +19 -0
  4. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/PKG-INFO +1 -1
  5. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/pyproject.toml +1 -1
  6. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/_core/registry.py +1 -1
  7. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/settings.py +4 -2
  8. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/.python-version +0 -0
  9. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/README.md +0 -0
  10. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/__init__.py +0 -0
  11. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/_async/__init__.py +0 -0
  12. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/_async/registry.py +0 -0
  13. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/_core/__init__.py +0 -0
  14. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/_sync/__init__.py +0 -0
  15. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/_sync/registry.py +0 -0
  16. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/asyncio.py +0 -0
  17. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/src/kiarina/lib/redis/py.typed +0 -0
  18. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/tests/__init__.py +0 -0
  19. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/tests/conftest.py +0 -0
  20. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/tests/test_async.py +0 -0
  21. {kiarina_lib_redis-1.2.0 → kiarina_lib_redis-1.4.0}/tests/test_sync.py +0 -0
@@ -19,17 +19,12 @@ htmlcov/
19
19
  .venv/
20
20
  .env
21
21
 
22
- # IDE
23
- .vscode/
24
- *.code-workspace
25
-
26
22
  # OS
27
23
  .DS_Store
28
24
 
29
25
  # Project specific
30
26
  *.log
31
27
  tmp/
32
- ai.yaml
33
28
 
34
29
  # Test data
35
30
  tests/data/large/
@@ -0,0 +1,7 @@
1
+ {
2
+ "python.testing.pytestArgs": [
3
+ "tests"
4
+ ],
5
+ "python.testing.unittestEnabled": false,
6
+ "python.testing.pytestEnabled": true
7
+ }
@@ -7,6 +7,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.4.0] - 2025-10-09
11
+
12
+ ### Changed
13
+ - **BREAKING**: Changed `url` field to use `SecretStr` for enhanced security
14
+ - Redis connection URLs (which may contain passwords) are now masked in string representations and logs
15
+ - Prevents accidental exposure of credentials in debug output
16
+ - Access URL value via `.get_secret_value()` method when needed
17
+ - Internal usage automatically handles secret extraction
18
+
19
+ ### Security
20
+ - **Enhanced credential protection**: Redis URLs with embedded credentials are now protected from accidental exposure
21
+ - URLs are displayed as `**********` in logs and string representations
22
+ - Follows the project-wide security policy for sensitive data
23
+
24
+ ## [1.3.0] - 2025-10-05
25
+
26
+ ### Changed
27
+ - No changes
28
+
10
29
  ## [1.2.0] - 2025-09-25
11
30
 
12
31
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kiarina-lib-redis
3
- Version: 1.2.0
3
+ Version: 1.4.0
4
4
  Summary: Redis client library for kiarina namespace
5
5
  Project-URL: Homepage, https://github.com/kiarina/kiarina-python
6
6
  Project-URL: Repository, https://github.com/kiarina/kiarina-python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "kiarina-lib-redis"
3
- version = "1.2.0"
3
+ version = "1.4.0"
4
4
  description = "Redis client library for kiarina namespace"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -57,7 +57,7 @@ def get_redis(
57
57
  settings = settings_manager.get_settings_by_key(config_key)
58
58
 
59
59
  if url is None:
60
- url = settings.url
60
+ url = settings.url.get_secret_value()
61
61
 
62
62
  if use_retry is None:
63
63
  use_retry = settings.use_retry
@@ -1,6 +1,6 @@
1
1
  from typing import Any
2
2
 
3
- from pydantic import Field
3
+ from pydantic import Field, SecretStr
4
4
  from pydantic_settings import BaseSettings, SettingsConfigDict
5
5
  from pydantic_settings_manager import SettingsManager
6
6
 
@@ -12,13 +12,15 @@ class RedisSettings(BaseSettings):
12
12
 
13
13
  model_config = SettingsConfigDict(env_prefix="KIARINA_LIB_REDIS_")
14
14
 
15
- url: str = "redis://localhost:6379"
15
+ url: SecretStr = SecretStr("redis://localhost:6379")
16
16
  """
17
17
  Redis URL
18
18
 
19
19
  Example:
20
20
  - redis://[[username]:[password]]@localhost:6379
21
21
  - rediss://[[username]:[password]]@localhost:6379
22
+
23
+ Note: This field uses SecretStr to prevent accidental exposure of credentials in logs.
22
24
  """
23
25
 
24
26
  initialize_params: dict[str, Any] = Field(default_factory=dict)