-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
git tag patch versions #1627
Comments
It would be wrong to tag these commits. Telegram is developed continuously and those aren't the commits you are looking for. The TDLib version is increased the same day a Telegram update is released to denote significant changes in the TDLib API. This happens along with push of source code with all new features inplemented. After that there can be a lot of improvements and bug fixes before the next release. Therefore the exact commit, in which the version was changed, isn't recommended for usage to anyone. In fact, if you want to use the most stable TDLib 1.X.Y, you need to search for the first commit with that version and message "Update/Increase layer to ..." and use the commit just before that. But everyone should tend to use as new TDLib version is possible. Telegram updates frequently and new features aren't available in old TDLib versions. Moreover, due to server-side changes or introduction of new features some previously working features can be broken. So, basically, each time a version is stable enough and can be marked with a tag, there is a newer version with the latest features, which should be used instead. Most of the time, the current master version is the TDLib version, which should be used. |
Ok, it's fair enough. Thanks. |
Hi @levlam I understand your concern but I have seen libraries with the same issues you described and to mitigate this kind of problem, they release/tag every day or so. wdyt? |
@asarubbo |
Hello @levlam I never asked to tag each commit , but I asked to release frequently, that is a bit different. You should see the situation from a packager perspective where sees a tag as a point of reference, while the master version is always seen as 'unstable' version. See also: https://github.com/boto/botocore/tags Anyway I'm using python-telegram that uses a bundled version of tdlib-1.8.5 and it works for me. By digging a bit into the History of CMakeLists.txt I can see that 1.8.5 was 'added' on Jul 31, 2022 so the facts says that a version from 10 months ago is still working. |
For TDLib master version is always suitable for production releases. And this is always the recommended for use version, because all app users are supposed to update frequently and use the latest version. The old versions will still work, but they don't have support for all features and may be otherwise limited. |
I understand your concern and you are certainly right. What I am asking (but not only me, I see all the discussions about the tags) is at least tag when you 'declare' a new version like you did here: So at least packagers can properly use repology instead of manually monitor the git commits. Thanks |
Those are the latest master commits right before a new version with new API was pushed to Github. Whenever such commit can be identified, there is another newer TDLib version, which should be used instead. |
I'm create tag and release in this repository: https://github.com/njfamirm/td |
But I know the situations when the client used 'latest' stable tag 1.8.0 with tdlib-example based client and session kicked with UPDATE_APP_TO_LOGIN error (and session lost permanently since porting and recompiling it with latest tdlib master branch does not help). |
@667bdrm |
Sometimes I want to compile specific TDlib version as precise as patch version (e.g. 1.7.4). Would it be possible to
git tag
those versions in the future ? It can also be done easily retroactively:git log --grep="version" -- :CMakeLists.txt
.The text was updated successfully, but these errors were encountered: