Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup Pass 1 #916

Closed
wants to merge 1 commit into from
Closed

Cleanup Pass 1 #916

wants to merge 1 commit into from

Conversation

LWSS
Copy link
Contributor

@LWSS LWSS commented Sep 14, 2023

manual pass mainly focused on param types

basic test done with native-doc-tooling

@AvarianKnight
Copy link
Collaborator

AvarianKnight commented Sep 14, 2023

How is this going to end up working for over all compatibility with mono v1?

@LWSS
Copy link
Contributor Author

LWSS commented Sep 14, 2023

How is this going to end up working for over all compatibility?

the older game versions are going to be removed eventually

@AvarianKnight
Copy link
Collaborator

How is this going to end up working for over all compatibility?

the older game versions are going to be removed eventually

But that doesn't solve the problem that changing the ABI will cause mono v1 to break

@thorium-cfx thorium-cfx added the changes types This pull request changes types, possibly breaking ABI compat. Needs checking. label Sep 15, 2023
@LWSS
Copy link
Contributor Author

LWSS commented Sep 15, 2023

How is this going to end up working for over all compatibility?

the older game versions are going to be removed eventually

But that doesn't solve the problem that changing the ABI will cause mono v1 to break

Thanks for pointing that out

Yeah this will have to wait until v2, or if we lock v1's natives state

@spacevx
Copy link
Contributor

spacevx commented Oct 25, 2023

Perhaps I'm mistaken, but wasn't the purpose of using cs_type when editing the type of an argument in a native or the type of the native itself to avoid compatibility problems?

@AvarianKnight
Copy link
Collaborator

Both

@spacevx
Copy link
Contributor

spacevx commented Nov 1, 2023

So why not using cs_type?

@AvarianKnight
Copy link
Collaborator

Because a lot of natives are old and have gotten new arguments over time. Adding new arguments would break ABI compatibility with existing C# resources causing them to fail to run.

This is fixed with mono_v2, but it looks like its going to be a long time until mono_v2 is ready

@AvarianKnight AvarianKnight added the native import PR will be superseded by native import label Aug 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changes types This pull request changes types, possibly breaking ABI compat. Needs checking. native import PR will be superseded by native import
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants