Skip to content

[WIP] Prototype for new technology data - #240

Draft
euronion wants to merge 52 commits into
PyPSA:masterfrom
open-energy-transition:prototype-2
Draft

[WIP] Prototype for new technology data#240
euronion wants to merge 52 commits into
PyPSA:masterfrom
open-energy-transition:prototype-2

Conversation

@euronion

@euronion euronion commented Sep 23, 2025

Copy link
Copy Markdown
Collaborator

Supersedes #223 .

We've pivot from the first prototype to a different underlying structure that we are more happy with.
This is the new/ongoing prototype development.

Documentation endpoint: https://technology-data--240.org.readthedocs.build/en/240/

euronion and others added 19 commits July 1, 2025 11:40
* code: initial new package structure

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: add licensing with reuse

* code: update .gitignore

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: changes to datapackage.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* update class diagram

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: implementation

* code: new additions

* code: modify puml file

* code: add test_commons.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: new changes

* new changes to source

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: add test_source.py

* code: implement SourceCollection

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: source_collection

* update puml

* code: doc changes

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* pre-commit

* doc: update design.md

* code: modify example in parameter.py

* doc: remove Collection class

* code: export json schema

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* doc: remove Collection

* pre-commit changes

* doc: Container -> Collection

* code: expand Source Collection

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update .github/workflows/ci.yaml

remove pydeflate from CI

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update .gitignore

remove pydeflate from .gitignore

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update .pre-commit-config.yaml

quarterly updates

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update REUSE.toml

remove pydeflate from REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update technologydata/technology.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* new changes

* Update technologydata/unit_value.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* code: update __init__.py description

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update pyproject.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* code: remove params check in conftest.py

* Update pyproject.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* add author

* Update technologydata/parameter.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update technologydata/datapackage.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update technologydata/source_collection.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* code: rework imports

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: fix imports

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update technologydata/source_collection.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* code: modify method name

* Update technologydata/source_collection.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* code: update source_collection

* code: kwargs source_collection

* code: update to_json

* code: modify from_json

* code: add get method for SourceCollection

* code: unit test get method for source_collection

* Update technologydata/source_collection.py

---------

Co-authored-by: Fabrizio Finozzi <fabriziofinozzi@Mac.homenet.telecomitalia.it>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
* doc: update class-diagram

* code: technology collection

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: update technologycollection and technology definition

* code: new changes to file

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: add override method for __str__ for Source and SourceCollection

* code: update __str__ for source.py

* code: finalize technology_collection unit tests

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* data: re-format solar_photovoltaics_example_04

* refactor

* code: push forward the development

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: add hash and eq methods for Source and finalize get_source_collection

* code: SourceCollection optional in Datapackage

* code: new datapackage methods

* code: docstring for to_datapackage

* code: modify unit tests

* code: new updates

* code: remove to_datapackage

* code: remove datapackage path

* code: including Annotated and removing Parameters section

* code: modify __eq__ method for Source

* code: re-write __hash__  method

* code: change SourceCollection.from_json

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* code: Flatten class structure by removing UnitValue

* code: add reuse dependency

* code: add tests for parameters.py

* code: Require carrier for heating_value attribute

* code: Add default values for optional attributes

* code: Make sources for Parameter optional

* code: Implement arithmetic operations on Parameters

* code: Add start of custom unit registry and helpers

* code: Move test into single file and linting

* code: Add tests for extraction from pint.Unit objects

* code: Add tests for currency conversion rates

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: Add tests for custom UnitRegistry

* code: Rename currency code cache file

* code: Dedicated registries for heating values and carriers

* code: Add instructions files for GH copilot

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: Fix test using wrong ureg

* code: use lru_cache

* code: Add function to map from currency code to ISO3

* code: New frozendict dependency

* code: remove unused import

* code: add debug msgs

* code: Fix usage of wrong registry for currency units

* code: Ensure canonical names are used for units, carriers, hvs

* code: Adjust test for canonical name usage

* code: docstrings

* doc: improve docstring

* code: Disallow currency conversion in unit conversion

* code: Name capture groups in regex

* code: formatting

* code: Fix test for disallowed currency conversion in .to

* code: Draft currency conversion method

* code: Rename arguments for consistency

* code: Fix failing test due to wrong UnitRegistry being used

* code: Add missing renames

* code: Wait... didn't I already commit this?

* code: Fix wrong dtype in function call

* code: Fix issue with conversion rates

* code: Fix alias for source arguments

* code: Raise errors on invalid currency conversion calls

* doc: Update docstream with more options

* code: Fix tests to comply with new syntax

* code: Bugfix wrong logic check in conversion rate function

* code: Add dependency for pytest-xdist

* code: Fix issue with cache when calling method repeadetly from different uregs

* code: Fix mypy errors

* code: Adjust ValueError msg for incompatible heating values

* code: Add tests for heating value operations

* code: Add test for carrier compatabilities

* doc: Add draft doc for parameters.py

* code: add stub for heating value conversion

* code: add equality and power operations on parameters

* code: remove decorator for updating pint attributes in favour of direct calls

* code: Implement conversion between LHV and HHV

* code: Bugfix incompatible carrier in dividing Parameter objects

* code: Outsource HHVs and LHVs for energy carriers

* doc: Update puml

* doc: Add details on change_heating_value(...) function

* code: fix wrong heating values in tests

* code: Add simple combination logic for provenance/note/sources

* code: start to solve mypy annotations

* code: new update

* code: in between commit

* data: update solar_photovoltaics_example_03/technologies.json

* data: update technologies.json

* data: update example_04 data

* code: update to parameter.py

* code: remove any reference to UnitValue

* code: switch off type checking for UnitRegistry

* code: solve mypy comment in units.py

* doc: update class-diagram

* ci: ai-prototype and unit test fix

* code: update parameter eq method

* code: docstrings for Parameter methods and example_parameter

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* data: add input parameters.csv for currency_conversion

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code/data: add tests for change_currency

* code: add extra check on magnitude

* code: update change_currency

* code: latest comments

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Fabrizio Finozzi <fabrizio.finozzi.business@gmail.com>
* code: Separate development dependencies from necessary dependencies

* doc: Add note on installing dev depenencies

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: Fix packaging and pytest issues

* doc: Update installation details

* doc: Add copyright statement

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* code: Allow parameter mul and div with scalars

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: Fix missing imports

* code: Fix int not allowed as scalar factor

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* code: solve test issue introducing Engineering Toolbox

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* modify energy_density.py to include SourceCollection for methane

* code: add natural_gas

* code: add ammonia

* code: add wood (dry)

* add HHV for carbon

* code: add HHV for lignite

* code: add coal

* code: add methanol

* add HHV for jet A

* code: add gasoline

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* updates to energy_density.py

* code: solve unit tests in test_parameter.py

* code: Fix unit test

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/utils/carriers.txt

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/utils/carriers.txt

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

---------

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: euronion <johannes.hampp@openenergytransition.org>
* skip tests that usually fail

* code: type ignore pytest.mark.skip_test

* code: change name of pytest marker

* code: add automatic skip for webarchive tests

* doc: modify the docstring in conftest
* doc: first draft of doc

* new updates to docs

* new update on docs

* docs: update the contributing.md

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* extend doc and rename files

* add linter for markdown

* managed to exclude docs from mypy

* Update docs/home/license.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update docs/home/license.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update docs/design.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update docs/faq.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* doc: delete overrides/main.html

* docs: remove api folder and its content

* doc: update to documentation

* re-work REUSE.toml

* update logo

* docs: update REUSE.toml, minor typos

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
… pre-prototype-2

This allows us to open a PR on GitHub; without a common history this is
not possble. History was added by pull/merge with

git pull origin master --allow-unrelated-histories --strategy=ours

to ensure only the current version of the TD prototype is kept and the
history is recorded, but has no effect on the repo.
@euronion

