gwframe
High-level Python library to work with gravitational-wave frame (GWF) files, based on framecpp
Resources
Installation
With pip:
pip install gwframe
Pre-built wheels are available for:
| Platform | Architecture | Minimum Version |
|---|---|---|
| Linux | x86_64, aarch64 | glibc 2.34 (e.g., Debian 12, Ubuntu 21.10, Fedora 35, RHEL 9) |
| macOS | x86_64 | macOS 13 (Ventura) |
| macOS | ARM64 | macOS 15 (Sequoia) |
With conda:
conda install -c conda-forge gwframe
Features
- Multi-frame writing - Write multiple frames to a single file
- Multi-channel support - Read all channels or specific lists with a single call
- Masked array support - Detect and propagate invalid-data flags as NumPy masked arrays
- Self-contained wheels - No external dependencies required for pip installation
Quickstart
Reading frames
import gwframe
# Read single channel
data = gwframe.read('data.gwf', 'L1:GWOSC-16KHZ_R1_STRAIN')
print(f"Read {len(data.array)} samples at {data.sample_rate} Hz")
print(f"Time range: {data.start} to {data.start + data.duration}")
# Read all channels
channels = gwframe.read('data.gwf', channels=None)
for name, timeseries in channels.items():
print(f"{name}: {len(timeseries.array)} samples")
# Time-based slicing (automatically stitches multiple frames)
data = gwframe.read('multi_frame.gwf', 'L1:STRAIN',
start=1234567890.0, end=1234567900.0)
Writing single frames
import gwframe
import numpy as np
data = np.random.randn(16384)
gwframe.write('output.gwf', data, start=1234567890.0,
sample_rate=16384, name='L1:TEST')
Writing multiple frames
import gwframe
import numpy as np
# Write multiple frames to a single file
with gwframe.FrameWriter('multi_frame.gwf') as writer:
for i in range(20):
data = np.random.randn(16384)
writer.write(data, start=1234567890.0 + i,
sample_rate=16384, name='L1:TEST')
# Or without a context manager
writer = gwframe.FrameWriter('multi_frame.gwf')
writer.open()
for i in range(20):
data = np.random.randn(16384)
writer.write(data, start=1234567890.0 + i,
sample_rate=16384, name='L1:TEST')
writer.close()
Inspecting frames
From the command line:
gwframe inspect data.gwf # file summary
gwframe inspect -v data.gwf # + channel listing
gwframe inspect -vvv data.gwf # + sample rates, dtypes, units, validity
gwframe inspect -vvvv data.gwf # + invalid-channel report
gwframe inspect -vvvvv data.gwf # + data preview (reads all data)
Or from Python:
import gwframe
# Get frame information
info = gwframe.get_info('data.gwf')
print(f"Number of frames: {info.num_frames}")
for frame in info.frames:
print(f"Frame {frame.index}: {frame.name} at GPS {frame.start}, duration {frame.duration}s")
# List all channels
channels = gwframe.get_channels('data.gwf')
for channel in channels:
print(channel)
Advanced: Full control with Frame objects
import gwframe
import numpy as np
# Create frame with multiple channels and metadata
frame = gwframe.Frame(
start=1234567890.0,
duration=1.0,
name='L1',
run=1
)
# Add channels
strain = np.random.randn(16384)
frame.add_channel('L1:STRAIN', strain,
sample_rate=16384,
unit='strain',
channel_type='proc')
aux = np.random.randn(1024).astype(np.float32)
frame.add_channel('L1:AUX', aux,
sample_rate=1024,
unit='counts',
channel_type='adc')
# Add metadata
frame.add_history('gwframe', 'Created with gwframe')
# Write with custom compression
frame.write('output.gwf', compression=gwframe.Compression.GZIP)
Handling invalid / masked data
ADC channels in GWF files can carry a data-valid flag indicating the entire channel is suspect. gwframe surfaces this through NumPy masked arrays:
import gwframe
# By default, reading a channel flagged invalid raises an error
try:
data = gwframe.read('data.gwf', 'H1:ADC-CHANNEL')
except gwframe.InvalidDataError as e:
print(e) # suggests allow_invalid=True
# Allow invalid data — returns a masked array
data = gwframe.read('data.gwf', 'H1:ADC-CHANNEL', allow_invalid=True)
if isinstance(data.array, np.ma.MaskedArray):
print(f"{data.array.count()} valid samples out of {len(data.array)}")
# Write a masked array — ADC channels preserve the flag,
# proc/sim channels warn that the mask is discarded
masked = np.ma.MaskedArray(values, mask=quality_mask)
frame = gwframe.Frame(start=1234567890.0, duration=1.0, name='H1')
frame.add_channel('H1:ADC-CHANNEL', masked,
sample_rate=16384, channel_type='adc')
# Control behavior when mask fidelity is lost
frame.add_channel('H1:PROC-CHANNEL', masked,
sample_rate=16384, channel_type='proc',
on_mask_loss='ignore') # or 'warn' (default), 'raise'
CLI Tools
gwframe includes a command-line interface for common frame manipulation tasks:
# Inspect a frame file (add -v, -vv, -vvv for more detail)
gwframe inspect data.gwf
# Rename channels
gwframe rename input.gwf -o output.gwf -m "L1:OLD=>L1:NEW"
# Combine channels from multiple files
gwframe combine file1.gwf file2.gwf -o output/
# Keep only specific channels
gwframe select input.gwf -o output.gwf -c L1:STRAIN
# Remove unwanted channels
gwframe drop input.gwf -o output.gwf -c L1:UNWANTED
# Change frame duration
gwframe resize input.gwf -o output/ -d 4.0
# Replace NaN or sentinel values
gwframe impute input.gwf -o output.gwf --fill-value 0.0
# Update channel data from another file
gwframe replace base.gwf --update new.gwf -o output/ -c L1:STRAIN
# Change compression settings
gwframe recompress input.gwf -o output.gwf -c GZIP -l 9
# Chain stages in a single pass, e.g. raw -> curated dataset
gwframe transform raw/ -o curated/ --compression GZIP --level 9 \
rename -m "L1:GDS-CALIB_STRAIN=>L1:STRAIN" \
drop -c L1:DEBUG \
resize -d 4
gwframe transform raw/ -o curated/ --dry-run @curated.recipe # preview a recipe
# Check two files (or directories) for consistency of data and metadata
gwframe validate a.gwf b.gwf
gwframe validate dir1/ dir2/ --common # only compare what both sides have
gwframe validate a.gwf b.gwf --metadata-only # skip sample data (faster)
gwframe validate a.gwf b.gwf --atol 1e-9 # tolerate small float differences
All commands support batch processing with directories and glob patterns. See the CLI documentation for detailed usage and examples.
Metadata
Release files for gwframe 0.8.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gwframe-0.8.2.tar.gz | 4.2 MB | Details |
Built distributions (wheels)
Total release size: 310.9 MB
Release files / gwframe-0.8.2.tar.gz
| Download URL | gwframe-0.8.2.tar.gz |
|---|---|
| Size | 4.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e22a960c5bae3cf4b4b6b28424ff8a50e6002f9640e00a80c2766cb0a1b560df
|
|
BLAKE2b-256 checksum How to use checksums |
0da43a80ddfaad6cac1d1e98fadc5256a9ac950ff69d7b8233496ac18c6dc4b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp314-cp314t-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp314-cp314t-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
965005169d8cbde609387e1d60081eced8c56b26b7010605fe29a4ccdcc13d2b
|
|
BLAKE2b-256 checksum How to use checksums |
b5bacdb524bf092b9e0281863c22457122fe0a1c435f2695b2c552a1a0d3b20f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp314-cp314t-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp314-cp314t-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
e9fc0ba1f3ad4989cb5799064a817859b49b923b1bdc2446ea126701132aa5ce
|
|
BLAKE2b-256 checksum How to use checksums |
eae4bb8be17ee03a3d12c19c493aae89d4c62344d57e4d3f7920d62c2b2dbd3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp314-cp314-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp314-cp314-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.14 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
5b712396c55f989d6dbf4cda75e994539405cb28300e796efc73c800b5606292
|
|
BLAKE2b-256 checksum How to use checksums |
80eb19f66ba620c122aa179aa4279e772773b081ebc35ee6bab3ec9447a504f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp314-cp314-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp314-cp314-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.14 Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
53a5214cb6d74771cf316a226a2037e121a7701ba7062dbe8841df11dfc781e7
|
|
BLAKE2b-256 checksum How to use checksums |
a14d0af47968047281da2132ed6b981f3464eecf57c41d41ddcecf4de0eea60d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp314-cp314-macosx_15_0_arm64.whl
| Download URL | gwframe-0.8.2-cp314-cp314-macosx_15_0_arm64.whl |
|---|---|
| Size | 4.6 MB |
| Tags | CPython 3.14 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9040d50fcf3d41c5c76b52037e9c4a40be461815a22b92d532de1ec9dacfc580
|
|
BLAKE2b-256 checksum How to use checksums |
ac708e3be0ce57b9fc7edb169b4d880a2820ed8d2bd229df18d0c23d33b70a3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp314-cp314-macosx_13_0_x86_64.whl
| Download URL | gwframe-0.8.2-cp314-cp314-macosx_13_0_x86_64.whl |
|---|---|
| Size | 4.7 MB |
| Tags | CPython 3.14 macOS 13.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
44629dc1598e62e8a04245af81d6bf3cc425b8b57b4e5e3f0faae880fe3c65f3
|
|
BLAKE2b-256 checksum How to use checksums |
3274d7137df7294f2feabfc59b53d8d968ba3282c84a3d7a218e1bc4ab4ce1ea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp313-cp313t-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp313-cp313t-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.13 CPython 3.13 free-threading Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
5ebaf19dd8e19de4a245242fe75d0b184b6146308305b05722b1525e5b9c64c4
|
|
BLAKE2b-256 checksum How to use checksums |
aadc55ca30ef1525751d3b2b38397f49cead088eecb96a3723603dc4fbf206cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp313-cp313t-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp313-cp313t-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.13 CPython 3.13 free-threading Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
8188d720f2ca252ec0a3f207d352831ad99bff13ad1462c5c780b7f2d6bef745
|
|
BLAKE2b-256 checksum How to use checksums |
91067d108700bdefc2ffe299e44aabf14be289101f0c203719ac18e82b1d424d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp313-cp313-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp313-cp313-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.13 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
1885c46ba760f811da93c9ba6ed925bf20f91ad76940a470d09c2e8e353b9a17
|
|
BLAKE2b-256 checksum How to use checksums |
14670f1e43ab44bf9dbd03398252a54bed7735b78b59474629adaeb817279d7f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp313-cp313-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp313-cp313-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.13 Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
3f70159a7c5c80cad19592341a72cc01c14162257ff9aa10ecf6c39ddab4e5dc
|
|
BLAKE2b-256 checksum How to use checksums |
1f09b962f6bad489b07d7249a021d07a27cdee81859da15d4ec234be8254020d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp313-cp313-macosx_15_0_arm64.whl
| Download URL | gwframe-0.8.2-cp313-cp313-macosx_15_0_arm64.whl |
|---|---|
| Size | 4.6 MB |
| Tags | CPython 3.13 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f97ae5bc1cbc7c3ee58ba92fa43110f103cda57af015de70bf54ba03ed3bdf9e
|
|
BLAKE2b-256 checksum How to use checksums |
b7d4e26b10773fdab8af4bd93673b3a991018ca31827a3f2394c3b67f9204c86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp313-cp313-macosx_13_0_x86_64.whl
| Download URL | gwframe-0.8.2-cp313-cp313-macosx_13_0_x86_64.whl |
|---|---|
| Size | 4.7 MB |
| Tags | CPython 3.13 macOS 13.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
e157a29e80f9c991fe86284c0d99649f865ac92d84c0b34c6dcc8e4089bff94d
|
|
BLAKE2b-256 checksum How to use checksums |
f6f0d5d120d34919c51e592a9b8910cef05298d2ca6091a0bde61ce234428f60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp312-cp312-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp312-cp312-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.12 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
13dc9f33901ebf1b1c6d449df7fa7652a387017a6000a5664a39f18573bd548d
|
|
BLAKE2b-256 checksum How to use checksums |
b01c32dddbde6431357ac206767527572bcf7f4a9bb31a26ade0acd18b1e3231
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp312-cp312-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp312-cp312-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.12 Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
4a5480f5a1bbda1f9bfd8613dec3f7083d8316befdb3029a9f375457ad81cdf9
|
|
BLAKE2b-256 checksum How to use checksums |
7f9c63d340b3bb03a0d6d26fc328ad073a03885228b7fc5c7bf2dda3c93ff4ea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp312-cp312-macosx_15_0_arm64.whl
| Download URL | gwframe-0.8.2-cp312-cp312-macosx_15_0_arm64.whl |
|---|---|
| Size | 4.6 MB |
| Tags | CPython 3.12 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
af49a5843c6f8b55a78c9acd05fd4c31c259d604c6f240a6daf4c5f657e92c29
|
|
BLAKE2b-256 checksum How to use checksums |
77b8db705cd3de496d03c17473a6b19e5b1809ba944563abf6a3a00f0c737aec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp312-cp312-macosx_13_0_x86_64.whl
| Download URL | gwframe-0.8.2-cp312-cp312-macosx_13_0_x86_64.whl |
|---|---|
| Size | 4.7 MB |
| Tags | CPython 3.12 macOS 13.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
3fac83a21aea7c87f9ab06bf8a86f3a547e4ec1b6dda0425ba3cfcb07bb4cba4
|
|
BLAKE2b-256 checksum How to use checksums |
553f52df0d493d965b7baa4e507c2cbe67993500f0bf649e969296a342eb29df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp311-cp311-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp311-cp311-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.11 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
bce6bd4694ffddf6a367ae25ff6de79c5ac93ecef89daa09ba12c52928c7c6b0
|
|
BLAKE2b-256 checksum How to use checksums |
e2de6ab404c719e4952dd3ac557cff04549fd115217f5c12799feabb76545a78
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp311-cp311-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp311-cp311-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.11 Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
9cae41b61ae1b6c1a859552eec1db3e1db0bd57298fb973593047f6e5609564b
|
|
BLAKE2b-256 checksum How to use checksums |
45bbbe4b35014d59c046b53a385704854db4c19460cf11b4b13ac18324e11530
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp311-cp311-macosx_15_0_arm64.whl
| Download URL | gwframe-0.8.2-cp311-cp311-macosx_15_0_arm64.whl |
|---|---|
| Size | 4.6 MB |
| Tags | CPython 3.11 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
fec2ec03c736e4febf0a82801b6d5e268465de134b90c5a14f4943518fac6762
|
|
BLAKE2b-256 checksum How to use checksums |
4d0fc7768614cd0592cd2aa3650170261c2a09852a375d00ebd89dcd6e204f70
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp311-cp311-macosx_13_0_x86_64.whl
| Download URL | gwframe-0.8.2-cp311-cp311-macosx_13_0_x86_64.whl |
|---|---|
| Size | 4.7 MB |
| Tags | CPython 3.11 macOS 13.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
8a33689d9ed4ca7fb199978de9a886437dbc06b2bc7fe0e7262ca36195306ece
|
|
BLAKE2b-256 checksum How to use checksums |
4fe41d5e1c82021ba5e087dd8965e2e4840b12cd83aae590771abc3436ab2794
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp310-cp310-manylinux_2_34_x86_64.whl
| Download URL | gwframe-0.8.2-cp310-cp310-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 18.8 MB |
| Tags | CPython 3.10 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
baf30323ef79bb8d60d6aa5c9843a4c9f9b68737b98157bde39bcd311c6d841d
|
|
BLAKE2b-256 checksum How to use checksums |
12d9a6918b543b4787122fd112e0e7223ff0b526fda36ef95fdc7710ea5d538a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp310-cp310-manylinux_2_34_aarch64.whl
| Download URL | gwframe-0.8.2-cp310-cp310-manylinux_2_34_aarch64.whl |
|---|---|
| Size | 18.3 MB |
| Tags | CPython 3.10 Linux glibc 2.34+ ARM64 |
|
SHA-256 checksum How to use checksums |
6878648c16a967561e0593b1f58e8347d9c44c138944c4a17bebc50a3f41b3c4
|
|
BLAKE2b-256 checksum How to use checksums |
40194aa1eecf8421390bfedba2013bb407172dba8ceb7efc8024ebd608edee81
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp310-cp310-macosx_15_0_arm64.whl
| Download URL | gwframe-0.8.2-cp310-cp310-macosx_15_0_arm64.whl |
|---|---|
| Size | 4.6 MB |
| Tags | CPython 3.10 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
bf75a993b0708e619b2a85b32ed4638063052fb11b2c763aafc3ab3f3c39adcf
|
|
BLAKE2b-256 checksum How to use checksums |
20572defe3c0baf7b5624ecd2afc44862fbe6ca0caf84084ac4e4aca06175800
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / gwframe-0.8.2-cp310-cp310-macosx_13_0_x86_64.whl
| Download URL | gwframe-0.8.2-cp310-cp310-macosx_13_0_x86_64.whl |
|---|---|
| Size | 4.7 MB |
| Tags | CPython 3.10 macOS 13.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
308aa70aa67af75578ba064568685f66a8d70904de03ff4ea2a42d2a96962a51
|
|
BLAKE2b-256 checksum How to use checksums |
80c8a19f6e9430ce8fa0d9701ed3b262c537ec89a86ef9d8a416ea0caa9817a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|