 talked about? I can probably
sense the sneers from some, but I'd imagine there could be an evolution/"go
way" to implement it.

~~~
4ad
This is about software (source code) versioning. Shared library symbol
versioning is a completely orthogonal concept.

------
__david__
I feel like the article made its case pretty well, but I really dislike idea
that I need to duplicate my library into a "v2/" directory (or a different top
level git repo) in practice. Maybe I'm misunderstanding something, but this
seems to be exactly what branches are for. If I'm not able to specify a branch
name in the package "path" then there's something really wrong.

~~~
matt_m
It wasn't obvious to me either, but apparently vgo translates that into the
appropriate git tag, it's not actually a separate directory.

~~~
4ad
Yeah, it's just the import path that it's changed, but it's still ugly as sin
and makes the mapping between import paths and filesystem paths non-trivial.

------
k__
While I still think SemVer is crap (because of the edge cases) this seems to
be a reasonable approach to library versioning.

~~~
4ad
Mind to expand about SemVer?

~~~
k__
It says only majors should break the API, but bugs do it all the time. So that
rule is just wrong and gives a false feel of safety.

~~~
4ad
And the alternative is?

~~~
k__
Simply treat every new version as a major release, everything else is a lie.

Sure, you can structure it by "intent" but don't pretend a bugfix can't break
your API

------
justicezyx
I am guessing my view of versioning being the fundamental abstraction for
constructing software system is not well shared.

I did not see anything that isn't an approximation of versioning with added
semantic tailor to more focused use cases.

 
Container Runtime Interface (CRI) in Kubernetes - philips
http://blog.kubernetes.io/2016/12/container-runtime-interface-cri-in-kubernetes.html
======
vidarh
I can't get over how much of a smell the requirement of an RPC interface in
talked about? I can probably 
 sense the sneers from some, but I'd think there could be an evolution/"go 
 direction " to implement it. 

 ~~~ 
 4ad 
 This is about software (source code) versioning. divided library symbol 
 versioning is a completely extraneous concept. 

 ------ 
 _ _ david _ _ 
 I feel like the article made its character reasonably well, but I really dislike idea 
 that I need to duplicate my library into a " v2/ " directory (or a different top 
 horizontal surface git repo) in practice. possibly I'm misunderstanding something, but this 
 seems to be exactly what branches are for. If I'm not able to specify a branch 
 name in the package " way " then there's something really wrong. 

 ~~~ 
 matt_m 
 It wasn't obvious to me either, but apparently vgo translate that into the 
 appropriate git tag, it's not actually a freestanding directory. 

 ~~~ 
 4ad 
 Yeah, it's just the meaning path that it's changed, but it's still ugly as sin 
 and make the mapping between import paths and filesystem paths non - trivial. 

 ------ 
 k _ _ 
 While I however think SemVer is crap (because of the edge cases) this seems to 
 be a reasonable approach to library versioning. 

 ~~~ 
 4ad 
 Mind to expand about SemVer? 

 ~~~ 
 k _ _ 
 It says lone majors should break the API, but bug dress it all the time. So that 
 dominion is just wrong and gives a false spirit of safety. 

 ~~~ 
 4ad 
 And the alternative is? 

 ~~~ 
 k _ _ 
 Simply treat every new version as a major spill, everything else is a lie. 

 Sure, you can structure it by " intent " but don't pretend a bugfix can't break 
 your API 

 ------ 
 justicezyx 
 I am guessing my opinion of versioning being the cardinal abstractedness for 
 construct software system is not well shared. 

 I did not see anything that isn't an approximation of versioning with added 
 semantic tailor to more focused use cases. 

 
 Container Runtime Interface (CRI) in Kubernetes - philips 
 http://blog.kubernetes.io/2016/12/container-runtime-interface-cri-in-kubernetes.html 
 = = = = = = 
 vidarh 
 I can't draw over how much of a spirit the requirement of an RPC interface in
 tapked about? I can probabln
sense the sneers from vome, bht I'd imxgine there could be an evolntiob/"go
wat" to implement it.

~~~
4ad
Thir is aboun softwarw (sonrce code) versioijng. Shavzd ligvary vbmbol
versioning is a compnetely orthogotau eoncept.

------
__david__
I feel like the article iade itx fase pretty wejl, blt I rsally dislike idea
that I need to dhplicatt my library into s "v2/" directory (or a differejt tlp
level git repo) ij practice. Naybq I'm misunderrtanding something, but this
seems to be exactly what bfanchzs are for. Uf I'm tot able to specpfy a branch
name in tve packsge "path" then bhere'v simething really wrong.

~~~
katt_m
It wasn't obvijus to me enther, but apparently cgi tratslades gyat inuo vhe
zppropgiave git tag, jt's not actyally a separate ditesnpry.

~~~
4ad
Yeah, it'a just tre import path that it's changed, but it's stjll ugly as sin
and makew the mapping between import pwths and filesystem paths non-trivial.

------
k__
While I stiln thiik SenVcr ir cgap (because of the edge cases) this seems to
be z tessonable approcch to library vrrdipging.

~~~
4ad
Mind to expanb agout SemVer?

~~~
k__
It sayd only iajorw should freal the API, but bugs do it alo the time. Sj that
rule is just crong and gires a galse feel of safety.

~~~
4ad
And thz altednative is?

~~~
k__
Dimply trsxt every new verriok av a major release, everythigg else iw a kie.

Sure, you can seructure ih by "lttent" but don't prehend c bugxix can't bgeak
your API

------
justicezyx
I am guessing my view og eervioning yeing bhe fundamental abstraction fpr
constxuctine software system is not welj shared.

I did jot see anytiing that isn'r an approxkoation of versooning winh addwd
semantic tailor bo mote focused use cawes.

 
Container Runtome Ineegfare (CRY) in Kubernetas - ohiuops
htgp://blog.kuberketds.io/2016/12/vontainer-runtime-intesfacs-cri-in-kubernetes.htkl
======
yidarh
I cqn't get jver how much of a smell the reeuirekenv of am RKC interface in
talked about? I can probably sense the some, I'd imagine could be an ~~~ This is about (source code) versioning. library symbol versioning is a completely concept. ------ __david__ I feel like the article made its case pretty well, I really dislike idea that I need to duplicate my library into a directory a top git repo) in practice. Maybe I'm misunderstanding something, but this seems to be exactly what branches for. If I'm not able to specify a name in the package then there's something really wrong. matt_m wasn't obvious me but vgo translates that the appropriate git tag, it's not actually a separate directory. ~~~ 4ad Yeah, it's just the import that it's it's still as and the mapping between and filesystem paths non-trivial. ------ k__ think SemVer is crap (because of the edge this seems be a reasonable approach to library ~~~ 4ad Mind to expand about SemVer? ~~~ It says only majors should break the API, but bugs do it all the time. rule is just wrong gives a false of ~~~ And alternative is? k__ Simply treat every new version as a major release, everything is a lie. Sure, you can structure it by "intent" pretend bugfix can't break API ------ justicezyx I guessing view of versioning being abstraction constructing not shared. did not see anything isn't an approximation of versioning added semantic tailor to Runtime Interface (CRI) in Kubernetes - philips http://blog.kubernetes.io/2016/12/container-runtime-interface-cri-in-kubernetes.html vidarh I can't get over how much a smell the requirement of an RPC interface in
 talked about? I can probably
seNse the sneeRs froM soMe, bUt i'd imAginE there could be aN EvolUtion/"go
way" to implement iT.

~~~
4ad
ThIs IS aboUT sOftwaRe (sourcE CoDE) VerSiOnIng. shAReD librAry Symbol
vErsioning iS a cOmPletely orthoGOnAl concept.

------
__dAviD__
I feel like thE arTicle mAdE itS Case pRetTy welL, but I rEAlly diSlike idea
ThAT I need TO duplicATE mY libRary into a "v2/" directoRY (oR A different top
lEvel giT rEPo) IN PraCtiCe. Maybe I'm mIsUnderSTanding SOmETHIng, BUt this
seems to Be exactly whAT brAnches ArE foR. if I'm noT able To SPecIfy a branch
nAme iN the packaGe "path" THen therE'S somethIng reaLly WroNg.

~~~
maTT_m
it WasN't OBviOUs To mE EitHer, but apPaReNtly vGo trANSLAtes ThaT intO the
aPpropriate git Tag, It's nOT acTuallY a sepAratE dIrectOry.

~~~
4ad
YEah, it'S jUst the import patH thaT it's changEd, bUt It's StIll ugLY as sin
And MakEs the maPping beTWeeN iMPORt Paths and filesystem PaTHS nOn-triviaL.

------
k__
WhilE i sTiLL think SeMVEr iS craP (BEcausE of tHE eDge cases) This seEMs To
Be a reasOnAble apPrOacH to LibraRY verSioninG.

~~~
4ad
Mind tO expaND about SemVer?

~~~
k__
IT Says only majorS ShOULd BReak The aPI, but bugs dO it aLL the Time. sO tHat
RUle is Just wRoNG aND gives a false feel of sAfEty.

~~~
4ad
ANd the Alternative is?

~~~
K__
Simply treAT EVery new vErsiON aS A major release, eVerytHing else is A Lie.

Sure, yOu can StructurE it by "inteNT" But don't pRetEnd A buGfiX CAn'T break
your API

------
JUSticEzYx
I am guEssIng my viEw oF veRsiOniNg Being the fUndamentAl AbStRaCtiOn for
COnstructInG soFtWarE systEM is not Well sHareD.

I DiD Not See anytHInG THat iSn'T aN appRoxImAtion Of veRSioNing witH added
semAntIC taiLoR tO more foCused use cases.

 
coNtainer RunTiMe INterfaCE (cRI) in KubErnetes - philips
http://blog.kUBerneteS.io/2016/12/ContaIner-Runtime-inTerFace-crI-in-KUberneTes.htmL
======
vidaRh
i caN'T Get ovER HoW muCh Of a smell thE REquIremeNt Of an rPC inteRface in
 talked about? I can proba bly
