Skip to main content

Python Trajectory Search Agent (PyTSA) for raw AIS records

Accompanying implementation of our Ocean Engineering publication: An open-source framework for data-driven trajectory extraction from AIS data — The α-method

This module provides a set of functionalities around Automatic Identification System (AIS) messages, such as

  • Decoding raw AIS messages
  • Extracting clean, practical and interpolated trajectories from the data, based on various (also user-defined) filters.
  • Providing an easy-to-use interface for observing target ships and their state around a given time and position.

Motivation

Simulation studies in maritime contexts often lack an easy-to-use model for vessel traffic extraction around a simulated vessel, as the large amounts of AIS records make it challenging and time-consuming to pinpoint the exact vessels to be monitored.

Also, for validating path-following, or collision avoidance systems, it is beneficial to use real-world trajectories, as they often provide a larger variety of movement patterns than simulated trajectories. However, the exact process of extracting the relevant information from the raw AIS data is often not sufficiently documented, thus making it difficult to reproduce the results.

Therefore, this module aims to provide a unified, open-source solution for extracting relevant trajectories from raw AIS data, as well as providing an easy-to-use interface for observing target ships around a given position and time.

Installation

Install the package via pip:

$ pip install pytsa-ais

Usage

Raw AIS data

One file of raw AIS records must only contain dynamic AIS messages (Types 1,2,3 and 18) or static AIS messages (Type 5). A combination of both is not supported. The data must be provided in the .csv format and must be named YYYY_MM_DD.csv. Other file names are not supported.

This is done to avoid extra-day sorting of the data, which would be necessary if the data was not sorted by date. Intra-day sorting is done regardless of the file name.

Individual files must contain the following columns:

  • timestamp: ISO 8601 parseable date format (e.g. "2021-07-03T00:00:00.000Z")
  • message_id: AIS message type (1,2,3,5,18)

For dynamic AIS messages (Types 1,2,3,18) additionally

  • raw_message: For messages of type 1,2,3,18, the raw message consists of a single AIVDM sentence.

For static AIS messages (Type 5) additionally:

  • raw_message1: First AIVDM sentence
  • raw_message2: Second AIVDM sentence

Example Table for dynamic AIS messages

timestamp message_id raw_message
2021-07-03T00:00:00.000Z 1 "!ABVDM,1,1,,B,177PhT001iPWhwJPsK=9DoQH0<>i,0*7C"

Example Table for static AIS messages

timestamp message_id raw_message1 raw_message2
2021-07-03T00:00:00.000Z 5 "!ABVDM,2,1,5,A,53aQ5aD2;PAQ0@8l000lE9LD8u8L00000000001??H<886?80@@C1F0CQ4R@,0*35" "!ABVDM,2,2,5,A,@0000000000,2*5A"

For more information on the AIS message structure, see here.

Decoding AIS messages

Once your raw AIS data is in the correct format, you can decode the AIS messages by calling the decode() function. The function takes as arguments the path to a directory containing the raw AIS data, as well as the path to the output directory. The function will then decode all .csv files in the input directory and save the decoded data to the output directory under the same file name.

from pytsa import decode

decode(
    source = "path/to/raw_dir",
    dest = "path/to/decoded_dir",
    njobs = 1
)

For decoding AIS messages, you can choose between single-processing and multi-processing decoding. The multi-processing decoding is recommended for large datasets containing multiple files, as it is significantly faster than single-process decoding. However, during decoding, the files are loaded into memory in their entirety, which may lead to memory issues for large datasets or a large number of jobs. Therefore, it is recommended to use single-processing decoding for smaller datasets or if you encounter memory issues. Parallel decoding may also not be avialable on Windows systems (due to the lack of testing on Windows systems, this is not guaranteed, sorry...)

Decoded AIS data

In case you already have decoded AIS messages, you have to make sure, that the fields of your .csv file at least partially match Msg12318Columns and Msg5Columns at pytsa/decode/filedescriptor.py.

In case you have a different data structure, you can either adapt the Msg12318Columns and Msg5Columns classes, or you can adapt the column names of your .csv file to match the column names of the Msg12318Columns and Msg5Columns classes.

Using the SearchAgent for extracting target ships

The central object of the module is the SearchAgent class, which provides an easy-to-use interface for extracting target ships around a given position and time.

Possible applications include:

  • Tracking traffic around a simulated route
  • Monitoring traffic around a fixed location
  • Extracting trajectories

The Search Agent must be instantiated with three components: Its BoundingBox, msg12318files and msg5files:

  • BoundingBox: Reference frame containing the spatial extent of the searchable area in degrees of latitude and longitude.

  • msg12318files: File path to a .csv file containing decoded dynamic AIS messages (Types 1,2,3 and 18 only) to consider for the search procedure. See the next section for details on the data structure.

  • msg5files: File path to the corresponding .csv file containing decoded static AIS messages (message type 5)

Example instantiation for a small area in the North Sea:

import pytsa
from pathlib import Path

# Lat-Lon Box with [lat,lon, SOG, COG] outputs
frame = pytsa.BoundingBox(
    LATMIN = 52.2, # [°N]
    LATMAX = 56.9, # [°N]
    LONMIN = 6.3,  # [°E]
    LONMAX = 9.5,  # [°E]
)

dynamic_data = Path("/path/to/dynamic.csv")
static_data = Path("/path/to/static.csv")

search_agent = pytsa.SearchAgent(
    msg12318file = dynamic_data,
    msg5file = static_data
    frame = frame
)

Monitoring vessel traffic around a given position

To commence a search for ships around a given location, it is mandatory to use a TimePosition object to store the position and time at which the search shall be commenced simultaneously. Example:

from pytsa import TimePosition

tpos = TimePosition(
    timestamp="2021-07-03T12:03:00.000Z",
    lat=52.245,
    lon=9.878
)

After defining a TimePosition, a search can be commenced by freezing the search agent at the given position and time

target_ships = search_agent.freeze(tpos)

yielding a list of TargetShip objects (see pytsa/targetship.py for more information).

By default, the resulting TargetShip objects used linear interpolation to estimate the current position, speed and course of the target ships. If instead, cubic spline interpolation is desired, the interpolation option can be set to spline. Additionally, the search_radius can be set to a custom value in nautical miles.

target_ships = search_agent.freeze(
    tpos, 
    interpolation="spline", 
    search_radius=5 # [nm]
)

To get the current Latitude, Longitude, SOG, COG for each TargetShip object at the provided timestamp, the observe() method can be used, returning a numpy array with the current position, speed and course.

for ship in target_ships:
    ship.observe()

# Example output for one ship
# 
# Interpolated COG ---------------
# Interpolated SOG -----------    |
# Interpolated Longitude-|   |    |
# Interpolated Latitude  |   |    |
#                v       v   v    v
>>> np.array([52.232,9.847,12.34,223.4])

Full example

import pytsa
from pathlib import Path

# Global geographic search area.
# Outside these bounds, no search will be commenced
frame = pytsa.BoundingBox(
    LATMIN = 52.2, # [°N]
    LATMAX = 56.9, # [°N]
    LONMIN = 6.3,  # [°E]
    LONMAX = 9.5,  # [°E]
)

# File containing AIS messages
dynamic_data = Path("/path/to/dynamic.csv")
static_data = Path("/path/to/static.csv")

# Instantiate the search agent with the source file 
# and the search area
search_agent = pytsa.SearchAgent(
    msg12318file = dynamic_data,
    msg5file = static_data
    frame = frame
)

# Provide a position and time for which the search
# will be carried out
tpos = pytsa.TimePosition(
    timestamp="2021-07-03T12:03:00.000Z",
    lat=52.245,
    lon=9.878
)

# Search for TargetVessels with 
# default settings: 
#   Linear interpolation, 
#   20 nm search radius
target_ships = search_agent.freeze(tpos)

# Extract the current position, speed and
# course for all found target vessels.
for ship in target_ships:
    ship.observe()

# Example output for one ship
>>> np.array([52.232,9.847,12.34,223.4])

Extracting trajectories

If instead of observing target ships around a given position, you want to extract trajectories from the data, you can use the SearchAgent.extract_all() method.

By default, the extract_all() method walks through the entire dataset and extracts all trajectories that are within the search area utilizing the split-point approach from Section 6 in our original paper. The method returns a dictionary with the MMSI as keys and the corresponding TargetShip objects as values. The default signature looks like this

from pytsa import TREXMethod
all_ships = search_agent.extract_all(
    method = TREXMethod.PAULIG,
    njobs = 4,
    skip_tsplit = False,
    **skwargs
)

Changing the method allows you to switch between the trajectory extraction procecees of Paulig and Okhrin (2024) (Ours), Zhao et al. (2018) or Guo at al. (2021). The methods of Paulig and Guo feature additional keyword arguments (skwargs) to control the trajectory extraction process:

Method Keyword(s)
Paulig and Okhrin (2024) alpha (default = 0.05):
cutoff quantile for the empirical distribution functions (refer to Section 6)
Guo et al. (2021) vlim (default = 30):
cutoff value for changes in speed in knots for two consectutive messages be counted to the same trajectory
- clim (default 2):
cutoff value for chanes in heading in degrees for two consectutive messages be counted to the same trajectory

To skip the split-point approach entirely you can set the skip_tsplit parameter to True. This will result in TargetShip objects that only contain a single trajectory, which is the raw, time-ordered set of AIS messages for the given MMSI.

The extract_all() method used 4-core parallel processing by default. This can be adjusted by setting the njobs parameter to a custom value. Note, that high njobs values may lead to a slowdown due to the overhead of splitting the data into chunks and reassembling the results. Keep Amdahl's law in mind.

The trajectories of each TargetShip object can be accessed by the tracks attribute, which is of type list[Track]. Each Track within the tracks list contains the AIS messages for a single trajectory. See the pytsa.structs.AISMessage module for more information on the fields of the AIS messages.

# Example for printing the positions for each trajectory
for ship in all_ships.values():
    for track in ship.tracks:
        for msg in track:
            print(msg.lat, msg.lon)

The trajectories extracted via the extract_all() method are not interpolated by default. To manually interpolate them, you can use the interpolate() method of the TargetShip object.

for ship in all_ships.values():
    ship.interpolate(mode="linear") # or "spline"

Refer also to the function documentation for further details.

Refining trajectories using the Inspector class

Once the TargetShips with its trajectories are extracted, PyTSA provides a flexible interface for refining the trajectories using the Inspector class. The output of the Inspector is two dictionaries [accepted,rejected], of type dict[MMSI,TargetShip]. The first dictionary contains the TargetShip objects that passed the inspection, while the second dictionary contains the TargetShip objects that failed the inspection.

Note: It is possible that the same MMSI is present in both dictionaries. If so, the TargetShip object in the rejected dictionary will contain only rejected trajectories, while the TargetShip object in the accepted dictionary will contain only accepted trajectories.

The Inspector works with a set of rules, that must be combined into a Recipe object, which is then passed to the Inspector object.

Before we show an example, let's explain the concept of rules and recipes:

Rules

A rule is a function following the signature rule(track: Track) -> bool. It takes a single Track object as input and returns a boolean value. Rules are set to act as a negative filter, meaning that if a rule returns True, the corresponding Track will be removed from the TargetShip object.

It is possible for rules to have more than one argument, like rule(track: Track, *args, **kwargs) -> bool, however, for constructing a recipe, all other arguments must be pre-set, for example by using a lambda function, or the functools.partial function.

A simple rule that removes all tracks with less than 10 AIS messages would look like this:

from pytsa import Track

def track_too_short(track: Track) -> bool:
    return len(track) < 10

A rule filtering trajectories whose latitude is outside given bounds could look like this:

def lat_outside_bounds(track: Track, latmin: float, latmax: float) -> bool:
    return any([msg.lat < latmin or msg.lat > latmax for msg in track])

Feel free to define your own rules, or use the ones provided in the pytsa.trajectories.rules module.

Recipes

A recipe is a list of rules that are combined into a single function using the Recipe class.

from pytsa import Recipe
from fuctools import partial

# Create a recipe with the 
# two rules defined above.
recipe = Recipe(
    track_too_short,
    partial(lat_outside_bounds, latmin=52.2, latmax=56.9)
)

Applying the recipe to the Inspector

Once the recipe is created, it can be passed to the Inspector object, which will then apply the recipe to the TargetShip objects, filtering out the trajectories that do not pass the rules.

from pytsa import Inspector

inspector = Inspector(all_ships, recipe)
accepted, rejected = inspector.inspect()

Visualizing AIS data

This module provides various functions for visualizing AIS data. Currently, there exist two groups of functions:

  • Functions for visualizing the empirical distribution functions used in the split-point approach in the original paper. These functions are located in the pytsa.visualization.ecdf module. They are intended to both make the results of the split-point approach more transparent and to provide a tool for adapting the split-point approach to different datasets.

  • Miscellaneous functions can be found in the pytsa.visualization.misc module. Currently, the following functionalities are provided:

    • Plotting the trajectories on a map
    • Comparing trajectories based on different σ_ssd ranges (see Figure 12 in the original paper)
    • Plotting all trajectories as a heatmap
    • Generating a pixel map of average smoothness as a function of the number of messages in a trajectory and the spatial standard deviation of the trajectory (Figure 14 in the paper)

Issues and Contributing

This project is actively maintained by the author of the paper. If you have suggestions, feature requests, or find any bugs, feel free to open an issue on this repository. Contributions and feedback are always welcome!

If you encounter any issues or have any suggestions for improvements, you are invited to open an issue or a pull request.

Citation

If you use this module in your research, please consider citing this repository as follows:

@misc{pytsa2024,
  author = {Paulig, Niklas},
  title = {{PyTSA}: Python Trajectory Splitting and Assessment Agent for AIS Data},
  year = {2024},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/nikpau/pytsa}},
}

Appendix

Split-point procedure

The split-point procedure takes place in the pytsa.tsea.split module. Its main function, is_split_point(), will be called on every pair of AIS messages in the dataset. The function returns a boolean value, indicating whether the pair of messages is a split point or not.

In case you want to adapt the split-point procedure to your dataset, you can use the pytsa.tsea.split module as a starting point.

Metadata

Release files for pytsa-ais 2.3.15

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

