hdx-python-scraper 2.6.3__tar.gz → 2.6.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/.github/workflows/publish.yaml +9 -6
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/.github/workflows/run-python-tests.yaml +5 -1
- hdx_python_scraper-2.6.3/.config/pre-commit-config.yaml → hdx_python_scraper-2.6.5/.pre-commit-config.yaml +4 -5
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/PKG-INFO +8 -5
- hdx_python_scraper-2.6.5/documentation/.readthedocs.yaml +14 -0
- hdx_python_scraper-2.6.5/documentation/mkdocs.yaml +19 -0
- hdx_python_scraper-2.6.5/hatch.toml +37 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/pyproject.toml +6 -54
- {hdx_python_scraper-2.6.3/.config → hdx_python_scraper-2.6.5}/pytest.ini +1 -1
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/requirements.txt +118 -59
- {hdx_python_scraper-2.6.3/.config → hdx_python_scraper-2.6.5}/ruff.toml +0 -1
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/_version.py +9 -4
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/base_scraper.py +5 -14
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/outputs/googlesheets.py +1 -3
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/outputs/json.py +2 -4
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/runner.py +18 -50
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/scrapers/aggregator.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/scrapers/configurable_scraper.py +10 -35
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/scrapers/rowparser.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/scrapers/timeseries.py +1 -3
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/hapi_admins.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/lookup.py +2 -6
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/reader.py +17 -39
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/sector_configuration.yaml +1 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/sources.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/writer.py +1 -3
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/conftest.py +5 -7
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/custom/affected_targeted_reached.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/custom/education_closures.py +2 -6
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/custom/education_enrolment.py +1 -3
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/custom/test_custom.py +14 -42
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/outputs/test_output.py +4 -12
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_aggregation.py +2 -6
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_appenddata.py +14 -26
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_global.py +4 -12
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_national.py +5 -15
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_regionaltoplevel.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_subnational.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/unhcr_myanmar_idps.py +1 -3
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/test_runner.py +3 -9
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/test_hapi_admins.py +2 -6
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/test_lookup.py +1 -3
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/test_readers.py +12 -36
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/test_sources.py +3 -9
- hdx_python_scraper-2.6.3/documentation/.readthedocs.yaml +0 -16
- hdx_python_scraper-2.6.3/documentation/pydoc-markdown.yaml +0 -38
- /hdx_python_scraper-2.6.3/.config/coveragerc → /hdx_python_scraper-2.6.5/.coveragerc +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/.gitignore +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/CONTRIBUTING.md +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/LICENSE +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/README.md +0 -0
- /hdx_python_scraper-2.6.3/documentation/main.md → /hdx_python_scraper-2.6.5/documentation/index.md +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/outputs/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/outputs/base.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/outputs/excelfile.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/scrapers/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/scrapers/resource_downloader.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/fallbacks.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/org_type.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/org_type_configuration.yaml +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/region_lookup.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/src/hdx/scraper/framework/utilities/sector.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/config/project_configuration.yaml +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/access_2pacx-1vrszjzuyvt9i-mkrq2hbxrul2lx2vihkthqm-lae8nyhqty70zqtcufs3pxbhzgat1l2bkoa4-daoap-pub-gid-574237756-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/additional-json.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/altworldindata_data-tagger-match-all-on-tagger-01-header-location-tagger-01-tag.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/casualties_2pacx-1vqidedbzz0ehrc0b4fswip14r7mdtu1mpmwakuxupelsah2awcurkgalfduhjvyjul8vzzat3r1b5qg-pub-gid-0-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/cbpf-allocations-and-contributions.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/cbpf2-allocations-and-contributions.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/cerf-covid-19-allocations.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/cerf2-covid-19-allocations.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/cerf2_global_download-full-pfmb-allocations.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/cerf_global_download-full-pfmb-allocations.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/covax_2pacx-1vtvzu79pptfaa2syevoqfyrrjy63djwitqu0ffbxiqczoun9k9timwmrvfgg1rbsnlmgyugzseiaye2-pub-gid-992438980-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/covidtests_data-owid-covid-data.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/download-global-pcode-lengths.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/download-global-pcodes-adm-1-2.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/education_closures_broken.xls +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/education_closures_school_closures.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/education_enrolment_enrollment_data.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ethiopia-drought-related-key-figures.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ethiopia-pin-targeted-reached-by-location-and-cluster.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ethiopia_drought_affected_targeted_reached_by_cluster.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/fallbacks.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/gam_download-unicef-who-wb-global-expanded-databases-severe-wasting.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/gam_other_download-unicef-who-wb-global-expanded-databases-severe-wasting.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/global-coordination-groups-beta.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/global-school-closures-covid19.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/hno_2017_sahel_nutrition.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/hno_2017_sahel_people_in_need.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/idmc-internally-displaced-persons-idps.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/idps_download-displacement-data.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/idps_override_population-widget-id-264111-geo-id-693-population-group-54074999.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/idps_somalia_som_unhcr_prmn_displacement_dataset.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ipc_somalia_som_food_insecurity_oct_dec2022_projection.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/kenya-drought-related-key-figures.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/kenya-pin-targeted-reached-by-location-and-cluster.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/kenya_drought_affected_targeted_reached_by_cluster.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/key_figures_2pacx-1vrppqx8jtkkkrckmzfncmmtfecvcpkbp9pdhs1sqtuyacmbsx8tlaxpgblfce-lcehukregguxja-4s-pub-gid-0-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/key_figures_2pacx-1vrppqx8jtkkkrckmzfncmmtfecvcpkbp9pdhs1sqtuyacmbsx8tlaxpgblfce-lcehukregguxja-4s-pub-gid-1275038715-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/key_figures_2pacx-1vrppqx8jtkkkrckmzfncmmtfecvcpkbp9pdhs1sqtuyacmbsx8tlaxpgblfce-lcehukregguxja-4s-pub-gid-2015311116-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/key_figures_eth_2pacx-1vrppqx8jtkkkrckmzfncmmtfecvcpkbp9pdhs1sqtuyacmbsx8tlaxpgblfce-lcehukregguxja-4s-pub-gid-2015311116-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/key_figures_ken_2pacx-1vrppqx8jtkkkrckmzfncmmtfecvcpkbp9pdhs1sqtuyacmbsx8tlaxpgblfce-lcehukregguxja-4s-pub-gid-1275038715-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/key_figures_som_2pacx-1vrppqx8jtkkkrckmzfncmmtfecvcpkbp9pdhs1sqtuyacmbsx8tlaxpgblfce-lcehukregguxja-4s-pub-gid-0-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/org_type_organization_types_beta_csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/organization-types-beta.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ourworldindata_data-tagger-match-all-on-tagger-01-header-location-tagger-01-tag.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ourworldindata_other_data-tagger-match-all-on-tagger-01-header-location-tagger-01-tag.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/oxcgrt_oxcgrt_csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/oxford-covid-19-government-response-tracker.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/population.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/population_indicator-sp-pop-downloadformat-excel-dataformat-list-totl.xls +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/population_other_indicator-sp-pop-downloadformat-excel-dataformat-list-totl.xls +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/regions_tbl_regcov_2020_ocha.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/resource_downloader_xlsx_ukr_border_crossings_090622.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/sadd-countries-to-include.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/sadd_covid-data-dataset-fullvars-extype-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/sahel-humanitarian-needs-overview.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/sahel-humanitarian-needs-overview_prefix.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/sector_global_coordination_groups_beta_csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/somalia-acute-food-insecurity-country-data.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/somalia-drought-related-key-figures.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/somalia-internally-displaced-persons-idps.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/somalia-pin-targeted-reached-by-location-and-cluster.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/somalia_drought_affected_targeted_reached_by_cluster.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/timeseries_casualties_2pacx-1vqidedbzz0ehrc0b4fswip14r7mdtu1mpmwakuxupelsah2awcurkgalfduhjvyjul8vzzat3r1b5qg-pub-gid-0-single-true-output-csv.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/total-covid-19-tests-performed-by-country.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ukraine-border-crossings.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/ukraine-who-does-what-where-3w.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/unocha-office-locations.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/who_national2_who-covid-19-global-data.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/who_national3_who-covid-19-global-data.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/who_national_who-covid-19-global-data.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/whowhatwhere_afg_3w_data.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/input/whowhatwhere_notags_3w_data.csv +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/test_output.xlsx +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/test_scraper_all.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/test_scraper_other.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/fixtures/test_scraper_population.json +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/custom/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/outputs/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_multipleurls.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_resource_downloaders.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/scrapers/test_timeseries.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/__init__.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/test_regionlookup.py +0 -0
- {hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/tests/hdx/scraper/framework/utilities/test_utils.py +0 -0
|
@@ -8,6 +8,13 @@ jobs:
|
|
|
8
8
|
publish:
|
|
9
9
|
runs-on: ubuntu-latest
|
|
10
10
|
|
|
11
|
+
environment:
|
|
12
|
+
name: pypi
|
|
13
|
+
url: https://pypi.org/p/hdx-python-scraper
|
|
14
|
+
|
|
15
|
+
permissions:
|
|
16
|
+
id-token: write # IMPORTANT: mandatory for trusted publishing
|
|
17
|
+
|
|
11
18
|
steps:
|
|
12
19
|
- uses: actions/checkout@v4
|
|
13
20
|
- name: Get history and tags for versioning to work
|
|
@@ -26,9 +33,5 @@ jobs:
|
|
|
26
33
|
- name: Build with hatch
|
|
27
34
|
run: |
|
|
28
35
|
hatch build
|
|
29
|
-
- name: Publish
|
|
30
|
-
|
|
31
|
-
HATCH_INDEX_USER: ${{secrets.HATCH_INDEX_USER}}
|
|
32
|
-
HATCH_INDEX_AUTH: ${{secrets.HATCH_INDEX_AUTH}}
|
|
33
|
-
run: |
|
|
34
|
-
hatch publish
|
|
36
|
+
- name: Publish distribution 📦 to PyPI
|
|
37
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
{hdx_python_scraper-2.6.3 → hdx_python_scraper-2.6.5}/.github/workflows/run-python-tests.yaml
RENAMED
|
@@ -17,6 +17,10 @@ jobs:
|
|
|
17
17
|
build:
|
|
18
18
|
runs-on: ubuntu-latest
|
|
19
19
|
|
|
20
|
+
permissions:
|
|
21
|
+
checks: write
|
|
22
|
+
pull-requests: write
|
|
23
|
+
|
|
20
24
|
steps:
|
|
21
25
|
- uses: actions/checkout@v4
|
|
22
26
|
- name: Set up Python
|
|
@@ -30,7 +34,7 @@ jobs:
|
|
|
30
34
|
uses: pypa/hatch@install
|
|
31
35
|
- name: Test with hatch/pytest
|
|
32
36
|
env:
|
|
33
|
-
GSHEET_AUTH: ${{ secrets.
|
|
37
|
+
GSHEET_AUTH: ${{ secrets.HDX_PIPELINE_GSHEET_AUTH }}
|
|
34
38
|
run: |
|
|
35
39
|
hatch test
|
|
36
40
|
- name: Check styling
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
default_language_version:
|
|
2
|
-
python: python3.
|
|
2
|
+
python: python3.13
|
|
3
3
|
repos:
|
|
4
4
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
5
5
|
rev: v5.0.0
|
|
@@ -9,16 +9,15 @@ repos:
|
|
|
9
9
|
exclude: test_scraper_.*\.json
|
|
10
10
|
- id: check-ast
|
|
11
11
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
12
|
-
rev: v0.9.
|
|
12
|
+
rev: v0.9.10
|
|
13
13
|
hooks:
|
|
14
14
|
# Run the linter.
|
|
15
15
|
- id: ruff
|
|
16
|
-
args: [
|
|
16
|
+
args: [ --fix ]
|
|
17
17
|
# Run the formatter.
|
|
18
18
|
- id: ruff-format
|
|
19
|
-
args: [--config, .config/ruff.toml]
|
|
20
19
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
21
|
-
rev: 0.5
|
|
20
|
+
rev: 0.6.5
|
|
22
21
|
hooks:
|
|
23
22
|
# Run the pip compile
|
|
24
23
|
- id: pip-compile
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: hdx-python-scraper
|
|
3
|
-
Version: 2.6.
|
|
3
|
+
Version: 2.6.5
|
|
4
4
|
Summary: HDX Python scraper utilities to assemble data from multiple sources
|
|
5
5
|
Project-URL: Homepage, https://github.com/OCHA-DAP/hdx-python-scraper
|
|
6
6
|
Author-email: Michael Rans <rans@email.com>
|
|
@@ -26,15 +26,18 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
26
26
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
27
27
|
Requires-Python: >=3.8
|
|
28
28
|
Requires-Dist: gspread
|
|
29
|
-
Requires-Dist: hdx-python-api>=6.
|
|
30
|
-
Requires-Dist: hdx-python-country>=3.
|
|
31
|
-
Requires-Dist: hdx-python-utilities>=3.8.
|
|
29
|
+
Requires-Dist: hdx-python-api>=6.4.0
|
|
30
|
+
Requires-Dist: hdx-python-country>=3.9.4
|
|
31
|
+
Requires-Dist: hdx-python-utilities>=3.8.7
|
|
32
32
|
Requires-Dist: regex
|
|
33
33
|
Provides-Extra: dev
|
|
34
34
|
Requires-Dist: pre-commit; extra == 'dev'
|
|
35
|
+
Provides-Extra: docs
|
|
36
|
+
Requires-Dist: mkapi; extra == 'docs'
|
|
35
37
|
Provides-Extra: pandas
|
|
36
|
-
Requires-Dist: pandas>=2.2.
|
|
38
|
+
Requires-Dist: pandas>=2.2.3; extra == 'pandas'
|
|
37
39
|
Provides-Extra: test
|
|
40
|
+
Requires-Dist: pandas>=2.2.3; extra == 'test'
|
|
38
41
|
Requires-Dist: pytest; extra == 'test'
|
|
39
42
|
Requires-Dist: pytest-cov; extra == 'test'
|
|
40
43
|
Description-Content-Type: text/markdown
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
site_name: HDX Python Scraper
|
|
2
|
+
repo_url: https://github.com/OCHA-DAP/hdx-python-scraper/
|
|
3
|
+
repo_name: OCHA-DAP/hdx-python-scraper
|
|
4
|
+
docs_dir: .
|
|
5
|
+
site_dir: ../site
|
|
6
|
+
theme:
|
|
7
|
+
name: material
|
|
8
|
+
highlightjs: true
|
|
9
|
+
plugins:
|
|
10
|
+
- search
|
|
11
|
+
- mkapi
|
|
12
|
+
nav:
|
|
13
|
+
- Home: index.md
|
|
14
|
+
- API Documentation:
|
|
15
|
+
- Runner: $src/hdx.scraper.framework.runner.Runner.*
|
|
16
|
+
- Scraper Base Class: $src/hdx.scraper.framework.base_scraper.BaseScraper.*
|
|
17
|
+
- Scrapers: $src/hdx.scraper.framework.scrapers.*
|
|
18
|
+
- Outputs: $src/hdx.scraper.framework.outputs.*
|
|
19
|
+
- Utilities: $src/hdx.scraper.framework.utilities.*
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Build
|
|
2
|
+
|
|
3
|
+
[build.targets.wheel]
|
|
4
|
+
packages = ["src/hdx"]
|
|
5
|
+
|
|
6
|
+
[build.hooks.vcs]
|
|
7
|
+
version-file = "src/hdx/scraper/framework/_version.py"
|
|
8
|
+
|
|
9
|
+
[metadata]
|
|
10
|
+
allow-direct-references = true
|
|
11
|
+
|
|
12
|
+
# Versioning
|
|
13
|
+
|
|
14
|
+
[version]
|
|
15
|
+
source = "vcs"
|
|
16
|
+
|
|
17
|
+
[version.raw-options]
|
|
18
|
+
local_scheme = "no-local-version"
|
|
19
|
+
version_scheme = "python-simplified-semver"
|
|
20
|
+
|
|
21
|
+
# Tests
|
|
22
|
+
|
|
23
|
+
[envs.hatch-test]
|
|
24
|
+
features = ["test"]
|
|
25
|
+
|
|
26
|
+
[[envs.hatch-test.matrix]]
|
|
27
|
+
python = ["3.13"]
|
|
28
|
+
|
|
29
|
+
[envs.hatch-test.scripts]
|
|
30
|
+
run = """
|
|
31
|
+
pytest --rootdir=. --junitxml=test-results.xml --cov --no-cov-on-fail \
|
|
32
|
+
--cov-report=lcov --cov-report=term-missing
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
[envs.hatch-static-analysis]
|
|
36
|
+
config-path = "none"
|
|
37
|
+
dependencies = ["ruff==0.9.10"]
|
|
@@ -34,9 +34,9 @@ classifiers = [
|
|
|
34
34
|
requires-python = ">=3.8"
|
|
35
35
|
|
|
36
36
|
dependencies = [
|
|
37
|
-
"hdx-python-api>=6.
|
|
38
|
-
"hdx-python-country>=3.
|
|
39
|
-
"hdx-python-utilities>=3.8.
|
|
37
|
+
"hdx-python-api>=6.4.0",
|
|
38
|
+
"hdx-python-country>=3.9.4",
|
|
39
|
+
"hdx-python-utilities>=3.8.7",
|
|
40
40
|
"gspread",
|
|
41
41
|
"regex",
|
|
42
42
|
]
|
|
@@ -50,55 +50,7 @@ content-type = "text/markdown"
|
|
|
50
50
|
Homepage = "https://github.com/OCHA-DAP/hdx-python-scraper"
|
|
51
51
|
|
|
52
52
|
[project.optional-dependencies]
|
|
53
|
-
pandas = ["pandas>=2.2.
|
|
54
|
-
test = ["pytest", "pytest-cov"]
|
|
53
|
+
pandas = ["pandas>=2.2.3"]
|
|
54
|
+
test = ["pandas>=2.2.3", "pytest", "pytest-cov"]
|
|
55
55
|
dev = ["pre-commit"]
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
#########
|
|
59
|
-
# Hatch #
|
|
60
|
-
#########
|
|
61
|
-
|
|
62
|
-
# Build
|
|
63
|
-
|
|
64
|
-
[tool.hatch.build.targets.wheel]
|
|
65
|
-
packages = ["src/hdx"]
|
|
66
|
-
|
|
67
|
-
[tool.hatch.build.hooks.vcs]
|
|
68
|
-
version-file = "src/hdx/scraper/framework/_version.py"
|
|
69
|
-
|
|
70
|
-
[tool.hatch.metadata]
|
|
71
|
-
allow-direct-references = true
|
|
72
|
-
|
|
73
|
-
# Versioning
|
|
74
|
-
|
|
75
|
-
[tool.hatch.version]
|
|
76
|
-
source = "vcs"
|
|
77
|
-
|
|
78
|
-
[tool.hatch.version.raw-options]
|
|
79
|
-
local_scheme = "no-local-version"
|
|
80
|
-
version_scheme = "python-simplified-semver"
|
|
81
|
-
|
|
82
|
-
# Tests
|
|
83
|
-
|
|
84
|
-
[tool.hatch.envs.hatch-test]
|
|
85
|
-
features = ["pandas", "test"]
|
|
86
|
-
|
|
87
|
-
[[tool.hatch.envs.hatch-test.matrix]]
|
|
88
|
-
python = ["3.12"]
|
|
89
|
-
|
|
90
|
-
[tool.hatch.envs.hatch-test.scripts]
|
|
91
|
-
run = """
|
|
92
|
-
pytest -c .config/pytest.ini --rootdir=. --junitxml=test-results.xml \
|
|
93
|
-
--cov --cov-config=.config/coveragerc --no-cov-on-fail \
|
|
94
|
-
--cov-report=lcov --cov-report=term-missing
|
|
95
|
-
"""
|
|
96
|
-
|
|
97
|
-
[tool.hatch.envs.hatch-static-analysis]
|
|
98
|
-
dependencies = ["ruff==0.9.6"]
|
|
99
|
-
|
|
100
|
-
[tool.hatch.envs.hatch-static-analysis.scripts]
|
|
101
|
-
format-check = ["ruff format --config .config/ruff.toml --check --diff {args:.}",]
|
|
102
|
-
format-fix = ["ruff format --config .config/ruff.toml {args:.}",]
|
|
103
|
-
lint-check = ["ruff check --config .config/ruff.toml {args:.}",]
|
|
104
|
-
lint-fix = ["ruff check --config .config/ruff.toml --fix {args:.}",]
|
|
56
|
+
docs = ["mkapi"]
|
|
@@ -2,27 +2,37 @@
|
|
|
2
2
|
# uv pip compile pyproject.toml --resolver=backtracking --all-extras -o requirements.txt
|
|
3
3
|
annotated-types==0.7.0
|
|
4
4
|
# via pydantic
|
|
5
|
-
|
|
5
|
+
astdoc==1.2.1
|
|
6
|
+
# via mkapi
|
|
7
|
+
attrs==25.3.0
|
|
6
8
|
# via
|
|
7
9
|
# frictionless
|
|
8
10
|
# jsonlines
|
|
9
11
|
# jsonschema
|
|
10
12
|
# referencing
|
|
11
|
-
|
|
13
|
+
babel==2.17.0
|
|
14
|
+
# via mkdocs-material
|
|
15
|
+
backrefs==5.8
|
|
16
|
+
# via mkdocs-material
|
|
17
|
+
cachetools==5.5.2
|
|
12
18
|
# via google-auth
|
|
13
|
-
certifi==2025.
|
|
19
|
+
certifi==2025.4.26
|
|
14
20
|
# via requests
|
|
15
21
|
cfgv==3.4.0
|
|
16
22
|
# via pre-commit
|
|
17
23
|
chardet==5.2.0
|
|
18
24
|
# via frictionless
|
|
19
|
-
charset-normalizer==3.4.
|
|
25
|
+
charset-normalizer==3.4.2
|
|
20
26
|
# via requests
|
|
21
27
|
ckanapi==4.8
|
|
22
28
|
# via hdx-python-api
|
|
23
29
|
click==8.1.8
|
|
24
|
-
# via
|
|
25
|
-
|
|
30
|
+
# via
|
|
31
|
+
# mkdocs
|
|
32
|
+
# typer
|
|
33
|
+
colorama==0.4.6
|
|
34
|
+
# via mkdocs-material
|
|
35
|
+
coverage==7.8.0
|
|
26
36
|
# via pytest-cov
|
|
27
37
|
defopt==6.4.0
|
|
28
38
|
# via hdx-python-api
|
|
@@ -40,47 +50,53 @@ email-validator==2.2.0
|
|
|
40
50
|
# via hdx-python-api
|
|
41
51
|
et-xmlfile==2.0.0
|
|
42
52
|
# via openpyxl
|
|
43
|
-
filelock==3.
|
|
53
|
+
filelock==3.18.0
|
|
44
54
|
# via virtualenv
|
|
45
|
-
frictionless==5.18.
|
|
55
|
+
frictionless==5.18.1
|
|
46
56
|
# via hdx-python-utilities
|
|
47
|
-
|
|
57
|
+
ghp-import==2.1.0
|
|
58
|
+
# via mkdocs
|
|
59
|
+
google-auth==2.40.1
|
|
48
60
|
# via
|
|
49
61
|
# google-auth-oauthlib
|
|
50
62
|
# gspread
|
|
51
|
-
google-auth-oauthlib==1.2.
|
|
63
|
+
google-auth-oauthlib==1.2.2
|
|
52
64
|
# via gspread
|
|
53
|
-
gspread==6.1
|
|
65
|
+
gspread==6.2.1
|
|
54
66
|
# via hdx-python-scraper (pyproject.toml)
|
|
55
|
-
hdx-python-api==6.
|
|
67
|
+
hdx-python-api==6.4.0
|
|
56
68
|
# via hdx-python-scraper (pyproject.toml)
|
|
57
|
-
hdx-python-country==3.
|
|
69
|
+
hdx-python-country==3.9.4
|
|
58
70
|
# via
|
|
59
71
|
# hdx-python-scraper (pyproject.toml)
|
|
60
72
|
# hdx-python-api
|
|
61
|
-
hdx-python-utilities==3.8.
|
|
73
|
+
hdx-python-utilities==3.8.7
|
|
62
74
|
# via
|
|
63
75
|
# hdx-python-scraper (pyproject.toml)
|
|
64
76
|
# hdx-python-api
|
|
65
77
|
# hdx-python-country
|
|
66
|
-
humanize==4.12.
|
|
78
|
+
humanize==4.12.3
|
|
67
79
|
# via frictionless
|
|
68
|
-
identify==2.6.
|
|
80
|
+
identify==2.6.10
|
|
69
81
|
# via pre-commit
|
|
70
82
|
idna==3.10
|
|
71
83
|
# via
|
|
72
84
|
# email-validator
|
|
73
85
|
# requests
|
|
74
|
-
ijson==3.
|
|
86
|
+
ijson==3.4.0
|
|
75
87
|
# via hdx-python-utilities
|
|
76
88
|
inflect==7.5.0
|
|
77
89
|
# via quantulum3
|
|
78
|
-
iniconfig==2.
|
|
90
|
+
iniconfig==2.1.0
|
|
79
91
|
# via pytest
|
|
80
92
|
isodate==0.7.2
|
|
81
93
|
# via frictionless
|
|
82
|
-
jinja2==3.1.
|
|
83
|
-
# via
|
|
94
|
+
jinja2==3.1.6
|
|
95
|
+
# via
|
|
96
|
+
# frictionless
|
|
97
|
+
# mkapi
|
|
98
|
+
# mkdocs
|
|
99
|
+
# mkdocs-material
|
|
84
100
|
jsonlines==4.0.0
|
|
85
101
|
# via hdx-python-utilities
|
|
86
102
|
jsonpath-ng==1.7.0
|
|
@@ -89,7 +105,7 @@ jsonschema==4.23.0
|
|
|
89
105
|
# via
|
|
90
106
|
# frictionless
|
|
91
107
|
# tableschema-to-template
|
|
92
|
-
jsonschema-specifications==
|
|
108
|
+
jsonschema-specifications==2025.4.1
|
|
93
109
|
# via jsonschema
|
|
94
110
|
libhxl==5.2.2
|
|
95
111
|
# via
|
|
@@ -97,37 +113,68 @@ libhxl==5.2.2
|
|
|
97
113
|
# hdx-python-country
|
|
98
114
|
loguru==0.7.3
|
|
99
115
|
# via hdx-python-utilities
|
|
100
|
-
makefun==1.
|
|
116
|
+
makefun==1.16.0
|
|
101
117
|
# via hdx-python-api
|
|
118
|
+
markdown==3.8
|
|
119
|
+
# via
|
|
120
|
+
# mkdocs
|
|
121
|
+
# mkdocs-material
|
|
122
|
+
# pymdown-extensions
|
|
102
123
|
markdown-it-py==3.0.0
|
|
103
124
|
# via rich
|
|
104
|
-
marko==2.1.
|
|
125
|
+
marko==2.1.3
|
|
105
126
|
# via frictionless
|
|
106
127
|
markupsafe==3.0.2
|
|
107
|
-
# via
|
|
128
|
+
# via
|
|
129
|
+
# jinja2
|
|
130
|
+
# mkdocs
|
|
108
131
|
mdurl==0.1.2
|
|
109
132
|
# via markdown-it-py
|
|
110
|
-
|
|
133
|
+
mergedeep==1.3.4
|
|
134
|
+
# via
|
|
135
|
+
# mkdocs
|
|
136
|
+
# mkdocs-get-deps
|
|
137
|
+
mkapi==4.4.0
|
|
138
|
+
# via hdx-python-scraper (pyproject.toml)
|
|
139
|
+
mkdocs==1.6.1
|
|
140
|
+
# via
|
|
141
|
+
# mkapi
|
|
142
|
+
# mkdocs-material
|
|
143
|
+
mkdocs-get-deps==0.2.0
|
|
144
|
+
# via mkdocs
|
|
145
|
+
mkdocs-material==9.6.14
|
|
146
|
+
# via mkapi
|
|
147
|
+
mkdocs-material-extensions==1.3.1
|
|
148
|
+
# via mkdocs-material
|
|
149
|
+
more-itertools==10.7.0
|
|
111
150
|
# via inflect
|
|
112
151
|
nodeenv==1.9.1
|
|
113
152
|
# via pre-commit
|
|
114
153
|
num2words==0.5.14
|
|
115
154
|
# via quantulum3
|
|
116
|
-
numpy==2.2.
|
|
155
|
+
numpy==2.2.6
|
|
117
156
|
# via pandas
|
|
118
157
|
oauthlib==3.2.2
|
|
119
158
|
# via requests-oauthlib
|
|
120
159
|
openpyxl==3.1.5
|
|
121
160
|
# via hdx-python-utilities
|
|
122
|
-
packaging==
|
|
123
|
-
# via
|
|
161
|
+
packaging==25.0
|
|
162
|
+
# via
|
|
163
|
+
# mkdocs
|
|
164
|
+
# pytest
|
|
165
|
+
paginate==0.5.7
|
|
166
|
+
# via mkdocs-material
|
|
124
167
|
pandas==2.2.3
|
|
125
168
|
# via hdx-python-scraper (pyproject.toml)
|
|
126
|
-
|
|
169
|
+
pathspec==0.12.1
|
|
170
|
+
# via mkdocs
|
|
171
|
+
petl==1.7.16
|
|
127
172
|
# via frictionless
|
|
128
|
-
platformdirs==4.3.
|
|
129
|
-
# via
|
|
130
|
-
|
|
173
|
+
platformdirs==4.3.8
|
|
174
|
+
# via
|
|
175
|
+
# mkdocs-get-deps
|
|
176
|
+
# virtualenv
|
|
177
|
+
pluggy==1.6.0
|
|
131
178
|
# via pytest
|
|
132
179
|
ply==3.11
|
|
133
180
|
# via
|
|
@@ -135,31 +182,36 @@ ply==3.11
|
|
|
135
182
|
# libhxl
|
|
136
183
|
pockets==0.9.1
|
|
137
184
|
# via sphinxcontrib-napoleon
|
|
138
|
-
pre-commit==4.
|
|
185
|
+
pre-commit==4.2.0
|
|
139
186
|
# via hdx-python-scraper (pyproject.toml)
|
|
140
187
|
pyasn1==0.6.1
|
|
141
188
|
# via
|
|
142
189
|
# pyasn1-modules
|
|
143
190
|
# rsa
|
|
144
|
-
pyasn1-modules==0.4.
|
|
191
|
+
pyasn1-modules==0.4.2
|
|
145
192
|
# via google-auth
|
|
146
|
-
pydantic==2.
|
|
193
|
+
pydantic==2.11.4
|
|
147
194
|
# via frictionless
|
|
148
|
-
pydantic-core==2.
|
|
195
|
+
pydantic-core==2.33.2
|
|
149
196
|
# via pydantic
|
|
150
197
|
pygments==2.19.1
|
|
151
|
-
# via
|
|
198
|
+
# via
|
|
199
|
+
# mkdocs-material
|
|
200
|
+
# rich
|
|
201
|
+
pymdown-extensions==10.15
|
|
202
|
+
# via mkdocs-material
|
|
152
203
|
pyphonetics==0.5.3
|
|
153
204
|
# via hdx-python-utilities
|
|
154
|
-
pytest==8.3.
|
|
205
|
+
pytest==8.3.5
|
|
155
206
|
# via
|
|
156
207
|
# hdx-python-scraper (pyproject.toml)
|
|
157
208
|
# pytest-cov
|
|
158
|
-
pytest-cov==6.
|
|
209
|
+
pytest-cov==6.1.1
|
|
159
210
|
# via hdx-python-scraper (pyproject.toml)
|
|
160
211
|
python-dateutil==2.9.0.post0
|
|
161
212
|
# via
|
|
162
213
|
# frictionless
|
|
214
|
+
# ghp-import
|
|
163
215
|
# hdx-python-utilities
|
|
164
216
|
# libhxl
|
|
165
217
|
# pandas
|
|
@@ -169,13 +221,19 @@ python-slugify==8.0.4
|
|
|
169
221
|
# via
|
|
170
222
|
# ckanapi
|
|
171
223
|
# frictionless
|
|
172
|
-
pytz==2025.
|
|
224
|
+
pytz==2025.2
|
|
173
225
|
# via pandas
|
|
174
226
|
pyyaml==6.0.2
|
|
175
227
|
# via
|
|
176
228
|
# frictionless
|
|
229
|
+
# mkdocs
|
|
230
|
+
# mkdocs-get-deps
|
|
177
231
|
# pre-commit
|
|
232
|
+
# pymdown-extensions
|
|
233
|
+
# pyyaml-env-tag
|
|
178
234
|
# tableschema-to-template
|
|
235
|
+
pyyaml-env-tag==1.1
|
|
236
|
+
# via mkdocs
|
|
179
237
|
quantulum3==0.9.2
|
|
180
238
|
# via hdx-python-api
|
|
181
239
|
ratelimit==2.2.1
|
|
@@ -192,6 +250,7 @@ requests==2.32.3
|
|
|
192
250
|
# frictionless
|
|
193
251
|
# hdx-python-api
|
|
194
252
|
# libhxl
|
|
253
|
+
# mkdocs-material
|
|
195
254
|
# requests-file
|
|
196
255
|
# requests-oauthlib
|
|
197
256
|
requests-file==2.1.0
|
|
@@ -200,19 +259,17 @@ requests-oauthlib==2.0.0
|
|
|
200
259
|
# via google-auth-oauthlib
|
|
201
260
|
rfc3986==2.0.0
|
|
202
261
|
# via frictionless
|
|
203
|
-
rich==
|
|
262
|
+
rich==14.0.0
|
|
204
263
|
# via typer
|
|
205
|
-
rpds-py==0.
|
|
264
|
+
rpds-py==0.25.0
|
|
206
265
|
# via
|
|
207
266
|
# jsonschema
|
|
208
267
|
# referencing
|
|
209
|
-
rsa==4.9
|
|
268
|
+
rsa==4.9.1
|
|
210
269
|
# via google-auth
|
|
211
270
|
ruamel-yaml==0.18.10
|
|
212
271
|
# via hdx-python-utilities
|
|
213
|
-
|
|
214
|
-
# via ruamel-yaml
|
|
215
|
-
setuptools==75.8.0
|
|
272
|
+
setuptools==80.7.1
|
|
216
273
|
# via ckanapi
|
|
217
274
|
shellingham==1.5.4
|
|
218
275
|
# via typer
|
|
@@ -228,44 +285,46 @@ six==1.17.0
|
|
|
228
285
|
# sphinxcontrib-napoleon
|
|
229
286
|
sphinxcontrib-napoleon==0.7
|
|
230
287
|
# via defopt
|
|
231
|
-
|
|
232
|
-
# via frictionless
|
|
233
|
-
structlog==25.1.0
|
|
288
|
+
structlog==25.3.0
|
|
234
289
|
# via libhxl
|
|
235
290
|
tableschema-to-template==0.0.13
|
|
236
291
|
# via hdx-python-utilities
|
|
237
292
|
tabulate==0.9.0
|
|
238
293
|
# via frictionless
|
|
239
|
-
tenacity==9.
|
|
294
|
+
tenacity==9.1.2
|
|
240
295
|
# via hdx-python-country
|
|
241
296
|
text-unidecode==1.3
|
|
242
297
|
# via python-slugify
|
|
243
298
|
typeguard==4.4.2
|
|
244
299
|
# via inflect
|
|
245
|
-
typer==0.15.
|
|
300
|
+
typer==0.15.4
|
|
246
301
|
# via frictionless
|
|
247
|
-
typing-extensions==4.
|
|
302
|
+
typing-extensions==4.13.2
|
|
248
303
|
# via
|
|
249
304
|
# frictionless
|
|
250
305
|
# pydantic
|
|
251
306
|
# pydantic-core
|
|
252
|
-
# referencing
|
|
253
307
|
# typeguard
|
|
254
308
|
# typer
|
|
255
|
-
|
|
309
|
+
# typing-inspection
|
|
310
|
+
typing-inspection==0.4.0
|
|
311
|
+
# via pydantic
|
|
312
|
+
tzdata==2025.2
|
|
256
313
|
# via pandas
|
|
257
|
-
unidecode==1.
|
|
314
|
+
unidecode==1.4.0
|
|
258
315
|
# via
|
|
259
316
|
# libhxl
|
|
260
317
|
# pyphonetics
|
|
261
|
-
urllib3==2.
|
|
318
|
+
urllib3==2.4.0
|
|
262
319
|
# via
|
|
263
320
|
# libhxl
|
|
264
321
|
# requests
|
|
265
|
-
validators==0.
|
|
322
|
+
validators==0.35.0
|
|
266
323
|
# via frictionless
|
|
267
|
-
virtualenv==20.
|
|
324
|
+
virtualenv==20.31.2
|
|
268
325
|
# via pre-commit
|
|
326
|
+
watchdog==6.0.0
|
|
327
|
+
# via mkdocs
|
|
269
328
|
wheel==0.45.1
|
|
270
329
|
# via libhxl
|
|
271
330
|
xlrd==2.0.1
|
|
@@ -274,7 +333,7 @@ xlrd3==1.1.0
|
|
|
274
333
|
# via libhxl
|
|
275
334
|
xlsx2csv==0.8.4
|
|
276
335
|
# via hdx-python-utilities
|
|
277
|
-
xlsxwriter==3.2.
|
|
336
|
+
xlsxwriter==3.2.3
|
|
278
337
|
# via tableschema-to-template
|
|
279
338
|
xlwt==1.3.0
|
|
280
339
|
# via hdx-python-utilities
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
# file generated by
|
|
1
|
+
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
|
+
|
|
4
|
+
__all__ = ["__version__", "__version_tuple__", "version", "version_tuple"]
|
|
5
|
+
|
|
3
6
|
TYPE_CHECKING = False
|
|
4
7
|
if TYPE_CHECKING:
|
|
5
|
-
from typing import Tuple
|
|
8
|
+
from typing import Tuple
|
|
9
|
+
from typing import Union
|
|
10
|
+
|
|
6
11
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
7
12
|
else:
|
|
8
13
|
VERSION_TUPLE = object
|
|
@@ -12,5 +17,5 @@ __version__: str
|
|
|
12
17
|
__version_tuple__: VERSION_TUPLE
|
|
13
18
|
version_tuple: VERSION_TUPLE
|
|
14
19
|
|
|
15
|
-
__version__ = version = '2.6.
|
|
16
|
-
__version_tuple__ = version_tuple = (2, 6,
|
|
20
|
+
__version__ = version = '2.6.5'
|
|
21
|
+
__version_tuple__ = version_tuple = (2, 6, 5)
|