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

Deprecation Model #2

Open
Laar opened this issue May 8, 2011 · 1 comment
Open

Deprecation Model #2

Laar opened this issue May 8, 2011 · 1 comment

Comments

@Laar
Copy link
Contributor

Laar commented May 8, 2011

As we are implementing tne functionality of OpenGL 3 we should look at what we do with the deprecation model that comes with that version.
Dagit suggested marking the deprecated functions, modules, etc. with deprecation/warning flags to notify the user at compile time.

I personally prefer some measures that are quite a bit stronger and suggest that we move the deprecated functions to its own namespace, say ...GL.OpenGL.Deprecated. This would mean quite a lot of refactoring, but the upside is that the two are much more separated from each other than they now are. Though this would include a major break in the code, so we should carefully consider this.
If we would take such action it might be a good idea to idea to restructure quite a bit more of the package as there are some more problems in my opinion.

@svenpanne
Copy link
Member

Given the many API versions of OpenGL, I think that a deprecation model as described above is not the right way to proceed. What is considered "core" and what is considered "deprecated" is a constantly moving target. What we should do instead is mirror what OpenGLRaw already started: Combine and expose features under Graphics.Rendering.OpenGL.GL.Core43, etc. with Graphics.Rendering.OpenGL.GL being the union of all features for the lazy people (= people not caring about API versions).

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

No branches or pull requests

2 participants