Built distributions (wheels)

Table of built distributions (wheels) for pytsa-ais 2.3.15
File Actions
pytsa_ais-2.3.15-cp313-none-win_amd64.whl CPython 3.13 none Windows x86-64 Details for pytsa_ais-2.3.15-cp313-none-win_amd64.whl
pytsa_ais-2.3.15-cp313-none-win32.whl CPython 3.13 none Windows x86-32 Details for pytsa_ais-2.3.15-cp313-none-win32.whl
pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.1+ x86-64 Details for pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_x86_64.whl
pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_armv7l.whl CPython 3.13 CPython 3.13 Linux musl 1.1+ ARMv7l Details for pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_armv7l.whl
pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.1+ ARM64 Details for pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_aarch64.whl
pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details for pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ IBM System/390x Details for pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ PowerPC 64-le Details for pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARMv7l Details for pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details for pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
pytsa_ais-2.3.15-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-32 Details for pytsa_ais-2.3.15-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
pytsa_ais-2.3.15-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for pytsa_ais-2.3.15-cp313-cp313-macosx_11_0_arm64.whl
pytsa_ais-2.3.15-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details for pytsa_ais-2.3.15-cp313-cp313-macosx_10_12_x86_64.whl
pytsa_ais-2.3.15-cp312-none-win_amd64.whl CPython 3.12 none Windows x86-64 Details for pytsa_ais-2.3.15-cp312-none-win_amd64.whl
pytsa_ais-2.3.15-cp312-none-win32.whl CPython 3.12 none Windows x86-32 Details for pytsa_ais-2.3.15-cp312-none-win32.whl
pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ x86-64 Details for pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_x86_64.whl
pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_armv7l.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ ARMv7l Details for pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_armv7l.whl
pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.1+ ARM64 Details for pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_aarch64.whl
pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details for pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ IBM System/390x Details for pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ PowerPC 64-le Details for pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARMv7l Details for pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details for pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
pytsa_ais-2.3.15-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-32 Details for pytsa_ais-2.3.15-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
pytsa_ais-2.3.15-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for pytsa_ais-2.3.15-cp312-cp312-macosx_11_0_arm64.whl
pytsa_ais-2.3.15-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details for pytsa_ais-2.3.15-cp312-cp312-macosx_10_12_x86_64.whl
pytsa_ais-2.3.15-cp311-none-win_amd64.whl CPython 3.11 none Windows x86-64 Details for pytsa_ais-2.3.15-cp311-none-win_amd64.whl
pytsa_ais-2.3.15-cp311-none-win32.whl CPython 3.11 none Windows x86-32 Details for pytsa_ais-2.3.15-cp311-none-win32.whl
pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ x86-64 Details for pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_x86_64.whl
pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_armv7l.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ ARMv7l Details for pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_armv7l.whl
pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.1+ ARM64 Details for pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_aarch64.whl
pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details for pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ IBM System/390x Details for pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ PowerPC 64-le Details for pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARMv7l Details for pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details for pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
pytsa_ais-2.3.15-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.11 CPython 3.11 Linux glibc 2.5+ x86-32 Details for pytsa_ais-2.3.15-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
pytsa_ais-2.3.15-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for pytsa_ais-2.3.15-cp311-cp311-macosx_11_0_arm64.whl
pytsa_ais-2.3.15-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details for pytsa_ais-2.3.15-cp311-cp311-macosx_10_12_x86_64.whl
pytsa_ais-2.3.15-cp310-none-win_amd64.whl CPython 3.10 none Windows x86-64 Details for pytsa_ais-2.3.15-cp310-none-win_amd64.whl
pytsa_ais-2.3.15-cp310-none-win32.whl CPython 3.10 none Windows x86-32 Details for pytsa_ais-2.3.15-cp310-none-win32.whl
pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ x86-64 Details for pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_x86_64.whl
pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_armv7l.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ ARMv7l Details for pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_armv7l.whl
pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.1+ ARM64 Details for pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_aarch64.whl
pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details for pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ IBM System/390x Details for pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ PowerPC 64-le Details for pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARMv7l Details for pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details for pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
pytsa_ais-2.3.15-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-32 Details for pytsa_ais-2.3.15-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
pytsa_ais-2.3.15-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for pytsa_ais-2.3.15-cp310-cp310-macosx_11_0_arm64.whl
pytsa_ais-2.3.15-cp310-cp310-macosx_10_12_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.12+ x86-64 Details for pytsa_ais-2.3.15-cp310-cp310-macosx_10_12_x86_64.whl

Total release size: 101.6 MB

Release files / pytsa_ais-2.3.15-cp313-none-win_amd64.whl

