semvec/pypi-packages huggingface dataset:
linc 3.0.6
A package to handle LICEL Binary format
License: MIT
Requires Python: >=3.10

# Linc

<p align="center">
    <a href="https://pypi.org/project/linc" target="_blank">
        <img src="https://img.shields.io/pypi/v/linc?color=%2334D058&label=pypi%20package" alt="Package version">
    </a>
    <a href="https://pypi.org/project/linc" target="_blank">
        <img src="https://img.shields.io/pypi/pyversions/linc.svg?color=%2334D058" alt="Supported Python versions">
    </a>
</p>

---

Linc is a fast way to convert [Licel Raw Format](https://licel.com/raw_data_format.html) into netCDF4. Made for GFAT internal use but writer is highly customizable.

## Examples

### GFAT legacy writer

By default, the standard way to write a netCDF file is using the GFAT legacy writer. Assuming a directory with several measurement files, the conversion would be as follows.

```shell
measurements/
├─ RM2332919.194794
├─ RM2332919.184654
├─ RM2332919.204924
├─ RM2332919.215054
├─ ...
```

```python
from linc import write_nc_legacy
from linc.config import get_config

meas_path = Path("measurements")
meas_files = list(meas_path.glob("RM*"))

config = get_config("config.toml")

write_nc_legacy(
    meas_files,
    output_file,
    config=config,
)
```

### Using a custom writer
Linc have utilities to read and convert raw files data into Python objects. The simplest way to start is the `linc.reader.read_file`.

```python
from linc import write_nc_legacy
from linc.config import get_config

meas_path = Path("measurements")
meas_file = list(meas_path.glob("RM*"))[0] # A single file

config = get_config("config.toml")

current_file = read_file(meas_file, config=config)

# Header information
# Such as filename, location
# Laser list, Channel list, etc
print(current_file.header)


# Returns a Pandas dataframe which columns are the channels of the measurement
# and rows are bins.
print(current_file.dataset)
```

Then, you can create an iterative writer with nectCDF4 utitilities.

## Config file

Linc works with a configuration file that expects the following format:

```toml
# Lidar-specific parameters. Mandatory
[lidar]
bin_count = 16380
bin_width = 3.75
bins_per_microsecond = 40

# This are custom attributes that will be present in the final neCDF file. Not mandatory
[lidar.attrs]
location = "Granada"
system = "ALHAMBRA"
manufacturers = "Raymetrics"
overlap_is_corrected = "false"
BCK_MIN_ALT = 50000
BCK_MAX_ALT = 60000
```

Each channel has to be declared an linked to its device identificator this way:

```toml
[[lidar.channels]]
name = "signal_532xpa"
link_to = "BT0"

[[lidar.channels]]
name = "signal_532xpp"
link_to = "BC0"
```
trongridlib 0.0.1
trongridlib library for Python
License: MIT

## How to use

```python
from tronpy import Tron
from tronpy.keys import PrivateKey

client = Tron(network='nile')
# Private key of TJzXt1sZautjqXnpjQT4xSCBHNSYgBkDr3
priv_key = PrivateKey(bytes.fromhex("8888888888888888888888888888888888888888888888888888888888888888"))

txn = (
    client.trx.transfer("TJzXt1sZautjqXnpjQT4xSCBHNSYgBkDr3", "TVjsyZ7fYF3qLF6BQgPmTEZy1xrNNyVAAA", 1_000)
    .memo("test memo")
    .build()
    .inspect()
    .sign(priv_key)
    .broadcast()
)

print(txn)
# > {'result': True, 'txid': '5182b96bc0d74f416d6ba8e22380e5920d8627f8fb5ef5a6a11d4df030459132'}
print(txn.wait())
# > {'id': '5182b96bc0d74f416d6ba8e22380e5920d8627f8fb5ef5a6a11d4df030459132', 'blockNumber': 6415370, 'blockTimeStamp': 1591951155000, 'contractResult': [''], 'receipt': {'net_usage': 283}}
```

### Async Client

```python
import asyncio

from tronpy import AsyncTron
from tronpy.keys import PrivateKey

# private key of TMisHYBVvFHwKXHPYTqo8DhrRPTbWeAM6z
priv_key = PrivateKey(bytes.fromhex("8888888888888888888888888888888888888888888888888888888888888888"))

async def transfer():
    async with AsyncTron(network='nile') as client:
        print(client)

        txb = (
            client.trx.transfer("TJzXt1sZautjqXnpjQT4xSCBHNSYgBkDr3", "TVjsyZ7fYF3qLF6BQgPmTEZy1xrNNyVAAA", 1_000)
            .memo("test memo")
            .fee_limit(100_000_000)
        )
        txn = await txb.build()
        print(txn)
        txn_ret = await txn.sign(priv_key).broadcast()
        print(txn_ret)
        # > {'result': True, 'txid': 'edc2a625752b9c71fdd0d68117802860c6adb1a45c19fd631a41757fa334d72b'}
        print(await txn_ret.wait())
        # > {'id': 'edc2a625752b9c71fdd0d68117802860c6adb1a45c19fd631a41757fa334d72b', 'blockNumber': 10163821, 'blockTimeStamp': 1603368072000, 'contractResult': [''], 'receipt': {'net_usage': 283}}

if __name__ == '__main__':
    asyncio.run(transfer())
```

Or close async client manually:

```python
from httpx import AsyncClient, Timeout
from tronpy.providers.async_http import AsyncHTTPProvider
from tronpy.defaults import CONF_NILE


async def transfer():
    _http_client = AsyncClient(limits=Limits(max_connections=100, max_keepalive_connections=20),
                               timeout=Timeout(timeout=10, connect=5, read=5))
    provider = AsyncHTTPProvider(CONF_NILE, client=_http_client)
    client = AsyncTron(provider=provider)
    print(client)

    priv_key = PrivateKey(bytes.fromhex("8888888888888888888888888888888888888888888888888888888888888888"))
    txb = (
        client.trx.transfer("TJzXt1sZautjqXnpjQT4xSCBHNSYgBkDr3", "TVjsyZ7fYF3qLF6BQgPmTEZy1xrNNyVAAA", 1_000)
        .memo("test memo")
        .fee_limit(100_000_000)
    )
    txn = await txb.build()
    print(txn)
    txn_ret = await txn.sign(priv_key).broadcast()

    print(txn_ret)
    print(await txn_ret.wait())
    await client.close()

if __name__ == '__main__':
    asyncio.run(transfer())
```
logflow-cli 0.1.7
Focused developer journaling and ideation loop
License: MIT
Requires Python: >=3.8
Keywords: cli, developer-tools, journaling, productivity

# Logflow

[![PyPI version](https://img.shields.io/pypi/v/logflow-cli.svg)](https://pypi.org/project/logflow-cli/)  
[![PyPI - Downloads](https://img.shields.io/pypi/dm/logflow-cli.svg)](https://pypi.org/project/logflow-cli/)  
[![CI](https://github.com/512jay/logflow/actions/workflows/release.yml/badge.svg)](https://github.com/512jay/logflow/actions/workflows/release.yml)  
[![License](https://img.shields.io/github/license/512jay/logflow.svg)](https://github.com/512jay/logflow/blob/main/LICENSE)

[📘 Quickstart Guide](https://github.com/512jay/logflow/blob/main/docs/quickstart.md) – Learn how to install and use Logflow in minutes.

💡 **Tip:** For the best experience, install with extras:

```bash
pipx install logflow-cli[rich,fancy_slugs]
```

This enables rich terminal output and emoji-safe filenames.

---

## 🧠 How Logflow Stores Data

By default, Logflow stores all your developer thoughts in:

```bash
./logflow/
```

This directory includes:

- `daily_logs/` – developer check-ins
- `ideas/` – structured Markdown idea files
- `idea_log.md` – append-only quick thought list
- `completed_log.md` – a snapshot of done ideas
- `next_id.txt` – internal idea counter
- `config.toml` – optional config file

### Example Config:

```toml
[paths]
log_dir = "logflow"
scan_root = "parent"
max_recent_ideas = 5
```

Run `logflow init` to generate this layout and config.

---

Or forcibly regenerate:

```bash
logflow init --force
```

---

## 💡 Use Cases

* Solo dev journaling
* Idea tracking across projects
* Developer time tracking & status reporting
* Task queue for future sprints

---

## 📘 Command Cheat Sheet

```bash
logflow add "Idea"               # Quick log
logflow add "X" --title T --body B --tag TAG

logflow recent                   # Show recent ideas
logflow index                    # Structured idea index

logflow focus                    # Start dev work
logflow status                   # What am I working on?
logflow pause                    # Mark break/end of session

logflow complete 007             # Mark done
logflow delete slug_or_id        # Soft delete
logflow purge                    # Trash cleanup

logflow history --summary        # View logs
logflow init --force             # Regenerate config & folders
logflow help                     # Command list
```

---

## 🎯 Philosophy

Logflow is designed to:

* Work with or without Git
* Require zero setup, but allow full config
* Help developers reflect, prioritize, and focus

It's built for long-term sustainability of developer thought.

---

## 🔓 License

MIT

---

### 📣 Maintained by [Oravox LLC](mailto:oravoxco@gmail.com) — freely available for solo devs, teams, and contributors.