tracktolib 0.46.0__tar.gz → 0.46.2__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tracktolib
3
- Version: 0.46.0
3
+ Version: 0.46.2
4
4
  Summary: Utility library for python
5
5
  Home-page: https://github.com/tracktor/tracktolib
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "tracktolib"
3
- version = "0.46.0"
3
+ version = "0.46.2"
4
4
  description = "Utility library for python"
5
5
  authors = ["Julien Brayere <julien.brayere@tracktor.fr>"]
6
6
  license = "MIT"
@@ -70,7 +70,7 @@ pythonPlatform = "Linux"
70
70
 
71
71
  [tool.commitizen]
72
72
  name = "cz_conventional_commits"
73
- version = "0.46.0"
73
+ version = "0.46.2"
74
74
  tag_format = "$version"
75
75
  version_files = [
76
76
  "pyproject.toml:version"
@@ -20,7 +20,7 @@ extras_require = \
20
20
 
21
21
  setup_kwargs = {
22
22
  'name': 'tracktolib',
23
- 'version': '0.46.0',
23
+ 'version': '0.46.2',
24
24
  'description': 'Utility library for python',
25
25
  'long_description': "# Tracktolib\n\n[![Python versions](https://img.shields.io/pypi/pyversions/tracktolib)](https://pypi.python.org/pypi/tracktolib)\n[![Latest PyPI version](https://img.shields.io/pypi/v/tracktolib?logo=pypi)](https://pypi.python.org/pypi/tracktolib)\n[![CircleCI](https://circleci.com/gh/Tracktor/tracktolib/tree/master.svg?style=shield)](https://app.circleci.com/pipelines/github/Tracktor/tracktolib?branch=master)\n\nUtility library for python\n\n# Installation\n\nYou can choose to not install all the dependencies by specifying\nthe [extra](https://python-poetry.org/docs/cli/#options-4) parameter such as:\n\n```bash\npoetry add tracktolib@latest -E pg-sync -E tests --group dev \n```\n\nHere we only install the utilities using `psycopg` (pg-sync) and `deepdiff` (tests) for the dev environment.\n\n# Utilities\n\n- **log**\n\nUtility functions for logging.\n\n```python\nimport logging\nfrom tracktolib.logs import init_logging\n\nlogger = logging.getLogger()\nformatter, stream_handler = init_logging(logger, 'json', version='0.0.1')\n```\n\n- **pg**\n\nUtility functions for [asyncpg](https://github.com/MagicStack/asyncpg)\n\n- **pg-sync**\n\nUtility functions based on psycopg such as `fetch_one`, `insert_many`, `fetch_count` ...\n\nTo use the functions, create a `Connection` using psycopg: `conn = psycopg2.connect()`\n\n*fetch_one*\n\n```python\nfrom pg.pg_sync import (\n insert_many, fetch_one, fetch_count, fetch_all\n)\n\ndata = [\n {'foo': 'bar', 'value': 1},\n {'foo': 'baz', 'value': 2}\n]\ninsert_many(conn, 'public.test', data) # Will insert the 2 dict\nquery = 'SELECT foo from public.test order by value asc'\nvalue = fetch_one(conn, query, required=True) # Will return {'foo': 'bar'}, raise an error is not found\nassert fetch_count(conn, 'public.test') == 2\nquery = 'SELECT * from public.test order by value asc'\nassert fetch_all(conn, query) == data\n\n```\n\n- **tests**\n\nUtility functions for testing\n\n- **s3-minio**\n\nUtility functions for [minio](https://min.io/docs/minio/linux/developers/python/API.html)\n\n- **s3**\n\nUtility functions for [aiobotocore](https://github.com/aio-libs/aiobotocore)\n\n- **logs**\n\nUtility functions to initialize the logging formatting and streams\n\n- **http**\n\nUtility functions using [httpx](https://www.python-httpx.org/)\n\n- **api**\n\nUtility functions using [fastapi](https://fastapi.tiangolo.com/)\n",
26
26
  'author': 'Julien Brayere',
@@ -1,5 +1,4 @@
1
1
  import json
2
- import os
3
2
  import warnings
4
3
  from dataclasses import field, dataclass
5
4
  from inspect import getdoc
@@ -203,22 +202,6 @@ def _get_method_wrapper(
203
202
  _NoneType = type(None)
204
203
 
205
204
 
206
- class IgnoreConfig(BaseModel):
207
- endpoints: dict[str, dict[Method, bool]]
208
- ignore_missing: bool = True
209
-
210
-
211
- def get_ignore_config() -> IgnoreConfig | None:
212
- _config = os.getenv("IGNORE_CONFIG")
213
- return IgnoreConfig.model_validate_json(_config) if _config else None
214
-
215
-
216
- def set_ignore_config(config: str | IgnoreConfig):
217
- if isinstance(config, str):
218
- config = IgnoreConfig.model_validate_json(config)
219
- os.environ["IGNORE_CONFIG"] = config.model_dump_json()
220
-
221
-
222
205
  def _get_return_type(fn):
223
206
  return_type = get_type_hints(fn)["return"]
224
207
  _args = get_args(return_type)
@@ -234,14 +217,7 @@ def add_endpoint(
234
217
  *,
235
218
  dependencies: Dependencies = None,
236
219
  ):
237
- _ignore_config = get_ignore_config()
238
220
  for _method, _meta in endpoint.methods.items():
239
- # Do not add endpoint if it is not in the ignore config
240
- if _ignore_config is not None:
241
- _has_access = _ignore_config.endpoints.get(path, {}).get(_method, not _ignore_config.ignore_missing)
242
- if not _has_access:
243
- continue
244
- #
245
221
  _fn = _meta["fn"]
246
222
  _status_code = _meta["status_code"]
247
223
  _dependencies = _meta["dependencies"]
File without changes
File without changes