semvec/pypi-packages huggingface dataset:
ampel-lsst 0.10.1a14
Legacy Survey of Space and Time support for the Ampel system
Requires Python: <4,>=3.11



<img align="left" src="https://desycloud.desy.de/index.php/s/25EwEzgpyFMd2bC/preview" width="150" height="150"/>  
<br>

# LSST plugin for AMPEL

<br><br>
LSST-specific implementations for Ampel such as:

- An _AlertSupplier_ compatible with plasticc generated alerts
- Shaper classes for ingestion
aoidc 0.0.1
Suckless implementation of OIDC with asyncs in mind
Requires Python: <4,>=3.12

# aOIDC

Suckless implementation of [OpenID Connect Core](https://openid.net/specs/openid-connect-core-1_0-final.html) for python with asyncio support in mind.

🚧 Currently under development 🚧

Also implemented:

- [ ] [RFC 6749](https://datatracker.ietf.org/doc/html/rfc6749): The OAuth 2.0 Authorization Framework
- [ ] [RFC 7033](https://datatracker.ietf.org/doc/html/rfc7033): WebFinger
- [ ] [RFC 7591](https://datatracker.ietf.org/doc/html/rfc7591): OAuth 2.0 Dynamic Client Registration Protocol - **partically**
- [ ] [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636): Proof Key for Code Exchange by OAuth Public Clients
- [ ] [RFC 7662](https://datatracker.ietf.org/doc/html/rfc7662): OAuth 2.0 Token Introspection
- [ ] [RFC 8414](https://datatracker.ietf.org/doc/html/rfc8414): OAuth 2.0 Authorization Server Metadata
  - [x] Metadata model
  - [ ] `/.well-known/oauth-authorization-server` request
- [ ] [OpenID Connect Core](https://openid.net/specs/openid-connect-core-1_0-final.html)
- [ ] [OpenID Connect Discovery 1.0](https://openid.net/specs/openid-connect-discovery-1_0-final.html)
  - [ ] WebFinger discovery
  - [x] Model
  - [x] `.well-known/openid-configuration` request

## Implementation status / Roadmap

Core functional that I need from such library is simple client authentication via authorization code flow, so this will be implemented first.

1. [ ] OIDC Client for `CODE` flow
2. [ ] OIDC Client for `PKCE` flow
3. [ ] OIDC Client for token verification
4. [ ] OIDC Client for `client_credentials` flow

## Motivation

All the existing python OIDC RP libs are the big balls of mud:

- [pyoidc](https://github.com/CZ-NIC/pyoidc) - synchronous, a little obscure, but the best of all existing.
- [idpy-oidc](https://github.com/IdentityPython/idpy-oidc) - older lib from the same dev as `pyoidc`.
- [authlib](https://github.com/lepture/authlib) - synchronous, no typing, giant pain to use, dual licensing, bad kwargs architecture, bad docs. Worst library.
- [oauthlib](https://github.com/oauthlib/oauthlib) - synchronous, no OIDC client, only provider.
- [oidc-client](https://gitlab.com/yzr-oss/oidc-client) - not really a library.

There are few libraries which supports OAuth 2.0 & OIDC as provider (server), but they are out-of-scope.
pycogat 0.1.3
Splits CogAT score report PDF export into single page PDFs and labels output by the ID extracted from the PDF.
Requires Python: >=3.10

![PyPI - Version](https://img.shields.io/pypi/v/pycogat) ![Static Badge](https://img.shields.io/badge/python-3.10-blue) [![Run tests](https://github.com/Scipio94/pycogat/actions/workflows/tests.yml/badge.svg)](https://github.com/Scipio94/pycogat/actions/workflows/tests.yml)


# pycogat
Python package that splits CogAT score report PDF export into single page PDFs and labels output by the ID extracted from the PDF. To report a bug,request a new feature, or for Q&A submit an [issue](https://github.com/Scipio94/pycogat/issues/new/choose).

## Installation
~~~ python
pip install pycogat
~~~

### Usage
~~~ python
import pycogat
from pycogat.cogat import cogat_split

cogat_split('C:\Documents\Reports\cogat_score_report.pdf',6)
~~~
The output will be *x* number of exported PDFs with the output label being the ID from the CogAT Score Report

### Documentation
|Input|Data Type|Documentation|
|---|---|---|
|pdf_object|string|The file path of the CogAT Score Report|
|id_char|int|The number of characters in the local id of the student|
pysimepar 0.4
A python package to retrieve forecast data from SIMEPAR
Requires Python: >=3.6

# pysimepar

This a is python package to retrieve forecast data from Simepar (www.simepar.br). Since this package
tries to webscrape information from simepar webpage, small changes to that webpage may
break the parsing.


## Install

You may install it using pip:

    pip install pysimepar

## Usage

Import the packge in your code and instantiate the PySimepar class with your city code:

    from pysimepar import PySimepar
    s = PySimepar(4106902)

To retrieve the forecast data, just call the update method. The current condition, hourly_forecast and daily 
forecast will be at the class data dictionary:

    s.update()
    print(s.data)