Value-driven and cost-sensitive tools for scikit-learn
Project description
Empulse
Empulse is a package aimed to enable value-driven and cost-sensitive analysis in Python. The package implements popular value-driven and cost-sensitive metrics and algorithms in accordance to sci-kit learn conventions. This allows the measures to seamlessly integrate into existing ML workflows.
Installation
Empulse requires python 3.11 or higher.
Install empulse via pip with
pip install empulse
Documentation
You can find the documentation here.
Features
- Ready to use out of the box with scikit-learn
- Use case specific profit and cost metrics
- Build your own profit and cost metrics
- Various profit-driven and cost-sensitive models
- Easy passing of instance-dependent costs
- Cost-aware resampling and relabeling
- Find the optimal decision threshold
- Easy access to real-world datasets for benchmarking
Take the tour
Ready to use out of the box with scikit-learn
All components of the package are designed to work seamlessly with scikit-learn.
Models are implemented as scikit-learn estimators and can be used anywhere a scikit-learn estimator can be used.
Pipelines
from empulse.models import CSLogitClassifier
from sklearn.datasets import make_classification
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
X, y = make_classification()
pipeline = Pipeline([
('scaler', StandardScaler()),
('model', CSLogitClassifier()),
])
pipeline.fit(X, y, model__fp_cost=10, model__fn_cost=1)
Cross-validation
from sklearn.model_selection import cross_val_score
cross_val_score(
pipeline,
X,
y,
scoring='roc_auc',
params={'model__fp_cost': 10, 'model__fn_cost': 1},
)
Grid search
from sklearn.model_selection import GridSearchCV
param_grid = {'model__C': [0.1, 1, 10]}
grid_search = GridSearchCV(pipeline, param_grid, scoring='roc_auc')
grid_search.fit(X, y, model__fp_cost=10, model__fn_cost=1)
All metrics can easily be converted as scikit-learn scorers and can be used in the same way as any other scikit-learn scorer.
from empulse.metrics import expected_cost_loss
from sklearn.metrics import make_scorer
scorer = make_scorer(
expected_cost_loss,
response_method='predict_proba',
greater_is_better=False,
fp_cost=10,
fn_cost=1,
)
cross_val_score(
pipeline,
X,
y,
scoring=scorer,
params={'model__fp_cost': 10, 'model__fn_cost': 1},
)
Use-case specific profit and cost metrics
Empulse offers a wide range of profit and cost metrics that are tailored to specific use cases such as:
For other use cases, the package provides generic implementations for:
- the cost loss,
- the expected cost loss,
- the expected log cost loss,
- the savings score,
- the expected savings score,
- and the maximum profit score.
Build your own profit and cost metrics
The Metric class allows you to easily build your own profit and cost metrics.
First, you start to define the cost matrix through the CostMatrix class.
A tiny example: suppose you’re building a spam filter.
- False positive (legit email marked as spam) costs 5, because you might miss something important
- False negative (spam slips through) costs 1, because it wastes your time
from empulse.metrics import CostMatrix
cost_matrix = CostMatrix().add_fp_cost('fp').add_fn_cost('fn')
cost_matrix.alias({'opportunity_cost': 'fp', 'time_wasted_cost': 'fn'})
Now, you can define your own profit and cost metrics using different strategies.
from empulse.metrics import Metric, Cost, Savings, MaxProfit
expected_cost_loss = Metric(cost_matrix=cost_matrix, strategy=Cost())
expected_savings_score = Metric(cost_matrix=cost_matrix, strategy=Savings())
expected_max_profit_score = Metric(cost_matrix=cost_matrix, strategy=MaxProfit())
expected_cost_loss(
y, pipeline.predict_proba(X)[:, 1], opportunity_cost=5, time_wasted_cost=1
)
Your custom metric can also be optimized by the models:
from empulse.models import CSBoostClassifier
csboost = CSBoostClassifier(loss=expected_cost_loss)
csboost.fit(X, y, opportunity_cost=5, time_wasted_cost=1)
Read more in the User Guide.
Various profit-driven and cost-sensitive models
Empulse provides a range of profit-driven and cost-sensitive models such as:
- CSLogitClassifier,
- CSBoostClassifier,
- CSTreeClassifier,
- CSForestClassifier,
- CSBaggingClassifier,
- B2BoostClassifier,
- RobustCSClassifier,
- ProfLogitClassifier,
- BiasRelabelingClassifier,
- BiasResamplingClassifier,
- and BiasReweighingClassifier.
Each classifier tries to mimic the behaviour of sklearn's classifiers with a cost-sensitive twist.
from empulse.models import CSTreeClassifier
from sklearn.tree import DecisionTreeClassifier
cstree = CSTreeClassifier(max_depth=2, min_samples_leaf=1, random_state=42)
dtree = DecisionTreeClassifier(max_depth=2, min_samples_leaf=1, random_state=42)
cstree.fit(X, y, fp_cost=10, fn_cost=1)
dtree.fit(X, y)
Easy passing of instance-dependent costs
Instance-dependent costs can easily be passed to the models through metadata routing.
For instance, the instance-dependent costs are passed dynamically to each fold of the cross-validation
through requesting the costs in the set_fit_request method of the model
and the set_score_request method of the scorer.
import numpy as np
from empulse.models import CSTreeClassifier
from empulse.metrics import expected_cost_loss
from sklearn import set_config
from sklearn.datasets import make_classification
from sklearn.model_selection import cross_val_score
from sklearn.metrics import make_scorer
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
set_config(enable_metadata_routing=True)
X, y = make_classification()
fp_cost = np.random.rand(y.size)
fn_cost = np.random.rand(y.size)
pipeline = Pipeline([
('scale', StandardScaler()),
('model', CSTreeClassifier().set_fit_request(fp_cost=True, fn_cost=True)),
])
scorer = make_scorer(
expected_cost_loss,
response_method='predict_proba',
greater_is_better=False,
).set_score_request(fp_cost=True, fn_cost=True)
cross_val_score(pipeline, X, y, scoring=scorer, params={'fp_cost': fp_cost, 'fn_cost': fn_cost})
Cost-aware resampling and relabeling
Empulse uses the imbalanced-learn package to provide cost-aware resampling and relabeling techniques:
from empulse.samplers import CostSensitiveSampler
from sklearn.datasets import make_classification
X, y = make_classification()
sampler = CostSensitiveSampler()
X_resampled, y_resampled = sampler.fit_resample(X, y, fp_cost=2, fn_cost=1)
They can be used in an imbalanced-learn pipeline:
import numpy as np
from empulse.samplers import CostSensitiveSampler
from imblearn.pipeline import Pipeline
from sklearn import set_config
from sklearn.datasets import make_classification
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
set_config(enable_metadata_routing=True)
X, y = make_classification()
fp_cost = np.random.rand(y.size)
fn_cost = np.random.rand(y.size)
pipeline = Pipeline([
('scaler', StandardScaler()),
('sampler', CostSensitiveSampler().set_fit_resample_request(fp_cost=True, fn_cost=True)),
('model', LogisticRegression()),
])
pipeline.fit(X, y, fp_cost=fp_cost, fn_cost=fn_cost)
Find the optimal decision threshold
Empulse provides the
CSThresholdClassifier
which allows you to find the optimal decision threshold for a given cost matrix to minimize the expected cost loss.
The meta-estimator changes the predict method of the base estimator to predict the class with the lowest expected cost.
from empulse.models import CSThresholdClassifier
from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegression
X, y = make_classification()
model = CSThresholdClassifier(estimator=LogisticRegression())
model.fit(X, y)
model.predict(X, fp_cost=2, fn_cost=1)
Metrics like the maximum profit score conveniently return the optimal target threshold. For example, the Expected Maximum Profit measure for customer churn (EMPC) tells you what fraction of the customer base should be targeted to maximize profit.
from empulse.metrics import empc
from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegression
X, y = make_classification()
model = LogisticRegression()
predictions = model.fit(X, y).predict_proba(X)[:, 1]
score, threshold = empc(y, predictions, clv=50)
This score can then be converted to a decision threshold by using the
classification_threshold
function.
from empulse.metrics import classification_threshold
decision_threshold = classification_threshold(y, predictions, customer_threshold=threshold)
This can then be combined with sci-kit learn's
FixedThresholdClassifier
to create a model that predicts the class with the highest expected profit.
from sklearn.model_selection import FixedThresholdClassifier
model = FixedThresholdClassifier(estimator=model, threshold=decision_threshold)
model.predict(X)
Easy access to real-world datasets for benchmarking
Empulse provides easy access to real-world datasets for benchmarking cost-sensitive models.
Each dataset returns the features, the target, and the instance-dependent costs, ready to use in a cost-sensitive model.
from empulse.datasets import load_give_me_some_credit
from empulse.models import CSLogitClassifier
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
X, y, tp_cost, fp_cost, tn_cost, fn_cost = load_give_me_some_credit(return_X_y_costs=True)
pipeline = Pipeline([
('scaler', StandardScaler()),
('model', CSLogitClassifier()),
])
pipeline.fit(
X,
y,
model__tp_cost=tp_cost,
model__fp_cost=fp_cost,
model__tn_cost=tn_cost,
model__fn_cost=fn_cost,
)
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 empulse-0.11.1.tar.gz.
File metadata
- Download URL: empulse-0.11.1.tar.gz
- Upload date:
- Size: 5.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8da9300e5c0335e3064f0866ca788945be11b410694441ea4a4db631687705e9
|
|
| MD5 |
0985f2282a8231fc13ac5a5c570aa169
|
|
| BLAKE2b-256 |
2408bca954f843d881cd9cf2f256fa64219f563ceab4156e5c2400b29698def3
|
Provenance
The following attestation bundles were made for empulse-0.11.1.tar.gz:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1.tar.gz -
Subject digest:
8da9300e5c0335e3064f0866ca788945be11b410694441ea4a4db631687705e9 - Sigstore transparency entry: 1473856148
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: empulse-0.11.1-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8649e142c3261f351d24695be83a2a66f7553ec3ef7e85c4c3ef66af2f734c16
|
|
| MD5 |
d2eafab6bc401ce7745ae1995ceb2655
|
|
| BLAKE2b-256 |
cb8a52c819f98c0bbff0dfde57e67a79910b41c8a34dc78ebfc1f79af1a7380a
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp314-cp314-win_amd64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp314-cp314-win_amd64.whl -
Subject digest:
8649e142c3261f351d24695be83a2a66f7553ec3ef7e85c4c3ef66af2f734c16 - Sigstore transparency entry: 1473858502
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 10.3 MB
- Tags: CPython 3.14, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a719f355b2c068feb6b19c6cb2da3bca6721010f28018660a9fabe0400fb5d28
|
|
| MD5 |
3c4cc75924841c4d9ce35ad2d1a4ea9d
|
|
| BLAKE2b-256 |
bc7944c979736ffc2fe28ae6820067cf87d31aac775e21b2fa2f5ab4320f1b27
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
a719f355b2c068feb6b19c6cb2da3bca6721010f28018660a9fabe0400fb5d28 - Sigstore transparency entry: 1473857037
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: empulse-0.11.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 10.2 MB
- Tags: CPython 3.14, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f04818d9e3285c7542005383b374f32b9008bfc31dc8cb18696f25442a3d1c23
|
|
| MD5 |
09460e46b9f51750b96d9cb152a612a7
|
|
| BLAKE2b-256 |
9ef6869d8c0c2dbd250248b7ae5eb2fc3ba0a5bf32c47632508feb07af730760
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
f04818d9e3285c7542005383b374f32b9008bfc31dc8cb18696f25442a3d1c23 - Sigstore transparency entry: 1473858077
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: empulse-0.11.1-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.4 MB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cddcbb9b9c2bf40936aa9d9824aa698ffba8a7b5b85cd4e48ac52eb929a10af6
|
|
| MD5 |
6d5cdb58ddc52da1e827541603f60fd3
|
|
| BLAKE2b-256 |
fd878ea0a26a75235a54d2fff1fb85b3379028ca89b9650511a2abbe936c3b93
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp314-cp314-macosx_11_0_arm64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp314-cp314-macosx_11_0_arm64.whl -
Subject digest:
cddcbb9b9c2bf40936aa9d9824aa698ffba8a7b5b85cd4e48ac52eb929a10af6 - Sigstore transparency entry: 1473858795
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp314-cp314-macosx_10_13_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp314-cp314-macosx_10_13_x86_64.whl
- Upload date:
- Size: 6.4 MB
- Tags: CPython 3.14, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
084e33b6cba936852a0acea44cb73326e304f113cf83f587ac9a9a93e5fe6cc4
|
|
| MD5 |
d9447b776523bb5155171a4f37c22050
|
|
| BLAKE2b-256 |
ce6f5acaf201e85d9910fec606ce4483cb5fb0dc426dfa1c7d91418ba29e95ea
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp314-cp314-macosx_10_13_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp314-cp314-macosx_10_13_x86_64.whl -
Subject digest:
084e33b6cba936852a0acea44cb73326e304f113cf83f587ac9a9a93e5fe6cc4 - Sigstore transparency entry: 1473857959
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: empulse-0.11.1-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
655f2cd0754f1a8db9d5dbb42fa276004bd0ed3d19d035276198ba1a11193bdf
|
|
| MD5 |
dd30630f2c5c9c73d9911ced8e1478ec
|
|
| BLAKE2b-256 |
3a019ac543992fe7de8c6169bc56ecfe4445a893c0eca74bfc0caeed72b4f892
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp313-cp313-win_amd64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp313-cp313-win_amd64.whl -
Subject digest:
655f2cd0754f1a8db9d5dbb42fa276004bd0ed3d19d035276198ba1a11193bdf - Sigstore transparency entry: 1473857553
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 10.3 MB
- Tags: CPython 3.13, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6dfe747ce56ba0d361014038d6f97e69c1ad3c3f24ce79aa6205e70b71e7b68
|
|
| MD5 |
4288740e7c2c9dda02757c23a67b5aa5
|
|
| BLAKE2b-256 |
10f88c1d787022f06e3858f92e5c7095338cbd7a52e6ea428b12b4f525ea7613
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
a6dfe747ce56ba0d361014038d6f97e69c1ad3c3f24ce79aa6205e70b71e7b68 - Sigstore transparency entry: 1473858222
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: empulse-0.11.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 10.2 MB
- Tags: CPython 3.13, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7f33e37352ca8a7b2012188bcac2be8d5aa655384cc8075f7724cb3aaef71ae
|
|
| MD5 |
7ae42820d7381c736d1caddf1f52d806
|
|
| BLAKE2b-256 |
99939ed80359e522662eb293eee6bb03775e589518c5e8a20f6593b3cfe58688
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
b7f33e37352ca8a7b2012188bcac2be8d5aa655384cc8075f7724cb3aaef71ae - Sigstore transparency entry: 1473856338
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: empulse-0.11.1-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
956736c95d866c99f1f1a5fc7042e80a0c0260ca56264d04a85383a5ce1e0587
|
|
| MD5 |
d15047ff2739168cef7a15967f7fab18
|
|
| BLAKE2b-256 |
b6516c939f1333f6cb6e53e314b15c0feed6523a8ae1dd7ab3ab3b10d87314f5
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp313-cp313-macosx_11_0_arm64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp313-cp313-macosx_11_0_arm64.whl -
Subject digest:
956736c95d866c99f1f1a5fc7042e80a0c0260ca56264d04a85383a5ce1e0587 - Sigstore transparency entry: 1473859180
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl
- Upload date:
- Size: 6.4 MB
- Tags: CPython 3.13, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d7a521d1ba6bb03d0851fe9dbc0322dba0a7a169aa26ebee6c4284e9af2bd8e
|
|
| MD5 |
e8f55ecac1b72474b43c7205102e7d46
|
|
| BLAKE2b-256 |
de198708ae35cd4089a59f5318eacb6b71012d73244f2b4216d8ea439a4ffacb
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl -
Subject digest:
8d7a521d1ba6bb03d0851fe9dbc0322dba0a7a169aa26ebee6c4284e9af2bd8e - Sigstore transparency entry: 1473858635
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: empulse-0.11.1-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5744a1c1f0024b333750df18dbeb2fb708811874b4eaddd5544190b82a00a1ef
|
|
| MD5 |
3e59ee1266e5c931ee44a72486a17899
|
|
| BLAKE2b-256 |
45f663c67d5028c3075d850b586aa6d6105619b5494893b6625ec84985318d5c
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp312-cp312-win_amd64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp312-cp312-win_amd64.whl -
Subject digest:
5744a1c1f0024b333750df18dbeb2fb708811874b4eaddd5544190b82a00a1ef - Sigstore transparency entry: 1473856524
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 10.4 MB
- Tags: CPython 3.12, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e4fd3bb5d9cc166c7eb73f873470b8b285b0dcb0f2f86cb7148b15c62042cb8
|
|
| MD5 |
43edd43069498d5866a4cac769ebda97
|
|
| BLAKE2b-256 |
1456436ddc5e966e64f5551258593f8dc0f7942b56329b9289a3143d58989ebd
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
7e4fd3bb5d9cc166c7eb73f873470b8b285b0dcb0f2f86cb7148b15c62042cb8 - Sigstore transparency entry: 1473856763
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: empulse-0.11.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 10.3 MB
- Tags: CPython 3.12, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd232fcf0445bea51f72c46e989e134e2d5e4d7ec70bd3a79643292c59634968
|
|
| MD5 |
3796b01943d58a3d8521d766225bb1d5
|
|
| BLAKE2b-256 |
c9e17a92528376be400fbb2161a8cb9b57661d6b9b72c9ee0e94d29a0bb74b11
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
fd232fcf0445bea51f72c46e989e134e2d5e4d7ec70bd3a79643292c59634968 - Sigstore transparency entry: 1473859053
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: empulse-0.11.1-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e863203a6e9391a7019f5cc9378e1c0aa0ab431833930ae75ced49b1d9e2aed6
|
|
| MD5 |
8b69bb391eb0b2213b524dfbb418790e
|
|
| BLAKE2b-256 |
71c3b01c71104a066b100a761613f0f52c65c9d677f6588fe75e05a8f0073481
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp312-cp312-macosx_11_0_arm64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp312-cp312-macosx_11_0_arm64.whl -
Subject digest:
e863203a6e9391a7019f5cc9378e1c0aa0ab431833930ae75ced49b1d9e2aed6 - Sigstore transparency entry: 1473859309
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl
- Upload date:
- Size: 6.4 MB
- Tags: CPython 3.12, macOS 10.13+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af837c8105da6ca4a48ecdaa32bef24076066262822045771a60c98e28ec909b
|
|
| MD5 |
df53d75d3fdb348a543d76a8175d5915
|
|
| BLAKE2b-256 |
6e680efdffb918a52cb378d04f840f29123d706e11b0cc61698916ee51c82b5f
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl -
Subject digest:
af837c8105da6ca4a48ecdaa32bef24076066262822045771a60c98e28ec909b - Sigstore transparency entry: 1473857208
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: empulse-0.11.1-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2860c7b9334984e52af159384b84f96fa7475411f144b48ce669d18770830e9c
|
|
| MD5 |
a0fcd834d4c95957ad004e9b84a4339e
|
|
| BLAKE2b-256 |
38f134ba88dca6f6d79c43a27525e72e02ed6948c932d00a319e159be76c08c9
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp311-cp311-win_amd64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp311-cp311-win_amd64.whl -
Subject digest:
2860c7b9334984e52af159384b84f96fa7475411f144b48ce669d18770830e9c - Sigstore transparency entry: 1473857844
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 10.4 MB
- Tags: CPython 3.11, manylinux: glibc 2.24+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4306d4aa5d6a6e2a6691db3bb8f4af6906e01b9a56e244cd628978820da15b22
|
|
| MD5 |
d94e33c1f4fb7b3a9e807c8fb3371046
|
|
| BLAKE2b-256 |
4017faa9252f6a575c244de383596e6e6f23c908399a77e8729d8d9327c5e3f7
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl -
Subject digest:
4306d4aa5d6a6e2a6691db3bb8f4af6906e01b9a56e244cd628978820da15b22 - Sigstore transparency entry: 1473858387
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: empulse-0.11.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 10.3 MB
- Tags: CPython 3.11, manylinux: glibc 2.24+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2572f7d15593b97950be6cbc940a5e6c65c0cc767f5fdf1e2e01ee2a47f5a3a
|
|
| MD5 |
1d1fd20998f817cab30e037ce5334eda
|
|
| BLAKE2b-256 |
0d6b1aa1a8d54cf2dd410903bc8f313110b990018041d4e895cd9bbc4c075981
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
e2572f7d15593b97950be6cbc940a5e6c65c0cc767f5fdf1e2e01ee2a47f5a3a - Sigstore transparency entry: 1473857392
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: empulse-0.11.1-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 6.3 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e3a6af747e73421743978ede6395c677cf96955641a2d7711750cb87cab0469
|
|
| MD5 |
9ed85a0ea065812c8237ccbc5b6879b7
|
|
| BLAKE2b-256 |
7aae8776c8d3a7cb17aeff9a90245178838d87d05b93abcd50ee347709f8fd2f
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp311-cp311-macosx_11_0_arm64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp311-cp311-macosx_11_0_arm64.whl -
Subject digest:
1e3a6af747e73421743978ede6395c677cf96955641a2d7711750cb87cab0469 - Sigstore transparency entry: 1473858902
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file empulse-0.11.1-cp311-cp311-macosx_10_9_x86_64.whl.
File metadata
- Download URL: empulse-0.11.1-cp311-cp311-macosx_10_9_x86_64.whl
- Upload date:
- Size: 6.4 MB
- Tags: CPython 3.11, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f2177ca635e13608ff01727687f949eb0e27c97b4441f49b085d376f08a2402
|
|
| MD5 |
385908632fa1b06604a125b85299cbf9
|
|
| BLAKE2b-256 |
8effb8d7707ba94576a70255d84eae0441f41f6888b1d108c94da1808d9da298
|
Provenance
The following attestation bundles were made for empulse-0.11.1-cp311-cp311-macosx_10_9_x86_64.whl:
Publisher:
release.yml on ShimantoRahman/empulse
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
empulse-0.11.1-cp311-cp311-macosx_10_9_x86_64.whl -
Subject digest:
6f2177ca635e13608ff01727687f949eb0e27c97b4441f49b085d376f08a2402 - Sigstore transparency entry: 1473857707
- Sigstore integration time:
-
Permalink:
ShimantoRahman/empulse@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Branch / Tag:
refs/tags/0.11.1 - Owner: https://github.com/ShimantoRahman
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@4c07eb62acfd4530ad9bf46fa6bf5fb8913e0c2b -
Trigger Event:
push
-
Statement type: