Skip to content

feat(eccdb): introduce EnTT database and public API - #190

Open
edgeuni wants to merge 7 commits into
openecos-projects:refactor_eccdb_v1from
edgeuni:eccdb-api-layer
Open

feat(eccdb): introduce EnTT database and public API#190
edgeuni wants to merge 7 commits into
openecos-projects:refactor_eccdb_v1from
edgeuni:eccdb-api-layer

Conversation

@edgeuni

@edgeuni edgeuni commented Aug 31, 2026

Copy link
Copy Markdown

Summary

This PR introduces the EccDB database implementation on top of the existing
ecc-tools database codebase.

The implementation provides an EnTT-based database core, a standalone public
API, LEF/DEF/iDB I/O adapters, and a clearer separation between public
interfaces and internal storage.

The PR targets:

openecos-projects:eccdb/refactor_eccdb_v1

Main Changes

  • Introduce the EccDB database module and a standalone eccdb namespace.

  • Add an EnTT-based storage implementation for:

    • technology data;
    • library data;
    • design data;
    • geometry and routing pools.
  • Add strongly typed database IDs and public value/data types.

  • Add the public EccDB API under src/database/eccdb/include/eccdb.

  • Add database configuration, CRUD, routing, design, and reference APIs.

  • Reorganize the implementation into:

    • api;
    • storage;
    • io;
    • adapters;
    • tests;
    • benchmarks.
  • Move LEF, DEF, iDB, and binary import/export code into the new I/O layout.

  • Add EccDB adapter integration for iRT and iDRC.

  • Extend legacy iDB LEF58 property parsing and materialization.

  • Add standalone EccDB CMake configuration and installation support.

  • Add bilingual documentation covering API usage, architecture, and differential testing.

  • Add and update unit, I/O, memory, and differential test targets.

@edgeuni
edgeuni marked this pull request as draft September 2, 2026 06:40
@Yell-walkalone
Yell-walkalone marked this pull request as ready for review September 5, 2026 02:44
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