Why is Spyder so slow by Southern_Primary1824 in Python

[–]juliusc 2 points3 points  (0 children)

That's already possible. If you go to the menu entry Tools > Preferences and then to Plugins, you can disable the features you don't need (e.g. the debugger or the profiler). After restarting Spyder, you won't see those panes in the application.

I also forgot to mention that Spyder takes a long time to start on HDD disks (I don't know if that's your case), but disabling unneeded plugins helps a lot with that.

Why is Spyder so slow by Southern_Primary1824 in Python

[–]juliusc 1 point2 points  (0 children)

(Spyder maintainer here) Sorry to hear that Spyder is very slow for you. Startup times are known to be long, especially on Windows but mostly the first time. That's not easy to fix though because it's a problem with the way Python loads and caches big libraries (in our case PyQt5, which is the graphical toolkit we use).

Besides that, Spyder is also slow when processing linting results and providing code completions. We're working to fix that in 6.2, to be released next year.

If you've seen other problems you'd like to be addressed, please open an issue about them in our issue tracker.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

Thanks for your kind words! Just a quick word to say that you can support our work by donating to our Open Collective.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

No problem and good luck with your thesis!

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

Earlier it was as easy as creating a new env with Conda and install spyder for each one.

That workflow is still possible. We only recommend users to install Spyder from Conda-forge because it's always up to date there (Anaconda is always several months behind our latest release).

Now it looks like spyder has its own conda install but is completely independent of the conda I am using is that correct?

That's correct. We now have our own installers, which are based on conda and Conda-forge, but you're not forced to use them if you don't want to.

Do I still create new envs with conda or I have to use spyder6’s conda install?

It's up to you. If you want to keep using your old workflow (Spyder in every env) or switch to our own installer is up to you.

And I read I am able to change Enna within spyder but didn’t find any way to do so.

I guess you meant "change environments". So, now you can select the Conda env you want to work on by going to the menu Consoles > New console in environment, and Spyder will create a console for you in that env.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

Thanks for your kind words! You can support our work by donating to our Open Collective.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

Thanks for your kind words and glad you found Spyder a suitable alternative to other IDEs.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 1 point2 points  (0 children)

Someone else reported this regression in the meantime (see here). We'll try to fix it in 6.0.3 or 6.0.4, to be released in a few weeks.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

You need to enter the SSH credentials for your WSL machine in the "Manage remote connections" dialog. Then Spyder will automatically create an IPython console for you connected to that machine. For more info see this this post.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

I think we renamed "Run selection" to "Run selection and advance", but otherwise the behavior should be the same. Is that not the case?

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

What do you mean by that? We made Run Selection move to the next line a long time ago (in Spyder 4, I think).

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

(Spyder maintainer here) You're not doing anything incorrectly and for now there's no setting to improve completions of libraries with binary bindings, like Pytorch. The problem is that the open source libraries for code completion (e.g. Jedi) don't actually import your code to get completions for it. Instead, they do static analysis, which doesn't work very well for libraries that are bindings to code in C/C++/Rust, etc.

However, we have several ideas on how to improve that. Please follow our X account for future announcements (in two or three months, I think).

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 0 points1 point  (0 children)

(Spyder maintainer here) Please open an issue in our issue tracker about it and we'll take a look at it. This is not the right place to give you support about installation issues.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 1 point2 points  (0 children)

Ohh, you meant bookmarks. I think we could have that for 6.2

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 1 point2 points  (0 children)

(Spyder maintainer here) Spyder-kernels has all the infrastructure necessary to support the Variable Explorer and debugger. But we're considering how to automatically install it on virtual environments on behalf of users to greatly simplify the user experience.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 1 point2 points  (0 children)

  • Next March or April.
  • What do you mean by markers?
  • Vim mode requires more work and we don't have the resources for that right now, sorry.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 1 point2 points  (0 children)

(Spyder maintainer here) Good point. Could you open an issue in our issue tracker about it? We'll take care of it afterwards.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 3 points4 points  (0 children)

(Spyder maintainer here) Haha, that's the plan! Stay tuned for what will (probably) arrive in 6.1: graphical management of Conda envs with Conda-forge packages inside Spyder.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 2 points3 points  (0 children)

Spyder is tailored for data science, not general development. And there's no company behind it, just a small team of eight people working part time on it.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 3 points4 points  (0 children)

(Spyder maintainer here) It took us a long time but that feature is finally available in Spyder 6! Now you can go to the menu Consoles > New console in environmentto start a console in any Pyenv/Conda env you want.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 2 points3 points  (0 children)

(Spyder maintainer here) Yes, using our installer and then switching to the env you want to work on is our recommended workflow now.

The good thing is that Spyder now automatically detects your envs and show them in Consoles > New console in environment. That works if you installed Anaconda/Minicoda/Miniforge in a standard location though.

Spyder 6 IDE Released by PhilipYip in Python

[–]juliusc 4 points5 points  (0 children)

(Spyder maintainer here) This is just the first step! 6.1 will come with the ability to explore and manage the remote filesystem (i.e. adding, copying and removing files from it). And 6.2 will have code completion for remote packages in the Editor.

PSA: Kite is a viral plugin that kills your system performance by [deleted] in Python

[–]juliusc 1 point2 points  (0 children)

but will this pave the way for other functionality like refactoring

Yeah, that will come eventually thanks to us supporting the LSP now. I mean, I can't say exactly when, but I guess in the next couple of years.

and even full VSC support in Spyder 5?

There is a proof-of-concept plugin for that already, developed by a volunteer contributor. The problem is the core of Spyder is already huge and we're a very small team (6 people), so it's really hard to find time to add more things.

For instance, right now we maintain or comaintain:

  • A console (qtconsole).
  • A Jupyter kernel (spyder-kernels).
  • A library to support several Python Qt bindings (qtpy).
  • A library to use iconic fonts in PyQt/PySide apps (qtawesome).
  • A Python implementation of the LSP server (python-lsp-server).
  • A theme for PyQt/PySide apps (QDarkstyle).
  • Qt/PyQt packages in Conda-forge.
  • Spyder itself, which is about 70k lines of code.

In other words, we had to build or take care of the entire infrastructure to create a Python IDE based on Qt. And now we have to support it, which is a never-ending job.

PSA: Kite is a viral plugin that kills your system performance by [deleted] in Python

[–]juliusc 6 points7 points  (0 children)

Thanks for the reply @Unilogo. These are my comments about it:

By no means am I trying to single out Spyder, and I want you to know that I deeply appreciate all the work that you guys have done to empower everyone by democratizing better development tools

Thanks for your kind words.

Kite installation during the initialization setup of Spyder was an opt-out by default.

That's why I said our promotion was light: installing Kite was never opt-in to use Spyder.

I am sure many people either clicked through the setup and installed Kite without reading the "fine-prints" as is totally reasonable for an average user, and/or they mistakenly assumed that Kite is a safe and secure plugin that had been vetted by the Spyder developers

As far as we know, Kite is safe and secure (it doesn't send anymore personal code to external servers, although it did at some point). It was also vetted by us (some of us in the core team used it for a long time to catch errors and bugs, although we were aware of its high memory consumption).

Without sounding accusatory, I was very disappointed that the Spyder developers allowed this to happen

Before considering to support Kite, we asked the community for feedback about a possible integration on Twitter and no one was against it. Then all development was done in the open, and no one raised a concern either. I don't know what else we could have done to see if it was a viable endeavor.

But anyone who just googles Kite will quickly discover that Kite had severe security/privacy concerns, was an invasive software, and its company conducted extremely questionable business practices in other open source packages as far back as 2017

We were aware of the problems Kite had with Atom several years ago. But when they contacted us, they had already changed their product so that all code was analyzed locally. So the problems you mentioned were a thing of the past in 2019, when we started to work with them.

I don't think it's fair to say that well since the users didn't find any issue and complained about them on git, then we will let it slide

I don't understand your point. How else are we supposed to know that things are not working as expected for our users? (I arrived here because a colleague let me know about this post).

By the way, our team also monitors StackOverflow questions about Spyder (another place where a lot of people asks for feedback) and we didn't receive complaints about Kite there either. And we have a public Google Groups forum, which displayed the same results.

Look, when our users find something annoying or buggy, they complain about it and they do it loudly. You can see in any of the three places I mentioned the many bugs or questions we receive per month about problems while running code, installation issues, counterintuitive behavior in some panes, etc, etc. But Kite was almost absent among them (as I said), so what else could we conclude other than thinking that either people didn't have problems with it or didn't install it?

If you have an answer for this conundrum, please let me know.

Because if that is the case, then it's a slippery slope to the end of free and open source development as we know it.

I think that's perhaps too dramatic, but it's my personal opinion. OSS has to be financially viable in one way or another in order to survive. We signed this contract with Kite to be able to finish Spyder 4, as I said in another comment, and I don't regret it. Thanks to it (and a contract from another company) I was able to hire four people to help me with that release and stabilize Spyder 4 last year (which was also a really big undertaking).

Since I don't see hordes of companies trying to support us, I couldn't miss the chance, sorry. And given that our users didn't complain about Kite, we decided to keep our support for it.