semvec/pypi-packages huggingface dataset:
s3dict 0.1.0
S3Dict - Access S3 buckets as dictionaries
License: MIT
Requires Python: >=3.8

# S3Dict - Access S3 buckets as dictionaries

## Install

    pip install s3dict

## Usage

    import boto3
    import s3dict
    s3dict.enable()

    # create a boto3 bucket resource
    bucket = boto3.resource("s3").Bucket('s3dict-test')

    # S3 object with key 'hello' is created, with content 'world' (pickled)
    bucket['hello'] = 'world'
    bucket['hola'] = 'mundo'

    for k, v in bucket.items():
        print(f'{k} -> {v}')

    del bucket['hello']

## Why oh why?

Just for curiosity. `bucket[k] = v` is easier than `bucket.put_object(Key=k, Body=pickle.dumps(v))` right? :)

Please let us know if you found a real use case.

## Limitations

- Buckets are not ordered like Python dictionaries are ordered (by insertion order).
- `len(bucket)` runs O(N) - it lists bucket objects and counts.
- `popitem()` returns an arbitrary item (since unordered).
- `keys()` and `values()` are iterators, not [views](https://www.codeguage.com/courses/python/dictionaries-views).
- Dictionary keys must be `str`. They cannot be too long (underlying S3 key may not be >1024 chars).
- Dictionary values must be serializable (Pickle by default, you can bring your own serialization / "codec").

## Contributions

They are welcome. TODOs offers some ideas.
tree-sitter-objc 3.0.2
Objective-C grammar for tree-sitter
License: MIT
Requires Python: >=3.9
Keywords: incremental, parsing, tree-sitter, objc

# tree-sitter-objc


[![CI][ci]](https://github.com/tree-sitter-grammars/tree-sitter-objc/actions/workflows/ci.yml)
[![discord][discord]](https://discord.gg/w7nTvsVJhm)
[![matrix][matrix]](https://matrix.to/#/#tree-sitter-chat:matrix.org)
[![crates][crates]](https://crates.io/crates/tree-sitter-objc)
[![npm][npm]](https://www.npmjs.com/package/tree-sitter-objc)
[![pypi][pypi]](https://pypi.org/project/tree-sitter-objc)


[Objective C](https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html)
grammar for [tree-sitter](https://tree-sitter.github.io)

[ci]: https://img.shields.io/github/actions/workflow/status/tree-sitter-grammars/tree-sitter-objc/ci.yml?logo=github&label=CI
[discord]: https://img.shields.io/discord/1063097320771698699?logo=discord&label=discord
[matrix]: https://img.shields.io/matrix/tree-sitter-chat%3Amatrix.org?logo=matrix&label=matrix
[npm]: https://img.shields.io/npm/v/tree-sitter-objc?logo=npm
[crates]: https://img.shields.io/crates/v/tree-sitter-objc?logo=rust
[pypi]: https://img.shields.io/pypi/v/tree-sitter-objc?logo=pypi&logoColor=ffd242