altcodepro-polydb-python 2.3.30__tar.gz → 2.3.31__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.
- {altcodepro_polydb_python-2.3.30/src/altcodepro_polydb_python.egg-info → altcodepro_polydb_python-2.3.31}/PKG-INFO +1 -1
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/pyproject.toml +1 -1
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31/src/altcodepro_polydb_python.egg-info}/PKG-INFO +1 -1
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/PostgreSQLAdapter.py +7 -2
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/LICENSE +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/MANIFEST.in +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/README.md +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements-aws.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements-azure.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements-dev.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements-gcp.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements-generic.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/setup.cfg +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/setup.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/altcodepro_polydb_python.egg-info/SOURCES.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/altcodepro_polydb_python.egg-info/dependency_links.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/altcodepro_polydb_python.egg-info/requires.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/altcodepro_polydb_python.egg-info/top_level.txt +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/PolyDB.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/__init__.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/AzureBlobStorageAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/AzureFileStorageAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/AzureQueueAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/AzureTableStorageAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/BlockchainBlobAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/BlockchainFileAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/BlockchainKVAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/BlockchainQueueAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/DynamoDBAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/EFSAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/FirestoreAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/GCPFilestoreAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/GCPPubSubAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/GCPStorageAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/MongoDBAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/S3Adapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/S3CompatibleAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/SQSAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/VercelBlobAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/VercelFileAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/VercelKVAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/VercelQueueAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/__init__.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/advanced_query.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/AuditStorage.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/__init__.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/context.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/manager.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/models.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/NoSQLKVAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/ObjectStorageAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/QueueAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/SharedFilesAdapter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/__init__.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/batch.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/cache.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/cloudDatabaseFactory.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/databaseFactory.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/decorators.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/errors.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/json_safe.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/models.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/monitoring.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/multitenancy.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/observability/__init__.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/observability/logging.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/py.typed +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/query.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/registry.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/retry.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/schema.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/security.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/services/__init__.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/services/compliance_service.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/services/security_service.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/types.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/utils.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/validation.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_atomic_decrement.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_aws.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_azure.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_azure_queue_receipt_handle.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_azure_table_empty_filter.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_azure_table_unpack_entity.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_blockchain.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_cloud_factory.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_gcp.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_mongodb.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_multi_engine.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_observability.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_postgresql.py +0 -0
- {altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_vercel.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: altcodepro-polydb-python
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.31
|
|
4
4
|
Summary: Production-ready multi-cloud database abstraction layer with connection pooling, retry logic, and thread safety
|
|
5
5
|
Author: AltCodePro
|
|
6
6
|
Project-URL: Homepage, https://github.com/altcodepro/polydb-python
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "altcodepro-polydb-python"
|
|
7
|
-
version = "2.3.
|
|
7
|
+
version = "2.3.31"
|
|
8
8
|
description = "Production-ready multi-cloud database abstraction layer with connection pooling, retry logic, and thread safety"
|
|
9
9
|
readme = { file = "README.md", content-type = "text/markdown" }
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: altcodepro-polydb-python
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.31
|
|
4
4
|
Summary: Production-ready multi-cloud database abstraction layer with connection pooling, retry logic, and thread safety
|
|
5
5
|
Author: AltCodePro
|
|
6
6
|
Project-URL: Homepage, https://github.com/altcodepro/polydb-python
|
|
@@ -76,7 +76,7 @@ class PostgreSQLAdapter:
|
|
|
76
76
|
def _initialize_pool(self):
|
|
77
77
|
try:
|
|
78
78
|
import psycopg2.pool
|
|
79
|
-
from urllib.parse import urlparse, parse_qs, urlencode, urlunparse
|
|
79
|
+
from urllib.parse import urlparse, parse_qs, quote, urlencode, urlunparse
|
|
80
80
|
|
|
81
81
|
dsn = self.connection_string
|
|
82
82
|
if "postgresql://" in dsn:
|
|
@@ -108,7 +108,12 @@ class PostgreSQLAdapter:
|
|
|
108
108
|
[f"-c statement_timeout={os.getenv('POSTGRES_STATEMENT_TIMEOUT_MS', '20000')}"],
|
|
109
109
|
)
|
|
110
110
|
|
|
111
|
-
|
|
111
|
+
# quote_via=quote, not the default quote_plus: libpq's URI
|
|
112
|
+
# parser percent-decodes query values but treats "+" as a
|
|
113
|
+
# literal plus, so form-encoding the space in
|
|
114
|
+
# "-c statement_timeout=..." makes the server see the option
|
|
115
|
+
# name as "+statement_timeout" and reject the connection.
|
|
116
|
+
new_query = urlencode(query, doseq=True, quote_via=quote)
|
|
112
117
|
parsed = parsed._replace(query=new_query)
|
|
113
118
|
dsn = urlunparse(parsed)
|
|
114
119
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/requirements-generic.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/S3Adapter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/adapters/__init__.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/advanced_query.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/AuditStorage.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/__init__.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/context.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/manager.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/audit/models.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/QueueAdapter.py
RENAMED
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/base/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/databaseFactory.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/decorators.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/monitoring.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/multitenancy.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/services/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/src/polydb/validation.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_atomic_decrement.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_blockchain.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_cloud_factory.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_multi_engine.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_observability.py
RENAMED
|
File without changes
|
{altcodepro_polydb_python-2.3.30 → altcodepro_polydb_python-2.3.31}/tests/test_postgresql.py
RENAMED
|
File without changes
|
|
File without changes
|