semvec/pypi-packages huggingface dataset:
als.bcs 0.5.0
Extract data and metadata from text data files that were generated by BCS at the ALS
Keywords: ALS BCS Data Metadata

# als.bcs

Extract data and metadata from text data files that were created by
the Beamline Controls System (BCS) at the Advanced Light Source (ALS)

Purpose
---
Facilitate the extraction of header information and scan input variables
from common BCS data file formats, such as:

* Time Scan
* Single Motor Scan
* Trajectory Scan

### bcs.find module

Find BCS data files that match provided criteria 
(date, scan type, scan nmuber, etc.) within their native directory structure.

### bcs.data module

Read scan output information and data from selected BCS data files.

### bcs.scan module

Find and read scan input information BCS Trajectory Scan data files.

### bcs.ingest module

Read header information from selected BCS data files.

Installation
---

### Using pip

```bash
# PyPI
python -m pip install als.bcs

# -- OR --

# Local copy of the project repository
python -m pip install -r requirements.txt -e .

# -- OR --

# Local tarball, uses static version file generated during build
python -m pip install als.bcs-0.2.0.tar.gz
```


Copyright Notice
---
als.bcs: Extract metadata from text data files that were created by
the Beamline Controls System (BCS) at the Advanced Light Source (ALS), 
Copyright (c) 2022, The Regents of the University of California, through 
Lawrence Berkeley National Laboratory (subject to receipt of any required 
approvals from the U.S. Dept. of Energy). All rights reserved.

If you have questions about your rights to use or distribute this software, 
please contact Berkeley Lab's Intellectual Property Office at IPO@lbl.gov.

NOTICE. This Software was developed under funding from the U.S. Department of 
Energy and the U.S. Government consequently retains certain rights. As such, 
the U.S. Government has been granted for itself and others acting on its 
behalf a paid-up, nonexclusive, irrevocable, worldwide license in the 
Software to reproduce, distribute copies to the public, prepare derivative 
works, and perform publicly and display publicly, and to permit other to do 
so.
lemonpy 0.0.3
A meta package for projects revolving around kinematics configuration solving and self-organization in machine learning
Requires Python: >=3.10,<4.0

# Welcome to Lemonpy

This is a meta packages for my research about geometric approaches to solving kinematics projects and machine learning related topics. Visit my blog at [lemonfold.io](https://lemonfold.io).

Install with 

```sh
poetry install -E "dbc mgng"
```

Where the extras install the following packages

* **dbc**: [design-by-contract]()–A design-by-contract Library
* **mgng**: [lemonpy-mgng](https://github.com/StefanUlbrich/MergeGNG)–An implementation of the merge growing neural gas algorithm
mexcpy 0.0.1
Python3 Mexc API wrapper
Requires Python: >=3.6

# mexcpy
Unofficial Mexc exchange API wrapper. Official [documentation](https://mxcdevelop.github.io/apidocs/spot_v3_en/#introduction).

Features
--------

- Market, Spot, Wallet endpoints implementation
- Easy authentication using only api & secret keys

Start
-----

[Account registration](https://www.mexc.com/register?inviteCode=1EWNj)

[Create new API key](https://www.mexc.com/user/openapi)

Installation:

    pip install mexcpy


Example
-------

    from mexcpy import MexcAPI
    
    # Public endpoints example
    # All methods return an instance of ResponseAPI class, to get clear data, the json() method must be called
    data = MexcAPI.get_server_time().json()
    print(data)
    
    # Instead of usind the json() method you can refer to attributes of ResponseAPI class instance
    # Attributes like symbol, priceChange, priceChangePercent are adding dynamically after method execution.
    # You can find all possible attributes in documentation
    data = MexcAPI.get_current_average_price()
    print(data.symbol, data.priceChange, data.priceChangePercent)
    
    
    # Private endpoints example
    # These methods require api and secret keys
    # You need to create instance of MexcAPI class
    mexc = MexcAPI(API_KEY, SECRET_KEY)
    result = mexc.get_account_information().json()
    print(result)


Public methods
--------------

    get_server_time()
    get_exchange_information()
    get_order_book()
    get_recent_trades()
    get_current_average_price()
    get_price_change_statistics()
    get_symbol_price_ticker()
    get_order_book_ticker()


Private methods
---------------

    get_account_information()
    create_new_order()
    cancel_order()
    cancel_orders_on_symbol()
    check_order_status()
    get_current_open_orders()
    get_all_orders()
    get_account_trade_list()

    get_currency_information()
    withdraw()
    get_deposit_history()
    get_withdraw_history()
    generate_deposit_address()
    get_deposit_address()
    universal_transfer()
neptune-apex-classic 0.1.0
Python tooling to control a classic Neptune Apex on your LAN
Requires Python: >=3.10

# neptune_apex_classic

Python module for getting the state of and controlling a classic Neptune Apex from your LAN

## Requirements

This module requires the "XML Access" to be set on the Apex in order for the status of probes and outlets to be retrieved. Outlets can be set between OFF, AUTO, and ON if the ApexConnection object is created with a username and password.

HTTP access is governed by an [`aiohttp.ClientSession`](https://docs.aiohttp.org/en/stable/client_reference.html) supplied by the caller.
## Example Usage

```python
async def do_apex_stuff(clientSession: aiohttp.ClientSession) -> None:
    # Create an ApexConnection - one connection per Apex is all that's required
    conn = ApexConnection("ip-address", clientSession, "admin", "1234")

    # The hardware serial number is an ID unique to each Apex and can be used
    # to differentiate between different units on the same network
    serial_number = await conn.get_serial_number()

    # Fetch probe and outlet data
    await conn.refresh()

    # Iterate through connected probes
    for probe in get_connected_probes(conn):
        print(probe.name)
        print(probe.value)

    # Iterate through connected outlets and print the state
    for outlet in get_connected_outlets(conn):
        print(outlet.name)
        print(outlet.value)

    # Probe values and outlet states are cached and are only updated when the ApexConnection is refreshed!
    conn.refresh()

    outlet = get_connected_outlets(conn)[0]
    await outlet.set_state(Outlet.ON)
```
bsky 0.0.0
Simple, idiomatic client library for atproto.com (Bluesky)
Requires Python: >=3.8


`bsky`: Simple, idiomatic client library for atproto.com ("Bluesky")
=====================================================================

**Status:** it doesn't really work yet and will eat your data

This is a project to implement components of the proposed Bluesky AT
Protocol ([atproto.com](https://atproto.com)) for federated social media.


## HOWTO: Release pypi.org Package

Go to `test.pypi.org` (and then later `pypi.org`) and generate an API token for
your account (assumign you already have an account).

Install deps (on Debian/Ubuntu):

    sudo apt install python3-build python3-twine

Build this package:

    python3 -m build

Run the upload. When propted, use `__token__` for username, and the API token
as password.

    # for test.pypi.org
    python3 -m twine upload --repository testpypi dist/*

    # for regular pypi.org
    python3 -m twine upload dist/*
adenosine 0.0.0
Basic, enthusiast-grade python client for atproto.com and bsky.app
Requires Python: >=3.8


`adenosine`: enthusiast-grade implementation of atproto.com in Python
=====================================================================

**Status:** it doesn't really work yet and will eat your data

This is a hobby project to implement components of the proposed Bluesky AT
Protocol ([atproto.com](https://atproto.com)) for federated social media, as
initially announced in Fall 2022. This might be interesting for other folks to
take a spin with, but isn't intended to host real content from real people. The
goal is to think through how the protocol might work by implementing it.

The intent is for this to roughly track the `adenosine` Rust implementation.
This will probably be just a Python library, not a CLI or PDS implementation.


## Disclaimer

In addition to the below standard Free Software disclaimer from the LICENSE
file, note that this project is likely to be out of sync with upstream protocol
specifications; is not intended for real-world use; is entirely naive about
abuse, security, and privacy; will not have an upgrade/migration path; etc.

> [CONTRIBUTORS] PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, >
> EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED >
> WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.


## HOWTO: Release pypi.org Package

Go to `test.pypi.org` (and then later `pypi.org`) and generate an API token for
your account (assumign you already have an account).

Install deps (on Debian/Ubuntu):

    sudo apt install python3-build python3-twine

Build this package:

    python3 -m build

Run the upload:

    # for test.pypi.org
    python3 -m twine upload --repository testpypi dist/*

    # for regular pypi.org
    python3 -m twine upload dist/*
guessfilename 2023.2.5.2
Derive a file name according to old file name cues and/or PDF file content
Keywords: file managing,file management,files,date,time,time-stamps

Usage:
    guessfilename.py [<options>] <list of files>

This little Python script tries to rename files according to pre-defined rules.

It does this with several methods: first, the current file name is analyzed and
any ISO date/timestamp and filetags are re-used. Secondly, if the parsing of the
file name did not lead to any new file name, the content of the file is analyzed.

You have to adapt the rules in the Python script to meet your requirements.
The default rule-set follows the filename convention described on
http://karl-voit.at/managing-digital-photographs/


:copyright: (c) by Karl Voit
:license: GPL v3 or any later version
:URL: https://github.com/novoid/guess-filename.py
:bugreports: via github or <tools@Karl-Voit.at>

Options:
  -h, --help     show this help message and exit
  -d, --dryrun   enable dryrun mode: just simulate what would happen, do not
                 modify files
  -v, --verbose  enable verbose mode
  -q, --quiet    enable quiet mode
  --version      display version and exit
dotenv-stripout 0.1.3
Strip secrets from .env files
Requires Python: >=3.6

# :see_no_evil: dotenv-stripout

An easily-installable git filter which hides your projects' sensitive data, while maximising collaboration and reproducibility.

It's like [nbstripout](https://github.com/kynan/nbstripout) for your `.env` files.

Eg. your local `.env` looks like this

```.env
MY_SECRET_USERNAME=something-very-secret
MY_SECRET_PASSWORD=IqLTLrFviwHTDKWGZoR7uB2JtM1wjwE34MBwoztE
```

but your `.env` on GitHub looks like this

```.env
MY_SECRET_USERNAME=
MY_SECRET_PASSWORD=
```

If you want to know more, I've written a [blog post](https://harrisonpim.com/blog/you-should-commit-your-env-files-to-version-control) about how and why I created this package.

## Installation & Use

First, install the python package which does the stripping and manages the git filter.

```shell
pip install dotenv-stripout
```

Then, to install the filter in the current repo, run

```shell
dotenv-stripout install
```

To remove the filter from the current repo, run

```shell
dotenv-stripout uninstall
```

You can check whether the filter is installed in a repo by running

```shell
dotenv-stripout status
```

Adding the `--global` flag to any command will point them to your _global_ git config instead, with the installed filter applying to commits in any repo.

You can also use the CLI to strip your actual working `.env` files in the current repo. Just run

```shell
dotenv-stripout
```
bib2yaml 1.0.0
Converts a BibTeX file to YAML format
Requires Python: >=3.7,<4.0

### Converts a BibTeX file to YAML format

BIB2YAML is a lightweight Python package that provides an easy and efficient way to convert BibTeX (.bib) files to YAML (.yaml) format.

### Usage

```python

    # interactive
    # path to the bib file
    bib = '/Users/aj/Downloads/ref.bib'
    # path to the output directory
    outputDir = '/Users/aj/Downloads/'
    
    # Run the function
    bib2yaml (bib, outputDir, fileName='ref')
    
    # commandline
    python bib2yaml.py --bib /Users/aj/Downloads/ref.bib --outputDir /Users/aj/Downloads/
    

```
craigslist-reposter 0.2.2
A package for renewing and reposting posts on craigslist.com.
Requires Python: >=3.10

# craigslist-reposter

## Simple automation of craigslist listing renewal and reposting:

- Selenium to access craigslist.com, IMAPClient package to authenticate login
- User information is imported from environment variables
- Pings an optional Discord webhook when reposts are completed

## Installation

```shell
git clone https://github.com/PorkyC/craigslist-reposter.git
cd craigslist-reposter
pip install -r requirements.txt
```

## Usage

1. Set environment variables (e.g. for Windows)

```shell
SETX CL_USER craigslist_login@gmail.com
SETX CL_PASS craigslistpassword123
SETX CL_EMAIL_PASS gmailpassword123

# Optional: if using a webhook:
SETX DISCORD_WEBHOOK discord.com/webhook-address
```

2. Change CLICK_TYPE in craigslist.py depending on whether script is running on Windows or Mac

```python
# CLICK_TYPE configures which key is used to open the post in a new tab
CLICK_TYPE = Keys.COMMAND # Use this if you are on a Mac
CLICK_TYPE = Keys.CONTROL # Use this if you are on a PC
```

3. Set maximum days a post can be active before reposting, and imap address in reposter.py

```python
# MAX_POST_DAYS configures the maximum number of days after posting before reposting
MAX_POST_DAYS = 11

# IMAP_SERVER for email provider, default for gmail
IMAP_SERVER = 'imap.gmail.com'
```

4. Run reposter.py (can also be scheduled, e.g. Launchd on MacOS) with arg[1]: max reposts allowed and arg[2]: max renewals allowed. 

```shell
python3 reposter.py 3 8

```

## TODO:

- Improve repost process so that no additional configuration needed between MacOS and Windows
- ~~Save and reload Selenium browser session to reduce new logins and verifications~~ Added 1/14/2023
- Filter verification emails by subject