Commit Graph
18584 Commits
Author SHA1 Message Date
Liana.Bakradze 2fd76932ee bring back language to json (EDU-882) 2017-04-18 17:11:17 +03:00
Liana.Bakradze 2b6eafadc6 wait for placeholders to be flushed before checking (EDU-882) 2017-04-18 17:11:17 +03:00
Liana.Bakradze d996b96ea1 check for PyCharm tasks (EDU-882) 2017-04-18 17:11:17 +03:00
Liana.Bakradze 4e9d785e20 remote check (EDU-882) 2017-04-18 17:11:17 +03:00
Liana.Bakradze 3ef6f8face do not run after check actions twice for local courses (EDU-882) 2017-04-18 17:11:17 +03:00
Liana.Bakradze 6fd720b1cc do not try to get recommendation for non-adaptive courses (EDU-882) 2017-04-18 17:11:17 +03:00
Liana.Bakradze ec8fc1825b getting next recommendation in check listener (EDU-882) 2017-04-18 17:11:17 +03:00
Semyon Proshev 7a23d509b8 PY-22919 Fixed: max() function transmits argument type to return type
PY-23634 Fixed: min() from comprehension with unknown items type return list

Primarily these issues were fixed by PY-22808-related commits.
In these change inferred call type is more precise. PyiTypeProvider doesn't take into account overloads that have unmapped args or params.
2017-04-18 15:45:44 +03:00
Alexey Kudravtsev 341b2116cf notnull 2017-04-18 14:51:08 +03:00
Ilya.Kazakevich 9d0d776478 Revert of "IDEA-CR-17950: True and False are now always PyBooleanLiteralExpressions" because of "Restored None, False, True as non-keywords (reserved words) in PY2" 2017-04-17 22:25:48 +03:00
Elizaveta Shashkova 2e77f9dcb9 Update Windows binaries (PY-22702) 2017-04-17 21:20:14 +03:00
Elizaveta Shashkova 52aacc1e56 Add path separator to all filenames while checking (PY-22702) 2017-04-17 21:20:13 +03:00
Elizaveta Shashkova d686250801 Update Windows binaries (PY-22702, PY-23737) 2017-04-17 21:20:13 +03:00
Elizaveta Shashkova b2b35ac3ac Update Cython version (PY-22702, PY-23737) 2017-04-17 21:20:12 +03:00
Elizaveta Shashkova 907a5497bb Can't debug files with names ending with "*threading.py" (PY-22702)
We can't call any other function here instead of `endswith`, because it leads to infinite recursion
2017-04-17 21:20:11 +03:00
Elizaveta Shashkova 6c42293d51 Frame evaluation debugger stops with stack overflow after reloading (PY-23737)
Sometimes during process shutdown Python nullifies some global variables, but still calls frame evaluation function. Add check for avoiding such situations.
2017-04-17 21:20:10 +03:00
Andrey Vlasovskikh 91a45bf7ed Restored None, False, True as non-keywords (reserved words) in PY2 (PY-23305, PY-23364)
Typeshed doesn't contain the definitions for them in __builtins__.pyi
so we have to provide types and detect the builtin status for these
words as a special case.
2017-04-17 21:17:35 +03:00
Ilya.Kazakevich eb714de2fa PY-23746, PY-23536, PY-23534, PY-13191: Use `ParametersListUtil` to parse arguments
* ``ParametersListUtil`` supports escape, quotes and other useful stuff.
2017-04-17 21:07:58 +03:00
fitermay 2072c80a34 PY-23150: Numpy custom members take significant time to resolve since they are looking up DTYPE each time for each member. Instead resolve it once.
(cherry picked from commit 5702120)
2017-04-17 19:22:54 +03:00
Mikhail Golubev 2514a8b515 PY-23150 Show the canonized qualified name of a source module as type in completion
instead of the much more computationally expensive canonical import
name.

It still an open question, though, how to reduce the cost of computing
the preferred import path of re-exported symbols in case of a large
hierarchy of packages where names from the leaf modules are propagated
higher using wildcard imports.

Check https://github.com/JetBrains/intellij-community/pull/532
for the related dicussion.
2017-04-17 19:22:54 +03:00
Mikhail Golubev bcb02af54c Fix return value of QualifiedNameFinder#findShortestImportableName() in case of a cache hit
It returned a string representation of the list of saved names
instead of the shorted qualified name itself.
2017-04-17 19:22:54 +03:00
Mikhail Golubev 2e008b6dda PyStdlibCanonicalPathProvider shouldn't modify the passed QualifiedName in place
Otherwise PythonPathCache starts returning, e.g. "path" instead of
"ntpath" for ntpath.py module.

On the whole, it seems that QualifiedName#getComponents() shouldn't
return the original backed array list in the first place.

