Commit Graph

259 Commits

Author SHA1 Message Date
Ilya.Kazakevich
76865ffa15 Pycharm: next iteration on not to hide errors rally.
No need to return null: throwing exception in case of severe unexpected error is also ok.

GitOrigin-RevId: f8dde3f6d95c08abd97143a5ce3dc9b6eee33e54
2024-07-18 23:23:27 +00:00
Ilya.Kazakevich
ac673868e5 One more iteration to replace null with Result not to suppress errors.
Lots of code returns `null` without any reason. This ill pattern covers errors effectively making it impossible to find the root cause of any problem.

We replace `null` with `Result` to log and report errors.


Merge-request: IJ-MR-139850
Merged-by: Ilya Kazakevich <ilya.kazakevich@jetbrains.com>

GitOrigin-RevId: 7cbb173f672a44a98f24e89e247428ab6e8ca01d
2024-07-18 16:07:28 +00:00
Konstantin Hudyakov
423a4cf421 IFT-573 Fix completion item detection in Python Basic completion lesson
GitOrigin-RevId: 83e1c2575c879fba8732417bd68ca783b52f5c99
2024-07-05 18:36:32 +00:00
Egor.Eliseev
0c73c9eff9 PY-72274 separating content for python core/pro plugins
1. Delete `intellij.python.community.impl.xml` (move content to `PythonCore` plugin). It is necessary to fix incorrect dependencies: `PythonCore`, `Pythonid` include the same module.
2. Fixed dependencies: if some plugin/module needs Python core functionality, then it should depend on `PythonCore`.


Co-authored-by: Vladimir Koshelev <Vladimir.Koshelev@jetbrains.com>

Merge-request: IJ-MR-136158
Merged-by: Egor Eliseev <Egor.Eliseev@jetbrains.com>

GitOrigin-RevId: ce9ed4c17f601ee1ca2b6cf608f4e30fdac1d879
2024-06-19 21:39:24 +00:00
Alexey Merkulov
a73b1e5713 [IFT] Refactoring: extract same logic about showing onboarding feedback
GitOrigin-RevId: 899001a8cd92e7dbe95c2ea1efcb0d00037f1df1
2024-02-27 17:50:22 +00:00
Konstantin Hudyakov
8d397b5b30 IFT-556 Edit the position of debug GotIt tooltips in onboarding lessons
Since the debug toolbar is showing on the left, edit the GotIt tooltips positions to not intersect with tool window stripes.

GitOrigin-RevId: a801c231e87728ae7bf16edfb8135660ef574266
2024-02-26 12:45:37 +00:00
Konstantin Hudyakov
6027da7a0b IFT-549 Enable the Main Toolbar forcefully in onboarding lessons
Previously we have enabled the navigation bar to make the actions of the IDE header visible, but in the New UI it makes no sense. So, we have to enable the Main Toolbar now.

GitOrigin-RevId: cc29207ecc86dd56280556b9a3b43df240acb53f
2024-02-20 18:40:46 +00:00
Konstantin Hudyakov
ff7ceba2fa IFT-555 Refactor: do not modify the lesson variables in the LessonContext
It would be better to get rid of using mutable lesson properties and store mutable lesson state inside the lesson context or something with a clear life cycle. But such a solution requires more work.

GitOrigin-RevId: 1ab2b16a9af2ecc9713f2b77501c68830cb61f33
2024-02-20 18:40:41 +00:00
Ilya.Kazakevich
9d4751f238 [python, ds, jupyter]: Migrate Python support to V2
Layout:

  JPS modules
  `intellij.python.community`
  `intellij.python.community.impl`
  `intellij.python.parser`
  `intellij.python.psi`
  `intellij.python.psi.impl`
  `intellij.python.ast`
  use package `com.jetbrains.python`
  and go to `intellij.python.community.impl` v2 module

  JPS module
  `intellij.python`
  uses package `com.intellij.python.pro`
  and goes to `intellij.python/pro` v2 module

  Both v2 modules (along with lots of others) come with
  `PythonId` (prof) or `PythonCore` (community) plugins

  DS bundles  `intellij.python.community.impl`

  Idea and other Mini IDEs get `PythonCore` or `PythonId` plugin that bundle modules for Idea and mini IDEs

GitOrigin-RevId: 98f418c52d90d51b9adf3250c561f2c36c767e2d
2024-01-22 20:26:58 +00:00
Ilya.Kazakevich
50f0e2820c Migrate python feature trainer to v2
GitOrigin-RevId: 369e795edac8f6b04634fc7ede78dff431d0bc21
2023-12-21 19:50:08 +00:00
Dmitry Pogrebnoy
c52e01c89c IDEA-338866 Set time scope for feedback collection for onboardings
(cherry picked from commit 0cba21a9137f10365bacb6d998601e570940b0cd)

IJ-CR-121256

GitOrigin-RevId: a90bc9c9ce1c6462c9719ed4ddd305a5e1a44f29
2023-12-11 11:54:11 +00:00
Mikhail Mazurkevich
ef612f90f5 [python] Add KDoc about the classpath for tests
GitOrigin-RevId: e14152ebd88b2fe4496904af728846649c88f32f
2023-11-30 15:53:49 +00:00
Konstantin Hudyakov
1073190fc7 IFT-518 Make Python onboarding lesson and promoter available only in PyCharm Community/Professional
GitOrigin-RevId: 12a710a6e519873c36d750d1967daf9dfe78e84f
2023-11-10 11:21:15 +00:00
Konstantin Hudyakov
c4e0ebbf54 IFT-510 Update text in the Python Editor Coding Assistance lesson
GitOrigin-RevId: f568826e07025f23c97587c219dea064c661da30
2023-11-03 08:05:46 +00:00
Konstantin Hudyakov
f8397c28f2 IFT-510 Use example with shorter warning description in the Python Editor Coding Assistance lesson
GitOrigin-RevId: d61c65000f4438c5fb79299da60967702d141f6e
2023-11-01 20:16:24 +00:00
Alexander Koshevoy
f863964159 Move methods from PyProjectVirtualEnvConfiguration object to top level
GitOrigin-RevId: bf9432e65295730395c5aac697fd26dc91037547
2023-10-23 00:47:08 +00:00
Alexander Koshevoy
2ed8ca951a Reformat PythonBasedLangSupport.kt
GitOrigin-RevId: 818e691d04108969f1ec1dca6ea9d77da42092f4
2023-10-23 00:47:08 +00:00
Konstantin Hudyakov
b3315624bb [IFT] Refactor: extract getCallBackActionId to Utils
GitOrigin-RevId: 798a1d1aaca11f9e5c207d9ea20b01867b91eb32
2023-09-27 13:21:00 +00:00
Konstantin Hudyakov
428ce848ab [IFT] Fix parsing of the callback ID if it is greater than 999
Found that `com.intellij.AbstractBundle.getMessage` applies the formatting to the parameters passed as a `Number`. For example, it translates 1032 int to "1,032" string. And then `toInt` method fails to parse it.
Better to use String value as ID for callbacks to avoid this problem.

GitOrigin-RevId: 95a667a35f6107ec71df0da26892541d1d964b98
2023-09-27 13:20:57 +00:00
Konstantin Hudyakov
c1d2faa12e IFT-482 Fix debugger tool window step in onboarding lessons
GitOrigin-RevId: 04f7e1349d67a30b54cf15dd7b271da146d614fe
2023-07-18 12:29:38 +00:00
Alexey Merkulov
70f44ac83e IFT-474 Fix Java and Python run configuration lessons
GitOrigin-RevId: 464a69b468271921ccfbc896578686da9a462240
2023-07-17 17:28:05 +00:00
Konstantin Hudyakov
f268185a00 IFT-478 Fix Declarations and Usages lesson for Python and Ruby
GitOrigin-RevId: 5b8aacb292c8be1adc7dde27ae807b16936c5dc9
2023-07-14 09:17:20 +00:00
Konstantin Hudyakov
bc56e3da3b IFT-455 Show GotIt tooltips during editor steps in onboarding lessons
GitOrigin-RevId: 7d7b2c7a32f1e7c1c01b28cd8b6401a38e7b08ca
2023-04-05 17:59:11 +00:00
Konstantin Hudyakov
d3999f2eb9 [IFT] Edit onboarding lessons text
GitOrigin-RevId: c2d0e9f297ab3b34e9670c1d2f91075d4f1817b0
2023-03-14 16:01:02 +00:00
Alexey Merkulov
8edb99ffbc [IFT] Change debugger toolbar highlighting defaults and remove pulsation and inside highlighting from Jupyter onboarding
GitOrigin-RevId: bd157fb57d4f0a52d7bf5d8ccd660c58ad16a1b0
2023-03-02 20:50:43 +00:00
Alexey Merkulov
f9e2be3b62 [IFT] Cleanup and fix hardcoded strings warnings
GitOrigin-RevId: b48d46bdcdc083105d6fe8b57faaa6ea46f4ffe2
2023-02-28 21:07:05 +00:00
Alexey Merkulov
aaea90d631 [IFT] Apply JBUI scaling in popup construction instead of call places
IJ-CR-103403

