-
Notifications
You must be signed in to change notification settings - Fork 292
FE API deprecation/changes #4077
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
Conversation
Job Coverage, step Generate coverage on c0e4f9b wanted to post the following: Coverage
Warnings
This comment will be updated on new commits. |
7de408a
to
3752e74
Compare
3752e74
to
7b404d8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was going to try and test this update with our internal code, but at some point, my primary libmesh build got LIBMESH_ENABLE_DEPRECATED
turned back on, so I doubt that will tell me too much. Does it matter whether this or #4076 gets merged first?
In theory the two should be independent. In practice I'm already bracing for the rebase and the merge conflict fixes. |
John added the replacements for these in 2020; it's time to ease users off the old versions.
For elements where n_dofs() depends on the specific element, we need to pass in the specific element.
The latter has to be deprecated, since without an Elem we can't make it work on polygons+polyhedra
We need to deprecate that, since it won't work on polygons+polyhedra
This should fix incompatibilities with polygons/polyhedra
And make the non-deprecated version compatible with runtime-topology elements.
Putting this in FEInterface was kind of an unintuitive decision in the first place, and now that we're adding runtime-dependent element topology like Polygons we're going to *need* a physical Elem to work with in those cases.
This should make it compatible with Polygon, etc.
This also makes one of the app options redundant
We're already beginning a big shakeup for user code so we might as well pull the bandaid off quickly.
Ripping off all the bandaids at once
libmesh_deprecated() is sometimes necessary, when one possible input is deprecated but another supported, but if *any* call to a method is deprecated we can just get rid of it completely in `--disable-deprecated` builds.
Generic explanations are a better idea here anyway
Huh; no conflicts to fix after all. If this passes CI on the first try then I'll merge. |
As with #4076, this is a fraction of the changes in #4074, split by subsystem into its own PR for easier testing and review.