Closed khasanovbi closed 6 months ago
This PR is stale because it has been open 14 days with no activity. Remove stale label or comment or this will be closed in 14 days.
Sorry, this slipped past me. Checking.
@khasanovbi I think your second commit changes the public API and thus will break other people's code. Even if we are to accept such a change in the future, I don't think I can merge the PR as it is right now. Sorry.
Please change the PR accordingly.
As a side note I think we'd have to actually cut a release if we are going to change the public API after years of it not being modified. (disclaimer: I'm a bit reluctant to babysit this project seriously ATM, feel free to prod me, but I can't promise anything right now)
@lestrrat Maybe I'm wrong, but I think hardly anyone uses Pointer() methods externally. What could pointers be used for outside the library? But rolled back the changes to safe ones anyway. I can make a second commit in a separate PR, in case there is an opportunity to update the library in the future.
What could pointers be used for outside the library?
@khasanovbi For starters, xmlsec :) (more specifically, here)
But even without this particular example, I think my point is that for any given API, there's always bound to be an unexpected user. You tend to only notice them once you make breaking changes and they scream really loud at you. Obviously I can't prove that this is the case for this particular library, but that has been my experience with FOSS over the last 20+ years :)
@khasanovbi thanks, merged!
When we run tests with race flag the program crashes with the following panic:
Example:
From docs: Conversion of a uintptr back to Pointer is not valid in general. It's only allowed in the same expression.
I split the PR into 2 commits: 1) minimal edits so as not to change the ABI 2) replacing uintptr with unsafe.Pointer throughout the project.
I would like to merge both, but the first one is enough for me).