Download URL pytsa_ais-2.3.15-cp313-none-win_amd64.whl
Size 1.8 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
180a6982b3d4615c8904f6c65bec387e860b9f01369268192086c8a3ecd6b5ab
BLAKE2b-256 checksum
How to use checksums
1a234a93ba2a0553d76de484257066808dbc12ead6de2389b253eb3cbc0bf6d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-none-win32.whl

Download URL pytsa_ais-2.3.15-cp313-none-win32.whl
Size 1.8 MB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
027589ccae2834028fc6b569af304e108f3b950d209157c07fa81d0cd56fb8f7
BLAKE2b-256 checksum
How to use checksums
6a2d0f1b9eea99c9389dbffbbdf08c400f0bc50abf5798b9a585d0d6f01fdb6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_x86_64.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_x86_64.whl
Size 2.1 MB
Tags CPython 3.13 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
17b612351b62a2e12ebcf38c11e54962d5546d03c7b89d56da70497a39ff811c
BLAKE2b-256 checksum
How to use checksums
c529403f94455b6aeb4dbf1ade899faa1b9e121b4c1d7219256a8bf6e866f0c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_armv7l.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_armv7l.whl
Size 2.2 MB
Tags CPython 3.13 Linux musl 1.1+ ARMv7l
SHA-256 checksum
How to use checksums
5c70861328116784e56eec5aa500a44f349cfbabe9fad322cc6361d0de9091ad
BLAKE2b-256 checksum
How to use checksums
21427e3426759c02560286b3e6d94629b927c38c412b58dfcb790608be4869a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_aarch64.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-musllinux_1_1_aarch64.whl
Size 2.1 MB
Tags CPython 3.13 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
71e6bcd4c6cc2e72f6c54b549a52bdb2e6cefc22856b5eaa39945d3e3632e94b
BLAKE2b-256 checksum
How to use checksums
68452584bd885d6e2e1d38f7d8ae4e9fa3a4a2b0280440beaa083545e18aba58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
c88489eb136693c3ecf7f4df803176f5495ac2ab28548a6d568a9c64440f541c
BLAKE2b-256 checksum
How to use checksums
4206fcb8a83e12db77b4c4a7ea7f5f2d1fa06a1dca184f1cc8aee5c9ad185b63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 2.0 MB
Tags CPython 3.13 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
7e4ea1d3d022e563849d27620f1fd4903c65d6a15209aae8d3277befb52ef29e
BLAKE2b-256 checksum
How to use checksums
6c21e478e281cd9e331c5c6f9c760d4275a9a538f5c8ca19a2e6c3e8da685bde
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 2.0 MB
Tags CPython 3.13 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
6dd8fa4d244a7af5329603f2d105bb9eb2d8099fbaa09504b3c9d47dbab3c72a
BLAKE2b-256 checksum
How to use checksums
522e5915097c89b214a57b740451864c8f0ea0f566a773faaa9bfa6fa5db4fe5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 1.9 MB
Tags CPython 3.13 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
89597ed04a0fba1fd1ced6410d441a2ed507147a52610db484ed8f039ea6d4f3
BLAKE2b-256 checksum
How to use checksums
2b93ab131432f3426147951042b5f968dc1924cff54990f85fc38d6e83b4afde
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.9 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
724831866a501d09204d896093a10eebec64e60c6a77c4221da93d879d596d0b
BLAKE2b-256 checksum
How to use checksums
898f028235b54028fb47c56e4170b66e3a773568a51871ead16b911abad2465f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Size 1.9 MB
Tags CPython 3.13 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
1fa956070cef2415dabd52471d67705cde1748453fa2d6f4dda677b50c426c6f
BLAKE2b-256 checksum
How to use checksums
2bd9f952537f22662cde98f038c79307b60447f242d920a39bfdc0043a47d43a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-macosx_11_0_arm64.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-macosx_11_0_arm64.whl
Size 1.9 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9a6747132f386858ef666c7b326d2eaf0e67203a0a114002e0ed792e0a189679
BLAKE2b-256 checksum
How to use checksums
979419ebe2f06239f13ff4ae70ab7b6f58d9db447004dbbbddc1c215d8cbfbd1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp313-cp313-macosx_10_12_x86_64.whl

Download URL pytsa_ais-2.3.15-cp313-cp313-macosx_10_12_x86_64.whl
Size 1.9 MB
Tags CPython 3.13 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
9821bceade9c419f89ea7c87e6c4eb0cbc03bc4a88876e6ca6b0978cbe6af83a
BLAKE2b-256 checksum
How to use checksums
776ee0b948303ea5c0335218f0e9000a5caad312180b1700aadd65c585fc9a92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-none-win_amd64.whl

Download URL pytsa_ais-2.3.15-cp312-none-win_amd64.whl
Size 1.8 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
cdae5d237fd91041e1f1963326d08866fd83c6bb85291a31e9ecc85b2b15085b
BLAKE2b-256 checksum
How to use checksums
c39c78b4bb9919cde3288d10e44ba45ffe1e67736f47d818d6c3332c6bcb880a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-none-win32.whl

