Make g-ir-scanner strict by default
Making g-ir-scanner permissive by default made (somewhat) sense in 2010, when introspection was new and our API old. Sadly, this introduced a lot of uncertainty in an already brittle process.
I understand that making g-ir-scanner warn (and error out) about every single instance of broken or deprecated annotation will look like bolting the stable doors long after the horse has escaped, reached the sea, jumped on the nearest ship, and drowned when the ship capsized and sank off the coast of Cape of Good Hope; but right now, broken annotations either cause the introspection scanner to generate broken data that will result in invalid bindings, or will introduce regressions in libraries and/or bindings every time we try to fix some inconsistency. Back when we only had one introspection parser and generator, being fast and breaking things might have worked; these days, there are multiple introspection parsers: we need to be better.
We should enable strict mode before GNOME 45.alpha is out, and introduce more warnings. If we want to give a grace period, we should add a --no-strict
escape hatch, but that should come with its own warning on the console, so people are aware.