All this seems at least unrelated to the move of an archived repo to the junkyard after 200 days. I will test moving a repo back and forth before moving tsdb, just to be 100÷ sure that we can do it, so we can close the discussion here.
----- Original Message ----- From: Sylvain Rabot <[email protected]> To: Bartłomiej Płotka <[email protected]> Cc: Julien Pivotto <[email protected]>, prometheus-developers <[email protected]>, Duco van Amstel <[email protected]> Sent: Sun, 16 Feb 2020 15:55:59 +0100 (CET) Subject: Re: [prometheus-developers] Moving prometheus/tsdb to prometheus-junkyard/tsdb On Sun, 16 Feb 2020 at 15:08, Sylvain Rabot <[email protected]> wrote: > On Sun, 16 Feb 2020 at 14:34, Bartłomiej Płotka <[email protected]> > wrote: > >> I fully agree with your arguments here. Since both Cortex and Thanos are >> very both active in Prometheus Team, it's easier for us to understand that >> potential obstacles each version introduces. That's why I am looking >> forward for proper versioning in some way of another. >> >> If we did move prematurely... Maybe, but we acknowledged that only >> Prometheus, Thanos, Cortex, Loki and Conprof are using TSDB. Any other >> project, if using, did not give any objections on public discussions if to >> move TSDB or not. Since it's was very painful for Prometheus we went ahead. >> If you think we were wrong or we could improve something in the process, >> let us know. (: >> > > Björn comment about waiting for the outcome of the go module compliance > has been ignored ( > https://github.com/prometheus/prometheus/pull/5805#issuecomment-516387796) > although 3 people, me included, sided with him with a thumb up. > To be fair he later green lighted it: https://github.com/prometheus/prometheus/pull/5805#issuecomment-520774612 > >> In the same way decision to put TSDB now to junkyard was done in public >> and with several months ahead. >> >> Anyway I think when moved we can get back TSDB alone anytime, so this >> should answer your concern. However, in fact you can fork it and bring back >> as your fork anytime as well: it's open source. But we, as a team, agreed >> to maintain it inside Prometheus repo and IMO we see many benefits of it: >> e.g reduction of complexity around tons of unnecessary interfaces, velocity >> of release process and tsdb bug fixes! I think it was a good decision. (: >> >> Kind Regards, >> Bartek >> >> On Sun, 16 Feb 2020, 13:16 Sylvain Rabot, <[email protected]> wrote: >> >>> It wouldn't have, separate versioning can't solve merging upstreams that >>> have breaking changes. >>> >>> It's not about that, it's about respect towards people relying on TSDB. >>> >>> I'd like prometheus people to acknowledge that their project is growing >>> outside their reach. This is a recognition that they did well, very well, >>> and *they should be really proud of that and embrace it*. I believe >>> that embracing it means starting to respect common development rules and it >>> should start with go modules conventions and SEMVER. >>> >>> Like I said, TSDB is a cornerstone of the prometheus ecosystem. >>> >>> If we want to make the ecosystem thrive, I believe *major components >>> like TSDB* should have their own *development oriented lifecycle* >>> (prometheus/prometheus has an user oriented lifecycle) which respects both >>> go module conventions and SEMVER git tags to make life easier for third >>> parties that use them. >>> >>> That does not prevent anyone to make breaking changes to them and that >>> advertises those who rely on it what they can expect when managing their >>> prometheus dependencies. >>> >>> You as Thanos maintainer want to upgrade from TSDB v0.7.0 to v0.7.2, you >>> should have almost nothing to do. But, if you want to upgrade from v0.7.2 >>> to v2.0.3, you would know that should roll up your sleeves because you're >>> in for some heavy lifting. >>> >>> Today if you want to upgrade prometheus in Thanos from 2.15.0 to 2.16.0 >>> you have absolutely no idea what you are stepping into. Well, you >>> personally might as you are quite involved in both projects but that is not >>> the case for everyone. >>> >>> That's why I believe that the TSDB move was a bad thing and should never >>> have happened. Now that is has, I just want to make sure it's not something >>> we can't go back from. It might never happen, or it might, only time will >>> tell. >>> >>> Regards. >>> >>> >>> >>> >>> >>> On Sun, 16 Feb 2020 at 13:23, Bartłomiej Płotka <[email protected]> >>> wrote: >>> >>>> At least when it fails it fails immediately in build time :p >>>> >>>> So not sure how separate versioning would help you there. It would be a >>>> new major version of tsdb module, sure. But what then? It's will require >>>> extra manual bump anyway then you will have same work to be done, am I >>>> right? >>>> >>>> >>>> Kind Regards, >>>> Bartek >>>> >>>> On Sun, 16 Feb 2020, 12:21 Sylvain Rabot, <[email protected]> >>>> wrote: >>>> >>>>> >>>>> On Sun, 16 Feb 2020 at 13:01, Bartłomiej Płotka <[email protected]> >>>>> wrote: >>>>> >>>>>> Thanks for your opinion Sylvian! I agree. I totally see the >>>>>> versioning cycle being a problem. In fact as Thanos maintainers, together >>>>>> with Cortex maintainers, we are probably the biggest users of TSDB alone, >>>>>> so we feel the pain (which is not really THAT big). >>>>>> >>>>> >>>>> Yeah I knew that you, most of all people, would feel that pain. But I >>>>> beg to differ on the "which is not really THAT big", I spent a couple of >>>>> afternoons trying to keep prometheus up to date in thanos and I do not >>>>> keep >>>>> good memories of it. >>>>> >>>>> >>>>>> That's why we started a discussion around proper go module versioning >>>>>> to solve this: >>>>>> https://groups.google.com/forum/#!searchin/prometheus-developers/versioning%7Csort:date/prometheus-developers/F1Vp0rLk3TQ/XyXngVP8AAAJ >>>>>> Hopefully once solved, we can keep mono-repo like structure but have >>>>>> separate versioning for TSDB. My personal opinion is that the work we do >>>>>> with Duco with help here: >>>>>> https://github.com/Helcaraxan/modularise-example-core >>>>>> >>>>>> We will see it in the soon future. >>>>>> >>>>>> Kind Regards, >>>>>> Bartek >>>>>> >>>>>> On Sun, 16 Feb 2020 at 12:00, Julien Pivotto <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> On 16 Feb 12:52, Sylvain Rabot wrote: >>>>>>> > I strongly believe that TSDB is a cornerstone of the prometheus >>>>>>> ecosystem >>>>>>> > (and not prometheus/prometheus alone) and as such should have its >>>>>>> own >>>>>>> > lifecycle. >>>>>>> > >>>>>>> > I also believe the original reason for the move ("Keeping them in >>>>>>> sync, >>>>>>> > versioning etc, is a pain") should have been solved by tooling. >>>>>>> > >>>>>>> > I'm sure at one point people using TSDB outside of prometheus will >>>>>>> complain >>>>>>> > about the TSDB versioning being tied to prometheus. >>>>>>> > >>>>>>> > So I'd like to make sure we can go back because even if the move is >>>>>>> > considered safe now, I'm persuaded it only benefits internal >>>>>>> prometheus >>>>>>> > developments at the expense of the whole ecosystem. >>>>>>> > >>>>>>> > Regards. >>>>>>> >>>>>>> There are discussions in progress outside of this discussion. >>>>>>> >>>>>>> I would like to add that golang versioning totally tolerate multiple >>>>>>> modules in one git repo with different versioning schemes. >>>>>>> >>>>>>> https://github.com/hashicorp/consul/tree/master/api >>>>>>> >>>>>>> is a go module on its own, module github.com/hashicorp/consul/api >>>>>>> inside the github.com/hashicorp/consul repo. >>>>>>> >>>>>>> They have dedicated versions (see >>>>>>> https://github.com/hashicorp/consul/tree/api/v1.4.0): consul/api is >>>>>>> v1.4.0, >>>>>>> while consul is v1.7.0. >>>>>>> >>>>>>> So it looks like we could get the advantages of a single repo and a >>>>>>> dedicated module lifecycle if we need to. >>>>>>> >>>>>>> > >>>>>>> > On Sun, 16 Feb 2020 at 12:39, Bartłomiej Płotka < >>>>>>> [email protected]> wrote: >>>>>>> > >>>>>>> > > Hm, why would it need to have its own lifecycle? >>>>>>> > > >>>>>>> > > We waited for some time exactly to make sure that all is safe >>>>>>> for the move. >>>>>>> > > >>>>>>> > > Bartek >>>>>>> > > >>>>>>> > > On Sun, 16 Feb 2020, 11:25 Sylvain Rabot, < >>>>>>> [email protected]> wrote: >>>>>>> > > >>>>>>> > >> Hi, >>>>>>> > >> >>>>>>> > >> Before doing so, could we make sure this action can be reverted >>>>>>> ? >>>>>>> > >> >>>>>>> > >> I'd hate that, if we realize TSDB needs its own lifecycle, we >>>>>>> wouldn't be >>>>>>> > >> able to reopen github.com/prometheus/tsdb because of some >>>>>>> github logic. >>>>>>> > >> >>>>>>> > >> Regards. >>>>>>> > >> >>>>>>> > >> On Fri, 14 Feb 2020 at 00:19, Julien Pivotto < >>>>>>> [email protected]> >>>>>>> > >> wrote: >>>>>>> > >> >>>>>>> > >>> Dear community, >>>>>>> > >>> >>>>>>> > >>> In the dev summit 2019/1, it was decided to move tsdb to the >>>>>>> junkyard: >>>>>>> > >>> >>>>>>> > >>> >>>>>>> https://docs.google.com/document/d/1NQIX78nwBhfLZD3pAb0PK-uBKYqnkzjjVhOQ-kIaEGU/edit >>>>>>> > >>> >>>>>>> > >>> The https://github.com/prometheus/tsdb has been moved in >>>>>>> Augustus 2019 >>>>>>> > >>> inside >>>>>>> > >>> the prometheus repo itself: >>>>>>> > >>> https://github.com/prometheus/prometheus/tsdb >>>>>>> > >>> >>>>>>> > >>> I would like to trigger the move of the old repo to >>>>>>> > >>> https://github.com/prometheus-junkyard/tsdb at the end of >>>>>>> this month (29 >>>>>>> > >>> February). That is 200 days after the repo has been merged in >>>>>>> the >>>>>>> > >>> prometheus server repo. >>>>>>> > >>> >>>>>>> > >>> GitHub says that "All links to the previous repository >>>>>>> location are >>>>>>> > >>> automatically redirected to the new location": >>>>>>> > >>> >>>>>>> > >>> >>>>>>> https://help.github.com/en/github/administering-a-repository/transferring-a-repository >>>>>>> > >>> which means that links to pull requests etc should still work >>>>>>> after >>>>>>> > >>> the rename. >>>>>>> > >>> >>>>>>> > >>> If someone has strong arguments against this, please reply to >>>>>>> this >>>>>>> > >>> message. >>>>>>> > >>> >>>>>>> > >>> -- >>>>>>> > >>> (o- Julien Pivotto >>>>>>> > >>> //\ Open-Source Consultant >>>>>>> > >>> V_/_ Inuits - https://www.inuits.eu >>>>>>> > >>> >>>>>>> > >>> -- >>>>>>> > >>> You received this message because you are subscribed to the >>>>>>> Google >>>>>>> > >>> Groups "Prometheus Developers" group. >>>>>>> > >>> To unsubscribe from this group and stop receiving emails from >>>>>>> it, send >>>>>>> > >>> an email to [email protected] >>>>>>> . >>>>>>> > >>> To view this discussion on the web visit >>>>>>> > >>> >>>>>>> https://groups.google.com/d/msgid/prometheus-developers/20200213231949.GA18483%40oxygen >>>>>>> > >>> . >>>>>>> > >>> >>>>>>> > >> >>>>>>> > >> >>>>>>> > >> -- >>>>>>> > >> Sylvain Rabot <[email protected]> >>>>>>> > >> >>>>>>> > >> -- >>>>>>> > >> You received this message because you are subscribed to the >>>>>>> Google Groups >>>>>>> > >> "Prometheus Developers" group. >>>>>>> > >> To unsubscribe from this group and stop receiving emails from >>>>>>> it, send an >>>>>>> > >> email to [email protected]. >>>>>>> > >> To view this discussion on the web visit >>>>>>> > >> >>>>>>> https://groups.google.com/d/msgid/prometheus-developers/CADjtP1GFSFug0WYQO0svnJv2%3D2Xgz-GSzfL1ThN_kHeoznOQsg%40mail.gmail.com >>>>>>> > >> < >>>>>>> https://groups.google.com/d/msgid/prometheus-developers/CADjtP1GFSFug0WYQO0svnJv2%3D2Xgz-GSzfL1ThN_kHeoznOQsg%40mail.gmail.com?utm_medium=email&utm_source=footer >>>>>>> > >>>>>>> > >> . >>>>>>> > >> >>>>>>> > > >>>>>>> > >>>>>>> > -- >>>>>>> > Sylvain Rabot <[email protected]> >>>>>>> >>>>>>> -- >>>>>>> (o- Julien Pivotto >>>>>>> //\ Open-Source Consultant >>>>>>> V_/_ Inuits - https://www.inuits.eu >>>>>>> >>>>>> >>>>> >>>>> -- >>>>> Sylvain Rabot <[email protected]> >>>>> >>>> >>> >>> -- >>> Sylvain Rabot <[email protected]> >>> >> > > -- > Sylvain Rabot <[email protected]> > -- Sylvain Rabot <[email protected]> -- You received this message because you are subscribed to the Google Groups "Prometheus Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/758035805.6752.1581866126847.JavaMail.zimbra%40inuits.eu.

