Repository navigation
Conversation
Add the MIT LICENSE file and ship it in the wheel, fill in authors, URLs, keywords, and classifiers, and read the version from tocode.__version__ so it is defined once. `uv build` produces an sdist and a wheel that pass `twine check`; the wheel contains only the tocode package. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The PyPI distribution is tocode-cli; assert the installed command stays `tocode` so a rename cannot slip through. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
`tocode App.dll` (also .exe, apphost launchers, single-file bundles, and .nupkg packages, detected by content) now exports managed code without dnSpy/ILSpy installed: dnlib and ICSharpCode.Decompiler (MIT, vendored in backends/dotnet_lib with provenance) are loaded through pythonnet, so only a .NET 9+ runtime is needed. - src/raw/<Assembly>/<Namespace>/.../<Type>.cs per top-level type, with a matching .il that keeps the bytecode (RVA, raw bytes, metadata tokens), plus Properties/AssemblyInfo.cs, Manifest.il, and a .csproj per assembly. - Per-method C# and IL line ranges; lambdas, local functions, and async/iterator state machines are linked to the method that owns them. - assemblies.json, types.json, functions.json, function-index.json, strings.json (user strings with ldstr xrefs), imports.json (cross-assembly members and P/Invoke), exports.json, reachable.json, namespace-graph.json, resources.json (+ decoded .resources), container.json, and triage.json. - Native code (mixed-mode images, bundled native libraries, P/Invoke targets next to the input) goes through the native runner like APK .so files; framework/runtime parts of bundles and packages are listed but only decompiled with --include-framework. --as-native keeps the old path. - PE/CLR/bundle parsing and the IL token scan are pure Python (validated against dnlib on every opcode); decompilation runs in recycled worker processes and a crashing or hanging type fails alone. The native memory floor is now TOCODE_NATIVE_MIN_FREE_MB (the APK name still works) and the waiting state shows in the heartbeat. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
NativeAOT symbols (mangled generic instantiations) and long C++ template names exceed the 255-byte path component limit, so exporting a NativeAOT binary crashed while writing the checkpoint record of a cluster named after such a function. Names longer than 120 characters are now truncated and suffixed with a short hash so they stay unique. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.