Commit Graph

106 Commits

Author SHA1 Message Date
Twaik Yont 093a038c6b fix(termux_repology_api_get_latest_version.sh): return "Already up to date" for all repology update requests in the case if repology is unavailable or other error
https://github.com/termux/termux-packages/issues/18690#issuecomment-1855014477
2024-03-17 11:06:09 +02:00
Twaik Yont 3022b58bcb scripts(update-packages): speed-up package update checks 2023-12-17 09:19:56 +02:00
Twaik Yont a63b862453 scripts(dump-repology-data): convert repology names to termux package names.
Fixes #18480
2023-11-13 16:14:55 +02:00
Twaik Yont 00fea0a9de scripts(update-packages): add an option to opt-out updates 2023-10-15 18:20:11 +03:00
Twaik Yont 5f14e97ade enhance(scripts/termux_pkg_upgrade_version): adding an ability to process sed regexps for transformating version during automatic updates 2023-10-14 23:24:32 +03:00
Fredrik Fornwall a93aeedba0 scripts: Compare apt/dpkg version numbers correctly
The termux_pkg_is_update_needed() function (exposed in the command-line
tool ./scripts/bin/apt-compare-versions) currently calls into python to
use the pkg_resources.parse_version() function.

This does not handle version numbers as apt/dpkg does - see
https://www.debian.org/doc/debian-policy/ch-controlfields.html#version,
so use dpkg --compare-versions for the version number comparison.

For instance, correct apt/dpkg behaviour is:
- '1-0' and '1' are the same version (the 'debian_revision' field)
- '1~rc1' is considered an earlier version than '1' (useful for being
   able to use release candidates)
- '1:1' is considered a later version than '2' (the epoch field, useful
   when upstream version numbering scheme changes).

