How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.
Ea-async is a compilation framework and bytecode instrumentation library for the Java Virtual Machine that transforms compiled class files at build time to enable native asynchronous programming patterns without runtime overhead. It automatically modifies binaries to inject asynchronous execution logic, converting direct asynchronous method bodies into state machines that manage suspension and resumption across non-blocking boundaries.
The main features of electronicarts/ea-async are: Build-Time Bytecode Transformers, Bytecode and Instrumentation, Sequential, Asynchronous Programming, Offline Bytecode Instrumentation, Java Concurrency Frameworks, Build-Time Instrumentation Toolkits, Asynchronous Execution State Machines.
Open-source alternatives to electronicarts/ea-async include: luckybilly/cc — CC is an Android componentization framework and modularization tool designed to transform monolithic applications into… jakewharton/hugo — Hugo is an annotation-based debugging tool and Java method logging library. It functions as a method execution tracker… cl0610/java-concurrency — This Java concurrency library provides a suite of tools for managing multi-threaded execution, synchronization, and… java-edge/java-concurrency-progamming-tutorial — This repository serves as a comprehensive educational resource for mastering multi-threaded development and… jacoco/jacoco — JaCoCo is a Java code coverage tool and bytecode instrumenter that measures which parts of source code are executed… mockk/mockk — MockK is a Kotlin test double framework that creates mocks, spies, and relaxed mocks for unit testing, with support…
CC is an Android componentization framework and modularization tool designed to transform monolithic applications into independent components. It provides a system for launching and debugging individual components in isolation to reduce compilation times and a communication layer for executing functions across different Android processes using a unified interface. The project utilizes a build-time bytecode plugin to automatically register components and interceptors, removing the need for manual boilerplate configuration. It supports incremental architecture migration, allowing a codebase to
Hugo is an annotation-based debugging tool and Java method logging library. It functions as a method execution tracker that records method arguments, return values, and execution durations during application runtime. The project differentiates itself by using annotation-driven instrumentation and bytecode-level aspect injection to capture telemetry without requiring manual print statements. It employs post-compilation bytecode manipulation and aspect-oriented wrapping to insert interception logic around annotated method boundaries. The library covers observability and monitoring capabilities
This Java concurrency library provides a suite of tools for managing multi-threaded execution, synchronization, and memory consistency. It serves as a comprehensive framework for implementing concurrent execution through lock-free atomics, thread-safe collections, task coordination primitives, and worker pools. The project includes a dedicated thread synchronization toolkit featuring latches, barriers, and semaphores to coordinate the timing and order of concurrent tasks. It also provides a concurrent collection suite of maps, queues, and lists that enable data sharing without manual locking,
JaCoCo is a Java code coverage tool and bytecode instrumenter that measures which parts of source code are executed during tests. It functions as a runtime agent to monitor application execution on the fly or as a library for offline bytecode instrumentation, allowing it to capture execution data in environments where runtime agents are restricted. The project distinguishes itself by providing both dynamic and static instrumentation paths to track execution. It includes a runtime agent for on-the-fly monitoring and the ability to modify compiled class files before execution. It further enable