<div dir="ltr"><div style="font-family:arial,sans-serif;font-size:13px">Greetings, [keystone]!</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><span style="font-family:arial,sans-serif;font-size:13px">First, some history: Early in Keystone's life (before the integrated gate, tempest, and human-readable API documentation), our API implementation fluctuated on such a regular basis that it presented a severe stability risk to OpenStack (particularly late in the integrated release cycle). To address the situation on the Keystone side, we rapidly matured our development process and became very wary of API changes. We document and review proposed API impact before considering the implementation, guarantee backwards-compatibility for every change we make, and avoid making *any* core API changes during the last milestone of the integrated release (this is the "milestone 2 deadline" referenced in the subject).</span><div style="font-family:arial,sans-serif;font-size:13px">

<br></div><div style="font-family:arial,sans-serif;font-size:13px">Since that time, we've raised the bar yet again for our development process: openstack/keystone-specs. It's clear that changes impacting our consumers are more well-thought-out and thoroughly documented than ever before. We also have the integrated gate and and out-of-tree integration tests to help catch API regressions. Now that our API documentation is human-readable, we regularly get bug reports citing discrepancies between our documentation, implementation and/or test suite.</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">We've made a lot of progress in the last few releases. With all that additional process maturity, I think it's time we drop the milestone 2 deadline for API impacting changes. It's always been a stopgap in the development process designed to catch issues like backwards incompatibility and API unimplementium. Thankfully, we now have much better tools in place to weed out those issues, and more importantly, have a superb core review team capable of utilizing sound judgement on the acceptability of changes to the core API.</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">With our milestone-2 deadline for Juno just around the corner, I've added this topic to tomorrow's keystone meeting for discussion:</div>

<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">  <a href="https://wiki.openstack.org/wiki/Meetings/KeystoneMeeting" target="_blank">https://wiki.openstack.org/wiki/Meetings/KeystoneMeeting</a></div>

<div class="" style="font-family:arial,sans-serif;font-size:13px"><div id=":1bt" class="" tabindex="0"><br></div><div id=":1bt" class="" tabindex="0">-Dolph</div></div></div>