On 2021/09/08 23:35, Omar Polo wrote:
> Hello ports,
>
> Please find attached the patch to update net/tdlib to its latest
> "unofficial minor release". Tested with net/tg and telega.el.
>
> Regarding the library bump, there doesn't seem to be any removed
> functions or struct changed, but there were a lot of changes like
>
> - void close(Promise<> promise) override {
> + void close(Promise<> promise) final {
>
> I don't know if they warrants a major or minor bump.
>
> Thanks,
>
> Omar Polo
>
>
> P.S.: what do other porters use to check for library bump? I'm skimming
> through the `git diff ...' but it's a bit tedious and I'm having a
> hard time figuring out the meaning of diffing the output of `nm
> /path/to/tdlib.so' pre/post update.
/usr/src/lib/check_sym can be useful. for typical ports work: look at
dynamic export changes, ignore "PLT added".
Regarding changes to functions:
Removed function, or changed function signature, or incompatibly
changed struct passed to function -> bump major.
Added function -> bump minor.
C++ encodes parameter types in the "mangled" function names so for C++
libraries that should be enough to identify changes in the function
signature.
C doesn't do this so unless you are diffing headers from old+new
you might miss some change that ought to result in a major bump.
(this type of check probably gets missed sometimes.. definitely
warranted for -stable updates and close to release, and it ought
to be done always really for safety, but...)
To find changes in structs also needs diffing really. With the
same note as above..
Upstream bumps and release notes can sometimes give a clue when a bump
is needed that you might otherwise miss. But can't always be relied upon.
It is often said "if in doubt, bump". That is fine for -current, but
bumps and ABI changes are more of a problem for -stable and more care is
needed there.
I don't know enough C++ to qualify the change you pointed out as safe
without bump or not, though I suspect that if it were important,
running diffsyms $oldlib $newlib will pick up the change. I think
there's no real _dis_advantage to bumping in this case as it was added
post 6.9 so won't be going to -stable anyway.
> Index: Makefile
> ===================================================================
> RCS file: /home/cvs/ports/net/tdlib/Makefile,v
> retrieving revision 1.3
> diff -u -p -r1.3 Makefile
> --- Makefile 14 Jul 2021 21:09:20 -0000 1.3
> +++ Makefile 8 Sep 2021 21:43:40 -0000
> @@ -9,10 +9,10 @@ COMMENT = cross-platform library for bui
> # track "unofficial minor versions" which are only present as commit hashes.
> GH_ACCOUNT = tdlib
> GH_PROJECT = td
> -GH_COMMIT = 24e5803b969b15c286e8e501f6b66446b32f2b09
> -DISTNAME = tdlib-1.7.5
> +GH_COMMIT = 7135caa2bef38939f58e9e206db83fd316236682
> +DISTNAME = tdlib-1.7.7
>
> -SHARED_LIBS += tdjson 0.1 # 1.7.3
> +SHARED_LIBS += tdjson 1.0 # 1.7.7
> CATEGORIES = net
>
> HOMEPAGE = https://core.telegram.org/tdlib
> Index: distinfo
> ===================================================================
> RCS file: /home/cvs/ports/net/tdlib/distinfo,v
> retrieving revision 1.2
> diff -u -p -r1.2 distinfo
> --- distinfo 14 Jul 2021 21:09:20 -0000 1.2
> +++ distinfo 8 Sep 2021 18:20:31 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (tdlib-1.7.5-24e5803b.tar.gz) =
> V598a7FVAy45/4qIPrcPP5KhgzmYbhhouqmFCwsri7A=
> -SIZE (tdlib-1.7.5-24e5803b.tar.gz) = 4432201
> +SHA256 (tdlib-1.7.7-7135caa2.tar.gz) =
> LHFROb9s/Ec3oDpaWucd8SMD8BQvk2XRpUQzqhl1UJw=
> +SIZE (tdlib-1.7.7-7135caa2.tar.gz) = 4457743
>