Metadata-Version: 2.1
Name: songbirdcore
Version: 0.0.8
Summary: core low level api for songbird
Author: Christian Boin
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: annotated-types ==0.6.0
Requires-Dist: beautifulsoup4 ==4.12.3
Requires-Dist: Brotli ==1.1.0
Requires-Dist: cachetools ==5.3.3
Requires-Dist: certifi ==2024.2.2
Requires-Dist: charset-normalizer ==3.3.2
Requires-Dist: coverage ==5.5
Requires-Dist: cssselect ==1.2.0
Requires-Dist: deprecation ==2.1.0
Requires-Dist: eyed3 ==0.9.7
Requires-Dist: fake-useragent ==1.5.1
Requires-Dist: filetype ==1.2.0
Requires-Dist: google-api-core ==2.18.0
Requires-Dist: google-api-python-client ==2.126.0
Requires-Dist: google-auth ==2.29.0
Requires-Dist: google-auth-httplib2 ==0.2.0
Requires-Dist: google-auth-oauthlib ==1.2.0
Requires-Dist: googleapis-common-protos ==1.63.0
Requires-Dist: greenlet ==3.0.3
Requires-Dist: httplib2 ==0.22.0
Requires-Dist: idna ==3.7
Requires-Dist: lxml ==5.2.1
Requires-Dist: lxml-html-clean ==0.1.1
Requires-Dist: mutagen ==1.47.0
Requires-Dist: oauthlib ==3.2.2
Requires-Dist: packaging ==24.0
Requires-Dist: parse ==1.20.1
Requires-Dist: playwright ==1.43.0
Requires-Dist: proto-plus ==1.23.0
Requires-Dist: protobuf ==4.25.3
Requires-Dist: pyasn1 ==0.6.0
Requires-Dist: pyasn1-modules ==0.4.0
Requires-Dist: pycryptodomex ==3.20.0
Requires-Dist: pydantic ==2.7.0
Requires-Dist: pydantic-settings ==2.2.1
Requires-Dist: pydantic-core ==2.18.1
Requires-Dist: pyee ==11.1.0
Requires-Dist: pyparsing ==3.1.2
Requires-Dist: pyquery ==2.0.0
Requires-Dist: python-dotenv ==1.0.1
Requires-Dist: requests ==2.31.0
Requires-Dist: requests-htmlc ==0.0.6
Requires-Dist: requests-oauthlib ==2.0.0
Requires-Dist: rsa ==4.9
Requires-Dist: soupsieve ==2.5
Requires-Dist: toml ==0.10.2
Requires-Dist: typing-extensions ==4.11.0
Requires-Dist: uritemplate ==4.1.1
Requires-Dist: urllib3 ==2.2.1
Requires-Dist: w3lib ==2.1.2
Requires-Dist: websockets ==12.0
Requires-Dist: yt-dlp ==2024.4.9
Provides-Extra: dev
Requires-Dist: black ; extra == 'dev'
Requires-Dist: click ; extra == 'dev'
Requires-Dist: isort ; extra == 'dev'
Requires-Dist: pytest ; extra == 'dev'
Requires-Dist: pytest-cov ; extra == 'dev'
Requires-Dist: mkdocs ; extra == 'dev'
Requires-Dist: mkdocs-material ; extra == 'dev'
Requires-Dist: mike ; extra == 'dev'
Requires-Dist: mkdocstrings-python ; extra == 'dev'
Provides-Extra: package
Requires-Dist: build ; extra == 'package'
Requires-Dist: twine ; extra == 'package'

# songbirdcore 🐦

Low-level package with common code used across songbird's
cli and api.

See: 

- [songbirdcli](https://github.com/cboin1996/songbird.git)
- [songbirdapi](https://github.com/cboin1996/songbirdapi.git)

## Documentation

`songbirdcore`'s documentation may be found [here](https://cboin1996.github.io/songbirdcore)

## Requirements

- Python version >= 3.11

## Installation

To install, run

```bash
pip install songbirdcore
```

To install the latest development version from `test-pypi`
run

```bash
    python3 -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ songbirdcore
```

## Development

Once you have clone the repository, run

```bash
export ENV=dev
make setup
source venv/bin/activate
make requirements
```

This configures a virtual environment locally.
You can then run tests by performing the steps below.

### Updating Requirements

Updating the requirements for this package may be done
through

```bash
make update-requirements
make requirements
```

## Tests

Configure your vscode debugger by creating a `.vscode/settings.json`
file with the following contents:

```json
{
    "python.testing.pytestArgs": [
        "tests"
    ],
    "python.testing.unittestEnabled": false,
    "python.testing.pytestEnabled": true,
}
```
