Metadata-Version: 2.1
Name: osw
Version: 0.21.2
Summary: Python toolset for data processing, queries, wikicode generation and page manipulation
Home-page: https://github.com/OpenSemanticLab/osw-python
Author: "Simon Stier"
Author-email: simon.stier@isc.fraunhofer.de
License: AGPL-3.0-or-later
Project-URL: Documentation, https://opensemanticlab.github.io/osw-python/
Project-URL: Source, https://github.com/OpenSemanticLab/osw-python
Project-URL: Changelog, https://github.com/OpenSemanticLab/osw-python/blob/main/CHANGELOG.md
Project-URL: Download, https://pypi.org/project/osw/#files
Platform: any
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
License-File: LICENSE.txt
Requires-Dist: pydantic>=1.10.17
Requires-Dist: datamodel-code-generator>=0.25
Requires-Dist: mwclient
Requires-Dist: mwparserfromhell
Requires-Dist: rdflib
Requires-Dist: PyLD
Requires-Dist: SPARQLWrapper
Requires-Dist: jsonpath-ng
Requires-Dist: numpy
Requires-Dist: pyyaml
Requires-Dist: pandas
Requires-Dist: typing_extensions
Requires-Dist: pathlib
Requires-Dist: sphinx
Requires-Dist: chardet
Requires-Dist: matplotlib
Requires-Dist: scipy
Requires-Dist: dask
Requires-Dist: pybars3
Provides-Extra: dataimport
Requires-Dist: geopy; extra == "dataimport"
Requires-Dist: deepl; extra == "dataimport"
Provides-Extra: db
Requires-Dist: psycopg2; extra == "db"
Requires-Dist: sqlalchemy; extra == "db"
Provides-Extra: ui
Requires-Dist: pysimplegui; extra == "ui"
Provides-Extra: s3
Requires-Dist: boto3; extra == "s3"
Provides-Extra: dev
Requires-Dist: tox; extra == "dev"
Provides-Extra: testing
Requires-Dist: setuptools; extra == "testing"
Requires-Dist: pytest; extra == "testing"
Requires-Dist: pytest-cov; extra == "testing"
Requires-Dist: pytest-mock; extra == "testing"
Requires-Dist: geopy; extra == "testing"
Requires-Dist: deepl; extra == "testing"
Requires-Dist: sqlalchemy; extra == "testing"
Requires-Dist: psycopg2-binary; extra == "testing"

[![PyPI-Server](https://img.shields.io/pypi/v/osw.svg)](https://pypi.org/project/osw/)
[![DOI](https://zenodo.org/badge/458130867.svg)](https://zenodo.org/badge/latestdoi/458130867)
[![Coveralls](https://img.shields.io/coveralls/github/OpenSemanticLab/osw-python/main.svg)](https://coveralls.io/r/<USER>/osw)
[![Project generated with PyScaffold](https://img.shields.io/badge/-PyScaffold-005CA0?logo=pyscaffold)](https://pyscaffold.org/)

# osw

Python toolset for data processing, queries, wikicode generation and page manipulation within OpenSemanticLab.
General features for object oriented interaction with knowledge graphs are planned to be moved to a standalone package: [oold-python](https://github.com/OpenSemanticWorld/oold-python)

## Installation
```
pip install osw
```

## Troubleshooting

### `Error: datamodel-codegen not found`
make sure datamodel-codegen is installed and included in PATH, e. g. on jupyterlab:
```
os.environ["PATH"] += os.pathsep + "/home/jovyan/.local/bin"
```

## Documentation

https://opensemanticlab.github.io/osw-python/


## Development

Dev install
```bash
pip install -e . [dev,testing]
```

Activate pre-commit hooks (in git console)
```
pre-commit install
```

Run tests
```bash
tox -e test
```

Run integration tests (tests are skipped if login params are not provided)
```bash
tox -e test -- --wiki_domain "<osl-domain>" --wiki_username "<(bot)login>" --wiki_password "<password>" --db_username "<username>" --db_password "<password>"
```

<!-- pyscaffold-notes -->

## Note

This project has been set up using PyScaffold 4.3.1. For details and usage
information on PyScaffold see https://pyscaffold.org/.
