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

Evaluate / List all places we use nativeDb or platform and any other 'deprecated' APIs. #196

Open
27 tasks
nick4598 opened this issue Aug 8, 2024 · 5 comments · Fixed by #195
Open
27 tasks
Assignees

Comments

@nick4598
Copy link
Collaborator

nick4598 commented Aug 8, 2024

This will have implications when it comes time to consume itwinjs 5.0. NativeDb will no longer be accessible at all due to the private symbol approach. We need public API replacements for everything we currently MUST have from NativeDb in the transformer.

We can consider getting rid of some if we deem them no longer necessary, but we definitely can't get rid of them all. Another alternate approach is to somehow give this repo special privileges, but it seems impossible with the private symbol approach. I think this repo is one of the few that was considered acceptable to use internal APIs? But I may be misremembering that. I think its a moot point since itwinjs-core is moving in the direction of private symbols.

Failing PR run that lists all the ones currently in imodel-transformer
This doesn't mention all the other packages. ctrl + f for IModelHost.platform and nativeDb to find the rest.

relatedPR that disabled all them for now

LIST GOES HERE:

Internal Usage

Preview Give feedback

Need of @preapproved

Preview Give feedback

Public

Preview Give feedback
  • Changes
    • 10/10/2024
    • 10/14/2024
    • 10/15/2024
    • 10/16/2024
      • Moved nativeDb.getChangeTrackingMemoryUsed to preapproved tasklist - still useful in test-app
      • Moved nativeDb.completeCreateChangeset to preapproved tasklist - still useful in performance-test
      • Moved nativeDb.startCreateChangeset to preapproved tasklist - still useful in performance-test
      • Moved nativeDb.applyChangeset to preapproved tasklist - still useful in performance-test
      • Moved nativeDb.startProfiler to preapproved tasklist - still useful in performance-script
      • Moved nativeDb.stopProfiler to preapproved tasklist - still useful in performance-script
      • Moved IModelHost.platform.DgnDb to preapproved tasklist - still useful in performance-test, test-app, other tests
@derbynn
Copy link
Contributor

derbynn commented Aug 12, 2024

MUST HAVE REPLACEMENT:

MIGHT NEED REPLACEMENT:

MIGHT BE ABLE TO REMOVE:

Yet to be sorted:

*Denotes that the function is not being used exclusively by tests

@aruniverse
Copy link
Member

fyi @pmconne @wgoehrig to keep you guys in the loop

@pmconne
Copy link
Member

pmconne commented Aug 19, 2024

Would it be possible to provide a list of the APIs you are using that currently do not have an alternative public API, with link(s) to your usage of each?

@nick4598
Copy link
Collaborator Author

Thanks for the suggestion, we will work on gathering that information

@nick4598
Copy link
Collaborator Author

Daniel has updated the list with links to their usage. I also tried to give a rough categorization of each one, "must have replacement", "might need replacement".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants