Cargo Features

[dependencies]
alloy_graphene = { version = "0.0.6", default-features = false, features = ["all", "opengl"] }
default = all

The all feature is set by default whenever alloy_graphene is added without default-features = false somewhere in the dependency tree.

all default = opengl
opengl all = gl

Affects alloy_graphene::opengl

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

gl opengl?

Enables gl

The GL crate saves us a lot of effort. OpenGL functions can't just be linked to or have a binding written for them. They must be loaded at runtime instead using glXGetProcAddress(ARB)/wglGetProcAddress/eglGetProcAddress The functions themselves need to be provided by name, which requires some kind of generation from the specs.
This is technically possible using something like glut, but it's an effort that can be avoided by simply using this crate.
It has a minimal amount of dependencies. Most of them are just indirections over its own featureset.
The only "real" dependencies are: xml-rs, which is itself dependency-less and a very common dependency and log, which we considered trivial.