Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge dev into main for 2023-09-08 #2840

Merged
merged 140 commits into from
Sep 8, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
140 commits
Select commit Hold shift + click to select a range
290074f
Replace no longer available SQLAlchemy VisitableType with plain type
zaneselvans Feb 3, 2023
9842f65
Merge branch 'dev' into sqlalchemy-2.0
zaneselvans Feb 12, 2023
9e33529
Require SQLAlchemy>2 to force compatibility testing.
zaneselvans Feb 13, 2023
d184201
Update for compatibility with pandas 2.0
zaneselvans Feb 21, 2023
ad2c3f4
Temporarily depend on ferc_xbrl_extractor pandas-2.0 branch
zaneselvans Feb 21, 2023
5658b66
Merge branch 'dev' into sqlalchemy-2.0
zaneselvans Feb 21, 2023
89b35c5
Merge branch 'sqlalchemy-2.0' into pandas-2.0
zaneselvans Feb 21, 2023
3e4323c
Merge non-dependency changes from sqlalchemy-2.0 branch
zaneselvans Feb 21, 2023
c4bf0d6
Merge branch 'dev' into pandas-2.0
zaneselvans Feb 25, 2023
2115739
Merge branch 'dev' into pandas-2.0
zaneselvans Mar 3, 2023
bc1ce1c
Merge branch 'dev' into pandas-2.0
zaneselvans Mar 11, 2023
193c89e
Merge branch 'dev' into pandas-2.0
zaneselvans Mar 19, 2023
bc77904
Require pandas 2.0 RC for testing.
zaneselvans Mar 21, 2023
e6cb446
Merge branch 'dev' into pandas-2.0
zaneselvans Mar 21, 2023
eb2c47a
Merge branch 'python-3.11' into pandas-2.0
zaneselvans Mar 23, 2023
ab5fde8
Specify resolution of datetime64 types.
zaneselvans Mar 23, 2023
15424f1
Merge branch 'dev' into pandas-2.0
zaneselvans Mar 31, 2023
9f624c2
Add missed changes from merge to setup.py
zaneselvans Mar 31, 2023
9635ff5
Use actual pandas 2.0.0 now that it's out.
zaneselvans Apr 3, 2023
fcb3fa2
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 3, 2023
17ea796
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 4, 2023
1214290
Merge branch 'pyproject-toml' into pandas-2.0
zaneselvans Apr 4, 2023
a15a244
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 4, 2023
f1164d7
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 4, 2023
97fae98
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 4, 2023
6c8fe03
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 4, 2023
4cc7e4d
Update to ferc-xbrl-extractor 0.8.2
zaneselvans Apr 4, 2023
6e795ec
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 5, 2023
4af9d7e
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 5, 2023
a67248e
Use pandas extras to declare some dependencies
zaneselvans Apr 7, 2023
1f04e24
Merge branch 'dev' into pandas-2.0
zaneselvans Apr 24, 2023
dbb58f0
Merge branch 'dev' into pandas-2.0
zaneselvans Jul 26, 2023
09fb939
Update recordlinkage to version compatible with pandas 2.0
zaneselvans Jul 26, 2023
3347efb
the road to hell is paved with dtypes
nelsonauner Aug 3, 2023
c358d7f
Merge branch 'dev' into pandas-2.0
zaneselvans Aug 4, 2023
f3d9763
Merge remote-tracking branch 'nelsonauner/pandas-2.0' into pandas-2.0
zaneselvans Aug 4, 2023
6b19483
Use tuple instead of list of SQL params.
zaneselvans Aug 4, 2023
c2c776b
Set SQLAlchemy view w/ metadata error to XFAIL.
zaneselvans Aug 4, 2023
9c0883e
Ignore DeprecationWarning coming up from imported packages.
zaneselvans Aug 4, 2023
91d9595
Update fix_eia_na() regex to avoid pandas df.replace() vectorization …
zaneselvans Aug 4, 2023
e1b437b
Remove deprecated infer_date_format flag.
zaneselvans Aug 4, 2023
ca602b0
Merge branch 'dev' into pandas-2.0
zaneselvans Aug 9, 2023
5de498e
Allow a mix of Zenodo sandbox & production DOIs
zaneselvans Aug 19, 2023
0c3c050
Integrate some Pydantic validation into ZenodoFetcher
zaneselvans Aug 21, 2023
1e725e6
Merge branch 'dev' into goodbye-sandbox
zaneselvans Aug 21, 2023
254ce9b
Merge branch 'dev' into goodbye-sandbox
zaneselvans Aug 21, 2023
c4b13fc
Update allowed tox versions.
zaneselvans Aug 21, 2023
89cea8c
Merge branch 'dev' into goodbye-sandbox
zaneselvans Aug 22, 2023
77aa2f4
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Aug 22, 2023
0613973
Merge pull request #2803 from catalyst-cooperative/pre-commit-ci-upda…
zaneselvans Aug 22, 2023
4674bf3
Update docs to reflect availability of 2022 EPA CEMS data.
zaneselvans Aug 22, 2023
1971226
Merge branch 'dev' into goodbye-sandbox
zaneselvans Aug 22, 2023
a8675fb
Bump max allowed Tox version.
zaneselvans Aug 23, 2023
c62fc1c
Stop importing urllib3 Retry from deprecated location
zaneselvans Aug 25, 2023
acf4c5f
Merge pull request #2806 from catalyst-cooperative/fix-urllib3-retry-…
zaneselvans Aug 26, 2023
2c27a7c
Merge branch 'dev' into goodbye-sandbox
zaneselvans Aug 26, 2023
d840c1d
Create a ZenodoDoiSettings Pydantic BaseSettings class.
zaneselvans Aug 26, 2023
2d081f0
Update Zenodo DOI test to work better with new ZenodoDoiSettings
zaneselvans Aug 26, 2023
0aab435
Merge branch 'dev' into pandas-2.0
zaneselvans Aug 27, 2023
f5324f9
Fix some pandas 2 incompatibilities and highlight others.
zaneselvans Aug 27, 2023
2e3d228
Fix more minor pandas 2 compatibility issues.
zaneselvans Aug 27, 2023
2aa2556
Fix another datetime dtype merge mismatch.
zaneselvans Aug 27, 2023
b9c00fb
More permissive type check in convert_col_to_datetime
zaneselvans Aug 28, 2023
4f455fc
Apply types before setting non-unique index.
zaneselvans Aug 28, 2023
a09368a
Update pyarrow requirement from <12.1,>=5 to >=5,<13.1
dependabot[bot] Aug 28, 2023
d42493f
Update sphinxcontrib-bibtex requirement from <2.6,>=2.4 to >=2.4,<2.7
dependabot[bot] Aug 28, 2023
2b2ad81
Use numeric_only=True in rolling average mean()
zaneselvans Aug 28, 2023
7bc0fb1
Merge pull request #2807 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Aug 28, 2023
a60c85c
Merge pull request #2808 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Aug 28, 2023
378d6b0
Replace complex convert_cols_dtypes with simple apply_pudl_dtypes
zaneselvans Aug 28, 2023
09fc965
Fix ambiguous index/column name overlap in plants_small_ferc1.
zaneselvans Aug 29, 2023
f5a56f2
Fix small pandas-2.0 incompatibilities in glue tests.
zaneselvans Aug 29, 2023
10155d5
Merge branch 'dev' into pandas-2.0
zaneselvans Aug 29, 2023
b5889ce
Update docs/dev/datastore.rst
zaneselvans Aug 29, 2023
6ac9d9f
Remove deprecated pudl_datastore --pudl_in option and unused get_reso…
zaneselvans Aug 29, 2023
bb9f8fc
Merge branch 'dev' into goodbye-sandbox
zaneselvans Aug 29, 2023
4a3c4ad
Merge pull request #2798 from catalyst-cooperative/goodbye-sandbox
zaneselvans Aug 29, 2023
cb5a56e
Merge branch 'dev' into pandas-2.0
zaneselvans Aug 29, 2023
4142529
Add references to CEMS and Dagster in the annual updates docs
aesharpe Aug 30, 2023
cd959e0
Update description for small plants table
aesharpe Aug 30, 2023
5f3ec87
Add HI to CEMS processing
e-belfer Aug 30, 2023
8f33cb3
Merge pull request #2320 from catalyst-cooperative/pandas-2.0
zaneselvans Aug 30, 2023
6529fed
Merge branch 'dev' into add-hi-to-cems
e-belfer Sep 1, 2023
c9c0de6
Merge branch 'dev' into update-small-plants-table-description
zaneselvans Sep 1, 2023
5bc66d5
Update release notes
e-belfer Sep 1, 2023
590c5f4
Merge branch 'dev' into annual-updates-docs
aesharpe Sep 1, 2023
4262223
Update annual updates doc based on Ella's feedback in the PR
aesharpe Sep 1, 2023
dd12638
Add more tweaks to annual updates table
aesharpe Sep 1, 2023
63acda1
Add github action usage notebook and use large runner for tox-pytest …
bendnorman Sep 2, 2023
e1c34d2
Remove github token from notebook
bendnorman Sep 2, 2023
c8d3130
Run ci-integration on large runner
bendnorman Sep 2, 2023
7cc1d2f
Merge branch 'dev' into ci-pricing-exploration
bendnorman Sep 2, 2023
3fe5c97
Simplify code linting & formating; use ruff
zaneselvans Sep 2, 2023
4f810d9
Use ruff to ensure use of pathlib
zaneselvans Sep 2, 2023
28acf60
Apply python syntax simplification autofixes.
zaneselvans Sep 2, 2023
8e48876
Add NumPy specific static analysis checks from ruff.
zaneselvans Sep 2, 2023
6e2dd42
Use ruff to simplify & check for bad return values
zaneselvans Sep 2, 2023
8709250
Add several additional ruff linter checks.
zaneselvans Sep 2, 2023
e6faefc
Add pandas-specific ruff checks.
zaneselvans Sep 3, 2023
ab733a1
Merge pull request #2823 from catalyst-cooperative/ci-pricing-explora…
zaneselvans Sep 3, 2023
c3b38fc
Merge branch 'dev' into ruffing-it
zaneselvans Sep 3, 2023
80a3b3a
Update pre-commit requirement from <3.4,>=2.9 to >=2.9,<3.5
dependabot[bot] Sep 4, 2023
44773a7
Update gcsfs requirement from <2023.6.1,>=2021.7 to >=2021.7,<2023.9.1
dependabot[bot] Sep 4, 2023
f8ecc0a
Update dask requirement from <2023.8.2,>=2021.8 to >=2021.8,<2023.9.1
dependabot[bot] Sep 4, 2023
8f66885
Update build requirement from <0.11,>=0.10 to >=0.10,<1.1
dependabot[bot] Sep 4, 2023
9a13fc1
Update tox requirement from <4.11,>=4 to >=4,<4.12
dependabot[bot] Sep 4, 2023
19d19d9
Merge pull request #2826 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Sep 4, 2023
d5b7837
Merge pull request #2827 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Sep 4, 2023
eac176a
Merge pull request #2828 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Sep 4, 2023
372b391
Merge pull request #2829 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Sep 4, 2023
4c6f8e3
Merge pull request #2830 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Sep 4, 2023
53d904a
Update tox requirement from <4.11,>=4 to >=4,<4.12
dependabot[bot] Sep 4, 2023
6f74e35
Merge branch 'dev' into ruffing-it
zaneselvans Sep 4, 2023
1b61964
Bump tox version
zaneselvans Sep 4, 2023
c542540
Merge pull request #2831 from catalyst-cooperative/dependabot/pip/dev…
zaneselvans Sep 4, 2023
9bd856e
Merge branch 'dev' into ruffing-it
zaneselvans Sep 4, 2023
2c0973b
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Sep 5, 2023
7b21dfd
Merge pull request #2833 from catalyst-cooperative/pre-commit-ci-upda…
zaneselvans Sep 5, 2023
7048361
Merge branch 'dev' into ruffing-it
zaneselvans Sep 5, 2023
8dfc8b7
Remove py const reference from table description because it doesn't r…
aesharpe Sep 5, 2023
d76897c
Merge branch 'update-small-plants-table-description' of https://githu…
aesharpe Sep 5, 2023
3521e82
Merge branch 'dev' into annual-updates-docs
aesharpe Sep 5, 2023
89b38bc
Fix typos and clarify _core vs. core assets in Dagster
aesharpe Sep 5, 2023
9c56ee5
Merge pull request #2816 from catalyst-cooperative/add-hi-to-cems
e-belfer Sep 6, 2023
a8773b4
reword description a little
aesharpe Sep 6, 2023
d543d4b
Slight rewording in order to get the tests to run
aesharpe Sep 6, 2023
d8b9635
Merge pull request #2815 from catalyst-cooperative/update-small-plant…
aesharpe Sep 6, 2023
7d5903e
Merge pull request #2814 from catalyst-cooperative/annual-updates-docs
aesharpe Sep 6, 2023
2f67b17
Add generator to the retirement_year / _month columns for the monthly…
aesharpe Sep 6, 2023
4d20dbc
Add release notes
aesharpe Sep 6, 2023
532b36a
Merge branch 'dev' into fix-860m-retirement-bug
aesharpe Sep 6, 2023
19d3343
Merge pull request #2835 from catalyst-cooperative/fix-860m-retiremen…
zaneselvans Sep 6, 2023
30fdbfa
Merge branch 'dev' into ruffing-it
zaneselvans Sep 7, 2023
f3a326f
Merge branch 'ruffing-it' of github.com:catalyst-cooperative/pudl int…
zaneselvans Sep 7, 2023
83c8ed7
Merge pull request #2824 from catalyst-cooperative/ruffing-it
zaneselvans Sep 7, 2023
ebfba4d
Update mambaforge image & google cloud sdk, use python 3.11
zaneselvans Sep 7, 2023
9025a74
Ensure required versions of urllib3, pandas, numpy are installed by c…
zaneselvans Sep 7, 2023
9549dd3
Pin to pyarrow<13
zaneselvans Sep 7, 2023
4dad3dc
Add a docker build test on pull requests
zaneselvans Sep 7, 2023
da51425
Merge pull request #2837 from catalyst-cooperative/fix-docker-builds
zaneselvans Sep 7, 2023
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: 0 additions & 2 deletions .bandit.yml