Download URL pytsa_ais-2.3.15-cp312-none-win32.whl
Size 1.8 MB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
c2829573cf52e02061de51a59461d65c3ddb01843f830588fd16b8e23b3e1a18
BLAKE2b-256 checksum
How to use checksums
820455db111d79ab61c4b08b3ea5858bda47c19b613bfcaa1b8be0765ed00c4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_x86_64.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_x86_64.whl
Size 2.1 MB
Tags CPython 3.12 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
be5b21afaa7ea16a3502427d29a988cfda77d997c4c1750b3ba1d32e437dc3a5
BLAKE2b-256 checksum
How to use checksums
8dbff5090893d462e122f734f1e107935c94e8545a590f1145969e90139535b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_armv7l.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_armv7l.whl
Size 2.2 MB
Tags CPython 3.12 Linux musl 1.1+ ARMv7l
SHA-256 checksum
How to use checksums
814e0e874592c9c96211dd735f184fde55893bf58984c0de5e3f8009e375d2bd
BLAKE2b-256 checksum
How to use checksums
0e11bd4bc4f36855ea2deb6039f469e64bec2691167712a3d7fbaf07c8b9f275
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_aarch64.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-musllinux_1_1_aarch64.whl
Size 2.1 MB
Tags CPython 3.12 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
d4e9db81f47ed846b87b78a83f8da9e0105b5c875b5c8c14f779b7e2bb084842
BLAKE2b-256 checksum
How to use checksums
af257c08e8bac2f4f6e6aec04ec935762e18349f0aa2324afbc9c363052ad3ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f723352fdb45a865b5b2ab6dd012c5ea65ecb91324555596edfa6d0456685f15
BLAKE2b-256 checksum
How to use checksums
7cdcdf04d8cd8e1d810091045ca69b0aa61bdf78fea3e4dd365a7b9862a32c9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 2.0 MB
Tags CPython 3.12 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
e35ac625ca0df03d422d5a87002e8adf01821922496296abbf9897c427def9c1
BLAKE2b-256 checksum
How to use checksums
a79a5e49e23b1f3c05c6448784a58825c4d00b34a5f5ee58b9a5cecf849a8283
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 2.0 MB
Tags CPython 3.12 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
da735ca0d60bc734d910d662cdff3dcb23bea7faa0577fee015d166396933d18
BLAKE2b-256 checksum
How to use checksums
dd1b53340cff89411d8cd34923353a6ea37d2bb2949a1687172c054801d31dbb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 1.9 MB
Tags CPython 3.12 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
419bba6bf983e0434bf0fe8724bb9fc153465f977063417c8ab5eb95f8b73916
BLAKE2b-256 checksum
How to use checksums
03d4811a5546b16f6776d4e690195132dbb247a3a59b716d0db9a50303c08289
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.9 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
9851140a49fdc93e4d1e1505ece4e2161aa074351c56f0e6bf9b67bc47c1c2eb
BLAKE2b-256 checksum
How to use checksums
ec938d8f297f1007a4f12c0b7826d101a091313560bf92bbb6a9ffe3baf72802
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Size 1.9 MB
Tags CPython 3.12 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
55e5fc57d73513d0cfb78cfaac02c5903e0f994859899e1cfb76b2d8f705ed5f
BLAKE2b-256 checksum
How to use checksums
154e859cc90b3ed38819edeeef4d69f2e8e5c266b043d659ad04dacda81536ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-macosx_11_0_arm64.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-macosx_11_0_arm64.whl
Size 1.9 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
192394aa8a915bbc0e5208bfa287f209f844c0aa350009bc7c1c9e4d397f31d6
BLAKE2b-256 checksum
How to use checksums
8413776580983c99318d56c1faaaa381e2829147b4c7f7ddaae5b629ff91c17f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp312-cp312-macosx_10_12_x86_64.whl

Download URL pytsa_ais-2.3.15-cp312-cp312-macosx_10_12_x86_64.whl
Size 1.9 MB
Tags CPython 3.12 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
92bf5896a32df90c0574c5dee68571d9b0b008e891f6b0aa72ea305a5dd09fc9
BLAKE2b-256 checksum
How to use checksums
aae81d2512896d2b5ea7fa2b8a339dd3bcb9ddf631c4e2439cf616152bc55156
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-none-win_amd64.whl

Download URL pytsa_ais-2.3.15-cp311-none-win_amd64.whl
Size 1.8 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
2e4597c650458906b45e5d9567668733a383758b7cb5268118a2f3b130f7d838
BLAKE2b-256 checksum
How to use checksums
7621b9b72c08f7a2905b5305047541b43287c3e6c9185a5b06595e2438ba2bb5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-none-win32.whl

