semvec/pypi-packages huggingface dataset:
mega-pack-pbf-parser 0.1.8
Collects song information from BB Projects

# mega-pack-pbf-parser
Parse the content (songs and PBFs) of a BB project w/Mega Pack and add that data to the project database. 
- To write the required html file install this package: bb-pbf-html-writer
- pip install bb-pbf-html-writer

## Warnings
- Verify that the "packs_pbf_type" table is up-to-date. Be certain that ALL products are included in this table (i.e. check for new product releases)
- BEFORE ANYTHING ELSE the full path to the project db must be set the first time you try to run the code. This is handled by the ConfigManager class. 

## ConfigManager

An instance of ConfigManager runs automtically from the package __init__.py file. 
The instance is created before any imports are called:
```python
from .config_manager import ConfigManager
config = ConfigManager()

PROJECT_DB_PATH = config.get_variable("PROJECT_DB_PATH")
BONUS_PBF_FILES = config.get_variable("BONUS_PBF_FILES")
OPP_PBF_FILES = config.get_variable("OPP_PBF_FILES")
```
You'll be asked to provide the full path to the project database. Nothing will work without this.

Some project values ("BONUS_PBF_FILES" and "OPP_PBF_FILES") are stored inside the package (default_config.json) but everything will be writen to a LOCAL mega_pack_pbf_parser_config.json file in the USER's HOME directory. This happens the first time you run any of the code. See the package __init__.py file

## Database Tables
- packs_pbf_type: contains a listing of all PBF names, the associated productand the type (OPP, sections)
- songs: lists all songs, the associated PBF and product name and the type (OPP, sections)

## Usage (NEEDS UPDATING)

```python
from typing import List
from mega_pack_pbf_parser import Project_Parser
from mega_pack_pbf_parser import create_db, insert
from mega_pack_pbf_parser import insert_songs_query
from mega_pack_pbf_parser import initialize_database

from mega_pack_pbf_parser import config as config_manager

def insert_song_data(db_path: str, data: List):
    """
    Inserts song data into the project database. Prints the number of rows inserted.

    Parameters:
    data(List): a list of song info: PBF name, song name, product name, song type
    """
    query = insert_songs_query    
    row_count = insert(db_path=db_path, query=query, data=data)
    print(f"Inserted {row_count} rows into the database.")


def main():    
    bb_project_folder = r"C:\Users\RC\Documents\BBWorkspace\GM_Mega_Pack_Project"
    project_data = config_manager.config_data
    db_path = project_data.get('PROJECT_DB_PATH')
    initialize_database(db_path=db_path)
    parser = Project_Parser(project_folder=bb_project_folder) 
    song_list = parser.run()
    # example only. The database is initialized with data up to October 2024
    insert_song_data(db_path=db_path, data=song_list)
 

if __name__ == '__main__':
    main()
```
add-labels-to-fcs 0.4.0
Package for adding columns of data to FCS files as additional channels

# add-labels-to-fcs

This repository includes code for adding data labels to FCS files as additional data channels.  It also adds labels a grid that can be gated in standard flow cytometry software.  The package is in active development, and more features will be added here.

## Installation


pip install add-labels-to-fcs


## Basic Usage

To add data columns (unmodified) to an FCS file using command line interface: 

add-labels-to-fcs file.fcs labels.xlsx new_file.fcs


To add data columns in a grid to facilitate gating using command line interface: 

add-labels-as-grid-to-fcs file.fcs labels.xlsx new_file.fcs


To use library functions in your own python scripts, import the following:

from add-labels-to-fcs import add_labels
qsc 0.1.3
Quasisymmetric Stellarator Construction
Requires Python: >=3.6

# pyQSC
Python implementation of the Quasisymmetric Stellarator Construction method

This code implements the equations derived by Garren and Boozer (1991) for MHD equilibrium near the magnetic axis.

View the [main documentation here](https://landreman.github.io/pyQSC/)
metagadget 0.0.4
IoT Framework for Event-Triggered Integration of User-Developed Devices into Commercial Metaverse Platforms
Requires Python: >=3.8

# MetaGadget
## はじめに
- Raspberry Pi Zero 2 W, Zero Wでの動作を想定しています。
- OSはRaspbian OS Lite を使用してください。 
## 環境構築
gitとエディタのインストール
```bash
sudo apt-get install git gitk vim
```
RPi.GPIO のインストールにpython3-devが必要
```bash
sudo apt-get install python3-dev
```
最近の Raspbian OS は仮想環境じゃないと pip が動かないので venv をインストール
```bash
python -m venv venv
```
仮想環境構築
```bash
. venv/bin/activate
```
pipで必要パッケージのインストール
```bash
pip install -U Flask ngrok RPi.GPIO
```
## 使い方
起動時に ngrok の TOKEN と DOMAIN 名を渡す
```bash
NGROK_DOMAIN="YOUR.ngrok-free.app" NGROK_AUTHTOKEN="YOUR TOKEN" python your_app.py
```
no-exceptions 0.1.0.dev2
Errors as values for Python.
Requires Python: <4.0,>=3.8

# No exceptions

Errors as values for Python. A more functional alternative to `try-except` blocks, offering less indented code and a
chainable API.

- Do you hate exceptions?
- Do you hate the extra indentation they bring?
- Do you hate the convoluted flow of control they seed?
- Do you hate APIs that throw exceptions in not-really-erroneous cases (like `ZeroDivisionError`, `KeyError`,
`IndexError`, `StopIteration`)?

Use this package to switch from this:

```python
def some_func() -> float:
    ...
    try:
        return numerator / denominator
    except ZeroDivisionError:
        return 0.0
```

to this:

```python
from no_exceptions import try_expecting

def some_func() -> float:
    ...
    return try_expecting(lambda: numerator / denominator, ZeroDivisionError).unwrap_or(0.0)
```