GitOrigin-RevId: 30b92fe24ca3b54a144fbc0ce4e6ac9adc7180e6
2023-02-24 15:00:53 +00:00
Alexey Merkulov
0291a4ce92 [IFT] Rework Python and Java run lessons and adjust them for the new UI
IJ-CR-103403

GitOrigin-RevId: 88218a3ef100af6592eea13a2ea3ee4c3a8070c6
2023-02-24 15:00:50 +00:00
Alexey Merkulov
bc6abbde05 [IFT] Fix restart icon in Python Debug lesson
IJ-CR-103403

GitOrigin-RevId: 9b97222aa75d755aea1f8018f5548d301cac0f36
2023-02-24 15:00:46 +00:00
Alexey Merkulov
9df774fcda [IFT] Split sample for run and for debug lessons
IJ-CR-103403

GitOrigin-RevId: 35f8b09b22771d9ab32bf20db9a7aed1b0443053
2023-02-24 15:00:34 +00:00
Konstantin Hudyakov
a1edd49d27 IFT-447 Adapt breakpoint highlighting area to new UI
Areas are the same in IDEA and GoLand, but different in PyCharm and WebStorm

GitOrigin-RevId: e73250743d62517efe6ffac89b326b07a9e136d9
2023-02-24 12:43:26 +00:00
Konstantin Hudyakov
061813ac12 [IFT] Adjust debug step in onboarding lessons to new debugger layout
There will be only one variant of the debugger layout in the 2023.1.

GitOrigin-RevId: ee2de2446e0c297b1f1e88e90ef604ad45eaeffc
2023-02-13 12:08:44 +00:00
Alexey Merkulov
d97aa80a08 IDEA-302820 Fix name, layout and forbid customization of run widget in the new UI
GitOrigin-RevId: 7ad8ae11fac2a178bf5aaf2f8d8d3d8b65cb8aa1
2023-02-03 15:36:37 +00:00
Konstantin Hudyakov
ff07e53f99 [IFT] Move findBaseSdks calls to background
There were the exceptions that it should be run in the EDT.

IJ-CR-102100

GitOrigin-RevId: a5195b812dcb79481ed4ef4d81dff315826dec4a
2023-01-31 08:56:24 +00:00
Konstantin Hudyakov
85bb873c52 [IFT] Adapt IDEA and PyCharm onboarding lessons to new UI
GitOrigin-RevId: 3e1194fff5e155a3649cd3484d2338c92edf99be
2023-01-30 09:22:40 +00:00
Daniil Ovchinnikov
578eaaf60e rename library kotlin-stdlib-jdk8 -> kotlin-stdlib
GitOrigin-RevId: cddf45ccfd5563d3fe209bea62a1c37c94f44ff9
2023-01-10 12:22:34 +00:00
Alexey Belkov
390ba59bc2 Fix spelling of "quick-fix" phrase in messages
It should be hyphenated: https://www.jetbrains.com/help/idea/resolving-problems.html

GitOrigin-RevId: a3cc01babc32c3edfbe59594fa3756a415cc169b
2022-12-07 15:26:37 +00:00
Mikhail Glukhikh
e0549efc25 Migration to 1.8: fix errors around definitely not-null types (Any bounds etc.)
See KT-36770 in particular.

Note: beginning from Kotlin 1.6, we control nullability of type parameter-based
types more strictly. For example, it's not allowed to pass something of type 'T'
when '@NotNull T' or 'T : Any' is required. It's correct both for K1 & K2.

(cherry picked from commit a2f95c85d2673ff4688cd38aeacb5030df6000a8)

IJ-MR-99516

GitOrigin-RevId: d91601956a53489f29bc72b32e4810122ede0b1c
2022-12-03 14:16:15 +00:00
Konstantin Hudyakov
c3633782db IFT-423 Do not proceed the run lesson if user ran current file configuration
This lesson is designed to show run configurations feature, so running the current file should take no effect.

IJ-CR-98349

GitOrigin-RevId: 3a5b084488e564c15919e7ecd8e9f4e91e2ac0ca
2022-11-14 13:29:37 +00:00
Konstantin Hudyakov
27864baf43 [IFT] Remove all run configurations on onboarding lesson start
It is needed to properly show 'current file' configuration running.

GitOrigin-RevId: 96329953da9d05898d842b87b6b15ba1f0f729bd
2022-11-04 09:08:07 +00:00
Konstantin Hudyakov
5ae4a01bbd IDEA-300739 Do not create LangSupport instance during project opening
GitOrigin-RevId: 41a8fadefb8cb2d9a7b3be862b26da4b566fd9fa
2022-09-06 06:02:40 +00:00
Konstantin Hudyakov
68b7c53db2 IDEA-300739 Do not create instances of LangSupport during LangManager initialization
GitOrigin-RevId: a985502bde6f18d6fae7ba33463f7c6fad0b3a09
2022-09-06 06:02:37 +00:00
Andrey Vokin
3c1adcbb73 Revert "DS-3787 Missing "No SDK" panel for Python and Jupyter files"
This reverts commit d733de44d45b1c012bd16187416978930daf6277

GitOrigin-RevId: 4d7f542133189347e6be96c27dbb7c403b345f39
2022-09-02 10:50:12 +00:00
Andrey Vokin
df6cd8cb55 Revert "DS-3787 Missing "No SDK" panel for Python and Jupyter files"
This reverts commit 451cbab341b4da1d657685b65b86a1e3eb68ff9d.

GitOrigin-RevId: f3555635d00f8f0c9d1e6bc1315246c174bddb23
2022-09-02 10:50:09 +00:00
Konstantin Hudyakov
09cf2b1fee IDEA-300739 Add tests for checking integration of lessons with tips
GitOrigin-RevId: 04aeced1e0b20f5f74f0296270fa6ce22020d66e
2022-09-01 15:42:25 +00:00
Konstantin Hudyakov
5ae19d4044 IDEA-300739 Remove obsolete declarations of tips for lessons
GitOrigin-RevId: 23f0dc181089c24280e88702da46228b3777750f
2022-09-01 15:42:24 +00:00
Konstantin Hudyakov
26265ef6ff IDEA-300739 Specify tips for lessons in learning course
GitOrigin-RevId: a74698489a8af593e07a936422e27ebe76da6f98
2022-09-01 15:42:23 +00:00
Andrey Vokin
6921dc6971 DS-3787 Missing "No SDK" panel for Python and Jupyter files
Decouple quickfixes from PyEditorNotificationProvider

GitOrigin-RevId: 451cbab341b4da1d657685b65b86a1e3eb68ff9d
2022-08-18 08:59:13 +00:00
Andrey Vokin
0bef9bdf84 DS-3787 Missing "No SDK" panel for Python and Jupyter files
PyInterpreterInspection -> PyEditorNotificationProvider

GitOrigin-RevId: d733de44d45b1c012bd16187416978930daf6277
2022-08-18 08:59:09 +00:00
Alexey Merkulov
c3a34a3b17 [IFT] Remove unused icon and regenerate FeaturesTrainerIcons class
IJ-CR-94315

GitOrigin-RevId: cb0b8119f504d082b1466c3b4ca41eeb71ee550a
2022-08-17 20:34:15 +00:00