From 0958420ce00af4f18ffa7eede862d5deddbd2122 Mon Sep 17 00:00:00 2001 From: "Liguros - Gitlab CI/CD [develop]" Date: Sun, 30 Jun 2024 06:03:01 +0000 Subject: Adding metadata --- dev-python/fakeredis/Manifest | 1 + dev-python/fakeredis/fakeredis-2.23.3.ebuild | 89 ++++++++++ dev-python/hypothesis/Manifest | 1 + dev-python/hypothesis/hypothesis-6.104.2.ebuild | 103 ++++++++++++ dev-python/jsondiff/Manifest | 1 + dev-python/jsondiff/jsondiff-2.1.1.ebuild | 41 +++++ dev-python/langdetect/Manifest | 2 - .../files/langdetect-1.0.9-explicit-config.patch | 13 ++ dev-python/langdetect/langdetect-1.0.9.ebuild | 4 +- dev-python/langdetect/metadata.xml | 10 +- dev-python/moto/Manifest | 1 + dev-python/moto/moto-5.0.10.ebuild | 184 +++++++++++++++++++++ dev-python/moto/moto-5.0.9.ebuild | 5 +- dev-python/patsy/patsy-0.5.6-r1.ebuild | 30 ++++ dev-python/patsy/patsy-0.5.6.ebuild | 30 ---- dev-python/sqlglot/Manifest | 2 +- dev-python/sqlglot/sqlglot-25.3.3.ebuild | 121 -------------- dev-python/sqlglot/sqlglot-25.4.1.ebuild | 121 ++++++++++++++ dev-python/time-machine/Manifest | 1 + dev-python/time-machine/time-machine-2.14.2.ebuild | 30 ++++ dev-python/uv/Manifest | 1 + dev-python/uv/uv-0.2.18.ebuild | 103 ++++++++++++ 22 files changed, 730 insertions(+), 164 deletions(-) create mode 100644 dev-python/fakeredis/fakeredis-2.23.3.ebuild create mode 100644 dev-python/hypothesis/hypothesis-6.104.2.ebuild create mode 100644 dev-python/jsondiff/jsondiff-2.1.1.ebuild create mode 100644 dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch create mode 100644 dev-python/moto/moto-5.0.10.ebuild create mode 100644 dev-python/patsy/patsy-0.5.6-r1.ebuild delete mode 100644 dev-python/patsy/patsy-0.5.6.ebuild delete mode 100644 dev-python/sqlglot/sqlglot-25.3.3.ebuild create mode 100644 dev-python/sqlglot/sqlglot-25.4.1.ebuild create mode 100644 dev-python/time-machine/time-machine-2.14.2.ebuild create mode 100644 dev-python/uv/uv-0.2.18.ebuild (limited to 'dev-python') diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest index 11deed055884..bc8e0716f717 100644 --- a/dev-python/fakeredis/Manifest +++ b/dev-python/fakeredis/Manifest @@ -1 +1,2 @@ DIST fakeredis-2.23.2.tar.gz 132956 BLAKE2B 48053663d6260d1153b57893795a97b8e72e21cad57907b006bb8be605cce56c474b1a6bb32d455f034da52bcf391d56139ed0c0bdff7f3c367cc0c365ebca40 SHA512 0994f7c7e955a8cc7b1046f62d37841ea592022f21c34cf1f7d3bb335ba88bda5abf08fa002b4b7c9f0b09a6837a38b1b49cec44a3185e16ab4d4711ad4f95d4 +DIST fakeredis-2.23.3.tar.gz 133000 BLAKE2B 7a7b352fb99541871476f75c0a84550a1e91d4eefa0c6edf060f06483cbcc69091b2fb017dfd0c8a142484324fb71c7b0c54263d7c908d3a12e77fa7907adc8b SHA512 0230774d5d4dba55cf0d8a875eda9992ffb7dd26e0078382756515b38c63eb9664ca293135b49c0c8cddcf0971f7e0e109e131a26150a8e2b2bbc0dc453fb79a diff --git a/dev-python/fakeredis/fakeredis-2.23.3.ebuild b/dev-python/fakeredis/fakeredis-2.23.3.ebuild new file mode 100644 index 000000000000..be1ddff28688 --- /dev/null +++ b/dev-python/fakeredis/fakeredis-2.23.3.ebuild @@ -0,0 +1,89 @@ +# Copyright 2020-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Fake implementation of redis API for testing purposes" +HOMEPAGE=" + https://github.com/cunla/fakeredis-py/ + https://pypi.org/project/fakeredis/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + dev-python/packaging[${PYTHON_USEDEP}] + >=dev-python/redis-4.2[${PYTHON_USEDEP}] + =dev-python/sortedcontainers-2[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/typing-extensions[${PYTHON_USEDEP}] + ' 3.10) +" +BDEPEND=" + test? ( + dev-db/redis + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # also lupa + test/test_aioredis2.py::test_failed_script_error + # TODO + "test/test_fakeredis.py::test_set_get_nx[StrictRedis]" + "test/test_fakeredis.py::test_lpop_count[StrictRedis]" + "test/test_fakeredis.py::test_rpop_count[StrictRedis]" + "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]" + "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis]" + test/test_mixins/test_set_commands.py::test_smismember_wrong_type + # new redis-server? + "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis]" + # json ext + test/test_json/test_json.py + test/test_json/test_json_arr_commands.py + # tdigest ext? + 'test/test_mixins/test_server_commands.py::test_command[FakeStrictRedis]' + ) + local EPYTEST_IGNORE=( + # these tests fail a lot... + test/test_hypothesis.py + ) + local args=( + # tests requiring lupa (lua support) + -k 'not test_eval and not test_lua and not test_script' + ) + # Note: this package is not xdist-friendly + epytest "${args[@]}" +} + +src_test() { + local redis_pid="${T}"/redis.pid + local redis_port=6379 + + einfo "Spawning Redis" + einfo "NOTE: Port ${redis_port} must be free" + "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server" + daemonize yes + pidfile ${redis_pid} + port ${redis_port} + bind 127.0.0.1 + EOF + + # Run the tests + distutils-r1_src_test + + # Clean up afterwards + kill "$(<"${redis_pid}")" || die +} diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index 6b87fefbe956..ca968cf70b05 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -4,3 +4,4 @@ DIST hypothesis-6.103.2.gh.tar.gz 9463865 BLAKE2B d14882642edf53354a6cc8bdf4fb8a DIST hypothesis-6.103.5.gh.tar.gz 9465630 BLAKE2B c85fa7a5fb62db9903fc8c1641b2e58628bab96561239d4df00202475272da817139d7aa3de68ad064bfdb65a8effade71e2f1efb550f1792028b4f79193f572 SHA512 705383cdf6f9e9fc69dd5e967adef13e7712be207f7ff58368d9f03bb2e41009e1853d01db6beb19c8b65f44d33123932e1d2cf1c7a09e31498ba05234c48798 DIST hypothesis-6.104.0.gh.tar.gz 9466479 BLAKE2B 9cf9f28d3ad739a40062369a37ea423df4b10101d43c54e62ab395bbce970f6500aa09f2bebbb55145488a979616407cd7b35f28336d6657e585782de72ebe9b SHA512 5823ed6ac3461bc6612e93cbeb74453cef902add4c8db09a98459ac056c8689382cbb007a035c27f215057a635e74bda7e32835d442e218ccabd6c477bbd3ae8 DIST hypothesis-6.104.1.gh.tar.gz 9466716 BLAKE2B 5ddefd5199bfb22ef8c2c2ae995de5353e7d067f044788f4cd9423cfa4674ff1c5a05760d686f4b4dd5fe9afb2b4ba1cdb38aa7d590575f79d75c460adde63ab SHA512 a9eef39e3cc8fde806cb860f47190239a680c3203ca0228450a7c999ee9618964e201c05a994835e5513f7945b3a5f830fd9fa941d4cfdf4793e5e2fb266df47 +DIST hypothesis-6.104.2.gh.tar.gz 9467131 BLAKE2B 22be74426808bef091351cfb688bdb1fa8ce84f011d3303e7455526f38732bba44c9d82a8162d12e395a192a644f188e7991f7311bebb676c28197131b272a19 SHA512 18b11669bc1d2ba6e7ef0854823c22798fa86e988d951a223235160460fb79b5a5d10caf8fc7aa06ba5996c75ff7e8146725bf1ed3b9b4e169f93cbfa0bf2776 diff --git a/dev-python/hypothesis/hypothesis-6.104.2.ebuild b/dev-python/hypothesis/hypothesis-6.104.2.ebuild new file mode 100644 index 000000000000..6ba8058fdf38 --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.104.2.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +CLI_COMPAT=( pypy3 python3_{10..13} ) +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) +PYTHON_REQ_USE="threads(+),sqlite" + +inherit distutils-r1 optfeature + +TAG=hypothesis-python-${PV} +MY_P=hypothesis-${TAG} +DESCRIPTION="A library for property based testing" +HOMEPAGE=" + https://github.com/HypothesisWorks/hypothesis/ + https://pypi.org/project/hypothesis/ +" +SRC_URI=" + https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz + -> ${P}.gh.tar.gz +" +S="${WORKDIR}/${MY_P}/hypothesis-python" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="cli" + +RDEPEND=" + >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}] + >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}] + ' 3.9 3.10) + cli? ( + $(python_gen_cond_dep ' + dev-python/black[${PYTHON_USEDEP}] + dev-python/click[${PYTHON_USEDEP}] + ' "${CLI_COMPAT[@]}") + ) +" +BDEPEND=" + test? ( + dev-python/pexpect[${PYTHON_USEDEP}] + >=dev-python/pytest-8[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + !! - - marcin.deranek@slonko.net - Marcin Deranek - - - https://github.com/Mimino666/langdetect/issues - - slonko-overlay + + gentoo-guru-overlay \ No newline at end of file diff --git a/dev-python/moto/Manifest b/dev-python/moto/Manifest index c8155e2c40a5..a84d23f6994b 100644 --- a/dev-python/moto/Manifest +++ b/dev-python/moto/Manifest @@ -1,2 +1,3 @@ DIST moto-4.2.14.tar.gz 4933741 BLAKE2B 4c50a808dc8f27cfbcd0ba234d268084ee9a32f36cb5d6af61aacc4ee79f7bf5cf1045147c4642472129eee37bef8bc2c1953d140260d39d7f333ae0f5e5cf95 SHA512 d4079118ed1d2eef9134575e33dc0ed749bff0293d753baa63a630dbb987914b9933445027abdc344bb93fa1d6e483baf8a337a444c9dd055dda50b095ff9937 +DIST moto-5.0.10.tar.gz 5284881 BLAKE2B aba9845e0ffc3e4148f3c3950a4c590d86784c8634e4d7f93eb0a0cc9b725dcaa088a717ce493792c9962a0b9fddf582fe92edd8d0cdbb7e7ec7c4fae05722d1 SHA512 cb805a497bca4b315b6e9d92b9825ad1d4112366fdc4710fa5aa13fcefe4a7bf7c677dea413c9126c900e85acaa00d954b5d55f98493f646981d07fdd13d7108 DIST moto-5.0.9.tar.gz 5256902 BLAKE2B a817d42f05d8b2fa65585ac5f0404f995bb4b6ca7d70305db0d12cc526745c4af1c36ac2067af33d2b688a7076dff7eb6bdad117c38ac54c873e7149a3e8a1bf SHA512 44ac3a91a759105db5bd48950a7b19d3df9612b41b4062eb7df08bb864e99f982731ae973b24a7c5547c0fd47e07a703c21be7260730983abad46d154c9f7742 diff --git a/dev-python/moto/moto-5.0.10.ebuild b/dev-python/moto/moto-5.0.10.ebuild new file mode 100644 index 000000000000..fa160b6144bb --- /dev/null +++ b/dev-python/moto/moto-5.0.10.ebuild @@ -0,0 +1,184 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 pypi toolchain-funcs + +DESCRIPTION="Mock library for boto" +HOMEPAGE=" + https://github.com/getmoto/moto/ + https://pypi.org/project/moto/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/aws-xray-sdk-0.93[${PYTHON_USEDEP}] + dev-python/boto3[${PYTHON_USEDEP}] + >=dev-python/botocore-1.14.0[${PYTHON_USEDEP}] + >=dev-python/cfn-lint-0.40.0[${PYTHON_USEDEP}] + >=dev-python/cryptography-3.3.1[${PYTHON_USEDEP}] + dev-python/cookies[${PYTHON_USEDEP}] + >=dev-python/docker-3.0.0[${PYTHON_USEDEP}] + dev-python/flask[${PYTHON_USEDEP}] + dev-python/flask-cors[${PYTHON_USEDEP}] + >=dev-python/idna-2.5[${PYTHON_USEDEP}] + >=dev-python/jinja-2.10.1[${PYTHON_USEDEP}] + >=dev-python/jsondiff-1.1.2[${PYTHON_USEDEP}] + dev-python/more-itertools[${PYTHON_USEDEP}] + >=dev-python/pyparsing-3.0.7[${PYTHON_USEDEP}] + >=dev-python/openapi-spec-validator-0.5.0[${PYTHON_USEDEP}] + dev-python/pyaml[${PYTHON_USEDEP}] + >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/python-jose[${PYTHON_USEDEP}] + >=dev-python/responses-0.15.0[${PYTHON_USEDEP}] + >=dev-python/requests-2.5[${PYTHON_USEDEP}] + dev-python/sshpubkeys[${PYTHON_USEDEP}] + dev-python/typing-extensions[${PYTHON_USEDEP}] + dev-python/xmltodict[${PYTHON_USEDEP}] + dev-python/werkzeug[${PYTHON_USEDEP}] + dev-python/zipp[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/freezegun[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_test() { + local EPYTEST_DESELECT=( + # TODO + tests/test_firehose/test_firehose_put.py::test_put_record_http_destination + tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination + # broken code (local variable used referenced before definition) + tests/test_appsync/test_appsync_schema.py + # Needs network (or docker?) but not marked as such, bug #807031 + # TODO: report upstream + tests/test_awslambda/test_lambda_layers_invoked.py::test_invoke_local_lambda_layers + tests/test_batch/test_batch_jobs.py::test_cancel_pending_job + tests/test_batch/test_batch_jobs.py::test_cancel_running_job + tests/test_batch/test_batch_jobs.py::test_container_overrides + tests/test_batch/test_batch_jobs.py::test_dependencies + tests/test_batch/test_batch_jobs.py::test_failed_dependencies + tests/test_batch/test_batch_jobs.py::test_failed_job + tests/test_batch/test_batch_jobs.py::test_submit_job_array_size + tests/test_batch/test_batch_jobs.py::test_terminate_job + tests/test_batch/test_batch_jobs.py::test_terminate_nonexisting_job + tests/test_cloudformation/test_cloudformation_custom_resources.py::test_create_custom_lambda_resource__verify_cfnresponse_failed + + tests/test_cloudformation/test_cloudformation_stack_integration.py::test_lambda_function + tests/test_core/test_docker.py::test_docker_is_running_and_available + tests/test_core/test_request_passthrough.py + tests/test_core/test_responses_module.py::TestResponsesMockWithPassThru::test_aws_and_http_requests + tests/test_core/test_responses_module.py::TestResponsesMockWithPassThru::test_http_requests + tests/test_events/test_events_lambdatriggers_integration.py::test_creating_bucket__invokes_lambda + "tests/test_s3/test_s3_lambda_integration.py::test_objectcreated_put__invokes_lambda[match_events0-ObjectCreated:Put]" + "tests/test_s3/test_s3_lambda_integration.py::test_objectcreated_put__invokes_lambda[match_events1-ObjectCreated:Put]" + "tests/test_s3/test_s3_lambda_integration.py::test_objectcreated_put__invokes_lambda[match_events3-ObjectCreated:Put]" + # TODO + tests/test_sqs/test_sqs_integration.py::test_invoke_function_from_sqs_queue + tests/test_sqs/test_sqs_integration.py::test_invoke_function_from_sqs_fifo_queue + # require py_partiql_parser + tests/test_s3/test_s3_select.py + tests/test_dynamodb/test_dynamodb_statements.py + # require joserfc + tests/test_apigateway/test_apigateway.py::test_update_authorizer_configuration + tests/test_apigateway/test_apigateway.py::test_create_authorizer + tests/test_apigateway/test_apigateway.py::test_delete_authorizer + tests/test_cognitoidp/test_cognitoidp_exceptions.py::TestCognitoUserDeleter::test_authenticate_with_signed_out_user + No + tests/test_cognitoidp/test_cognitoidp_exceptions.py::TestCognitoUserPoolDuplidateEmails::test_use_existing_email__when_email_is_ + - + tests/test_cognitoidp/test_cognitoidp_exceptions.py::TestCognitoUserPoolDuplidateEmails::test_use_existing_email__when_username_ + - + tests/test_cognitoidp/test_cognitoidp_replay.py::TestCreateUserPoolWithPredeterminedID::test_different_seed + No + tests/test_cognitoidp/test_cognitoidp_replay.py::TestCreateUserPoolWithPredeterminedID::test_same_seed + tests/test_cognitoidp/test_server.py::test_sign_up_user_without_authentication + tests/test_cognitoidp/test_server.py::test_admin_create_user_without_authentication + # TODO + tests/test_dynamodb/test_dynamodb_import_table.py + # hangs + tests/test_core/test_account_id_resolution.py::TestAccountIdResolution::test_environment_variable_takes_precedence + ) + local EPYTEST_IGNORE=( + # require joserfc + tests/test_cognitoidp/test_cognitoidp.py + # require antlr4 (which doesn't support py3.12) + tests/test_stepfunctions/parser + ) + + # test for 32-bit time_t + "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} -c -x c - -o /dev/null <<-EOF &>/dev/null + #include + int test[sizeof(time_t) >= 8 ? 1 : -1]; + EOF + + if [[ ${?} -eq 0 ]]; then + einfo "time_t is at least 64-bit long" + else + einfo "time_t is smaller than 64 bits, will skip broken tests" + EPYTEST_DESELECT+=( + tests/test_acm/test_acm.py::test_request_certificate_with_optional_arguments + tests/test_s3/test_multiple_accounts_server.py::TestAccountIdResolution::test_with_custom_request_header + tests/test_s3/test_server.py::test_s3_server_post_cors_multiple_origins + ) + EPYTEST_IGNORE+=( + tests/test_route53domains/test_route53domains_domain.py + ) + fi + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x TZ=UTC + + local serial_tests=( + # these tests set up credentials that are needed by the tests below + tests/test_core/test_importorder.py + # these tests apparently rely on some other test setting credentials + # up for them, so they need to be run separately, after the above + tests/test_awslambda_simple/test_lambda_simple.py::test_run_function{,_no_log} + tests/test_dynamodb/exceptions/test_dynamodb_exceptions.py + tests/test_dynamodb/exceptions/test_dynamodb_transactions.py::test_transaction_with_empty_key + tests/test_dynamodb/test_dynamodb.py::test_transact_write_items_failure__return_item + tests/test_dynamodb/test_dynamodb.py::test_transact_write_items_put_conditional_expressions + tests/test_dynamodb/test_dynamodb_update_expressions.py::test_update_different_map_elements_in_single_request + tests/test_events/test_events.py::test_start_replay_send_to_log_group + tests/test_lakeformation/test_resource_tags_integration.py + tests/test_redshiftdata + tests/test_resourcegroupstaggingapi/test_server.py::test_resourcegroupstaggingapi_list + tests/test_s3/test_s3.py::test_delete_bucket_cors + tests/test_s3/test_s3.py::test_delete_objects_percent_encoded + tests/test_s3/test_s3.py::test_delete_versioned_bucket_returns_metadata + tests/test_s3/test_s3_copyobject.py::test_copy_key_boto3_with_args + tests/test_s3/test_s3_copyobject.py::test_copy_key_boto3_with_args__using_multipart + tests/test_s3/test_s3_file_handles.py::TestS3FileHandleClosuresUsingMocks + tests/test_s3/test_s3_list_object_versions.py + tests/test_s3/test_s3_tagging.py + tests/test_s3control/test_s3control_access_points.py::test_delete_access_point + tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_server_can_handle_multiple_services + tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_server_is_reachable + ) + + distutils-r1_src_test +} + +python_test() { + EPYTEST_XDIST= epytest "${serial_tests[@]}" + + local EPYTEST_DESELECT+=( + "${EPYTEST_DESELECT[@]}" + "${serial_tests[@]}" + ) + epytest -m 'not network' +} diff --git a/dev-python/moto/moto-5.0.9.ebuild b/dev-python/moto/moto-5.0.9.ebuild index 2c56976df438..161ba3c00bef 100644 --- a/dev-python/moto/moto-5.0.9.ebuild +++ b/dev-python/moto/moto-5.0.9.ebuild @@ -176,6 +176,9 @@ src_test() { python_test() { EPYTEST_XDIST= epytest "${serial_tests[@]}" - EPYTEST_DESELECT+=( "${serial_tests[@]}" ) + local EPYTEST_DESELECT+=( + "${EPYTEST_DESELECT[@]}" + "${serial_tests[@]}" + ) epytest -m 'not network' } diff --git a/dev-python/patsy/patsy-0.5.6-r1.ebuild b/dev-python/patsy/patsy-0.5.6-r1.ebuild new file mode 100644 index 000000000000..d56dc1e3734b --- /dev/null +++ b/dev-python/patsy/patsy-0.5.6-r1.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Python module to describe statistical models and design matrices" +HOMEPAGE=" + https://patsy.readthedocs.io/en/latest/index.html + https://github.com/pydata/patsy/ + https://pypi.org/project/patsy/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + /dev/null || die - fi -} - -python_test() { - local EPYTEST_IGNORE=( - # Tests require pyspark or duckdb which aren't in the tree. - # Pandas would be a requirement normally, but it gets ignored by proxy. - "tests/dataframe/integration/test_dataframe.py" - "tests/dataframe/integration/test_grouped_data.py" - "tests/dataframe/integration/test_session.py" - "tests/test_executor.py" - "tests/test_optimizer.py" - ) - - # make sure not to use an earlier installed version - local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0) - rm -rf sqlglotrs || die - epytest -} - -pkg_postinst() { - optfeature "simplifying timedelta expressions" dev-python/python-dateutil -} diff --git a/dev-python/sqlglot/sqlglot-25.4.1.ebuild b/dev-python/sqlglot/sqlglot-25.4.1.ebuild new file mode 100644 index 000000000000..c040bab3734b --- /dev/null +++ b/dev-python/sqlglot/sqlglot-25.4.1.ebuild @@ -0,0 +1,121 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +CARGO_OPTIONAL=1 +CRATES=" + autocfg@1.1.0 + bitflags@1.3.2 + cfg-if@1.0.0 + heck@0.4.1 + indoc@2.0.4 + libc@0.2.150 + lock_api@0.4.11 + memoffset@0.9.0 + once_cell@1.19.0 + parking_lot@0.12.1 + parking_lot_core@0.9.9 + proc-macro2@1.0.70 + pyo3-build-config@0.20.0 + pyo3-ffi@0.20.0 + pyo3-macros-backend@0.20.0 + pyo3-macros@0.20.0 + pyo3@0.20.0 + quote@1.0.33 + redox_syscall@0.4.1 + scopeguard@1.2.0 + smallvec@1.11.2 + syn@2.0.41 + target-lexicon@0.12.12 + unicode-ident@1.0.12 + unindent@0.2.3 + windows-targets@0.48.5 + windows_aarch64_gnullvm@0.48.5 + windows_aarch64_msvc@0.48.5 + windows_i686_gnu@0.48.5 + windows_i686_msvc@0.48.5 + windows_x86_64_gnu@0.48.5 + windows_x86_64_gnullvm@0.48.5 + windows_x86_64_msvc@0.48.5 +" + +inherit cargo distutils-r1 pypi optfeature + +DESCRIPTION="An easily customizable SQL parser and transpiler" +HOMEPAGE=" + https://sqlglot.com/ + https://github.com/tobymao/sqlglot/ + https://pypi.org/project/sqlglot/ +" +SRC_URI+=" + native-extensions? ( + ${CARGO_CRATE_URIS} + ) +" + +LICENSE="MIT" +LICENSE+=" native-extensions? (" +# Dependent crate licenses +LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016" +LICENSE+=" )" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+native-extensions" + +BDEPEND=" + native-extensions? ( + ${RUST_DEPEND} + dev-util/maturin[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so" + +src_unpack() { + cargo_src_unpack +} + +src_prepare() { + # remove fragile timing check + sed -i -e '/assertLessEqual(time\.time/d' tests/test_parser.py || die + distutils-r1_src_prepare +} + +python_compile() { + distutils-r1_python_compile + + if use native-extensions; then + local DISTUTILS_USE_PEP517=maturin + cd sqlglotrs || die + distutils-r1_python_compile + cd - >/dev/null || die + fi +} + +python_test() { + local EPYTEST_IGNORE=( + # Tests require pyspark or duckdb which aren't in the tree. + # Pandas would be a requirement normally, but it gets ignored by proxy. + "tests/dataframe/integration/test_dataframe.py" + "tests/dataframe/integration/test_grouped_data.py" + "tests/dataframe/integration/test_session.py" + "tests/test_executor.py" + "tests/test_optimizer.py" + ) + + # make sure not to use an earlier installed version + local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0) + rm -rf sqlglotrs || die + epytest +} + +pkg_postinst() { + optfeature "simplifying timedelta expressions" dev-python/python-dateutil +} diff --git a/dev-python/time-machine/Manifest b/dev-python/time-machine/Manifest index 8c94468934a9..25d87015bdf6 100644 --- a/dev-python/time-machine/Manifest +++ b/dev-python/time-machine/Manifest @@ -1 +1,2 @@ DIST time-machine-2.14.1.gh.tar.gz 29600 BLAKE2B b118e3a2f08f75cc6cd89181a9e533c89bc6e5312a520b2a854fb8aa7ac59f1570e48a85788261f781ef83f9864380318074724f6eadab9cda7a3374b2322e7d SHA512 42a127e2dc5a86e33896010e6d141fc9248fe685d3477ec71ec8a72315914cea99ae4a4d6623a59fd69505d935d2feadcfd831a7fff5617c3f98a93d48652ecf +DIST time-machine-2.14.2.gh.tar.gz 29671 BLAKE2B a53804ab324fcef3d5a387de6451ecd031310eefa17f6d2279fe70f0af3ff8f001ea581ac392c9e72f259dba49ae03eb82279804874a49f6131e5c6cf0131aa0 SHA512 b1996f762aabd161d7f66720265d520ff419a08525da603d805e95e5035cef4576e57d87b6c71a98dddc7cfb33d27e11f7b3d7999ca1be25b81ec0ab502f7012 diff --git a/dev-python/time-machine/time-machine-2.14.2.ebuild b/dev-python/time-machine/time-machine-2.14.2.ebuild new file mode 100644 index 000000000000..60433b312a53 --- /dev/null +++ b/dev-python/time-machine/time-machine-2.14.2.ebuild @@ -0,0 +1,30 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11,12} ) + +inherit distutils-r1 + +DESCRIPTION="Travel through time in your tests" +HOMEPAGE=" + https://github.com/adamchainz/time-machine/ + https://pypi.org/project/time-machine/ +" +SRC_URI=" + https://github.com/adamchainz/time-machine/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/python-dateutil[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index 1e538497aba2..e55b20805495 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -6,3 +6,4 @@ DIST uv-0.2.11.gh.tar.gz 1188556 BLAKE2B 9d22cf0bc202635c0631eb15dc955d19c4c65f1 DIST uv-0.2.15-crates.tar.xz 48793072 BLAKE2B 5988199d887f371f275a6ee40415743823c73a164a3dcf0c2d384e644d75625305e503543aa6027df0aefafcfc434c1a5da7ed9bea5760a3b83f4aef2f097545 SHA512 8ccf76686df81b0b704322e35e22ff95b8bf9aa4b417365e25ca77d50463095975de75959580cf2465404da7abcd88c6bc2aad5c9633110d55d5534ddeac97b2 DIST uv-0.2.15.gh.tar.gz 1227841 BLAKE2B 712b0a2180631ce6c8e1d8e1bbd714efc9f97a31e92c295142826f53b1c740b922f80c05d1ab802eca684220252cad699cbece5679e7cc855e2ca34b45cac2d6 SHA512 c54e78c665f61dc649f11fc0a0d49d422c6f06115453512d98de593736b0789843d1c5431d93e5af1541f02031a4c650b7233d23016d70eab1e384672919068c DIST uv-0.2.17.gh.tar.gz 1289550 BLAKE2B 7353c4dea4d86b6075fe1afc8af433abc11bdb1a05fa554933be802f155943eac0fb6c18116907444ad68dd2aff359009f7a810e30f8c9c5df52be198ab28a27 SHA512 424580e2353fd45909dd5941aed3b217657c70ff389590a4e15339ec6ecf8bb30fe8cf2324fc901bfcfe04de4a61979616d205f26c4ca612122182a602db0810 +DIST uv-0.2.18.gh.tar.gz 1303313 BLAKE2B d14280eb1d92b2c3f43dc272da66d7e3b790f6261377a04e15751243e6c22f4a960ef78c0f52ccbff5412a0ec8acc65b0719fd5abf3cc2455079e0f1e75a5415 SHA512 3ae24e2629253ddf237a10119d20685fddc3d63a66efbc328f2d92174842e8fb6e335f6d3505642276ffc8abd349a25af985bf528ee9d42432271085a69ad018 diff --git a/dev-python/uv/uv-0.2.18.ebuild b/dev-python/uv/uv-0.2.18.ebuild new file mode 100644 index 000000000000..078345dc1fbe --- /dev/null +++ b/dev-python/uv/uv-0.2.18.ebuild @@ -0,0 +1,103 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" +" + +declare -A GIT_CRATES=( + [async_zip]='https://github.com/charliermarsh/rs-async-zip;1dcb40cfe1bf5325a6fd4bfcf9894db40241f585;rs-async-zip-%commit%' + [pubgrub]='https://github.com/astral-sh/pubgrub;b4435e2f3af10dab2336a0345b35dcd622699d06;pubgrub-%commit%' +) + +inherit cargo check-reqs + +CRATE_PV=0.2.15 +DESCRIPTION="A Python package installer and resolver, written in Rust" +HOMEPAGE=" + https://github.com/astral-sh/uv/ + https://pypi.org/project/uv/ +" +# pypi sdist misses scripts/, needed for tests +SRC_URI=" + https://github.com/astral-sh/uv/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + ${CARGO_CRATE_URIS} +" +if [[ ${PKGBUMPING} != ${PVR} ]]; then + SRC_URI+=" + https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-crates.tar.xz + " +fi + +# most of the code +LICENSE="|| ( Apache-2.0 MIT )" +# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below +# Dependent crate licenses +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT + MPL-2.0 Unicode-DFS-2016 +" +# ring crate +LICENSE+=" openssl" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="test" +PROPERTIES="test_network" + +BDEPEND=" + >=virtual/rust-1.77 + test? ( + dev-lang/python:3.8 + dev-lang/python:3.9 + dev-lang/python:3.10 + dev-lang/python:3.11 + dev-lang/python:3.12 + ) +" + +QA_FLAGS_IGNORED="usr/bin/.*" + +check_space() { + local CHECKREQS_DISK_BUILD=3G + use debug && CHECKREQS_DISK_BUILD=9G + check-reqs_pkg_setup +} + +pkg_pretend() { + check_space +} + +pkg_setup() { + check_space +} + +src_prepare() { + default + + # https://github.com/vorot93/tokio-tar/pull/23 + # (fortunately uv already depends on portable-atomic, so we don't + # have to fight Cargo.lock) + cd "${WORKDIR}/cargo_home/gentoo/tokio-tar-0.3.1" || die + eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch" +} + +src_compile() { + cd crates/uv || die + cargo_src_compile +} + +src_test() { + # work around https://github.com/astral-sh/uv/issues/4376 + local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} + + cd crates/uv || die + cargo_src_test --no-fail-fast +} + +src_install() { + cd crates/uv || die + cargo_src_install +} -- cgit v1.3.1