smartdns: update to 1.2024.45
Maintainer
@pymumu
Compile tested
- AArch64 mediatek mt7622 OpenWrt 23.05.2
- x86_64 AMD KVM OpenWrt SNAPSHOT 20240317
Run tested
- AArch64 mediatek mt7622 OpenWrt 23.05.2
- x86_64 AMD KVM OpenWrt SNAPSHOT 20240317
- Resolves dns requests as expected.
Description
smartdns: Update to Release45.
Change package source to github release tag.
Also change versioning scheme to match upstream releases. opkg will accept the upgrade based on my test that upgrades from 1.2024.45-12 to Release45-1.
Add two additional folders and two default config files used by luci-app-smartdns.
Note: Using MAC address client identifiers and listen on more than three devices will cause crashes. These are upstream bugs that are resolved in master.
Just to confirm: you tested with 23.05 but your PR is against master branch?
I did some more tests, it's working on a snapshot from march 17 as well. I prefer to have the luci app ready before backporting, if I ever plan to do that.
Also, you can suggest them to use semantic versioning. Because while looking at tab name https://github.com/pymumu/smartdns/releases/tag/Release45 - "Release Release45" does not look very good.
Also, you can suggest them to use semantic versioning. Because while looking at tab name https://github.com/pymumu/smartdns/releases/tag/Release45 - "Release Release45" does not look very good.
I opened an issue and they insist on using 1.YYYY.VV versioning scheme for openwrt.
I wonder if I should switch to git tags and be done with this.
It seems that versioning discussion will be time consuming and take will some to figure it out. Because other GNU/Linux distributions are using versioning as they tagged releases, so we should it use it as well. We are not special and we dont need special versioning. :)
Looking at your commit description:
Note: Using MAC address client identifiers and
listen on more than three devices will cause crashes.
These are upstream bugs that are resolved in master.
Could we backport those changes?
I tried to backport those fixes as patches. Also, openwrt seems to be heading towards using apk as its package manager, won't using a versioning scheme with letters cause incompatibility? And opkg sees Release45 as a newer version than 45.0.1, so this will cause further issue when upstream unifies their versioning scheme.
PKG_NAME:=smartdns
PKG_VERSION:=45
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/pymumu/smartdns/tar.gz/Release$(PKG_VERSION)?
PKG_HASH:=b17d82738f3ae73f5a60ad25c824e1000c05a6d060d08ebd1ec295a2caa5b495
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-Release$(PKG_VERSION)
In ImmortalWrt I trimmed Release prefix to make it numeric, I'm not sure if it is a way to go here.
Anyway, please refresh backported patches with make package/smartdns/{clean,refresh} V=s.
In ImmortalWrt I trimmed
Releaseprefix to make it numeric, I'm not sure if it is a way to go here.
It seems that there are three versioning scheme now and that upstream should handle and fix it. (https://github.com/pymumu/smartdns/issues/1707#issuecomment-2032098000). Unfortunately, this issue is caused by upstream developers of smartdns that they allowed it and that they did not use semantic versioning since start. Now, downstream distributions are not consistent with that, which is causing issues for package maintainers.
Hopefully, sometime soon, upstream developers will choose an approach which will be suitable for everyone.
It is not a bad solution, I need to say, and it avoids "Release" in the package name, but, e.g., Alpine is using it. 🤷
I would stick with Release45 for now and yes, please refresh patches.