7 repositorios
Mechanism for committing changes to a state tree after a mutation producer function completes.
Distinct from Finalizer Hooks: Different from garbage collection finalizers or blockchain finality; refers to the commit phase of a draft-based update.
Explore 7 awesome GitHub repositories matching software engineering & architecture · Finalization-Based State Commitment. Refine with filters or upvote what's useful.
Immer is an immutable state management library used to create new versions of data structures. It allows the production of new state by mutating a temporary draft instead of using manual object spreading. The project implements structural sharing to reuse unchanged parts of a data tree between versions, which reduces memory consumption. It also functions as a JSON patch generator to calculate and output the differences between two state versions. To ensure data integrity, the library includes a state mutation protector that freezes data structures to detect and prevent accidental modificatio
Commits changes from a temporary proxy draft to a final immutable state once the mutation function completes.
Immer is an immutable state management library for JavaScript that enables the creation of new versions of state trees. It functions as a state container that uses a proxy-based handler to ensure data immutability. The library utilizes a copy-on-write mechanism and a draft-based mutation model. This allows users to write mutating code on a temporary proxy, which the system then uses to produce a new immutable result while keeping the original state unchanged. The project covers immutable state management and complex object cloning to facilitate predictable state transitions. These capabiliti
Computes the final immutable state by applying recorded mutations once the producer function completes.
Elsa Core is a workflow engine framework designed for defining, executing, and managing long-running business processes. It functions as a distributed workflow orchestrator and event-driven trigger system, capable of operating as a multi-tenant platform with secure data isolation. The project distinguishes itself through a flexible approach to workflow definitions, supporting a visual drag-and-drop designer, programmatic C# definitions, and portable JSON specifications. It provides a highly extensible architecture allowing for the development of custom activities and the use of a dynamic expr
Balances durability and performance by controlling when workflow state is saved to storage.
SharpKeys is a Windows registry keyboard remapper and input customizer. It functions as a tool for changing keyboard key assignments by modifying the Windows registry scancode map. The utility includes a keyboard key identifier to detect the internal scan code of a pressed key, which facilitates accurate remapping and identification of physical keys. The software covers keyboard input identification and custom keyboard layout setup, allowing users to swap or disable keyboard inputs by managing the Windows registry.
Tracks desired key mappings in a local data structure before committing the final changes to the system registry.
FRRouting es una suite de enrutamiento de internet que comprende una colección de daemons que implementan protocolos de enrutamiento IPv4 e IPv6 estándar. Proporciona un motor de protocolo para BGP, un virtualizador de red EVPN y un gestor de etiquetas MPLS, junto con una interfaz de enrutamiento gRPC para la configuración programática y la recuperación de datos utilizando modelos YANG. La suite se distingue por su extensibilidad a través de un framework de scripting Lua que ejecuta scripts personalizados en hooks internos para modificar el comportamiento de enrutamiento. También cuenta con un modelo de configuración transaccional que utiliza bases de datos candidatas y en ejecución separadas para garantizar commits atómicos y reversiones de la configuración del sistema. El proyecto cubre una amplia gama de protocolos de puerta de enlace interior y exterior, incluyendo OSPF, IS-IS, EIGRP y RIP. Admite ingeniería de tráfico avanzada a través de Segment Routing y SRv6, virtualización de red a través de aislamiento VRF y L3VPNs, y monitoreo integral a través de SNMP y BGP Monitoring Protocol. El software se puede desplegar mediante compilación de fuente, cadenas de herramientas de arquitectura cruzada o imágenes de contenedor Docker preconstruidas.
Validates configuration changes in a candidate store before atomically committing them to the active running state.
Netmiko es una biblioteca de Python y un kit de herramientas de automatización de red multi-proveedor que proporciona una interfaz unificada para gestionar hardware de red diverso. Funciona como un wrapper de conexión SSH CLI, simplificando el proceso de establecer sesiones seguras y automatizar interacciones con dispositivos de red. El proyecto abstrae la lógica de conexión específica del proveedor y la sintaxis de comandos a través de un sistema basado en controladores, permitiendo una automatización consistente en diferentes marcas de hardware. Incluye capacidades para la detección automática del tipo de dispositivo y admite extensiones de proveedor personalizadas para garantizar la compatibilidad con hardware no soportado. El kit de herramientas cubre una amplia gama de tareas operativas, incluyendo la gestión de configuración de red con escalada de privilegios automatizada y flujos de trabajo de commit. Proporciona utilidades para la auditoría de dispositivos de red mediante comandos de solo lectura, transferencias de archivos seguras mediante SCP o métodos programados, y la capacidad de enrutar conexiones a través de jump hosts o servidores de terminal. La biblioteca gestiona la seguridad de la sesión a través de varios métodos de autenticación SSH y proporciona registro de tráfico de comunicación para auditoría y depuración.
Implements commit-based workflows to ensure pending configuration changes are permanently applied to the device.
Este repositorio sirve como una referencia y biblioteca integral para la programación en ABAP, ofreciendo una colección de resúmenes de sintaxis concisos y ejemplos de código ejecutables. Está diseñado para ayudar a los desarrolladores a aprender las características principales del lenguaje y los patrones de desarrollo modernos mediante guías prácticas de implementación. El proyecto se distingue por ofrecer una biblioteca de ejemplos reutilizables basados en clases que demuestran conceptos complejos de desarrollo empresarial. Cubre la implementación de objetos de negocio estructurados, incluyendo la gestión de estados con borradores, ganchos de ciclo de vida basados en eventos y modelado basado en metadatos. Estos ejemplos permiten a los usuarios explorar patrones de diseño orientados a objetos y verificar cómo se comportan estructuras de programación específicas en un entorno de desarrollo real. Más allá de la sintaxis y los patrones de diseño, el recurso proporciona orientación sobre la gestión de la persistencia de datos, la aplicación de validaciones de lógica de negocio y la implementación de control de acceso basado en políticas. El repositorio está estructurado para ayudar a los ingenieros a construir y mantener aplicaciones empresariales consistentes y seguras, ilustrando cómo manejar las relaciones de datos y los cambios de estado en sistemas empresariales.
Maintains temporary data versions in a separate persistence layer to allow for non-destructive editing before final commitment.