Skip to content

Versioning

David Wright edited this page Apr 4, 2017 · 1 revision

Meta.Numerics library version numbers are of the form a.b.c (e.g. 4.5.2). The meaning of each of the three fields is described below.

The third field is incremented for bug fixes. The public API of version a.b.(c+1) is exactly the same as the public API of version a.b.c. No types or members have been added or removed; only the internals of the APIs are changed. Applications compiled against a.b.c will run with a.b.(c+1). Application compiled against a.b.(c+1) will run with a.b.c, albeit with the buggy behavior.

The second field is incremented for non-breaking API changes. The public API of version a.(b+1).0 contains all the types and members present in version a.b.c, but version a.(b+1).0 may also contain new types and members not present in a.b.c. Applications compiled against a.b.c will run with a.(b+1).0. Applications compiled against a.(b+1).0 may not run with a.b.c, if they use the new APIs.

The first field is incremented for breaking API changes. The public API of (a+1).0.0 may have renamed or removed types and members present in version a.b.c. Applications compiled against a.b.c may not run with (a+1).0.0, and applications compiled against (a+1).0.0 may not run with a.b.c.

Home

Clone this wiki locally