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.13.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.13-py3-none-any.whl (20.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: finch_tensor-0.2.13.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.11.0-1018-azure

File hashes

Hashes for finch_tensor-0.2.13.tar.gz
Algorithm Hash digest
SHA256 96c8ed31bbf5d0942ba5b1d2efbe848cd2d129529d9f67846da12aa03215682c
MD5 da0bbe3daba7f9e3d03bcaef08519b15
BLAKE2b-256 afdffdf84018565110f7c21efa5632a427b887cd40bbd3dd42c087924880eda0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: finch_tensor-0.2.13-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.11.0-1018-azure

File hashes

Hashes for finch_tensor-0.2.13-py3-none-any.whl
Algorithm Hash digest
SHA256 34209c5c0dc6c570de62b308412204494d2c6511ce1f9297f1f4d0a0cc7ab253
MD5 a9799a5cf86f5c2001f2799b01bd8db8
BLAKE2b-256 8007187be4bb61316a3e100a8e4417a390ccf0902ab1534fb22eac7dcb1efed4

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