LCLS Unified Task Executor.
Project description
LUTE
Description
lute, or LUTE, is the LCLS Unified Task Executor - an automated workflow package for running analysis pipelines at SLAC's LCLS. This project is the next iteration of btx.
This package is used to run arbitrary analysis code (first-party or third-party) in the form of individual analysis Tasks. Tasks can be linked together to form complete end-to-end analysis pipelines or workflows. For workflow management, the package interfaces with Airflow running on S3DF.
Installation
Usage
Roadmap
A timeline is available in ...
Contributing
All contributions most proceed through pull (merge) requests (PRs). Please fork the repository and open a PR when ready to merge your contribution. There is a specific PR template (coming soon...) which should be used to describe the nature of the contribution and how it was implemented. Before beginning, please read through the following guidelines regarding code style, naming conventions and general practices.
Docstrings and Documentation
Modules, classes, and functions should be documented with docstrings. The Google style should be followed, with a minor addition - namely, module level docstrings should include a list of public classes, functions, etc. Example usage sections are optional but recommended for clarity. Refer to the link above for the full specification, or below for an abbreviated example.
"""This is a module level docstring.
Classes:
Class1: Short description
Functions:
function1(prototype): Short description
Exceptions:
MyException: When/why it is raised.
Example usage:
How one might use the classes and functions. Test modules may include how
to run them.
"""
class Class1:
"""Class descriptions can go here or in __init__.
Attributes:
public_attr (type): Description
# properties should be documented separately in their getter.
"""
def __init__(self, arg1: type) -> None:
"""Description of class can go here.
Args:
param1 (type): Description
"""
...
@property
def my_property(self) -> type:
"""type: Property attributes are documented here."""
...
def function1(arg1: type) -> type:
"""Function description.
Args:
arg1 (type): Description
Returns: # Or Yields for generators
name (type): Description # Alternatively, can just be `type: Description`
Raises:
MyException: Why?
"""
...
For documentation generation, MkDocs is used. Docstrings written using the above style guidelines should be parsed correctly for automatically generated documentation.
Branch Conventions
For development of new features on your personal forks of the repository, please try to follow the following naming convention for your branches: {ACRONYM}/{description}. Please see below, under commit messages, for the relevant acronyms. For example, a PR implementing a new feature which produces summaries in the eLog may be called: ENH/elog_summaries.
As new features are implemented in personal forks, this official repository maintains only two branches, which are used to indicate the state of the project in terms of feature-list and stability.
- The
mainbranch contains the latest stable release. - The
devbranch contains the most recent features and changes. This branch should not be used for untested or partially implemented features; however, any and all new additions versus themainbranch are subject to change. When opening a PR for a new feature, it should be merged first to thedevbranch. This branch is periodically merged intomainfollowing the development timeline and list of milestones. Once merged intomain, the commit is tagged, and a new release is made.
Code Style
- Type hints should be used throughout the code base. For the time being, support is still provided for Python 3.9, so certain more recent typing constructions are not available. E.g.
my_var: str | int = get_str_or_int()
while valid in Python 3.10+, is unavailable in Python 3.9. Instead please use the typing module:
from typing import Union
my_var: Union[str, int] = get_str_or_int()
The typing module contains many other useful features for type hint support.
Note that it is possible to use from __future__ import annotations to enable the use of these features. It is a breaking change and is used on a module-by-module basis, please investigate if it applies to your use case.
Commit Messages
Inspired by pcdshub repositories, in turn following NumPy conventions, all commit messages should ideally be prefixed by a three letter acronym. Each of these acronyms has a specific meaning, making it easy to discern at a glance what the intended purpose of the commit is (bug fix, new feature, etc.). Pull (merge) request titles, and origin branches, should use the same acronyms. The following acronyms are in use:
| Acronym | Meaning |
|---|---|
| BUG | Bug fix |
| DEP | Deprecate a feature |
| DOC | Documentation (either source code, or ADRs, design docs, etc.) |
| ENH | Enhancement - new feature. |
| MNT | Maintenance (refactoring, typos, name changes, code style, linting, etc) |
| SKL | Skeleton. This should be used to outline what will later be an ENH. |
| TST | Related to tests. |
| UTL | Utilities. This can be any new tool or changes to CI/CD, etc. |
Class and Object Naming Conventions
Style, Formatting, Linting
This repository uses Black for formatting of Python code. Ruff is used for linting with flake8 rules, and mypy for type checking.
Github actions implement checks for compliance. Formatting changes are auto-committed.
Debugging Code
Temporary debugging code should not be commited to the repository. E.g., extraneous print statements, etc, which are added when fixing a bug. Nonetheless, a selection of permanent debugging options may be included in the code provided they can be disabled when not running in debug mode. For standard operation, this package should be run using the -O flag which disables assert statements and sets the constant __debug__ = False. Without that flag, the package is considered to be running in "debug mode". As such, to include debug related code, please use a construction similar to the following:
if __debug__:
# We are in debugging mode!
# Here is my debug code
...
else: # optional clause if needed
# Python was run like: `python -O ...`
...
Debug logging code (i.e. logger.debug("my message")) need not be placed inside the above if statement. However, the configuration statement for logging level should be. Ideally this is placed at the top of each module.
Authors and acknowledgment
License
This project's license is available in LICENSE.md.
Project status
Early active development - the public API is still subject to change, but some degree of stability can be expected at this point. The codebase is in active usage in production.
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
Built Distributions
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
File details
Details for the file lute_lcls-0.2.0.tar.gz.
File metadata
- Download URL: lute_lcls-0.2.0.tar.gz
- Upload date:
- Size: 2.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d6a42760af7ad7aea4250cb3e67c6adf2aff56916422a7686c9b0b75645f0949
|
|
| MD5 |
8537374f976938c19b7f891223266218
|
|
| BLAKE2b-256 |
ad8f2262d782022a664ef8ff7b2bba02ef8dc0376b3c89c671d4cd561c89447d
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0.tar.gz:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0.tar.gz -
Subject digest:
d6a42760af7ad7aea4250cb3e67c6adf2aff56916422a7686c9b0b75645f0949 - Sigstore transparency entry: 1078018183
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.1 MB
- Tags: CPython 3.13, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49b338680914b06b18688d68faac0a639a1a98b6ebe6fa6f65b242145fcfe1ad
|
|
| MD5 |
8d77c155c710b295829c53bd7785c80c
|
|
| BLAKE2b-256 |
46051832689bc837401fd547c1005fb7ad7f305cebdf8a53a15e3b0c3863c66f
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl -
Subject digest:
49b338680914b06b18688d68faac0a639a1a98b6ebe6fa6f65b242145fcfe1ad - Sigstore transparency entry: 1078018228
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88cab323cc31d6ca68300d419e036827d31472ac5912c46a44a2b0529eadfbee
|
|
| MD5 |
2f59266e4889a25abd0da5455f7a5dc7
|
|
| BLAKE2b-256 |
75a500cdb6896e5cdb668322219853b30940a9d48d4cf5ee5fb6c129571f82df
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
88cab323cc31d6ca68300d419e036827d31472ac5912c46a44a2b0529eadfbee - Sigstore transparency entry: 1078018245
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.1 MB
- Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9b6b646f673efc9a39fa324b7dfb6234904c17f5c4f0631f4220ba9e504f31b2
|
|
| MD5 |
b7ad0eb2ad2605238e2dd51de7136916
|
|
| BLAKE2b-256 |
ad32b343e8b91ff8a380c35a480a98de06725f1545075059c1fa49095698a9ab
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl -
Subject digest:
9b6b646f673efc9a39fa324b7dfb6234904c17f5c4f0631f4220ba9e504f31b2 - Sigstore transparency entry: 1078018191
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0dc1e92f15cad5bcf7850b6a1e0e307d704c7bcea19d1cac93242e88b1d1b1fe
|
|
| MD5 |
e29c6368277072c5224c58a4deceda87
|
|
| BLAKE2b-256 |
72b51a9009f76c3eeb69b28f3aa01968f8e0bfcec3a2209c1ba491071a6518ea
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
0dc1e92f15cad5bcf7850b6a1e0e307d704c7bcea19d1cac93242e88b1d1b1fe - Sigstore transparency entry: 1078018248
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.1 MB
- Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1edfdea461f85f366555b2264817af5ef46792e4ec0665b8f857ca124a63207f
|
|
| MD5 |
33d63a95d59d453766396f06c9e90940
|
|
| BLAKE2b-256 |
777051fca6e6d1167039e9a5a6232a9334dcb5fa04ca1e044b46b744bfcddf02
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl -
Subject digest:
1edfdea461f85f366555b2264817af5ef46792e4ec0665b8f857ca124a63207f - Sigstore transparency entry: 1078018210
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b90471141f0bc3e845338f6e7e88311757d28db1449e3963c190f83a09695eb
|
|
| MD5 |
78307e8236ac01c680e703672d7b7376
|
|
| BLAKE2b-256 |
9e0e0e31fe2bb1c5d68929f3aa38ebc69ab867d9d2ad698a80a13ce185d2e90c
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
4b90471141f0bc3e845338f6e7e88311757d28db1449e3963c190f83a09695eb - Sigstore transparency entry: 1078018205
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.1 MB
- Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70524011f6f429da6434e993e50a291f36c066a36da68ace1a79fcc47c6fd912
|
|
| MD5 |
e261dc0ec6a86d0ace60d2dbca8de052
|
|
| BLAKE2b-256 |
a9875352d430f73acb57e8b9f0c77250bce96933151a1e9fc318174659703e3e
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl -
Subject digest:
70524011f6f429da6434e993e50a291f36c066a36da68ace1a79fcc47c6fd912 - Sigstore transparency entry: 1078018235
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48ddf8c8f011c3db66fe044f260a602e5c227fd6e13fa19b7ddfd3a852bf999e
|
|
| MD5 |
c28ee2cbe8238d8ac40b45c2c863b162
|
|
| BLAKE2b-256 |
452a1a3c5955c49dd3e8f21bf146d5557537c0a19a011c827ec975839c4a77be
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
48ddf8c8f011c3db66fe044f260a602e5c227fd6e13fa19b7ddfd3a852bf999e - Sigstore transparency entry: 1078018260
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.1 MB
- Tags: CPython 3.9, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb130c19bf232a20ce6b249dc5163b758f681497080c39667881fb52f805dc5d
|
|
| MD5 |
0f0d3cd1060b3b54a5627ed5b7a6f8ef
|
|
| BLAKE2b-256 |
2f7ac202f843b4fbe37938bf071f5325045749ac3dbb103d8b6f19d380a70c1b
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl -
Subject digest:
bb130c19bf232a20ce6b249dc5163b758f681497080c39667881fb52f805dc5d - Sigstore transparency entry: 1078018238
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7239aabbc1f966eafb7bbde88f4822602a619a23b3272b171df46bb83cb74598
|
|
| MD5 |
fd83b502941efacc98d60804e2752a4f
|
|
| BLAKE2b-256 |
7fb8dc94053c04f5c4415e0f837891d592e6dc77201227e6e74f1033337a0d92
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
7239aabbc1f966eafb7bbde88f4822602a619a23b3272b171df46bb83cb74598 - Sigstore transparency entry: 1078018244
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp38-cp38-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp38-cp38-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 2.1 MB
- Tags: CPython 3.8, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
609eef567c50f4c4ba729c8c19c78c8cd3aee94ad2ab811e4330e9880300c5b6
|
|
| MD5 |
add17d28132ab1292420e59db1736bb8
|
|
| BLAKE2b-256 |
38bf0d141a109202665f28cf4fc3d3e165f0839fbb6da71f900b04916989bcc8
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp38-cp38-musllinux_1_2_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp38-cp38-musllinux_1_2_x86_64.whl -
Subject digest:
609eef567c50f4c4ba729c8c19c78c8cd3aee94ad2ab811e4330e9880300c5b6 - Sigstore transparency entry: 1078018265
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file lute_lcls-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: lute_lcls-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c83089f96132a793bd24f99a46308e68e566e3b4c6cf27af0cdb0044dd5e5d88
|
|
| MD5 |
67e40e1ae0e60118c5959bc3667fbe28
|
|
| BLAKE2b-256 |
5f4bab955547ff20b1a86ed58db30a60988e877907f9fa1d05428a1bf1123ac0
|
Provenance
The following attestation bundles were made for lute_lcls-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on slac-lcls/lute
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lute_lcls-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
c83089f96132a793bd24f99a46308e68e566e3b4c6cf27af0cdb0044dd5e5d88 - Sigstore transparency entry: 1078018221
- Sigstore integration time:
-
Permalink:
slac-lcls/lute@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/slac-lcls
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@9e21c3eb76afdc2a63ab9ef16da8e208f87c31d7 -
Trigger Event:
push
-
Statement type: