Skip to main content

PyPI - Downloads Read the Docs GitHub Release GitHub Last Commit

AVICA: Automated VLBI pipeline in CASA

Accepted for publication in Astronomy & Astrophysics journal.

asciicast

Complete demo: avikhagol.github.io/avica-demos

Contents

Installation

Requirements:

  • Ubuntu 18.04+, Debian 10+, or RHEL/CentOS 8+
  • Python >= 3.9

The avica package is publicly available on PyPI. Use uv or pipx for an isolated command-line installation.

Using uv:

uv tool install avica --python 3.10

Using pipx:

pipx install avica

Using pip:

pip install avica

If you install with pip, use a virtual environment unless you already manage Python packages another way.

Manual installation

Clone the repository and install it locally:

git clone https://github.com/avikhagol/avica.git
cd avica/
pip install .

Full installation script

Run install.sh as your normal user. The quickest way is to fetch and run it in one step:

curl -LsSf https://avikhagol.github.io/avica/install.sh | bash
source "$HOME/.local/share/avica-stack/env.sh"

requires rsync, git

The script installs AVICA using uv. If picard is already on PATH, it reuses that installation and skips all CASA/rPICARD downloads and plotting/data setup. Otherwise, it installs rPICARD, jiveplot (with python-pgplot==1.6.1), and monolithic CASA.

For a new rPICARD installation, set CASA_PATH to an existing CASA installation directory (containing bin/casa and bin/mpicasa) or an archive URL:

CASA_PATH=/path/to/casa bash install.sh

Using the one-liner, place the variable after the pipe so it reaches bash, not curl:

curl -LsSf https://avikhagol.github.io/avica/install.sh | CASA_PATH=/path/to/casa bash

If unset, the script prompts for the location. Press Enter to download:

ftp://ftp.mpifr-bonn.mpg.de/outgoing/mjanssen/casa-6.7.5-18-py3.12.el8.tar.xz

Without an interactive terminal, the same default is used. CASA_DIR and CASA_URL are also accepted, after CASA_PATH in that order. Set AVICA_INSTALL_DIR to change the default ~/.local/share/avica-stack directory, or PICARD_REF to select the branch/tag of a new rPICARD clone. Choose a CASA version that matches the selected rPICARD version.

When setting up rPICARD, the downloaded or supplied CASA directory is also saved in AVICA's global configuration using avica pipe config --global casadir=....

The script adds an environment file to ~/.bashrc. It configures AVICA's CASA and input-template paths when it can identify them, preserving other settings and backing up an existing ~/.avica/avica.inp. For an existing picard command, it reads the adjacent rPICARD your_casapath.txt when available; otherwise, existing AVICA settings are left unchanged.

Run bash install.sh --help (or curl -LsSf https://avikhagol.github.io/avica/install.sh | bash -s -- --help for the one-liner) for the environment options. The previous apt and dependency-check options have been removed.

Usage

The pipeline calibration steps rely on rPicard. Follow the rPicard setup instructions first. After rPicard is configured, AVICA only needs a minimal configuration file to get started; see Configuration.

Pipeline

Run the default pipeline:

avica pipe run --fitsfilenames <file1.uvfits,file2.uvfits> --target <source-name>

The default pipeline executes these steps:

  • preprocess_fitsidi
  • fits_to_ms
  • phaseshift
  • avica_avg
  • avicameta_ms
  • avica_snr
  • avica_fill_input
  • avica_split_ms
  • rpicard

You can pass one or more step names to run only part of the pipeline:

avica pipe run preprocess_fitsidi fits_to_ms --fitsfilenames <file.uvfits>

During fits_to_ms, AVICA also discovers station flag files in artifact_dirs, folder_for_fits, the input FITS directories, and <workdir>/raw. AIPS UVFLG files using ANT_NAME (such as EVN .flag files) are converted and added after the existing FITS-IDI/MS flags.

apply_flag_from_artifacts = True
artifact_flag_extensions = .fg;.uvflag;.uvflg;.uvfg;.flag;.flg;.uvflags;.uvflgs;.uvfgs;.flags;.flgs
artifact_flagfiles = []

Extensions are case-insensitive. A nonempty artifact_flagfiles list overrides automatic discovery and accepts arbitrary filenames. Set apply_flag_from_artifacts=False to disable this pass independently of apply_flag_from_idi. Existing measurement sets are flagged only when apply_flag_to_existing_vis=True.

Supported UVFLG fields are ANT_NAME, TIMERANG, OPCODE='FLAG', REASON, TIMEOFF, DTIMRANG, BIF/EIF, and BCHAN/ECHAN. TIMEOFF and DTIMRANG are in seconds and retain their nonzero settings between entries, following AIPS UVFLG INTEXT semantics. Malformed files and records with unsupported selectors, invalid IF/channel ranges, absent antennas, or unrelated times are reported and skipped.

Generated commands are saved as <MS>.artifact_flags.flagcmd; its .json sidecar records input files, row counts, skipped records and application status. Each application saves uniquely named before_artifact_flags_* and after_artifact_flags_* versions using CASA flagmanager. If application fails, the step reports failure and the before-version remains available for restoration. Source flag files are read in place and are not copied into rPICARD directories.

Common options:

Option Description
--f, --fitsfilenames Comma-separated FITS-IDI file names.
--t, --target Selected field or source name.
--configfile Configuration file containing key=value entries. Defaults to avica.inp.
--help Show the full command help.

Pipeline results

After each step completes, AVICA appends a row to reductions/result__<target>__<project_code>__<workdir>.csv, e.g. result__J0102+5824__EY034__wd_1.csv. The project code and workdir identify which working directory (reductions/<project_code>/<workdir>/) the results belong to. Use avica pipe result to render that file:

avica pipe result --target <source-name>

This prints a progress ladder — one row per step — with status, success/fail counts, duration, and a condensed note for any failures. Full failure traces appear in panels below the table.

Common options:

Option Description
--t, --target Target name; used to locate the result CSV.
--project Project code; picks among result CSVs of the same target.
--workdir Workdir name (wd, wd_2, ...); picks among result CSVs of the same target.
--oneline Single status line — good for scripts and CI.
--history Show every retry of every step, not just the latest.
--no-detail Suppress the full failure panels below the table.
--check Exit non-zero when any step has not fully succeeded.
--csvfile Pass the CSV path directly, skipping config lookup.
--help Show the full command help.

If a target has result CSVs for several workdirs, they are listed and the newest one is shown; narrow the choice with --project / --workdir, or pass --csvfile. Result CSVs from older AVICA versions (<target>_result.csv) are still read when no new-style file exists.

The default view collapses to the most recent attempt per step; --history shows all attempts. The footer prints the command to resume from the next incomplete step.

Logs

Each avica pipe run writes its logs next to each other in the directory it is started from:

Folder Content
avica.logs/ AVICA pipeline log, crash snapshots
casa.logs/casa__log-<YYYYmmdd_HHMMSS>.log the single CASA log of that run (all steps, all bands)
casa.logs/err-casa__log-<YYYYmmdd_HHMMSS>.log CASA worker stderr and tracebacks of failed CASA tasks

Every CASA task is preceded by a marker line naming the step, task and visibility, so a run can be followed on the terminal:

grep -n '>>> avica' casa.logs/casa__log-*.log

A resumed run starts a new CASA log. rPicard keeps its own logs in its working directory.

Manipulating FITS-IDI

Check FITS-IDI files for known issues:

avica fitsidi_check <file.uvfits>

Useful options:

Option Description
--fix, --no-fix Apply available fixes. Defaults to --no-fix.
--desc, --no-desc Show issue descriptions. Defaults to --no-desc.
--help Show the full command help.

Example output:

avica fitsidi_check VLBA_VSN005412_file3.uvfits
+--------------------+---------+-------+-------+----------------+----------+
| hdu                | fixable | total | fixed | problem_code   | affected |
+==========================================================================+
| ARRAY_GEOMETRY     | 0       | 8     | 0     | []             | []       |
| ANTENNA            | 0       | 16    | 0     | []             | []       |
| FREQUENCY          | 0       | 8     | 0     | []             | []       |
| PHASE-CAL          | 0       | 12    | 0     | []             | []       |
| PRIMARY            | 1       | 10    | 0     | ["extra_byte"] | [""]     |
| SOURCE             | 0       | 8     | 0     | []             | []       |
| FLAG               | 0       | 12    | 0     | []             | []       |
| UV_DATA            | 0       | 8     | 0     | []             | []       |
| GAIN_CURVE         | 0       | 8     | 0     | []             | []       |
| SYSTEM_TEMPERATURE | 0       | 8     | 0     | []             | []       |
+--------------------+---------+-------+-------+----------------+----------+

List observation information:

avica listobs <file.uvfits>

Configuration

asciicast

The pipeline configuration is a key=value file. By default, AVICA looks for avica.inp in the current directory. See the example configuration for a minimal setup.

Pass a custom configuration file with --configfile:

avica pipe run --configfile <path/to/config/file>

If --configfile is not provided, AVICA uses avica.inp by default.

To store defaults persistently, merge an existing file into ~/.avica/avica.inp:

avica pipe config --default --inpfile <path/to/avica.inp>

You can also set default values directly:

avica pipe config --default key=value key2=value2 key3=value3

To set global defaults in AVICA's installed directory, use --global in the same way:

avica pipe config --global --inpfile <path/to/avica.inp>
avica pipe config --global key=value key2=value2 key3=value3

Each of these commands only touches one file: --default writes to ~/.avica/avica.inp, --global writes to the installed avica.inp, and plain avica pipe config writes to the local avica.inp (or --outfile). Only the keys you give it are changed; everything else already in that file — other settings, comments, # str/# int notes — stays as it was. A backup of the old file is saved as avica.inp.bak.

To supersede the rPicard input_template files (array.inp, observation.inp, array_finetune.inp, flagging.inp, constants.inp) used by the rpicard step, point picard_input_template_update at a folder containing the parameters you want to fix:

picard_input_template_update   =   "path/to/folder/with/fixed/inp/files"

Parameter summary

Use --summary to print a report of every pipeline parameter, its resolved value, and where that value came from (global, user, inpfile, cli, built-in default, or runtime context). The /core and /step suffixes distinguish general parameters from step-specific overrides:

avica pipe config --summary --inpfile <path/to/avica.inp>

The summary overlays the installed global avica.inp, then ~/.avica/avica.inp, then the local avica.inp (or an explicit --inpfile), with command-line key=value overrides applied last. Later layers override matching keys and preserve other settings. --no-inpfile skips automatic local-file discovery; an explicit --inpfile is still used. Summaries do not write configuration files.

Cleaning up intermediate data

Each pipeline step can remove its own intermediate files (temporary files, superseded Measurement Sets, etc.) once it finishes. This is controlled by:

Option Description
delete_removables Master switch; must be True for any cleanup to happen. Defaults to False.
removables List of glob patterns (relative to the step's working directory) to delete. Can be set globally or per step as <step_name>.removables.
rm_pre / <step_name>.rm_pre If True, delete the matching files before the step runs instead of after.
rm_only Only perform the deletion and skip running the step itself.

Several steps ship with sensible defaults, e.g.:

delete_removables            =   True
preprocess_fitsidi.removables    =   ["raw/*.tmp"]
rpicard.removables               =   ["wd_[SLKQXPD]/VLBI_*.ms"]
fits_to_ms.removables            =   ["*.old"]

Deletion is always confined to the step's working directory; patterns that resolve outside it are ignored.

Attribution

When using AVICA, please add a link to this repository in a footnote.

Acknowledgement

AVICA was developed within the "Search for Milli-Lenses" (SMILE) project. SMILE has received funding from the European Research Council (ERC) under the HORIZON ERC Grants 2021 programme (grant agreement No. 101040021).

Metadata

Release files for avica 0.3.1.20

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for avica 0.3.1.20
File Size Uploaded
avica-0.3.1.20.tar.gz 1.8 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for avica 0.3.1.20
File
avica-0.3.1.20-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
avica-0.3.1.20-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
avica-0.3.1.20-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
avica-0.3.1.20-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
avica-0.3.1.20-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
avica-0.3.1.20-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
avica-0.3.1.20-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
avica-0.3.1.20-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
avica-0.3.1.20-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
avica-0.3.1.20-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
avica-0.3.1.20-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
avica-0.3.1.20-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 34.2 MB

Release files / avica-0.3.1.20.tar.gz

Download URL avica-0.3.1.20.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
3bf7686a618697a92f28ec264ac39353ea63dbb14f983cd40f64e3deef975ee5
BLAKE2b-256 checksum
How to use checksums
fcfd9561bfe8283d2681523a867aa1f55c512e72ffc7363eb50f23d6ef3d91a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL avica-0.3.1.20-cp313-cp313-musllinux_1_2_x86_64.whl
Size 3.5 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
9b1d263409682054563cb8b219e8e012a3ee843a81ef82de1e5162ecc41e5e38
BLAKE2b-256 checksum
How to use checksums
a21a5e6b7325800b33df9e18df4a4e4543b8447ae22d43a6c6dbd6a0db80e099
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL avica-0.3.1.20-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d40b1a3afd740df34dce578b60bbdfa37db4fe732ca82254ac2ac9131c34720b
BLAKE2b-256 checksum
How to use checksums
8009c29354d3cedcc88add8512a062dbf19008f4cd56726463873e119ab774eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp313-cp313-macosx_11_0_arm64.whl

Download URL avica-0.3.1.20-cp313-cp313-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
68210dd1e2d097298eef8791d2da6a714bdee9f02f4f34fb383ed15374760c46
BLAKE2b-256 checksum
How to use checksums
6d319de47cdd2096e78ea730d120953478697cf8bdf50b3d3cc1f362d3a505b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL avica-0.3.1.20-cp312-cp312-musllinux_1_2_x86_64.whl
Size 3.5 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
57c3920deda7a0004608050c54420c5129a39300d0c4d34ba0d69f46b718e422
BLAKE2b-256 checksum
How to use checksums
4cb45404b0742529c9d95e673deef8db2f1e6858e52a86c004d916c38c9a5fa1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL avica-0.3.1.20-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
3f270eac49293ffe2c28c4080676a3d90cb02dd2e37f38f2348b58e057b23eb9
BLAKE2b-256 checksum
How to use checksums
c24ba480e2e5944f8edee949288d522d1413d5d5a962e633ef639d20198cd1f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp312-cp312-macosx_11_0_arm64.whl

Download URL avica-0.3.1.20-cp312-cp312-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
facad5a3e201a7105f5703a59e30b0df1949c0dea0ca130c934bcafc3fb4f8ef
BLAKE2b-256 checksum
How to use checksums
c71b839a7448bd34f1f5a6114aaf294b46f1c94933a7bb738ed7ae77863c456e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL avica-0.3.1.20-cp311-cp311-musllinux_1_2_x86_64.whl
Size 3.5 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
e08e13f0aa39d3fb8acd14ac9da220b752492357193e12b5cb2d5559a9017c68
BLAKE2b-256 checksum
How to use checksums
d6e9b53627c5e418089c27fa6c7f2be2ae205f73269c44e5b864910b1a89e3eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL avica-0.3.1.20-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
aba6f6cf98961f2c401734d95637a4e51b593e43ebcfa4474b608318ebc54164
BLAKE2b-256 checksum
How to use checksums
82ac7f3fb5ee8d85810c15ed91e28856470f8f325a52211739666605d0e0b1cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp311-cp311-macosx_11_0_arm64.whl

Download URL avica-0.3.1.20-cp311-cp311-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
25d9ff9f467616d699901c1341d0e0f62b8e5832138af4e7b2a9dbc29310959e
BLAKE2b-256 checksum
How to use checksums
caa060c0572708d7b436cda42bfe6d0128682ae97ef6b83ef7c322d0d81b34a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL avica-0.3.1.20-cp310-cp310-musllinux_1_2_x86_64.whl
Size 3.5 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2b9df0a723de7182e1ff023fb901be8bd6084b02724fa6805a5605e1bec188eb
BLAKE2b-256 checksum
How to use checksums
ec8dbc45e433d7e95bf02b3945db264ba459e493976f8548f0913f0e3025541d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL avica-0.3.1.20-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
dcb557cf8f217e9897813b7ee86cc482cfa27c8aa4bea07f082485218889a9b6
BLAKE2b-256 checksum
How to use checksums
03f34fbba3652355973835d6b07d282e43f87d30bd9f6129235d75814ba837e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log

Release files / avica-0.3.1.20-cp310-cp310-macosx_11_0_arm64.whl

Download URL avica-0.3.1.20-cp310-cp310-macosx_11_0_arm64.whl
Size 2.2 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8f455757a8e0c1ddc522c294340ae4ea169451333cb3b2da3caa51595a00cea2
BLAKE2b-256 checksum
How to use checksums
79ccdd5e847cc92703c57534b27ed79dba208addf9f8790d1c550d4b68673f5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 7, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page