Skip to content

Commit

Permalink
update pyproject and release_notes to prepare for release 0.4.0 (#401)
Browse files Browse the repository at this point in the history
Co-authored-by: Florian Maurer <[email protected]>
  • Loading branch information
nick-harder and maurerle authored Aug 8, 2024
1 parent efea877 commit 2399d9d
Show file tree
Hide file tree
Showing 5 changed files with 100 additions and 20 deletions.
67 changes: 67 additions & 0 deletions .github/workflows/publish.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# SPDX-FileCopyrightText: ASSUME Developers
#
# SPDX-License-Identifier: AGPL-3.0-or-later

name: Release to PyPI

on:
release:
types: [created]

jobs:
build-and-test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10", "3.11"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'pip'
cache-dependency-path: '**/pyproject.toml'
- name: Check reuse compliance
run: |
pip install reuse
reuse lint
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get install --no-install-recommends -y coinor-cbc gcc g++ libglpk-dev glpk-utils && sudo rm -rf /var/lib/apt/lists/*
python -m pip install --upgrade pip
python -m pip install .[test,learning,optimization,oeds]
- name: Lint with ruff
run: |
ruff check assume assume_cli tests
ruff format assume assume_cli tests
- name: Test with pytest
run: |
pytest --cov --cov-report=xml --junitxml="result.xml"
- name: Build package
run: |
python -m pip install build
python -m build
- name: Store the distribution packages
uses: actions/upload-artifact@v3
with:
name: python-package-distributions
path: dist/

pypi-publish:
name: Upload release to PyPI
needs: build-and-test
runs-on: ubuntu-latest
environment:
name: release
url: https://pypi.org/p/assume-framework
permissions:
id-token: write # IMPORTANT: mandatory for trusted publishing
steps:
- name: Download all the dists
uses: actions/download-artifact@v3
with:
name: python-package-distributions
path: dist/
- name: Publish package distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ SPDX-License-Identifier: AGPL-3.0-or-later
[![](https://img.shields.io/pypi/status/assume-framework.svg)](https://pypi.org/pypi/assume-framework/)
[![](https://img.shields.io/readthedocs/assume)](https://assume.readthedocs.io/)

[![Try examples in Collab](https://colab.research.google.com/assets/colab-badge.svg)](https://github.com/assume-framework/assume/tree/main/examples/notebooks)
[![Try examples in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://github.com/assume-framework/assume/tree/main/examples/notebooks)

**ASSUME** is an open-source toolbox for agent-based simulations of European electricity markets, with a primary focus on the German market setup. Developed as an open-source model, its primary objectives are to ensure usability and customizability for a wide range of users and use cases in the energy system modeling community.

Expand Down
3 changes: 2 additions & 1 deletion docs/source/example_simulations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,8 @@ The following table provides a more in-depth look at key examples, highlighting
- No
- Based on [1]_

Note: Conv. = Conventional, VRE = Variable Renewable Energy, EOM = Energy-Only Market, CRM = Control Reserve Market, DAM = Day-Ahead Market, RL = Reinforcement Learning, DSM = Demand Side Management
.. note::
Conv. = Conventional, VRE = Variable Renewable Energy, EOM = Energy-Only Market, CRM = Control Reserve Market, DAM = Day-Ahead Market, RL = Reinforcement Learning, DSM = Demand Side Management

Key Features of Example Simulations
-----------------------------------
Expand Down
46 changes: 29 additions & 17 deletions docs/source/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,15 @@
Release Notes
#######################

Upcoming Release 0.4.0
Upcoming Release
=======================
.. warning::
The features in this section are not released yet, but will be part of the next release! To use the features already you have to install the main branch,
e.g. pip install git+https://github.com/assume-framework/assume


v0.4.0 - latest release (8th August 2024)
=========================================

**New Features:**

Expand All @@ -23,6 +30,12 @@ Upcoming Release 0.4.0
- **Multiprocessing:** Using a command line option, it is now possible to use run each simulation agent in its own process to speed up larger simulations.
You can read more about it in :doc:`distributed_simulation`

- **Steel Plant Demand Side Management Unit**: A new unit type has been added to the framework, enabling users to model the demand side management
of a steel plant. This feature allows for more detailed and accurate simulations of industrial energy consumption patterns and market interactions.
This unit can be configured with different components, such as the electric arc furnace, electrolyzer, and hot storage, to reflect the specific
characteristics of steel production processes. The process can be optimized to minimize costs or to maximize the available flexibility, depending
on the user's requirements. A tutorial and detailed documentation on how to use this feature are coming soon.

**Improvements:**

- Significant speed up of the framework and especially of the learning process
Expand Down Expand Up @@ -60,9 +73,8 @@ Upcoming Release 0.4.0
- Added closing word and final dashboard link to interoperability tutorial



v0.3.7 (Latest)
===============
v0.3.7 (21st March 2024)
=========================

**New Features:**

Expand Down Expand Up @@ -91,8 +103,8 @@ v0.3.7 (Latest)
- Increased version to 0.3.7 for latest release (#327)


v0.3.6
======
v0.3.6 (22nd February 2024)
===========================

**Improvements:**

Expand All @@ -115,8 +127,8 @@ v0.3.6
- Moved DMAS bidding strategies into try-except block since Pyomo is not a required dependency (#308)


v0.3.5
======
v0.3.5 (14th February 2024)
===========================

**New Features:**

Expand All @@ -136,8 +148,8 @@ v0.3.5
- Cleaned up hard-coded EOM references (#294)


v0.3
====
v0.3 (6th February 2024)
=========================

**New Features:**

Expand All @@ -148,7 +160,7 @@ v0.3

**Improvements:**

- Added "Open in Collab" to notebooks (#258)
- Added "Open in Colab" to notebooks (#258)
- Improved data_dict usage (#274)

**Bug Fixes:**
Expand All @@ -173,8 +185,8 @@ v0.3
- Added automatic assignment of RL units to one RL unit operator (#276)


v0.2.1
======
v0.2.1 (3rd November 2023)
===========================

**Improvements:**

Expand All @@ -195,8 +207,8 @@ v0.2.1
- Fixed issues for running distributed scenario with MQTT (#222)


v0.2.0
======
v0.2.0 (30th September 2023)
=============================

**New Features:**

Expand All @@ -215,8 +227,8 @@ v0.2.0
- Updated Docker compose file to include Renderer for saving plots directly from Grafana dashboards


v0.1.0 - Initial Release
========================
v0.1.0 - Initial Release (12th September 2023)
==============================================

This is the initial release of the ASSUME Framework, published to PyPi.

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "assume-framework"
version = "0.3.7"
version = "0.4.0"
description = "ASSUME - Agent-Based Electricity Markets Simulation Toolbox"
authors = [{ name = "ASSUME Developers", email = "[email protected]"}]
license = {text = "AGPL-3.0-or-later"}
Expand Down

0 comments on commit 2399d9d

Please sign in to comment.