On OS X one has to (and always had to) explicitly request a core context. Otherwise one would get an "old" 2.1 context.
LWJGL3:
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1);
LWJGL2:
PixelFormat pixelFormat = new PixelFormat();
ContextAttribs contextAtrributes = new ContextAttribs(4, 1)
.withForwardCompatible(true)
.withProfileCore(true);
Display.create(pixelFormat, contextAtrributes);