Skip to content

Conversation

euronion
Copy link
Collaborator

@euronion euronion commented Sep 23, 2025

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 <[email protected]>

* Update .gitignore

remove pydeflate from .gitignore

Co-authored-by: Johannes HAMPP <[email protected]>

* Update .pre-commit-config.yaml

quarterly updates

Co-authored-by: Johannes HAMPP <[email protected]>

* Update REUSE.toml

remove pydeflate from REUSE.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* Update technologydata/technology.py

Co-authored-by: Johannes HAMPP <[email protected]>

* new changes

* Update technologydata/unit_value.py

Co-authored-by: Johannes HAMPP <[email protected]>

* code: update __init__.py description

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* Update REUSE.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* Update pyproject.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* code: remove params check in conftest.py

* Update pyproject.toml

Co-authored-by: Johannes HAMPP <[email protected]>

* add author

* Update technologydata/parameter.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update technologydata/datapackage.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update technologydata/source_collection.py

Co-authored-by: Johannes HAMPP <[email protected]>

* 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 <[email protected]>

* code: modify method name

* Update technologydata/source_collection.py

Co-authored-by: Johannes HAMPP <[email protected]>

* 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 <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Johannes HAMPP <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]>

* [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 <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* [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 <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/constants/energy_density.py

Co-authored-by: Johannes HAMPP <[email protected]>

* 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 <[email protected]>

* Update src/technologydata/utils/carriers.txt

Co-authored-by: Johannes HAMPP <[email protected]>

* Update src/technologydata/utils/carriers.txt

Co-authored-by: Johannes HAMPP <[email protected]>

---------

Co-authored-by: Johannes HAMPP <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: euronion <[email protected]>
* 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 <[email protected]>

* Update docs/home/license.md

Co-authored-by: Johannes HAMPP <[email protected]>

* Update docs/design.md

Co-authored-by: Johannes HAMPP <[email protected]>

* Update docs/faq.md

Co-authored-by: Johannes HAMPP <[email protected]>

* 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 <[email protected]>
… 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
Collaborator Author

@finozzifa FYI

finozzifa and others added 5 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 <[email protected]>

---------

Co-authored-by: Johannes HAMPP <[email protected]>
* 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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants