VOOZH about

URL: https://pypi.org/project/allotropy/

โ‡ฑ allotropy ยท PyPI


Skip to main content

allotropy 0.1.137

pip install allotropy

Latest release

Released:

Converts to ASM (Allotrope Simple Model) from various file formats.

Navigation

Unverified details

These details have not been verified by PyPI
Project links
Meta
  • License: MIT License
  • Author: Benchling Open Source
  • Tags allotrope , allotropy , asm , benchling , converters
  • Requires: Python >=3.10
Classifiers

Project description

*Allotropeยฎ is a registered trademark of the Allotrope Foundation; no affiliation with the Allotrope Foundation is claimed or implied.

Test Introduction

Welcome to allotropy -- a Python library by Benchling for converting instrument data into the Allotrope Simple Model (ASM).

View the list of instrument software currently supported in SUPPORTED_INSTRUMENT_SOFTWARE.

The objective of this library is to read text or Excel based instrument software output and return a JSON representation that conforms to the published ASM schema. Note that some schemas do not yet match the published ASM schema, in these cases the CHANGE_NOTES.md file included alongside the schema details the differences and proposed changes to ASM or the library schema. The code in this library does not convert from proprietary/binary output formats and so has no need to interact with any of the specific vendor softwares.

If you aren't familiar with Allotrope, we suggest you start by reading the Allotrope Product Overview.

We have chosen to have this library output ASM since JSON is easy to read and consume in most modern systems and can be checked by humans without any special tools needed. All of the published open source ASMs can be found in the ASM Gitlab repository.

This code is published under the permissive MIT license because we believe that standardized instrument data is a benefit for everyone in science.

Contributing

We welcome community contributions to this library and we hope that together we can expand the coverage of ASM-ready data for everyone. If you are interested, please read our contribution guidelines.

Usage

Convert a file to an ASM dictionary:

fromallotropy.parser_factoryimportVendor
fromallotropy.to_allotropeimportallotrope_from_file

asm_dict=allotrope_from_file("filepath.txt",Vendor.MOLDEV_SOFTMAX_PRO)

or, convert any IO:

fromallotropy.parser_factoryimportVendor
fromallotropy.to_allotropeimportallotrope_from_io

withopen("filename.txt")asf:
asm_dict=allotrope_from_io(f,Vendor.MOLDEV_SOFTMAX_PRO)

bytes_io=BytesIO(file_stream)
asm_dict=allotrope_from_io(bytes_io,Vendor.MOLDEV_SOFTMAX_PRO)

Specific setup and build instructions

.gitignore: used standard GitHub Python template and added their recommended JetBrains lines

Setup

Install Hatch: https://hatch.pypa.io/latest/ Install Python: https://www.python.org/downloads/ This library supports Python 3.10 or higher. Hatch will install a matching version of Python (defined in pyproject.toml) when it sets up your environment.

Tell git to use .githooks:

gitconfigcore.hooksPath.githooks

Dependencies

To add requirements used by the library, update dependencies in pyproject.toml:

  • For project dependencies, update dependencies under [project].
  • For script dependencies, update dependencies under [tool.hatch.envs.default].
  • For lint dependencies, update dependencies under [tool.hatch.envs.lint].
  • For test dependencies, update dependencies under [tool.hatch.envs.test].

Useful Hatch commands

List all environments:

hatchenvshow

Run all lint:

hatchrunlint:all

Auto-fix all possible lint issues:

hatchrunfix

Run all tests in the default python enviroment (currently: 3.11.9)

hatchruntest

Run all tests against all supported python versions (currently 3.10-3.12) Note: this is checked against in CI - your change must pass this to merge.

hatchruntest_all:test

Run against a specific python version (useful for debugging if a test is failing in one environment)

hatchruntest_all.py3.12:test

Run a specific test file (replace the filepath with your own):

hatchruntesttests/allotrope/allotrope_test.py

Run all tests with coverage:

hatchruntest:cov

Spawn a shell within an environment for development:

hatchshell

Publish

NOTE: only package admins can publish allotropy.

To publish a new version:

hatchrunscripts:update-version

Merge the resulting PR, and then run on main:

hatch build
hatch publish

Project details

Unverified details

These details have not been verified by PyPI
Project links
Meta
  • License: MIT License
  • Author: Benchling Open Source
  • Tags allotrope , allotropy , asm , benchling , converters
  • Requires: Python >=3.10
Classifiers

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

allotropy-0.1.137.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

Filter files by name, interpreter, ABI, and platform.

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

Copy a direct link to the current filters

allotropy-0.1.137-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file allotropy-0.1.137.tar.gz.

File metadata

  • Download URL: allotropy-0.1.137.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.25.0

File hashes

Hashes for allotropy-0.1.137.tar.gz
Algorithm Hash digest
SHA256 08e3670555f95140051b0b42f2a339836ad79297a063a793a9fae0654d58099b
MD5 bab091ea010df8beb67d4ffb9c1a5424
BLAKE2b-256 f180613ac04d82ad21cc9a3487a0d462b8644ff555f976175389f50a7c260338

See more details on using hashes here.

File details

Details for the file allotropy-0.1.137-py3-none-any.whl.

File metadata

  • Download URL: allotropy-0.1.137-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.25.0

File hashes

Hashes for allotropy-0.1.137-py3-none-any.whl
Algorithm Hash digest
SHA256 6136abb37d4c64c9a6ea54ab047e03adf36acf4019424ab812b3e1b03e3736d5
MD5 900e9008e3c32c6c1ff166aad4805342
BLAKE2b-256 ce417838f857a52b56c6f2f7fc8b07998f13306f89319ff1e393b63e75f6c5a9

See more details on using hashes here.

Supported by

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