Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

eTiKeT Sync Agent

A Python library for synchronizing scientific data from various connector sources to the eTiKeT platform.

Overview

The eTiKeT Sync Agent provides a unified interface for automatically discovering and synchronizing experimental datasets from different data acquisition systems. It supports both database-backed sources (e.g., QCoDeS, Core-tools) and file-based sources (e.g., Quantify, Labber, generic folder structures).

Key Features

  • Plugin-based connector system — Easily extensible architecture using Python entry points
  • Multiple data source support — Native eTiKeT, QCodes, Quantify, Labber, Core-tools, and generic folder-based sources
  • Live dataset synchronization — Real-time sync for ongoing measurements
  • File converters — Transform data formats during synchronization
  • Persistent tracking — SQLite database for tracking the sync state of each dataset
  • Manifest-based file monitoring — Efficient change detection for file-based sources

Supported Connectors

Connector Type Description
etiket_sync_agent_native Native eTiKeT native datasets
etiket_sync_agent_folderbase File-based Generic folder structures
etiket_sync_agent_qcodes Database QCoDeS measurement databases
etiket_sync_agent_quantify File-based Quantify scheduler data
etiket_sync_agent_labber File-based Labber measurement files
etiket_sync_agent_core_tools Database Core-tools measurements

Installation

We recommend using the qdrive package to install and manage the sync agent as a background service. See the QHarbor documentation for setup instructions.

For standalone installation:

pip install etiket_sync_agent

Install connectors as needed:

pip install etiket_sync_agent_qcodes
pip install etiket_sync_agent_quantify

Usage

The sync agent is typically run as a background service managed by the qdrive package. Once configured, it continuously monitors your data sources and synchronizes new datasets to eTiKeT.

Running Manually

To run the sync agent manually:

python -m etiket_sync_agent

For more control (e.g., enabling debug logging), you can run the sync loop directly:

import logging
import sys

# Configure logging
logging.basicConfig(
    level=logging.INFO,
    format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
    handlers=[logging.StreamHandler(sys.stdout)]
)

from etiket_sync_agent.run import sync_loop

# Run sync loop: 0 = run indefinitely, N = run N iterations
sync_loop(0)

CLI Tools

The package provides CLI tools to scaffold new connectors and converters. These scaffolds give you a ready-to-use package structure with all the boilerplate code in place—just fill in your implementation logic.

How It Works

The generated packages include pre-configured entry points in their pyproject.toml. Once installed, the sync agent automatically discovers and registers these connectors or converters via Python's entry points mechanism.

Tip: For working examples, check out the existing connector packages like etiket-sync-agent-qcodes on PyPI.

Need help? Contact us at support@qharbor.nl.


Generate Connector Scaffold

Creates a new sync agent connector package for synchronizing data from a specific source (e.g., a database, file system, or instrument).

generate_sync_agent_scaffold <connector> [options]

Arguments:

Argument Description
connector Identifier for your connector (e.g., qcodes, labber, my-instrument)

Options:

Option Default Description
--version 0.0.1 Initial package version
--dependency Add a dependency (repeatable). You can also edit pyproject.toml manually.
--base database Base class template: database or file (see below)
--default-scope REQUIRED Scope assignment policy (see below)
--live-sync False Set to True if you plan to implement live synchronization
--level -1 File-based only. Directory level for dataset detection (see below)

Understanding --base:

  • database — Use when syncing from a database (e.g., SQLite from QCoDeS). The sync agent queries the database for new datasets.
  • file — Use when syncing folder-based datasets where each folder or file represents a dataset.

Understanding --default-scope:

  • REQUIRED — Users must specify the target scope (project/folder) for each sync source.
  • OPTIONAL — A default scope can be inferred, but users may override it.
  • DISABLED — The connector determines the scope automatically; users cannot change it.

Understanding --level (file-based only):

  • -1 — Every folder containing a _QH_dataset_info.yaml file becomes a dataset.
  • 1 — Each immediate subfolder of the root is a dataset.
  • 2+ — Folders at that depth level become datasets.

Example — Database Connector:

# Create a connector for a custom SQLite database
generate_sync_agent_scaffold my-connector \
    --base database \
    --dependency "sqlalchemy>=2.0" \
    --default-scope REQUIRED

This generates:

etiket-sync-agent-my-connector/
├── pyproject.toml                      # Package config with entry points
└── etiket_sync_agent_my_connector/
    ├── __init__.py                     # Exports sync and config classes
    ├── my_connector_config_class.py   # Configuration dataclass
    └── my_connector_sync_class.py     # Sync logic (implement this)

Example — File-based Connector:

# Create a connector for experiment folders at depth level 2
generate_sync_agent_scaffold lab-data \
    --base file \
    --level 2 \
    --live-sync

Generate Converter Scaffold

Creates a new file converter package for transforming file formats during synchronization (e.g., CSV → HDF5). Converters are used by default in the folderbase connector, but you can also use them in your own custom connectors.

generate_converter_scaffold <converter> [options]

