Skip to content

Conversation

@jm-rivera
Copy link
Collaborator

This pull request updates the oda_data package to version 2.3.1, introducing new donor and recipient mappings, expanding sector and purpose code support, and improving type handling and sector aggregation logic. It also updates dependencies and fixes several naming and mapping issues for greater consistency and robustness.

Key changes:

Provider/Donor and Recipient Mappings:

  • Added the European Investment Bank (EIB, code 919) to provider/donor mappings across DAC1, DAC2A, CRS, and provider groupings (dac1_names.json, dac2a_names.json, crs_names.json, provider_groupings.json). [1] [2] [3] [4]
  • Introduced new unspecified regional recipient codes: Southern Asia (6790), Micronesia (8600), Middle Africa (10280), Melanesia (10330), Polynesia (10350) in recipient groupings and CRS names (recipient_groupings.json, crs_names.json). [1] [2] [3] [4]

Sector and Purpose Code Enhancements:

  • Added broad sector categories for top-level aggregation: Education, Health, Energy, General Environment Protection, Agriculture and Forestry & Fishing. Updated sector_lists.py to support these, including new groupings and mappings for aggregation. (F5eb2bc6L5R7, [1] [2] [3] [4] [5] [6] [7] [8]
  • Expanded sector/purpose mappings to include Conflict/Peace/Security (152), Trade Policies (331), Refugees (930), Humanitarian Aid (700), and improved fallback mapping for unmapped sectors (crs_names.json, sector_lists.py). [1] [2] [3] [4]

Bug Fixes and Data Consistency:

  • Fixed type conversion for code columns (sector_code, purpose_code, donor_code, agency_code) when adding name columns to handle mixed types (add.py).
  • Corrected typos and capitalization in sector and group names, e.g., "Unallocated/ Unspecificed" → "Unallocated/ Unspecified", "government & Civil Society" → "Government & Civil Society" (sector_lists.py, crs_names.json, test_sector_lists.py). [1] [2] [3]

Dependency Updates:

  • Updated package dependencies and development tools to newer versions in pyproject.toml, including oda-reader, pydeflate, uv-build, pre-commit, ruff, and mkdocs-material. [1] [2] [3]

Documentation:

  • Updated CHANGELOG.md to reflect all new features, fixes, and enhancements in version 2.3.1.

@jm-rivera jm-rivera self-assigned this Dec 15, 2025
@jm-rivera jm-rivera merged commit d666172 into main Dec 15, 2025
9 checks passed
@jm-rivera jm-rivera deleted the schema-update branch December 15, 2025 10:14
@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (main@79724a4). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #152   +/-   ##
=======================================
  Coverage        ?   75.73%           
=======================================
  Files           ?       36           
  Lines           ?     2139           
  Branches        ?      190           
=======================================
  Hits            ?     1620           
  Misses          ?      485           
  Partials        ?       34           
Flag Coverage Δ
unittests 75.73% <100.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

3 participants