Metadata-Version: 2.1
Name: invesytoolbox
Version: 0.0.14
Summary: Tools for Python scripts or terminal
Home-page: https://gitlab.com/Rastaf/invesytoolbox
Author: Georg Pfolz
Author-email: georg.pfolz@invesy.at
License: MIT License
Project-URL: Bug Tracker, https://gitlab.com/Rastaf/invesytoolbox/-/issues
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE.txt

# invesytoolbox

A set of useful tools, created for my own convenience.

Why "invesy"? Invesy (from German **In**halts**ve**rwaltungs**sy**stem == content management system) is a closed source cms I created with Thomas Macher. It's only used in-house, that's why we didn't bother making it open source.

Invesy runs on Zope, so most of the individual website's logic runs in restricted Python. That's one reason for this toolbox: providing a set of useful functions in one single package which can be allowed in our restricted Python environment without having to allow a long list of external packages. Also some packages, while being importable, contain functions or methods not usable in restricted Python (like bs4's prettify).

That's also why all date and time functions also take into account the old DateTime (as opposed to datetime) package, on which Zope is still relying upon heavily.

The documentation can be found [here](https://rastaf.gitlab.io/invesytoolbox/).

# History
## 0.0.14
* *could_be_a_name* and *sort_names*: now working also with prename-only and prenames including a hyphen.

## 0.0.13
* *get_dateformat* now also processes time
* *str_to_dt* now checks for valid string
* *is_valid_datetime_string*: wrapper for checking with *str_to_dt*
* *remove_time* from datetime or DateTime

## 0.0.12
* removed documentation from the README file, instead a link to the gitlab pages
* *map_specialChars* now recognizes Unicode character U+0308 (UTF-8 cc 88 = "COMBINING DIAERESIS").
* *any_2boolean*
* *get_dateformat*: argument *checkonly*
* data functions: argument *json_data* changed to *metadata* (it's a dictionary)

## 0.0.11
* BeautifulSoup and nameparser added to requirements.txt
* Removed "Date" conversions (modified DateTime) because it's a bad idea
* *normalize_name* (using nameparser) added to *itb_text_name*
* *capitalize_name* rewritten (now quasi a wrapper for normalize_name)
* *could_be_a_name* rewritten using *normalize_name* (nameparser)

## 0.0.10
* *check_spam* for web forms
* *dictlist_2datatypes*: iterates through a list of dictionaries and applies *dict_2datatypes*
* *prettify_html*: provides *prettify* from BeautifulSoup, because it can't be used directly from restricted Python.
* *could_be_a_name*: checks if a string could be a name

## 0.0.9
* *change\_query\_string* respects Zope parameter converters (like `paramname:int`)

## 0.0.8
* New submodule www
   * *change\_query\_string*

## 0.0.7
* shorter submodule names (no _tools suffix)
* *is_holiday* works without argument
* *create\_email\_message*: new argument **encoding**
* *process_phonenumbers*: cleaned up arguments
* *DT_date*: strip a DateTime of its time (get a "naked" date)
* *could\_be\_a\_name*: check if a string could possibly be a name

## 0.0.6
* renamed *capitalize\_text* to *capitalize_name* and removed name argument
* added Sphinx documentation

## 0.0.5 (2022-06-11)
* removed **terminal_tools** (will be included in a separate package)

## 0.0.4 (2022-06-09)
* better formatted README

## 0.0.3 (2022-06-09)
* updated README (list of functions and a short description)

## 0.0.2 (2022-06-09)
* removed VERSION file

## 0.0.1 (2022-06-09)
* first version

