Skip to main content

Tests Code style: black

eflips-depot


Part of the eFLIPS/simBA list of projects.


eFLIPS has been developed within several research projects at the Department of Methods of Product Development and Mechatronics at the Technische Universität Berlin (see https://www.tu.berlin/mpm/forschung/projekte/eflips).

With eFLIPS, electric fleets and depots can be simulated, planned and designed. This repository contains only the planning and design tool for depots.

eflips_overview

The repository contains an example for the simulation and planning of an elecric bus depot, which is based on the dissertation by Dr.-Ing. Enrico Lauth (see https://depositonce.tu-berlin.de/items/f47662f7-c9ae-4fbf-9e9c-bcd307b73aa7).

Installation

  1. Clone this git repository (or download a specific release)

    git clone git@github.com:mpm-tu-berlin/eflips-depot.git
    
  2. Install the packages listed in poetry.lock and pyproject.toml into your Python environment. Notes:

    • The suggested Python version os 3.11.*, it may work with other versions, but this is not tested.
    • Using the poetry package manager is recommended. It can be installed accoring to the instructions listed here.

    macOS

    poetry env use 3.11
    poetry install
    

    Windows

    If you are using Windows, you have to provide the full path to the desired Python executable, e.g.:

    poetry env use C:\Users\user\AppData\Local\Programs\Python\Python311\python.exe
    poetry install
    
  3. To start a simulation, an existing eFLIPS-Model database is requires. Once you have that, you can run the script bin/example.py

Usage

Please refer to the Documentation section of this Readme for information on how to use eFLIPS-Depot.

The API of eFLIPS-Depot can be accessed via eFLIPS.depot.api. A usage example can be found in the script bus_depot/user_example.py.

Testing


NOTE: Be aware that the tests will clear the database specified in the DATABASE_URL environment variable. Make sure that you are not using a database that you want to keep.


Testing is done using the pytest framework with tests located in the testsdirectory. To run the tests, execute the following command in the root directory of the repository:

   export PYTHONPATH=tests:. # To make sure that the tests can find the eflips package
   export DATABASE_URL=postgis://postgres:postgres@localhost:5432/postgres # Or whatever your database URL is
   export DJANGO_SETTINGS_MODULE=tests.api.djangosettings # To make sure that the tests use the correct settings
   pytest

Documentation

Documentation is available on Read the Docs.

To locally create the documentaiton from the docstrings in the code using sphinx-autoapi, you can create the documentation execute the following command in the root directory of the repository:

   cd docs/
   sphinx-build -b html . _build

Development

We utilize the GitHub Flow branching structure. This means that the main branch is always deployable and that all development happens in feature branches. The feature branches are merged into main via pull requests.

We use black for code formatting. You can use pre-commit to ensure the code is formatted correctly before committing. You are also free to use other methods to format the code, but please ensure that the code is formatted correctly before committing.

Please make sure that your poetry.lock and pyproject.toml files are consistent before committing. You can use poetry check to check this. This is also checked by pre-commit.

License

This project is licensed under the AGPLv3 license - see the LICENSE file for details.

Funding Notice

This code was developed as part of the project eBus2030+ funded by the Federal German Ministry for Digital and Transport (BMDV) under grant number 03EMF0402.

Metadata

Release files for eflips-depot 4.20.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eflips-depot 4.20.0
File Size Uploaded Provenance Actions
eflips_depot-4.20.0.tar.gz 230.0 kB With provenance Details for eflips_depot-4.20.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for eflips-depot 4.20.0
File Interpreter ABI Platform Actions
eflips_depot-4.20.0-py3-none-any.whl Python 3 none any Details for eflips_depot-4.20.0-py3-none-any.whl

Total release size: 474.2 kB

Release files / eflips_depot-4.20.0.tar.gz

Download URL eflips_depot-4.20.0.tar.gz
Size 230.0 kB
Tags Source
SHA-256 checksum
How to use checksums
b861dd5fd1ad877bcdce611b756ae84d8579b89ea76ae92e184058a9fca10140
BLAKE2b-256 checksum
How to use checksums
33348b84d9e9608c2e4aeb1ec9ce650bd12de1d661628a29c3c7ecb7d560b217
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Release files / eflips_depot-4.20.0-py3-none-any.whl

Download URL eflips_depot-4.20.0-py3-none-any.whl
Size 244.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2649bd60cdda3c3bc7e98ac0573458d0a504af71c061c6655ca3cf698b871164
BLAKE2b-256 checksum
How to use checksums
78f885a19d4dd2c38b9da5286ef885c3ab584e3a07e406dddc6b5ab5f8e7a3ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

Security for eflips-depot 4.20.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for eflips_depot-4.20.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 26, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

4.20.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page