Metadata-Version: 2.3
Name: codegreen_core
Version: 0.0.8
Summary: This package helps you become aware of the carbon footprint of your computation
Author: Anne Hartebrodt
Author-email: anne.hartebrodt@fau.de
Requires-Python: >=3.10,<3.12
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: entsoe-py (>=0.6.13,<0.7.0)
Requires-Dist: matplotlib (>=3.9.2,<4.0.0)
Requires-Dist: numpy (<2.0.0)
Requires-Dist: pandas (==2.2.3)
Requires-Dist: python-crontab (>=3.2.0,<4.0.0)
Requires-Dist: redis (>=5.1.1,<6.0.0)
Requires-Dist: requests (>=2.32.3,<3.0.0)
Requires-Dist: scikit-learn (>=1.5.2,<2.0.0)
Requires-Dist: tensorflow (>=2.18.0,<3.0.0)
Description-Content-Type: text/markdown

[![Run Tests](https://github.com/codegreen-framework/codegreen-core/actions/workflows/test.yml/badge.svg)](https://github.com/codegreen-framework/codegreen-core/actions/workflows/test.yml) [![Publish to PyPI](https://github.com/codegreen-framework/codegreen-core/actions/workflows/workflow.yml/badge.svg)](https://github.com/codegreen-framework/codegreen-core/actions/workflows/workflow.yml)

This repository contains the main functionality of the codegreen project. The complete documentation including installation and usage are available on the [documentation website](https://codegreen-framework.github.io/codegreen-core/). 

# Development 

## Installation
- `git clone`
- install poetry
- install in editable mode : `poetry install`

## Github workflows
Changes in the repo also triggers github actions 

## Development workflow 
- the `release` branch contains the latest stable version of the released python package 
- the `main` branch contains stable, tested code ready to be released. 
- the `dev` branch is the main working branch. All feature branches are merged to `dev` 

### Releasing  the package
- Ensure new changes are merged to `dev` and the version number is bumped according to [sematic versioning](https://semver.org/).
-  Merge `dev`to `main`. This should trigger tests.
-  Create a git tag for the new version :
```
git checkout main
git pull
git tag vX.Y.Z  # Replace X.Y.Z with the new version number
git push origin vX.Y.Z
```
- Create a PR from `main` to `release` and get one approval
- Once the PR is merged, it will trigger the release of the new package version and publish the documentation.
