semvec/pypi-packages huggingface dataset:
simple-json-mapped-dict 0.1.0a0
A simple `MutableMapping` (dict-like) that transparently persists its contents to a JSON file on disk. Uses only the most reliable file opening modes (`r` and `w`). Maximum compatibility with network filesystems (e.g. NAS, SSHFS, NFS), at the cost of atomicity and data race safety.
Requires Python: >=2

# `simple-json-mapped-dict`

A simple `MutableMapping` (dict-like) that transparently persists its contents to a JSON file on disk. Uses only the most reliable file opening modes (`r` and `w`). Maximum compatibility with network filesystems (e.g. NAS, SSHFS, NFS), at the cost of atomicity and data race safety.

## Features

- Behaves just like a Python dict
- Contents always kept in sync with a backing JSON file
- All values must be JSON-serializable (numbers, strings, lists, objects, etc.)
  - If you try to set a value that cannot be serialized, the in-memory state will roll back and an exception will be thrown
- Uses only standard JSON and file IO, no dependencies outside the standard library
- [De]serializes through Python's `OrderedDict` - key order is preserved on disk

## When to Use

- When you need a persistent, human-readable, cross-platform key/value store, but **don't require full ACID transactional reliability, or multiprocess safety**
- When you must use filesystems with flaky support for "advanced" file locking/modes, such as SSHFS, NFS, Samba, or network-attached storage (NAS)
- When "good enough" durability, simplicity, and auditability are your main needs

## When **Not** to Use

- **Do not use for concurrent/multi-user/multiprocess writes:** This class is not race-safe—simultaneous modifications may corrupt or lose data
- Do not use for large data (entire dict is serialized/deserialized each time)
- Do not store non-JSON-serializable objects

## Installation

```bash
pip install simple-json-mapped-dict
```

## Usage

### Basic Example

```python
# coding=utf-8
from simple_json_mapped_dict import SimpleJSONMappedDict

d = SimpleJSONMappedDict('mydata.json')
d[u'foo'] = u'bar'
d.update({u'baz': 123})
print(d[u'foo'])  # 'bar'
del d[u'foo']
```

After running the above, `mydata.json` would look like:
```json
{"baz": 123}
```

## Alternatives

- For heavier-duty persistence with ACID guarantees, see [sqlite3](https://docs.python.org/3/library/sqlite3.html), [ZODB](https://zodb.org/), [shelve](https://docs.python.org/3/library/shelve.html), [TinyDB](https://tinydb.readthedocs.io/), etc.

## Contributing

Contributions are welcome! Please submit pull requests or open issues on the GitHub repository.

## License

This project is licensed under the [MIT License](LICENSE).
tree-sitter-sdml 0.4.14
SDML grammar for tree-sitter
Requires Python: >=3.9
Keywords: incremental, parsing, tree-sitter, sdml

# Tree-Sitter grammar for SDML

![SDML Logo Text](https://raw.githubusercontent.com/sdm-lang/.github/main/profile/horizontal-text.svg)

A [tree-sitter](https://tree-sitter.github.io/tree-sitter/) grammar for the Simple Domain Modeling Language (SDML). For more
information on the language, see the [documentation](https://sdml.io/).

## Example

```sdml
module campaign <https://advertising.amazon.com/api-model> is

  import [dc rdfs skos]

  @skos:prefLabel = "Campaign sub-domain"@en
  @skos:version = xsd:decimal(2)

  datatype Name <- string {
    minLength = 5
    maxLength = 25
  }

  datatype Identifier <- opaque string {
    length = 20
  } is
    @dc:description = "An opaque, general, entity identifier."@en
  end

  property CampaignId -> Identifier is
    @skos:prefLabel = [
      "Campaign Identifier"@en
      "Identified de campagne"@fr
    ]
    @dc:description = "The globally unique identifier for a Campaign entity"@en
  end

  structure Tag is
    key -> token
    value -> {0..} rdfs:langString
  end

  entity Campaign is
    identity ref CampaignId

    name -> Name is
      @skos:definition = "the name of the campaign"@en
    end

    tag -> {unordered unique 0..} Tag

    target -> {1..} Target
  end

  entity Target

end
```

## Bindings

The following bindings are built and released along with any version upgrade of
the source version. The tree-sitter tool also generates bindings for C, Go, and
Swift that are not built and released to any repository.

[Node](https://www.npmjs.com/package/tree-sitter-sdml) bindings are published to npmjs and can be installed using the
npm command directly, or by making it a project dependency.

```sh
〉npm install -g tree_sitter_sdml
```

[Python](https://pypi.org/project/tree-sitter-sdml/) bindings are published to PyPI and can be installed using any
standard tool, such as `pip`.

```sh
〉pip3 install tree_sitter_sdml
```

[Rust](https://crates.io/crates/tree-sitter-sdml) bindings are published to crates.io and can be installed via cargo in
the usual manner.

```sh
〉cargo install tree_sitter_sdml
```

## License

This package is released under the Apache License, Version 2.0. See LICENSE file
for details.

## Changes

See [CHANGES.md](CHANGES.md).

## Additional Links

* Node bindings -- [npm.js](https://www.npmjs.com/package/tree-sitter-sdml)
* Rust bindings -- [crates.io](https://crates.io/crates/tree-sitter-sdml)
* Python bindings -- [PyPi.org](https://pypi.org/project/tree-sitter-sdml/)
* Emacs -- [sdml-mode](https://github.com/johnstonskj/emacs-sdml-mode)
* Command-line tool -- [rust-sdml](https://github.com/johnstonskj/rust-sdml)
trident-api 0.1.0
A client library to connect with the Trident API for Pontus-X or EDC.
Requires Python: >=3.10
Keywords: edc, pontus-x, trident

# Trident Client

This is an example client library creating and keeping a session for the [trident webservice](https://iot.ift.tuwien.ac.at/trident/api).

To configure the secrets, you have to create a file called `.env` containing the relevant parameters:

```sh
TRIDENT_SERVICE='https://iot.ift.tuwien.ac.at/trident'
TRIDENT_USERNAME=''
TRIDENT_PASSWORD=''
```

## CLI

```sh
trident-cli publish \
  --bucket "ctd-data-storage" \
  --filename "algorithm.py" \
  --filepath "examples/algorithm.py" \
  --metafilepath "examples/algorithm_metadata.json" \
  --compute

trident-cli delete --did did:op:e1423...
```

## Devel

```sh
python -m src.trident_api.cli delete --did did:op:e1423...
```