Avoid PyCharm Overloading ========================= This speeds up PyCharm's package index processes and avoids CPU & memory overloading. On my machine (4c/32GB) with 5 conda environments and 10 projects, this reduces PyCharm's package scanning from 15 minutes to 45 seconds. Why? ---- When PyCharm has multiple conda environments, it will sometimes launch concurrent package scanning across those environments. To do so, it uses the `conda` cli, and a tool called conda_packaging_tool.py, available from the JetBrains intellij-community github repository (see below). Unfortunately, these tools do not behave well when launched in parallel, as they tend to overload CPU & memory in this case. How? ---- To avoid stalling these processes, we modify their sources as follows: 1. modify the conda cli $ conda activate base $ pip install runfast $ nano `which conda` Modify the main section: if __name__ == '__main__': from conda.cli import main from runfast import cached cached(main) 2. modify the conda_packaging_tool.py if __name__ == '__main__': from runfast import cached cached(main) How does this work? ------------------- Two simple steps: 1. When called in parallel, only one process is allowed to proceed. 2. `runfast.cached` caches the output of these tools (stdout, stderr) for 1 minute, given the same command line parameters That is, when PyCharm launches 5 package scanning (`conda list`) commands, only one of them will run immediately. If some of the scans are for the same environment, only one of them will actually run, while the others simply return the same output. How to clear the cache or avoid caching at all? $ export RUNFAST_NOCACHE=1 Testing ------- a) conda packaging tool # first time $ time python /opt/pycharm-community-2021.2.1/plugins/python-ce/helpers/conda_packaging_tool.py real 0m13.271s user 0m9.631s sys 0m1.936s # second time $ time python /opt/pycharm-community-2021.2.1/plugins/python-ce/helpers/conda_packaging_tool.py real 0m3.159s user 0m0.139s sys 0m1.298s b) conda cli # first time $ time conda list -p /path/to/env real 0m7.985s user 0m7.883s sys 0m0.087s # second time real 0m0.152s user 0m0.116s sys 0m0.032s References ---------- * https://github.com/JetBrains/intellij-community/blob/master/python/helpers/conda_packaging_tool.py * https://github.com/conda/conda/blob/33a142c16530fcdada6c377486f1c1a385738a96/conda/core/index.py#L53
This speeds up PyCharm's package index processes and avoids CPU & memory overloading
Overview
addons to the turtle package that help you drew stuff more quickly
TurtlePlus addons to the turtle package that help you drew stuff more quickly --------------
A Python package that provides physical constants.
PhysConsts A Python package that provides physical constants. The code is being developed by Marc van der Sluys of the department of Astrophysics at t
Automated Birthday Wisher built using Python
Automated Birthday Wisher This Automation of wishing Birthday is achieved using Python. Never forget to wish birthday! Table of contents Overview Scre
Free Data Engineering course!
Data Engineering Zoomcamp Register in DataTalks.Club's Slack Join the #course-data-engineering channel The videos are published to DataTalks.Club's Yo
Python wrapper around Apple App Store Api
App Store Connect Api This is a Python wrapper around the Apple App Store Api : https://developer.apple.com/documentation/appstoreconnectapi So far, i
Vaccine for STOP/DJVU ransomware, prevents encryption
STOP/DJVU Ransomware Vaccine Prevents STOP/DJVU Ransomware from encrypting your files. This tool does not prevent the infection itself. STOP ransomwar
π΅Open many google dorks in a fasted way
Dorkinho π΅ The author is not responsible for misuse of the tool, use it in good practices like Pentest and CTF OSINT challenges. Dorkinho is a script
A powerful and user-friendly binary analysis platform!
angr angr is a platform-agnostic binary analysis framework. It is brought to you by the Computer Security Lab at UC Santa Barbara, SEFCOM at Arizona S
An end-to-end Python-based Infrastructure as Code framework for network automation and orchestration.
Nectl An end-to-end Python-based Infrastructure as Code framework for network automation and orchestration. Features Data modelling and validation. Da
A module to develop and apply old-style links
Old-Linkage-Dev (OLD) Old Linkage Development is a module to develop and apply old-style links. Old-style links stand for some traditional or conventi
Um Script De Mensagem anonimas Para linux e Termux Feito em python
Um Script De Mensagem anonimas Para linux e Termux Feito em python feito em um celular
A simple script that shows important photography times. written in python.
A simple script that shows important photography times. written in python.
Nag0mi ctf problem 2021 writeup
Nag0mi ctf problem 2021 writeup
A python library what works with numbers.
pynum A python library what works with numbers. Prime Prime class have everithing you want about prime numbers. check_prime The check_prime method is
A numbers extract from string python package
Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.com/FayasNoushad/Numbers-Extract/blob/main/LICENS
Fetch PRs from GitHub and analyze which ones are unmergeable
Set up token Generate a personal access token on GitHub. Add repo permissions. export GH_TOKEN="abcdefg" Pull PR data make Usually, GitHub doesn't h
Is a util for xferring skinning from one mesh to another
maya_pythonplugins skinTo: Is a util for xferring skinning from one mesh to another args: :param maxInfluences: is the number of max influences on the
CuraMultiplyByGrid - Cura ΠΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π΅ΡΠ°Π»ΠΈ ΡΠ΅ΡΠΊΠΎΠΉ Π½Π° Π²Π΅ΡΡ ΡΡΠΎΠ» Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π±Π΅Π· ΠΏΠΎΠ²ΠΎΡΠΎΡΠ°
CuraMultiplyByGrid Cura ΠΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π΅ΡΠ°Π»ΠΈ ΡΠ΅ΡΠΊΠΎΠΉ Π½Π° Π²Π΅ΡΡ ΡΡΠΎΠ» Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π±Π΅Π· ΠΏΠΎΠ²ΠΎΡΠΎΡΠ°. Π Π°Π·ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΊΡΡΠ΅ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠΆΠ°ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ,
Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.
Statically typed BNF with semantic actions; A frontend of frontend frameworks; Use your grammar everywhere.
This is a Python 3.10 port of mock, a library for manipulating human-readable message strings.
This is a Python 3.10 port of mock, a library for manipulating human-readable message strings.