Download URL pytsa_ais-2.3.15-cp311-none-win32.whl
Size 1.8 MB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
7c5e5337e1d7d9caf490c1c139adc75d4ae92d5b65dabafe04bbf0ed4ea51f0e
BLAKE2b-256 checksum
How to use checksums
a58e9342f12ce7c12e95a7ea567781f84cac6ff31238a5048aab88936a8ff2dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_x86_64.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_x86_64.whl
Size 2.1 MB
Tags CPython 3.11 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
ad67f2ae408878424503d11f0a914569417bd3fdfbbc94444b6fc1e52600382c
BLAKE2b-256 checksum
How to use checksums
1d123b77c0689a63b5a09532476f950caf14c0a3d424a57a06bcb09b27cff6b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_armv7l.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_armv7l.whl
Size 2.2 MB
Tags CPython 3.11 Linux musl 1.1+ ARMv7l
SHA-256 checksum
How to use checksums
554c15362e5495476798a303f896a78e74377e826790461709c97b23066fa3be
BLAKE2b-256 checksum
How to use checksums
5e195ec01f12672fed2bf8486e60fd43ac6b44096e7f6d863042f906975dc69a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_aarch64.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-musllinux_1_1_aarch64.whl
Size 2.1 MB
Tags CPython 3.11 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
57b12b05cc532f2b28a2fed9f72de09be16984f83dc675773d42478e882bbc71
BLAKE2b-256 checksum
How to use checksums
774b49981dd11ecf41203fede2eb59879c309dd9506f38bb94097e568411c09f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
0b8fddc7c593b27086dce753905bc6879e1bdffa4de1c4c3c9e105315f983c95
BLAKE2b-256 checksum
How to use checksums
e4b27f927b19a4b3d2591ca6f68e60f04019644ae18de0380274284d3fc5d933
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 2.0 MB
Tags CPython 3.11 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
9411b6a772092c6293373738aa9668132c5ce5ed99168939685c04f192da32b2
BLAKE2b-256 checksum
How to use checksums
8da6effd9246cf9fdfc6b91f6607bc1b7fcb4b582ebf8a8eacd7f31d03988386
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 2.0 MB
Tags CPython 3.11 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
f883a6eb38f8e509331d2ce901359e6f452dbf080e09b75e4fccbac85fd765e2
BLAKE2b-256 checksum
How to use checksums
dfc3f8ab035b027ae4f553a3e1a0c75afac3c573c86f5cef01da0df9f9684be7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 1.9 MB
Tags CPython 3.11 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
8068553a48fab625f2b1248c9b4a1badf52005ae9617b9873bc4e03c9da31a47
BLAKE2b-256 checksum
How to use checksums
ba87240e8b3c7e18718c5ce56629bb1e811566f13bedfae7814de7c9a249abb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.9 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
3f930fdb216a273808ee54ba263f0a59924a599ca82a7a8ed63701282b067837
BLAKE2b-256 checksum
How to use checksums
eb77914124cda6f34ed90cf8b1f59036836d9484999be241a69e6886c013febf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Size 1.9 MB
Tags CPython 3.11 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
75e8064e025592508a1f3f35fe22764948eb39ce1b2ce18f1f9ab2033d0caf0d
BLAKE2b-256 checksum
How to use checksums
f99675288c126a822ccc875e0a7b1ea45d4b7bdd2a5467806c673a33b760f768
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-macosx_11_0_arm64.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-macosx_11_0_arm64.whl
Size 1.9 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0b2c3c841a1fb51c043ffcbe62a8fbe8e6f486fbe854f7621763b5d07849cfc6
BLAKE2b-256 checksum
How to use checksums
b674345859d02b963a2f79233f2f53e4e4843442f39f0ddb37da320905230285
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp311-cp311-macosx_10_12_x86_64.whl

Download URL pytsa_ais-2.3.15-cp311-cp311-macosx_10_12_x86_64.whl
Size 1.9 MB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
002d5ec499f790eb1ff98d399464516febeaa47e9b2500f83ce7d590180c8246
BLAKE2b-256 checksum
How to use checksums
5e7bedaafc8b2b2ade384f6d88f32019daaea6eec124f94d99a302a5eacfd1c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-none-win_amd64.whl

Download URL pytsa_ais-2.3.15-cp310-none-win_amd64.whl
Size 1.8 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9df1ef707a62b20047325f840ed85625fc122e7d81b366ce2e1ed37b54307a6e
BLAKE2b-256 checksum
How to use checksums
fbdc42977184cddfc20875dc6a614a6a1e7682209d26679ed55a975f80dbf31b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-none-win32.whl

