Commit Graph
100 Commits
Author SHA1 Message Date
Dave Halter 73682b95f5 Move get_item to a separate function 2018-08-10 19:50:21 +02:00
Dave Halter 705f561bdb Sometimes when terminating, the subprocess module is already gone and equals None. 2018-08-10 19:32:54 +02:00
Dave Halter 84b89f4689 Rename py__getitem__ to py__simple_getitem 2018-08-10 19:31:19 +02:00
Dave Halter bc5ca4d8ae Fix flask issues with unicode in Python2 2018-08-10 00:37:36 +02:00
Dave Halter 53ca7c19cd Some changes in the PEP 0484 understanding (more future compatible) 2018-08-09 23:32:04 +02:00
Dave Halter b3a07941bb Fix issues with the current branch 2018-08-09 23:25:29 +02:00
Dave Halter 62842c8ac1 For now don't use the TypeshedPlugin until we fix all other issues with Jedi 2018-08-09 18:48:08 +02:00
Dave Halter d30af70351 Write a test for variables 2018-08-09 18:22:25 +02:00
Dave Halter 52746faabf Some better sys tests for compiled objects 2018-08-09 17:28:09 +02:00
Dave Halter f7f32fe206 Better checking for sys 2018-08-09 17:16:53 +02:00
Dave Halter aa8e2c7173 Get some sys completions working 2018-08-09 10:52:33 +02:00
Dave Halter facbf61133 Working with CompiledObject in stubs is now possible 2018-08-08 18:57:05 +02:00
Dave Halter 1ade520ac0 Fix stub name resolution 2018-08-08 13:02:32 +02:00
Dave Halter 5466f930be Rename some stub classes 2018-08-07 03:36:18 +02:00
Dave Halter 505c424cf4 Merge branch 'master' into typeshed 2018-08-07 02:48:41 +02:00
Dave Halter d6306a06a4 With the recent changes one performance optimization got lost 2018-08-07 02:47:25 +02:00
Dave Halter 62a941f233 Actually use the stub files 2018-08-06 23:14:58 +02:00
Dave Halter 97c9aca245 Merge branch 'master' into typeshed 2018-08-06 12:49:51 +02:00
Dave Halter 8fc2add242 FunctionExecutionContext should use the parent if possible 2018-08-06 12:49:31 +02:00
Dave Halter 4a593f9693 Use anonymous instance arguments in a different way 2018-08-06 11:19:29 +02:00
Dave Halter 38a22a4ae8 Move some anonymous instance function execution stuff 2018-08-05 23:37:46 +02:00
Dave Halter 10ecb77673 Get rid of InstanceFunctionExecution, because it's really not needed 2018-08-05 23:26:15 +02:00
Dave Halter 357c86ad9c Use the InstanceArguments for super as well 2018-08-05 14:58:35 +02:00
Dave Halter 8cae517821 Use InstanceArguments directly and not via InstanceFunctionExecution 2018-08-05 14:34:44 +02:00
Dave Halter 0101fdd9da Remove old garbage code 2018-08-05 14:19:18 +02:00
Dave Halter e17d7f5d42 Don't use arguments that are not needed 2018-08-05 14:17:46 +02:00
Dave Halter 7d16a35693 Also move the remaining get_params to get_executed_params
Remove the class's get_params entirely, because it is apparently not needed and contained a funny return.
2018-08-05 13:58:06 +02:00
Dave Halter 1456a156a6 get_params -> get_executed_params where possible 2018-08-05 13:53:57 +02:00
Dave Halter 3d55b2d826 Subprocess error reporting improvements 2018-08-05 12:50:17 +02:00
Dave Halter 49eae5b6f8 Rename an execute function that is private 2018-08-05 01:32:13 +02:00
Dave Halter 7a48fdc5f6 Move execute_evaluated to a helper function 2018-08-05 01:28:03 +02:00
Dave Halter faba29a42b Trying to use prefer type annotations if they are available 2018-08-05 00:36:11 +02:00
Dave Halter 403cf02c65 Fix the last issue to pass stub tests 2018-08-04 23:50:11 +02:00
Dave Halter 59d43683dc Merge branch 'master' into typeshed 2018-08-04 23:42:17 +02:00
Dave Halter 1547177128 Fix a recursion issue about compiled objects 2018-08-04 23:20:51 +02:00
Dave Halter bd43608f98 Use a CompiledInstanceNameFilter that wraps the class name as well 2018-08-04 13:10:14 +02:00
Dave Halter 72f2a9e4a5 Prefer Python 3 import over 2 2018-08-04 12:07:41 +02:00
Dave Halter b91203820c Now it's actually possible to specify a pytest environment for the same Python version 2018-08-04 02:00:13 +02:00
Dave Halter 71572e63cd Note that Python 3.3 support was dropped in Changelog 2018-08-04 00:49:45 +02:00
Dave Halter 9ca7b30e38 Rewrite the pyc test 2018-08-03 23:59:55 +02:00
Dave Halter fd8f254ce1 Fix an issue with stderr debugging of subprocesses 2018-08-03 23:51:58 +02:00
Dave Halter 1c76359291 stderr of the child processes should be printed in debug output
This fixes #1169. It might have a bit of a different intention, but at least it's now possible to see output of the subprocess and it's not just a black hole.
2018-08-03 13:35:21 +02:00
Dave Halter ccb460b433 Use close_fds for posix. 2018-08-03 13:08:07 +02:00
Dave Halter 30d14ea016 Remove some redundant code 2018-08-03 12:33:35 +02:00
Dave Halter bbb1502e06 Use names of classes to infer names of instances 2018-08-03 12:23:54 +02:00
Dave Halter f34a9281b9 Don't have execute and execute_evaluated on name 2018-08-03 11:34:33 +02:00
Dave Halter 95a1a69771 Fix an issue where __ prefixed variables where not hidden when accessed from a class
Everything worked well when looking at it from an instance perspective.
2018-08-03 11:05:49 +02:00
Dave Halter 50b58a314e Fix a test condition 2018-08-03 01:34:08 +02:00
Dave Halter a3b5247de9 Merge branch 'master' into typeshed 2018-08-03 00:26:09 +02:00
Dave Halter 1a4be5c91c Bound methods are now working correctly in all Python versions. Therefore a test was wrong. 2018-08-03 00:25:25 +02:00
Dave Halter 40d3abe2b2 Remove a print in tests 2018-08-03 00:25:25 +02:00
Dave Halter f25310e0b9 BoundMethods now have access to the function that they are using 2018-08-03 00:25:25 +02:00
Dave Halter e576457a43 Remove another usage of is_class where it's not needed 2018-08-03 00:25:25 +02:00
Dave Halter a1314ac3c1 FunctionContext should be created from a unified interface 2018-08-03 00:25:25 +02:00
Dave Halter 481e6bcff0 Don't create a FunctionExecutionContext if it's not used. 2018-08-03 00:25:25 +02:00
Dave Halter 9ff5050d01 Use TreeContext in a good way 2018-08-03 00:25:25 +02:00
Dave Halter 5143c71589 Change the typeshed test for methods a bit (not yet working, though) 2018-08-02 01:11:12 +02:00
Dave Halter 31bf8e48bb Fix some stub tests 2018-08-02 00:59:12 +02:00
Dave Halter 61de28f741 Get a first typeshed example fully working as intended 2018-08-02 00:15:54 +02:00
Dave Halter c8caa8f4ac Use a class stub class 2018-08-01 10:47:46 +02:00
Dave Halter c196075cb8 Actually use the stub function 2018-08-01 01:42:09 +02:00
Dave Halter dfbd1f8772 Mix stub name with non-stub names in a better way 2018-07-31 23:25:13 +02:00
Dave Halter b5670fdc5f Some progress in working with typeshed 2018-07-31 11:33:38 +02:00
Dave Halter cdb96bff47 Avoid recursion issues for the typing module 2018-07-29 00:10:54 +02:00
Dave Halter 35361f4edc Add debug warnings when a user runs into a recursion error 2018-07-29 00:03:43 +02:00
Dave Halter 9bba91628a Annotations can contain forward references even if they are not a string anymore
Since Python 3.7 this behavior can be imported with from future import __annotations
2018-07-28 16:35:24 +02:00
Dave Halter b073b05aa0 Fix a bug in the typeshed implementation 2018-07-28 14:50:02 +02:00
Dave Halter e6f28b06b5 A bit better typeshed support 2018-07-28 14:39:55 +02:00
Dave Halter 4e75a35468 Fix stub searching for nested modules 2018-07-27 10:14:37 +02:00
Dave Halter e827559340 Get some first stubs working 2018-07-25 23:48:53 +02:00
Dave Halter 6bcac44050 Add another stub file test 2018-07-25 11:44:48 +02:00
Dave Halter ee43fd7579 Start testing the typeshed directory search 2018-07-25 11:37:03 +02:00
Dave Halter b809768934 Start implementing some typeshed details 2018-07-25 11:00:51 +02:00
Dave Halter 1739ae44f0 Refactor some of the import logic so it's possible to load typeshed modules 2018-07-24 01:19:09 +02:00
Dave Halter f72f3f3797 Better flake8 configuration 2018-07-24 00:50:31 +02:00
Dave Halter 18f26a0c04 Change a module is None check to raise an Exception 2018-07-23 23:57:27 +02:00
Dave Halter 873558a392 Move the os.path hack 2018-07-23 23:04:14 +02:00
Dave Halter c88afb71c9 Import names are now always strings 2018-07-23 22:40:24 +02:00
Dave Halter 27ab4ba339 Add the flask plugin and move the import hacks there 2018-07-23 04:04:21 +02:00
Dave Halter 8a9202135b Move import logic around a bit 2018-07-23 03:54:10 +02:00
Dave Halter 7711167052 Start enabling the Typeshed plugin, even though it doesn't do anything, yet. 2018-07-23 02:40:18 +02:00
Dave Halter e7635b40d5 Remove some unused code 2018-07-22 18:02:53 +02:00
Dave Halter f5cbb5de49 Some refactoring in the stdlib plugin 2018-07-22 03:49:36 +02:00
Dave Halter 2cd1ae73ed Move stdlib content to the stdlib plugin 2018-07-22 03:45:02 +02:00
Dave Halter 061489ec9a Move the stdlib executions into a plugin 2018-07-22 03:38:12 +02:00
Dave Halter df55f62ad8 Add a plugin infrastructure 2018-07-21 15:03:05 +02:00
Dave Halter e7a019e628 The implicit namespace package test from 4b276bae87 can only be used for Python 3.4+ 2018-07-21 11:51:41 +02:00
Dave Halter 7d2b7bb3c1 Add typeshed as a submodule 2018-07-21 09:50:25 +02:00
Dave Halter 4b276bae87 The import resolution for namespace packages was wrong
With this change we can now include all parents of the script, which will make
relative imports always work.

Now the whole meta_path is scanned and not just importlib's PathFinder.

Fixes #1183.
2018-07-21 00:16:10 +02:00
Dave Halter ad5170a37a Add a way to use the interpreter environment for tests 2018-07-20 19:16:02 +02:00
Dave Halter d292333dab MergedExecutedParams -> DynamicExecutedParams 2018-07-18 10:02:57 +02:00
Dave Halter a408fb3211 Fix a recursion error, fixes #1173 2018-07-18 10:01:41 +02:00
Dave Halter 3cabc4b969 Remove two recursion tests again that will belong into a commit at a point where it is not failing anymore 2018-07-17 18:34:42 +02:00
Dave Halter fb360506fb Don't merge params if it's just one param 2018-07-17 09:53:26 +02:00
Dave Halter fe1799d125 Add a repr for AnonymousArguments 2018-07-17 09:48:27 +02:00
Dave Halter 733919e34c Fix a doctest 2018-07-17 00:47:42 +02:00
Dave Halter 1e796fc08d Environments are now always created on request
The issue was that if something changed about the environment (e.g. version
switch) or sys.path change, re-creating the environment was possible, but did
not involve the change. The environments have now a __del__ function that
deletes the subprocess after every time an Environment is garbage collected.
2018-07-15 17:49:17 +02:00
Dave Halter f6bc166ea7 Add max line length 100 to the config for flake8 2018-07-13 09:25:51 +02:00
Dave Halter 3a62d54403 Don't test Python 3.3 on appveyor anymore, it's getting really hard to get all the right dependencies for it, because 3.3 is deprecated everywhere. 2018-07-12 21:21:40 +02:00
Dave Halter 748946349f Mention that it's ok to have a line length of 100 characters in our files. 2018-07-12 21:18:54 +02:00