Loading pkgs/development/python-modules/moto/default.nix +73 −95 Original line number Diff line number Diff line { lib , stdenv , buildPythonPackage , fetchPypi , pythonOlder # build # build-system , setuptools # runtime , aws-xray-sdk # dependencies , boto3 , botocore , cfn-lint , cryptography , jinja2 , python-dateutil , requests , responses , werkzeug , xmltodict # optional-dependencies , aws-xray-sdk , cfn-lint , docker , ecdsa , flask , flask-cors , graphql-core , idna , jinja2 , jsondiff , multipart , openapi-spec-validator , py-partiql-parser , pyparsing , python-dateutil , python-jose , pyyaml , requests , responses , sshpubkeys , werkzeug , xmltodict # tests , freezegun , py-partiql-parser , pytestCheckHook , pytest-xdist , sure }: buildPythonPackage rec { pname = "moto"; version = "4.2.2"; format = "pyproject"; version = "4.2.6"; pyproject = true; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; hash = "sha256-7jTEw/U5ANlTGAlGkgyduhJ6SD4u1A5tv5PUri52Dnw="; hash = "sha256-zgpV1+dWxZpaQ5LHCXqlylPgCqLdP3AACTNWvhXnrvk="; }; nativeBuildInputs = [ Loading @@ -56,114 +57,91 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ aws-xray-sdk boto3 botocore cfn-lint cryptography requests xmltodict werkzeug python-dateutil responses jinja2 ]; passthru.optional-dependencies = { # non-exhaustive list of extras, that was cobbled together for testing all = [ aws-xray-sdk cfn-lint docker ecdsa flask flask-cors graphql-core idna jinja2 jsondiff multipart openapi-spec-validator py-partiql-parser pyparsing python-dateutil python-jose pyyaml requests responses setuptools sshpubkeys werkzeug xmltodict ]; ] ++ python-jose.optional-dependencies.cryptography; }; __darwinAllowLocalNetworking = true; nativeCheckInputs = [ freezegun py-partiql-parser pytestCheckHook sure ]; pytest-xdist ] ++ passthru.optional-dependencies.all; pytestFlagsArray = [ # Disable tests that try to access the network "--deselect=tests/test_cloudformation/test_cloudformation_custom_resources.py::test_create_custom_lambda_resource__verify_cfnresponse_failed" "--deselect=tests/test_cloudformation/test_server.py::test_cloudformation_server_get" "--deselect=tests/test_core/test_decorator_calls.py::test_context_manager" "--deselect=tests/test_core/test_decorator_calls.py::test_decorator_start_and_stop" "--deselect=tests/test_core/test_request_mocking.py::test_passthrough_requests" "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination" "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_http_destination" "--deselect=tests/test_logs/test_integration.py::test_put_subscription_filter_with_lambda" "--deselect=tests/test_sqs/test_integration.py::test_invoke_function_from_sqs_exception" "--deselect=tests/test_sqs/test_sqs_integration.py::test_invoke_function_from_sqs_exception" "--deselect=tests/test_stepfunctions/test_stepfunctions.py::test_state_machine_creation_fails_with_invalid_names" "--deselect=tests/test_stepfunctions/test_stepfunctions.py::test_state_machine_list_executions_with_pagination" "--deselect=tests/test_iotdata/test_iotdata.py::test_update" "--deselect=tests/test_iotdata/test_iotdata.py::test_basic" "--deselect=tests/test_iotdata/test_iotdata.py::test_delete_field_from_device_shadow" "--deselect=tests/test_iotdata/test_iotdata.py::test_publish" "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_s3_upload_data" "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_s3_upload_file_using_requests" "-m" "'not network and not requires_docker'" # Fails at local name resolution "--deselect=tests/test_s3/test_multiple_accounts_server.py::TestAccountIdResolution::test_with_custom_request_header" "--deselect=tests/test_s3/test_s3.py::test_presigned_put_url_with_approved_headers" "--deselect=tests/test_s3/test_s3.py::test_presigned_put_url_with_custom_headers" "--deselect=tests/test_s3/test_s3.py::test_put_chunked_with_v4_signature_in_body" "--deselect=tests/test_s3/test_s3.py::test_upload_from_file_to_presigned_url" "--deselect=tests/test_s3/test_server.py::test_s3_server_bucket_versioning" "--deselect=tests/test_s3/test_server.py::test_s3_server_post_cors_multiple_origins" # Disable tests that require docker daemon "--deselect=tests/test_core/test_docker.py::test_docker_is_running_and_available" "--deselect=tests/test_events/test_events_lambdatriggers_integration.py::test_creating_bucket__invokes_lambda" "--deselect=tests/test_s3/test_s3_lambda_integration.py::test_objectcreated_put__invokes_lambda" "--deselect=tests/test_sqs/test_sqs_integration.py" # json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) "--deselect=tests/test_cloudformation/test_cloudformation_stack_integration.py::test_lambda_function" # Fails at resolving google.com "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_http_destination" "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination" # AssertionError: CloudWatch log event was not found. "--deselect=tests/test_logs/test_integration.py::test_subscription_filter_applies_to_new_streams" # Download recordings returns faulty JSON "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_ec2_instance_creation_recording_on" "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_ec2_instance_creation__recording_off" # KeyError: 'global' "--deselect=tests/test_iotdata/test_server.py::test_iotdata_list" "--deselect=tests/test_iotdata/test_server.py::test_publish" # Connection Reset by Peer, when connecting to localhost:5678 "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_replay" # Blocks test execution "--deselect=tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_load_data_from_inmemory_client" ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--deselect=tests/test_utilities/test_threaded_server.py::test_threaded_moto_server__different_port" "--deselect=tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_server_can_handle_multiple_services" "--deselect=tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_server_is_reachable" # Requires docker, but isn't marked # https://github.com/getmoto/moto/pull/6938 "--deselect=tests/test_awslambda/test_lambda_layers_invoked.py::test_invoke_local_lambda_layers" # AssertionError: expected `{0}` to be greater than `{1}` # Racy, expects two timestamp two differ # https://github.com/getmoto/moto/issues/6946 "--deselect=tests/test_databrew/test_databrew_recipes.py::test_publish_recipe" ]; disabledTestPaths = [ # xml.parsers.expat.ExpatError: out of memory: line 1, column 0 "tests/test_sts/test_sts.py" # Requires pytest-ordering, which is unmaintained # https://github.com/getmoto/moto/issues/6937 # botocore.exceptions.NoCredentialsError: Unable to locate credentials "tests/test_dynamodb/test_dynamodb_statements.py" "tests/test_lakeformation/test_resource_tags_integration.py" "tests/test_redshiftdata/test_redshiftdata.py" "tests/test_s3/test_s3_file_handles.py" "tests/test_s3/test_s3.py" "tests/test_s3/test_s3_select.py" # Tries to access the network "tests/test_appsync/test_appsync_schema.py" "tests/test_awslambda/test_lambda_eventsourcemapping.py" "tests/test_awslambda/test_lambda_invoke.py" "tests/test_batch/test_batch_jobs.py" "tests/test_kinesis/test_kinesis.py" "tests/test_kinesis/test_kinesis_stream_consumers.py" ]; disabledTests = [ # only appears in aarch64 currently, but best to be safe "test_state_machine_list_executions_with_filter" # tests fail with 404 after Werkzeug 2.2 upgrade, see https://github.com/spulec/moto/issues/5341#issuecomment-1206995825 "test_appsync_list_tags_for_resource" "test_s3_server_post_to_bucket_redirect" # Threading tests regularly blocks test execution "tests/test_utilities/test_threaded_server.py" "tests/test_s3/test_s3_bucket_policy.py" ]; meta = with lib; { Loading Loading
pkgs/development/python-modules/moto/default.nix +73 −95 Original line number Diff line number Diff line { lib , stdenv , buildPythonPackage , fetchPypi , pythonOlder # build # build-system , setuptools # runtime , aws-xray-sdk # dependencies , boto3 , botocore , cfn-lint , cryptography , jinja2 , python-dateutil , requests , responses , werkzeug , xmltodict # optional-dependencies , aws-xray-sdk , cfn-lint , docker , ecdsa , flask , flask-cors , graphql-core , idna , jinja2 , jsondiff , multipart , openapi-spec-validator , py-partiql-parser , pyparsing , python-dateutil , python-jose , pyyaml , requests , responses , sshpubkeys , werkzeug , xmltodict # tests , freezegun , py-partiql-parser , pytestCheckHook , pytest-xdist , sure }: buildPythonPackage rec { pname = "moto"; version = "4.2.2"; format = "pyproject"; version = "4.2.6"; pyproject = true; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; hash = "sha256-7jTEw/U5ANlTGAlGkgyduhJ6SD4u1A5tv5PUri52Dnw="; hash = "sha256-zgpV1+dWxZpaQ5LHCXqlylPgCqLdP3AACTNWvhXnrvk="; }; nativeBuildInputs = [ Loading @@ -56,114 +57,91 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ aws-xray-sdk boto3 botocore cfn-lint cryptography requests xmltodict werkzeug python-dateutil responses jinja2 ]; passthru.optional-dependencies = { # non-exhaustive list of extras, that was cobbled together for testing all = [ aws-xray-sdk cfn-lint docker ecdsa flask flask-cors graphql-core idna jinja2 jsondiff multipart openapi-spec-validator py-partiql-parser pyparsing python-dateutil python-jose pyyaml requests responses setuptools sshpubkeys werkzeug xmltodict ]; ] ++ python-jose.optional-dependencies.cryptography; }; __darwinAllowLocalNetworking = true; nativeCheckInputs = [ freezegun py-partiql-parser pytestCheckHook sure ]; pytest-xdist ] ++ passthru.optional-dependencies.all; pytestFlagsArray = [ # Disable tests that try to access the network "--deselect=tests/test_cloudformation/test_cloudformation_custom_resources.py::test_create_custom_lambda_resource__verify_cfnresponse_failed" "--deselect=tests/test_cloudformation/test_server.py::test_cloudformation_server_get" "--deselect=tests/test_core/test_decorator_calls.py::test_context_manager" "--deselect=tests/test_core/test_decorator_calls.py::test_decorator_start_and_stop" "--deselect=tests/test_core/test_request_mocking.py::test_passthrough_requests" "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination" "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_http_destination" "--deselect=tests/test_logs/test_integration.py::test_put_subscription_filter_with_lambda" "--deselect=tests/test_sqs/test_integration.py::test_invoke_function_from_sqs_exception" "--deselect=tests/test_sqs/test_sqs_integration.py::test_invoke_function_from_sqs_exception" "--deselect=tests/test_stepfunctions/test_stepfunctions.py::test_state_machine_creation_fails_with_invalid_names" "--deselect=tests/test_stepfunctions/test_stepfunctions.py::test_state_machine_list_executions_with_pagination" "--deselect=tests/test_iotdata/test_iotdata.py::test_update" "--deselect=tests/test_iotdata/test_iotdata.py::test_basic" "--deselect=tests/test_iotdata/test_iotdata.py::test_delete_field_from_device_shadow" "--deselect=tests/test_iotdata/test_iotdata.py::test_publish" "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_s3_upload_data" "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_s3_upload_file_using_requests" "-m" "'not network and not requires_docker'" # Fails at local name resolution "--deselect=tests/test_s3/test_multiple_accounts_server.py::TestAccountIdResolution::test_with_custom_request_header" "--deselect=tests/test_s3/test_s3.py::test_presigned_put_url_with_approved_headers" "--deselect=tests/test_s3/test_s3.py::test_presigned_put_url_with_custom_headers" "--deselect=tests/test_s3/test_s3.py::test_put_chunked_with_v4_signature_in_body" "--deselect=tests/test_s3/test_s3.py::test_upload_from_file_to_presigned_url" "--deselect=tests/test_s3/test_server.py::test_s3_server_bucket_versioning" "--deselect=tests/test_s3/test_server.py::test_s3_server_post_cors_multiple_origins" # Disable tests that require docker daemon "--deselect=tests/test_core/test_docker.py::test_docker_is_running_and_available" "--deselect=tests/test_events/test_events_lambdatriggers_integration.py::test_creating_bucket__invokes_lambda" "--deselect=tests/test_s3/test_s3_lambda_integration.py::test_objectcreated_put__invokes_lambda" "--deselect=tests/test_sqs/test_sqs_integration.py" # json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) "--deselect=tests/test_cloudformation/test_cloudformation_stack_integration.py::test_lambda_function" # Fails at resolving google.com "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_http_destination" "--deselect=tests/test_firehose/test_firehose_put.py::test_put_record_batch_http_destination" # AssertionError: CloudWatch log event was not found. "--deselect=tests/test_logs/test_integration.py::test_subscription_filter_applies_to_new_streams" # Download recordings returns faulty JSON "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_ec2_instance_creation_recording_on" "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_ec2_instance_creation__recording_off" # KeyError: 'global' "--deselect=tests/test_iotdata/test_server.py::test_iotdata_list" "--deselect=tests/test_iotdata/test_server.py::test_publish" # Connection Reset by Peer, when connecting to localhost:5678 "--deselect=tests/test_moto_api/recorder/test_recorder.py::TestRecorder::test_replay" # Blocks test execution "--deselect=tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_load_data_from_inmemory_client" ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [ "--deselect=tests/test_utilities/test_threaded_server.py::test_threaded_moto_server__different_port" "--deselect=tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_server_can_handle_multiple_services" "--deselect=tests/test_utilities/test_threaded_server.py::TestThreadedMotoServer::test_server_is_reachable" # Requires docker, but isn't marked # https://github.com/getmoto/moto/pull/6938 "--deselect=tests/test_awslambda/test_lambda_layers_invoked.py::test_invoke_local_lambda_layers" # AssertionError: expected `{0}` to be greater than `{1}` # Racy, expects two timestamp two differ # https://github.com/getmoto/moto/issues/6946 "--deselect=tests/test_databrew/test_databrew_recipes.py::test_publish_recipe" ]; disabledTestPaths = [ # xml.parsers.expat.ExpatError: out of memory: line 1, column 0 "tests/test_sts/test_sts.py" # Requires pytest-ordering, which is unmaintained # https://github.com/getmoto/moto/issues/6937 # botocore.exceptions.NoCredentialsError: Unable to locate credentials "tests/test_dynamodb/test_dynamodb_statements.py" "tests/test_lakeformation/test_resource_tags_integration.py" "tests/test_redshiftdata/test_redshiftdata.py" "tests/test_s3/test_s3_file_handles.py" "tests/test_s3/test_s3.py" "tests/test_s3/test_s3_select.py" # Tries to access the network "tests/test_appsync/test_appsync_schema.py" "tests/test_awslambda/test_lambda_eventsourcemapping.py" "tests/test_awslambda/test_lambda_invoke.py" "tests/test_batch/test_batch_jobs.py" "tests/test_kinesis/test_kinesis.py" "tests/test_kinesis/test_kinesis_stream_consumers.py" ]; disabledTests = [ # only appears in aarch64 currently, but best to be safe "test_state_machine_list_executions_with_filter" # tests fail with 404 after Werkzeug 2.2 upgrade, see https://github.com/spulec/moto/issues/5341#issuecomment-1206995825 "test_appsync_list_tags_for_resource" "test_s3_server_post_to_bucket_redirect" # Threading tests regularly blocks test execution "tests/test_utilities/test_threaded_server.py" "tests/test_s3/test_s3_bucket_policy.py" ]; meta = with lib; { Loading