This file was deleted.

36 changes: 36 additions & 0 deletions .github/workflows/docker-build-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
name: docker-build-test
on:
workflow_dispatch:
pull_request:

jobs:
pudl_docker_build:
name: Test building the PUDL ETL Docker image
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- name: Checkout Repository
uses: actions/checkout@v3

- name: Docker Metadata
id: docker_metadata
uses: docker/[email protected]
with:
images: catalystcoop/pudl-etl
flavor: |
latest=auto

- name: Set up Docker Buildx
uses: docker/[email protected]

- name: Build image but do not push to Docker Hub
uses: docker/[email protected]
with:
context: .
file: docker/Dockerfile
push: false
cache-from: type=gha
cache-to: type=gha,mode=max
4 changes: 3 additions & 1 deletion .github/workflows/tox-pytest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ jobs:
path: coverage.xml

ci-integration:
runs-on: ubuntu-latest
runs-on:
group: large-runner-group
labels: ubuntu-22.04-4core
permissions:
contents: read
id-token: write
Expand Down
68 changes: 8 additions & 60 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ repos:
rev: v1.10.0
hooks:
- id: python-check-blanket-noqa # Prohibit overly broad QA exclusions.
- id: python-no-eval # Never use eval() it's dangerous.
- id: python-no-log-warn # logger.warning(), not old .warn()
- 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
Expand All @@ -21,21 +19,18 @@ repos:
- id: check-yaml # Validate all YAML files.
- id: check-case-conflict # Avoid case sensitivity in file names.
- id: debug-statements # Watch for lingering debugger calls.
- id: end-of-file-fixer # Ensure there's a newline at EOF.
- id: mixed-line-ending # Use Unix line-endings to avoid big no-op CSV diffs.
args: ["--fix=lf"]
- id: trailing-whitespace # Remove trailing whitespace.
- id: name-tests-test # Follow PyTest naming convention.

