The special "all" schema
There is a special schema known as the all schema, defined in glean/schema/source/schema.angle.
The all schema is used to resolve names to particular predicates and
types when the version in omitted. This matters in a few places:
- When Thrift types are generated from the schema, the types and predicates from the - allschema determine which names are unversioned in the generated Thrift. For example, if the- allschema contains- src.1, then the predicate- src.File.1will be simply called- Filein the generated Thrift; otherwise it would be called- File_1.
- When an Angle query mentions an unversioned predicate or type, the name is resolved to a particular version of that predicate or type using the current - allschema.
- When deriving a predicate with the CLI tool, like - glean derive python.TargetUses.
The all schema is defined like this:
schema all.6 :
  src.1,
  python.4,
  code.18
If there are multiple versions of all, all but the highest version
are ignored.