# Write cleaner and faster Python code

> Source: <https://www.infoworld.com/article/4186455/write-cleaner-and-faster-python-code.html>
> Published: 2026-06-19 09:00:00+00:00

Meta’s long-awaited Pyrefly linter is out in a 1.0 version, and the forthcoming [Python 3.15](https://www.infoworld.com/article/4166693/the-best-new-features-in-python-3-15.html) has a super-efficient sampling profiler. Plus we have a comprehensive rundown of Python’s indispensable virtual environments — and a warning about a novel breed of malware that exploits Python’s package ecosystem.

[How to use virtual environments in Python](https://www.infoworld.com/article/2260103/how-to-use-virtual-environments-in-python.html)

Isolate and protect your Python projects from each other, and empower them to do more, with virtual environments and their native-to-Python tooling.

[Pyrefly 1.0: A fast, forward-looking Python linter](https://www.infoworld.com/article/4179383/pyrefly-1-0-a-fast-forward-looking-python-linter.html)

The first full release of Meta’s long-awaited linting and type checking tool for Python delivers speed and offers advanced features for type-checking PyTorch and Django projects.

[Hands-on with the new sampling profiler in Python 3.15](https://www.infoworld.com/video/4085906/hands-on-with-the-new-sampling-profiler-in-python-3-15.html)

Among Python 3.15’s best new features is a sampling profiler, for instrumenting your code and finding its bottlenecks with a minimum of performance impact or fuss. See up-close how it works.

[All about Hades, the supply-chain malware that hides in Python packages](https://www.infoworld.com/article/4182692/meet-hades-the-malware-that-lies-to-ai-security-agents.html)

It hides in Python packages. It replicates itself across systems. It fools LLM-based code analysis tools into ignoring it. And there may be a lot more like it to come.

[Python Steering Council calls for temporary pause on JIT project](https://discuss.python.org/t/an-announcement-from-the-steering-council-regarding-the-jit-project/107638)

The requested pause stays in place until a proper Standards Track PEP lands for the experimental JIT (just-in-time) compiler, the better to describe how the JIT will be a formal and supported part of Python.

[Pyodide 314.0: Pyodide packages on PyPI](https://blog.pyodide.org/posts/314-release)

Thanks to PEP 783, Python packages built with Pyodide (Python ported to WebAssembly) can be installed straight from PyPI instead of through Pyodide — another step closer to Py-on-Wasm becoming an everyday thing.

[All about that Python 3.14 garbage collection rigmarole](https://theconsensus.dev/p/2026/06/06/python-3-14-garbage-collection-rigamarole.html)

A new garbage collector introduced in Python 3.14 was yanked at the last minute due to reports of higher memory usage. Here’s a deep dive into what changed for the worse and why.

[Are you really expected to run five type checkers now?](https://pyrefly.org/blog/too-many-type-checkers)

No, but you should keep your options open. This blog post from a Pyrefly contributor recommends choosing one of the major offerings (Mypy, Pyrefly, Pyright, ty, Zuban, etc.), but also getting to know the others too.
