You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description of the bug
PutObject works fine under NativeAOT but when i tried to get the file back with GetObject it gives me an empty stream instead. I manually verified that the PutObject works fine on both normal and AOT mode by downloading and checking the file myself.
I've taken a look at it now. There are several issues:
RequestMarshal, ResponseMarshal, and PostMappers are matched via reflection. AOT removes all the unused types, so the marshallers are not registered.
Profiles are serialized via JSON. AOT removes unused public constructors from types, so serialization does not work.
Dependency injection uses dynamic code emitting. Currently, I'm using DI internally to ease the setup of clients.
Other potential problems:
Enums are handled via reflection and cached.
ObjectPool requires calling public ctors that gets removed
I've tried to root all assemblies, which should remove the trimming issues, but the application still crash - likely due to RequestMarshal being setup via DI.
So for the moment, NativeAOT is not supported by SimpleS3.
Description of the bug
PutObject works fine under NativeAOT but when i tried to get the file back with GetObject it gives me an empty stream instead. I manually verified that the PutObject works fine on both normal and AOT mode by downloading and checking the file myself.
How to reproduce?
compile with:
dotnet publish -c Release
normal output:
NativeAOT output:
Expected behavior
GetObject's Content has data in it.
The text was updated successfully, but these errors were encountered: