semvec/pypi-packages huggingface dataset:
schlibs 0.1.1
Shared libraries for JSON-Path/JSON-Pointer conversion and pointer caching
Requires Python: >=3.9
Keywords: json-path, json-pointer, jsonpath, conversion, cache

# schlibs - Shared Libraries

A BDD-driven library providing utilities for JSON-Path/JSON-Pointer conversion and pointer caching.

## Features

### json_pathlib

Bidirectional conversion between JSON-Path and JSON-Pointer formats:

- **JSON-Pointer → JSON-Path**: Straightforward conversion
- **JSON-Path → JSON-Pointer**: Resolves expressions against actual documents
- Supports wildcards and filter expressions that may produce multiple results

```python
from json_pathlib import pointer_to_path, path_to_pointer, path_to_pointers

# Simple conversion
path = pointer_to_path("/store/book/0/title")
# Result: "$.store.book[0].title"

# Resolve JSON-Path against a document
doc = {"store": {"book": [{"title": "Book 1"}, {"title": "Book 2"}]}}
pointer = path_to_pointer("$.store.book[0].title", doc)
# Result: "/store/book/0/title"

# Multiple results with wildcards
pointers = path_to_pointers("$.store.book[*].title", doc)
# Result: ["/store/book/0/title", "/store/book/1/title"]
```

### pointercache

Caching system with configurable eviction policies (coming soon).

## Installation

```bash
pip install schlibs
```

## Development

This is a dual-language library project (Python + TypeScript) using behavior-driven development:

```bash
cd python/

# Install dev dependencies
pip install -e ".[dev]"

# Run BDD tests
behave

# Run unit tests
pytest
```

## License

MIT License - see [LICENSE](../LICENSE)
hc-term-graph 1.0.0
A CLI tool for displaying simple bar graphs from an equation or a csv file
Requires Python: >=3.8

# GraphCalc

## About

I consider Desmos funni, so I decided to bring a similar graphing calculator to the terminal!
I originally didn't want to bother with pyinstaller, so I didn't even use regex and instead coded parsing logic myself.
The program takes in a math function (currently limited in operator support, i plan on adding more math functions later) and samples its value at multiple points.
The values are then saved as a .csv and the program renders them with a bar graph

## Options

- `--function` basic mathematic expression including x. the default (for quick testing) is `x*x/4`.
- `--x-offset` positive integer, moves the "frame of sampling"
- `--x-range` range over which the program should sample, default is 8
- `--sample` number of samples to use, default is 16
- `--file` file for csv output, default is `function.csv`
**Run options:**
- `--run`, invokes `termgraph(.py)` after outputting the csv values
- `--x-space` space available for x axis in terminal, default is 86 to support small terminals, 126 and 168 work well.
- `--label` provides `termgraph` with x axis labels for each sample

## Installation

**Pyinstaller**
Download both `termgraph` and `termgraph-calc` from the pybuilds folder and place them in the same folder.


**Windows**
Run `pip install argparse`
Download both `termgraph.py` and `termgraph-calc.py` from the root folder and place them in the same folder.


**Linux/macOS**
Download both `termgraph.py` and `termgraph-calc.py` from the root folder and place them into a folder of your choice.
In that folder, run
```
python3 -m venv .venv
source .venv/bin/activate
pip install argparse
```
To start the program in the venv, run 
```
source .venv/bin/activate
python3 termgraph-calc.py
```
baratron 0.4.0
Python driver for MKS eBaratron capacitance manometers.
Requires Python: >=3.8

baratron
========

Python driver and command line tool for ToolWeb-enabled [MKS eBaratron capacitance manometers](http://www.mksinst.com/product/category.aspx?CategoryID=72).

<p align="center">
  <img src="http://premier-sols.com/images/stories/Lesker/Pressure-Measurement/MKS%20628C%20e-Series%20Capacitance%20Manometers.jpg" height="300">
</p>

Installation
============

```
pip install baratron
```

If you want to use the older python2/tornado implementation, use `pip install baratron==0.1.2`.

Usage
=====

### Command Line

To test your connection and stream real-time data, use the command-line
interface. You can read the device with:

```
$ baratron 192.168.1.100
{
    "drift": 0.00164,
    "full-scale pressure": 1000.0,
    "led color": "green",
    "pressure": 3.78864,
    "pressure units": "torr",
    "run hours": 17517.763055555555,
    "system status": "e-Baratron Zeroing Recommended",
    "wait hours": 0.0
}
```

### Python

This uses Python async/await syntax to asynchronously communicate with
the device. For example:

```python
import asyncio
import baratron

async def get():
    async with baratron.CapacitanceManometer('the-baratron-ip-address') as sensor:
        print(await sensor.get())

asyncio.run(get())
```