|
|
|
|
|
by sitkack
3009 days ago
|
|
I believe that Roy is nerd sniping us, I capitulate. Ok, Roy was wrong, versions in the URL don't break things, they make them stronger. Naming is hard, we republish a semantically related by different artifact and change the name rather than the varying part? Use etags instead? Change the domain? I totally understand asking for the version (Accepts) during a GET request. If I agreed on that content-type in advance, if I haven't I need to communicate both the url and the content-type along with the version to the clients. We don't have a common container for (url,content,version), things are getting messy. In a package manager, what is the equivalent of a GET request with an accepts header? import foo.bar v1.2.3
import foo.baz v2.1.3
new_thing = ::v2:foo.baz.new_thing(1)
old_thing = ::v1:foo.bar.old_thing(2)
Joe Armstrong has a great post on modules and versioning http://lambda-the-ultimate.org/node/5079I am strongly infavor of immutable code, I think we should be able to import all versions of a library, referenceable by commit hash. |
|
Thanks for the link as well! I would love to see that experimented somewhere and see if it works.