Skip to main content

Software Heritage core utilities

Project description

swh-core

core library for swh's modules:

  • config parser
  • hash computations
  • serialization
  • logging mechanism
  • database connection
  • http-based RPC client/server

Development

We strongly recommend you to use a virtualenv if you want to run tests or hack the code.

To set up your development environment:

(swh) user@host:~/swh-environment/swh-core$ pip install -e .[testing]

This will install every Python package needed to run this package's tests.

Unit tests can be executed using pytest or tox.

(swh) user@host:~/swh-environment/swh-core$ pytest
============================== test session starts ==============================
platform linux -- Python 3.7.3, pytest-3.10.1, py-1.8.0, pluggy-0.12.0
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/home/ddouard/src/swh-environment/swh-core/.hypothesis/examples')
rootdir: /home/ddouard/src/swh-environment/swh-core, inifile: pytest.ini
plugins: requests-mock-1.6.0, hypothesis-4.26.4, celery-4.3.0, postgresql-1.4.1
collected 89 items

swh/core/api/tests/test_api.py ..                                         [  2%]
swh/core/api/tests/test_async.py ....                                     [  6%]
swh/core/api/tests/test_serializers.py .....                              [ 12%]
swh/core/db/tests/test_db.py ....                                         [ 16%]
swh/core/tests/test_cli.py ......                                         [ 23%]
swh/core/tests/test_config.py ..............                              [ 39%]
swh/core/tests/test_statsd.py ........................................... [ 87%]
....                                                                      [ 92%]
swh/core/tests/test_utils.py .......                                      [100%]
===================== 89 passed, 9 warnings in 6.94 seconds =====================

Note: this git repository uses pre-commit hooks to ensure better and more consistent code. It should already be installed in your virtualenv (if not, just type pip install pre-commit). Make sure to activate it in your local copy of the git repository:

(swh) user@host:~/swh-environment/swh-core$ pre-commit install
pre-commit installed at .git/hooks/pre-commit

Please read the developer setup manual for more information on how to hack on Software Heritage.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

swh.core-0.0.91.tar.gz (1.1 MB view hashes)

Uploaded Source

Built Distribution

swh.core-0.0.91-py3-none-any.whl (1.2 MB view hashes)

Uploaded Python 3

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