Download URL pytsa_ais-2.3.15-cp310-none-win32.whl
Size 1.8 MB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
f7b83f4ed5f966589d01b18067772e23126d434ff8f65259cf61817a907f4355
BLAKE2b-256 checksum
How to use checksums
4ab9814aaf833a9d1db03232462b6f01fb7a22293fb8578fe4cb6cd003bd360a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_x86_64.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_x86_64.whl
Size 2.1 MB
Tags CPython 3.10 Linux musl 1.1+ x86-64
SHA-256 checksum
How to use checksums
f4bdacb18f0e3ace1b312f4ea85f6889018241e7e6e9f74065d2ed3307f81bc8
BLAKE2b-256 checksum
How to use checksums
56723627042079aa35549ef7a6977b47cd25f73543d4ced2a06082b8ce18a300
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_armv7l.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_armv7l.whl
Size 2.2 MB
Tags CPython 3.10 Linux musl 1.1+ ARMv7l
SHA-256 checksum
How to use checksums
d5fe7c046138e3edd8f491115682afaca01999ab7f7909661dc34e91dc397e27
BLAKE2b-256 checksum
How to use checksums
156c8a587969f8b244e3841bf96fdc83a08762b586a3d6d4744a81981e866a95
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_aarch64.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-musllinux_1_1_aarch64.whl
Size 2.1 MB
Tags CPython 3.10 Linux musl 1.1+ ARM64
SHA-256 checksum
How to use checksums
9021f80e5e3127d7ecf057d7b2a4f3009dc03cb1de50d6764e6fa20e70532b5e
BLAKE2b-256 checksum
How to use checksums
fb2f8c431140d94fd73a09a40316b1aa7c492578935741b229ed27c6e946a021
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 1.9 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
542539ca0f2814cf62e9f416e9cc6696746dbc59724aa1a0f2938d00b869b886
BLAKE2b-256 checksum
How to use checksums
f75c7e3cfc9cac72d362ddd6e0263706f0c62aa4f8930ad3c9eaa7bfd7fcb202
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Size 2.0 MB
Tags CPython 3.10 Linux glibc 2.17+ IBM System/390x
SHA-256 checksum
How to use checksums
e1f12965ba917b269d54315c83efb2b059c11dfed0aa08b7a98d0ab0104502d3
BLAKE2b-256 checksum
How to use checksums
085c1770d38e88e235c48af5a653fe7b44cddeacc14856879522b236f58e6195
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Size 2.0 MB
Tags CPython 3.10 Linux glibc 2.17+ PowerPC 64-le
SHA-256 checksum
How to use checksums
c5b619b576c02a02d44312e07bcc6a32c74c051ed80d9acda161e3839fbb314f
BLAKE2b-256 checksum
How to use checksums
34053c42296c1d144264977412725f005c2eee907a2f6497409574433712eed1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Size 1.9 MB
Tags CPython 3.10 Linux glibc 2.17+ ARMv7l
SHA-256 checksum
How to use checksums
79f04acb4e6528f4a8c788865cd6e36b874ea7e89b4063726459b7391971233a
BLAKE2b-256 checksum
How to use checksums
bffbe3d449b5472848471720d728d1eed1549ecaa77c76f4a7583d20b62df92d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 1.9 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
23b1e3331773cd7bfa3eab996462ff3233dcbfb686aee8240827908381e65390
BLAKE2b-256 checksum
How to use checksums
712698fc33728d3353e77ac20a8c78f38abfb3e6fdcb14999d512e45593fafe4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Size 1.9 MB
Tags CPython 3.10 Linux glibc 2.5+ x86-32
SHA-256 checksum
How to use checksums
3691e3e2cc388c08b2a7707770baccd2b45f73362cee8a202b51877d69bb7aa0
BLAKE2b-256 checksum
How to use checksums
ec5c043e1ff41579573cfd58b550cd6b36ffce3099d23ec0d4fdbb90c0e3a3d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-macosx_11_0_arm64.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-macosx_11_0_arm64.whl
Size 1.9 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
00b84dfe58351b8b73ed199b094bc9e3936cba8ee93e4ab73717a1489e33bd8a
BLAKE2b-256 checksum
How to use checksums
4add8e2cc0887a38888d136a177789bd90855209206d09ae144a88256425d495
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Release files / pytsa_ais-2.3.15-cp310-cp310-macosx_10_12_x86_64.whl

Download URL pytsa_ais-2.3.15-cp310-cp310-macosx_10_12_x86_64.whl
Size 1.9 MB
Tags CPython 3.10 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
7f17c45f285d2c28a89a020113219bee03b5fc2e046cb09abddfee95aed871b8
BLAKE2b-256 checksum
How to use checksums
b54f4a11708d1add79a704bc358fbf701b9b2d1b5ab35b6665c779e46ff54d7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

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 Feb 12, 2025.

Transparency log

Security for pytsa-ais 2.3.15

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.

Full provenance

All 52 files in this release have been uploaded with provenance metadata.

Select from 52 files

Attestation for pytsa_ais-2.3.15-cp313-none-win_amd64.whl

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 Feb 12, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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