Dexv-Stuff
Stuff i use in my projects
Installation
pip install dexvstuff
Features
- Logger: My own logger which i like
- Files: Simplified file operations
- JsdomRuntime: Execute js in a dom environment
- Wabt: WebAssembly Binary Toolkit wrapper for Python. For a better WABT wrapper, check out wabt.py
Usage
Logger
from dexvstuff import Logger
# basic logger
log = Logger()
# customized
log = Logger(prefix="Dexv", indent=2) # prefix is optional, indent can be any number (default is 0)
log.info("This is an info message")
log.success("This is a success message")
log.warning("This is a warning message")
log.failure("This is a failure message")
log.debug("This is a debug message")
log.captcha("This is a captcha message")
log.PETC() # Press Enter To Continue
Files
from dexvstuff import Files
Files.create("example.txt")
Files.create(["dir1/file1.txt", "dir2/file2.txt"])
Files.write("example.txt", "Dexvstuff is cool")
print(Files.read("example.txt"))
Files.append("example.txt", "\nDexvstuff is even cooler")
print(Files.get_file_size("example.txt"))
Files.delete("example.txt")
JsdomRuntime
from dexvstuff import JsdomRuntime
runtime = JsdomRuntime()
print(runtime.eval("console.log('Dexvstuff is cool')"))
print(runtime.eval("new Promise((resolve) => setTimeout(() => resolve('Dexvstuff is cool'), 1000))", promise=True)) # resolves promises
print(runtime.eval('''(function() { return new Uint8Array([1, 2, 3]) })()''', byte_array=False)) # support js byte arrays
Wabt
from dexvstuff import Wabt
wabt = Wabt()
wat_output, errors = wabt.wasm2wat("example.wasm")
wasm_output, errors = wabt.wat2wasm("example.wat")
objdump_output, errors = wabt.wasm_objdump("example.wasm")
...
Documentation
Logger
Logger(prefix=None, indent=0): create a new logger instanceprefix: optional string to prefix all messages (default: None)indent: number of spaces to indent messages (default: 0)
info(message): info messagesuccess(message): success messagewarning(message): warning messagefailure(message): error messagedebug(message): debug message (only shown in debug mode)captcha(message): captcha-related messagePETC(): pause execution until Enter is pressed
Files
create(path): create file or directoryread(path): read file contentwrite(path, content): write content to fileappend(path, content): append content to filedelete(path): delete fileget_file_size(path): get file size in bytesexists(path): check if file/directory exists
JsdomRuntime
eval(code, promise=False, byte_array=False): execute JavaScript codepromise: set to True if code returns a promisebyte_array: set to True if code returns a byte array
Wabt
wat2wasm(file): convert .wat to .wasmwasm2wat(file): convert .wasm to .watwasm_objdump(file): inspect WASM filewasm_decompile(file): decompile WASM to C-like code- All WABT tools are supported but not all are defined in the wrapper, you can still use them through dynamic attribute access
- Example:
wabt.wasm_validate('file.wasm')will call the wasm-validate tool - See WABT documentation for all available tools
- Example:
License
MIT License - See LICENSE for more information
Metadata
Release files for dexvstuff 0.0.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dexvstuff-0.0.9.tar.gz | 6.8 kB | Without provenance | Details for dexvstuff-0.0.9.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dexvstuff-0.0.9-py3-none-any.whl | Python 3 | none | any | Details for dexvstuff-0.0.9-py3-none-any.whl |
Total release size: 14.3 kB
Release files / dexvstuff-0.0.9.tar.gz
| Download URL | dexvstuff-0.0.9.tar.gz |
|---|---|
| Size | 6.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d2cc4a3ca0528d2dc6a780fda806637bcc988abd75608b0cd1c73102d5757b05
|
|
BLAKE2b-256 checksum How to use checksums |
bd742646f20e2d451abf2b362ba60f02793886a9f60b90fa73c136bb9ef7df3b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.0
|
Release files / dexvstuff-0.0.9-py3-none-any.whl
| Download URL | dexvstuff-0.0.9-py3-none-any.whl |
|---|---|
| Size | 7.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fd145ec6e04154fdcd894253aa40d51975b2c47ebe5d1769ca9a0961efe1e7b5
|
|
BLAKE2b-256 checksum How to use checksums |
2807d8676213dee3dbd7dd85c68406acfed2cd4a9936dfe26584335fa17e494f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.0
|
Security for dexvstuff 0.0.9
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.