Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package telegram-desktop for 
openSUSE:Factory checked in at 2021-12-21 18:40:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/telegram-desktop (Old)
 and      /work/SRC/openSUSE:Factory/.telegram-desktop.new.2520 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "telegram-desktop"

Tue Dec 21 18:40:32 2021 rev:67 rq:941852 version:3.3.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/telegram-desktop/telegram-desktop.changes        
2021-12-08 00:00:22.611611191 +0100
+++ 
/work/SRC/openSUSE:Factory/.telegram-desktop.new.2520/telegram-desktop.changes  
    2021-12-21 18:40:51.305885876 +0100
@@ -1,0 +2,17 @@
+Sun Dec 12 16:42:17 UTC 2021 - Marcel Kuehlhorn <tu...@opensuse.org>
+
+- Add tg_owt-packager.py to Source list in spec
+
+-------------------------------------------------------------------
+Sat Dec 11 04:01:59 UTC 2021 - Xu Zhao <i...@xuzhao.net>
+
+- Update to 3.3.0
+  * Content creators can restrict the ability to save media and
+    forward messages from their groups and channels.
+  * Clear messages in one-on-one chats from a specific day or
+    date range.
+  * Comment as one of your channels in public groups and channel
+    comments.
+- Add tg_owt-packager.py
+
+-------------------------------------------------------------------

Old:
----
  tdesktop-3.2.8-full.tar.gz

New:
----
  tdesktop-3.3.0-full.tar.gz
  tg_owt-packager.py

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ telegram-desktop.spec ++++++
--- /var/tmp/diff_new_pack.3IOW7U/_old  2021-12-21 18:40:53.365887725 +0100
+++ /var/tmp/diff_new_pack.3IOW7U/_new  2021-12-21 18:40:53.369887729 +0100
@@ -34,15 +34,17 @@
 %define _dwz_max_die_limit     200000000
 
 Name:           telegram-desktop
-Version:        3.2.8
+Version:        3.3.0
 Release:        0
 Summary:        Messaging application with a focus on speed and security
 License:        GPL-3.0-only
 Group:          Productivity/Networking/Instant Messenger
 URL:            https://github.com/telegramdesktop/tdesktop
 Source0:        
https://github.com/telegramdesktop/tdesktop/releases/download/v%{version}/tdesktop-%{version}-full.tar.gz
-# git clone --recurse-submodules https://github.com/desktop-app/tg_owt.git 
tg_owt-master
-Source1:        tg_owt-master.zip
+# Use tg_owt-packager.py to prepare tg_owt-master.zip
+# Usage: python tg_owt-packager.py --repo-dir $PWD/tg_owt-master
+Source1:        tg_owt-packager.py
+Source2:        tg_owt-master.zip
 # PATCH-FIX-OPENSUSE
 Patch1:         0001-use-bundled-ranged-exptected-gsl.patch
 # PATCH-FIX-OPENSUSE
@@ -171,7 +173,7 @@
 %patch5 -p1
 
 cd ../
-unzip -q %{S:1}
+unzip -q %{S:2}
 mkdir Libraries
 mv tg_owt-master Libraries/tg_owt
 %patch2 -p2 -d Libraries/tg_owt
@@ -222,7 +224,7 @@
 %install
 %cmake_install
 
-appstream-util validate-relax --nonet 
%{buildroot}%{_datadir}/metainfo/*.appdata.xml
+appstream-util validate-relax --nonet 
%{buildroot}%{_datadir}/metainfo/*.metainfo.xml
 
 %files
 %license LICENSE LEGAL
@@ -230,6 +232,6 @@
 %{_bindir}/%{name}
 %{_datadir}/applications/%{name}.desktop
 %{_datadir}/icons/hicolor/*/apps/*.png
-%{_datadir}/metainfo/*.appdata.xml
+%{_datadir}/metainfo/*.metainfo.xml
 
 %changelog

++++++ tdesktop-3.2.8-full.tar.gz -> tdesktop-3.3.0-full.tar.gz ++++++
/work/SRC/openSUSE:Factory/telegram-desktop/tdesktop-3.2.8-full.tar.gz 
/work/SRC/openSUSE:Factory/.telegram-desktop.new.2520/tdesktop-3.3.0-full.tar.gz
 differ: char 5, line 1

++++++ tg_owt-master.zip ++++++
Binary files /var/tmp/diff_new_pack.3IOW7U/_old and 
/var/tmp/diff_new_pack.3IOW7U/_new differ

++++++ tg_owt-packager.py ++++++
#!/usr/bin/env python
import re
import os
import git
import argparse
import subprocess
from pathlib import Path
from git import Repo

tg_owt_url = 'https://github.com/desktop-app/tg_owt.git'
repo_dir = os.path.join(os.path.dirname(os.path.realpath(__file__)), 
"tg_owt-master")

def clone_repo(git_url, repo_dir):
    try:
        repo = Repo(repo_dir)
    except (git.exc.GitCommandError, git.exc.NoSuchPathError):
        Repo.clone_from(git_url, repo_dir)
        repo = Repo(repo_dir)
    return repo

def load_submodules(repo):
    for sms in repo.submodules:
        sms.update(init=True)

def find_pipewire_path(repo):
    "Return the relative path of pipewire (relative to repo path)"
    sms = map(lambda x: x.name, repo.submodules)
    sms = filter(lambda x: "pipewire" in x, sms)
    sms = list(sms)
    assert len(sms) == 1, f"find more than 1 pipewire submodule: {sms}"
    return sms[0]

def find_pipewire_ver(pipeware_path):
    pw_build_file = os.path.join(pipeware_path, "meson.build")
    with open(pw_build_file, "r") as pf:
        pw_build = list(map(lambda x: x.strip(), pf.read().splitlines()))
    version_re = "^version : '([0-9]+)\.([0-9]+)\.([0-9]+)',"
    apiver_re = "^apiversion = '([0-9.]+)'"
    ver_line = list(filter(lambda x: re.match(version_re, x), pw_build))
    apiver_line = list(filter(lambda x: re.match(apiver_re, x), pw_build))
    assert len(ver_line) == 1, f"Found more than one version line: {ver_line}"
    assert len(apiver_line) == 1, f"Found more than one apiversion line: 
{apiver_line}"
    ver  = re.match(version_re, ver_line[0]).groups()
    api_ver  = re.match(apiver_re, apiver_line[0]).groups()[0]
    return ver, api_ver

def gen_pipewire_version_header(pipewire_path, pw_ver, pw_apiver):
    pw_ver_major, pw_ver_minor, pw_ver_micro = pw_ver
    replace_map = {
        '@PIPEWIRE_API_VERSION@': pw_apiver,
        '@PIPEWIRE_VERSION_MAJOR@': pw_ver_major,
        '@PIPEWIRE_VERSION_MINOR@': pw_ver_minor,
        '@PIPEWIRE_VERSION_MICRO@': pw_ver_micro,
    }
    part_header_file = os.path.join(pipewire_path, "src", "pipewire", 
"version.h.in")
    with open(part_header_file, "r") as phf:
        part_header = phf.read()
    for k, v in replace_map.items():
        part_header = part_header.replace(k, v)
    header_file = os.path.join(pipewire_path, "src", "pipewire", "version.h")
    with open(header_file, "w") as hf:
        hf.write(part_header)

def compress_package(repo_dir):
    basename = os.path.basename(repo_dir)
    zipname = f"{basename}.zip"
    path = Path(repo_dir).parent
    command = ['zip', zipname, '-r', basename, '-x', '*.git*']
    subprocess.check_call(command, cwd=path)

if __name__ == '__main__':
    parser = argparse.ArgumentParser(description="Package tg_owt for 
telegram-desktop build.")
    parser.add_argument('--repo-dir', required=True, help="Specify path to 
clone tg_owt master branch.")
    args = parser.parse_args()

    repo_dir = args.repo_dir
    repo = clone_repo(tg_owt_url, repo_dir)
    load_submodules(repo)
    pipewire_path = find_pipewire_path(repo)
    pipewire_path = os.path.join(repo_dir, pipewire_path)
    pw_ver, pw_apiver = find_pipewire_ver(pipewire_path)
    gen_pipewire_version_header(pipewire_path, pw_ver, pw_apiver)
    compress_package(repo_dir)

Reply via email to