Copy link
Copy Markdown
Collaborator Author
finozzifa and others added 9 commits September 24, 2025 10:30
* code: ensure LHV and HHV have same units

* code: add pre-commit changes

* test: fix unit test

* test: update unit test

* test:ton to metric_ton

* update doc

* Update docs/user_guide/parameter.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

---------

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
* code: store_in_wayback private

* doc: update class-diagram.puml
…rceCollection (#62)

* code: update tech json file and from_json

* code: new version of from_json

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* update tests

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* code: Add to_currency for Technology and TechnologyCollection

* code: Rename adjust_currency to to_currency for Parameter

* doc: Update class diagramm

* doc: Add simple docs for to_currency methods

* code: fix mypy comments and minor static typing issue

---------

Co-authored-by: Fabrizio Finozzi <fabrizio.finozzi.business@gmail.com>
* code: modify units.py

* code: new attempt to modify registry function

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: add method to patch pint error handling register

* code: add validation

* code: update test

* code: refine message

* code: Fix and expand test

* code: fix issues in CustomUndefinedUnitError

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add pre-commit

* code: add some extra test

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: euronion <johannes.hampp@openenergytransition.org>
* doc: Add proposal for GrowthModels

* doc: Add proposal for LearningModels

* code: Add implementation for growth models and linear growth

* doc: Document growth models and linear growth

* code: Remove model default affected parameters

* code: Fix up docstrings

* code: Sort imports

* code: Fix type annotations

* spelling and doc-string fixes

* code: Implement exponential growth

* code: Cleanup

* code: Implement logistical growth

* code: Expand package structure

* code: Revise implementation for GrowthModel(s), start with LinearGrowth

* code: Expand the abstract GrowthModel class

* code: Allow starting values to be only a subset of all missing parameters

* code: Reimplement LogisticGrowth and ExponentialGrowth

* code Fix mypy issues

* code: Add missing scipy dependency

* Revert "code: Add missing scipy dependency"

This reverts commit c053bfc.

* code: Add missing scipy dependency

* code: Cleanup + add GompertzGrowth model

* doc: Update docs on GrowthModels

* code: Add simple tests for growth_model.py

* code: Add GeneralLogisticGrowth and harmonise parameter names

* code: Update tests

* doc: Update class diagramm

* doc: ValueError in docstring

* code: Implement fitting and projections on TCs

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: Simplify signature

* code: Address pydantic deprecations

* code: basic tests for fit and project on TechnologyCollection

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: add more tests

* code: Update uv.lock file

* code: Add x0 to all growth model functions

* doc: Update docs for GrowthModel and integration with TechnologyCollection

* code: TODO ideas for growth_models.py

* git: Ignore dev folder

* code: Fix tests

* code: Address mypy errors

* code: Add support for pydantic in mypy

* code: update mypy issues

* code: update growth models

* doc: change currency to_currency

* code: fix mypy issues

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Fabrizio Finozzi <fabrizio.finozzi.business@gmail.com>
* Add simple README

* Add LICENSE for GitHub

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* doc: changes to README.md

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Fabrizio Finozzi <fabrizio.finozzi.business@gmail.com>
finozzifa and others added 24 commits November 6, 2025 14:51
…ptional (#77)

* code: make output schema optional

* test new pydeflate version

* code: re-vert back to older version of pydeflate

* re-vert uvlock
* code: add dea energy storage parser

* code: add clean_parameter_string

* add pre-commit checks

* code: proceeding with the code

* code: new stage of parser

* add format_val_number

* pre-commit update

* code: update unit tests

* code: correct small typo

* code: update filtering

* code: remove unnecessary print statements

* code: add calamine

* code: remove inplace

* code: add explaination on column name - attributes

* code: update ws column

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: update unit-par

* code: update dea_energy_storage

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* pre-commit

* code: correct units

* code: re-order code

* code: update parser

* code: update the storage

* code: update notes and code

* code: express output_path

* code: add argparse to dea_energy_storage.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* pre-commit check

* code: added logger.info

* code: update pct unit

* code: add pydantic validator and filter on parameters

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: update code

* code: ruff changes

* code: update code with parameters re-set

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* json file: pre-commit

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/package_data/dea_energy_storage/sources.json

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/package_data/dea_energy_storage/sources.json

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/package_data/dea_energy_storage/dea_energy_storage.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: update tests

* code: update

* doc: modify license owner for raw data

* code: move method to commons

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: updates

* code: entered capacity parameter

* code: update unit test

* code: remove unit test

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: re-add unit test and re-flag it as webarchive

* remove unnecesary files

* code: update test_dea_energy_storage

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
* data: add manual_input_usa.csv

* code: create parser file

* code: improve manual_input_usa.py

* code: update manual_input_usa.py

* code: update manual_input_usa.py

* code: update carrier and unit

* code: pre-commit

* code: new update

* pre-commit

* code: modify manual_input_usa.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: include pre-commit hooks

* code: re-set parameter dictionary

* code: move parse_input_arguments to Commons

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: move parse_input_arguments to Commons

* code: add unit tests

* Update src/technologydata/utils/carriers.txt

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/package_data/manual_input_usa/manual_input_usa.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/package_data/manual_input_usa/manual_input_usa.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/package_data/manual_input_usa/manual_input_usa.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update src/technologydata/parsers/manual_input_usa/manual_input_usa.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update src/technologydata/parsers/manual_input_usa/manual_input_usa.py

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* further changes

* code: update manual_input_usa technologies.json

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: include changes to parser

* include pre-commit

* doc: update documentation'

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* include pre-commit

* modify MANIFEST.in

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
* add __init__.py in parsers directory

* code: create data_accessor class

* code: pre-commit check

* code: add datapackage load

* code: add data accessor class

* code: update test description

* code: modify logic for DataSourceName enum

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: fix failing unit test

* code: omit __init__.py from code coverage

* Update docs/user_guide/data_accessor.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* Update docs/user_guide/data_accessor.md

Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>

* code: add load

* code: new changes

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Johannes HAMPP <42553970+euronion@users.noreply.github.com>
* code: set default data path

* code: set default data path

* code: changes to data_accessor

* code: add unit test for ensure_path_exists

* code: update data_accessor.md

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: pre-commit

* code: add missing data_path docstring

* update pyupgrade

* update pyupgrade

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* code: set default data path

* code: set default data path

* code: changes to data_accessor

* code: add unit test for ensure_path_exists

* code: update data_accessor.md

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* code: pre-commit

* code: add missing data_path docstring

* update pyupgrade

* update pyupgrade

* code: update pre-commit and solve new issues

* update REUSE.toml

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
The docs showed two import styles for the same classes: some pages used
`from technologydata import Parameter`, most used the submodule form
`from technologydata.parameter import Parameter`, and datapackage.md
mixed both.

Use the short top-level form for every class re-exported in the
package's __init__.py (DataPackage, TechnologyCollection,
SourceCollection, Parameter, Source, Technology), and keep the submodule
form only for names that are not top-level exports: growth_models
(LinearGrowth, ExponentialGrowth), DataAccessor, and the parser classes
(DeaEnergyStorageParser, ManualInputUsaParser).

Consecutive submodule imports are collapsed onto a single line, and
where a block mixes both styles the top-level import now comes first.

Docs-only change; no source or behaviour changes.
…port_style

Issue 105: use one consistent import style in the docs
* code: update dependencies

* code: remove further unused dependencies
* docs: add instruction files for AI coding agents

Add AGENTS.md as the canonical agent instruction file, GitHub Copilot
instructions at the canonical .github/ path for Copilot surfaces that do
not yet read AGENTS.md, a pull request template, and shared Claude Code
project permissions.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Remove GH Copilot specific instructions

* Cleanup PR template

* Review and complement agent instructions

* Update AGENTS.md

* docs: Add DataAccessor class to agents file

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

3 participants