semvec/pypi-packages huggingface dataset:
xh-py-project-versioning 0.0.6
A library for increate version number and check version mismatch
Requires Python: >=3.6

A dictionary utility of self dev py library

## Build
```shell
rm -fr dist
python -m build
# automate by following `-u {user} -p {token / password}`
# api automate by following `-u __token__ -p {token / password}`
python -m twine upload dist/*
```


```shell
PYTHONPATH=src python src/xh_py_project_versioning/__main__.py --project-file pyproject.toml --major -d
```
nested-dict-extractor 0.1.1
Derive nested value from dict by providing sequence of keys
Requires Python: >=3.10

```python
>>> extract_nested_value({1: {2: {3: "value"}}}, [1, 2, 3])
"value
```

Derives a nested value from dict by specifying a sequence of keys.

May be useful to avoid a `KeyError` exception when parsing JSON with a dynamic nested structure,
when you know the JSON paths of elements, but are unsure whether elements exist.

Returns nested value or `None` if it wasn't found. If you want to force throwing exceptions, pass `strict=True`.



### Examples
```python
>>> extract_nested_value({1: 2}, [1])
2

>>> extract_nested_value({1: {2: {3: "value"}}}, [1, 2, 3])
"value"

>>> extract_nested_value({1: 2}, ["a"])
None

>>> extract_nested_value({1: 2}, [])
{1: 2}

>>> extract_nested_value({1: 2}, ["a"], strict=True)
raise KeyNestedError("Error traversing '{1: 2}' with keys '['a']'.
There are no key 'a' in nested '{1: 2}' element.
Turn off 'strict' mode if you want to silence the exception")
```

### Arguments
- `from_dict`: dict from which the nested value is extracted
- `keys`: ordered sequence of keys to derive the nested value
- `strict`: prevents throwing an exception when keys are not exist in nested dict if True

### Returns
Nested value, if the entire chain of keys is present, or `None`

### Development
Look at [Makefile](./Makefile)
bbtkv2 0.3
Code to control the BlackBox ToolKit v2 device for audio-visual timing checks
Requires Python: >=3.6

<p align="center">

![](docs/images/bbtkv2.png)

</p>

The [BlackBox ToolKit v2](https://www.blackboxtoolkit.com/bbtkv2.html) is a device that allows psychologists to accurately measure the timing of audio-visual stimuli.

The BBTKv2 communicates via a serial protocol over USB. The _bbtkv2_ python module provided here encapsualtes (some of) the commands described in the _API Guide_. 
In a nutshell:

    import bbtkv2 

    bb = bbtkv2.BlackBoxToolKit()
    bb.adjust_thresholds()  # adjust the thresholds manually
    bb.clear_timing_data()
    text = bb.capture(10)
    df1 = bbtkv2.capture_output_to_dataframe(text)
    processed_events = bbtkv2.capture_dataframe_to_events(df1)
    print(processed_events)


# Documentation

Check <https://bbtkv2.readthedocs.io/en/latest/intro.html>


# Installation

    pip install bbtkv2==0.1 

---

Christophe@Pallier.org