Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Elegant debug module
Python Code Example
# file.py
from nezu import say
x = 13
say('x') # Prints debug info.
Bash Commands to Debug
export NEZU_SEEK=1
python file.py
@4 L.. x:int => 13
Powershell Commands to Debug
$env:NEZU_SEEK = 1
python file.py
@4 L.. x:int => 13
Pip
python -m pip install nezu
Poetry
python -m poetry add nezu
@7 ..B print:function => Prints the values to a stream, or to sys...
│ │ │ │ │
│ │ │ │ └─ Value of inspected variable
│ │ │ │
│ │ │ └─────────────── Type of inspected variable.
│ │ │
│ │ └───────────────────── Name of inspected variable.
│ │
│ └───────────────────────── Scope of inspected variable (see bollow).
|
└─────────────────────────── Line number of inspection.
L..
- local scope, no shadowingLg.
- local scope, shadowing globalL.b
- local scope, shadowing built-inLgb
- local scope, shadowing global and built-in.G.
- Global scope, no shadowing.Gb
- Global scope, shadowing built-in..B
- Built-in scope, no shadowing...
- Undefinedsay
Inspect scopes and values of given keys (variable names etc.).
Args
*keys:str
Names of variables to inspect
note:str = None
Optional comment. Ignored if equal to None.
hide:int = 1
This argument is compared with nezu.seek
.
If nezu.seek >= hide
this debug inspection will be displayed.
If hide <= 0, this message will be displayed by default.
Python Code Example
# file.py
from nezu import say
egg = 3
ham = int()
spam = {'spam':'bacon'}
say('egg') # Works on simple variables.
say('ham.real') # Works on attributes.
say('print') # Works on functions and built-ins.
say('spam["spam"]') # DOES NOT work on keys and indexes yet.
Note
Output of say
function is hidden by default. If you want to see what nezu has to say you need to configure env var NEZU_SEEK
with value of 1
or more.
Module nezu
creates nezu
object that has config attributes used by function say
.
nezu.seek:int = 0
Compared to say
argumenthide
, if nezu.seek >= hide
then say
will be printed.nezu.color:bool = False
Determines if output of say
function should be colored.nezu.lock:bool = False
If nezu.lock = True
, this config cannot be changed later, during runtime.If you want to use default config method, change your env vars in terminal and run Python script.
Bash
export NEZU_SEEK=1
export NEZU_COLOR=1
export NEZU_LOCK=0
python file.py
PowerShell
$env:NEZU_SEEK = 1
$env:NEZU_COLOR = $True
$env:NEZU_LOCK = $True
python file.py
If you don't want to use env vars as config, you can call nezu.json()
to read config data from json file.
It will search for key nezu
inside chosen file.
Args
path:str = 'nezu.json'
- path of config fileExample Python Code
from nezu import nezu, say
nezu.json('my/json/file.json')
Example Config File
"nezu": {
"seek": 1,
"color": true,
"locked": false
}
If you don't want to use env vars as config you can also call object nezu
like function to make hardcoded config.
Args
seek:int = 0
- debug levelcolor:bool = False
- output coloringlock:bool = False
- lock this configExample
# file.py
from nezu import nezu, say
nezu(1, True, False)
...
Tip
There is no built-in support for yaml, toml or .env in nezu This is so nezu can stay free of dependencies. However you can use hardcoded config to pass data from any config file.
By default nezu output is monochrome. If your terminal of choise support coloring you can change that.
Example Bash Command
export NEZU_COLOR=1
python file.py
Example PowerShell Command
$env:NEZU_COLOR = $True
python file.py
Example JSON Config File
"nezu": {
"color": true,
}
Example Hardcoded Config
from nezu import nezu, say
nezu(color = True)
...
Function say()
can be hidden more by hide
parameter. By default only say calls with hide <= nezu.seek
will be printed. In examples bellow only says hidden up to level 3 are displayed.
Python Code Example
#file.py
from nezu import say
say('egg', hide=1)
say('ham', hide=2)
say('spam', hide=3)
say('bacon', hide=4)
say('lobster', hide=5)
Bash Example
export NEZU_SEEK=3
python file.py
@4 ... egg
@5 ... ham
@6 ... spam
PowerShell Example
$ENV:NEZU_SEEK = 3
python file.py
@4 ... egg
@5 ... ham
@6 ... spam
JSON File Example
"nezu": {
"seek": 3
}
FAQs
Elegant debuging module
We found that nezu demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.