####################################################################################
# Formatters: hooks that re-write Python & documentation files
####################################################################################
# Make sure import statements are sorted uniformly.
- repo: https://github.com/PyCQA/isort
rev: 5.12.0
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.0.287
hooks:
- id: isort
exclude: migrations/.*
- id: ruff
args: [--fix, --exit-non-zero-on-fix]

# Format the code
- repo: https://github.com/psf/black
Expand All @@ -45,75 +40,28 @@ repos:
language_version: python3.11
exclude: migrations/.*

# Remove f-string prefix when there's nothing in the string to format.
- repo: https://github.com/dannysepler/rm_unneeded_f_str
rev: v0.2.0
hooks:
- id: rm-unneeded-f-str

- repo: https://github.com/pre-commit/mirrors-prettier
rev: v3.0.1
rev: v3.0.3
hooks:
- id: prettier
types_or: [yaml]

# Update Python language constructs to modern standards
- repo: https://github.com/asottile/pyupgrade
rev: v3.10.1
hooks:
- id: pyupgrade
args: ["--py311-plus"]

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

# Check for PEP8 non-compliance, code complexity, style, errors, etc:
- repo: https://github.com/PyCQA/flake8
rev: 6.1.0
hooks:
- id: flake8
args: [--config, tox.ini]
exclude: migrations/.*
additional_dependencies:
- flake8-docstrings
- flake8-colors
- pydocstyle
- flake8-builtins
- mccabe
- pep8-naming
- pycodestyle
- pyflakes
- flake8-rst-docstrings
- flake8-use-fstring