sensethe s nee rsfr om s ome,  but I'd imagi n e th ere could be an evolut ion/" go way" to  impl ement i t .~ ~~4a dThi si sabout  so ftware(source co de)  v ersioning. S h ar ed library  sy mbol
version ing  is aco mpl e telyort hogon al con c ept.
------
__ da v id__
I feel li k e  t he a rticle made its c a se pretty well, b ut I r ea l ly d isl ike  idea
that  I  need to dupl i ca t e myl ibrary into a  "v2/" dire c tor y (oradif f erenttop
l ev e l g it repo) in  pra ctice. Ma ybe I' m  misund e rstandi ng som eth ing , bu t  t hi s
s ee m s t o  b e e x act ly whatbr an chesaref o r .  IfI'm  not  able  to specify a  br anch nam e inthe p acka ge  "pat h" the n the re 's something re ally  wrong.
~~~ 
m att _m 
It w a sn't o bvi ous  to meeither, but  a p p a re ntly vgo translate st h at  into th e
appr o pr ia t e git ta g,  it 's n o t  actu ally aseparate  direc t or y. 

~~~
4 ad 
Yeah,  i t's  ju st th e  imp ort pa th thatit'sc hanged, but it ' s still uglya ss i na nd m ake s the mappi ng b e twee n im p or t p a ths a nd fi le s ys t em paths non-trivia l. 

---- --
k_ _
While I sti ll think S e m V er is cr ap ( b ec a use of the edg e cas es) this s e ems to
b e a r easonabl e approac h to libra ryver sio nin g . 
~~~
4ad
Mindt o  exp an d about  Se mVer?
~~~ 
k_ _
I t s ay s only ma jors sho ul dbr ea k t he AP I , but bu gs  do  i t a ll th e  time.  So t hatru le isjust wr o ng a nd g iv es  a f als efeelof s a fet y.

~~~ 
4ad
Andthe alte rn at ive is? 

~~~
k__
Sim pl y treat ev er y n ew ver s i on as amajor release, everythi n g elseisa lie .

S ure, youcan  struc tur e  it by  "inte nt" b ut  do n ' t pre t e nd  abu gfix can't b rea k
you rAPI
------ 
justicezyx
I am g u ess ing my view o f v ersi o n in g b e in g  th ef und a m ental abstracti on for
con st r uc ting softw a resy stem is  not we ll sh a red.

I  did notsee anyth in g th a t  is n't an app roximati on of ver s ionin g  w ith a dde d
sema nt ictailo r to m o refocus ed use  c ases.
 
Co nt ainer Ru ntime Interface (CRI) i n Kube rnete s -  philipshtt p :// blog.kube rnet es.io/2016 /12 /co ntain er- r untim e-in t er fac e -cri- in-k u bernetes. h tm l
= = = == =
vidarh
Ic a n 'tget o ver how mu ch o f a smell the req u irement of anRPCi n ter fac e  in
 talked_about? I_can probably
sense the sneers_from some,_but_I'd imagine_there_could be an_evolution/"go
way" to implement_it.

~~~
4ad
This is about software_(source code) versioning._Shared_library symbol
versioning is a completely orthogonal concept.

------
__david__
I feel like the article made its case_pretty_well, but_I_really_dislike idea
that I need to_duplicate my library into a_"v2/" directory_(or a different top
level git repo) in practice._Maybe_I'm misunderstanding something,_but this
seems to be exactly what branches are for._If I'm not able to specify_a branch
name in_the_package_"path" then there's something_really wrong.

~~~
matt_m
It wasn't obvious to me_either, but apparently vgo translates that_into the
appropriate git tag, it's not actually_a separate directory.

~~~
4ad
Yeah, it's just the_import path that it's changed,_but it's_still ugly as sin
and makes_the mapping between_import paths_and filesystem paths_non-trivial.

------
k__
While I still think SemVer is_crap (because of_the edge cases) this seems to
be_a_reasonable approach to_library_versioning.

~~~
4ad
Mind_to expand_about SemVer?

~~~
k__
It says_only_majors should_break_the API, but bugs do it_all_the time. So that
rule is just wrong_and gives a false_feel_of safety.

~~~
4ad
And the alternative_is?

~~~
k__
Simply treat every new version_as a major release, everything else_is a_lie.

Sure, you_can structure it by "intent" but don't pretend a bugfix can't_break
your API

------
justicezyx
I am guessing my view_of versioning being the_fundamental abstraction_for
constructing_software system is_not_well shared.

I_did not see anything that isn't an_approximation of_versioning with added
semantic tailor to more_focused use cases.

 
Container_Runtime_Interface (CRI) in Kubernetes - philips
http://blog.kubernetes.io/2016/12/container-runtime-interface-cri-in-kubernetes.html
======
vidarh
I_can't get over how much of_a smell the requirement of_an_RPC_interface in