Arguments:

Argument Description
converter Identifier for your converter (e.g., csv-to-hdf5, mat-to-zarr)

Options:

Option Default Description
--version 0.0.1 Initial package version
--dependency Add a dependency (repeatable)
--entry-name Custom entry point name (defaults to sanitized converter name)

Example:

# Create a converter for CSV to HDF5
generate_converter_scaffold csv-to-hdf5 \
    --dependency h5py \
    --dependency pandas

This generates:

etiket-sync-agent-csv-to-hdf5-converters/
├── pyproject.toml                           # Package config with entry points
└── etiket_sync_agent_csv_to_hdf5_converters/
    ├── __init__.py                          # Exports converter class
    └── csv_to_hdf5_converter.py             # Converter logic (implement this)

After implementing your converter, install it and the sync agent will automatically use it for matching file types.

License

See LICENCE for details.

Release files for etiket-sync-agent 0.3.0b6

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 etiket-sync-agent 0.3.0b6
File
etiket_sync_agent-0.3.0b6-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
etiket_sync_agent-0.3.0b6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp314-cp314-macosx_11_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 11.0+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
etiket_sync_agent-0.3.0b6-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
etiket_sync_agent-0.3.0b6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp313-cp313-macosx_11_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 11.0+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
etiket_sync_agent-0.3.0b6-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
etiket_sync_agent-0.3.0b6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp312-cp312-macosx_11_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 11.0+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
etiket_sync_agent-0.3.0b6-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
etiket_sync_agent-0.3.0b6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp311-cp311-macosx_11_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 11.0+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
etiket_sync_agent-0.3.0b6-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
etiket_sync_agent-0.3.0b6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp310-cp310-macosx_11_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 11.0+ x86-64 Details
etiket_sync_agent-0.3.0b6-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 66.6 MB

Release files / etiket_sync_agent-0.3.0b6-cp314-cp314-win_amd64.whl

Download URL etiket_sync_agent-0.3.0b6-cp314-cp314-win_amd64.whl
Size 1.3 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
e604653d61c1e5f58b7f7d63d6318abab478e2dee3dfb6a472d5992355df6777
BLAKE2b-256 checksum
How to use checksums
c4881953f7d7431a44b1064c0fe155fd60f25a4c8f01528fae7eb8a5a593f700
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 9.1 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
dde2648e47e818cee65b638c266e0c0a1b0e51a62b4b745523f5348b375eef0f
BLAKE2b-256 checksum
How to use checksums
29acc7122e6c703ccc7e1a53063c533f8b54bbd38a7a4d0b76b4020f3638b53e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp314-cp314-macosx_11_0_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp314-cp314-macosx_11_0_x86_64.whl
Size 1.5 MB
Tags CPython 3.14 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
57b0c71eec61af34ecde1a066b5999293ae460afa4fcc864db7ee572c3951d38
BLAKE2b-256 checksum
How to use checksums
27df1f8c95ebd0c17a3fcff818fa5811f2effe82629a38ebf6db0807ddfed571
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp314-cp314-macosx_11_0_arm64.whl

Download URL etiket_sync_agent-0.3.0b6-cp314-cp314-macosx_11_0_arm64.whl
Size 1.3 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0fee912924cc0595e28d5da663f69bb5929a708ff0da6f89e8ffb20dcf1eceb1
BLAKE2b-256 checksum
How to use checksums
7fbeb4e8cdf6e34e26f37bf041a7e7e8cd58a74de81937e8311385f996058a47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp313-cp313-win_amd64.whl

Download URL etiket_sync_agent-0.3.0b6-cp313-cp313-win_amd64.whl
Size 1.2 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
9e8d9572c839d51dd66efd7f9586ebd734be6b763ce44502e355614ae974095b
BLAKE2b-256 checksum
How to use checksums
a88444536b4eed5f2d18857eb28365ea95295dca5a38f6be012559a2f1e5ea63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 9.3 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1814de84dd558198e583a56c3ff3aca9b44887e8ebd34f42d05b10e4da4f30b1
BLAKE2b-256 checksum
How to use checksums
4dc5fe22831cf35e95e4e87655f36a06f13157f063e77ca0064a9128e6570154
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp313-cp313-macosx_11_0_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp313-cp313-macosx_11_0_x86_64.whl
Size 1.5 MB
Tags CPython 3.13 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
db11481945c5359238e1deb51f9aa4860ac6c932c51546794fdfe77135b75a9d
BLAKE2b-256 checksum
How to use checksums
a8df2eab4a4db2b640b0b98f5f6e3e766f92509f092dfdb66aeb3625e5ca03c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp313-cp313-macosx_11_0_arm64.whl

Download URL etiket_sync_agent-0.3.0b6-cp313-cp313-macosx_11_0_arm64.whl
Size 1.3 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
b3713c32f44b4254b9f2f42d0bd51187bb5ff1d850f9c04793615bbb3164fbc2
BLAKE2b-256 checksum
How to use checksums
87e59e9630730dd6b29cbc83f4ee736006636315da1b9f7acd29d7cbbc333b92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp312-cp312-win_amd64.whl

