How Software Developers Keep Track of API Versions Automatically
A system that automatically tags software building blocks with version data to prevent developers from accidentally breaking code when updating operating systems.
Patent Number
US 9830146
Status
Active
Filing Date
June 7, 2013
Grant Date
November 28, 2017
Expiration
~June 2033 (estimated)
Claims
17
Assignee
Microsoft Technology Licensing LLC
Inventors
William Messmer, Lawrence Osterman, Brent Rector
Citations
8 forward · 29 backward
What it covers
This patent describes a way to automate the tracking of Application Programming Interfaces (APIs). APIs are the sets of rules that allow different software programs to talk to each other. The system attaches metadata—essentially digital labels—to specific parts of the API, such as structures or interfaces. These labels record exactly which version and platform introduced or changed a specific piece of code. When a developer builds a new version of the operating system, the system checks these labels against a set of rules to ensure that any changes don't break existing, already-compiled software.
What it doesn't cover
- —Does not cover manual version tracking where developers update documentation without automated metadata.
- —Does not cover runtime API versioning that happens while the software is actively running.
- —Does not cover general source code version control systems like Git or SVN.
- —Does not cover API versioning logic that is not tied to specific operating system platforms.
The clever bit
The innovation lies in moving versioning rules into the build process itself, using metadata automatically extracted from description files, rather than relying on human developers to remember which API parts are safe to change.
Why it matters
Managing APIs across multiple operating system versions is a massive headache for companies like Microsoft. If an update changes a core API, it can crash thousands of third-party apps. This patent provides a formal, automated way to enforce 'backward compatibility,' which is essential for maintaining trust with developers who build on top of an OS.
Real-world examples
- 1.Microsoft Windows SDK development tools
- 2.Automated build pipelines for large-scale operating systems
- 3.Cross-platform software development kits
Generated by PatentBrief · Not legal advice · patentbrief.org
US 9830146 · 2026