Additionally, PythonPathCache returns unmodifiable lists of qualified
names and elements to prevent similar, tricky to track down, errors in
future.
2017-04-17 19:22:54 +03:00
Mikhail Golubev d794eeef12 PY-23150 Add a test with a generated project to investigate the problem 2017-04-17 19:22:54 +03:00
Andrey Vlasovskikh 7a3717c7c8 One more test for PY-22808 to cover changes 2017-04-17 18:52:55 +03:00
Ilya.Kazakevich ccbb81dc82 PY-23567: Update Leonid's runners to support time functions monkeypatching
If user monkeypatches strftime PyCharm should survive it
2017-04-17 17:09:00 +03:00
Mikhail Golubev 86d84f6f65 PY-22734 Don't capture local variable in the lambda used as a cached value provider
Otherwise, we re-compute the function's result type using a stale type
comment.
2017-04-17 14:13:22 +03:00
meanmail 4ebf948245 Merge remote-tracking branch 'origin/master' into meanmail/EDU-839
Conflicts:
	python/educational-core/src/com/jetbrains/edu/learning/EduPluginConfigurator.java
	python/educational-python/Edu-Python/src/com/jetbrains/edu/learning/PyEduPluginConfigurator.java
2017-04-17 17:39:38 +07:00
Ilya.Kazakevich a6038b0d72 PY-23549: run files as scripts for py3 unittest (instead of "discovery" engine used for py2)
In Py3 it is possible to run script directly which is much more stable than discovery machinery
For example it supports hyphens in file names
2017-04-16 00:26:09 +03:00
Ilya.Kazakevich 8b62070a8c PY-23416: Do not provide pattern to using test for rerun
Pattern can't be used with concrete tests names are provided (as it done for rerun)
2017-04-15 22:52:03 +03:00
Ilya.Kazakevich 6b8e8e7a65 PY-20983 (partial fix): do not break if python target is module.
This fix is critical anyway, because running module as python is common
2017-04-15 22:27:56 +03:00
Ilya.Kazakevich 471f1cc301 PY-22458: useless space removed
Space is visible for user and some people do not like it (https://youtrack.jetbrains.com/issue/PY-22458#comment=27-2105807)
2017-04-15 21:31:15 +03:00
Ilya.Kazakevich 16bd2acc91 This commit should fix: PY-22641, PY-23303, PY-22920, PY-23613, PY-23647, PY-23733, PY-23504, PY-23678, PY-23352, PY-23333, PY-22856, PY-20983
Working dir fix:
* When configuration is generated -- use element dir as working dir
* When launched and working dir is not set -- use element dir as working dir

Inherited methods fix:
* When resolving element -- obey name provided by runner because it may differ from element.qname
   (in case of inherited classes).
* Fix filesystem part of path making element resolvable for python, but obey element part of path

No file is reported by new runners, so we do out best to find file
* Use index to resolve element as fallback if runner reported relative path
* Resolve it against working dir and all roots

Do not import anything in python runners: importing may break Django
* Move convertion from qname to "filesystem/element name" to java side

Tests added.
2017-04-15 01:33:38 +03:00
Ilya.Kazakevich d9404bedba Fixing nose for PY-22641
nose may launch tests in file directly. It is always better to provide file since qname may be unresolved if no init.py in py2k
2017-04-15 01:33:38 +03:00
Andrey Vlasovskikh 4f37f825f6 Fixed type checking arguments against generic keyword container (PY-22513) 2017-04-15 00:17:04 +03:00
Andrey Vlasovskikh 1515dae7df Refactored analyzing call arguments for type checking 2017-04-15 00:17:04 +03:00
meanmail 0f39667630 Set a correct size for the location field (New Project dialog) 2017-04-14 23:20:59 +07:00
Ekaterina Tuzova 4cb2744ff1 modify settings step instead of project type 2017-04-14 19:15:32 +03:00
Ekaterina Tuzova e557714f04 remote courses for python in IDEA 2017-04-14 19:15:32 +03:00
Ekaterina Tuzova 9ff5c8176f local idea path for the edu-core and edu-python builds 2017-04-14 19:15:32 +03:00
meanmail f4a46d304f Merged location and name. Added description. (New Project dialog) 2017-04-14 23:12:48 +07:00
meanmail 94822b4a1d Removed EduCreateNewProjectListener 2017-04-14 20:40:44 +07:00
meanmail a359e3b72f Removed PyEduCourseProjectGenerator 2017-04-14 15:46:38 +07:00
meanmail 5aba090129 Apply the code style 2017-04-14 15:19:38 +07:00
Andrey Vlasovskikh 1f598fe985 Don't use types of not matched overloads in resulting call type (PY-22808, PY-22741)
We used to exclude all the Any types from matched overloads even though
the match was successful. Now we stop analyzing an overload immediately
when the actual arguments don't match against its parameters.
2017-04-13 21:57:59 +03:00
Elizaveta Shashkova 481fa56a9e Tests: revert using short timeout and logging for page loading 2017-04-13 19:30:49 +03:00
Semyon Proshev 8db4783d57 PyControlFlowBuilder: don't ignore negativeAssertionEvaluator results if assertionEvaluator doesn't give any suggestions.
PyTypeTest.testOptionalAfterIfNot fixed.
2017-04-13 18:55:20 +03:00
Aleksey Pivovarov b6b398f06d run icons.gant 2017-04-13 15:55:27 +03:00
Elizaveta Shashkova a36449efe3 Tests: try to use short timeout for all Django debugger tests 2017-04-13 15:46:21 +03:00
Alexey Kudravtsev 13dcd3d38b cleanup 2017-04-13 15:30:00 +03:00
Alexey Kudravtsev 8deb16a12f consistent ARRAY_FACTORY 2017-04-13 15:30:00 +03:00