<p align="center">
<a href="https://logyca.com/"><img src="https://logyca.com/sites/default/files/logyca.png" alt="Logyca"></a>
</p>
<p align="center">
<em>LOGYCA public libraries</em>
</p>
<p align="center">
<a href="https://pypi.org/project/logyca" target="_blank">
<img src="https://img.shields.io/pypi/v/logyca?color=orange&label=PyPI%20Package" alt="Package version">
</a>
<a href="(https://www.python.org" target="_blank">
<img src="https://img.shields.io/badge/Python-%5B%3E%3D3.8%2C%3C%3D3.11%5D-orange" alt="Python">
</a>
</p>
---
# About us
* <a href="http://logyca.com" target="_blank">LOGYCA Company</a>
* <a href="https://www.youtube.com/channel/UCzcJtxfScoAtwFbxaLNnEtA" target="_blank">LOGYCA Youtube Channel</a>
* <a href="https://www.linkedin.com/company/logyca" target="_blank"><img src="https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white" alt="Linkedin"></a>
* <a href="https://twitter.com/LOGYCA_Org" target="_blank"><img src="https://img.shields.io/badge/Twitter-1DA1F2?style=for-the-badge&logo=twitter&logoColor=white" alt="Twitter"></a>
* <a href="https://www.facebook.com/OrganizacionLOGYCA/" target="_blank"><img src="https://img.shields.io/badge/Facebook-1877F2?style=for-the-badge&logo=facebook&logoColor=white" alt="Facebook"></a>
---
# LOGYCA public libraries
* **Traversal libraries**: Standard methods to be used by microservices.
* **Return codes**: Standard methods for reporting result status codes using APIResult.
* **Monitoring**: Standard methods to report check health status codes.
* **Helpers**: Standard methods to be used. *
[Source code](https://github.com/logyca/python-libraries/tree/main/logyca)
| [Package (PyPI)](https://pypi.org/project/logyca/)
| [Samples](https://github.com/logyca/python-libraries/tree/main/logyca/samples)
| [Unit tests](https://github.com/logyca/python-libraries/tree/main/logyca/tests)
---
---
# "pip install" dependency check
The user must select the required libraries and versions for the project that uses this library, which validates that they are pre-installed in order to be installed.
To install the libraries of the logyca package (APIResult,Health) verifying the pydantic,pytz prerequisite without validating other packages, use the following command:
```Python
# Check pydantic dependency that is installed
pip install logyca
```
To install the fastapi package libraries and logyca authentication dependency injection, use the following command:
```Python
# Check the aiohttp dependency that is installed, for use with oauth authentication, e.g. single sign-on (SSO).
pip install logyca[oauth_token]
# Check the fastapi dependency that is installed, for use with Api-key authentication.
pip install logyca[api_key_simple_auth]
# Check the fastapi dependency that is installed, for use with Api-key and oauth authentication.
pip install logyca[oauth_token-api_key_simple_auth]
```
---
# Semantic Versioning
logyca < MAJOR >.< MINOR >.< PATCH >
* **MAJOR**: version when you make incompatible API changes
* **MINOR**: version when you add functionality in a backwards compatible manner
* **PATCH**: version when you make backwards compatible bug fixes
## Definitions for releasing versions
* https://peps.python.org/pep-0440/
- X.YaN (Alpha release): Identify and fix early-stage bugs. Not suitable for production use.
- X.YbN (Beta release): Stabilize and refine features. Address reported bugs. Prepare for official release.
- X.YrcN (Release candidate): Final version before official release. Assumes all major features are complete and stable. Recommended for testing in non-critical environments.
- X.Y (Final release/Stable/Production): Completed, stable version ready for use in production. Full release for public use.
# Quick install
```console
# Windows
python -m pip install logyca
# Linux
pip install logyca
```
---
# Example of concepts using library APIResult
```python
# Example output from ApiResult:
result={
"resultToken": {
"token": "",
"refreshToken": "",
"result": "",
"emailActiveDirectory": "",
"message": ""
},
"resultObject": [
{
"name": "Database server",
"status": 0,
"description": "Connection status fine"
},
{
"name": "Redis server",
"status": 0,
"description": "Connection status fine"
}
],
"apiException": {
"message": "",
"isError": false,
"detail": null,
"status": 200,
"logycaStatus": 0
},
"resultMessage": "",
"dataError": false
}
```
## Use cases: you must catch de exception
1. if you get data only the token:
```json
{
"dataError":false,
"resultObject":null,
"resultToken":"Not Null"
}
```
2. if you get data correctly
```json
{
"dataError":false,
"resultObject"="Not Null"
"resultToken"=null
}
```
3. if you don't get because the operation was cancelled
```json
{
"dataError":true,
"resultObject":null,
"resultToken":null,
"apiException.logycaStatus":1,
"apiException.status"=404,
"resultMessage":"exception messages: the operation was cancelled"
}
```
[optional]apiException.message="if needed, return an object with structured failure data other than exception messages"
# Example of using library APIResult + Health Check
```python
from fastapi.encoders import jsonable_encoder
from logyca import HealthEnum, LogycaStatusEnum, APIResultDTO, ApiFilterExceptionDTO, HTTPExceptionDTO, HealthDTO, TokensDTO
from starlette.responses import JSONResponse
import json
def example_service():
tokensDTO=TokensDTO()
tokensDTO.token='Token Example'
apiFilterExceptionDTO=ApiFilterExceptionDTO()
apiFilterExceptionDTO.isError=False
apiFilterExceptionDTO.logycaStatus=int(LogycaStatusEnum.Already_Exists)
apiFilterExceptionDTO.status=int(LogycaStatusEnum.Already_Exists.mappingHttpStatusCode)
httpExceptionDTO=HTTPExceptionDTO()
httpExceptionDTO.detail='No Problem'
listHealth=[]
listHealth.append(HealthDTO(name='Check CPU',status=HealthEnum.Ok,description='OK').__dict__)
listHealth.append(HealthDTO(name='Check Connect DB',status=HealthEnum.Warning,description='Warning').__dict__)
listHealth.append(HealthDTO(name='Check Connect Storage',status=HealthEnum.Critical,description='Critical').__dict__)
apiResultDTO=APIResultDTO()
apiResultDTO.resultMessage=httpExceptionDTO.detail
apiResultDTO.resultObject=listHealth
apiResultDTO.dataError=False
apiResultDTO.resultToken=tokensDTO
apiResultDTO.apiException=apiFilterExceptionDTO
return apiResultDTO
def simulator_api_return():
apiResultDTO = example_service()
content = jsonable_encoder(apiResultDTO)
print((json.dumps(content,indent=4)))
return JSONResponse(content=content,status_code=200)
simulator_api_return()
# output sample
#
# {
# "resultToken": {
# "token": "Token Example",
# "refreshToken": "",
# "result": "",
# "emailActiveDirectory": "",
# "message": ""
# },
# "resultObject": [
# {
# "name": "Check CPU",
# "status": 0,
# "description": "OK"
# },
# {
# "name": "Check Connect DB",
# "status": 1,
# "description": "Warning"
# },
# {
# "name": "Check Connect Storage",
# "status": 2,
# "description": "Critical"
# }
# ],
# "apiException": {
# "message": "",
# "isError": false,
# "detail": null,
# "status": 409,
# "logycaStatus": 6
# },
# "resultMessage": "No Problem",
# "dataError": false
# }
```
---
# Example of using helpers
```python
from logyca import buildUrl,convertDateTimeStampUTCtoUTCColombia
url1='https://domain.com'
url2='api/get'
print(f'buildUrl={buildUrl(url1,url2)}')
# ouput
# buildUrl=https://domain.com/api/get
datetimestampUTC=1679729109
print(f'datetimeUTCColombia={convertDateTimeStampUTCtoUTCColombia(datetimestampUTC)}')
# output
# datetimeUTCColombia=2023-03-25 02:25:09-05:00
```
---
# Example of using Logger
At the root of the project, the logs folder is created and the types of errors are differentiated by different files.
```python
# main.py
from logyca import Logger, ConstantsLogger
logger = Logger(logger_name=ConstantsLogger.NAME,log_dir=FOLDER_LOGS,log_file_name=f"{App.Settings.NAME}")
logger.info(f"message")
# Other files.py
from logyca import Logger, ConstantsLogger
import logging
logger = logging.getLogger(ConstantsLogger.NAME)
logger.info(f"message")
logger.error(f"message")
```
---
# Current library test
```console
# Library installation
# Windows
python -m pip install logyca[test]
# Linux
pip install logyca
# Run it
pytest -s
```
---
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Types of changes
- Added for new features.
- Changed for changes in existing functionality.
- Deprecated for soon-to-be removed features.
- Removed for now removed features.
- Fixed for any bug fixes.
- Security in case of vulnerabilities.
## [0.1.9] - 2024-05-21
### Added
- New logger functionality.
- new authentication functionality in fastapi by dependency injection with api-key, to be used on endpoints.
- new authentication functionality in fastapi by dependency injection with oauth (single sign on), to be used on endpoints.
- In the samples folder of this library, there are complete working examples of using the code.
## [0.1.8] - 2023-10-03
### Fixed
- Due to a link error in the readme to internal documents in pypi, we chose to leave the changelog at the end of the readme.
## [0.1.7] - 2023-10-02
### Fixed
- The url address for the logyca logo is corrected
- Adjust return code for LogycaStatusEnum class: LogycaStatusEnum.Created==HTTPStatus.CREATED
- Adjust return code for LogycaStatusEnum class: LogycaStatusEnum.InProcess==HTTPStatus.ACCEPTED
- Adjust return code for LogycaStatusEnum class: LogycaStatusEnum.Partial==HTTPStatus.ACCEPTED
- Empty files __init__.py removed
## [0.1.6] - 2023-09-11
### Fixed
- Pydantic restriction for versions lower than 2.0 is removed
## [0.1.5] - 2023-03-27
### Added
- Release ready for production
## [0.1.6-9] - 2024-5-21<
### Added
- new features such as: logging, helpers for fastapi
## [0.1.10] - 2024-05-23
### Added
- Documentation improvements.
- Documentation integrated with github
## [0.1.11] - 2024-05-24
### Deprecated
- add print info deprecated in convert_string_to_boolean()
### Added
- new parse_bool() function that will replace convert_string_to_boolean()
## [0.1.12-13] - 2024-06-13
### Fixed
- Oauth fix
## [0.1.13] - 2024-06-20
### Added
- New Logger feature to rotate backup logs and allow them to be written.
## [0.1.14] - 2024-07-02
### Added
- New APIResultDTOExternal feature to Scheme output
## [0.1.15] - 2024-07-05
### Fixed
- Updated LogycaStatusEnum for starlette library use
- Correction of exception handlers.
## [0.1.16] - 2024-07-12
### Added
- For object classes like APIResultDTO and others, the to_dict() function is added to be able to serialize the attributes to json in a simple way.
- Added object serialization example.
## [0.1.17] - 2024-07-22
### Fixed
- APIResultDTO fixes the data=False error external of the __init__ constructor.
## [0.1.18] - 2024-08-16
### Fixed
- Example of auth apkey with dockerfile and dependencies that were missing when installing the library is added.
Raw data
{
"_id": null,
"home_page": "https://github.com/logyca/python-libraries/tree/main/logyca",
"name": "logyca",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "api result, result dto, result scheme",
"author": "Jaime Andres Cardona Carrillo",
"author_email": "jacardona@outlook.com",
"download_url": "https://files.pythonhosted.org/packages/e7/e2/5033288110637fa1ec7fc8ebec4dca22ddcb9ba8c7b2f606975bc848e776/logyca-0.1.18.tar.gz",
"platform": null,
"description": "<p align=\"center\">\r\n <a href=\"https://logyca.com/\"><img src=\"https://logyca.com/sites/default/files/logyca.png\" alt=\"Logyca\"></a>\r\n</p>\r\n<p align=\"center\">\r\n <em>LOGYCA public libraries</em>\r\n</p>\r\n\r\n<p align=\"center\">\r\n<a href=\"https://pypi.org/project/logyca\" target=\"_blank\">\r\n <img src=\"https://img.shields.io/pypi/v/logyca?color=orange&label=PyPI%20Package\" alt=\"Package version\">\r\n</a>\r\n<a href=\"(https://www.python.org\" target=\"_blank\">\r\n <img src=\"https://img.shields.io/badge/Python-%5B%3E%3D3.8%2C%3C%3D3.11%5D-orange\" alt=\"Python\">\r\n</a>\r\n</p>\r\n\r\n\r\n---\r\n\r\n# About us\r\n\r\n* <a href=\"http://logyca.com\" target=\"_blank\">LOGYCA Company</a>\r\n* <a href=\"https://www.youtube.com/channel/UCzcJtxfScoAtwFbxaLNnEtA\" target=\"_blank\">LOGYCA Youtube Channel</a>\r\n* <a href=\"https://www.linkedin.com/company/logyca\" target=\"_blank\"><img src=\"https://img.shields.io/badge/LinkedIn-0077B5?style=for-the-badge&logo=linkedin&logoColor=white\" alt=\"Linkedin\"></a>\r\n* <a href=\"https://twitter.com/LOGYCA_Org\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Twitter-1DA1F2?style=for-the-badge&logo=twitter&logoColor=white\" alt=\"Twitter\"></a>\r\n* <a href=\"https://www.facebook.com/OrganizacionLOGYCA/\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Facebook-1877F2?style=for-the-badge&logo=facebook&logoColor=white\" alt=\"Facebook\"></a>\r\n\r\n---\r\n\r\n# LOGYCA public libraries\r\n\r\n* **Traversal libraries**: Standard methods to be used by microservices.\r\n* **Return codes**: Standard methods for reporting result status codes using APIResult.\r\n* **Monitoring**: Standard methods to report check health status codes.\r\n* **Helpers**: Standard methods to be used. *\r\n\r\n[Source code](https://github.com/logyca/python-libraries/tree/main/logyca)\r\n| [Package (PyPI)](https://pypi.org/project/logyca/)\r\n| [Samples](https://github.com/logyca/python-libraries/tree/main/logyca/samples)\r\n| [Unit tests](https://github.com/logyca/python-libraries/tree/main/logyca/tests)\r\n\r\n---\r\n\r\n---\r\n\r\n# \"pip install\" dependency check\r\nThe user must select the required libraries and versions for the project that uses this library, which validates that they are pre-installed in order to be installed.\r\n\r\nTo install the libraries of the logyca package (APIResult,Health) verifying the pydantic,pytz prerequisite without validating other packages, use the following command:\r\n\r\n```Python\r\n# Check pydantic dependency that is installed\r\npip install logyca\r\n```\r\n\r\nTo install the fastapi package libraries and logyca authentication dependency injection, use the following command:\r\n\r\n```Python\r\n# Check the aiohttp dependency that is installed, for use with oauth authentication, e.g. single sign-on (SSO).\r\npip install logyca[oauth_token]\r\n# Check the fastapi dependency that is installed, for use with Api-key authentication.\r\npip install logyca[api_key_simple_auth]\r\n# Check the fastapi dependency that is installed, for use with Api-key and oauth authentication.\r\npip install logyca[oauth_token-api_key_simple_auth]\r\n```\r\n\r\n---\r\n\r\n# Semantic Versioning\r\n\r\nlogyca < MAJOR >.< MINOR >.< PATCH >\r\n\r\n* **MAJOR**: version when you make incompatible API changes\r\n* **MINOR**: version when you add functionality in a backwards compatible manner\r\n* **PATCH**: version when you make backwards compatible bug fixes\r\n\r\n## Definitions for releasing versions\r\n* https://peps.python.org/pep-0440/\r\n\r\n - X.YaN (Alpha release): Identify and fix early-stage bugs. Not suitable for production use.\r\n - X.YbN (Beta release): Stabilize and refine features. Address reported bugs. Prepare for official release.\r\n - X.YrcN (Release candidate): Final version before official release. Assumes all major features are complete and stable. Recommended for testing in non-critical environments.\r\n - X.Y (Final release/Stable/Production): Completed, stable version ready for use in production. Full release for public use.\r\n\r\n# Quick install\r\n\r\n```console\r\n# Windows\r\npython -m pip install logyca\r\n# Linux\r\npip install logyca\r\n```\r\n\r\n---\r\n\r\n# Example of concepts using library APIResult\r\n\r\n```python\r\n# Example output from ApiResult:\r\nresult={\r\n \"resultToken\": {\r\n \"token\": \"\",\r\n \"refreshToken\": \"\",\r\n \"result\": \"\",\r\n \"emailActiveDirectory\": \"\",\r\n \"message\": \"\"\r\n },\r\n \"resultObject\": [\r\n {\r\n \"name\": \"Database server\",\r\n \"status\": 0,\r\n \"description\": \"Connection status fine\"\r\n },\r\n {\r\n \"name\": \"Redis server\",\r\n \"status\": 0,\r\n \"description\": \"Connection status fine\"\r\n }\r\n ],\r\n \"apiException\": {\r\n \"message\": \"\",\r\n \"isError\": false,\r\n \"detail\": null,\r\n \"status\": 200,\r\n \"logycaStatus\": 0\r\n },\r\n \"resultMessage\": \"\",\r\n \"dataError\": false\r\n}\r\n```\r\n\r\n## Use cases: you must catch de exception\r\n\r\n1. if you get data only the token:\r\n```json\r\n{\r\n\"dataError\":false,\r\n\"resultObject\":null,\r\n\"resultToken\":\"Not Null\"\r\n}\r\n```\r\n\r\n2. if you get data correctly\r\n```json\r\n{\r\n\"dataError\":false,\r\n\"resultObject\"=\"Not Null\"\r\n\"resultToken\"=null\r\n}\r\n```\r\n\r\n3. if you don't get because the operation was cancelled\r\n```json\r\n{\r\n\"dataError\":true,\r\n\"resultObject\":null,\r\n\"resultToken\":null,\r\n\"apiException.logycaStatus\":1,\r\n\"apiException.status\"=404,\r\n\"resultMessage\":\"exception messages: the operation was cancelled\"\r\n}\r\n```\r\n[optional]apiException.message=\"if needed, return an object with structured failure data other than exception messages\"\r\n\r\n\r\n# Example of using library APIResult + Health Check\r\n\r\n```python\r\nfrom fastapi.encoders import jsonable_encoder\r\nfrom logyca import HealthEnum, LogycaStatusEnum, APIResultDTO, ApiFilterExceptionDTO, HTTPExceptionDTO, HealthDTO, TokensDTO\r\nfrom starlette.responses import JSONResponse\r\nimport json\r\n\r\ndef example_service():\r\n tokensDTO=TokensDTO()\r\n tokensDTO.token='Token Example'\r\n\r\n apiFilterExceptionDTO=ApiFilterExceptionDTO()\r\n apiFilterExceptionDTO.isError=False\r\n apiFilterExceptionDTO.logycaStatus=int(LogycaStatusEnum.Already_Exists)\r\n apiFilterExceptionDTO.status=int(LogycaStatusEnum.Already_Exists.mappingHttpStatusCode)\r\n\r\n httpExceptionDTO=HTTPExceptionDTO()\r\n httpExceptionDTO.detail='No Problem'\r\n\r\n listHealth=[]\r\n\r\n listHealth.append(HealthDTO(name='Check CPU',status=HealthEnum.Ok,description='OK').__dict__)\r\n listHealth.append(HealthDTO(name='Check Connect DB',status=HealthEnum.Warning,description='Warning').__dict__)\r\n listHealth.append(HealthDTO(name='Check Connect Storage',status=HealthEnum.Critical,description='Critical').__dict__)\r\n\r\n apiResultDTO=APIResultDTO()\r\n apiResultDTO.resultMessage=httpExceptionDTO.detail\r\n apiResultDTO.resultObject=listHealth\r\n apiResultDTO.dataError=False\r\n apiResultDTO.resultToken=tokensDTO\r\n apiResultDTO.apiException=apiFilterExceptionDTO\r\n\r\n return apiResultDTO\r\n\r\ndef simulator_api_return():\r\n apiResultDTO = example_service()\r\n content = jsonable_encoder(apiResultDTO)\r\n print((json.dumps(content,indent=4)))\r\n return JSONResponse(content=content,status_code=200)\r\n\r\nsimulator_api_return()\r\n\r\n# output sample\r\n #\r\n # {\r\n # \"resultToken\": {\r\n # \"token\": \"Token Example\",\r\n # \"refreshToken\": \"\",\r\n # \"result\": \"\",\r\n # \"emailActiveDirectory\": \"\",\r\n # \"message\": \"\"\r\n # },\r\n # \"resultObject\": [\r\n # {\r\n # \"name\": \"Check CPU\",\r\n # \"status\": 0,\r\n # \"description\": \"OK\"\r\n # },\r\n # {\r\n # \"name\": \"Check Connect DB\", \r\n # \"status\": 1,\r\n # \"description\": \"Warning\" \r\n # },\r\n # {\r\n # \"name\": \"Check Connect Storage\",\r\n # \"status\": 2,\r\n # \"description\": \"Critical\" \r\n # }\r\n # ],\r\n # \"apiException\": {\r\n # \"message\": \"\",\r\n # \"isError\": false,\r\n # \"detail\": null,\r\n # \"status\": 409,\r\n # \"logycaStatus\": 6\r\n # },\r\n # \"resultMessage\": \"No Problem\",\r\n # \"dataError\": false\r\n # }\r\n\r\n```\r\n\r\n---\r\n\r\n# Example of using helpers\r\n\r\n```python\r\nfrom logyca import buildUrl,convertDateTimeStampUTCtoUTCColombia\r\n\r\nurl1='https://domain.com'\r\nurl2='api/get'\r\nprint(f'buildUrl={buildUrl(url1,url2)}')\r\n# ouput\r\n# buildUrl=https://domain.com/api/get\r\n\r\ndatetimestampUTC=1679729109\r\nprint(f'datetimeUTCColombia={convertDateTimeStampUTCtoUTCColombia(datetimestampUTC)}')\r\n# output\r\n# datetimeUTCColombia=2023-03-25 02:25:09-05:00\r\n```\r\n\r\n---\r\n\r\n# Example of using Logger\r\nAt the root of the project, the logs folder is created and the types of errors are differentiated by different files.\r\n```python\r\n\r\n# main.py\r\nfrom logyca import Logger, ConstantsLogger\r\nlogger = Logger(logger_name=ConstantsLogger.NAME,log_dir=FOLDER_LOGS,log_file_name=f\"{App.Settings.NAME}\")\r\nlogger.info(f\"message\")\r\n\r\n# Other files.py\r\nfrom logyca import Logger, ConstantsLogger\r\nimport logging\r\nlogger = logging.getLogger(ConstantsLogger.NAME)\r\n\r\nlogger.info(f\"message\")\r\nlogger.error(f\"message\")\r\n\r\n```\r\n---\r\n\r\n# Current library test\r\n\r\n```console\r\n# Library installation\r\n\r\n# Windows\r\npython -m pip install logyca[test]\r\n# Linux\r\npip install logyca\r\n\r\n# Run it\r\npytest -s\r\n```\r\n\r\n---\r\n\r\n# Changelog\r\n\r\nAll notable changes to this project will be documented in this file.\r\n\r\nThe format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),\r\nand this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\r\n\r\n## Types of changes\r\n\r\n- Added for new features.\r\n- Changed for changes in existing functionality.\r\n- Deprecated for soon-to-be removed features.\r\n- Removed for now removed features.\r\n- Fixed for any bug fixes.\r\n- Security in case of vulnerabilities.\r\n\r\n## [0.1.9] - 2024-05-21\r\n### Added\r\n- New logger functionality.\r\n- new authentication functionality in fastapi by dependency injection with api-key, to be used on endpoints.\r\n- new authentication functionality in fastapi by dependency injection with oauth (single sign on), to be used on endpoints.\r\n- In the samples folder of this library, there are complete working examples of using the code.\r\n\r\n## [0.1.8] - 2023-10-03\r\n### Fixed\r\n- Due to a link error in the readme to internal documents in pypi, we chose to leave the changelog at the end of the readme. \r\n\r\n## [0.1.7] - 2023-10-02\r\n### Fixed\r\n- The url address for the logyca logo is corrected\r\n- Adjust return code for LogycaStatusEnum class: LogycaStatusEnum.Created==HTTPStatus.CREATED\r\n- Adjust return code for LogycaStatusEnum class: LogycaStatusEnum.InProcess==HTTPStatus.ACCEPTED\r\n- Adjust return code for LogycaStatusEnum class: LogycaStatusEnum.Partial==HTTPStatus.ACCEPTED\r\n- Empty files __init__.py removed\r\n\r\n## [0.1.6] - 2023-09-11\r\n### Fixed\r\n- Pydantic restriction for versions lower than 2.0 is removed\r\n\r\n## [0.1.5] - 2023-03-27\r\n### Added\r\n- Release ready for production\r\n\r\n## [0.1.6-9] - 2024-5-21<\r\n### Added\r\n- new features such as: logging, helpers for fastapi\r\n\r\n## [0.1.10] - 2024-05-23\r\n### Added\r\n- Documentation improvements.\r\n- Documentation integrated with github\r\n\r\n## [0.1.11] - 2024-05-24\r\n### Deprecated\r\n- add print info deprecated in convert_string_to_boolean()\r\n### Added\r\n- new parse_bool() function that will replace convert_string_to_boolean()\r\n\r\n## [0.1.12-13] - 2024-06-13\r\n### Fixed\r\n- Oauth fix\r\n\r\n## [0.1.13] - 2024-06-20\r\n### Added\r\n- New Logger feature to rotate backup logs and allow them to be written.\r\n\r\n## [0.1.14] - 2024-07-02\r\n### Added\r\n- New APIResultDTOExternal feature to Scheme output\r\n\r\n## [0.1.15] - 2024-07-05\r\n### Fixed\r\n- Updated LogycaStatusEnum for starlette library use\r\n- Correction of exception handlers.\r\n\r\n## [0.1.16] - 2024-07-12\r\n### Added\r\n- For object classes like APIResultDTO and others, the to_dict() function is added to be able to serialize the attributes to json in a simple way.\r\n- Added object serialization example.\r\n\r\n## [0.1.17] - 2024-07-22\r\n### Fixed\r\n- APIResultDTO fixes the data=False error external of the __init__ constructor.\r\n\r\n## [0.1.18] - 2024-08-16\r\n### Fixed\r\n- Example of auth apkey with dockerfile and dependencies that were missing when installing the library is added.\r\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "This package name is reserved by LOGYCA company",
"version": "0.1.18",
"project_urls": {
"Homepage": "https://github.com/logyca/python-libraries/tree/main/logyca"
},
"split_keywords": [
"api result",
" result dto",
" result scheme"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8857656075867849f2fe5705eeaf4cc2441ae2fb1ab7f381d0f3ce627c369f1a",
"md5": "b76d68769aa43f5ea49185c0d912208c",
"sha256": "f0f3639ecf40ff2a762c4a824791d1e6e244d3381a2d3efe94466102a3c5e893"
},
"downloads": -1,
"filename": "logyca-0.1.18-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b76d68769aa43f5ea49185c0d912208c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 23192,
"upload_time": "2024-08-17T01:18:00",
"upload_time_iso_8601": "2024-08-17T01:18:00.959792Z",
"url": "https://files.pythonhosted.org/packages/88/57/656075867849f2fe5705eeaf4cc2441ae2fb1ab7f381d0f3ce627c369f1a/logyca-0.1.18-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e7e25033288110637fa1ec7fc8ebec4dca22ddcb9ba8c7b2f606975bc848e776",
"md5": "a1317b56ea09aba715abeb8bf12cd21a",
"sha256": "fc6baf033c8940ba448ae81d35000a3f2c7887c9f9b8d1ddef3966d5fe7a66fb"
},
"downloads": -1,
"filename": "logyca-0.1.18.tar.gz",
"has_sig": false,
"md5_digest": "a1317b56ea09aba715abeb8bf12cd21a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 22053,
"upload_time": "2024-08-17T01:18:02",
"upload_time_iso_8601": "2024-08-17T01:18:02.375459Z",
"url": "https://files.pythonhosted.org/packages/e7/e2/5033288110637fa1ec7fc8ebec4dca22ddcb9ba8c7b2f606975bc848e776/logyca-0.1.18.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-17 01:18:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "logyca",
"github_project": "python-libraries",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "logyca"
}