# Python MyLib Just a set of helpers small libs to make common tasks easier in my script development. [![status-badge](https://ci.zionetrix.net/api/badges/bn8/python-mylib/status.svg)](https://ci.zionetrix.net/bn8/python-mylib) ## Requirements ``` apt install \ build-essential \ python3 \ python3-dev # For LDAP: apt install libldap2-dev libsasl2-dev # For Config: apt install pkg-config libsystemd-dev # For PgSQL: apt install libpq-dev # For MySQL: apt install libmariadb-dev ``` ## Installation Just run `python setup.py install` **Note:** This project could previously use as independent python files (not as module). This old version is keep in *legacy* git branch (not maintained). ## Include libs * **mylib.email.EmailClient:** An email client to forge (eventually using template) and send email via a SMTP server * **mylib.ldap.LdapServer:** A small lib to make requesting LDAP server easier. It's also provide some helper functions to deal with LDAP date string. * **mylib.mysql.MyDB:** An extra small lib to remember me how to interact with MySQL/MariaDB database * **mylib.pgsql.PgDB:** An small lib to remember me how to interact with PostgreSQL database. **Warning:** The insert/update/delete/select methods demonstrate how to forge raw SQL request, but **it's a bad idea**: Prefer using prepared query. * **mylib.opening_hours:** A set of helper functions to deal with french opening hours (including normal opening hours, exceptional closure and nonworking public holidays). * **mylib.pbar.Pbar:** A small lib for progress bar * **mylib.report.Report:** A small lib to implement logging based email report send at exit To know how to use these libs, you can take a look on *mylib.scripts* content or in *tests* directory. ## Copyright Copyright (c) 2013-2021 Benjamin Renard ## License This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.