Skip to main content

Sparse Tensor Programming in Python powered by Finch.jl

Project description

finch-tensor

This is the beginnings of a sparse tensor library for Python, backed by the Finch.jl tensor compiler.

Source

The source code for finch-tensor is available on GitHub at https://github.com/finch-tensor/finch-tensor

Installation

finch-tensor is available on PyPi, and can be installed with pip:

pip install finch-tensor

Contributing

Packaging

Finch uses poetry for packaging.

To install for development, clone the repository and run:

poetry install --with test

to install the current project and dev dependencies.

Working with a local copy of Finch.jl

The develop.py script can be used to set up a local copy of Finch.jl for development.

Usage:
    develop.py [--restore] [--path <path>]

Options:
    --restore   Restore the original juliapkg.json file.
    --path      Path to the local copy of Finch.jl [default: ../Finch.jl].

Publishing

The "Publish" GitHub Action is a manual workflow for publishing Python packages to PyPI using Poetry. It handles the version management based on the pyproject.toml file and automates tagging and creating GitHub releases.

Version Update

Before initiating the "Publish" action, update the package's version number in pyproject.toml. Follow semantic versioning guidelines for this update.

Triggering the Action

The action is triggered manually. Once the version in pyproject.toml is updated, manually start the "Publish" action from the GitHub repository's Actions tab.

Process and Outcomes

On successful execution, the action publishes the package to PyPI and tags the release in the GitHub repository. If the version number is not updated, the action fails to publish to PyPI, and no tagging or release is done. In case of failure, correct the version number and rerun the action.

Best Practices

  • Ensure the version number in pyproject.toml is updated before triggering the action.
  • Regularly check action logs for successful completion or to identify issues.

Pre-commit hooks

To add pre-commit hooks, run:

poetry run pre-commit install

Testing

Finch uses pytest for testing. To run the tests:

poetry run pytest

Project details


Download files

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

Source Distribution

finch_tensor-0.2.14.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

finch_tensor-0.2.14-py3-none-any.whl (20.3 kB view details)

Uploaded Python 3

File details

Details for the file finch_tensor-0.2.14.tar.gz.

File metadata

  • Download URL: finch_tensor-0.2.14.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.11.0 Linux/6.14.0-1012-azure

File hashes

Hashes for finch_tensor-0.2.14.tar.gz
Algorithm Hash digest
SHA256 db272eb8ffb925ec743babe2e16c960afcaa16f8ce0b9c9b25742ba21af2163f
MD5 8eebd137d2c0812ec085563cca2416d1
BLAKE2b-256 dab087092aef6cede4b490f64793ef60dd30943ab96b4d237ef248a1300b7381

See more details on using hashes here.

File details

Details for the file finch_tensor-0.2.14-py3-none-any.whl.

File metadata

  • Download URL: finch_tensor-0.2.14-py3-none-any.whl
  • Upload date:
  • Size: 20.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.11.0 Linux/6.14.0-1012-azure

File hashes

Hashes for finch_tensor-0.2.14-py3-none-any.whl
Algorithm Hash digest
SHA256 772cece64ede30cd87f053f02e8c64bb2b604f20877c4e0195aee961aa0a32a6
MD5 eaeee9b3ae6f02271b326f5741fe4f9e
BLAKE2b-256 3db142c7ee1f4af047a236c54467260d7d0d5b7892888568406640c6d62aa0f5

See more details on using hashes here.

Supported by

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