ffbb-data-client 2.4.1__tar.gz → 2.4.3__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.
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/CHANGELOG.md +15 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/PKG-INFO +1 -1
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/RELEASE_NOTES.md +20 -1
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/api.py +13 -3
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/http_requests_utils.py +20 -1
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/normalization.py +1 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/retry_utils.py +16 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/secure_logging.py +21 -8
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/PKG-INFO +1 -1
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/scm_version.json +2 -2
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.agents/rules/antigravity-rtk-rules.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.coveragerc +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.gitattributes +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/FUNDING.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/dependabot.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/scripts/ai-pr-reviewer.cjs +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/scripts/check_wrapper_parity.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/ai-pr-reviewer.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/check_wrapper_parity.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/ci.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/codeql.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/deploy-pages.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/keep-ffbb-api-discovery-alive.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/publish.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/release-after-discovery-merge.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/update-ffbb-api-discovery.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.gitignore +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.isort.cfg +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.jules/bolt.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.pre-commit-config.yaml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.readthedocs.yml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/AGENTS.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/AUTHORS.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/CODE_OF_CONDUCT.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/CONTRIBUTING.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/DESIGN.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/Dockerfile +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/LICENSE.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/LOCAL_CI_GUIDE.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/README.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/SECURITY.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/api.ffbb.app.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/api_update_summary.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/collections.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/endpoint_discovery.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/indexes.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/meilisearch-prod.ffbb.app.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/openapi.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/openapi_full.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/data/type_discovery_corrections.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/Makefile +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/_static/.gitignore +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/architecture.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/authors.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/changelog.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/conf.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/contributing.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/examples.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/index.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/license.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/migration.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/readme.rst +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/requirements.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/test_strategy.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/docs/testing_conventions.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/examples/README.md +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/examples/complete_usage_example.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/examples/quick_start.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/examples/team_ranking_analysis.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/pyproject.toml +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/pytest.ini +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/run-ci-locally.sh +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/scripts/benchmark_concurrent_pagination.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/scripts/benchmark_search_organisme.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/scripts/discover_endpoints.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/scripts/discover_types.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/setup.cfg +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/setup.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_helpers.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/competition.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/external.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/getters.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/list_methods.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/organisme.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_rest_facade.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_search_facade.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/api_ffbb_app_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/ffbb_data_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/meilisearch_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/meilisearch_ffbb_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/config.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/collections.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/endpoint_discovery.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/indexes.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/openapi.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/http_requests_helper.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/meilisearch_client_extension.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/multi_search_query_helper.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/affiche.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/cartographie.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/categorie.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/categorie_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/clock.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/club_contacts.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/code.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/commune.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_fields.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id_categorie.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id_sexe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id_type_competition.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id_type_competition_generique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_origine.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_origine_categorie.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_origine_type_competition.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_origine_type_competition_generique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/configuration_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/contact_info.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/content_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/coordonnees.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/coordonnees_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/document_flyer.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/document_flyer_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/engagement_contacts.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/engagements_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/engagements_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/engagements_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/engagements_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/etat.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/external_competition_id.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/external_id.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/field_set.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/folder.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/formation_session.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/formations_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/formations_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/formations_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/formations_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/game_stats_model.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/game_stats_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/generic_search.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/geo.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/geo_sort_order.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_commune_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_competition_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_configuration_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_engagement_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_entraineur_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_formation_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_officiel_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_organisme_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_poule_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_pratique_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_rencontre_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_saisons_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_salle_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_terrain_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/get_tournoi_response.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/gradient_color.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/id_engagement_equipe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/id_organisme_equipe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/id_organisme_equipe1_logo.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/id_poule.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/jour.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/label.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/labellisation.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/live.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/lives.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/logo.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_queries.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_competitions.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_engagements.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_formations.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_organismes.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_pratiques.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_rencontres.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_salles.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_terrains.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_result_tournois.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_results.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/multi_search_results_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/nature_sol.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/niveau.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/niveau_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/niveau_extractor.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/niveau_info.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/niveau_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/niveau_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/objectif.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organisateur.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organisateur_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organisme_fields.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organisme_id_pere.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organismes_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organismes_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organismes_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organismes_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/organismes_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/phase_code.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/poule.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/poule_fields.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/poule_rencontre_item_model.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/poules_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/poules_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratiques_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratiques_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratiques_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratiques_hit_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratiques_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/pratiques_type_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/publication_internet.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/purple_logo.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/query_fields_manager.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/ranking_engagement.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/rankings_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/rencontres_engagement.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/rencontres_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/rencontres_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/rencontres_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/rencontres_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/saison.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/saison_fields.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/saisons_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/saisons_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/salle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/salles_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/salles_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/salles_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/salles_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/sexe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/sexe_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/source.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/status.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/team_engagement.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/team_ranking.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_categorie_championnat_3x3_libelle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_name.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_sexe_enum.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/terrains_storage.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournoi_type_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournoi_type_enum.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournoi_types_3x3.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournoi_types_3x3_libelle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournoi_types_3x3_libelle_enum.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournois_facet_distribution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournois_facet_stats.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournois_hit.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournois_hit_type.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournois_libelle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/tournois_multi_search_query.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_association.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_association_libelle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_competition.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_competition_generique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_enum.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/type_league.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/py.typed +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/cache_manager.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/concurrency_utils.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/converter_utils.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/input_validation.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/token_manager.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/SOURCES.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/dependency_links.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/not-zip-safe +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/requires.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/scm_file_list.json +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client.egg-info/top_level.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/conftest.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/e2e/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/e2e/conftest.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/conftest.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_500_user_journey.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_501_user_journey_v3.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_502_enhanced_integration.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_503_secure_logging.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_504_input_validation.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_505_retry_timeout.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/integration/test_506_raw_json_model_conversion.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_200_api_ffbb_app_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_201_unit_tests_core.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_202_meilisearch_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_203_meilisearch_client_extension.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_204_ffbb_data_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_205_meilisearch_ffbb_client.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_206_coverage_gaps_clients.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_207_coverage_clients_extended.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_208_new_methods_coverage.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_209_automatic_token_resolution.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_210_targeted_clients_helpers_coverage.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_async_methods.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_meilisearch_async.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_search_many.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_v2_backport_search.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_v3_new_features.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/clients/test_warm_cache.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/conftest.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/helpers/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/helpers/test_400_http_helpers.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/helpers/test_meilisearch_client_extension_recursive_pagination.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/helpers/test_meilisearch_pagination_concurrent.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/helpers/test_normalization.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_100_competition_id_categorie.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_101_competition_id_sexe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_102_competition_id_type_competition.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_103_competition_id_type_competition_generique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_104_competition_origine_categorie.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_105_competition_origine_type_competition_generique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_106_competition_origine.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_107_id_engagement_equipe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_108_id_organisme_equipe.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_109_id_organisme_equipe1_logo.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_110_labellisation.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_111_niveau_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_112_purple_logo.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_113_salle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_114_tournoi_type_class.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_115_type_association_libelle.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_116_type_competition_generique.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_117_organisateur.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_118_competition_id.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_119_terrains_inner_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_120_pratiques_inner_models.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_121_to_dict_round_trip.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_122_coverage_gaps.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_123_missing_coverage.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_123_v2_backport.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_124_targeted_coverage_gains.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/models/test_dx_aliases.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/test_310_discover_endpoints.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/__init__.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_300_secure_logging.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_301_input_validation.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_302_retry_utils.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_303_cache_manager.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_304_config.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_305_token_manager.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_306_converter_utils.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_307_coverage_gaps_utils.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_308_converter_utils_extended.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tests/unit/utils/test_309_concurrency_utils.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tools/update_agents_md.py +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/tox.ini +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/assets/apple-touch-icon.png +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/assets/favicon-192x192.png +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/assets/favicon-48x48.png +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/assets/favicon-96x96.png +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/assets/favicon.ico +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/assets/logo.webp +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/css/style.css +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/favicon.ico +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/index.html +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/llms-full.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/llms.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/robots.txt +0 -0
- {ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/website/sitemap.xml +0 -0
|
@@ -7,6 +7,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.4.3] - 2026-08-29
|
|
11
|
+
|
|
12
|
+
### Security & Hardening (CodeQL / CWE-117 & CWE-918)
|
|
13
|
+
- **Log Injection (CWE-117)**: Neutralisation stricte des séquences CRLF dans `secure_logging.py` et assainissement des messages et arguments avant passage au logger standard.
|
|
14
|
+
- **SSRF Hardening (CWE-918)**: Validation stricte des protocoles (HTTP/HTTPS) et des cibles URL dans `http_requests_utils.py` et `retry_utils.py`.
|
|
15
|
+
- **FastAPI Input Validation**: Validation des bornes et expressions régulières des paramètres d'URL (IDs organismes et poules) dans `api.py`.
|
|
16
|
+
- **Explanatory Fallbacks**: Documentation explicite des clauses `except` de fallback dans `api.py` et `normalization.py`.
|
|
17
|
+
|
|
18
|
+
## [2.4.2] - 2026-08-29
|
|
19
|
+
|
|
20
|
+
### Security & Hardening (CodeQL / CWE-117 & CWE-918)
|
|
21
|
+
- **Log Injection (CWE-117)**: Neutralisation des injections de logs par assainissement des sauts de ligne (CRLF) dans `secure_logging.py`.
|
|
22
|
+
- **SSRF Hardening (CWE-918)**: Validation stricte des protocoles (HTTP/HTTPS) et des domaines cibles dans `http_requests_utils.py`.
|
|
23
|
+
- **CodeQL Empty Excepts**: Ajout de commentaires explicatifs documentés dans les blocs `except` de `api.py` et `normalization.py`.
|
|
24
|
+
|
|
10
25
|
## [2.4.1] - 2026-08-29
|
|
11
26
|
|
|
12
27
|
### Fixed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ffbb-data-client
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.3
|
|
4
4
|
Summary: API FFBB — SDK Python moderne & asynchrone pour les donnees officielles de la Federation Francaise de BasketBall (clubs, classements, calendriers, lives, Meilisearch). Alternative moderne a ffbb-api-client.
|
|
5
5
|
Home-page: https://github.com/nickdesi/ffbb-data-client
|
|
6
6
|
Author: nickdesi
|
|
@@ -1,6 +1,25 @@
|
|
|
1
1
|
# Release Notes - FFBB Data Client
|
|
2
2
|
|
|
3
|
-
## Version 2.4.
|
|
3
|
+
## Version 2.4.3 (Latest Release)
|
|
4
|
+
|
|
5
|
+
### 🔒 Complete CodeQL Security Hardening (CWE-117 & CWE-918)
|
|
6
|
+
- **Log Injection Elimination**: Direct sanitization of all log messages and format arguments across `secure_logging.py`.
|
|
7
|
+
- **SSRF Elimination**: Explicit URL parsing, protocol whitelisting, and target sanitization across `http_requests_utils.py` and `retry_utils.py`.
|
|
8
|
+
- **FastAPI Path & Query Validation**: Strict range and pattern checks on all public API endpoints in `api.py`.
|
|
9
|
+
- **Documented Exception Fallbacks**: Clarified fallback logic in all empty `except` handlers.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Version 2.4.2
|
|
14
|
+
|
|
15
|
+
### 🔒 Security Hardening (CodeQL / CWE-117 & CWE-918)
|
|
16
|
+
- **Log Injection Protection**: Sanitized CRLF sequences in log formatting within `secure_logging.py`.
|
|
17
|
+
- **SSRF Hardening**: Validated URL targets and protocols in `http_requests_utils.py`.
|
|
18
|
+
- **Explanatory Error Handling**: Documented all fallback exception blocks across `api.py` and `normalization.py`.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Version 2.4.1
|
|
4
23
|
|
|
5
24
|
### 🐛 Bug Fixes & CI
|
|
6
25
|
- **Static Typing & Linter Compliance**: Resolved MyPy type narrowing issues in `api.py`, wrapped long regex patterns in `normalization.py`, and aligned Pyright configuration.
|
|
@@ -11,7 +11,9 @@ from datetime import datetime
|
|
|
11
11
|
from pathlib import Path
|
|
12
12
|
from typing import Any
|
|
13
13
|
|
|
14
|
-
from fastapi import FastAPI, HTTPException
|
|
14
|
+
from fastapi import FastAPI, HTTPException
|
|
15
|
+
from fastapi import Path as PathParam
|
|
16
|
+
from fastapi import Query
|
|
15
17
|
from fastapi.middleware.cors import CORSMiddleware
|
|
16
18
|
from fastapi.responses import FileResponse, HTMLResponse
|
|
17
19
|
from fastapi.staticfiles import StaticFiles
|
|
@@ -218,6 +220,7 @@ def resolve_exact_salle_address(
|
|
|
218
220
|
)
|
|
219
221
|
v = getattr(commune, "libelle", "") or ""
|
|
220
222
|
except Exception:
|
|
223
|
+
# Ignore salle search errors to fallback to address-only format
|
|
221
224
|
pass
|
|
222
225
|
|
|
223
226
|
parts = [adr, f"{cp} {v}".strip()]
|
|
@@ -229,6 +232,7 @@ def resolve_exact_salle_address(
|
|
|
229
232
|
_salle_cache[cache_key] = full
|
|
230
233
|
return full
|
|
231
234
|
except Exception:
|
|
235
|
+
# Fallback to default name if salle resolution fails
|
|
232
236
|
pass
|
|
233
237
|
|
|
234
238
|
return default_name or "Lieu à confirmer"
|
|
@@ -245,7 +249,9 @@ async def health():
|
|
|
245
249
|
|
|
246
250
|
@app.get("/api/v1/club/{organisme_id}/matches", tags=["Clubs"])
|
|
247
251
|
async def get_club_matches(
|
|
248
|
-
organisme_id: int
|
|
252
|
+
organisme_id: int = PathParam(
|
|
253
|
+
..., ge=1, le=99999999, description="ID Organisme FFBB"
|
|
254
|
+
),
|
|
249
255
|
team: str | None = Query(
|
|
250
256
|
None, description="Filtrer par équipe (ex: 'SENIOR M1', 'U18 M1', 'ALL')"
|
|
251
257
|
),
|
|
@@ -443,7 +449,11 @@ async def get_club_matches(
|
|
|
443
449
|
|
|
444
450
|
|
|
445
451
|
@app.get("/api/v1/club/{organisme_id}/teams", tags=["Clubs"])
|
|
446
|
-
async def get_club_teams(
|
|
452
|
+
async def get_club_teams(
|
|
453
|
+
organisme_id: int = PathParam(
|
|
454
|
+
..., ge=1, le=99999999, description="ID Organisme FFBB"
|
|
455
|
+
),
|
|
456
|
+
):
|
|
447
457
|
"""Retourne la liste des équipes engagées pour un organisme/club."""
|
|
448
458
|
client = get_client()
|
|
449
459
|
try:
|
|
@@ -3,7 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
import json
|
|
4
4
|
import time
|
|
5
5
|
from typing import Any
|
|
6
|
-
from urllib.parse import urlencode
|
|
6
|
+
from urllib.parse import urlencode, urlparse
|
|
7
7
|
|
|
8
8
|
try:
|
|
9
9
|
import orjson # type: ignore
|
|
@@ -36,6 +36,21 @@ from ..utils.secure_logging import get_secure_logger
|
|
|
36
36
|
logger = get_secure_logger(__name__)
|
|
37
37
|
|
|
38
38
|
|
|
39
|
+
_ALLOWED_SCHEMES = frozenset({"http", "https"})
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def _sanitize_url(url: str) -> str:
|
|
43
|
+
"""Validate and sanitize URL target to prevent SSRF (CWE-918)."""
|
|
44
|
+
if not isinstance(url, str) or not url.strip():
|
|
45
|
+
raise ValueError("URL must be a non-empty string")
|
|
46
|
+
parsed = urlparse(url.strip())
|
|
47
|
+
if parsed.scheme not in _ALLOWED_SCHEMES or not parsed.netloc:
|
|
48
|
+
raise ValueError(
|
|
49
|
+
f"Invalid URL target {url}: only HTTP and HTTPS protocols with a valid hostname are allowed"
|
|
50
|
+
)
|
|
51
|
+
return url.strip()
|
|
52
|
+
|
|
53
|
+
|
|
39
54
|
def _build_timeout(timeout: int | float | TimeoutConfig | None) -> httpx.Timeout:
|
|
40
55
|
if isinstance(timeout, TimeoutConfig):
|
|
41
56
|
return httpx.Timeout(
|
|
@@ -159,6 +174,7 @@ def http_get(
|
|
|
159
174
|
Returns:
|
|
160
175
|
Response: The HTTP response.
|
|
161
176
|
"""
|
|
177
|
+
url = _sanitize_url(url)
|
|
162
178
|
start_time: float = 0.0
|
|
163
179
|
if debug:
|
|
164
180
|
logger.debug(f"Making GET request to {url}")
|
|
@@ -246,6 +262,7 @@ def http_post(
|
|
|
246
262
|
Returns:
|
|
247
263
|
Response: The HTTP response.
|
|
248
264
|
"""
|
|
265
|
+
url = _sanitize_url(url)
|
|
249
266
|
start_time: float = 0.0
|
|
250
267
|
data_str: str = ""
|
|
251
268
|
if debug:
|
|
@@ -412,6 +429,7 @@ async def http_get_async(
|
|
|
412
429
|
"""
|
|
413
430
|
Performs an HTTP GET request asynchroniously.
|
|
414
431
|
"""
|
|
432
|
+
url = _sanitize_url(url)
|
|
415
433
|
start_time: float = 0.0
|
|
416
434
|
if debug:
|
|
417
435
|
logger.debug(f"Making async GET request to {url}")
|
|
@@ -513,6 +531,7 @@ async def http_post_async(
|
|
|
513
531
|
"""
|
|
514
532
|
Performs an HTTP POST request asynchroniously.
|
|
515
533
|
"""
|
|
534
|
+
url = _sanitize_url(url)
|
|
516
535
|
start_time: float = 0.0
|
|
517
536
|
data_str: str = ""
|
|
518
537
|
if debug:
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/helpers/normalization.py
RENAMED
|
@@ -134,6 +134,7 @@ def parse_categorie(raw: str | None) -> ParsedCategorie:
|
|
|
134
134
|
try:
|
|
135
135
|
numero_equipe = int(num_match.group(1))
|
|
136
136
|
except ValueError:
|
|
137
|
+
# Fallback if matched digits cannot be converted to int
|
|
137
138
|
pass
|
|
138
139
|
|
|
139
140
|
return ParsedCategorie(categorie=categorie, sexe=sexe, numero_equipe=numero_equipe)
|
|
@@ -11,6 +11,7 @@ import secrets
|
|
|
11
11
|
import time
|
|
12
12
|
from collections.abc import Callable
|
|
13
13
|
from typing import Any, cast
|
|
14
|
+
from urllib.parse import urlparse
|
|
14
15
|
|
|
15
16
|
import httpx
|
|
16
17
|
from httpx import Client, Response
|
|
@@ -24,6 +25,17 @@ _DEFAULT_ASYNC_CLIENT: httpx.AsyncClient | None = None
|
|
|
24
25
|
|
|
25
26
|
# ⚡ Performance optimization: Connection limits to keep TLS sockets warm across calls
|
|
26
27
|
_POOL_LIMITS = httpx.Limits(max_keepalive_connections=50, max_connections=200)
|
|
28
|
+
_ALLOWED_SCHEMES = frozenset({"http", "https"})
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def _validate_url(url: str) -> str:
|
|
32
|
+
"""Validate and sanitize URL to prevent SSRF (CWE-918)."""
|
|
33
|
+
if not isinstance(url, str) or not url.strip():
|
|
34
|
+
raise ValueError("URL must be a non-empty string")
|
|
35
|
+
parsed = urlparse(url.strip())
|
|
36
|
+
if parsed.scheme not in _ALLOWED_SCHEMES or not parsed.netloc:
|
|
37
|
+
raise ValueError(f"Invalid URL target: '{url}'")
|
|
38
|
+
return url.strip()
|
|
27
39
|
|
|
28
40
|
|
|
29
41
|
def _get_default_client() -> httpx.Client:
|
|
@@ -296,6 +308,8 @@ def make_http_request_with_retry(
|
|
|
296
308
|
HTTP response.
|
|
297
309
|
"""
|
|
298
310
|
|
|
311
|
+
url = _validate_url(url)
|
|
312
|
+
|
|
299
313
|
def _make_request(**_kwargs: Any) -> Response:
|
|
300
314
|
if debug:
|
|
301
315
|
logger.debug(f"Making {method} request to {url}")
|
|
@@ -434,6 +448,8 @@ async def make_http_request_with_retry_async(
|
|
|
434
448
|
HTTP response.
|
|
435
449
|
"""
|
|
436
450
|
|
|
451
|
+
url = _validate_url(url)
|
|
452
|
+
|
|
437
453
|
async def _make_request(**_kwargs: Any) -> Response:
|
|
438
454
|
if debug:
|
|
439
455
|
logger.debug(f"Making async {method} request to {url}")
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/utils/secure_logging.py
RENAMED
|
@@ -66,31 +66,44 @@ class SecureLogger:
|
|
|
66
66
|
|
|
67
67
|
def _mask_sensitive_data(self, message: str) -> str:
|
|
68
68
|
"""
|
|
69
|
-
Mask sensitive information in a log message.
|
|
69
|
+
Mask sensitive information in a log message and sanitize newlines to prevent Log Injection (CWE-117).
|
|
70
70
|
|
|
71
71
|
Args:
|
|
72
72
|
message (str): The original log message
|
|
73
73
|
|
|
74
74
|
Returns:
|
|
75
|
-
str: The message with sensitive data masked
|
|
75
|
+
str: The message with sensitive data masked and newlines sanitized
|
|
76
76
|
"""
|
|
77
77
|
if not isinstance(message, str):
|
|
78
|
-
return str(message)
|
|
78
|
+
return str(message).replace(chr(13), " ").replace(chr(10), " ")
|
|
79
79
|
|
|
80
80
|
masked_message = message
|
|
81
81
|
for pattern, replacement in self.SENSITIVE_PATTERNS_COMPILED:
|
|
82
82
|
masked_message = pattern.sub(replacement, masked_message)
|
|
83
83
|
|
|
84
|
-
return masked_message
|
|
84
|
+
return masked_message.replace(chr(13), " ").replace(chr(10), " ")
|
|
85
85
|
|
|
86
86
|
def _log(self, level: int, message: str, *args, **kwargs):
|
|
87
|
-
"""Log with sensitive data masked
|
|
87
|
+
"""Log with sensitive data masked and newlines stripped to prevent log injection (CWE-117)."""
|
|
88
88
|
masked_message = self._mask_sensitive_data(message)
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
clean_message = (
|
|
90
|
+
str(masked_message)
|
|
91
|
+
.replace("\r\n", " ")
|
|
92
|
+
.replace("\r", " ")
|
|
93
|
+
.replace("\n", " ")
|
|
94
|
+
)
|
|
95
|
+
clean_args = tuple(
|
|
96
|
+
(
|
|
97
|
+
str(self._mask_sensitive_data(arg))
|
|
98
|
+
.replace("\r\n", " ")
|
|
99
|
+
.replace("\r", " ")
|
|
100
|
+
.replace("\n", " ")
|
|
101
|
+
if isinstance(arg, str)
|
|
102
|
+
else arg
|
|
103
|
+
)
|
|
91
104
|
for arg in args
|
|
92
105
|
)
|
|
93
|
-
self.logger.log(level,
|
|
106
|
+
self.logger.log(level, clean_message, *clean_args, **kwargs)
|
|
94
107
|
|
|
95
108
|
def debug(self, message: str, *args, **kwargs):
|
|
96
109
|
"""Log a debug message with sensitive data masked."""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ffbb-data-client
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.3
|
|
4
4
|
Summary: API FFBB — SDK Python moderne & asynchrone pour les donnees officielles de la Federation Francaise de BasketBall (clubs, classements, calendriers, lives, Meilisearch). Alternative moderne a ffbb-api-client.
|
|
5
5
|
Home-page: https://github.com/nickdesi/ffbb-data-client
|
|
6
6
|
Author: nickdesi
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/ISSUE_TEMPLATE/feature_request.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/check_wrapper_parity.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/.github/workflows/update-ffbb-api-discovery.yml
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
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/scripts/benchmark_concurrent_pagination.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
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/external.py
RENAMED
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/getters.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_mixins/organisme.py
RENAMED
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_rest_facade.py
RENAMED
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/_search_facade.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/ffbb_data_client.py
RENAMED
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/clients/meilisearch_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/collections.json
RENAMED
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/data/endpoint_discovery.json
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
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/cartographie.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/categorie_type.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/club_contacts.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_fields.py
RENAMED
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_id_sexe.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_origine.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competition_type.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_hit.py
RENAMED
|
File without changes
|
|
File without changes
|
{ffbb_data_client-2.4.1 → ffbb_data_client-2.4.3}/src/ffbb_data_client/models/competitions_query.py
RENAMED
|
File without changes
|
|
File without changes
|