# Check for known security vulnerabilities:
- repo: https://github.com/PyCQA/bandit
rev: 1.7.5
hooks:
- id: bandit
additional_dependencies: ["bandit[toml]"]
args: ["--configfile", ".bandit.yml"]

# Lint Dockerfiles for errors and to ensure best practices
- repo: https://github.com/AleksaC/hadolint-py
rev: v2.12.0.2
hooks:
- id: hadolint

# Check for errors in restructuredtext (.rst) files under the doc hierarchy
- repo: https://github.com/PyCQA/doc8
rev: v1.1.1
hooks:
- id: doc8
args: [--config, tox.ini]

# Lint any RST files and embedded code blocks for syntax / formatting errors
- repo: https://github.com/rstcheck/rstcheck
rev: v6.1.2
hooks:
- id: rstcheck
additional_dependencies: [sphinx]
args: [--config, tox.ini]
args: [--config, pyproject.toml]

#####################################################################################
# Our own pre-commit hooks, which don't come from the pre-commit project
Expand Down
4 changes: 2 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ PUDL currently integrates data from:
* `EIA Form 860m <https://www.eia.gov/electricity/data/eia860m/>`__: 2023-06
* `EIA Form 861 <https://www.eia.gov/electricity/data/eia861/>`__: 2001-2022
* `EIA Form 923 <https://www.eia.gov/electricity/data/eia923/>`__: 2001-2022
* `EPA Continuous Emissions Monitoring System (CEMS) <https://campd.epa.gov/>`__: 1995-2021
* `EPA Continuous Emissions Monitoring System (CEMS) <https://campd.epa.gov/>`__: 1995-2022
* `FERC Form 1 <https://www.ferc.gov/industries-data/electric/general-information/electric-industry-forms/form-1-electric-utility-annual>`__: 1994-2021
* `FERC Form 714 <https://www.ferc.gov/industries-data/electric/general-information/electric-industry-forms/form-no-714-annual-electric/data>`__: 2006-2020
* `US Census Demographic Profile 1 Geodatabase <https://www.census.gov/geographies/mapping-files/2010/geo/tiger-data.html>`__: 2010
Expand Down Expand Up @@ -124,7 +124,7 @@ Want access to all the published data in bulk? If you're familiar with Python
and `Jupyter Notebooks <https://jupyter.org/>`__ and are willing to install Docker you
can:

* `Download a PUDL data release <https://sandbox.zenodo.org/record/764696>`__ from
* `Download a PUDL data release <https://zenodo.org/record/3653158>`__ from
CERN's `Zenodo <https://zenodo.org>`__ archiving service.
* `Install Docker <https://docs.docker.com/get-docker/>`__
* Run the archived image using ``docker-compose up``
Expand Down
Loading