<div dir="ltr"><div><div><div><div><div><div><div><br></div>Most of the discussion so far in this thread was about accommodating existing users. We could extend the support for the deprecated code for and additional release (roughly one more month).<br><br></div>Here is my proposal<br></div>1) 0.15.0 - existing &#39;*/data&#39; endpoints are kept in place but deprecated<br></div>2) 0.16.0 - all &#39;*/data&#39; points are still kept but the GET endpoints will be modified to serve only &#39;*/stats&#39; variant<br></div>3) 0.17.0 - purge all &#39;*/data&#39;<br><br></div>Step 2 above makes sense because the vast majority of our current consumers use GET &#39;/data&#39; to retrieve bucketed results.<br><br></div><div>If there are no strong disagreements about the API change itself than it is just a matter of finding the right balance to deprecate and remove the existing endpoints. Any thoughts?<br></div><div><div><div><div><div><div><br></div></div></div></div></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr">Thank you,<br>Stefan Negrea<br><br>Software Engineer<br></div></div></div>
<br><div class="gmail_quote">On Mon, Apr 4, 2016 at 9:21 AM, Matt Wringe <span dir="ltr">&lt;<a href="mailto:mwringe@redhat.com" target="_blank">mwringe@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">----- Original Message -----<br>
&gt; From: &quot;Heiko W.Rupp&quot; &lt;<a href="mailto:hrupp@redhat.com">hrupp@redhat.com</a>&gt;<br>
&gt; To: &quot;Discussions around Hawkular development&quot; &lt;<a href="mailto:hawkular-dev@lists.jboss.org">hawkular-dev@lists.jboss.org</a>&gt;<br>
&gt; Sent: Monday, April 4, 2016 4:56:15 AM<br>
&gt; Subject: Re: [Hawkular-dev] Hawkular Metrics - /data enpoint<br>
&gt;<br>
&gt; On 2 Apr 2016, at 0:24, Stefan Negrea wrote:<br>
&gt; &gt; The plan is to deprecate existing &#39;*/data&#39; endpoints in the upcoming<br>
&gt; &gt; release (0.15.0) and remove them in the release after that (0.16.0). That<br>
&gt; &gt; gives enough time (roughly 2 months) for all existing projects to migrate<br>
&gt; &gt; to the newer API. Does anybody see any problem with this timeline?<br>
&gt;<br>
&gt; Yes.<br>
&gt; There are users out there that use the old api in production.<br>
&gt; They may not even be aware that there is a new one.<br>
&gt;<br>
&gt; If they deploy the new hawkular-metrics (or someone does<br>
&gt; for them), their apps will break and they may not even know<br>
&gt; why.<br>
<br>
</span>+1<br>
<br>
I think we need to make sure that we don&#39;t break the existing API for current users who are already using it. There will most likely be a bunch of complaints if we update this in OpenShift and then everyone&#39;s setup stops working.<br>
<span class=""><br>
&gt; REST allows for content negotiation. So we should keep the<br>
&gt; old endpoint, deprecate them (and perhaps even spit regular<br>
&gt; warnings in the logs) and on top add the new endpoints<br>
&gt; that you suggested but with a new content type<br>
&gt; like &quot;application/json+hawkular-v2&quot;.<br>
<br>
</span>If we are going to introduce a new version for the REST API, it might make sense to release Hawkular Metrics with a new major version as well. But major versions can be tricky depending on how the project handles them. Some projects will have the same major versions for years, others will update the major version almost monthly (eg kernel version versus browser version)<br>
<div class="HOEnZb"><div class="h5"><br>
&gt; In fact if we keen old and new, that new content type<br>
&gt; is not exactly needed if the data format exchanged does not<br>
&gt; change.<br>
&gt;<br>
&gt; Btw: I doubt that GET ../data and POST ../data is confusing anyone<br>
&gt; and in Jax-Rs you can have those on two different methods anyway.<br>
&gt; _______________________________________________<br>
&gt; hawkular-dev mailing list<br>
&gt; <a href="mailto:hawkular-dev@lists.jboss.org">hawkular-dev@lists.jboss.org</a><br>
&gt; <a href="https://lists.jboss.org/mailman/listinfo/hawkular-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/hawkular-dev</a><br>
&gt;<br>
_______________________________________________<br>
hawkular-dev mailing list<br>
<a href="mailto:hawkular-dev@lists.jboss.org">hawkular-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/hawkular-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/hawkular-dev</a><br>
</div></div></blockquote></div><br></div></div>