12 Repos
Linking compiled bytecode execution steps back to original source code lines for debugging.
Distinct from Event-to-Source Mapping: Specializes in the mapping required for stepping through bytecode in a debugger, distinct from general event-to-source mapping.
Explore 12 awesome GitHub repositories matching development tools & productivity · Bytecode-to-Source Mapping. Refine with filters or upvote what's useful.
php-code-coverage is a PHP library and analysis tool designed to track runtime execution and determine which parts of a codebase are exercised by automated tests. It monitors executed lines and branches during a test run to identify gaps in test coverage and evaluate the effectiveness of a test suite. The tool functions as an execution tracker and report generator that transforms raw PHP execution data into human-readable formats. It serializes collected metrics for storage and utilizes a processing system to calculate the total percentage of code covered. Its capability surface covers the e
Maps runtime execution offsets back to the original source code lines for accurate coverage reporting.
This project is a comprehensive technical guide and diagnostic manual for analyzing memory, performance, and asynchronous behavior within Node.js applications. It provides detailed methods for asynchronous tracing, memory diagnostics, and performance analysis to resolve runtime errors and execution bottlenecks. The resource distinguishes itself by covering advanced diagnostic workflows, including the use of flame graphs for CPU profiling, the capture and comparison of heap snapshots for memory leak detection, and the mapping of asynchronous call stacks. It also provides technical guidance on
Maps compiled bytecode execution steps back to original source code lines for integrated debugging.
JaCoCo ist ein Java-Code-Coverage-Tool und Bytecode-Instrumentierer, der misst, welche Teile des Quellcodes während Tests ausgeführt werden. Er fungiert als Runtime-Agent zur Überwachung der Anwendungsausführung im laufenden Betrieb oder als Bibliothek für Offline-Bytecode-Instrumentierung, wodurch er Ausführungsdaten in Umgebungen erfassen kann, in denen Runtime-Agenten eingeschränkt sind. Das Projekt zeichnet sich dadurch aus, dass es sowohl dynamische als auch statische Instrumentierungspfade zur Verfolgung der Ausführung bietet. Es enthält einen Runtime-Agenten für die Überwachung im laufenden Betrieb und die Möglichkeit, kompilierte Klassendateien vor der Ausführung zu modifizieren. Es ermöglicht zudem das Abrufen von Ausführungsmetriken aus laufenden Prozessen über Remote-Netzwerkverbindungen, ohne die aktive Anwendung zu unterbrechen. Das System berechnet quantitative Coverage-Metriken über Anweisungen, Zweige, Zeilen, Methoden und Klassen hinweg, neben Messungen der zyklomatischen Komplexität. Es bietet Funktionen zum Zusammenführen von Daten aus mehreren Testläufen, zur Durchsetzung von Coverage-Schwellenwerten innerhalb von CI/CD-Quality-Gates und zur Generierung von Berichten, die ausgeführten Bytecode auf den Quellcode zurückführen. Eine visuelle Integration ist verfügbar, um diese Ergebnisse direkt in Code-Editoren anzuzeigen. Das Tool lässt sich in Build-Automatisierungssysteme und Befehlszeilenschnittstellen integrieren, um die Datenerfassung und Berichterstellung zu automatisieren.
Links executed bytecode instructions back to original source code lines and methods for report generation.
python-uncompyle6 ist ein Python-Bytecode-Decompiler und Reverse-Engineering-Tool, das darauf ausgelegt ist, kompilierte Bytecode-Dateien zurück in menschenlesbaren Quellcode zu konvertieren. Es fungiert als Quellcode-Wiederhersteller und Bytecode-Disassembler, was die Analyse interner Programmlogik und die Rekonstruktion ursprünglicher Sprachkonstrukte ermöglicht. Das Tool bietet Cross-Version-Unterstützung, was die Analyse und Wiederherstellung von Quellcode aus Bytecode ermöglicht, der über verschiedene Versionen des Python-Interpreters hinweg erstellt wurde. Dies erlaubt den Betrieb als Cross-Version-Bytecode-Analyzer, der unterschiedliche Instruktionssätze unabhängig von der zur Ausführung des Tools verwendeten Version interpretieren kann. Die Funktionen decken Bytecode-Analyse und Programminspektion ab, einschließlich der Möglichkeit, Instruktionen mit interpretierten Flags und Operanden aufzulisten. Das System kann Quellcode aus ganzen Dateien oder spezifischen fragmentierten Segmenten, wie Lambda-Bodys und List Comprehensions, durch Abbildung von Bytecode-Offsets auf Quellfragmente rekonstruieren.
Links specific bytecode offsets to corresponding source code elements for granular analysis and partial recovery.
Bistoury ist ein Produktionsdiagnosetool für Java-Anwendungen, das eine verteilte Debugging-Konsole, einen Performance-Profiler und einen Runtime-Bytecode-Manipulator bereitstellt. Es ermöglicht Echtzeit-Anwendungs-Debugging und Produktionsdiagnose durch die Analyse laufender Java-Anwendungen mittels dynamischer Instrumentierung und Zustandsinspektion. Das System zeichnet sich durch einen Remote-Agent-Manager aus, der Diagnoseverbindungen koordiniert, sowie einen Runtime-Bytecode-Manipulator, der in der Lage ist, Klassen im Speicher neu zu definieren, ohne Prozessneustarts zu erfordern. Es bietet eine Weboberfläche zum Erfassen von Heap-Dumps, Thread-Stacks und lokalen Variablen über mehrere Serverinstanzen hinweg, unterstützt durch eine Proxy-vermittelte Kommunikationsschicht zum Routen von Befehlen an Remote-Ziele. Das Projekt deckt ein breites Spektrum an Observability-Funktionen ab, einschließlich CPU-Performance-Profiling mittels asynchronem Stack-Sampling und Flame-Graphs, verteilter Log-Verwaltung über mehrere Maschinen hinweg und nicht-blockierender Zustandserfassung mittels bedingter Breakpoints. Es enthält zudem Dienstprogramme zur Quellwiederherstellung, die Runtime-Bytecode mit dem ursprünglichen Quellcode durch Dekompilierung oder Integration mit Git- und Maven-Repositories verknüpfen. Das Tool bietet eine Webkonsole und Befehlszeilenschnittstellen für die Verwaltung von Logs, das Abrufen von Systemdateien und die Inspektion von Systemkonfiguration und Umgebungsvariablen.
Links runtime bytecode execution steps to the original source code lines for real-time debugging.
Dieses Projekt ist eine spezialisierte Browser-Debugging-Schnittstelle, die darauf ausgelegt ist, DOM-Elemente, Netzwerk-Traffic und JavaScript-Ausführung zu überwachen. Sie bietet eine clientseitige Benutzeroberfläche zum Inspizieren und Debuggen von Webanwendungen, was die Echtzeit-Modifikation von CSS-Styles und die Untersuchung der JavaScript-Runtime ermöglicht. Das Toolkit enthält dedizierte Analysetools für WebAssembly, inklusive Disassembly-Highlighting, Scope-Inspektion und Profiling der binären Ausführung. Es bietet zudem einen Netzwerk-Traffic-Inspektor zur Analyse von HTTP-Anfragen und einen CSS-Style-Editor zum Testen von Eigenschaften und At-Rules. Das System deckt ein breites Spektrum an Funktionen ab, einschließlich DOM-Baum-Modifikation, Frontend-Performance-Profiling mit CPU-Throttling und Service-Worker-Debugging. Es handhabt zudem das Management von Quellressourcen, wie das Mapping von Netzwerk-Assets auf lokale Dateien und das Pretty-Printing von minifiziertem Code, während es Multi-Language-Lokalisierung unterstützt. Das Projekt ist in TypeScript entwickelt und verwendet eine komponentenbasierte Architektur mit On-Demand-Modulladen.
Maps compiled bytecode and runtime coordinates back to original source files for accurate debugging.
source-map-explorer ist ein Source-Map-Bundle-Analysator, der die Platznutzung gebündelter JavaScript-Dateien visualisiert. Er fungiert als Bundle-Size-Auditor und Visualisierer und verwendet Source Maps, um zu identifizieren, welche ursprünglichen Module und Dateien den meisten Platz innerhalb eines Produktions-Bundles einnehmen. Das Tool generiert eine interaktive Treemap, um die Bundle-Zusammensetzung darzustellen, und berechnet komprimierte Gzip-Größen, um die tatsächlichen Netzwerkübertragungskosten abzuschätzen. Es dient zudem als Code-Coverage-Mapper, indem Ausführungsdaten auf Source Maps gelegt werden, um ungenutzte Code-Segmente zu identifizieren, die aufgeschoben oder gesplittet werden können. Das Utility bietet Funktionen zur Pfad-Sanitisierung mittels regulärer Ausdrücke, um Dateilabels zu vereinfachen, und unterstützt den Export von Analyseergebnissen in HTML-, JSON- oder TSV-Formate.
Calculates original file sizes by mapping byte offsets in a bundled file back to source map entries.
csso is a CSS minifier and optimizer that reduces stylesheet file sizes through structural analysis and algebraic transformations. It functions as an abstract syntax tree processor, converting styles into a structured tree to perform deep analysis and semantic-preserving code transformations while maintaining the original visual presentation. The project distinguishes itself through usage-aware optimization, analyzing external HTML markup and class identifiers to prune unused styles and reorganize rules based on actual document usage. It also performs structural refactoring by identifying and
Produces mappings that link compressed production bundles back to original source files for easier troubleshooting.
Optimize-js is a JavaScript parsing optimizer designed to reduce the time browsers spend pre-parsing scripts to improve initial execution speed. It transforms source code to minimize the overhead associated with browser parsing. The project implements a technique that wraps function calls in parentheses to bypass initial pre-parsing and reduce double-parsing overhead. To maintain the utility of the transformed code, it includes a source map generator that links the optimized output back to the original source. The toolset also includes performance benchmarking capabilities to measure the exa
Generates source maps that link optimized output back to original source lines for debugging.
Haul is a mobile application development tool that functions as a JavaScript module bundler, TypeScript transpiler, and development server for mobile environments. It provides a command line interface to manage the build pipeline and serve application bundles to connected devices. The tool utilizes Webpack to compile and package JavaScript and TypeScript code specifically for React Native development. It distinguishes itself through a specialized build pipeline that transforms type-safe code into compatible JavaScript for mobile runtimes. The platform covers comprehensive build and tooling c
Maps compiled bundle code back to original source files to enable debugging via external IDEs and inspectors.
Remix is a comprehensive blockchain development environment and Ethereum smart contract IDE. It provides a complete workspace for writing, compiling, deploying, and debugging smart contracts across simulated and public blockchain networks. The project distinguishes itself as a specialized toolchain for EVM debugging and analysis, offering opcode-level transaction stepping and state memory analysis. It also includes a dedicated zero-knowledge proof toolchain for compiling ZK circuits and generating cryptographic proofs, alongside an AI-powered coding assistant for code generation and explanati
Enables precise debugging by linking compiled bytecode back to the original source code lines during execution.
Janino is a lightweight Java compiler and scripting engine designed to transform source code into executable bytecode directly within the application heap. It functions as a runtime compiler and class loading library, enabling the dynamic definition and execution of Java classes, methods, and expressions without requiring a full application restart. The project distinguishes itself through its ability to perform in-memory compilation and recursive descent parsing, which allows for the resolution of complex dependencies and circular references during the translation process. It provides a fram
Maps dynamically compiled bytecode to source files to enable debugging of generated logic.