Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package googler for openSUSE:Factory checked in at 2022-07-06 15:41:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/googler (Old) and /work/SRC/openSUSE:Factory/.googler.new.1548 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "googler" Wed Jul 6 15:41:56 2022 rev:8 rq:986886 version:4.3.2 Changes: -------- --- /work/SRC/openSUSE:Factory/googler/googler.changes 2020-10-12 14:00:11.322237962 +0200 +++ /work/SRC/openSUSE:Factory/.googler.new.1548/googler.changes 2022-07-06 15:42:08.074529164 +0200 @@ -1,0 +2,20 @@ +Fri Jun 24 12:03:50 UTC 2022 - openqa container_bot <ggkiou...@suse.com> + +- Update to the latest version and solve bsc1200312 + +------------------------------------------------------------------- +Fri Jun 24 11:42:20 UTC 2022 - openqa container_bot <ggkiou...@suse.com> + +- Update to the latest version and solve bsc1200312 + +------------------------------------------------------------------- +Fri Jun 24 11:42:19 UTC 2022 - openqa container_bot <ggkiou...@suse.com> + +- Update to the latest version and solve bsc1200312 + +------------------------------------------------------------------- +Thu Jun 16 14:51:46 UTC 2022 - openqa container_bot <ggkiou...@suse.com> + +- Update to the latest version and solve bsc1200312 + +------------------------------------------------------------------- Old: ---- v4.3.1.tar.gz New: ---- v4.3.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ googler.spec ++++++ --- /var/tmp/diff_new_pack.WkRJF9/_old 2022-07-06 15:42:08.570529895 +0200 +++ /var/tmp/diff_new_pack.WkRJF9/_new 2022-07-06 15:42:08.578529907 +0200 @@ -1,7 +1,7 @@ # # spec file for package googler # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: googler -Version: 4.3.1 +Version: 4.3.2 Release: 0 Summary: Google Search, Google Site Search, Google News from the terminal License: GPL-3.0-or-later @@ -51,7 +51,7 @@ rm -rf %{buildroot}%{_datadir}/doc/googler install -Dm644 auto-completion/fish/googler.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/googler.fish -install -Dm644 auto-completion/bash/googler-completion.bash %{buildroot}%{_sysconfdir}/bash_completion.d/googler +install -Dm644 auto-completion/bash/googler-completion.bash %{buildroot}%{_datadir}/bash-completion/completions/googler install -Dm644 auto-completion/zsh/_googler %{buildroot}%{_datadir}/zsh/site-functions/_googler %files @@ -60,7 +60,7 @@ %doc CHANGELOG README.md %{_bindir}/googler %{_mandir}/man1/googler.* -%{_sysconfdir}/bash_completion.d/ +%{_datadir}/bash-completion/completions/ %dir %{_datadir}/fish/ %{_datadir}/fish/vendor_completions.d/ %{_datadir}/zsh/ ++++++ v4.3.1.tar.gz -> v4.3.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/.github/workflows/ci.yml new/googler-4.3.2/.github/workflows/ci.yml --- old/googler-4.3.1/.github/workflows/ci.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/googler-4.3.2/.github/workflows/ci.yml 2021-01-21 09:19:59.000000000 +0100 @@ -0,0 +1,26 @@ +name: ci +on: + push: + pull_request: + schedule: + - cron: '0 0 * * *' +jobs: + test: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: [3.6, 3.7, 3.8, 3.9] + fail-fast: false + steps: + - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + - name: Install dev dependencies + run: | + python -m pip install --upgrade pip + pip install pytest + - name: Test with pytest + run: | + pytest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/.github/workflows/test.yml new/googler-4.3.2/.github/workflows/test.yml --- old/googler-4.3.1/.github/workflows/test.yml 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/.github/workflows/test.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,26 +0,0 @@ -name: test -on: - push: - pull_request: - schedule: - - cron: '0 0 * * *' -jobs: - test: - runs-on: ubuntu-latest - strategy: - matrix: - python-version: [3.6, 3.7, 3.8, 3.9] - fail-fast: false - steps: - - uses: actions/checkout@v2 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: Install dev dependencies - run: | - python -m pip install --upgrade pip - pip install pytest - - name: Test with pytest - run: | - pytest diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/.replit new/googler-4.3.2/.replit --- old/googler-4.3.1/.replit 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/.replit 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -language = "python3" -run = "python googler" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/CHANGELOG new/googler-4.3.2/CHANGELOG --- old/googler-4.3.1/CHANGELOG 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/CHANGELOG 2021-01-21 09:19:59.000000000 +0100 @@ -1,3 +1,11 @@ +googler 4.3.2 +2021-01-21 + +- Fix html class of result nodes (#393, fixes #392) +- Do not sabotage stdin of url_handler (#386) + +------------------------------------------------------------------------------- + googler 4.3.1 2020-10-10 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/README.md new/googler-4.3.2/README.md --- old/googler-4.3.1/README.md 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/README.md 2021-01-21 09:19:59.000000000 +0100 @@ -4,16 +4,14 @@ <a href="https://github.com/jarun/googler/releases/latest"><img src="https://img.shields.io/github/release/jarun/googler.svg?maxAge=600" alt="Latest release" /></a> <a href="https://repology.org/project/googler/versions"><img src="https://repology.org/badge/tiny-repos/googler.svg" alt="Availability"></a> <a href="https://github.com/jarun/googler/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-GPLv3-yellowgreen.svg?maxAge=2592000" alt="License" /></a> -<a href="https://github.com/jarun/googler/actions"><img src="https://github.com/jarun/googler/workflows/test/badge.svg?branch=master" alt="Build Status" /></a> -<a href="https://repl.it/github/jarun/googler"><img src="https://repl.it/badge/github/jarun/googler?maxAge=2592000" alt="Repl.it" /></a> - +<a href="https://github.com/jarun/googler/actions"><img src="https://github.com/jarun/googler/workflows/ci/badge.svg?branch=master" alt="Build Status" /></a> </p> <p align="center"> <a href="https://asciinema.org/a/85019"><img src="https://i.imgur.com/EbZof9q.png" alt="Asciicast" width="734"/></a> </p> -`googler` is a power tool to Google (Web & News) and Google Site Search from the command-line. It shows the title, URL and abstract for each result, which can be directly opened in a browser from the terminal. Results are fetched in pages (with page navigation). Supports sequential searches in a single `googler` instance. +`googler` is a power tool to Google (web, news, videos and site search) from the command-line. It shows the title, URL and abstract for each result, which can be directly opened in a browser from the terminal. Results are fetched in pages (with page navigation). Supports sequential searches in a single `googler` instance. `googler` was initially written to cater to headless servers without X. You can integrate it with a text-based browser. However, it has grown into a very handy and flexible utility that delivers much more. For example, fetch any number of results or start anywhere, limit search by any duration, define aliases to google search any number of websites, switch domains easily... all of this in a very clean interface without ads or stray URLs. The shell completion scripts make sure you don't need to remember any options. @@ -122,7 +120,7 @@ *Love smart and efficient utilities? Explore [my repositories](https://github.com/jarun?tab=repositories). Buy me a cup of coffee if they help you.* <p align="center"> -<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RMLTQ76JSXJ4Q"><img src="https://img.shields.io/badge/donate-PayPal-1eb0fc.svg" alt="Donate via PayPal!" /></a> +<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RMLTQ76JSXJ4Q"><img src="https://img.shields.io/badge/dona...@paypal-1eb0fc.svg" alt="Donate via PayPal!" /></a> </p> ### Table of contents @@ -229,7 +227,7 @@ To install the latest stable version, run - $ sudo curl -o /usr/local/bin/googler https://raw.githubusercontent.com/jarun/googler/v4.3.1/googler && sudo chmod +x /usr/local/bin/googler + $ sudo curl -o /usr/local/bin/googler https://raw.githubusercontent.com/jarun/googler/v4.3.2/googler && sudo chmod +x /usr/local/bin/googler You could then let googler upgrade itself by running @@ -469,7 +467,7 @@ ### Developers 1. Copyright ?? 2008 Henri Hakkinen -2. Copyright ?? 2015-2020 [Arun Prakash Jana](https://github.com/jarun) +2. Copyright ?? 2015-2021 [Arun Prakash Jana](https://github.com/jarun) 3. [Zhiming Wang](https://github.com/zmwangx) 4. [Johnathan Jenkins](https://github.com/shaggytwodope) 5. [SZ Lin](https://github.com/szlin) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/googler new/googler-4.3.2/googler --- old/googler-4.3.1/googler 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/googler 2021-01-21 09:19:59.000000000 +0100 @@ -1,7 +1,7 @@ #!/usr/bin/env python3 # # Copyright ?? 2008 Henri Hakkinen -# Copyright ?? 2015-2020 Arun Prakash Jana <engineera...@gmail.com> +# Copyright ?? 2015-2021 Arun Prakash Jana <engineera...@gmail.com> # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -35,6 +35,7 @@ import signal import socket import ssl +import subprocess from subprocess import Popen, PIPE, DEVNULL import sys import textwrap @@ -89,8 +90,8 @@ # Constants -_VERSION_ = '4.3.1' -_EPOCH_ = '20201001' +_VERSION_ = '4.3.2' +_EPOCH_ = '20210115' COLORMAP = {k: '\x1b[%sm' % v for k, v in { 'a': '30', 'b': '31', 'c': '32', 'd': '33', @@ -1455,8 +1456,7 @@ # Custom URL handler gets max priority if hasattr(open_url, 'url_handler'): - p = Popen([open_url.url_handler, url], stdin=PIPE) - p.communicate() + subprocess.run([open_url.url_handler, url]) return browser = webbrowser.get() @@ -1556,6 +1556,26 @@ sys.exit(1) +def time_it(description=None): + def decorator(func): + @functools.wraps(func) + def wrapped(*args, **kwargs): + # Only profile in debug mode. + if not logger.isEnabledFor(logging.DEBUG): + return func(*args, **kwargs) + + import time + mark = time.perf_counter() + ret = func(*args, **kwargs) + duration = time.perf_counter() - mark + logger.debug('%s completed in \x1b[33m%.3fs\x1b[0m', description or func.__name__, duration) + return ret + + return wrapped + + return decorator + + # Classes class HardenedHTTPSConnection(HTTPSConnection): @@ -2084,6 +2104,7 @@ """The host currently connected to.""" return self._host + @time_it() def new_connection(self, host=None, port=None, timeout=45): """Close the current connection (if any) and establish a new one. @@ -2148,6 +2169,7 @@ """ self.new_connection(timeout=timeout) + @time_it() def fetch_page(self, url): """Fetch a URL. @@ -2303,6 +2325,7 @@ self.results = [] self.parse(html) + @time_it() def parse(self, html): tree = parse_html(html) @@ -2346,7 +2369,11 @@ # Note that a filetype tag (e.g. PDF) is now pretty # damn hard to parse with confidence (that it'll # survive the slighest further change), so we don't. - title_node, details_node, *_ = div_g.select_all('div.rc > div') + + # As of January 15th 2021, the html class is not rc anymore, it's tF2Cxc. + # This approach is not very resilient to changes by Google, but it works for now. + # title_node, details_node, *_ = div_g.select_all('div.rc > div') + title_node, details_node, *_ = div_g.select_all('div.tF2Cxc > div') if 'yuRUbf' not in title_node.classes: logger.debug('unexpected title node class(es): expected %r, got %r', 'yuRUbf', ' '.join(title_node.classes)) @@ -3223,7 +3250,7 @@ file.write(textwrap.dedent(""" Version %s Copyright ?? 2008 Henri Hakkinen - Copyright ?? 2015-2020 Arun Prakash Jana <engineera...@gmail.com> + Copyright ?? 2015-2021 Arun Prakash Jana <engineera...@gmail.com> Zhiming Wang <zmwa...@gmail.com> License: GPLv3 Webpage: https://github.com/jarun/googler diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/googler.1 new/googler-4.3.2/googler.1 --- old/googler-4.3.1/googler.1 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/googler.1 2021-01-21 09:19:59.000000000 +0100 @@ -1,11 +1,11 @@ -.TH "GOOGLER" "1" "10 Oct 2020" "Version 4.3.1" "User Commands" +.TH "GOOGLER" "1" "21 Jan 2021" "Version 4.3.2" "User Commands" .SH NAME googler \- Google from the command-line .SH SYNOPSIS .B googler [OPTIONS] [KEYWORD [KEYWORD ...]] .SH DESCRIPTION .B googler -is a command-line tool to search Google (Web & News) from the terminal. Google site search works too. \fBgoogler\fR shows the title, URL and text context for each result. Results are fetched in pages. Next or previous page navigation is possible using keyboard shortcuts. Results are indexed and a result URL can be opened in a browser using the index number. There is no configuration file as aliases serve the same purpose for this utility. Supports sequential searches in a single instance. +is a command-line tool to search Google (web, news, videos and site search) from the terminal. Google site search works too. \fBgoogler\fR shows the title, URL and text context for each result. Results are fetched in pages. Next or previous page navigation is possible using keyboard shortcuts. Results are indexed and a result URL can be opened in a browser using the index number. There is no configuration file as aliases serve the same purpose for this utility. Supports sequential searches in a single instance. .PP .B Features .PP @@ -404,7 +404,7 @@ .SH LICENSE Copyright \(co 2008 Henri Hakkinen .br -Copyright \(co 2015-2020 Arun Prakash Jana <engineera...@gmail.com> +Copyright \(co 2015-2021 Arun Prakash Jana <engineera...@gmail.com> .PP License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. .br diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/info.json new/googler-4.3.2/info.json --- old/googler-4.3.1/info.json 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/info.json 2021-01-21 09:19:59.000000000 +0100 @@ -1,6 +1,6 @@ { - "epoch": "20201001", - "tracking_issue": 372, + "epoch": "20210115", + "tracking_issue": 392, "fixed_on_master": true, - "fixed_in_release": false + "fixed_in_release": "v4.3.2" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/googler-4.3.1/tests/test_googler.py new/googler-4.3.2/tests/test_googler.py --- old/googler-4.3.1/tests/test_googler.py 2020-10-10 07:43:11.000000000 +0200 +++ new/googler-4.3.2/tests/test_googler.py 2021-01-21 09:19:59.000000000 +0100 @@ -19,7 +19,7 @@ def __init__(self, argv): self.argv = argv json_output = subprocess.check_output( - [str(GOOGLER), *PRESET_OPTIONS, "--json", *argv] + [str(GOOGLER), *PRESET_OPTIONS, "--debug", "--json", *argv] ).decode("utf-8") self.results = json.loads(json_output) assert self.results, "no results"