Skip to main content

A Python library and tools for the DaSCH Service Platform

Project description

PyPI version

DSP-TOOLS - The DaSCH Service Platform Tools Repository

dsp-tools is a python package containing a command line tool for data model (ontology) creation, a library allowing creation of single resources and mass upload using the bulk import of data into the Knora framework.

The package consists of:

  • dsplib Python modules for accessing Knora using the API (ontology creation, data import/export etc.)
  • dsp-tools A command line program to perfrom several operations on a DSP server:
    • create an ontology out of a simple JSON description
    • dump an existing ontology from a DSP server to a JSON file
    • Bulk-upload of data from a XML data file

Go to Full Documentation

Install

Please note that dsp-tools require Python 3.9 for working properly!

To install the latest published version from PyPI, run:

$ pip3 install dsp-tools

To upgrade to the latest published version, run:

$ pip3 install --upgrade dsp-tools

Local Development Environment

Please consult the https://docs.dasch.swiss/developers documentation on how to install these prerequisites.

Makefile for repository management tasks

The project contains a Makefile defining management tasks. Please use make help to see what is available.

To install from source, i.e., this repository, run:

$ make install

Testing

$ make test

Publishing

Publishing is automated with github actions and should not be done manually.

Ensure to have only one Pull Request per feature, and follow the conventions for commit messages and PR title.

If this is done correctly, when merging a PR into main, the release-please action will create or update a release-PR.
This PR will follow semantic versioning and update the change log.
Once all desired features are merged, the release can be executed by merging the release-PR into main.
This will trigger actions that create a release on Github, on PyPI and the docs.

Publishing to PyPi

Generate distribution package. Make sure you have the latest versions of setuptools and wheel installed. Remove the distand buil-directories: rm -rf bild dist

$ make upgrade-dist-tools
$ make dist

You can install the package locally from the dist:

$ python3 -m pip install ./dist/some_name.whl

Upload package with twine,

first create ~/.pypirc in your home folder:

[distutils] 
index-servers=pypi
[pypi] 
repository = https://upload.pypi.org/legacy/ 
username =your_username_on_pypi

then upload:

$ make upload

For local development:

$ python3 setup.py --editable .

Requirements

To install the requirements:

$ pip3 install -r requirements.txt

To generate a "requirements" file (usually requirements.txt), that you commit with your project, do:

$ pip3 freeze > requirements.txt

Running tests with Bazel

Run all tests:

$ bazel test //...

Run single test:

$ bazel test //test:test_user

Project details


Release history Release notifications | RSS feed

This version

1.1.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dsp-tools-1.1.2.tar.gz (98.7 kB view details)

Uploaded Source

Built Distribution

dsp_tools-1.1.2-py3-none-any.whl (105.9 kB view details)

Uploaded Python 3

File details

Details for the file dsp-tools-1.1.2.tar.gz.

File metadata

  • Download URL: dsp-tools-1.1.2.tar.gz
  • Upload date:
  • Size: 98.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for dsp-tools-1.1.2.tar.gz
Algorithm Hash digest
SHA256 c2a3d1a4ca150ef331308a316ed63fcdc28146b006e4aacd6db9bfee57902b1f
MD5 8709e44fd19cbf60562763fe23cf9015
BLAKE2b-256 585a0014a37c10a4457593f41a9a2cb83b51a829ca7a0f293072f65d998b1ed6

See more details on using hashes here.

File details

Details for the file dsp_tools-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: dsp_tools-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 105.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for dsp_tools-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b13278a48e6ecb691734b791d2bdaeae897357cc14265e6de93d0eed02ec53c9
MD5 953f9567af1d39cc8f174d38a7e9f390
BLAKE2b-256 3c8cb97e23003fd799caa4246194157c113a699079e6afb393194b28d08e22ec

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page