Metadata printing got added to swiftdt
, enhancing its utility for runtime inspection. This allows developers to see more details about what’s going on under the hood.
“Add some metadata printing to swiftdt.”
– Mike Ash
Next, some cleanup was done. He removed inactive code that was unnecessary for looking up protocol conformance by type descriptor, simplifying the codebase.
“Remove inactive code that looked up entries in the protocol conformance cache by type descriptor.”
– Mike Ash
The conformance cache dumping was also simplified. Now, the keys are consistently metadata pointers, making the process more efficient.
“Simplify swiftdt conformance cache dumping since the conformance cache keys are always metadata pointers.”
– Mike Ash
Moving forward, metadata dumping was integrated directly into swiftdt
, streamlining how Remote Mirror interacts with it.
“Move metadata dumping into swiftdt, have Remote Mirror just iterate and inspect.”
– Mike Ash
Error handling got a boost with new messages for the Remote Mirror calls, improving usability when things go wrong.
“Add error messages to the new Remote Mirror calls and plumb them through swiftdt.”
– Mike Ash
Finally, metadata allocation tracking was refined to only activate when explicitly requested, reducing unnecessary overhead.
“Only enable metadata allocation tracking when requested with an environment variable.”
– Mike Ash
Also, the protocol conformance state was made accessible as a debug variable, simplifying how Remote Mirror retrieves this information.
“Expose the protocol conformance state as a _swift_debug variable.”
– Mike Ash
These changes show a steady focus on refining and enhancing swiftdt
, making it a more powerful tool for inspecting the Swift runtime.