Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

plexos2duckdb

Release PyPI License Platform Downloads

plexos2duckdb is a software tool to convert PLEXOS solution files to a DuckDB database.

image

Installation

On supported platforms, you can install the command-line tool directly from PyPI using uv:

uv add --prerelease=allow plexos2duckdb
# or
uv pip install --prerelease=allow plexos2duckdb

Then verify the install:

plexos2duckdb --version

Note that this requires a published wheel for your platform.

If you are interested just in the CLI, you can use uvx to install in an isolated environment:

$ uvx --prerelease=allow plexos2duckdb --help

A tool to convert PLEXOS Solution files to a DuckDB database.

Usage: plexos2duckdb <COMMAND>

Commands:
  convert                     Convert a PLEXOS solution file to DuckDB
  inspect                     Show operational metadata from a generated DuckDB database
  generate-shell-completions  Generate shell completion scripts
  help                        Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

Option 2: Download pre-built binary

Pre-built binaries for the CLI are available from the GitHub Releases page.

  1. Go to the latest release page on GitHub.

  2. Download the appropriate binary for your operating system.

  3. Extract the archive:

    tar -xzf plexos2duckdb-<platform>.tar.gz
    

    or on Windows:

    Expand-Archive plexos2duckdb-<platform>.zip -DestinationPath .
    
  4. Copy the binary to a directory in your PATH, e.g.:

    # MacOS/Linux
    cp plexos2duckdb ~/local/bin/
    # Windows
    copy plexos2duckdb.exe %USERPROFILE%\local\bin\
    

    You will have to make sure ~/local/bin/ is in your PATH.

Quickstart

CLI usage

Verify installation is successful by checking the version:

plexos2duckdb --version

Run the help command to see available options:

plexos2duckdb --help

Convert a solution zip file to a duckdb database:

plexos2duckdb convert --input "Model-DayAhead-Solution.zip" --output "Model-DayAhead-Solution.duckdb"

If the output database already exists, re-run with --force to overwrite it:

plexos2duckdb convert --input "Model-DayAhead-Solution.zip" --output "Model-DayAhead-Solution.duckdb" --force

Inspect an existing database to view metadata, source file info, model name, and table inventory with row counts:

plexos2duckdb inspect --input "Model-DayAhead-Solution.duckdb"

Generate shell completions to stdout with the generate-shell-completions subcommand:

plexos2duckdb generate-shell-completions bash > ~/.local/share/bash-completion/completions/plexos2duckdb
plexos2duckdb generate-shell-completions zsh > ~/.zfunc/_plexos2duckdb

You may use any duckdb compatible database viewer to interactively explore the data with SQL:

image

Python usage

Import the PLEXOS2DuckDB class from the plexos2duckdb package, create a client instance with the path to your solution zip file, and call the convert() method to generate the DuckDB database.

You can also use the same client as a context manager to interact with the database connection directly.

from plexos2duckdb import PLEXOS2DuckDB

client = PLEXOS2DuckDB("./Model DAY_AHEAD Solution.zip")
output_path = client.convert() # "./Model DAY_AHEAD Solution.duckdb"

with client as db:
    # assumes output_path exists at "./Model DAY_AHEAD Solution.duckdb"
    print(db.connection.query("SELECT * FROM information_schema.tables"))

Metadata

Release files for plexos2duckdb 0.1.0b13

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

Source distribution (sdist)

Source distribution for plexos2duckdb 0.1.0b13
File Size Uploaded
plexos2duckdb-0.1.0b13.tar.gz 91.0 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for plexos2duckdb 0.1.0b13
File
plexos2duckdb-0.1.0b13-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
plexos2duckdb-0.1.0b13-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
plexos2duckdb-0.1.0b13-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details
plexos2duckdb-0.1.0b13-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 62.0 MB

Release files / plexos2duckdb-0.1.0b13.tar.gz

Download URL plexos2duckdb-0.1.0b13.tar.gz
Size 91.0 kB
Tags Source
SHA-256 checksum
How to use checksums
e1d1776b111534702405e3b0aee03fc561cb5b43483c9bfc04a86d73c543e06f
BLAKE2b-256 checksum
How to use checksums
ac28e501b6b4571b4407de8d68cf8cd0af3cc6f42d637b39711a1750860e1380
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 23, 2026.

Transparency log

Release files / plexos2duckdb-0.1.0b13-py3-none-win_amd64.whl

Download URL plexos2duckdb-0.1.0b13-py3-none-win_amd64.whl
Size 13.5 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
c76f4ee046fcf1967c450f00f932c1e0d393409981227ba14c59afcf18760208
BLAKE2b-256 checksum
How to use checksums
df686ea7c3a23570818128f410831926b13e6489854f3de7ef4e7f527c882ce8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 23, 2026.

Transparency log

Release files / plexos2duckdb-0.1.0b13-py3-none-manylinux_2_28_x86_64.whl

Download URL plexos2duckdb-0.1.0b13-py3-none-manylinux_2_28_x86_64.whl
Size 18.1 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
e48fae3bbd6e0b6e8ab2d7910e6ece5de655201b0a2a09fc74ef540e0b99cf98
BLAKE2b-256 checksum
How to use checksums
1f9741b74e079a4510ab36c8e0a4c7a3267a8db926b68263cd920ffb8e09f9ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 23, 2026.

Transparency log

Release files / plexos2duckdb-0.1.0b13-py3-none-manylinux_2_28_aarch64.whl

Download URL plexos2duckdb-0.1.0b13-py3-none-manylinux_2_28_aarch64.whl
Size 16.1 MB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
35a7d8747751cf51efd8c63830e9c2b52898d8d1101ee6315fd2e5b9dd5c27f0
BLAKE2b-256 checksum
How to use checksums
df5b68981617f8762a546bda869df250df55aa8f07646cd7f5fbf0c84ed1be79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 23, 2026.

Transparency log

Release files / plexos2duckdb-0.1.0b13-py3-none-macosx_11_0_arm64.whl

Download URL plexos2duckdb-0.1.0b13-py3-none-macosx_11_0_arm64.whl
Size 14.3 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ccf1690bb1c2bef3f39b56d28832510563f4082c08193d31e86dd62a5f1df84d
BLAKE2b-256 checksum
How to use checksums
329c0362a16664321d95ca05087ddc42af9c8e4e13b08744ec12a6efc418174f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 23, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.0

2 release files

This release

0.1.0b13 This release

5 release files

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