question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

SemVer for elasticsearch-dsl

See original GitHub issue

With 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:closed
  • Created 5 years ago
  • Comments:8 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
msholty-fdcommented, Jul 3, 2018

@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 you pip 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 your requirements.txt like elasticsearch-dsl==6.2.0

0reactions
honzakralcommented, Jul 22, 2018

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.

Read more comments on GitHub >

github_iconTop 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 >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found