Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
6b65c8f
Some initial pixi project setup.
zaneselvans Aug 30, 2025
c3ef71d
Update pixi lockfile.
zaneselvans Aug 30, 2025
81fc027
Add pixi update github workflow and update bot-auto-merge.
zaneselvans Aug 30, 2025
ab229ad
Update pixi environment with additional dependencies.
zaneselvans Aug 30, 2025
c498085
Add SEC 10-K Data Review Marimo Notebook.
zaneselvans Aug 30, 2025
464dd1d
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 31, 2025
66dc6e9
Add ruff linting and other configurations in pyproject.toml.
zaneselvans Aug 31, 2025
086f678
Set version bounds on marimo
zaneselvans Aug 31, 2025
4cac984
Merge branch 'pixi-setup' of github.com:catalyst-cooperative/pudl-exa…
zaneselvans Aug 31, 2025
067d34a
Revert "[pre-commit.ci] auto fixes from pre-commit.com hooks"
zaneselvans Aug 31, 2025
41e6900
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 31, 2025
d27d357
YAML formatting
zaneselvans Aug 31, 2025
87a6ba7
Simplify logic of figuring out where to get parquet files.
zaneselvans Aug 31, 2025
004b98d
Remove local marimo.toml from gitignore
zaneselvans Aug 31, 2025
b025d60
Add in Altair plotting to mess around with interactive plots.
zaneselvans Sep 1, 2025
85fa777
Try adding an HTML-WASM deployment for Marimo.
zaneselvans Sep 1, 2025
55fde3a
Add explicit pixi manifest path and disable cache temporarily.
zaneselvans Sep 1, 2025
c0fad5e
Add missing universal_pathlib library to script metadata.
zaneselvans Sep 1, 2025
c9f0965
Remove universal_pathlib dependency in notebook.
zaneselvans Sep 1, 2025
aa01c5f
trivial change to try running actions again
zaneselvans Sep 1, 2025
d9401ab
trivial change to try running actions again
zaneselvans Sep 1, 2025
7635053
Also redeploy on changes to environment specs.
zaneselvans Sep 1, 2025
be41063
Add subdirectory for the individual notebook.
zaneselvans Sep 1, 2025
62f8de1
Configure notebook display with a .marimo.toml
zaneselvans Sep 1, 2025
01f3415
Merge branch 'main' into pixi-setup
zaneselvans Sep 1, 2025
6d262ba
Remove universal_pathlib from inline script dependency metadata.
zaneselvans Sep 2, 2025
cc0981b
Simplify & update environment; Add industry name/id cleaning
zaneselvans Sep 4, 2025
cbb8c59
Relock pixi environment because GHA is complaining.
zaneselvans Sep 4, 2025
53e1ccf
Upgrade pixi deps
zaneselvans Sep 5, 2025
b805916
Update notebook and remove unused dependencies.
zaneselvans Sep 9, 2025
ac026cb
Relock pixi.lock? But I thought it was locked...
zaneselvans Sep 9, 2025
8533dcf
Add some marimo display config to pyproject.toml
zaneselvans Sep 10, 2025
5c8f899
Update ruff pre-commit hook.
zaneselvans Sep 10, 2025
45a7314
Update dependencies.
zaneselvans Sep 15, 2025
bfe7aa2
Bring in altered notebook from main
zaneselvans Sep 18, 2025
3306d07
Merge branch 'main' into pixi-setup
zaneselvans Sep 18, 2025
5d0b238
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# SCM syntax highlighting & preventing 3-way merges
pixi.lock merge=binary linguist-language=YAML linguist-generated=true
4 changes: 2 additions & 2 deletions .github/workflows/bot-auto-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ name: bot-auto-merge
on:
workflow_run:
types: [completed]
workflows: ["tox-pytest"]
workflows: ["run-pytest"]

jobs:
bot-auto-merge:
name: Auto-merge passing bot PRs
runs-on: ubuntu-latest
steps:
- name: Impersonate auto merge PR bot
uses: tibdex/github-app-token@v1
uses: tibdex/github-app-token@v2
id: generate-token
with:
app_id: ${{ secrets.BOT_AUTO_MERGE_PRS_APP_ID }}
Expand Down
9 changes: 6 additions & 3 deletions .github/workflows/deploy-marimo-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@ name: Deploy Marimo Pages
on:
push:
branches:
- main
- pixi-setup
paths:
- "marimo/**"
- ".github/workflows/deploy-marimo-pages.yml"
- "pixi.lock"
- "pyproject.toml"
workflow_dispatch:

