Python library to access LIneA's database from Python code. Useful to retrieve data inside LIneA's JupyterHub platform.
Documentation: Read the Docs page
Install dblinea with pip
pip install dblinea
- sqlalchemy>=1.4.25
- psycopg2>=2.9.1
- numpy>=1.19.4
- pandas>=1.2.0
- astropy>=5.0.0
pip install sqlalchemy psycopg2 numpy pandas astropy
Sub-package to allow users to send user-generated data products to LIneA Science Server (e.g., a list of targets for visual inspection).
Python 3.8: https://tecadmin.net/install-python-3-8-ubuntu/
- Dependencias:
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev liblzma-dev
python3.8 -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install wheel setuptools twine pytest pytest-runner pytest-cov black
Executar os testes:
python setup.py pytest --cov --cov-report term-missing --cov-report html
Fazer o Build: https://medium.com/analytics-vidhya/how-to-create-a-python-library-7d5aea80cc3f
python setup.py sdist bdist_wheel
python3.8 -m venv venv
source venv/bin/activate
pip install sqlalchemy psycopg2 numpy pandas astropy
Para instalar usando o pacote local
pip install --force-reinstall <path>/dist/wheelfile.whl
Abrir um terminal e importar a classe DBBase. ou utilizar o comando.
python -c 'from dblinea import DBBase'
Outro Teste
(env) glauber: ~ $ python
Python 3.8.12 (default, Jan 28 2022, 15:50:21)
[GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from dblinea import DBBase
>>> a = DBBase()
>>> a.get_engine()
Engine(postgresql+psycopg2://untrustedprod:***@desdb4.linea.gov.br:5432/prod_gavo)
>>>
Check if build is ok for publish
python -m twine check dist/*
python -m twine upload --verbose --repository testpypi dist/*
Check in https://test.pypi.org/manage/project/dblinea/releases/
https://realpython.com/pypi-publish-python-package/
twine upload dist/*
Executar o Lint em busca de errors de sintaxe ou formatação.
black . --check
Executar o Lint para corrigir automaticamente os errors encontrados.
black .
Generate Api Docs
cd docs
sphinx-apidoc -f -o ./source ../dblinea
Build html docs
make html