Description
This system is dedicated to help to synchronize data of resources.
Links
Installation
pip install b3j0f.sync
Features
The global architecture is composed of four classes:
Synchronizer: class which is linked to several stores in order to propagate data CRUD operations on these last ones.
Store: class which represents a set of data, and uses one Accessor per data type in order to access to self data.
Accessor: class which permits to access and create data.
Data: specific to an accessor, it is the abstraction class used to exchange data information among stores.
Therefore, one Store can be used by several synchronizers, and one Accessor can be used by several Stores.
The Synchronizer and the Store are configurables (see b3j0f.conf). Configuration files are installed in the ~/etc/ directory.
If you want to specialize this system to your own needs, you have to extend abstract classes with implementation of 6 CRUD methods for the Accessor.
The system does not use semantical mechanisms, therefore, the system is in a best effort mode instead to be exhaustive.
Examples
b3j0f.dmts: development management tool synchronizer.
Limitations
Name limitation
In order to ensure data consistency among several stores, the system choose to find any data from its name and context name (aka, name of embedding data).
Therefore, this system is not able to synchronize data which are of the same type of other data, in the same context, and with the same name.
Perspectives
break the name limitation with a store dedicated to ensure correspondance between store data ids.
use a data id of type int instead of type str, for memory reasons.
wait feedbacks during 6 months before passing it to a stable version.
Cython implementation.
Donation
Metadata
Release files for b3j0f.sync 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distributions (sdists)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| b3j0f.sync-0.0.3.zip | 32.3 kB | Without provenance | Details | |
| b3j0f.sync-0.0.3.tar.gz | 15.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| b3j0f.sync-0.0.3-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 76.7 kB
Release files / b3j0f.sync-0.0.3.zip
| Download URL | b3j0f.sync-0.0.3.zip |
|---|---|
| Size | 32.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
77f57dd69ac0bbafcef199402d4286513ce704efc08a28cce1b962ff8d037069
|
|
BLAKE2b-256 checksum How to use checksums |
0a3b3c676b967449918b24790fc0240062d225bda876a181c8ea21da320bc92a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / b3j0f.sync-0.0.3.tar.gz
| Download URL | b3j0f.sync-0.0.3.tar.gz |
|---|---|
| Size | 15.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2a2db6756bddb160702fd8507e9b2469bb22529cf6db763fda085a2c8b55d8af
|
|
BLAKE2b-256 checksum How to use checksums |
bb6347064641e15089d30c775cd83821df981cadace6e75ada38d10a315396bd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / b3j0f.sync-0.0.3-py2.py3-none-any.whl
| Download URL | b3j0f.sync-0.0.3-py2.py3-none-any.whl |
|---|---|
| Size | 28.7 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
a79495b2fae46e4da90f580a17e30f3e1644dbac04ac2fac325d076e767dd7d8
|
|
BLAKE2b-256 checksum How to use checksums |
728186b454499a3141456a570c0a1190662849021f3e660379c447ab779c2459
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for b3j0f.sync 0.0.3
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
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.