database layer for my personal server.
pip install lapa_database[all]
lapa_database\data\config.ini
- python>=3.12.0
- bug fix in config file support.
- https support.
- fix bug in reading log_file_name.
- add square_logger section in environment and initialise logger as per those variables.
- keep logger and lapa_database_structure as >= instead of ~=.
- update minimum version for lapa_commons.
- removed import for main file from config.
- removed validation for table names in crud call in pydantic models.
- adjust all crud calls to account for pydantic model change from enum to str.
- removed config.example.ini.
- bug fix: create_database -> data insertion now takes schema into account.
- add module name in config.
- add first test case.
- add dependencies for testing.
- add GitHub workflow for testing.
- remove config from gitignore.
- use lapa_commons to read config.
- change default value of ignore_filters_and_get_all to False.
- make crud logic default to no rows when filters are empty.
- add new parameters to make it easy to select all rows for edit, delete and get.
- move logger to configuration.py to fix bug of multiple logs being created.
- rename to lapa database.
- fix bug in create_database that occurred in default data insertion.
- add logs to gitignore.
- change psycopg2 to psycopg2-binary in setup.py.
- created utils folder containing CommonOperations.py under which the common functions used across modules are stored.
- web_socket implemented for retrieving the data from the table when a new row is added/deleted/updated.
- it takes database_name, table_name and schema_name as input through query params.
- input for websocket
- /ws/<database_name>/<table_name>/<schema_name>
- E.g. /ws/game/player/public
- /ws/<database_name>/<table_name>/<schema_name>
- initially returns all the rows and if any update is made it returns the updated data.
- trigger creation is implemented once the websocket connection is made. it will first check if the trigger function already exists or not and then only create.
- remove databases folder and enums related to tables and put in separate module for better version control.
- add proper error message display on errors in configuration.py.
- known bugs:
- creating engines everytime on fastapi route call is creating idle sessions.
- initial implementation.
- known bugs:
- creating engines everytime on fastapi route call is creating idle sessions.