SemVer for elasticsearch-dsl
See original GitHub issueWith 6.2.0
release I’ve suddenly realised that dsl in not following semver (minor version introduced backward-incompatible changes).
I thought that semver is accepted for all products under elastic umbrella, at least starting from “synchronized” releases (when all ELK stack rolls out with same versions). Isn’t this a thing? Or dsl is not supported by this level of effort — as not an official client?
Issue Analytics
- State:
- Created 5 years ago
- Comments:8 (4 by maintainers)
Top Results From Across the Web
Semantic Versioning 2.0.0 | Semantic Versioning
Semantic Versioning spec and website. ... Semantic Versioning Specification (SemVer). The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, ...
Read more >Dsl | npm.io
Tiny internal DSL which allows invocation of different functionality depending on SemVer match. semverdsl. 1.0.1 • Published 6 years ago. css-to-xpath.
Read more >pyeqs · PyPI
A python library to simplify building complex Elasticsearch JSON queries. Based on the Django QuerySet API, backed by the [official python elasticsearch library]( ......
Read more >Elasticsearch DSL — Elasticsearch DSL 7.2.0 documentation
Elasticsearch DSL is a high-level library whose aim is to help with writing and running queries against Elasticsearch. It is built on top...
Read more >OPTIMADE Python tools
This repository contains a library of tools for implementing and consuming OPTIMADE APIs using Python. It also contains a server validator tool, which...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@HonzaKral I think having 4 digits on your version isn’t going to fix the issue. I would recommend just being very clear in the documentation what the versioning means. Most people assume that if you have versioning like
x.y.z
, it’s SemVer, and are confused when it’s actually not.Why does the documentation recommend installing such a broad range, like
elasticsearch-dsl>=6.0.0,<7.0.0
? Maybe that is a good start, but once youpip install elasticsearch-dsl>=6.0.0,<7.0.0
, you should check to see which version was actually installed and then lock it down by putting an actual version number in yourrequirements.txt
likeelasticsearch-dsl==6.2.0
Thank you all for feedback, it makes perfect sense and I have to apologize again for the incompatibilities
6.3.0
brought in a minor version.While there are technical tools to pin dependencies (and I do highly recommend that for production) that is no excuse to break people’s code. I didn’t make the decision lightly but I felt it was warranted given the amount of changes and fixes that became available in
6.3
. Going forwards I will be even more cautious in introducing breaking changes outside of major version.If I ever decide that it is required to introduce backwards incompatible changes (outside of severe bug fixes and possible security patches) I will consider just breaking the elasticsearch version sync instead.