Metadata-Version: 2.3
Name: pythoncharmers-meta
Version: 0.2.2
Summary: Meta package with dependencies for Python Charmers training courses
License-File: LICENSE
Requires-Python: >=3.10
Requires-Dist: black>=24.8.0
Requires-Dist: h5py>=3.11.0
Requires-Dist: hvplot>=0.10.0
Requires-Dist: ipython>=8.12.3
Requires-Dist: isort>=5.13.2
Requires-Dist: line-profiler>=4.1.3
Requires-Dist: loguru>=0.7.2
Requires-Dist: logzero>=1.7.0
Requires-Dist: matplotlib>=3.7.5
Requires-Dist: memory-profiler>=0.61.0
Requires-Dist: mypy>=1.11.2
Requires-Dist: numba>=0.60.0
Requires-Dist: numexpr>=2.10.1
Requires-Dist: numpy>=2.0.2
Requires-Dist: openpyxl>=3.1.5
Requires-Dist: pandas[aws,compression,computation,consortium-standard,excel,feather,fss,hdf5,html,mysql,output-formatting,parquet,plot,spss,sql-other,xml]>=2.2.2
Requires-Dist: plotly>=5.23.0
Requires-Dist: polars>=1.5.0
Requires-Dist: psutil>=6.0.0
Requires-Dist: requests>=2.32.3
Requires-Dist: schedule>=1.2.2
Requires-Dist: scipy>=1.14.1
Requires-Dist: sqlalchemy>=2.0.32
Requires-Dist: statsmodels>=0.14.2
Requires-Dist: streamlit>=1.38.0
Requires-Dist: toolz>=0.12.1
Provides-Extra: gis
Requires-Dist: cartopy>=0.23.0; extra == 'gis'
Requires-Dist: dask-image>=2024.5.3; extra == 'gis'
Requires-Dist: datashader>=0.16.3; extra == 'gis'
Requires-Dist: fiona>=1.10.0; extra == 'gis'
Requires-Dist: folium>=0.17.0; extra == 'gis'
Requires-Dist: geopandas>=1.0.1; extra == 'gis'
Requires-Dist: graphviz>=0.20.3; extra == 'gis'
Requires-Dist: netcdf4>=1.7.1.post2; extra == 'gis'
Requires-Dist: networkx>=3.3; extra == 'gis'
Requires-Dist: pyproj>=3.6.1; extra == 'gis'
Requires-Dist: pysal>=24.7; extra == 'gis'
Requires-Dist: rasterio>=1.3.11; extra == 'gis'
Requires-Dist: rioxarray>=0.17.0; extra == 'gis'
Requires-Dist: scikit-image>=0.24.0; extra == 'gis'
Requires-Dist: seaborn>=0.13.2; extra == 'gis'
Requires-Dist: shapely>=2.0.6; extra == 'gis'
Requires-Dist: xarray>=2024.7.0; extra == 'gis'
Provides-Extra: ml
Requires-Dist: eli5>=0.13.0; extra == 'ml'
Requires-Dist: joblib>=1.4.2; extra == 'ml'
Requires-Dist: pyod>=2.0.1; extra == 'ml'
Requires-Dist: scikit-learn>=1.5.1; extra == 'ml'
Requires-Dist: skorch>=1.0.0; extra == 'ml'
Requires-Dist: textdistance>=4.6.3; extra == 'ml'
Requires-Dist: xgboost>=2.1.1; extra == 'ml'
Requires-Dist: yellowbrick>=1.5; extra == 'ml'
Provides-Extra: net
Requires-Dist: cryptography>=43.0.0; extra == 'net'
Requires-Dist: networkx>=3.3; extra == 'net'
Requires-Dist: pandas>=2.2.2; extra == 'net'
Requires-Dist: polars>=1.5.0; extra == 'net'
Requires-Dist: psutil>=6.0.0; extra == 'net'
Requires-Dist: pyshark>=0.6; extra == 'net'
Requires-Dist: pyzmq>=26.2.0; extra == 'net'
Requires-Dist: requests>=2.32.3; extra == 'net'
Requires-Dist: schedule>=1.2.2; extra == 'net'
Requires-Dist: textfsm>=1.1.3; extra == 'net'
Provides-Extra: scieng
Requires-Dist: altair>=5.4.1; extra == 'scieng'
Requires-Dist: bokeh>=3.4.3; extra == 'scieng'
Requires-Dist: dask-image>=2024.5.3; extra == 'scieng'
Requires-Dist: dask>=2024.8.2; extra == 'scieng'
Requires-Dist: graphviz>=0.20.3; extra == 'scieng'
Requires-Dist: holoviews>=1.19.1; extra == 'scieng'
Requires-Dist: hvplot>=0.10.0; extra == 'scieng'
Requires-Dist: matplotlib>=3.9.2; extra == 'scieng'
Requires-Dist: networkx>=3.3; extra == 'scieng'
Requires-Dist: numba>=0.60.0; extra == 'scieng'
Requires-Dist: numpy>=2.0.2; extra == 'scieng'
Requires-Dist: pandas>=2.2.2; extra == 'scieng'
Requires-Dist: pint>=0.24.3; extra == 'scieng'
Requires-Dist: plotly>=5.23.0; extra == 'scieng'
Requires-Dist: pyod>=2.0.1; extra == 'scieng'
Requires-Dist: scikit-image>=0.24.0; extra == 'scieng'
Requires-Dist: scipy>=1.14.1; extra == 'scieng'
Requires-Dist: seaborn>=0.13.2; extra == 'scieng'
Requires-Dist: statsmodels>=0.14.2; extra == 'scieng'
Requires-Dist: streamlit>=1.38.0; extra == 'scieng'
Requires-Dist: tables>=3.10.1; extra == 'scieng'
Provides-Extra: web
Requires-Dist: alembic>=1.13.2; extra == 'web'
Requires-Dist: cryptography>=43.0.0; extra == 'web'
Requires-Dist: django>=5.1.1; extra == 'web'
Requires-Dist: fastapi>=0.112.3; extra == 'web'
Requires-Dist: flask>=3.0.3; extra == 'web'
Requires-Dist: httpx>=0.27.2; extra == 'web'
Description-Content-Type: text/markdown

# Python Charmers meta-package

This is a meta-package for [Python Charmers](https://pythoncharmers.com)
training participants. This depends on many packages used in Python Charmers
training courses.

This package is intended to be used from a Python Charmers Hub in the cloud
like https://cpuhub.pythoncharmers.com.

## Installation

Install it like this:

```
pip install pythoncharmers-meta
```

or, if you have [uv](https://docs.astral.sh/uv/), this will be much faster:

```
uv pip install pythoncharmers-meta
```

## Optional packages (extras)

The following sets of optional packages ("extras") are available:

- `gis`
- `ml`
- `scieng`
- `net`
- `web`

You can add them like this:

```
uv pip install "pythoncharmers-meta[gis, ml]" --reinstall
```

## Cutting a new release

```
uv build
uvx twine upload dist/*
```
