tango-python 1.1.0__tar.gz → 1.1.1__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.
- {tango_python-1.1.0 → tango_python-1.1.1}/CHANGELOG.md +17 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/PKG-INFO +1 -4
- {tango_python-1.1.0 → tango_python-1.1.1}/pyproject.toml +1 -5
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/__init__.py +1 -1
- {tango_python-1.1.0 → tango_python-1.1.1}/.github/workflows/docs-dispatch.yml +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/.github/workflows/lint.yml +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/.github/workflows/publish.yml +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/.github/workflows/test.yml +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/.gitignore +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/LICENSE +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/README.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/API_REFERENCE.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/CLIENT.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/DYNAMIC_MODELS.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/ERRORS.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/PAGINATION.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/SHAPES.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/docs/WEBHOOKS.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/README.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/check_filter_shape_conformance.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/fetch_api_schema.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/generate_schemas_from_api.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/pr_review.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/smoke_api_parity.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/scripts/test_production.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/client.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/exceptions.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/models.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/__init__.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/explicit_schemas.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/factory.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/generator.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/models.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/parser.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/schema.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/shapes/types.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/webhooks/__init__.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/webhooks/cli.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/webhooks/receiver.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/webhooks/signing.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tango/webhooks/simulate.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/__init__.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestAgenciesIntegration.test_get_agency +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestAgenciesIntegration.test_list_agencies +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestBusinessTypesIntegration.test_business_type_field_type_validation +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestBusinessTypesIntegration.test_business_type_parsing_consistency +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestBusinessTypesIntegration.test_list_business_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_combined_filters_work_together +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_contract_cursor_pagination +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_contract_data_object_parsing +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_contract_field_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[keyword-software] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_filter_parameter_mappings[psc_code-R425] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_awarding_agency_filter +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_date_range_filter +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_flat +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_naics_code_filter +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[custom-key,piid,recipient(display_name),total_contract_value,award_date] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[detailed-key,piid,award_date,description,total_contract_value,obligated,fiscal_year,set_aside,recipient(display_name,uei),awarding_office(-),place_of_performa...ce114a3c47e2037aaa3c15d00b7031bd +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_list_contracts_with_shapes[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_new_expiring_filters +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_new_fiscal_year_range_filters +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_new_identifier_filters +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_search_contracts_with_filters +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_search_filters_object_with_new_parameters +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[asc-] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestContractsIntegration.test_sort_and_order_mapped_to_ordering[desc--] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_contracts +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_api_schema_stability_detection_entities +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_date_field_parsing_edge_cases +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_decimal_field_parsing_edge_cases +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_empty_list_responses +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_entity_parsing_with_various_address_formats +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_flattened_responses_with_flat_lists +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_list_field_parsing_consistency +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_parsing_nested_objects_with_missing_data +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_parsing_null_missing_fields_in_contracts +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEdgeCasesIntegration.test_parsing_with_minimal_shape_sparse_data +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_entity_field_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_entity_location_parsing +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_entity_parsing_with_business_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_entity_with_various_identifiers +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_get_entity_by_uei +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_flat +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_search +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[comprehensive-uei,legal_business_name,dba_name,cage_code,business_types,primary_naics,naics_codes,psc_codes,email_address,entity_url,description,capabilities,ke...1603a7d52e211cf2b3bc7d32080238aa +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[custom-uei,legal_business_name,cage_code] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[minimal-uei,legal_business_name,cage_code,business_types] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestEntitiesIntegration.test_list_entities_with_shapes[with_address-uei,legal_business_name,cage_code,business_types,physical_address] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestForecastsIntegration.test_forecast_field_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[custom-id,title,anticipated_award_date] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[detailed-id,source_system,external_id,title,description,anticipated_award_date,fiscal_year,naics_code,status,is_active] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestForecastsIntegration.test_list_forecasts_with_shapes[minimal-id,title,anticipated_award_date,fiscal_year,naics_code,status] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestGrantsIntegration.test_grant_field_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestGrantsIntegration.test_grant_pagination +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[custom-grant_id,title,opportunity_number] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[detailed-grant_id,opportunity_number,title,status(-),agency_code,description,last_updated,cfda_numbers(number,title),applicant_types(-),funding_categories(-)] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestGrantsIntegration.test_list_grants_with_shapes[minimal-grant_id,opportunity_number,title,status(-),agency_code] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestIDVsIntegration.test_get_idv_uses_default_shape +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestIDVsIntegration.test_list_idv_awards_uses_default_shape +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestIDVsIntegration.test_list_idv_child_idvs_uses_default_shape +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestIDVsIntegration.test_list_idv_transactions +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestIDVsIntegration.test_list_idvs_uses_default_shape_and_keyset_params +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_agency_code +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_agency_name_text +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_cio_rating +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_cio_rating_max +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_performance_risk +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_type_of_investment +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_filter_by_updated_time_range +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_funding_and_cio_evaluation_expansions +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_get_itdashboard_investment_by_uii +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_itdashboard_pagination +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_list_itdashboard_investments_with_search +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_list_itdashboard_investments_with_shapes[custom-uii,agency_name,investment_title,updated_time] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_list_itdashboard_investments_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestITDashboardIntegration.test_list_itdashboard_investments_with_shapes[minimal-uii,agency_name,bureau_name,investment_title,type_of_investment,part_of_it_portfolio,updated_time,url] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNaicsIntegration.test_list_naics +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[custom-notice_id,title,solicitation_number] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_list_notices_with_shapes[minimal-notice_id,title,solicitation_number,posted_date] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_notice_field_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_notice_pagination +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNoticesIntegration.test_notice_with_meta_fields +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTAsIntegration.test_get_ota +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTAsIntegration.test_list_otas +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTIDVsIntegration.test_get_otidv +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTIDVsIntegration.test_list_otidvs +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOfficesIntegration.test_get_office +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOfficesIntegration.test_list_offices +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[custom-opportunity_id,title,solicitation_number] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_asid...23b6b4502ddd665b7184afcff6c6d8d9 +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOpportunitiesIntegration.test_list_opportunities_with_shapes[minimal-opportunity_id,title,solicitation_number,response_deadline,active] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOpportunitiesIntegration.test_opportunity_field_types +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOrganizationsIntegration.test_get_organization +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOrganizationsIntegration.test_list_organizations +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_get_protest_by_case_id +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_list_protests_with_filter +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[custom-case_id,title,source_system,outcome] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[default-None] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[minimal-case_id,case_number,title,source_system,outcome,filed_date] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_list_protests_with_shapes[with_dockets-case_id,case_number,title,outcome,filed_date,dockets(docket_number,filed_date,outcome)] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestProtestsIntegration.test_protest_pagination +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestSubawardsIntegration.test_list_subawards +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[custom-key,piid,description] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[minimal-key,piid,award_date,recipient(display_name),description,total_contract_value] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_contracts_dict_access[ultra_minimal-key,piid,recipient(display_name),total_contract_value] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[minimal-uei,legal_business_name,cage_code,business_types] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_entities_dict_access[with_address-uei,legal_business_name,cage_code,business_types,physical_address] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[detailed-notice_id,title,description,solicitation_number,posted_date,naics_code,set_aside,office(-),place_of_performance(-)] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_notices_dict_access[minimal-notice_id,title,solicitation_number,posted_date] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[detailed-opportunity_id,title,description,solicitation_number,response_deadline,first_notice_date,last_notice_date,active,naics_code,psc_code,set_aside,sam_url,office(-),place_of_performance(-)] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestTypeHintsIntegration.test_opportunities_dict_access[minimal-opportunity_id,title,solicitation_number,response_deadline,active] +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestVehiclesIntegration.test_get_vehicle_supports_joiner_and_flat_lists +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestVehiclesIntegration.test_get_vehicle_with_metrics_expansion +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestVehiclesIntegration.test_list_vehicle_awardees_uses_default_shape +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestVehiclesIntegration.test_list_vehicle_orders_uses_default_shape +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestVehiclesIntegration.test_list_vehicles_uses_default_shape_and_search +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestVehiclesIntegration.test_list_vehicles_with_ordering +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/conftest.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/README.md +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/__init__.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/conftest.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_agencies_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_contracts_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_edge_cases_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_entities_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_forecasts_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_grants_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_itdashboard_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_naics_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_notices_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_offices_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_opportunities_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_organizations_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_otas_otidvs_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_protests_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_reference_data_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_subawards_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_vehicles_idvs_integration.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/validation.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/production/__init__.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/production/conftest.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/production/test_production_smoke.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_api_parity.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_client.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_models.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_shapes.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_webhooks_cli.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_webhooks_receiver.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_webhooks_signing.py +0 -0
- {tango_python-1.1.0 → tango_python-1.1.1}/tests/test_webhooks_simulate.py +0 -0
|
@@ -7,6 +7,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.1.1] - 2026-05-29
|
|
11
|
+
|
|
12
|
+
### Removed
|
|
13
|
+
- The `notebooks` optional extra (`jupyter`, `ipykernel`). It only powered local
|
|
14
|
+
editing of `docs/quick_start.ipynb`, which still renders on GitHub/PyPI without
|
|
15
|
+
it, and its transitive tree (jupyter-server, jupyterlab, nbconvert, tornado,
|
|
16
|
+
etc.) accounted for the bulk of the repo's open Dependabot alerts. Contributors
|
|
17
|
+
who want to re-run the notebook can `pip install jupyter` directly. The shipped
|
|
18
|
+
SDK is unaffected — its only runtime dependency remains `httpx`.
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
- Refreshed the dev/test dependency lock to clear the remaining Dependabot
|
|
22
|
+
alerts (patched `idna`, `pygments`, `pytest`, `python-dotenv`; dropped
|
|
23
|
+
`urllib3`/`requests` transitives). Dev-tool majors moved forward
|
|
24
|
+
(`mypy` 1.18→2.1, `pytest` 8→9, `ruff` 0.14→0.15, `vcrpy` 7→8); all lint,
|
|
25
|
+
type, and test gates stay green. No change to the shipped SDK's runtime deps.
|
|
26
|
+
|
|
10
27
|
## [1.1.0] - 2026-05-29
|
|
11
28
|
|
|
12
29
|
### Fixed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tango-python
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.1
|
|
4
4
|
Summary: Python SDK for the Tango API
|
|
5
5
|
Project-URL: Homepage, https://github.com/makegov/tango-python
|
|
6
6
|
Project-URL: Documentation, https://docs.makegov.com/tango-python
|
|
@@ -48,9 +48,6 @@ Requires-Dist: pytest>=8.0; extra == 'dev'
|
|
|
48
48
|
Requires-Dist: python-dotenv>=1.0.0; extra == 'dev'
|
|
49
49
|
Requires-Dist: pyyaml>=6.0; extra == 'dev'
|
|
50
50
|
Requires-Dist: ruff>=0.3.0; extra == 'dev'
|
|
51
|
-
Provides-Extra: notebooks
|
|
52
|
-
Requires-Dist: ipykernel>=6.25.0; extra == 'notebooks'
|
|
53
|
-
Requires-Dist: jupyter>=1.0.0; extra == 'notebooks'
|
|
54
51
|
Provides-Extra: webhooks
|
|
55
52
|
Requires-Dist: click>=8.1; extra == 'webhooks'
|
|
56
53
|
Description-Content-Type: text/markdown
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tango-python"
|
|
7
|
-
version = "1.1.
|
|
7
|
+
version = "1.1.1"
|
|
8
8
|
description = "Python SDK for the Tango API"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.12"
|
|
@@ -37,10 +37,6 @@ dev = [
|
|
|
37
37
|
"python-dotenv>=1.0.0",
|
|
38
38
|
"pyyaml>=6.0",
|
|
39
39
|
]
|
|
40
|
-
notebooks = [
|
|
41
|
-
"jupyter>=1.0.0",
|
|
42
|
-
"ipykernel>=6.25.0",
|
|
43
|
-
]
|
|
44
40
|
webhooks = [
|
|
45
41
|
"click>=8.1",
|
|
46
42
|
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestAgenciesIntegration.test_get_agency
RENAMED
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestAgenciesIntegration.test_list_agencies
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestNaicsIntegration.test_list_naics
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTAsIntegration.test_list_otas
RENAMED
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTIDVsIntegration.test_get_otidv
RENAMED
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOTIDVsIntegration.test_list_otidvs
RENAMED
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOfficesIntegration.test_get_office
RENAMED
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/cassettes/TestOfficesIntegration.test_list_offices
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_opportunities_integration.py
RENAMED
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_organizations_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_reference_data_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
{tango_python-1.1.0 → tango_python-1.1.1}/tests/integration/test_vehicles_idvs_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|