jobs:
Expand All @@ -21,14 +23,15 @@ jobs:
- name: Set up pixi
uses: prefix-dev/setup-pixi@v0.9.0
with:
manifest-path: pyproject.toml
cache: true

- name: Ensure docs directory exists
run: mkdir -p docs/
run: mkdir -p docs/sec10k-data-review/

- name: Export Marimo notebooks
run: |
pixi run marimo export html-wasm marimo/sec10k-data-review.py -o docs/sec10k-data-review.html --mode edit
pixi run marimo export html-wasm marimo/sec10k-data-review.py -o docs/sec10k-data-review/ --mode edit

- name: Verify generated files
run: |
Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/update-lockfiles.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
name: Update pixi lockfiles

permissions:
contents: write
pull-requests: write
issues: write

on:
workflow_dispatch:
schedule:
- cron: 0 5 * * 1 # Run every Monday

jobs:
pixi-update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Set up pixi
uses: prefix-dev/setup-pixi@v0.9.0
with:
run-install: false
- name: Update lockfiles and install
run: |
set -o pipefail
pixi upgrade --json | pixi exec pixi-diff-to-markdown >> diff.md
pixi reinstall --all
- name: Generate GH token
uses: actions/create-github-app-token@v2
id: generate-token
with:
app-id: ${{ secrets.WORKFLOW_TRIGGERER_APP_ID }}
private-key: ${{ secrets.WORKFLOW_TRIGGERER_PRIVATE_KEY }}
- name: Create pull request
uses: peter-evans/create-pull-request@v7
with:
token: ${{ steps.generate-token.outputs.token }}
commit-message: Update pixi lockfile
title: Update pixi lockfile
body-path: diff.md
branch: update-pixi
base: main
labels: pixi
delete-branch: true
add-paths: |
pixi.lock
pyproject.toml
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
**/*ipynb_checkpoints
**/*.swp
dask-worker-space
# pixi environments
.pixi/*
!.pixi/config.toml
76 changes: 76 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---
exclude: (^.pixi/|.snap)
repos:
# Quick content checks based on grepping for python specific patterns:
- repo: https://github.com/pre-commit/pygrep-hooks
rev: v1.10.0
hooks:
- id: rst-backticks # Find single rather than double backticks
- id: rst-directive-colons # Missing double-colons after directives
- id: rst-inline-touching-normal # Inline code should never touch normal text
- id: python-use-type-annotations # Use annotations not old-style type comments

# Other file formatting, plus common Git mistakes & text file standardization:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v6.0.0
hooks:
- id: check-added-large-files # Don't accidentally commit giant files.
- id: check-merge-conflict # Watch for lingering merge markers.
- id: check-yaml # Validate all YAML files.
- id: check-toml
- id: check-case-conflict # Avoid case sensitivity in file names.
- id: debug-statements # Watch for lingering debugger calls.
- id: mixed-line-ending # Use Unix line-endings to avoid big no-op CSV diffs.
args: ["--fix=lf"]
- id: trailing-whitespace
- id: name-tests-test # Follow PyTest naming convention.
- id: end-of-file-fixer

####################################################################################
# Formatters: hooks that re-write code & documentation files
####################################################################################

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.12.12
hooks:
- id: ruff-check
args: [--fix]
- id: ruff-format

- repo: https://github.com/rbubley/mirrors-prettier
rev: v3.6.2
hooks:
- id: prettier
types_or: [yaml]

- repo: https://github.com/shellcheck-py/shellcheck-py
rev: v0.11.0.1
hooks:
- id: shellcheck

- repo: https://github.com/ComPWA/taplo-pre-commit
rev: v0.9.3
hooks:
- id: taplo-format

####################################################################################
# Linters: hooks that check but don't alter files
####################################################################################

# Check Github Actions
- repo: https://github.com/rhysd/actionlint
rev: v1.7.7
hooks:
- id: actionlint

# Configuration for pre-commit.ci
ci:
autofix_commit_msg: |
[pre-commit.ci] auto fixes from pre-commit.com hooks

For more information, see https://pre-commit.ci
autofix_prs: true
autoupdate_branch: main
autoupdate_commit_msg: "[pre-commit.ci] pre-commit autoupdate"
autoupdate_schedule: weekly
submodules: false
2 changes: 1 addition & 1 deletion 01-pudl-data-access.ipynb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion 02-state-hourly-electricity-demand.ipynb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion 03-eia930-sanity-checks.ipynb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion 04-renewable-generation-profiles.ipynb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion 05-ferc714-electricity-demand-forecast-biases.ipynb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion 06-pudl-imputed-demand.ipynb

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions marimo/.marimo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[display]
dataframes = "rich"
theme = "dark"
default_width = "full"
Loading
Loading