Skip to content

Instantly share code, notes, and snippets.

View Vizonex's full-sized avatar

Vizonex Vizonex

View GitHub Profile
@Vizonex
Vizonex / mutlidict_cython_api.pxd
Last active September 25, 2026 06:31
Multidict Cython-API Generator is a generator for cython code. This may be a lot more opinionated then what was chosen for use with the multidict C-API.
# NOTE: Generated based off the verison that was written before the first release of the New Multidict C-API
# Sources may differ as updates keep getting produced.
from cpython.object cimport (
PyObject as PyObject,
PyTypeObject as PyTypeObject
)
from libc.stdint cimport uint64_t as uint64_t
cdef extern from "multidict_capi_struct.h":
@Vizonex
Vizonex / uvloop_and_winloop_enhancements.pyx
Created May 27, 2026 04:00
UVLoop Performance Enhancement ideas & Notes. This Brings in a custom Coroutine and Awaitable Container object which could vastly eliminate a lot of python heavy rendering with the main task as well as other unique stuff
cimport cython
from cpython.exc cimport PyErr_SetObject
from cpython.contextvars cimport PyContext_CopyCurrent
from asyncio import get_event_loop, format_helpers, CancelledError, InvalidStateError
import sys
from cpython.list cimport PyList_GET_SIZE
# Concept work for winloop & uvloop speedups in theory.
cdef extern from "Python.h":
@Vizonex
Vizonex / atomic.pxd
Created April 9, 2026 15:58
cyatomics is a fork of python's atomic stuff that has it's things renamed to prevent overlapping this is mostly just an idea for getting cython to someday support atomics. This was code I had left for around 3 months but was mostly just word rewriting of python's atomic structure
# Contains a collection of pyatomic functions that have been exclusively modified for the use with
# C Compiled sources for the sake of speed and needing less costly functionality
# or having to deal with the annoying headaches of adding these in yourself.
from libc.stdint cimport *
cdef extern from "cyatomics.h" nogil:
int _cyatomic_add_int(int *obj, int value)
int8_t _cyatomic_add_int8(int8_t *obj, int8_t value)
int16_t _cyatomic_add_int16(int16_t *obj, int16_t value)
@Vizonex
Vizonex / uv-ares.c
Last active March 14, 2026 16:36
This is a historical document from 2012 of how C-Ares and Uvloop were originally used together. I am using it mostly for brainstorming ideas with pycares and cyares
/* Copyright Joyent, Inc. and other Node contributors. All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
@Vizonex
Vizonex / _http_writer.pyx
Created February 9, 2026 19:47
MultiDict Optimization workaround that focuses on making it possible to optimize iterations without hindering the performance of other types of objects or the multidict python backup This idea is still under concept so just a warning!
# here's how we could use our custom module we made to eliminate some slowness with other things.
# example show is aiohttp/_http_writer.pyx with a few upgrades but also our own module being injected on in.
from cpython.bytes cimport PyBytes_FromStringAndSize
from cpython.exc cimport PyErr_NoMemory, PyErr_SetString, PyErr_SetObject
from cpython.mem cimport PyMem_Free, PyMem_Malloc, PyMem_Realloc
from cpython.object cimport PyObject_Str
from libc.stdint cimport uint8_t, uint64_t
from libc.string cimport memcpy
@Vizonex
Vizonex / deprecated_subclass.py
Last active December 7, 2025 15:51
This was a concept for a new library to supply a deprecation warning that subclassing an object is deprecated this is good for warning users not to subclass the type of object your planning to disallow subclassing for. Code originates from my cyares project but I plan to seperate it if someone wants it as it's own pypi package.
"""A External Module for the deprecation of subclassing a class
this will be a seperate library soon if demand is seen for it."""
import functools
import warnings
from collections.abc import Sequence
from types import MethodType
from typing import TypeVar
# Modeled after deprecated-params but for the deprecation of subclassing
@Vizonex
Vizonex / fix_yaml.py
Created November 11, 2025 23:38
Fixer for pre-commit under the circumstances that were on windows and pre-commit-yaml doesn't decide to play nicely with us.
# Small mini fixer for pre-commit yaml to play nicely with windows since windows has it's own quirks unlike linux.
# This repairs and fixes the probelm.
import sys
import pathlib
if __name__ == "__main__":
if ("--help" in sys.argv) or ("-h" in sys.argv):
print(" fix_yaml.py <FILE>\n")
print(" FILE A yaml file that needs fixing")
print(" --help, -h Prints help and exits")
@Vizonex
Vizonex / anyioshed.py
Created October 31, 2025 20:01
Mainly used so I can demonstrate something I wanted implemented in apsheduler before learning it existed. This code runs correctly and I have a quick and dirty example of the way it is used.
"""A Small and compact scheduler built off anyio and reedited around python-std shed"""
from __future__ import annotations
import inspect
import sys
from collections import deque
from datetime import datetime, timedelta
from itertools import count
from typing import (
@Vizonex
Vizonex / aiosched.py
Last active October 29, 2025 15:59
python's standard scheduler made for asyncio with a couple of upgrades. IF anyone wants this I'll make it into a pypi package and I'll go and add some pytests.
"""A Small and compact scheduler built off asyncio and reedited around python-std sched"""
from __future__ import annotations
import asyncio
import heapq
import inspect
import types
from itertools import count
from typing import (
@Vizonex
Vizonex / CWriter.h
Last active October 19, 2025 19:41
concet for a new writer for aiohttp based written in CPython based off the current aiohttp _http_writer written in cython but with a few more apis for http/2 http/3 frame packing
/* This CPython Writer is a mirror of the aiohttp & Yarl source code for implementing
a fast and easy to use writer that could be implemented & Used in Cython and
CPython projects. This was an idea for the transition of the current _http_writer
cython module in aiohttp on over to C When or if we decide to go down that route with
header serlization with Http/1.1 ,
This also has new tools that could be used for http/2 Frame writing
so this library also implements tools that the struct module would use but for writing
in special bytes.