Download URL etiket_sync_agent-0.3.0b6-cp312-cp312-win_amd64.whl
Size 1.2 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
fe1843004e809eb49752f7a57b1a8a9c91c7b6ab7b0b23f0a412f678ef4f3a93
BLAKE2b-256 checksum
How to use checksums
676ae3e284ed49988080ad8a4262fcea2b192b71c6a1fbaf68d0d72ed8dcb1cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 9.5 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c65f34a2080a9a532deb17ff60f6fc84ce5a63b594cf30a770ddaf53fcca220d
BLAKE2b-256 checksum
How to use checksums
80212ed77aa29f5e5d47738a3fc42a1b9f59c2ba3eca8c1da5ea6c3b9b8f20d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp312-cp312-macosx_11_0_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp312-cp312-macosx_11_0_x86_64.whl
Size 1.5 MB
Tags CPython 3.12 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
23b3cba27ead2397f027b16edfc0ad48d664b7f4c1410b0ad3533f3dcc9aae56
BLAKE2b-256 checksum
How to use checksums
ac6da285a748e95f07aeae55e22dc60548a832f16b508dc2abdebfcc29e71cb6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp312-cp312-macosx_11_0_arm64.whl

Download URL etiket_sync_agent-0.3.0b6-cp312-cp312-macosx_11_0_arm64.whl
Size 1.3 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1851960e46d17d5c4d8e81eb344fb166a6c09adab06141b8d5be174559ebaf86
BLAKE2b-256 checksum
How to use checksums
2d42673ff0028267d3b85e718cd9a5f3e452947694419684ba69953d84dafd88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp311-cp311-win_amd64.whl

Download URL etiket_sync_agent-0.3.0b6-cp311-cp311-win_amd64.whl
Size 1.3 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
3f59978de7ef080144d4b569d5a26aff7c067e7a7011d82df89fe453ef909b4d
BLAKE2b-256 checksum
How to use checksums
f859678704ad69f841b04f9f0ebb8567e27f3aae1884a4a7a670cc3572480b5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 9.3 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ca3fcc5fd2441ea01871feac8febb4dc5b6ba0966bba9c539236ddf5370a2abf
BLAKE2b-256 checksum
How to use checksums
86df66090e568b55964a6a4994b1cfd552061955ae36807cc36e103185cc7165
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp311-cp311-macosx_11_0_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp311-cp311-macosx_11_0_x86_64.whl
Size 1.5 MB
Tags CPython 3.11 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
cab093df8581f739796626455650295d3ba582febd25a404d59234418ddf66d9
BLAKE2b-256 checksum
How to use checksums
728ca16c1f1a6c39210e52bdee8df09b4ba5faf1a351c1bf09ea6108af8b8bcf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp311-cp311-macosx_11_0_arm64.whl

Download URL etiket_sync_agent-0.3.0b6-cp311-cp311-macosx_11_0_arm64.whl
Size 1.3 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6541bb26243e732b5d6c00a76dc54f87c975a475001620caad72ddde62990f99
BLAKE2b-256 checksum
How to use checksums
8af6070443355b52d34c561d4aff4abd4a721db97935efb1689e11d73e87dcb4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp310-cp310-win_amd64.whl

Download URL etiket_sync_agent-0.3.0b6-cp310-cp310-win_amd64.whl
Size 1.3 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
250ee70067f59e284210892b16082b00790c9b67574da3f8e429242025598b0a
BLAKE2b-256 checksum
How to use checksums
5e907a49877bf061678299179ff49225dcf983c0d48b8211d9aa4dbb06f433e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 9.0 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
60fa8f51efc14e998550dbdc4b14f5aa27a58a05ab99fa65d748d02b78ded610
BLAKE2b-256 checksum
How to use checksums
440f8e8ab63a613487cfb2ea368afe53f1f60432256fe72ee0219b5cc11d2916
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp310-cp310-macosx_11_0_x86_64.whl

Download URL etiket_sync_agent-0.3.0b6-cp310-cp310-macosx_11_0_x86_64.whl
Size 1.5 MB
Tags CPython 3.10 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
8dad0d856a69257aa549ec39e56ebe0c54b624017ad99b32587e94065f4f9bef
BLAKE2b-256 checksum
How to use checksums
cea6aa7947d6acbcaeaf90f6cbc35cd8b516f5bf6323a45a71a2d3bc99424d39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / etiket_sync_agent-0.3.0b6-cp310-cp310-macosx_11_0_arm64.whl

Download URL etiket_sync_agent-0.3.0b6-cp310-cp310-macosx_11_0_arm64.whl
Size 1.4 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
eb6947ecd160ca3e6be1b72f0dc9c901b6bc5721caa43c96e5d8ababc53eb610
BLAKE2b-256 checksum
How to use checksums
9750a8a6d65ef795d8034ae81d9b66960b8baabc0d12adfdce0e215bc117b269
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
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