This also exits with an error if a version cannot be parsed, and fixes
deprecation warnings when runing on later python versions (as
pkg_resources.parse_version() is going to be removed).
2023-10-05 16:16:30 +02:00
Aditya Alok 335e1fc34d
chore(script/dump-repology-data): improve docs
Signed-off-by: Aditya Alok <alok@termux.dev>
2023-10-04 10:46:51 +05:30
Aditya Alok d759dc3375
chore(script/dump-repology-data): update licenser info
Signed-off-by: Aditya Alok <alok@termux.dev>
2023-10-04 10:46:32 +05:30
Ted Stein b6e1271461
enhance(scripts/termux_github_api_get_tag): add support to get the latest tag that matches a regex
Some packages repos like neovim use a floating tag like `stable` for the latest version tag and will be returned if `latest-release-tag` tag type is used. To match against the latest version tag instead, a regex that matches the version can be passed with `latest-regex` tag type.
2023-10-01 00:17:17 +05:00
Twaik Yont 2ce2b02a25 chore(scripts/update-packages): revert fix for #14544 to re-enable repology updates 2023-09-27 08:58:38 +03:00
Ivan Max a46e3e9357
build-package.sh: adding compilation based on glibc (#16901)
[skip ci]
2023-08-30 23:40:08 +03:00
Jia Yuan Lo f419f759d8 auto-update: clean before each successive build 2023-06-18 09:10:55 +09:00
Tee KOBAYASHI 98f2ec2c32 auto-update: Disable repology update method
temporarily.

Reference: https://github.com/termux/termux-packages/issues/14544
2023-01-15 10:56:18 +09:00
Tee KOBAYASHI ac0d70a63a auto-update: Exclude epoch in version comparison
to avoid warnings like

```
/usr/lib/python3/dist-packages/pkg_resources/__init__.py:116: PkgResourcesDeprecationWarning: 2:0.8.3 is an invalid version and will not be supported in a future release
```
2023-01-10 01:54:19 +00:00
Henrik Grimler 20bd0f0dc0
scripts: use git+[...] instead of [...].git for git urls
Not all source code hosters support the .git suffix (for example
sourcehut).  Use a git+ prefix instead to indicate that a url is a git
repo.
2023-01-01 18:31:38 +01:00
Tee KOBAYASHI 4ee2e32f7b Use `bump(repo/pkgname)` as the mnemonic for bump
I just can't tolerate the previous one shown in Actions timeline anymore.
2022-11-20 13:27:48 +09:00
Uchiha Kakashi d751eb2a15
fix(scripts): typo in termux_pkg_upgrade_version 2022-10-15 13:46:59 +08:00
Chongyun Lee a9d64807d4
fix(scripts): building failure when auto-updating 2022-10-15 08:09:37 +05:30
Yaksh Bariya 5e7968852f
chore(CONTRIBUTING.md): Remove unnecessary message for update and downgrade
Earlier convention:
  upgpkg(<repo>/<package>): update to <ver>
Newer convention:
  upgpkg(<repo>/<package>): <ver>
Similarly same for dwnpkg.

Thanks to @truboxl for the suggestion
2022-10-11 14:01:46 +05:30
Chongyun Lee 400826006e
fix(scripts): fix jq error
Hope that this will fix #12313
2022-10-10 20:55:53 +08:00
Yaksh Bariya 23f5e3e9b7
scripts(bin/*): adapt commit messages to new guidelines 2022-10-10 14:34:45 +05:30
Aditya Alok d0fd4b0baf
refactor: update @MrAdityaAlok email address
- use alok@termux.org instead

%ci:no-build

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-05-10 00:15:34 +05:30
Aditya Alok 85d52a4ab2
chore(auto update): cleanup some codes
%ci:no-build

Above tag is for previous commit but CI checks head commit for
this, so applying here.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-20 23:56:00 +05:30
Yaksh Bariya fd130685ae
fixup previous commit 2022-04-20 16:43:14 +05:30
Yaksh Bariya be24cc6016
fixup: fix hardcoded packages directory in termux_pkg_upgrade_version 2022-04-20 16:23:47 +05:30
Aditya Alok 2157e972d9
fix(auto-update): compare versions with epoch added
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-05 11:38:21 +05:30
Aditya Alok d67a38d324
refactor(auto-update): clean up some code
- move epoch addition to termux_pkg_upgrade_version set.
- now termux_pkg_upgrade_version can be given retrived version/tag from
  api, directly.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-05 11:21:14 +05:30
Aditya Alok f8cce7faba
fix(auto-update): removal of epoch when TERMUX_PKG_UPDATE_VERSION_REGEXP is set
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-05 00:39:32 +05:30
Aditya Alok a7d089c195
fix(auto-updates): move extraction of version from regexp to upgrade version step
previously setting TERMUX_PKG_UPDATE_VERSION_REGEXP had no effect on version being wriiten to
build.sh. It was only used for version comparison.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-01 12:58:16 +05:30
Aditya Alok 64c2ed40b0
fix(termux_github_api_get_tag): addition of '|000' when `extra_curl_opts[1]` was empty
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-30 09:26:56 +02:00
Aditya Alok 0c412fe300
Revert "fix autoupdate for projects hosted on GitHub"
This reverts commit 9d98e6bd14.
2022-03-30 09:26:53 +02:00
Yaksh Bariya 9d98e6bd14
fix autoupdate for projects hosted on GitHub 2022-03-29 18:44:37 +05:30
Aditya Alok c23d019058
feat: replace `apt-compare-versions` script with `termux_pkg_is_update_needed`
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-29 01:01:12 +05:30
Aditya Alok 292474f082 fix(termux_github_api_get_tag): expansion of newline in graphql api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 694a941883 fix(auto update): fix few messages, comments and code
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 08ac4aa4db feat(auto update): add script to get newest version from repology api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 843823e3f9 feat(auto update): add script to get tags from gitlab api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok ba0688e4c5 feat(auto update): add script to get tags from github api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok ea595dd257 feat(auto update): add script to extract repology data from its api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 4af1102029 feat(auto update): add script to update repology tracked packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok b518a1599b feat(auto update): add script to update gitlab hosted packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 6a061af281 feat(auto update): add script to update github hosted packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 03cc6b6ce8 feat(auto update): add utility function to check if update is needed
- compare current and latest version retrived from respective api

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 2e093339b2 feat(auto update): add utility function to upgrade package's version
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok e1d6ab87f6 feat(auto update): add utility function to exit on error
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok b089c6182b feat(auto update): add script to decide update method
- hook to be called when auto updating.
- it may be overridden by build.sh

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Leonid Pliushch 74e4f276c6
scripts: move script for updating packages to bin directory 2021-10-04 13:22:07 +03:00
Leonid Pliushch ed9b855275
auto updates: get rid of github-projects.txt
From now, all configuration related to automatic updates should be done
in build.sh scripts.

It requires specifying at least

 TERMUX_PKG_AUTO_UPDATE=true

which indicates that package is eligible for automatic updates, and
optionally

 TERMUX_PKG_AUTO_UPDATE_TAG_REGEXP="$version_regexp"

which specifies a regular expression used to extract the version part
from Git tag.
2021-10-04 13:17:04 +03:00
Ian Hu 4a1895e7f5
auto updates: stop running update tests if received null value from api (#7619)
When this happens, it's time to update github-projects.txt.
2021-09-30 13:34:16 +03:00
Ian Hu f3a4a04d1e
auto updates: add php-apcu and php-zephir-parser (#7616) 2021-09-29 13:26:08 +03:00