-
Notifications
You must be signed in to change notification settings - Fork 279
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
Renamed "cap" parameter of "glEnable", "glDisable", "glIsEnabled" commands to "target" #593
base: main
Are you sure you want to change the base?
Conversation
…mands to "target" The renaming was done to be consistent with "glEnablei", "glDisablei" and "glIsEnabledi" commands (both in this XML and in the specification PDFs). Note that the parameter of "glIsEnabled" command should technically be called "value" (according to the specification PDFs), but it was renamed to "target" for sake of consistency among all the related commands. Alternatively, it can be renamed to "value" again to completely match the specifications
The naming is quite chaotic even in the documentation pages, which use the "cap" name. For example: Would be great to fix the naming everywhere consistently. Besides the naming mismatches in different places, there seems to be a tension of what naming system to use. Ideally, everything should match the specifications. But keeping naming consistent among related commands would also be great. If anyone has suggestions on how to best approach this, comments would be welcome. |
…mands to "target" The renaming was done to be consistent with "glEnablei", "glDisablei" and "glIsEnabledi" commands (both in this XML and in the specification PDFs). Note that the parameter of "glIsEnabled" command should technically be called "value" (according to the specification PDFs), but it was renamed to "target" for sake of consistency among all the related commands. Alternatively, it can be renamed to "value" again to completely match the specifications
Well, if the parameter is consistently |
Any suggestions on how to rename |
I was thinking the same way, from |
@SunSerega - Renamed |
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'm generally against renaming groups without them being fundamentally broken or misrepresentative. Renaming a parameter is fine as the scenarios in which this would break a user anywhere are much more limited (but not zero). Renaming a group would cause widespread breaking changes in transitive downstream consumers which typically rely on these names as a core part of their API surface.
We've made these types of breaking changes before, but only when the groups have been massively misrepresentative of what they're actually doing or otherwise invalid and in desperate need of change. This would be breaking a potentially massive number of users over a nitpick.
I would suggest reverting the group changes until #481 is in place.
Not really, we can decide that we want to break everything, but that has to be a decision made collectively. It is irresponsible to knowingly break potentially hundreds of downstream projects without publishing formal documentation saying we reserve the right to do so. That is what #481 is about. |
Fair enough... I have a lot of doubts about continuing things like #543 - having guidelines would solve that, one way or another. |
If people have had more than 2 years to respond to a ping I think we can assume they are not going to reply. In my own bindings I'm likely going to implement a translation table for enum group names so that I can rename them myself to remain "backwards compatible", won't fix members being added or removed but yeah I think that if you are using the latest gl.xml from the registry I think you should "expect" breakages. |
The renaming was done to be consistent with "glEnablei", "glDisablei" and "glIsEnabledi" commands (both in this XML and in the specification PDFs). Note that the parameter of "glIsEnabled" command should technically be called "value" (according to the specification PDFs), but it was renamed to "target" for sake of consistency among all the related commands. Alternatively, it can be renamed to "value" again to completely match the specifications