Bug#878599:

2024-04-01 Thread Ville Skyttä
Thanks to people who have helped out with refining the patch. Anything
I could do to help nudge this forward?



Bug#1006296:

2024-04-01 Thread Ville Skyttä
Patch and implementation is being discussed in
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=878599



bug#69724: [PATCH] dircolors: add more archive extensions

2024-03-11 Thread Ville Skyttä
* src/dircolors.hin: Add .apk (Alpine Linux/Android package); .drpm
(delta rpm); .egg, .pyz, and .whl (Python related); and .udeb (form of
.deb).
---
 src/dircolors.hin | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/src/dircolors.hin b/src/dircolors.hin
index c85c037a5..58297e8bb 100644
--- a/src/dircolors.hin
+++ b/src/dircolors.hin
@@ -105,6 +105,7 @@ EXEC 01;32
 .7z  01;31
 .ace 01;31
 .alz 01;31
+.apk 01;31
 .arc 01;31
 .arj 01;31
 .bz  01;31
@@ -113,9 +114,11 @@ EXEC 01;32
 .cpio 01;31
 .crate 01;31
 .deb 01;31
+.drpm 01;31
 .dwm 01;31
 .dz  01;31
 .ear 01;31
+.egg 01;31
 .esd 01;31
 .gz  01;31
 .jar 01;31
@@ -126,6 +129,7 @@ EXEC 01;32
 .lzh 01;31
 .lzma 01;31
 .lzo 01;31
+.pyz 01;31
 .rar 01;31
 .rpm 01;31
 .rz  01;31
@@ -142,7 +146,9 @@ EXEC 01;32
 .tz  01;31
 .tzo 01;31
 .tzst 01;31
+.udeb 01;31
 .war 01;31
+.whl 01;31
 .wim 01;31
 .xz  01;31
 .z   01;31
-- 
2.34.1






Re: [PATCH] bash: add completions

2023-09-18 Thread Ville Skyttä
On Mon, 18 Sept 2023 at 16:06, Jean Delvare  wrote:

> Hi Ville,
>
> On Sun, 23 Jul 2023 10:01:34 +0300, Ville Skyttä wrote:
> > On Sat, 22 Jul 2023 at 22:55, Ville Skyttä  wrote:
> > [...]
> > > diff --git a/dmidecode.bash b/dmidecode.bash
> > [...]
> > > +   -s | --string)
> > > +   COMPREPLY=($(compgen -W '
> > > +   bios-vendor
> > > +   bios-version
> > [...]
> >
> > Instead of duplicating the keywords here, these could be scraped from
> > `dmidecode --string` (without providing the keyword arg) output if
> > that sounds acceptable and the output is considered stable enough for
> > that purpose.
>
> Yes, that output can be considered stable. I can't think of a reason to
> change its format in a foreseeable future.
>

Ok, --string and --type pure bash scraping implemented in the revised patch
I just sent as a reply to another message here.

Ville


Re: [PATCH] bash: add completions

2023-09-18 Thread Ville Skyttä
On Mon, 18 Sept 2023 at 15:56, Jean Delvare  wrote:

> Hi Ville,
>
> On Sat, 22 Jul 2023 22:55:31 +0300, Ville Skyttä wrote:
> > Offer only long options, but recognize short ones, too, per rationale at
> >
> https://github.com/scop/bash-completion/blob/4d0bffb791c34c96114aeb2e4f6726b80aa8698e/CONTRIBUTING.md?plain=1#L136-L153
> >
> > Signed-off-by: Ville Skyttä 
> > ---
> >  Makefile| 14 ++--
> >  biosdecode.bash | 40 +
> >  dmidecode.bash  | 95 +
> >  ownership.bash  | 33 +
> >  vpddecode.bash  | 45 +++
>
> Please create a directory for completion files, the root directory of
> the project is already cluttered enough as is.
>

Done.

I'm attaching the revised changeset as a single patch attachment here, hope
that's ok (my git/send-email-fu isn't up to dealing with followups
properly). This new one includes also scraping of --string and --type
values as discussed in another message.

> +compdir = $(shell pkg-config --variable=completionsdir bash-completion
> 2>/dev/null || echo $(prefix)/etc/bash_completion.d)
>
> This is going to potentially install files outside of $(prefix) by
> default, which is questionable.
>

True. Then again if the prefix or lookup dirs of bash-completion are
actually different from our $(prefix), installing in our $(prefix) will
cause the completions to not be found. I think this is the best we can do.


> > -install : install-bin install-man install-doc
> > +install : install-bin install-man install-doc install-completion
>
> I'm worried about this being enabled by default while the system may not
> even have bash installed. Can we enable this by default only if
> $(compdir) exists? This directory would typically be owned by the bash
> package.
>

I guess that'd work, done.

Ville
From 1a727665d43ae90bcff83ddc7dc1f4ed90a7d98a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Fri, 21 Jul 2023 16:33:28 +0300
Subject: [PATCH] bash: add completions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Offer only long options, but recognize short ones, too, per rationale at
https://github.com/scop/bash-completion/blob/4d0bffb791c34c96114aeb2e4f6726b80aa8698e/CONTRIBUTING.md?plain=1#L136-L153

Signed-off-by: Ville Skyttä 
---
 Makefile   | 18 +--
 completion/biosdecode.bash | 40 +++
 completion/dmidecode.bash  | 66 ++
 completion/ownership.bash  | 33 +++
 completion/vpddecode.bash  | 43 +
 5 files changed, 198 insertions(+), 2 deletions(-)
 create mode 100644 completion/biosdecode.bash
 create mode 100644 completion/dmidecode.bash
 create mode 100644 completion/ownership.bash
 create mode 100644 completion/vpddecode.bash

diff --git a/Makefile b/Makefile
index 7aa729d..6fc946b 100644
--- a/Makefile
+++ b/Makefile
@@ -36,6 +36,7 @@ sbindir = $(prefix)/sbin
 mandir  = $(prefix)/share/man
 man8dir = $(mandir)/man8
 docdir  = $(prefix)/share/doc/dmidecode
+compdir = $(shell pkg-config --variable=completionsdir bash-completion 2>/dev/null || echo $(prefix)/etc/bash_completion.d)
 
 INSTALL := install
 INSTALL_DATA:= $(INSTALL) -m 644
@@ -113,9 +114,9 @@ util.o : util.c types.h util.h config.h
 strip : $(PROGRAMS)
 	strip $(PROGRAMS)
 
-install : install-bin install-man install-doc
+install : install-bin install-man install-doc install-completion
 
-uninstall : uninstall-bin uninstall-man uninstall-doc
+uninstall : uninstall-bin uninstall-man uninstall-doc uninstall-completion
 
 install-bin : $(PROGRAMS)
 	$(INSTALL_DIR) $(DESTDIR)$(sbindir)
@@ -144,5 +145,18 @@ install-doc :
 uninstall-doc :
 	$(RM) -r $(DESTDIR)$(docdir)
 
+install-completion :
+	if [ -d $(compdir) ] ; then \
+	$(INSTALL_DIR) $(DESTDIR)$(compdir) ; \
+	for program in $(PROGRAMS) ; do \
+	$(INSTALL_DATA) completion/$$program.bash $(DESTDIR)$(compdir)/$$program ; done ; \
+	fi
+
+uninstall-completion :
+	if [ -d $(DESTDIR)$(compdir) ]; then \
+	for program in $(PROGRAMS) ; do \
+	$(RM) $(DESTDIR)$(compdir)/$$program ; done ; \
+	fi
+
 clean :
 	$(RM) *.o $(PROGRAMS) core
diff --git a/completion/biosdecode.bash b/completion/biosdecode.bash
new file mode 100644
index 000..42e0fae
--- /dev/null
+++ b/completion/biosdecode.bash
@@ -0,0 +1,40 @@
+# bash completion for biosdecode   -*- shell-script -*-
+
+_comp_cmd_biosdecode() {
+	local cur prev
+	COMPREPLY=()
+	cur=${COMP_WORDS[COMP_CWORD]}
+	prev=${COMP_WORDS[COMP_CWORD - 1]}
+
+	case $prev in
+	-d | --dev-mem)
+		: "${cur:=/dev/}"
+		local IFS=$'\n'
+		compopt -o filenames
+		COMPREPLY=($(compgen -f -- "$cur"))
+		return 0
+		;;
+	--pir)
+		COMPREPLY=($(compgen -W '
+			full
+		' -- "

Re: [PATCH] bash: add completions

2023-07-23 Thread Ville Skyttä
On Sat, 22 Jul 2023 at 22:55, Ville Skyttä  wrote:
[...]
> diff --git a/dmidecode.bash b/dmidecode.bash
[...]
> +   -s | --string)
> +   COMPREPLY=($(compgen -W '
> +   bios-vendor
> +   bios-version
[...]

Instead of duplicating the keywords here, these could be scraped from
`dmidecode --string` (without providing the keyword arg) output if
that sounds acceptable and the output is considered stable enough for
that purpose. Or let's say `--string help` could be implemented, and
it could print to stdout (no error), and only the keywords with no
error messages or header lines or the like if stdout is not a tty.
Anyway, as it stands, with no modifications, could take all output
lines starting with whitespace from stderr. Ditto other keyword/type
lists across these completions.



[PATCH] bash: add completions

2023-07-22 Thread Ville Skyttä
Offer only long options, but recognize short ones, too, per rationale at
https://github.com/scop/bash-completion/blob/4d0bffb791c34c96114aeb2e4f6726b80aa8698e/CONTRIBUTING.md?plain=1#L136-L153

Signed-off-by: Ville Skyttä 
---
 Makefile| 14 ++--
 biosdecode.bash | 40 +
 dmidecode.bash  | 95 +
 ownership.bash  | 33 +
 vpddecode.bash  | 45 +++
 5 files changed, 225 insertions(+), 2 deletions(-)
 create mode 100644 biosdecode.bash
 create mode 100644 dmidecode.bash
 create mode 100644 ownership.bash
 create mode 100644 vpddecode.bash

diff --git a/Makefile b/Makefile
index 7aa729d..66dc2d9 100644
--- a/Makefile
+++ b/Makefile
@@ -36,6 +36,7 @@ sbindir = $(prefix)/sbin
 mandir  = $(prefix)/share/man
 man8dir = $(mandir)/man8
 docdir  = $(prefix)/share/doc/dmidecode
+compdir = $(shell pkg-config --variable=completionsdir bash-completion 
2>/dev/null || echo $(prefix)/etc/bash_completion.d)
 
 INSTALL := install
 INSTALL_DATA:= $(INSTALL) -m 644
@@ -113,9 +114,9 @@ util.o : util.c types.h util.h config.h
 strip : $(PROGRAMS)
strip $(PROGRAMS)
 
-install : install-bin install-man install-doc
+install : install-bin install-man install-doc install-completion
 
-uninstall : uninstall-bin uninstall-man uninstall-doc
+uninstall : uninstall-bin uninstall-man uninstall-doc uninstall-completion
 
 install-bin : $(PROGRAMS)
$(INSTALL_DIR) $(DESTDIR)$(sbindir)
@@ -144,5 +145,14 @@ install-doc :
 uninstall-doc :
$(RM) -r $(DESTDIR)$(docdir)
 
+install-completion :
+   $(INSTALL_DIR) $(DESTDIR)$(compdir)
+   for program in $(PROGRAMS) ; do \
+   $(INSTALL_DATA) $$program.bash $(DESTDIR)$(compdir)/$$program ; done
+
+uninstall-completion :
+   for program in $(PROGRAMS) ; do \
+   $(RM) $(DESTDIR)$(compdir)/$$program ; done
+
 clean :
$(RM) *.o $(PROGRAMS) core
diff --git a/biosdecode.bash b/biosdecode.bash
new file mode 100644
index 000..42e0fae
--- /dev/null
+++ b/biosdecode.bash
@@ -0,0 +1,40 @@
+# bash completion for biosdecode   -*- shell-script -*-
+
+_comp_cmd_biosdecode() {
+   local cur prev
+   COMPREPLY=()
+   cur=${COMP_WORDS[COMP_CWORD]}
+   prev=${COMP_WORDS[COMP_CWORD - 1]}
+
+   case $prev in
+   -d | --dev-mem)
+   : "${cur:=/dev/}"
+   local IFS=$'\n'
+   compopt -o filenames
+   COMPREPLY=($(compgen -f -- "$cur"))
+   return 0
+   ;;
+   --pir)
+   COMPREPLY=($(compgen -W '
+   full
+   ' -- "$cur"))
+   return 0
+   ;;
+   -[hV] | --help | --version)
+   return 0
+   ;;
+   esac
+
+   if [[ $cur == -* ]]; then
+   COMPREPLY=($(compgen -W '
+   --dev-mem
+   --pir
+   --help
+   --version
+   ' -- "$cur"))
+   return 0
+   fi
+
+} && complete -F _comp_cmd_biosdecode biosdecode
+
+# ex: filetype=sh
diff --git a/dmidecode.bash b/dmidecode.bash
new file mode 100644
index 000..9b659a9
--- /dev/null
+++ b/dmidecode.bash
@@ -0,0 +1,95 @@
+# bash completion for dmidecode-*- shell-script -*-
+
+_comp_cmd_dmidecode() {
+   local cur prev
+   COMPREPLY=()
+   cur=${COMP_WORDS[COMP_CWORD]}
+   prev=${COMP_WORDS[COMP_CWORD - 1]}
+
+   case $prev in
+   -d | --dev-mem | --dump-bin | --from-dump)
+   if [[ $prev == -d || $prev == --dev-mem ]]; then
+   : "${cur:=/dev/}"
+   fi
+   local IFS=$'\n'
+   compopt -o filenames
+   COMPREPLY=($(compgen -f -- "$cur"))
+   return 0
+   ;;
+   -s | --string)
+   COMPREPLY=($(compgen -W '
+   bios-vendor
+   bios-version
+   bios-release-date
+   bios-revision
+   firmware-revision
+   system-manufacturer
+   system-product-name
+   system-version
+   system-serial-number
+   system-uuid
+   system-sku-number
+   system-family
+   baseboard-manufacturer
+   baseboard-product-name
+   baseboard-version
+   baseboard-serial-number
+   baseboard-asset-tag
+   chassis-manufacturer
+   chassis-type
+   chassis-version
+   chassis-serial-number
+   chassis-asset-tag
+   

bug#64027: [PATCH] dircolors: update list of backup file extensions

2023-06-12 Thread Ville Skyttä
* src/dircolors.hin: sort backup section by extension
* src/dircolors.hin: treat .dpkg-new and .dpkg-tmp as backup files
https://www.debian.org/doc/manuals/debian-handbook/sect.package-meta-information.en.html#sect.conffiles
* src/dircolors.hin: treat .crdownload (Chromium based browsers' partial
download) as a backup file
---
 src/dircolors.hin | 13 -
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/dircolors.hin b/src/dircolors.hin
index 262e1b5ec..353831cdf 100644
--- a/src/dircolors.hin
+++ b/src/dircolors.hin
@@ -228,20 +228,23 @@ EXEC 01;32
 *~ 00;90
 *# 00;90
 .bak 00;90
+.crdownload 00;90
+.dpkg-dist 00;90
+.dpkg-new 00;90
+.dpkg-old 00;90
+.dpkg-tmp 00;90
 .old 00;90
 .orig 00;90
 .part 00;90
 .rej 00;90
+.rpmnew 00;90
+.rpmorig 00;90
+.rpmsave 00;90
 .swp 00;90
 .tmp 00;90
-.dpkg-dist 00;90
-.dpkg-old 00;90
 .ucf-dist 00;90
 .ucf-new 00;90
 .ucf-old 00;90
-.rpmnew 00;90
-.rpmorig 00;90
-.rpmsave 00;90
 
 #
 # Subsequent TERM or COLORTERM entries, can be used to add / override
-- 
2.25.1






[PATCH virt-what] Add support for UpCloud

2023-01-12 Thread Ville Skyttä
fied
+	Type: RAM
+	Type Detail: Other
+	Speed: Unknown
+	Manufacturer: QEMU
+	Serial Number: Not Specified
+	Asset Tag: Not Specified
+	Part Number: Not Specified
+	Rank: Unknown
+	Configured Memory Speed: Unknown
+	Minimum Voltage: Unknown
+	Maximum Voltage: Unknown
+	Configured Voltage: Unknown
+
+Handle 0x1300, DMI type 19, 31 bytes
+Memory Array Mapped Address
+	Starting Address: 0x000
+	Ending Address: 0x0003FFF
+	Range Size: 1 GB
+	Physical Array Handle: 0x1000
+	Partition Width: 1
+
+Handle 0x2000, DMI type 32, 11 bytes
+System Boot Information
+	Status: No errors detected
+
+Handle 0x7F00, DMI type 127, 4 bytes
+End Of Table
+
+EOF
diff --git a/tests/upcloud/sbin/uname b/tests/upcloud/sbin/uname
new file mode 100755
index 000..ab0ec89
--- /dev/null
+++ b/tests/upcloud/sbin/uname
@@ -0,0 +1,2 @@
+#!/bin/sh -
+echo x86_64
diff --git a/tests/upcloud/sbin/virt-what-cpuid-helper b/tests/upcloud/sbin/virt-what-cpuid-helper
new file mode 100755
index 000..f52a9d7
--- /dev/null
+++ b/tests/upcloud/sbin/virt-what-cpuid-helper
@@ -0,0 +1,2 @@
+#!/bin/sh -
+echo KVMKVMKVM
diff --git a/tests/upcloud/test.sh b/tests/upcloud/test.sh
new file mode 100755
index 000..bf822a4
--- /dev/null
+++ b/tests/upcloud/test.sh
@@ -0,0 +1,33 @@
+# Test for UpCloud
+# Copyright (C) 2008-2023 Red Hat Inc.
+#
+# 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
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+output="$(PATH=../..:$PATH virt-what --test-root=. 2>&1)"
+expected="kvm
+upcloud"
+
+if [ "$output" != "$expected" ]; then
+echo "$0: test failed because output did not match expected"
+echo "Expected output was:"
+echo ""
+echo "$expected"
+echo ""
+echo "But the actual output of the program was:"
+echo ""
+echo "$output"
+echo ""
+exit 1
+fi
diff --git a/virt-what.in b/virt-what.in
index 102e23f..1a1101d 100644
--- a/virt-what.in
+++ b/virt-what.in
@@ -457,3 +457,8 @@ if echo "$dmi" | grep -Eq 'Version: [0-9]+\.[0-9]+\.amazon'; then
 elif echo "$dmi" | grep -q 'Vendor: Amazon EC2'; then
 echo aws
 fi
+
+# UpCloud
+if echo "$dmi" | grep -q 'Manufacturer: UpCloud'; then
+echo upcloud
+fi
diff --git a/virt-what.pod b/virt-what.pod
index 4246986..2d0ef4d 100644
--- a/virt-what.pod
+++ b/virt-what.pod
@@ -270,6 +270,12 @@ This is a User-Mode Linux (UML) guest.
 
 Status: contributed by Laurent Léonard
 
+=item B
+
+This is running on UpCloud.
+
+Status: contributed by Ville Skyttä
+
 =item B
 
 Some sort of virtualization appears to be present, but we are not sure
-- 
2.25.1



[PATCH virt-what] Grammar fixes

2023-01-09 Thread Ville Skyttä

From 3a4007e8d815724f8c1e09df0ac9c810f6988d81 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Wed, 28 Dec 2022 22:59:41 +0200
Subject: [PATCH] Grammar fixes

---
 virt-what.pod | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/virt-what.pod b/virt-what.pod
index eb88ddc..5db1a40 100644
--- a/virt-what.pod
+++ b/virt-what.pod
@@ -89,7 +89,7 @@ Additional facts listed below may also be printed.
 
 =item B
 
-This is Linux running directly on a IBM SystemZ hardware partitioning
+This is Linux running directly on an IBM SystemZ hardware partitioning
 system.
 
 This is expected to be a highly unusual configuration - if
@@ -125,7 +125,7 @@ Status: contributed by Steve Mokris
 
 =item B
 
-The guest appears to be running on an Linux SPARC system with
+The guest appears to be running on a Linux SPARC system with
 Oracle VM Server for SPARC (Logical Domains) support.
 
 Status: contributed by Darren Kenny
-- 
2.25.1



[PATCH] Use `grep -E` or plain `grep` instead of `egrep`

2023-01-01 Thread Ville Skyttä
`egrep` has been deprecated in GNU grep since 2007,
and since 3.8 it emits obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1
---
 arch/arm/mach-socfpga/qts-filter-a10.sh | 16 
 arch/arm/mach-socfpga/qts-filter.sh |  2 +-
 doc/board/intel/edison.rst  |  2 +-
 scripts/build-whitelist.sh  |  2 +-
 scripts/coccicheck  |  2 +-
 test/fs/fs-test.sh  | 10 +-
 6 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/arch/arm/mach-socfpga/qts-filter-a10.sh 
b/arch/arm/mach-socfpga/qts-filter-a10.sh
index 57d77e8e12..ab16522add 100755
--- a/arch/arm/mach-socfpga/qts-filter-a10.sh
+++ b/arch/arm/mach-socfpga/qts-filter-a10.sh
@@ -10,7 +10,7 @@ fix_newlines_in_macros() {
 
 #filter out only what we need from a10 hps.xml
 grep_a10_hps_config() {
-   egrep "clk_hz|i_clk_mgr|i_io48_pin_mux|AXI_SLAVE|AXI_MASTER"
+   grep -E "clk_hz|i_clk_mgr|i_io48_pin_mux|AXI_SLAVE|AXI_MASTER"
 }
 
 #
@@ -35,35 +35,35 @@ EOF
 
echo "/* Clocks */"
fix_newlines_in_macros \
-   ${hps_xml} | egrep "clk_hz" |
+   ${hps_xml} | grep "clk_hz" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/\.[0-9]//' |
sed 's/I_CLK_MGR_//' |
sort
fix_newlines_in_macros \
-   ${hps_xml} | egrep "i_clk_mgr_mainpll" |
+   ${hps_xml} | grep "i_clk_mgr_mainpll" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/\.[0-9]//' |
sed 's/I_CLK_MGR_//' |
sort
fix_newlines_in_macros \
-   ${hps_xml} | egrep "i_clk_mgr_perpll" |
+   ${hps_xml} | grep "i_clk_mgr_perpll" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/\.[0-9]//' |
sed 's/I_CLK_MGR_//' |
sort
fix_newlines_in_macros \
-   ${hps_xml} | egrep "i_clk_mgr_clkmgr" |
+   ${hps_xml} | grep "i_clk_mgr_clkmgr" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/\.[0-9]//' |
sed 's/I_CLK_MGR_//' |
sort
fix_newlines_in_macros \
-   ${hps_xml} | egrep "i_clk_mgr_alteragrp" |
+   ${hps_xml} | grep "i_clk_mgr_alteragrp" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/\.[0-9]//' |
@@ -77,7 +77,7 @@ EOF
echo
echo "/* Pin Mux Configuration */"
fix_newlines_in_macros \
-   ${hps_xml} | egrep "i_io48_pin_mux" |
+   ${hps_xml} | grep "i_io48_pin_mux" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/I_IO48_PIN_MUX_//' |
@@ -90,7 +90,7 @@ EOF
echo
echo "/* Bridge Configuration */"
fix_newlines_in_macros \
-   ${hps_xml} | egrep "AXI_SLAVE|AXI_MASTER" |
+   ${hps_xml} | grep -E "AXI_SLAVE|AXI_MASTER" |
awk -F"'" '{ gsub("\\.","_",$2) ; \
print "#define" " " toupper($2) " " $4}' |
sed 's/true/1/' |
diff --git a/arch/arm/mach-socfpga/qts-filter.sh 
b/arch/arm/mach-socfpga/qts-filter.sh
index 6416252d4e..1610c89a48 100755
--- a/arch/arm/mach-socfpga/qts-filter.sh
+++ b/arch/arm/mach-socfpga/qts-filter.sh
@@ -128,7 +128,7 @@ EOF
 # Filter out only the macros which are actually used by the code
 #
 grep_sdram_config() {
-   egrep "#define 

Bug#1015216: bash: [PATCH] perf(bashrc): avoid a command-not-found lookup stat

2022-07-17 Thread Ville Skyttä
Package: bash
Version: 5.2~rc1-1
Severity: minor

Dear Maintainer,

`[ -x ... -o -x ... ]` does not short circuit, split to
`[ -x ... ] || [ -x ... ]` to avoid a `stat` call when looking for
command-not-found.


-- System Information:
Debian Release: bullseye/sid
  APT prefers focal-updates
  APT policy: (500, 'focal-updates'), (500, 'focal-security'), (500, 'focal'), 
(100, 'focal-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.13.0-52-generic (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages bash depends on:
ii  base-files   11ubuntu5.5
ii  debianutils  4.9.1
ii  libc62.31-0ubuntu9.9
ii  libtinfo66.2-0ubuntu2

Versions of packages bash recommends:
pn  bash-completion  

Versions of packages bash suggests:
pn  bash-doc  

-- no debconf information
>From bcc6298ba3b82753b9de7963aa5226a8b006ebe3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Sun, 17 Jul 2022 22:43:11 +0300
Subject: [PATCH] perf(bashrc): avoid a command-not-found lookup stat

`[ -x ... -o -x ... ]` does not short circuit, split to
`[ -x ... ] || [ -x ... ]` to avoid a `stat` call.
---
 debian/etc.bash.bashrc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/debian/etc.bash.bashrc b/debian/etc.bash.bashrc
index 7fabe82..a3ce7e6 100644
--- a/debian/etc.bash.bashrc
+++ b/debian/etc.bash.bashrc
@@ -41,7 +41,7 @@ fi
 #fi
 
 # if the command-not-found package is installed, use it
-if [ -x /usr/lib/command-not-found -o -x 
/usr/share/command-not-found/command-not-found ]; then
+if [ -x /usr/lib/command-not-found ] || [ -x 
/usr/share/command-not-found/command-not-found ]; then
function command_not_found_handle {
# check because c-n-f could've been removed in the meantime
 if [ -x /usr/lib/command-not-found ]; then
-- 
2.25.1



Bug#1015215: bash: [PATCH] skip command_not_found_handle when completing

2022-07-17 Thread Ville Skyttä
Package: bash
Version: 5.2~rc1-1
Severity: normal

Dear Maintainer,

It is not uncommon for completion functions to just try executing
optional commands that might not be present. We do not want the regular
command_not_found_handle behavior in those cases, as they are not the
ones where a user should be notified that a command was not found.
Output from the function may cause bogus completions, console trashing,
and at least it adds some unnecessary delay to the command completion.

Return early from the function when a completion function has been
detected running. Use `COMP_CWORD` as the marker; PackageKit has been
using it for 7+ years at time of writing.

Refs https://github.com/PackageKit/PackageKit/pull/67
Refs https://bugzilla.redhat.com/1164410

-- System Information:
Debian Release: bullseye/sid
  APT prefers focal-updates
  APT policy: (500, 'focal-updates'), (500, 'focal-security'), (500, 'focal'), 
(100, 'focal-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.13.0-52-generic (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages bash depends on:
ii  base-files   11ubuntu5.5
ii  debianutils  4.9.1
ii  libc62.31-0ubuntu9.9
ii  libtinfo66.2-0ubuntu2

Versions of packages bash recommends:
pn  bash-completion  

Versions of packages bash suggests:
pn  bash-doc  

-- no debconf information
>From d1eabf80eba3b4fdfbf4bfddb7fd98492f4263ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Sun, 17 Jul 2022 22:35:59 +0300
Subject: [PATCH] fix(bashrc): skip command_not_found_handle within completions

It is not uncommon for completion functions to just try executing
optional commands that might not be present. We do not want the regular
command_not_found_handle behavior in those cases, as they are not the
ones where a user should be notified that a command was not found.
Output from the function may cause bogus completions, console trashing,
and at least it adds some unnecessary delay to the command completion.

Return early from the function when a completion function has been
detected running. Use `COMP_CWORD` as the marker; PackageKit has been
using it for 7+ years at time of writing.

Refs https://github.com/PackageKit/PackageKit/pull/67
Refs https://bugzilla.redhat.com/1164410
---
 debian/etc.bash.bashrc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/debian/etc.bash.bashrc b/debian/etc.bash.bashrc
index 7fabe82..06fb1e5 100644
--- a/debian/etc.bash.bashrc
+++ b/debian/etc.bash.bashrc
@@ -43,6 +43,7 @@ fi
 # if the command-not-found package is installed, use it
 if [ -x /usr/lib/command-not-found -o -x 
/usr/share/command-not-found/command-not-found ]; then
function command_not_found_handle {
+   [ -v COMP_CWORD ] && return 0 # skip within completion functions
# check because c-n-f could've been removed in the meantime
 if [ -x /usr/lib/command-not-found ]; then
   /usr/lib/command-not-found -- "$1"
-- 
2.25.1



bug#54521: [PATCH] dircolors: colorize backup files with bright black

2022-03-22 Thread Ville Skyttä
Useful as it makes them stand out less than non-backup files.
---
 src/dircolors.hin | 19 +++
 1 file changed, 19 insertions(+)

diff --git a/src/dircolors.hin b/src/dircolors.hin
index 673835201..6dc5a2d74 100644
--- a/src/dircolors.hin
+++ b/src/dircolors.hin
@@ -211,5 +211,24 @@ EXEC 01;32
 .spx 00;36
 .xspf 00;36
 
+# backup files
+*~ 00;90
+*# 00;90
+.bak 00;90
+.old 00;90
+.orig 00;90
+.part 00;90
+.rej 00;90
+.swp 00;90
+.tmp 00;90
+.dpkg-dist 00;90
+.dpkg-old 00;90
+.ucf-dist 00;90
+.ucf-new 00;90
+.ucf-old 00;90
+.rpmnew 00;90
+.rpmorig 00;90
+.rpmsave 00;90
+
 # Subsequent TERM or COLORTERM entries, can be used to add / override
 # config specific to those matching environment variables.
-- 
2.25.1






[issue22295] Clarify available commands for package installation

2022-02-12 Thread Ville Skyttä

Change by Ville Skyttä :


--
nosy: +scop
nosy_count: 4.0 -> 5.0
pull_requests: +29462
pull_request: https://github.com/python/cpython/pull/24003

___
Python tracker 
<https://bugs.python.org/issue22295>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[PATCH] Use `grep -E/-F` instead of `egrep` and `fgrep`

2021-11-14 Thread Ville Skyttä
`egrep` and `fgrep` have been deprecated in GNU grep since 2007, and in
current post 3.7 Git they have been made to emit obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1
---
 README-hacking  | 2 +-
 contrib/gen-dir-node| 6 +++---
 contrib/perldoc-all/GNUmakefile | 2 +-
 install-info/tests/defs.in  | 3 +--
 util/texi2dvi   | 2 +-
 5 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/README-hacking b/README-hacking
index d9139b5feb..453982f38c 100644
--- a/README-hacking
+++ b/README-hacking
@@ -295,7 +295,7 @@ gnupload --to ftp.gnu.org:texinfo !$
 update home page (texinfo.html) and commit as needed.
 including:
   pod2html $txi/Pod-Simple-Texinfo/pod2texi.pl \
-  | fgrep -v 'rev="made"' >manual/pod2texi.html
+  | grep -Fv 'rev="made"' >manual/pod2texi.html
 
 Build web documentation with
   make -C doc wwwdoc-build
diff --git a/contrib/gen-dir-node b/contrib/gen-dir-node
index 7b4bc028e5..8b413bbf7a 100755
--- a/contrib/gen-dir-node
+++ b/contrib/gen-dir-node
@@ -78,7 +78,7 @@ moobler
 ### then generate entries for those in the same way, putting the info for 
 ### those at the end
 
-infofiles=`(cd ${INFODIR}; /bin/ls | grep -v '\-[0-9]*$' | egrep -v 
'^dir$|^dir\.info$|^dir\.orig$')`
+infofiles=`(cd ${INFODIR}; /bin/ls | grep -v '\-[0-9]*$' | grep -Ev 
'^dir$|^dir\.info$|^dir\.orig$')`
 
 # echoing gets clobbered by backquotes; we do it the hard way...
 lines=`wc $SKELETON | awk '{print $1}'`
@@ -165,8 +165,8 @@ fi
 
 # Sort remaining files by INFO-DIR-SECTION.
 prevsect=
-filesectdata=`(cd ${INFODIR}; fgrep INFO-DIR-SECTION /dev/null ${infofiles} | \
- fgrep -v 'INFO-DIR-SECTION Miscellaneous' | \
+filesectdata=`(cd ${INFODIR}; grep -F INFO-DIR-SECTION /dev/null ${infofiles} 
| \
+ grep -Fv 'INFO-DIR-SECTION Miscellaneous' | \
  sort -t: -k2 -k1 | tr ' ' '_')`
 for sectdata in ${filesectdata}; do
   file=`echo ${sectdata} | cut -d: -f1`
diff --git a/contrib/perldoc-all/GNUmakefile b/contrib/perldoc-all/GNUmakefile
index 227a11ca8c..f9425c4666 100644
--- a/contrib/perldoc-all/GNUmakefile
+++ b/contrib/perldoc-all/GNUmakefile
@@ -61,7 +61,7 @@ $(texi_pod_doc_incl): $(perl_pod_subdir)/*.pod
cd $(perl_pod_subdir) \
&& perl -p -i.bak -e 's,X<.*?>>?,,g' *.pod \
&& $(pod2texi) -o $@ $(pod2texi_args) \
- `ls *.pod | egrep -v "(delta|unicook)"` \
+ `ls *.pod | grep -Ev "(delta|unicook)"` \
&& mv $(texi_pod_subdir) $@ ../..
 
 # updating on www.gnu.org.  We do not install the split HTML files
diff --git a/install-info/tests/defs.in b/install-info/tests/defs.in
index c15fc73336..e31a646b68 100644
--- a/install-info/tests/defs.in
+++ b/install-info/tests/defs.in
@@ -60,8 +60,7 @@ if test -z "$TMPDIR"; then
   export TMPDIR
 fi
 
-# In case someone pedantic insists on using grep -E.
-: ${EGREP=egrep}
+: ${EGREP=grep -E}
 
 # Systems which define $COMSPEC or $ComSpec use semicolons to separate
 # directories in TEXINPUTS -- except for Cygwin et al., where COMSPEC
diff --git a/util/texi2dvi b/util/texi2dvi
index 241ad6817a..47eb088fcc 100755
--- a/util/texi2dvi
+++ b/util/texi2dvi
@@ -74,7 +74,7 @@ newline='
 '
 IFS="$space$tab$newline"
 
-: ${EGREP=egrep}
+: ${EGREP=grep -E}
 
 # Systems which define $COMSPEC or $ComSpec use semicolons to separate
 # directories in TEXINPUTS -- except for Cygwin and Msys, where COMSPEC
-- 
2.25.1




Bug#999600: dselect: use `grep -E` instead of `egrep`

2021-11-13 Thread Ville Skyttä
Package: dpkg
Version: 1.19.7ubuntu3
Severity: normal

Dear Maintainer,

`egrep` has been deprecated in GNU grep since 2007, and in current post
3.7 Git it has been made to emit obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1

`git am`able fix attached.

-- Package-specific info:
System tainted due to merged-usr-via-symlinks.

-- System Information:
Debian Release: bullseye/sid
  APT prefers focal-updates
  APT policy: (500, 'focal-updates'), (500, 'focal-security'), (500, 'focal'), 
(100, 'focal-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.11.0-38-generic (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dpkg depends on:
ii  libbz2-1.0   1.0.8-2
ii  libc62.31-0ubuntu9.3
ii  liblzma5 5.2.4-1ubuntu1
ii  libselinux1  3.0-1build2
ii  libzstd1 1.4.4+dfsg-3ubuntu0.1
ii  tar  1.30+dfsg-7ubuntu0.20.04.1
ii  zlib1g   1:1.2.11.dfsg-2ubuntu1.2

dpkg recommends no packages.

Versions of packages dpkg suggests:
ii  apt2.0.6
pn  debsig-verify  

-- no debconf information
>From b8a017668fdcf0c8445bea0802e24050acfc8842 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Sat, 13 Nov 2021 10:33:51 +0200
Subject: [PATCH] dselect: use `grep -E` instead of `egrep`

`egrep` has been deprecated in GNU grep since 2007, and in current post
3.7 Git it has been made to emit obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1
---
 dselect/methods/multicd/setup | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dselect/methods/multicd/setup b/dselect/methods/multicd/setup
index 4ed0956a4..bbb99ff4d 100755
--- a/dselect/methods/multicd/setup
+++ b/dselect/methods/multicd/setup
@@ -159,7 +159,7 @@ if [ $option = multi_cd ]; then
 response=""
 while [ -z "$response" ]; do
   echo 'Several CD-ROMs (or other ISO9660 filesystems) are mounted:'
-  egrep 'type iso9660 \([^)]*\)$' <$tp.m | nl
+  grep -E 'type iso9660 \([^)]*\)$' <$tp.m | nl
   echo -n "Is it any of these ?  Type a number, or 'n' for none.  "
   read response
   response="$(echo \"$response\" | sed -e 's/[ ]*$//')"
-- 
2.25.1



Bug#999600: dselect: use `grep -E` instead of `egrep`

2021-11-13 Thread Ville Skyttä
Package: dpkg
Version: 1.19.7ubuntu3
Severity: normal

Dear Maintainer,

`egrep` has been deprecated in GNU grep since 2007, and in current post
3.7 Git it has been made to emit obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1

`git am`able fix attached.

-- Package-specific info:
System tainted due to merged-usr-via-symlinks.

-- System Information:
Debian Release: bullseye/sid
  APT prefers focal-updates
  APT policy: (500, 'focal-updates'), (500, 'focal-security'), (500, 'focal'), 
(100, 'focal-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.11.0-38-generic (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dpkg depends on:
ii  libbz2-1.0   1.0.8-2
ii  libc62.31-0ubuntu9.3
ii  liblzma5 5.2.4-1ubuntu1
ii  libselinux1  3.0-1build2
ii  libzstd1 1.4.4+dfsg-3ubuntu0.1
ii  tar  1.30+dfsg-7ubuntu0.20.04.1
ii  zlib1g   1:1.2.11.dfsg-2ubuntu1.2

dpkg recommends no packages.

Versions of packages dpkg suggests:
ii  apt2.0.6
pn  debsig-verify  

-- no debconf information
>From b8a017668fdcf0c8445bea0802e24050acfc8842 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Sat, 13 Nov 2021 10:33:51 +0200
Subject: [PATCH] dselect: use `grep -E` instead of `egrep`

`egrep` has been deprecated in GNU grep since 2007, and in current post
3.7 Git it has been made to emit obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1
---
 dselect/methods/multicd/setup | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dselect/methods/multicd/setup b/dselect/methods/multicd/setup
index 4ed0956a4..bbb99ff4d 100755
--- a/dselect/methods/multicd/setup
+++ b/dselect/methods/multicd/setup
@@ -159,7 +159,7 @@ if [ $option = multi_cd ]; then
 response=""
 while [ -z "$response" ]; do
   echo 'Several CD-ROMs (or other ISO9660 filesystems) are mounted:'
-  egrep 'type iso9660 \([^)]*\)$' <$tp.m | nl
+  grep -E 'type iso9660 \([^)]*\)$' <$tp.m | nl
   echo -n "Is it any of these ?  Type a number, or 'n' for none.  "
   read response
   response="$(echo \"$response\" | sed -e 's/[ ]*$//')"
-- 
2.25.1



Bug#698145: egrep and fgrep are obsolete now

2021-11-12 Thread Ville Skyttä
In current post 3.7 Git `egrep` and `fgrep` have been made to emit
obsolescence warnings:
https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a9515624709865d480e3142fd959bccd1c9372d1

Perhaps bump the severity a bit if this cannot be quickly fixed?



Bug#998399: cron: Use mktemp instead of tempfile

2021-11-03 Thread Ville Skyttä
Package: cron
Version: 3.0pl1-136ubuntu1
Severity: minor

Dear Maintainer,

tempfile(1) has been removed from debianutils >= 5.0. The attached
patch changes to using the more portable mktemp(1) instead.
>From fbb78b2e96817efbb7201606ae475d1c1f4fd46f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Wed, 3 Nov 2021 19:00:20 +0200
Subject: [PATCH] Use mktemp instead of tempfile

tempfile(1) has been removed from debianutils >= 5.0. Use the more
portable mktemp(1) instead.
---
 debian/examples/cron-tasks-review.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/debian/examples/cron-tasks-review.sh 
b/debian/examples/cron-tasks-review.sh
index 5e8e112..f212b18 100644
--- a/debian/examples/cron-tasks-review.sh
+++ b/debian/examples/cron-tasks-review.sh
@@ -162,7 +162,7 @@ echo $EXTRA_OPTS | grep -q -- '-l' && use_lsb="yes"
 run_opts=""
 [ "$use_lsb" = "yes" ] &&  run_opts="--lsbsysinit"
 
-temp=`tempfile` || { echo "ERROR: Cannot create temporary file" >&2 ; exit 1; }
+temp=`mktemp` || { echo "ERROR: Cannot create temporary file" >&2 ; exit 1; }
 trap "rm -f $temp" 0 1 2 3 13 15
 
 # Now review the scripts, note that cron does not use run-parts to run these
-- 
2.25.1



[Bug 1927770] [NEW] getconf --help doesn't mention -a

2021-05-07 Thread Ville Skyttä
Public bug reported:

getconf's usage message fails to mention -a. It's only mentioned in the
manual page.

** Affects: glibc (Ubuntu)
 Importance: Undecided
 Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1927770

Title:
  getconf --help doesn't mention -a

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1927770/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

[Bug 1922228] [NEW] does not work at all, "new version of protocol release"

2021-04-01 Thread Ville Skyttä
Public bug reported:

$ gplaycli --token -s something
[ERROR] Cache file does not exists or is corrupted
[ERROR] Unknown error: New version of protocol release. Update gplaycli and 
check https://github.com/matlink/gplaycli

One grabbed with "pip install gplaycli" works.

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: gplaycli 3.27+dfsg-1
ProcVersionSignature: Ubuntu 5.8.0-48.54~20.04.1-generic 5.8.18
Uname: Linux 5.8.0-48-generic x86_64
ApportVersion: 2.20.11-0ubuntu27.16
Architecture: amd64
CasperMD5CheckResult: skip
CurrentDesktop: ubuntu:GNOME
Date: Thu Apr  1 14:35:58 2021
InstallationDate: Installed on 2021-03-29 (2 days ago)
InstallationMedia: Ubuntu 20.04.2.0 LTS "Focal Fossa" - Release amd64 
(20210209.1)
PackageArchitecture: all
SourcePackage: gplaycli
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: gplaycli (Ubuntu)
 Importance: Undecided
 Status: New


** Tags: amd64 apport-bug focal

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/198

Title:
  does not work at all, "new version of protocol release"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gplaycli/+bug/198/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Bug#983604: bash: man page documents duplicate ~/.bashrc for ssh case

2021-02-27 Thread Ville Skyttä
Package: bash
Version: 5.1-2+b1
Severity: minor
X-Debbugs-Cc: ville.sky...@iki.fi

Dear Maintainer,

>From man-bashrc.diff:

>  determines it is being run in this fashion, it reads and executes
> -commands from \fI~/.bashrc\fP, if that file exists and is readable.
> +commands from \fI~/.bashrc\fP and \fI~/.bashrc\fP, if these files
> +exist and are readable.

~/.bashrc is duplicated there. Maybe the first should have been 
/etc/bash.bashrc?


-- System Information:
Debian Release: bullseye/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.15.0-135-generic (SMP w/4 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: unable to detect

Versions of packages bash depends on:
ii  base-files   11
ii  debianutils  4.11.2
ii  libc62.31-9
ii  libtinfo66.2+20201114-2

Versions of packages bash recommends:
pn  bash-completion  

Versions of packages bash suggests:
pn  bash-doc  

-- no debconf information



[PATCH] docs: tlscerts: fix link to remote URI parameters

2021-02-15 Thread Ville Skyttä
Signed-off-by: Ville Skyttä 
---
 docs/tlscerts.html.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/tlscerts.html.in b/docs/tlscerts.html.in
index 8a74311682..22fc054801 100644
--- a/docs/tlscerts.html.in
+++ b/docs/tlscerts.html.in
@@ -125,7 +125,7 @@ of the server and clients.  There are two distinct checks 
involved:
 server.  Checking done by client by matching the certificate that
 the server sends to the server's hostname.  May be disabled by adding
 ?no_verify=1 to the
-remote URI.
+remote URI.
 
The server should know that only permitted clients are
 connecting.  This can be done based on client's IP address, or on
-- 
2.17.1



Bug#981054: openipmi: Missing dependency on kmod

2021-01-25 Thread Ville Skyttä
Package: openipmi
Version: 2.0.29-0.1+b1
Severity: normal
X-Debbugs-Cc: ville.sky...@iki.fi

Dear Maintainer,

/etc/init.d/openipmi invokes /sbin/lsmod, but nothing in the package's
dependency chain pulls it in. I suppose adding dependency on kmod is
in order.

-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.15.0-134-generic (SMP w/4 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /bin/dash
Init: unable to detect

Versions of packages openipmi depends on:
ii  libc6 2.31-9
ii  libncurses6   6.2+20201114-2
ii  libopenipmi0  2.0.29-0.1+b1
ii  libpopt0  1.18-2
ii  libreadline8  8.1-1
ii  libsnmp40 5.9+dfsg-3+b1
ii  lsb-base  11.1.0

openipmi recommends no packages.

openipmi suggests no packages.

-- no debconf information



Bug#966586: ifupdown: grammar fixes

2020-07-30 Thread Ville Skyttä
Package: ifupdown
Version: 0.8.17ubuntu1.1
Severity: minor

Dear Maintainer,

Merge request with some grammar fixes at
https://salsa.debian.org/debian/ifupdown/-/merge_requests/3


-- System Information:
Debian Release: buster/sid
  APT prefers bionic-updates
  APT policy: (990, 'bionic-updates'), (990, 'bionic-security'), (990, 
'bionic-backports'), (990, 'bionic')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.15.0-109-generic (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages ifupdown depends on:
ii  adduser   3.116ubuntu1
ii  iproute2  4.18.0-1ubuntu2~ubuntu18.04.1
ii  libc6 2.27-3ubuntu1.2
ii  lsb-base  9.20170808ubuntu1

Versions of packages ifupdown recommends:
ii  isc-dhcp-client [dhcp-client]  4.3.5-3ubuntu7.1

Versions of packages ifupdown suggests:
pn  ppp 
pn  rdnssd  

-- no debconf information



Setting/unsetting posix mode interferes with keybindings

2020-06-21 Thread Ville Skyttä
Configuration Information [Automatically generated, do not change]:
Machine: x86_64
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS:  -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64'
-DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-pc-linux-gnu'
-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL
-DHAVE_CONFIG_H   -I.  -I../. -I.././include -I.././lib  -Wdate-time
-D_FORTIFY_SOURCE=2 -g -O2
-fdebug-prefix-map=/build/bash-N2nMjo/bash-4.4.18=.
-fstack-protector-strong -Wformat -Werror=format-security -Wall
-Wno-parentheses -Wno-format-security
uname output: Linux uncleman.localhost 4.15.0-101-generic #102-Ubuntu SMP
Mon May 11 10:07:26 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Machine Type: x86_64-pc-linux-gnu

Bash Version: 4.4
Patch Level: 20
Release Status: release

Description:
Setting/unsetting posix mode interferes with keybindings.

This is a problem e.g. with completion functions that use
process substitution; they need to control the posixness state
in order to not run into syntax errors when they happen to be
invoked in posix mode shells.

This is not limited to the above bash version, it has been
reported to happen with much newer ones as well. More info and
background at https://github.com/scop/bash-completion/issues/190

Repeat-By:
Add these lines to ~/.inputrc:
set editing-mode vi
Tab: menu-complete
Then, in a new shell:
$ bind -q menu-complete
menu-complete can be invoked via "\C-i", "\C-n".
$ shopt -uo posix # or -so, or set [+-]o
$ bind -q menu-complete
menu-complete can be invoked via "\C-n".

Notice how \C-i was lost. It does not matter whether setting
posix actually changed its state, happens also e.g. when
unsetting when already unset.


[issue40589] Missing path-like versionchanged in shutil.rmtree

2020-05-10 Thread Ville Skyttä

Change by Ville Skyttä :


--
keywords: +patch
pull_requests: +19341
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/20032

___
Python tracker 
<https://bugs.python.org/issue40589>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40589] Missing path-like versionchanged in shutil.rmtree

2020-05-10 Thread Ville Skyttä

New submission from Ville Skyttä :

shutil.rmtree takes a path-like object starting from 3.6 (due to internal use 
of os.lstat which does that too).

--
assignee: docs@python
components: Documentation
messages: 368613
nosy: docs@python, scop
priority: normal
severity: normal
status: open
title: Missing path-like versionchanged in shutil.rmtree

___
Python tracker 
<https://bugs.python.org/issue40589>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue39616] SSLContext.check_hostname description is inaccurate wrt match_hostname

2020-02-12 Thread Ville Skyttä

Change by Ville Skyttä :


--
keywords: +patch
pull_requests: +17857
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/18484

___
Python tracker 
<https://bugs.python.org/issue39616>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue39616] SSLContext.check_hostname description is inaccurate wrt match_hostname

2020-02-12 Thread Ville Skyttä

New submission from Ville Skyttä :

Doc says "Whether to match the peer cert’s hostname with match_hostname() in 
SSLSocket.do_handshake()." but match_hostname() is no longer used to do that in 
the first place, OpenSSL is used for that. check_hostname affects the OpenSSL 
usage, too.

--
assignee: docs@python
components: Documentation
messages: 361892
nosy: docs@python, scop
priority: normal
severity: normal
status: open
title: SSLContext.check_hostname description is inaccurate wrt match_hostname
type: enhancement

___
Python tracker 
<https://bugs.python.org/issue39616>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[PATCH] Grammar fixes

2019-12-24 Thread Ville Skyttä
# HG changeset patch
# User Ville Skyttä 
# Date 1577258677 -7200
#  Wed Dec 25 09:24:37 2019 +0200
# Node ID f4b83914e4009fb9c528f0318287a76aa0c7326f
# Parent  e99e9b0a8c51d59c7ee665489949d8556565adff
Grammar fixes.

diff --git a/docs/xml/nginx/changes.xml b/docs/xml/nginx/changes.xml
--- a/docs/xml/nginx/changes.xml
+++ b/docs/xml/nginx/changes.xml
@@ -14571,7 +14571,7 @@
 
 
 a segmentation fault might occur in worker process,
-if an "debug_connection" directive was used;
+if a "debug_connection" directive was used;
 the bug had appeared in 0.7.54.
 
 
@@ -15333,7 +15333,7 @@
 теперь возвращается ошибка 403 вместо 500.
 
 
-now if a file specified in a "auth_basic_user_file" directive is absent,
+now if a file specified in an "auth_basic_user_file" directive is absent,
 then the 403 error is returned instead of the 500 one.
 
 
@@ -15990,7 +15990,7 @@
 теперь директива add_header не добавляет пустое значение.
 
 
-now a "add_header" directive does not add an empty value.
+now an "add_header" directive does not add an empty value.
 
 
 
@@ -17769,7 +17769,7 @@
 
 
 a segmentation fault occurred in worker process,
-if big value was used in a "expires" directive.
+if big value was used in an "expires" directive.
 Thanks to Joaquin Cuenca Abela.
 
 
@@ -18443,7 +18443,7 @@
 ошибка появилась в 0.6.11.
 
 
-if the "?" character was in a "error_page" directive, then it was escaped
+if the "?" character was in an "error_page" directive, then it was escape
 in a proxied request;
 the bug had appeared in 0.6.11.
 
@@ -20715,7 +20715,7 @@
 директива post_action могла не работать после неудачного завершения запроса.
 
 
-the "post_action" directive might not run after a unsuccessful completion
+the "post_action" directive might not run after an unsuccessful completion
 of a request.
 
 
diff --git a/src/core/ngx_string.c b/src/core/ngx_string.c
--- a/src/core/ngx_string.c
+++ b/src/core/ngx_string.c
@@ -519,7 +519,7 @@
  * The glibc counterpart is about 150 lines of the code.
  *
  * For 32-bit numbers and some divisors gcc and icc use
- * a inlined multiplication and shifts.  For example,
+ * inlined multiplication and shifts.  For example,
  * unsigned "i32 / 10" is compiled to
  *
  * (i32 * 0xCCCD) >> 35
diff --git a/src/event/modules/ngx_devpoll_module.c 
b/src/event/modules/ngx_devpoll_module.c
--- a/src/event/modules/ngx_devpoll_module.c
+++ b/src/event/modules/ngx_devpoll_module.c
@@ -88,8 +88,8 @@
 ngx_devpoll_del_event, /* delete an event */
 ngx_devpoll_add_event, /* enable an event */
 ngx_devpoll_del_event, /* disable an event */
-NULL,  /* add an connection */
-NULL,  /* delete an connection */
+NULL,  /* add a connection */
+NULL,  /* delete a connection */
 NULL,  /* trigger a notify */
 ngx_devpoll_process_events,/* process the events */
 ngx_devpoll_init,  /* init the events */
diff --git a/src/event/modules/ngx_epoll_module.c 
b/src/event/modules/ngx_epoll_module.c
--- a/src/event/modules/ngx_epoll_module.c
+++ b/src/event/modules/ngx_epoll_module.c
@@ -186,8 +186,8 @@
 ngx_epoll_del_event, /* delete an event */
 ngx_epoll_add_event, /* enable an event */
 ngx_epoll_del_event, /* disable an event */
-ngx_epoll_add_connection,/* add an connection */
-ngx_epoll_del_connection,/* delete an connection */
+ngx_epoll_add_connection,/* add a connection */
+ngx_epoll_del_connection,/* delete a connection */
 #if (NGX_HAVE_EVENTFD)
 ngx_epoll_notify,/* trigger a notify */
 #else
diff --git a/src/event/modules/ngx_eventport_module.c 
b/src/event/modules/ngx_eventport_module.c
--- a/src/event/modules/ngx_eventport_module.c
+++ b/src/event/modules/ngx_eventport_module.c
@@ -181,8 +181,8 @@
 ngx_eventport_del_event,   /* delete an event */
 ngx_eventport_add_event,   /* enable an event */
 ngx_eventport_del_event,   /* disable an event */
-NULL,  /* add an connection */
-NULL,  /* delete an connection */
+NULL,  /* add a connection */
+NULL,  /* delete a connection */
 ngx_eventport_notify,  /* trigger a notify */
 ngx_eventport_process_events,  /* process the events */
 ngx_eventport_init,   

Bug#878599: git: [PATCH] Ship git-credential-libsecret

2019-12-16 Thread Ville Skyttä
On Tue, 17 Dec 2019 at 03:23, Jonathan Nieder  wrote:
> That said, I'd still welcome a git-libsecret (or git-secretservice)
> package, just like you're hinting.  Patches welcome.

Adjusted patch attached. It's untested and I'm not that familiar with
building Debian packages, so approach with care. I hope someone will
take it to completion from here.
From 00cbebce522ca7959aab62946796250d9794a1e0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Tue, 17 Dec 2019 07:52:37 +0200
Subject: [PATCH] Ship git-libsecret

---
 debian/control   | 22 +++---
 debian/git-libsecret.install |  1 +
 debian/rules |  6 +-
 3 files changed, 25 insertions(+), 4 deletions(-)
 create mode 100644 debian/git-libsecret.install

diff --git a/debian/control b/debian/control
index e6be01c90a..716bda9e5f 100644
--- a/debian/control
+++ b/debian/control
@@ -5,7 +5,7 @@ Maintainer: Gerrit Pape 
 Uploaders: Jonathan Nieder , Anders Kaseorg 
 Build-Depends: libz-dev, gettext,
  libpcre2-dev | libpcre3-dev,
- libcurl4-gnutls-dev, libexpat1-dev,
+ libcurl4-gnutls-dev, libexpat1-dev, libsecret-1-dev,
  subversion, libsvn-perl, libyaml-perl,
  tcl, python,
  libhttp-date-perl | libtime-parsedate-perl,
@@ -33,7 +33,7 @@ Pre-Depends: ${misc:Pre-Depends}
 Recommends: ca-certificates, patch, less, ssh-client
 Suggests: gettext-base, git-daemon-run | git-daemon-sysvinit,
  git-doc, git-el, git-email, git-gui, gitk, gitweb,
- git-cvs, git-mediawiki, git-svn
+ git-cvs, git-mediawiki, git-svn, git-libsecret
 Replaces: gitweb (<< 1:1.7.4~rc1),
  git-core (<< 1:1.7.0.4-1.)
 Breaks: bash-completion (<< 1:1.90-1), gitweb (<< 1:1.7.4~rc1),
@@ -323,12 +323,28 @@ Description: fast, scalable, distributed revision control system (web interface)
  If libcgi-fast-perl is installed, gitweb can also be run over FastCGI
  (and served by nginx, for example).
 
+Package: git-libsecret
+Architecture: all
+Multi-Arch: foreign
+Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.)
+Description: fast, scalable, distributed revision control system (libsecret credential helper)
+ Git is popular version control system designed to handle very large
+ projects with speed and efficiency; it is used for many high profile
+ open source projects, most notably the Linux kernel.
+ .
+ Git falls in the category of distributed source code management tools.
+ Every Git working directory is a full-fledged repository with full
+ revision tracking capabilities, not dependent on network access or a
+ central server.
+ .
+ This package provides a helper for storing credentials using libsecret.
+
 Package: git-all
 Architecture: all
 Multi-Arch: foreign
 Depends: ${misc:Depends}, git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.),
  git-doc, git-el, git-cvs, git-mediawiki, git-svn,
- git-email, git-gui, gitk, gitweb
+ git-email, git-gui, gitk, gitweb, git-libsecret
 Recommends: git-daemon-run | git-daemon-sysvinit
 Description: fast, scalable, distributed revision control system (all subpackages)
  Git is popular version control system designed to handle very large
diff --git a/debian/git-libsecret.install b/debian/git-libsecret.install
new file mode 100644
index 00..d61ca822bc
--- /dev/null
+++ b/debian/git-libsecret.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/git-core/git-credential-libsecret* usr/lib/git-core
diff --git a/debian/rules b/debian/rules
index d5d81608d8..74b9fb82a1 100755
--- a/debian/rules
+++ b/debian/rules
@@ -63,6 +63,7 @@ build-stamp:
 override_dh_auto_build-arch: build-stamp
 	$(MAKE) -C contrib/subtree all $(OPTS)
 	ln -s contrib/subtree/git-subtree
+	$(MAKE) -C contrib/credential/libsecret all $(OPTS)
 
 override_dh_auto_test-arch:
 	test -z '$(TEST)' || \
@@ -90,6 +91,7 @@ override_dh_auto_clean:
 	$(MAKE) -C contrib/subtree clean $(OPTS)
 	$(MAKE) clean $(OPTS)
 	rm -f git-subtree
+	$(MAKE) -C contrib/credential/libsecret clean $(OPTS)
 
 override_dh_clean:
 	dh_clean -Xmailinfo.c.orig
@@ -98,11 +100,13 @@ override_dh_auto_install-arch:
 	# git
 	DESTDIR='$(GIT)' $(MAKE) install $(OPTS)
 	DESTDIR='$(GIT)' $(MAKE) -C contrib/subtree install $(OPTS)
+	install -m0755 contrib/credential/libsecret/git-credential-libsecret \
+	 '$(GIT)'/usr/lib/git-core/
 	install -d -m0755 '$(GIT)'/var/lib/git
 	rm -rf '$(GIT)'/usr/share/man
 	# don't include arch, cvs, p4, svn, email, gui tools, and gitk program
 	for i in git-archimport git-cvs git-p4 git-svn git-send-email \
-	 git-gui git-citool; do \
+	 git-gui git-citool git-credential-libsecret; do \
 	  rm -f '$(GIT)'/usr/lib/git-core/$$i*; \
 	done
 	rm -f '$(GIT)'/usr/bin/git-cvsserver
-- 
2.17.1



[Dnsmasq-discuss] [PATCH] Support DHCP option 150 (TFTP server address, RFC 5859).

2019-12-05 Thread Ville Skyttä
---
 src/dhcp-common.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/dhcp-common.c b/src/dhcp-common.c
index 2a3c443..602873e 100644
--- a/src/dhcp-common.c
+++ b/src/dhcp-common.c
@@ -576,6 +576,7 @@ static const struct opttab_t {
   { "sip-server", 120, 0 },
   { "classless-static-route", 121, 0 },
   { "vendor-id-encap", 125, 0 },
+  { "tftp-server-address", 150, OT_ADDR_LIST },
   { "server-ip-address", 255, OT_ADDR_LIST }, /* special, internal only, sets 
siaddr */
   { NULL, 0, 0 }
 };
-- 
2.17.1


___
Dnsmasq-discuss mailing list
Dnsmasq-discuss@lists.thekelleys.org.uk
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss


[Dnsmasq-discuss] [PATCH] Spelling fixes.

2019-12-05 Thread Ville Skyttä
---
 debian/systemd_howto | 2 +-
 man/dnsmasq.8| 4 ++--
 src/cache.c  | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/debian/systemd_howto b/debian/systemd_howto
index 31908e5..3ab5244 100644
--- a/debian/systemd_howto
+++ b/debian/systemd_howto
@@ -32,7 +32,7 @@ TODO
 #1 - Found shortcoming on 2019-03-10
 Only the option DNSMASQ_EXCEPT="lo" avoids that an DNS instance will be set as 
the machine's DNS resolver.
 This may interfere with the wish to run an additional instance on a different 
port on the localhost addresses.
-My suggestion in the initial Debian report [1] was to specify a explicit 
variable for this.
+My suggestion in the initial Debian report [1] was to specify an explicit 
variable for this.
 
 [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=914305#5
 
diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
index addc29c..8f0ffdb 100644
--- a/man/dnsmasq.8
+++ b/man/dnsmasq.8
@@ -515,7 +515,7 @@ address of 0.0.0.0 and its IPv6 equivalent of :: so
 \fB--address=/example.com/#\fP will return NULL addresses for example.com and
 its subdomains. This is partly syntactic sugar for 
\fB--address=/example.com/0.0.0.0\fP
 and \fB--address=/example.com/::\fP but is also more efficient than including 
both
-as seperate configuration lines. Note that NULL addresses normally work in the 
same way as localhost, so beware that clients looking up these names are likely 
to end up talking to themselves.
+as separate configuration lines. Note that NULL addresses normally work in the 
same way as localhost, so beware that clients looking up these names are likely 
to end up talking to themselves.
 .TP
 .B --ipset=/[/...]/[,...]
 Places the resolved IP addresses of queries for one or more domains in
@@ -748,7 +748,7 @@ fast.
 
 Versions of dnsmasq prior to 2.80 defaulted to not checking unsigned replies, 
and used 
 .B --dnssec-check-unsigned
-to switch this on. Such configurations will continue to work as before, but 
those which used the default of no checking will need to be altered to 
explicitly select no checking. The new default is because switching off 
checking for unsigned replies is inherently dangerous. Not only does it open 
the possiblity of forged replies, but it allows everything to appear to be 
working even when the upstream namesevers do not support DNSSEC, and in this 
case no DNSSEC validation at all is occuring.
+to switch this on. Such configurations will continue to work as before, but 
those which used the default of no checking will need to be altered to 
explicitly select no checking. The new default is because switching off 
checking for unsigned replies is inherently dangerous. Not only does it open 
the possiblity of forged replies, but it allows everything to appear to be 
working even when the upstream namesevers do not support DNSSEC, and in this 
case no DNSSEC validation at all is occurring.
 .TP
 .B --dnssec-no-timecheck
 DNSSEC signatures are only valid for specified time windows, and should be 
rejected outside those windows. This generates an
diff --git a/src/cache.c b/src/cache.c
index 6168073..5d7ce65 100644
--- a/src/cache.c
+++ b/src/cache.c
@@ -771,7 +771,7 @@ int cache_recv_insert(time_t now, int fd)
   else if (flags & F_CNAME)
{
  struct crec *newc = really_insert(daemon->namebuff, NULL, C_IN, now, 
ttl, flags);
- /* This relies on the fact the the target of a CNAME immediately 
preceeds
+ /* This relies on the fact the the target of a CNAME immediately 
precedes
 it because of the order of extraction in extract_addresses, and
 the order reversal on the new_chain. */
  if (newc)
-- 
2.17.1


___
Dnsmasq-discuss mailing list
Dnsmasq-discuss@lists.thekelleys.org.uk
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss


[virt-tools-list] [virt-what PATCH 2/2] docker: Lookup from /proc/self/cgroup too

2019-11-30 Thread Ville Skyttä
Refs https://github.com/moby/moby/issues/18355
---
 tests/docker/Makefile.am  |  1 +
 tests/docker/proc/self/cgroup | 13 +
 virt-what.in  |  3 ++-
 3 files changed, 16 insertions(+), 1 deletion(-)
 create mode 100644 tests/docker/proc/self/cgroup

diff --git a/tests/docker/Makefile.am b/tests/docker/Makefile.am
index e2a95d8..401f372 100644
--- a/tests/docker/Makefile.am
+++ b/tests/docker/Makefile.am
@@ -24,6 +24,7 @@ EXTRA_DIST = \
.dockerenv \
.dockerinit \
proc/cpuinfo \
+   proc/self/cgroup \
proc/self/status \
sbin/dmidecode \
sbin/uname \
diff --git a/tests/docker/proc/self/cgroup b/tests/docker/proc/self/cgroup
new file mode 100644
index 000..5547637
--- /dev/null
+++ b/tests/docker/proc/self/cgroup
@@ -0,0 +1,13 @@
+12:devices:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+11:blkio:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+10:perf_event:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+9:pids:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+8:cpuset:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+7:rdma:/
+6:hugetlb:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+5:net_cls,net_prio:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+4:memory:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+3:freezer:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+2:cpu,cpuacct:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+1:name=systemd:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+0::/system.slice/containerd.service
diff --git a/virt-what.in b/virt-what.in
index db16b5f..d43916b 100644
--- a/virt-what.in
+++ b/virt-what.in
@@ -345,7 +345,8 @@ if ! "$skip_lkvm"; then
 fi
 
 # Check for Docker.
-if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ]; then
+if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ] || \
+   grep -qF /docker/ "${root}/proc/self/cgroup" 2>/dev/null; then
 echo docker
 fi
 
-- 
2.17.1


___
virt-tools-list mailing list
virt-tools-list@redhat.com
https://www.redhat.com/mailman/listinfo/virt-tools-list



[virt-tools-list] [virt-what PATCH] docker: Check for /.dockerenv too

2019-11-30 Thread Ville Skyttä
/.dockerinit may no longer exist.

Ref https://github.com/moby/moby/issues/18355
---
 tests/docker/.dockerenv  | 0
 tests/docker/Makefile.am | 1 +
 virt-what.in | 2 +-
 3 files changed, 2 insertions(+), 1 deletion(-)
 create mode 100644 tests/docker/.dockerenv

diff --git a/tests/docker/.dockerenv b/tests/docker/.dockerenv
new file mode 100644
index 000..e69de29
diff --git a/tests/docker/Makefile.am b/tests/docker/Makefile.am
index e0ea991..e2a95d8 100644
--- a/tests/docker/Makefile.am
+++ b/tests/docker/Makefile.am
@@ -21,6 +21,7 @@ TESTS = test.sh
 
 EXTRA_DIST = \
test.sh \
+   .dockerenv \
.dockerinit \
proc/cpuinfo \
proc/self/status \
diff --git a/virt-what.in b/virt-what.in
index a61ce91..db16b5f 100644
--- a/virt-what.in
+++ b/virt-what.in
@@ -345,7 +345,7 @@ if ! "$skip_lkvm"; then
 fi
 
 # Check for Docker.
-if [ -f "${root}/.dockerinit" ]; then
+if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ]; then
 echo docker
 fi
 
-- 
2.17.1


___
virt-tools-list mailing list
virt-tools-list@redhat.com
https://www.redhat.com/mailman/listinfo/virt-tools-list



compgen -d odd symlink behavior

2019-04-21 Thread Ville Skyttä
Configuration Information [Automatically generated, do not change]:
Machine: x86_64
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS:  -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64'
-DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-pc-linux-gnu'
-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL
-DHAVE_CONFIG_H   -I.  -I../. -I.././include -I.././lib  -Wdate-time
-D_FORTIFY_SOURCE=2 -g -O2
-fdebug-prefix-map=/build/bash-vEMnMR/bash-4.4.18=.
-fstack-protector-strong -Wformat -Werror=format-security -Wall
-Wno-parentheses -Wno-format-security
uname output: Linux localhost.localdomain 4.15.0-47-generic #50-Ubuntu SMP
Wed Mar 13 10:44:52 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Machine Type: x86_64-pc-linux-gnu

Bash Version: 4.4
Patch Level: 19
Release Status: release

Description:

Originally reported in https://github.com/scop/bash-completion/issues/118
This is on Ubuntu's 4.4.19, but reproducible with Fedora development's
5.0.2 as well.

Repeat-By:

$ ( mkdir -p 1/11 1/x 2/22; ln -sf ../1/x 2/x; cd 2/x; compgen -d ../ )
../x

Only ../x is output, but depending on interpretation, in my opinion either
../22 or ../11 should have been there. Note that this occurs only if I'm in
the "x" dir that is a symlink. If I'm in the "real x", i.e. 1/x, the
problem does not occur, "../11" is in the output as expected:

$ ( mkdir -p 1/11 1/x 2/22; ln -sf ../1/x 2/x; cd 1/x; compgen -d ../ )
../11
../x


Re: [Rpm-maint] [rpm-software-management/rpm] License of python-rpm-generators (#471)

2019-04-20 Thread Ville Skyttä
LGPLv2.1(+) or GPLv2(+) is fine with me.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/issues/471#issuecomment-485118161___
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-maint


[virt-tools-list] [PATCH 1/2] docker: Check for /.dockerenv too

2019-01-04 Thread Ville Skyttä
/.dockerinit may no longer exist.

Ref https://github.com/moby/moby/issues/18355
---
 Makefile.am | 1 +
 tests/docker/.dockerenv | 0
 virt-what.in| 2 +-
 3 files changed, 2 insertions(+), 1 deletion(-)
 create mode 100644 tests/docker/.dockerenv

diff --git a/Makefile.am b/Makefile.am
index 67502fc..6408cfd 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -101,6 +101,7 @@ EXTRA_DIST = \
tests/bhyve/sbin/dmidecode \
tests/bhyve/sbin/uname \
tests/bhyve/sbin/virt-what-cpuid-helper \
+   tests/docker/.dockerenv \
tests/docker/.dockerinit \
tests/docker/proc/cpuinfo \
tests/docker/proc/self/status \
diff --git a/tests/docker/.dockerenv b/tests/docker/.dockerenv
new file mode 100644
index 000..e69de29
diff --git a/virt-what.in b/virt-what.in
index f685461..f871cc1 100644
--- a/virt-what.in
+++ b/virt-what.in
@@ -336,7 +336,7 @@ if ! "$skip_lkvm"; then
 fi
 
 # Check for Docker.
-if [ -f "${root}/.dockerinit" ]; then
+if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ]; then
 echo docker
 fi
 
-- 
2.17.1

___
virt-tools-list mailing list
virt-tools-list@redhat.com
https://www.redhat.com/mailman/listinfo/virt-tools-list


[virt-tools-list] [PATCH 2/2] docker: Lookup from /proc/self/cgroup too

2019-01-04 Thread Ville Skyttä
Refs https://github.com/moby/moby/issues/18355
---
 Makefile.am   |  1 +
 tests/docker/proc/self/cgroup | 13 +
 virt-what.in  |  3 ++-
 3 files changed, 16 insertions(+), 1 deletion(-)
 create mode 100644 tests/docker/proc/self/cgroup

diff --git a/Makefile.am b/Makefile.am
index 6408cfd..96129b9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -104,6 +104,7 @@ EXTRA_DIST = \
tests/docker/.dockerenv \
tests/docker/.dockerinit \
tests/docker/proc/cpuinfo \
+   tests/docker/proc/self/cgroup \
tests/docker/proc/self/status \
tests/docker/sbin/dmidecode \
tests/docker/sbin/uname \
diff --git a/tests/docker/proc/self/cgroup b/tests/docker/proc/self/cgroup
new file mode 100644
index 000..5547637
--- /dev/null
+++ b/tests/docker/proc/self/cgroup
@@ -0,0 +1,13 @@
+12:devices:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+11:blkio:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+10:perf_event:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+9:pids:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+8:cpuset:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+7:rdma:/
+6:hugetlb:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+5:net_cls,net_prio:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+4:memory:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+3:freezer:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+2:cpu,cpuacct:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+1:name=systemd:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+0::/system.slice/containerd.service
diff --git a/virt-what.in b/virt-what.in
index f871cc1..4168e59 100644
--- a/virt-what.in
+++ b/virt-what.in
@@ -336,7 +336,8 @@ if ! "$skip_lkvm"; then
 fi
 
 # Check for Docker.
-if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ]; then
+if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ] || \
+   grep -qF /docker/ "${root}/proc/self/cgroup" 2>/dev/null; then
 echo docker
 fi
 
-- 
2.17.1

___
virt-tools-list mailing list
virt-tools-list@redhat.com
https://www.redhat.com/mailman/listinfo/virt-tools-list


Bug#878678: [Reportbug-maint] Bug#878678: reportbug: [PATCH] Store SMTP password with libsecret if available

2019-01-01 Thread Ville Skyttä
control: tags +security

Oh, that's highly unfortunate, plaintext passwords in config files are not
good from security point of view. How about a slightly modified version
that uses libsecret only if available _and_ explicitly configured to do so?


[issue35631] Improve typing docs wrt abstract/concrete collection types

2018-12-31 Thread Ville Skyttä

Ville Skyttä  added the comment:

(s/generic collection types/abstract collection types/ in the initial message)

--

___
Python tracker 
<https://bugs.python.org/issue35631>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35631] Improve typing docs wrt abstract/concrete collection types

2018-12-31 Thread Ville Skyttä

Change by Ville Skyttä :


--
keywords: +patch, patch
pull_requests: +10774, 10775
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue35631>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35631] Improve typing docs wrt abstract/concrete collection types

2018-12-31 Thread Ville Skyttä

Change by Ville Skyttä :


--
keywords: +patch, patch, patch
pull_requests: +10774, 10775, 10776
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue35631>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35631] Improve typing docs wrt abstract/concrete collection types

2018-12-31 Thread Ville Skyttä

Change by Ville Skyttä :


--
keywords: +patch
pull_requests: +10774
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue35631>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35631] Improve typing docs wrt abstract/concrete collection types

2018-12-31 Thread Ville Skyttä

New submission from Ville Skyttä :

The typing docs for List includes a note to use generic collection types, but 
lists AbstractSet and Mapping which aren't generally replacements for a List. 
It would be better to remove those types from the List note and add 
corresponding ones to Dict and Set which are currently lacking it.

Additionally, some examples in the typing docs are in violation of the above 
stated preference, using Lists and Dicts as parameters.

--
assignee: docs@python
components: Documentation
messages: 332842
nosy: docs@python, scop
priority: normal
severity: normal
status: open
title: Improve typing docs wrt abstract/concrete collection types
type: enhancement

___
Python tracker 
<https://bugs.python.org/issue35631>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[PATCH nftables] doc: Spelling and grammar fixes

2018-11-13 Thread Ville Skyttä
Signed-off-by: Ville Skyttä 
---
 doc/data-types.txt  | 2 +-
 doc/libnftables-json.adoc   | 4 ++--
 doc/libnftables.adoc| 2 +-
 doc/nft.txt | 6 +++---
 doc/primary-expression.txt  | 2 +-
 tests/json_echo/run-test.py | 2 +-
 6 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/doc/data-types.txt b/doc/data-types.txt
index 2692afd..5c132f8 100644
--- a/doc/data-types.txt
+++ b/doc/data-types.txt
@@ -136,7 +136,7 @@ boolean |
 integer
 |===
 
-The boolean type is a syntactical helper type in userspace. It's use is in the
+The boolean type is a syntactical helper type in userspace. Its use is in the
 right-hand side of a (typically implicit) relational expression to change the
 expression on the left-hand side into a boolean check (usually for existence). 
+
 
diff --git a/doc/libnftables-json.adoc b/doc/libnftables-json.adoc
index 414702c..c95ab32 100644
--- a/doc/libnftables-json.adoc
+++ b/doc/libnftables-json.adoc
@@ -40,11 +40,11 @@ library standard output into JSON format. Error output 
remains unaffected.
 
 == GLOBAL STRUCTURE
 In general, any JSON input or output is enclosed in an object with a single
-property named 'nftables'. It's value is an array containing commands (for
+property named 'nftables'. Its value is an array containing commands (for
 input) or ruleset elements (for output).
 
 A command is an object with a single property whose name identifies the 
command.
-It's value is a ruleset element - basically identical to output elements apart
+Its value is a ruleset element - basically identical to output elements apart
 from certain properties which may be interpreted differently or are required
 when output generally omits them.
 
diff --git a/doc/libnftables.adoc b/doc/libnftables.adoc
index 12deebc..7f6eef8 100644
--- a/doc/libnftables.adoc
+++ b/doc/libnftables.adoc
@@ -46,7 +46,7 @@ 
 
 == DESCRIPTION
 This library was designed with nftables integration into applications in mind.
-It's API is therefore kept as simple as possible, which somewhat limits its 
flexibility.
+Its API is therefore kept as simple as possible, which somewhat limits its 
flexibility.
 Due to support for JSON markup of input and output though, convenience in 
constructing and parsing of input and output data may be achieved by using a 
third-party library such as *libjansson*.
 
 At the very basic level, one has to allocate a new object of type *struct 
nft_ctx* using *nft_ctx_new*() function, then pass commands via 
*nft_run_cmd_from_buffer*() or *nft_run_cmd_from_filename*() functions.
diff --git a/doc/nft.txt b/doc/nft.txt
index fca9145..88f5b0d 100644
--- a/doc/nft.txt
+++ b/doc/nft.txt
@@ -392,9 +392,9 @@ the others. See the following tables that describe the 
values and compatibility.
 | srcnat | 300 | postrouting
 |==
 
-Basic arithmetic expressions (addition and substraction) can also be achieved
+Basic arithmetic expressions (addition and subtraction) can also be achieved
 with these standard names to ease relative prioritizing, eg. *mangle - 5* 
stands
-for *-155*.  Values will also be printed like this untill the value is not
+for *-155*.  Values will also be printed like this until the value is not
 further than 10 form the standard value.
 
 Base chains also allow to set the chain's *policy*, i.e.  what happens to
@@ -592,7 +592,7 @@ address family is a dummy family which is used to create 
hybrid IPv4/IPv6
 tables. When no address family is specified, ip is used by default.
 
 The *priority* can be a signed integer or *filter* which stands for 0. Addition
-and substraction can be used to set relative priority eg. filter + 5 equals to
+and subtraction can be used to set relative priority eg. filter + 5 equals to
 5.
 
 [horizontal]
diff --git a/doc/primary-expression.txt b/doc/primary-expression.txt
index 5846898..6995d32 100644
--- a/doc/primary-expression.txt
+++ b/doc/primary-expression.txt
@@ -328,7 +328,7 @@ IPSEC EXPRESSIONS
 *ipsec* {in | out} [ spnum 'NUM' ]  {reqid | spi }
 *ipsec* {in | out} [ spnum 'NUM' ]  {ip | ip6 } { saddr | daddr }
 
-A ipsec expression refers to ipsec data associated with a packet.
+An ipsec expression refers to ipsec data associated with a packet.
 
 The 'in' or 'out' keyword needs to be used to specify if the expression should
 examine inbound or outbound policies. The 'in' keyword can be used in the
diff --git a/tests/json_echo/run-test.py b/tests/json_echo/run-test.py
index dcef3f1..52a9f25 100755
--- a/tests/json_echo/run-test.py
+++ b/tests/json_echo/run-test.py
@@ -152,7 +152,7 @@ except Exception as e:
 exit_dump(e, out)
 
 # adjust names and add items again
-# Note: Add second chain to same table, otherwise it's handle will be the same
+# Note: Add second chain to same table, otherwise its handle will be the same
 # as before. Same for the set and the rule. Bug?
 
 table_out["add"]["table"]["name"] = "t2"
-- 
2.17.1



Re: [Rpm-maint] [rpm-software-management/rpm] License of find-lang.sh is ambiguous around modification (#595)

2018-11-09 Thread Ville Skyttä
- [x] @scop ok with relicensing under MIT

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/issues/595#issuecomment-437430364___
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-maint


[issue34336] Don't promote possibility to omit Optional on optional/defaulted arguments

2018-08-05 Thread Ville Skyttä

Change by Ville Skyttä :


--
keywords: +patch
pull_requests: +8172
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue34336>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34336] Don't promote possibility to omit Optional on optional/defaulted arguments

2018-08-05 Thread Ville Skyttä

New submission from Ville Skyttä :

The documentation of typing.Optional seems to promote practices for not 
specifying Optional that are recommended against in PEP 484:

https://www.python.org/dev/peps/pep-0484/#union-types -- end of chapter 
recommends against inferring Optional.

https://docs.python.org/3.8/library/typing.html#typing.Optional -- second 
paragraph promotes the possibility of leaving out Optional.

I'm not sure how to improve the typing.Optional doc wording, perhaps it would 
be better to just remove the second paragraph altogether.

--
assignee: docs@python
components: Documentation
messages: 323132
nosy: docs@python, scop
priority: normal
severity: normal
status: open
title: Don't promote possibility to omit Optional on optional/defaulted 
arguments
type: enhancement
versions: Python 3.8

___
Python tracker 
<https://bugs.python.org/issue34336>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[PATCH] Documentation: Spelling and grammar fixes

2018-06-22 Thread Ville Skyttä
Signed-off-by: Ville Skyttä 
---
 Documentation/SubmittingPatches   | 4 ++--
 Documentation/config.txt  | 2 +-
 Documentation/git-bisect-lk2009.txt   | 2 +-
 Documentation/git-imap-send.txt   | 4 ++--
 Documentation/git-notes.txt   | 2 +-
 Documentation/git-status.txt  | 2 +-
 Documentation/git-svn.txt | 2 +-
 Documentation/giteveryday.txt | 2 +-
 Documentation/gitsubmodules.txt   | 2 +-
 Documentation/glossary-content.txt| 2 +-
 Documentation/technical/api-directory-listing.txt | 2 +-
 Documentation/technical/api-gitattributes.txt | 2 +-
 Documentation/technical/commit-graph-format.txt   | 2 +-
 13 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches
index 248854440..b44fd51f2 100644
--- a/Documentation/SubmittingPatches
+++ b/Documentation/SubmittingPatches
@@ -298,7 +298,7 @@ smaller project it is a good discipline to follow it.
 
 The sign-off is a simple line at the end of the explanation for
 the patch, which certifies that you wrote it or otherwise have
-the right to pass it on as a open-source patch.  The rules are
+the right to pass it on as an open-source patch.  The rules are
 pretty simple: if you can certify the below D-C-O:
 
 [[dco]]
@@ -403,7 +403,7 @@ don't demand).  +git log -p {litdd} 
_$area_you_are_modifying_+ would
 help you find out who they are.
 
 . You get comments and suggestions for improvements.  You may
-  even get them in a "on top of your change" patch form.
+  even get them in an "on top of your change" patch form.
 
 . Polish, refine, and re-send to the list and the people who
   spend their time to improve your patch.  Go back to step (2).
diff --git a/Documentation/config.txt b/Documentation/config.txt
index ab641bf5a..98ffbd208 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -354,7 +354,7 @@ advice.*::
Advice on what to do when you've accidentally added one
git repo inside of another.
ignoredHook::
-   Advice shown if an hook is ignored because the hook is not
+   Advice shown if a hook is ignored because the hook is not
set as executable.
waitingForEditor::
Print a message to the terminal whenever Git is waiting for
diff --git a/Documentation/git-bisect-lk2009.txt 
b/Documentation/git-bisect-lk2009.txt
index 78479b003..0f9ef2f25 100644
--- a/Documentation/git-bisect-lk2009.txt
+++ b/Documentation/git-bisect-lk2009.txt
@@ -1103,7 +1103,7 @@ _
 Combining test suites, git bisect and other systems together
 
 
-We have seen that test suites an git bisect are very powerful when
+We have seen that test suites and git bisect are very powerful when
 used together. It can be even more powerful if you can combine them
 with other systems.
 
diff --git a/Documentation/git-imap-send.txt b/Documentation/git-imap-send.txt
index 032613c42..7b157441e 100644
--- a/Documentation/git-imap-send.txt
+++ b/Documentation/git-imap-send.txt
@@ -68,8 +68,8 @@ imap.tunnel::
to the server. Required when imap.host is not set.
 
 imap.host::
-   A URL identifying the server. Use a `imap://` prefix for non-secure
-   connections and a `imaps://` prefix for secure connections.
+   A URL identifying the server. Use an `imap://` prefix for non-secure
+   connections and an `imaps://` prefix for secure connections.
Ignored when imap.tunnel is set, but required otherwise.
 
 imap.user::
diff --git a/Documentation/git-notes.txt b/Documentation/git-notes.txt
index e8dec1b3c..df2b64dbb 100644
--- a/Documentation/git-notes.txt
+++ b/Documentation/git-notes.txt
@@ -199,7 +199,7 @@ OPTIONS
.git/NOTES_MERGE_REF symref is updated to the resulting commit.
 
 --abort::
-   Abort/reset a in-progress 'git notes merge', i.e. a notes merge
+   Abort/reset an in-progress 'git notes merge', i.e. a notes merge
with conflicts. This simply removes all files related to the
notes merge.
 
diff --git a/Documentation/git-status.txt b/Documentation/git-status.txt
index c4467ffb9..d9f422d56 100644
--- a/Documentation/git-status.txt
+++ b/Documentation/git-status.txt
@@ -106,7 +106,7 @@ It is optional: it defaults to 'traditional'.
 The possible options are:
 +
- 'traditional' - Shows ignored files and directories, unless
- --untracked-files=all is specifed, in which case
+ --untracked-files=all is specified, in which case
  individual files in ignored directories are
  displayed.
- 'no'  - Show no ignored files.
diff --git a/Documentation/git-svn.txt b/Documentati

Re: [Qemu-devel] [PATCH] docs: Grammar and spelling fixes

2018-06-14 Thread Ville Skyttä
On Tue, Jun 12, 2018 at 3:11 PM, Eric Blake  wrote:
> On 06/12/2018 01:51 AM, Ville Skyttä wrote:
>>
>> Signed-off-by: Ville Skyttä 
>> Reviewed-by: Peter Maydell 
>> Reviewed-by: Eric Blake 
>> ---
>
>
> It's helpful to use 'git send-email -v3' (or 'git format-patch -v3',
> depending on your workflow) so that the subject line tags this as a third
> spin of the same patch previously posted, and to include, after the ---
> separator, how it differs from v2 (in this case, incorporating my review
> comment to reflow a long line).  Otherwise, automated tools might not pick
> up on the fact that this email replaces your earlier submission as the one
> to test.  Other submission tips can be found at:
>
> https://wiki.qemu.org/Contribute/SubmitAPatch

Ok, will keep that in mind for the future. In the meantime, am I still
expected to do something to this latest patch, or just wait :)?



Re: [Qemu-devel] [PATCH] docs: Grammar and spelling fixes

2018-06-12 Thread Ville Skyttä
On Tue, Jun 12, 2018 at 1:00 AM, Eric Blake  wrote:
> On 06/11/2018 03:25 PM, Ville Skyttä wrote:
>>
>> Signed-off-by: Ville Skyttä 
>> ---
>
[...]
>
>> +++ b/docs/interop/qcow2.txt
>> @@ -326,7 +326,7 @@ in the image file.
>>   It contains pointers to the second level structures which are called
>> refcount
>>   blocks and are exactly one cluster in size.
>>   -Given a offset into the image file, the refcount of its cluster can be
>> obtained
>> +Given an offset into the image file, the refcount of its cluster can be
>> obtained
>>   as follows:
>
>
> This line is now long; it might be better if you reflow 'obtained', more
> like...
>
>> refcount_block_entries = (cluster_size * 8 / refcount_bits)
>> @@ -365,7 +365,7 @@ The L1 table has a variable size (stored in the
>> header) and may use multiple
>>   clusters, however it must be contiguous in the image file. L2 tables are
>>   exactly one cluster in size.
>>   -Given a offset into the virtual disk, the offset into the image file
>> can be
>> +Given an offset into the virtual disk, the offset into the image file can
>> be
>>   obtained as follows:
>
>
> ...this line.
>
> With or without the reflow,
> Reviewed-by: Eric Blake 

Reflowing, new patch follows in a separate mail.



[Qemu-devel] [PATCH] docs: Grammar and spelling fixes

2018-06-12 Thread Ville Skyttä
Signed-off-by: Ville Skyttä 
Reviewed-by: Peter Maydell 
Reviewed-by: Eric Blake 
---
 docs/colo-proxy.txt  | 2 +-
 docs/config/mach-virt-graphical.cfg  | 2 +-
 docs/config/mach-virt-serial.cfg | 2 +-
 docs/config/q35-emulated.cfg | 2 +-
 docs/config/q35-virtio-graphical.cfg | 2 +-
 docs/config/q35-virtio-serial.cfg| 2 +-
 docs/devel/migration.rst | 2 +-
 docs/devel/multi-thread-tcg.txt  | 2 +-
 docs/interop/qcow2.txt   | 6 +++---
 docs/interop/vhost-user.txt  | 4 ++--
 docs/memory-hotplug.txt  | 2 +-
 docs/multiseat.txt   | 2 +-
 docs/qemu-block-drivers.texi | 2 +-
 docs/qemupciserial.inf   | 2 +-
 docs/specs/acpi_nvdimm.txt   | 3 ++-
 docs/specs/ppc-spapr-hcalls.txt  | 2 +-
 docs/specs/tpm.txt   | 2 +-
 docs/usb2.txt| 2 +-
 18 files changed, 22 insertions(+), 21 deletions(-)

diff --git a/docs/colo-proxy.txt b/docs/colo-proxy.txt
index 8b726ea094..1f8e4b4e77 100644
--- a/docs/colo-proxy.txt
+++ b/docs/colo-proxy.txt
@@ -145,7 +145,7 @@ and redirect indev's packet to filter.
 COLO-compare, we do packet comparing job.
 Packets coming from the primary char indev will be sent to outdev.
 Packets coming from the secondary char dev will be dropped after comparing.
-COLO-comapre need two input chardev and one output chardev:
+COLO-compare needs two input chardevs and one output chardev:
 primary_in=chardev1-id (source: primary send packet)
 secondary_in=chardev2-id (source: secondary send packet)
 outdev=chardev3-id
diff --git a/docs/config/mach-virt-graphical.cfg 
b/docs/config/mach-virt-graphical.cfg
index 0fdf6846dd..d6d31b17f5 100644
--- a/docs/config/mach-virt-graphical.cfg
+++ b/docs/config/mach-virt-graphical.cfg
@@ -185,7 +185,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/mach-virt-serial.cfg b/docs/config/mach-virt-serial.cfg
index aee9f1c5a1..18a7c83731 100644
--- a/docs/config/mach-virt-serial.cfg
+++ b/docs/config/mach-virt-serial.cfg
@@ -191,7 +191,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-emulated.cfg b/docs/config/q35-emulated.cfg
index c6416d6545..99ac918e78 100644
--- a/docs/config/q35-emulated.cfg
+++ b/docs/config/q35-emulated.cfg
@@ -130,7 +130,7 @@
 # it to that controller so that the guest can use it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-virtio-graphical.cfg 
b/docs/config/q35-virtio-graphical.cfg
index 28bde2fc57..4207f11e4f 100644
--- a/docs/config/q35-virtio-graphical.cfg
+++ b/docs/config/q35-virtio-graphical.cfg
@@ -136,7 +136,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-virtio-serial.cfg 
b/docs/config/q35-virtio-serial.cfg
index c33c9cc07a..d2830aec5e 100644
--- a/docs/config/q35-virtio-serial.cfg
+++ b/docs/config/q35-virtio-serial.cfg
@@ -141,7 +141,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/devel/migration.rst b/docs/devel/migration.rst
index 40f136f6be..6ed3fce061 100644
--- a/docs/devel/migration.rst
+++ b/docs/devel/migration.rst
@@ -37,7 +37,7 @@ over any transport.
 - tcp migration: do the migration using tcp sockets
 - unix migration: do the migration using unix sockets
 - exec migration: do the migration using the stdin/stdout through a process.
-- fd migration: do the migration using an file descriptor that is
+- fd migration: do

[Qemu-devel] [PATCH] docs: Grammar and spelling fixes

2018-06-11 Thread Ville Skyttä
Signed-off-by: Ville Skyttä 
---
 docs/colo-proxy.txt  | 2 +-
 docs/config/mach-virt-graphical.cfg  | 2 +-
 docs/config/mach-virt-serial.cfg | 2 +-
 docs/config/q35-emulated.cfg | 2 +-
 docs/config/q35-virtio-graphical.cfg | 2 +-
 docs/config/q35-virtio-serial.cfg| 2 +-
 docs/devel/migration.rst | 2 +-
 docs/devel/multi-thread-tcg.txt  | 2 +-
 docs/interop/qcow2.txt   | 4 ++--
 docs/interop/vhost-user.txt  | 4 ++--
 docs/memory-hotplug.txt  | 2 +-
 docs/multiseat.txt   | 2 +-
 docs/qemu-block-drivers.texi | 2 +-
 docs/qemupciserial.inf   | 2 +-
 docs/specs/acpi_nvdimm.txt   | 3 ++-
 docs/specs/ppc-spapr-hcalls.txt  | 2 +-
 docs/specs/tpm.txt   | 2 +-
 docs/usb2.txt| 2 +-
 18 files changed, 21 insertions(+), 20 deletions(-)

diff --git a/docs/colo-proxy.txt b/docs/colo-proxy.txt
index 8b726ea094..1f8e4b4e77 100644
--- a/docs/colo-proxy.txt
+++ b/docs/colo-proxy.txt
@@ -145,7 +145,7 @@ and redirect indev's packet to filter.
 COLO-compare, we do packet comparing job.
 Packets coming from the primary char indev will be sent to outdev.
 Packets coming from the secondary char dev will be dropped after comparing.
-COLO-comapre need two input chardev and one output chardev:
+COLO-compare needs two input chardevs and one output chardev:
 primary_in=chardev1-id (source: primary send packet)
 secondary_in=chardev2-id (source: secondary send packet)
 outdev=chardev3-id
diff --git a/docs/config/mach-virt-graphical.cfg 
b/docs/config/mach-virt-graphical.cfg
index 0fdf6846dd..d6d31b17f5 100644
--- a/docs/config/mach-virt-graphical.cfg
+++ b/docs/config/mach-virt-graphical.cfg
@@ -185,7 +185,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/mach-virt-serial.cfg b/docs/config/mach-virt-serial.cfg
index aee9f1c5a1..18a7c83731 100644
--- a/docs/config/mach-virt-serial.cfg
+++ b/docs/config/mach-virt-serial.cfg
@@ -191,7 +191,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-emulated.cfg b/docs/config/q35-emulated.cfg
index c6416d6545..99ac918e78 100644
--- a/docs/config/q35-emulated.cfg
+++ b/docs/config/q35-emulated.cfg
@@ -130,7 +130,7 @@
 # it to that controller so that the guest can use it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-virtio-graphical.cfg 
b/docs/config/q35-virtio-graphical.cfg
index 28bde2fc57..4207f11e4f 100644
--- a/docs/config/q35-virtio-graphical.cfg
+++ b/docs/config/q35-virtio-graphical.cfg
@@ -136,7 +136,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-virtio-serial.cfg 
b/docs/config/q35-virtio-serial.cfg
index c33c9cc07a..d2830aec5e 100644
--- a/docs/config/q35-virtio-serial.cfg
+++ b/docs/config/q35-virtio-serial.cfg
@@ -141,7 +141,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/devel/migration.rst b/docs/devel/migration.rst
index 40f136f6be..6ed3fce061 100644
--- a/docs/devel/migration.rst
+++ b/docs/devel/migration.rst
@@ -37,7 +37,7 @@ over any transport.
 - tcp migration: do the migration using tcp sockets
 - unix migration: do the migration using unix sockets
 - exec migration: do the migration using the stdin/stdout through a process.
-- fd migration: do the migration using an file descriptor that is
+- fd migration: do the migration using a file descriptor that is
   passed

Re: [Qemu-devel] [PATCH] docs: Grammar and spelling fixes

2018-06-11 Thread Ville Skyttä
On Mon, Jun 11, 2018 at 6:23 PM, Peter Maydell  wrote:
> On 11 June 2018 at 15:25, Ville Skyttä  wrote:
>> Signed-off-by: Ville Skyttä 
>
>> diff --git a/docs/specs/acpi_nvdimm.txt b/docs/specs/acpi_nvdimm.txt
>> index 3f322e6f55..4da2d44534 100644
>> --- a/docs/specs/acpi_nvdimm.txt
>> +++ b/docs/specs/acpi_nvdimm.txt
>> @@ -72,7 +72,7 @@ for NVDIMM ACPI.
>>
>>  Memory:
>> QEMU uses BIOS Linker/loader feature to ask BIOS to allocate a memory
>> -   page and dynamically patch its into a int32 object named "MEMA" in ACPI.
>> +   page and dynamically patch its into an int32 object named "MEMA" in ACPI.
>
> Should this read "its address" ?

Maybe. Or just "it"? Took your suggestion, will send a new patch with
it included.



[Qemu-devel] [PATCH] docs: Grammar and spelling fixes

2018-06-11 Thread Ville Skyttä
Signed-off-by: Ville Skyttä 
---
 docs/colo-proxy.txt  | 2 +-
 docs/config/mach-virt-graphical.cfg  | 2 +-
 docs/config/mach-virt-serial.cfg | 2 +-
 docs/config/q35-emulated.cfg | 2 +-
 docs/config/q35-virtio-graphical.cfg | 2 +-
 docs/config/q35-virtio-serial.cfg| 2 +-
 docs/devel/migration.rst | 2 +-
 docs/devel/multi-thread-tcg.txt  | 2 +-
 docs/interop/qcow2.txt   | 4 ++--
 docs/interop/vhost-user.txt  | 4 ++--
 docs/memory-hotplug.txt  | 2 +-
 docs/multiseat.txt   | 2 +-
 docs/qemu-block-drivers.texi | 2 +-
 docs/qemupciserial.inf   | 2 +-
 docs/specs/acpi_nvdimm.txt   | 2 +-
 docs/specs/ppc-spapr-hcalls.txt  | 2 +-
 docs/specs/tpm.txt   | 2 +-
 docs/usb2.txt| 2 +-
 18 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/docs/colo-proxy.txt b/docs/colo-proxy.txt
index 8b726ea094..1f8e4b4e77 100644
--- a/docs/colo-proxy.txt
+++ b/docs/colo-proxy.txt
@@ -145,7 +145,7 @@ and redirect indev's packet to filter.
 COLO-compare, we do packet comparing job.
 Packets coming from the primary char indev will be sent to outdev.
 Packets coming from the secondary char dev will be dropped after comparing.
-COLO-comapre need two input chardev and one output chardev:
+COLO-compare needs two input chardevs and one output chardev:
 primary_in=chardev1-id (source: primary send packet)
 secondary_in=chardev2-id (source: secondary send packet)
 outdev=chardev3-id
diff --git a/docs/config/mach-virt-graphical.cfg 
b/docs/config/mach-virt-graphical.cfg
index 0fdf6846dd..d6d31b17f5 100644
--- a/docs/config/mach-virt-graphical.cfg
+++ b/docs/config/mach-virt-graphical.cfg
@@ -185,7 +185,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/mach-virt-serial.cfg b/docs/config/mach-virt-serial.cfg
index aee9f1c5a1..18a7c83731 100644
--- a/docs/config/mach-virt-serial.cfg
+++ b/docs/config/mach-virt-serial.cfg
@@ -191,7 +191,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-emulated.cfg b/docs/config/q35-emulated.cfg
index c6416d6545..99ac918e78 100644
--- a/docs/config/q35-emulated.cfg
+++ b/docs/config/q35-emulated.cfg
@@ -130,7 +130,7 @@
 # it to that controller so that the guest can use it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-virtio-graphical.cfg 
b/docs/config/q35-virtio-graphical.cfg
index 28bde2fc57..4207f11e4f 100644
--- a/docs/config/q35-virtio-graphical.cfg
+++ b/docs/config/q35-virtio-graphical.cfg
@@ -136,7 +136,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/config/q35-virtio-serial.cfg 
b/docs/config/q35-virtio-serial.cfg
index c33c9cc07a..d2830aec5e 100644
--- a/docs/config/q35-virtio-serial.cfg
+++ b/docs/config/q35-virtio-serial.cfg
@@ -141,7 +141,7 @@
 # attached to it.
 #
 # We also create an optical disk, mostly for installation
-# purposes: once the guest OS has been succesfully
+# purposes: once the guest OS has been successfully
 # installed, the guest will no longer boot from optical
 # media. If you don't want, or no longer want, to have an
 # optical disk in the guest you can safely comment out
diff --git a/docs/devel/migration.rst b/docs/devel/migration.rst
index 40f136f6be..6ed3fce061 100644
--- a/docs/devel/migration.rst
+++ b/docs/devel/migration.rst
@@ -37,7 +37,7 @@ over any transport.
 - tcp migration: do the migration using tcp sockets
 - unix migration: do the migration using unix sockets
 - exec migration: do the migration using the stdin/stdout through a process.
-- fd migration: do the migration using an file descriptor that is
+- fd migration: do the migration using a file descriptor that is
   passed

[issue33585] re.sub calls repl function one time too many for catch-all regex

2018-05-20 Thread Ville Skyttä

Ville Skyttä <ville.sky...@iki.fi> added the comment:

Oh, I see, sorry about the noise, then. (Only looked at the "Improved Modules" 
-> re section in the what's new, thus missed the doc.)

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue33585>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33585] re.sub calls repl function one time too many for catch-all regex

2018-05-20 Thread Ville Skyttä

Ville Skyttä <ville.sky...@iki.fi> added the comment:

Right, it's not limited to repl functions.

Python 3.6.3:
$ python -c 'import re;print(re.sub(".*", "X", "foo"))'
X

Python 3.7.0b4+:
$ python -c 'import re;print(re.sub(".*", "X", "foo"))'
XX

Poking serhiy.storchaka who according to the release notes, seems to have done 
quite a bit of work on re in 3.7.

--
nosy: +serhiy.storchaka

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue33585>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33585] re.sub calls repl function one time too many for catch-all regex

2018-05-20 Thread Ville Skyttä

Change by Ville Skyttä <ville.sky...@iki.fi>:


--
components: +Regular Expressions
nosy: +ezio.melotti, mrabarnett

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue33585>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33585] re.sub calls repl function one time too many for catch-all regex

2018-05-20 Thread Ville Skyttä

New submission from Ville Skyttä <ville.sky...@iki.fi>:

(I'm fairly certain that the title doesn't describe the actual underlying issue 
all that well, however it is what I'm seeing so going with that for now.)

Compared to Python 3.6, 3.7 appears to call the repl function for re.sub one 
time too many, when given a catch-all regex. The extra call is made with a 
match consisting of an empty string. I think this is quite unexpected, and 
think it's a bug that I hope could be fixed before 3.7 is out.

Demonstration code:

import re
def repl(match):
print(f"Called with match '{match.group(0)}'")
re.sub(".*", repl, "foo")

3.6.3 produces the expected output:

Called with match 'foo'

3.7.0b4+ (current git) demonstrates the extra call:

Called with match 'foo'
Called with match ''

--
messages: 317166
nosy: scop
priority: normal
severity: normal
status: open
title: re.sub calls repl function one time too many for catch-all regex
type: behavior
versions: Python 3.7

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue33585>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[libvirt] [PATCH] docs: Grammar and spelling fixes

2018-05-03 Thread Ville Skyttä
Signed-off-by: Ville Skyttä <ville.sky...@iki.fi>
---
 docs/aclpolkit.html.in|  2 +-
 docs/api.html.in  |  2 +-
 docs/contribute.html.in   |  2 +-
 docs/downloads.html.in|  2 +-
 docs/drvbhyve.html.in |  2 +-
 docs/drvesx.html.in   |  2 +-
 docs/drvlxc.html.in   |  2 +-
 docs/errors.html.in   |  2 +-
 docs/firewall.html.in |  2 +-
 docs/formatdomain.html.in | 12 ++--
 docs/formatdomaincaps.html.in |  2 +-
 docs/internals/rpc.html.in|  2 +-
 docs/locking-sanlock.html.in  |  2 +-
 docs/news.xml |  2 +-
 docs/storage.html.in  |  2 +-
 docs/support.html.in  |  2 +-
 16 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/docs/aclpolkit.html.in b/docs/aclpolkit.html.in
index 0e3c8e9..98d06da 100644
--- a/docs/aclpolkit.html.in
+++ b/docs/aclpolkit.html.in
@@ -396,7 +396,7 @@ polkit.addRule(function(action, subject) {
   To achieve this we need to write a rule which checks
   whether the connect_driver attribute
   is LXC and the domain_name
-  attribute is demo, and match on a action
+  attribute is demo, and match on action
   name of org.libvirt.api.domain.getattr. Using
   the javascript rules format, this ends up written as
 
diff --git a/docs/api.html.in b/docs/api.html.in
index 27abed6..288b9ec 100644
--- a/docs/api.html.in
+++ b/docs/api.html.in
@@ -155,7 +155,7 @@
   
   
   Enumeration [virConnectList..., virConnectNumOf...]
-  Used to enumerate a set of object available to an given
+  Used to enumerate a set of object available to a given
   hypervisor connection such as:
   
 
diff --git a/docs/contribute.html.in b/docs/contribute.html.in
index 158c91c..42a1b2f 100644
--- a/docs/contribute.html.in
+++ b/docs/contribute.html.in
@@ -80,7 +80,7 @@
 and future growth of the project, that there are a people
 who evangalise the work created by the project. This can
 take many forms, writing blog posts (about usage of features,
-personal user experiances, areas for future work, and more),
+personal user experiences, areas for future work, and more),
 syndicating docs and blogs via social media, giving user
 group and/or conference talks about libvirt.
   User assistance. Since documentation
diff --git a/docs/downloads.html.in b/docs/downloads.html.in
index 8cca203..2956a4f 100644
--- a/docs/downloads.html.in
+++ b/docs/downloads.html.in
@@ -457,7 +457,7 @@
   (first release in the middle of Jan, then skip the Feb release), giving
   a total of 11 releases a year. The Python and Perl modules will aim to
   release at the same time as the core libvirt module. Other modules have
-  independant ad-hoc releases with no fixed time schedle.
+  independent ad-hoc releases with no fixed time schedule.
 
 
 Release numbering
diff --git a/docs/drvbhyve.html.in b/docs/drvbhyve.html.in
index 63260af..bde8298 100644
--- a/docs/drvbhyve.html.in
+++ b/docs/drvbhyve.html.in
@@ -239,7 +239,7 @@ to let a guest boot or start a guest using:
 
 start --console domname
 
-NB: An bootloader configured to require user interaction will prevent
+NB: A bootloader configured to require user interaction will prevent
 the domain from starting (and thus virsh console or start
 --console from functioning) until the user interacts with it manually on
 the VM host. Because users typically do not have access to the VM host,
diff --git a/docs/drvesx.html.in b/docs/drvesx.html.in
index 417aca4..901d659 100644
--- a/docs/drvesx.html.in
+++ b/docs/drvesx.html.in
@@ -437,7 +437,7 @@ ethernet0.checkMACAddress = "false"
 
 auto
 
-This isn't a actual controller model. If specified the ESX driver
+This isn't an actual controller model. If specified the ESX driver
 tries to detect the SCSI controller model referenced in the
 .vmdk file and use it. Autodetection fails when a
 SCSI controller has multiple disks attached and the SCSI controller
diff --git a/docs/drvlxc.html.in b/docs/drvlxc.html.in
index 44c4960..6ee9ee8 100644
--- a/docs/drvlxc.html.in
+++ b/docs/drvlxc.html.in
@@ -429,7 +429,7 @@ be considered secure against exploits of the host OS. The 
sVirt SELinux
 driver provides a way to secure containers even when the "user" namespace
 is not used. The cost is that writing a policy to allow execution of
 arbitrary OS is not practical. The SELinux sVirt policy is typically
-tailored to work with an simpler application confinement use case,
+tailored to work with a simpler application confinement use case,
 as provided by the "libvirt-sandbox" project.
 
 
diff --git a/docs/errors.html.in b/docs/errors.html.in
index 8f4f7d4..ea42728 100644
--- a/docs/errors.html.in
+++ b/docs/errors.html.in
@@ -29,7 +29,7 @@ set specificall

[libvirt] [PATCH] docs: Grammar and spelling fixes

2018-05-03 Thread Ville Skyttä
---
 docs/aclpolkit.html.in|  2 +-
 docs/api.html.in  |  2 +-
 docs/contribute.html.in   |  2 +-
 docs/downloads.html.in|  2 +-
 docs/drvbhyve.html.in |  2 +-
 docs/drvesx.html.in   |  2 +-
 docs/drvlxc.html.in   |  2 +-
 docs/errors.html.in   |  2 +-
 docs/firewall.html.in |  2 +-
 docs/formatdomain.html.in | 12 ++--
 docs/formatdomaincaps.html.in |  2 +-
 docs/internals/rpc.html.in|  2 +-
 docs/locking-sanlock.html.in  |  2 +-
 docs/news.xml |  2 +-
 docs/storage.html.in  |  2 +-
 docs/support.html.in  |  2 +-
 16 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/docs/aclpolkit.html.in b/docs/aclpolkit.html.in
index 0e3c8e9..98d06da 100644
--- a/docs/aclpolkit.html.in
+++ b/docs/aclpolkit.html.in
@@ -396,7 +396,7 @@ polkit.addRule(function(action, subject) {
   To achieve this we need to write a rule which checks
   whether the connect_driver attribute
   is LXC and the domain_name
-  attribute is demo, and match on a action
+  attribute is demo, and match on action
   name of org.libvirt.api.domain.getattr. Using
   the javascript rules format, this ends up written as
 
diff --git a/docs/api.html.in b/docs/api.html.in
index 27abed6..288b9ec 100644
--- a/docs/api.html.in
+++ b/docs/api.html.in
@@ -155,7 +155,7 @@
   
   
   Enumeration [virConnectList..., virConnectNumOf...]
-  Used to enumerate a set of object available to an given
+  Used to enumerate a set of object available to a given
   hypervisor connection such as:
   
 
diff --git a/docs/contribute.html.in b/docs/contribute.html.in
index 158c91c..42a1b2f 100644
--- a/docs/contribute.html.in
+++ b/docs/contribute.html.in
@@ -80,7 +80,7 @@
 and future growth of the project, that there are a people
 who evangalise the work created by the project. This can
 take many forms, writing blog posts (about usage of features,
-personal user experiances, areas for future work, and more),
+personal user experiences, areas for future work, and more),
 syndicating docs and blogs via social media, giving user
 group and/or conference talks about libvirt.
   User assistance. Since documentation
diff --git a/docs/downloads.html.in b/docs/downloads.html.in
index 8cca203..2956a4f 100644
--- a/docs/downloads.html.in
+++ b/docs/downloads.html.in
@@ -457,7 +457,7 @@
   (first release in the middle of Jan, then skip the Feb release), giving
   a total of 11 releases a year. The Python and Perl modules will aim to
   release at the same time as the core libvirt module. Other modules have
-  independant ad-hoc releases with no fixed time schedle.
+  independent ad-hoc releases with no fixed time schedule.
 
 
 Release numbering
diff --git a/docs/drvbhyve.html.in b/docs/drvbhyve.html.in
index 63260af..bde8298 100644
--- a/docs/drvbhyve.html.in
+++ b/docs/drvbhyve.html.in
@@ -239,7 +239,7 @@ to let a guest boot or start a guest using:
 
 start --console domname
 
-NB: An bootloader configured to require user interaction will prevent
+NB: A bootloader configured to require user interaction will prevent
 the domain from starting (and thus virsh console or start
 --console from functioning) until the user interacts with it manually on
 the VM host. Because users typically do not have access to the VM host,
diff --git a/docs/drvesx.html.in b/docs/drvesx.html.in
index 417aca4..901d659 100644
--- a/docs/drvesx.html.in
+++ b/docs/drvesx.html.in
@@ -437,7 +437,7 @@ ethernet0.checkMACAddress = "false"
 
 auto
 
-This isn't a actual controller model. If specified the ESX driver
+This isn't an actual controller model. If specified the ESX driver
 tries to detect the SCSI controller model referenced in the
 .vmdk file and use it. Autodetection fails when a
 SCSI controller has multiple disks attached and the SCSI controller
diff --git a/docs/drvlxc.html.in b/docs/drvlxc.html.in
index 44c4960..6ee9ee8 100644
--- a/docs/drvlxc.html.in
+++ b/docs/drvlxc.html.in
@@ -429,7 +429,7 @@ be considered secure against exploits of the host OS. The 
sVirt SELinux
 driver provides a way to secure containers even when the "user" namespace
 is not used. The cost is that writing a policy to allow execution of
 arbitrary OS is not practical. The SELinux sVirt policy is typically
-tailored to work with an simpler application confinement use case,
+tailored to work with a simpler application confinement use case,
 as provided by the "libvirt-sandbox" project.
 
 
diff --git a/docs/errors.html.in b/docs/errors.html.in
index 8f4f7d4..ea42728 100644
--- a/docs/errors.html.in
+++ b/docs/errors.html.in
@@ -29,7 +29,7 @@ set specifically to a connection with
 call it with the error informationotherwise call virDefaultErrorFunc
   

Bug#895800: RFP: insomnia -- Intuitive REST API client

2018-04-16 Thread Ville Skyttä
Package: wnpp
Severity: wishlist

https://insomnia.rest/
https://github.com/getinsomnia/insomnia

License: MIT



Bug#895800: RFP: insomnia -- Intuitive REST API client

2018-04-16 Thread Ville Skyttä
Package: wnpp
Severity: wishlist

https://insomnia.rest/
https://github.com/getinsomnia/insomnia

License: MIT



[issue28393] Update encoding lookup docs wrt #27938

2018-04-04 Thread Ville Skyttä

Change by Ville Skyttä <ville.sky...@iki.fi>:


--
pull_requests: +6085

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue28393>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue27938] PyUnicode_AsEncodedString, PyUnicode_Decode: add fast-path for "us-ascii" encoding

2018-04-04 Thread Ville Skyttä

Change by Ville Skyttä <ville.sky...@iki.fi>:


--
pull_requests: +6086

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue27938>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Bug#894834: lintian: [PATCH] Spelling fixes

2018-04-04 Thread Ville Skyttä
Package: lintian
Severity: minor

Patch with spelling fixes against current git master is attached.
>From 9d696a6a60db01b3c069a46a5c33a31e179a8100 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Wed, 4 Apr 2018 20:21:59 +0300
Subject: [PATCH] Spelling fixes

---
 checks/fields.desc   | 4 ++--
 checks/patch-systems.pm  | 2 +-
 checks/python.desc   | 2 +-
 checks/source-copyright.desc | 2 +-
 commands/lintian.pm  | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/checks/fields.desc b/checks/fields.desc
index a832039c3..18f528f30 100644
--- a/checks/fields.desc
+++ b/checks/fields.desc
@@ -1458,7 +1458,7 @@ Info: This package has a relationship with the 
default-mta virtual
  default-mta and mail-transport-agent should only ever be in a set of
  alternatives together, with default-mta listed first.
  .
- Please add a "or" depedency on mail-transport-agent after
+ Please add a "or" dependency on mail-transport-agent after
  default-mta.
 
 Tag: mail-transport-agent-dependency-does-not-specify-default-mta
@@ -1471,7 +1471,7 @@ Info: This package has a relationship with the 
mail-transport-agent
  default-mta and mail-transport-agent should only ever be in a set of
  alternatives together, with default-mta listed first.
  .
- Please add a "or" depedency on default-mta before
+ Please add a "or" dependency on default-mta before
  mail-transport-agent.
 
 Tag: default-mta-dependency-not-listed-first
diff --git a/checks/patch-systems.pm b/checks/patch-systems.pm
index 06e1eaead..c98a33510 100644
--- a/checks/patch-systems.pm
+++ b/checks/patch-systems.pm
@@ -285,7 +285,7 @@ sub check_patch {
 my $tag_emitter
   = spelling_tag_emitter('spelling-error-in-patch-description',
 $patch_file);
-# Check the first line seperately to avoid duplicates
+# Check the first line separately to avoid duplicates
 foreach my $x (split(/\n/, $description, 2)) {
 check_spelling($x, $group->info->spelling_exceptions,$tag_emitter);
 }
diff --git a/checks/python.desc b/checks/python.desc
index c68b94bd3..9b5b9ad16 100644
--- a/checks/python.desc
+++ b/checks/python.desc
@@ -43,7 +43,7 @@ Info: This source package appears to generate the specified 
Python 2 package
  package and, if not, consider removing it.
  .
  Alternatively, ensure that the corresponding package specifies the
- ${python3:Depends} substvar in its binary depedencies.
+ ${python3:Depends} substvar in its binary dependencies.
 
 Tag: build-depends-on-python-sphinx-only
 Severity: normal
diff --git a/checks/source-copyright.desc b/checks/source-copyright.desc
index fbe3034dc..e848c893c 100644
--- a/checks/source-copyright.desc
+++ b/checks/source-copyright.desc
@@ -53,7 +53,7 @@ Severity: pedantic
 Certainty: certain
 Ref: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 Info: Format URI of the machine-readable copyright file uses the plain HTTP
- unencrypted transport protocol.  Using HTTPS is prefered since policy 4.0.0.
+ unencrypted transport protocol.  Using HTTPS is preferred since policy 4.0.0.
  .
  Please use
  
https://www.debian.org/doc/packaging-manuals/copyright-format/version/
diff --git a/commands/lintian.pm b/commands/lintian.pm
index abcfed803..45ee25a18 100755
--- a/commands/lintian.pm
+++ b/commands/lintian.pm
@@ -194,7 +194,7 @@ EOT-EOT-EOT
 print <<"EOT-EOT-EOT";
 --tag-display-limit X Specify "tag per package" display limit
 --no-tag-display-limitDisable "tag per package" display limit
-  (equivalant to --tag-display-limit=0)
+  (equivalent to --tag-display-limit=0)
 EOT-EOT-EOT
 }
 
-- 
2.14.1



Bug#894834: lintian: [PATCH] Spelling fixes

2018-04-04 Thread Ville Skyttä
Package: lintian
Severity: minor

Patch with spelling fixes against current git master is attached.
>From 9d696a6a60db01b3c069a46a5c33a31e179a8100 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Wed, 4 Apr 2018 20:21:59 +0300
Subject: [PATCH] Spelling fixes

---
 checks/fields.desc   | 4 ++--
 checks/patch-systems.pm  | 2 +-
 checks/python.desc   | 2 +-
 checks/source-copyright.desc | 2 +-
 commands/lintian.pm  | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/checks/fields.desc b/checks/fields.desc
index a832039c3..18f528f30 100644
--- a/checks/fields.desc
+++ b/checks/fields.desc
@@ -1458,7 +1458,7 @@ Info: This package has a relationship with the 
default-mta virtual
  default-mta and mail-transport-agent should only ever be in a set of
  alternatives together, with default-mta listed first.
  .
- Please add a "or" depedency on mail-transport-agent after
+ Please add a "or" dependency on mail-transport-agent after
  default-mta.
 
 Tag: mail-transport-agent-dependency-does-not-specify-default-mta
@@ -1471,7 +1471,7 @@ Info: This package has a relationship with the 
mail-transport-agent
  default-mta and mail-transport-agent should only ever be in a set of
  alternatives together, with default-mta listed first.
  .
- Please add a "or" depedency on default-mta before
+ Please add a "or" dependency on default-mta before
  mail-transport-agent.
 
 Tag: default-mta-dependency-not-listed-first
diff --git a/checks/patch-systems.pm b/checks/patch-systems.pm
index 06e1eaead..c98a33510 100644
--- a/checks/patch-systems.pm
+++ b/checks/patch-systems.pm
@@ -285,7 +285,7 @@ sub check_patch {
 my $tag_emitter
   = spelling_tag_emitter('spelling-error-in-patch-description',
 $patch_file);
-# Check the first line seperately to avoid duplicates
+# Check the first line separately to avoid duplicates
 foreach my $x (split(/\n/, $description, 2)) {
 check_spelling($x, $group->info->spelling_exceptions,$tag_emitter);
 }
diff --git a/checks/python.desc b/checks/python.desc
index c68b94bd3..9b5b9ad16 100644
--- a/checks/python.desc
+++ b/checks/python.desc
@@ -43,7 +43,7 @@ Info: This source package appears to generate the specified 
Python 2 package
  package and, if not, consider removing it.
  .
  Alternatively, ensure that the corresponding package specifies the
- ${python3:Depends} substvar in its binary depedencies.
+ ${python3:Depends} substvar in its binary dependencies.
 
 Tag: build-depends-on-python-sphinx-only
 Severity: normal
diff --git a/checks/source-copyright.desc b/checks/source-copyright.desc
index fbe3034dc..e848c893c 100644
--- a/checks/source-copyright.desc
+++ b/checks/source-copyright.desc
@@ -53,7 +53,7 @@ Severity: pedantic
 Certainty: certain
 Ref: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 Info: Format URI of the machine-readable copyright file uses the plain HTTP
- unencrypted transport protocol.  Using HTTPS is prefered since policy 4.0.0.
+ unencrypted transport protocol.  Using HTTPS is preferred since policy 4.0.0.
  .
  Please use
  
https://www.debian.org/doc/packaging-manuals/copyright-format/version/
diff --git a/commands/lintian.pm b/commands/lintian.pm
index abcfed803..45ee25a18 100755
--- a/commands/lintian.pm
+++ b/commands/lintian.pm
@@ -194,7 +194,7 @@ EOT-EOT-EOT
 print <<"EOT-EOT-EOT";
 --tag-display-limit X Specify "tag per package" display limit
 --no-tag-display-limitDisable "tag per package" display limit
-  (equivalant to --tag-display-limit=0)
+  (equivalent to --tag-display-limit=0)
 EOT-EOT-EOT
 }
 
-- 
2.14.1



Bug#848125: Fixed upstream

2018-03-19 Thread Ville Skyttä
This should be fixed upstream (post 2.8 release) as a side effect of:
https://github.com/scop/bash-completion/commit/71ac42b98c0eba39819fb8478d6443032c6ef6f1



Bug#756887: Applied upstream

2018-03-17 Thread Ville Skyttä
Applied upstream, missed today's 2.8 release though:

https://github.com/scop/bash-completion/commit/1404d3f995649e1f70ffbb8239acd585e8246df4



Bug#640217: Implemented upstream

2018-03-17 Thread Ville Skyttä
Implemented upstream now, missed today's 2.8 release though.

https://github.com/scop/bash-completion/commit/c664b07ac98bf46c0ea416161cef0a0dbe11ab50



[PATCH] Spelling fixes

2018-02-07 Thread Ville Skyttä
Signed-off-by: Ville Skyttä <ville.sky...@iki.fi>
---
 INSTALL | 2 +-
 doc/nft.xml | 2 +-
 include/datatype.h  | 2 +-
 src/exthdr.c| 4 ++--
 src/netlink_delinearize.c   | 2 +-
 src/payload.c   | 4 ++--
 tests/py/nft-test.py| 2 +-
 tests/shell/README  | 2 +-
 tests/shell/testcases/include/0012glob_dependency_1 | 2 +-
 tests/shell/testcases/listing/0002ruleset_0 | 2 +-
 10 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/INSTALL b/INSTALL
index e212bac..9475711 100644
--- a/INSTALL
+++ b/INSTALL
@@ -43,7 +43,7 @@ Installation instructions for nftables
 
  --datarootdir=
 
-   The base directory for arch-independant files. Defaults to
+   The base directory for arch-independent files. Defaults to
$prefix/share.
 
  --disable-debug
diff --git a/doc/nft.xml b/doc/nft.xml
index d5b9c27..807c836 100644
--- a/doc/nft.xml
+++ b/doc/nft.xml
@@ -3568,7 +3568,7 @@ inet filter output rt ip6 nexthop fd00::1



vtag
-   
Verfication Tag
+   
Verification Tag
integer 
(32 bit)


diff --git a/include/datatype.h b/include/datatype.h
index e9f6079..cc4cb07 100644
--- a/include/datatype.h
+++ b/include/datatype.h
@@ -129,7 +129,7 @@ enum datatype_flags {
  * @subtypes:  number of subtypes (concat type)
  * @name:  type name
  * @desc:  type description
- * @basetype:  basetype for subtypes, determines type compatibilty
+ * @basetype:  basetype for subtypes, determines type compatibility
  * @basefmt:   format string for basetype
  * @print: function to print a constant of this type
  * @parse: function to parse a symbol and return an expression
diff --git a/src/exthdr.c b/src/exthdr.c
index ac3e163..f5c20ac 100644
--- a/src/exthdr.c
+++ b/src/exthdr.c
@@ -26,8 +26,8 @@
 static void exthdr_expr_print(const struct expr *expr, struct output_ctx *octx)
 {
if (expr->exthdr.op == NFT_EXTHDR_OP_TCPOPT) {
-   /* Offset calcualtion is a bit hacky at this point.
-* There might be an tcp option one day with another
+   /* Offset calculation is a bit hacky at this point.
+* There might be a tcp option one day with another
 * multiplicator
 */
unsigned int offset = expr->exthdr.offset / 64;
diff --git a/src/netlink_delinearize.c b/src/netlink_delinearize.c
index 256552b..6b66257 100644
--- a/src/netlink_delinearize.c
+++ b/src/netlink_delinearize.c
@@ -2173,7 +2173,7 @@ static void stmt_payload_postprocess(struct rule_pp_ctx 
*ctx)
 
 /*
  * We can only remove payload dependencies if they occur without
- * a statment with side effects in between.
+ * a statement with side effects in between.
  *
  * For instance:
  * 'ip protocol tcp tcp dport 22 counter' is same as
diff --git a/src/payload.c b/src/payload.c
index 60090ac..c036da6 100644
--- a/src/payload.c
+++ b/src/payload.c
@@ -429,13 +429,13 @@ void payload_dependency_store(struct payload_dep_ctx *ctx,
 }
 
 /**
- * __payload_dependency_kill - kill a redundant payload depedency
+ * __payload_dependency_kill - kill a redundant payload dependency
  *
  * @ctx: payload dependency context
  * @expr: higher layer payload expression
  *
  * Kill a redundant payload expression if a higher layer payload expression
- * implies its existance.
+ * implies its existence.
  */
 void __payload_dependency_kill(struct payload_dep_ctx *ctx,
   enum proto_bases base)
diff --git a/tests/py/nft-test.py b/tests/py/nft-test.py
index 6aedfb0..87e3d51 100755
--- a/tests/py/nft-test.py
+++ b/tests/py/nft-test.py
@@ -384,7 +384,7 @@ def set_add_elements(set_element, set_name, state, 
filename, lineno):
 print_error(reason, filename, lineno)
 return -1
 
-# Add element into a all_set.
+# Add element into all_set.
 if ret == 0 and state == "ok":
 for e in set_element:
 all_set[set_name].add(e)
diff --git a/tests/shell/README b/tests/shell/README
index 2d8681f..3ffe642 100644
--- a/tests/shell/README
+++ b/tests/shell/README
@@ -10,7 +10,7 @@ To run the test suite (as root):
 
 Test files are executables files with the pattern <>, where N is the
 expected return code of the execut

[PATCH] Python 3.6 invalid escape sequence deprecation fix

2018-01-25 Thread Ville Skyttä
https://docs.python.org/3/whatsnew/3.6.html#deprecated-python-behavior
---
 distro_tracker/vendor/kali/rules.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/distro_tracker/vendor/kali/rules.py 
b/distro_tracker/vendor/kali/rules.py
index 2486569..55d3a81 100644
--- a/distro_tracker/vendor/kali/rules.py
+++ b/distro_tracker/vendor/kali/rules.py
@@ -30,7 +30,7 @@ def classify_message(msg, package, keyword):
 
 # Recognize build logs
 if msg.get('X-Rebuildd-Host'):
-match = re.search('build of (\S+)_', msg.get('Subject'))
+match = re.search(r'build of (\S+)_', msg.get('Subject'))
 if match:
 keyword = 'build'
 package = match.group(1)
-- 
2.14.1



[PATCH] Extract branch info from Vcs-Git, ignore for now

2018-01-16 Thread Ville Skyttä
Closes: #886372
---
 distro_tracker/core/tests/tests_utils.py | 13 +
 distro_tracker/core/utils/packages.py|  8 +++-
 2 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/distro_tracker/core/tests/tests_utils.py 
b/distro_tracker/core/tests/tests_utils.py
index 6ad6f8a..27ec1ac 100644
--- a/distro_tracker/core/tests/tests_utils.py
+++ b/distro_tracker/core/tests/tests_utils.py
@@ -716,6 +716,19 @@ class PackageUtilsTests(SimpleTestCase):
 extract_vcs_information(d)
 )
 
+# Git with branch info
+d = {
+'Vcs-Git': vcs_url + ' -b some-branch'
+}
+self.assertDictEqual(
+{
+'type': 'git',
+'url': vcs_url,
+'branch': 'some-branch',
+},
+extract_vcs_information(d)
+)
+
 # Empty dict
 self.assertDictEqual({}, extract_vcs_information({}))
 # No vcs information in the dict
diff --git a/distro_tracker/core/utils/packages.py 
b/distro_tracker/core/utils/packages.py
index bf9adc3..66004de 100644
--- a/distro_tracker/core/utils/packages.py
+++ b/distro_tracker/core/utils/packages.py
@@ -21,6 +21,7 @@ import os
 import apt
 import shutil
 import apt_pkg
+import re
 import subprocess
 import tarfile
 
@@ -55,7 +56,7 @@ def extract_vcs_information(stanza):
 :type stanza: dict
 
 :returns: VCS information regarding the package. Contains the following
-keys: type[, browser, url]
+keys: type[, browser, url, branch]
 :rtype: dict
 """
 vcs = {}
@@ -66,6 +67,11 @@ def extract_vcs_information(stanza):
 elif key.startswith('vcs-'):
 vcs['type'] = key[4:]
 vcs['url'] = value
+if vcs['type'] == 'git':
+match = re.match(r'(?P.*?)\s+-b\s*(?P\S+)', value)
+if match:
+vcs['url'] = match.group('url')
+vcs['branch'] = match.group('branch')
 return vcs
 
 
-- 
2.14.1



[libvirt] [PATCH perl] block_stats: Fix rd_req and wr_req compat hash keys

2018-01-15 Thread Ville Skyttä
When virDomainBlockStatsFlags with NULL params fails, the returned
read and write requests hash keys are said to be backwards compatible
with the key names success case. However, they were rd_reqs and
wr_reqs (in plural) as opposed to the success case's rd_req and
wr_req.

There is also a similar flush_reqs key, but that one does not have a
corresponding value in the success case's hash, so it is left
unmodified here.
---
 Virt.xs | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Virt.xs b/Virt.xs
index c47b915..a6f0477 100644
--- a/Virt.xs
+++ b/Virt.xs
@@ -5611,9 +5611,9 @@ block_stats(dom, path, flags=0)
   field = NULL;
   /* For back compat with previous hash above */
   if (strcmp(params[i].field, "rd_operations") == 0)
-  field = "rd_reqs";
+  field = "rd_req";
   else if (strcmp(params[i].field, "wr_operations") == 0)
-  field = "wr_reqs";
+  field = "wr_req";
   else if (strcmp(params[i].field, "flush_operations") == 0)
   field = "flush_reqs";
   if (field) {
-- 
2.14.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list


[libvirt] [PATCH perl] Spelling fixes

2018-01-15 Thread Ville Skyttä
---
 Changes |  4 ++--
 HACKING |  4 ++--
 lib/Sys/Virt.pm |  6 +++---
 lib/Sys/Virt/Domain.pm  | 14 +++---
 lib/Sys/Virt/Interface.pm   |  2 +-
 lib/Sys/Virt/NWFilter.pm|  2 +-
 lib/Sys/Virt/Network.pm |  4 ++--
 lib/Sys/Virt/NodeDevice.pm  |  4 ++--
 lib/Sys/Virt/Secret.pm  |  4 ++--
 lib/Sys/Virt/StoragePool.pm |  4 ++--
 lib/Sys/Virt/StorageVol.pm  |  8 
 lib/Sys/Virt/Stream.pm  |  2 +-
 12 files changed, 29 insertions(+), 29 deletions(-)

diff --git a/Changes b/Changes
index 96b42f8..0571cf8 100644
--- a/Changes
+++ b/Changes
@@ -472,7 +472,7 @@ Revision history for perl module Sys::Virt
 0.2.6 2011-02-16
 
  - Fix build with 0.8.7 libvirt by removing reference to
-   non-existant constant only introduced in libvirt > 0.8.7
+   non-existent constant only introduced in libvirt > 0.8.7
  - Fix test script when hostname is undefined
 
 0.2.5 2011-02-04
@@ -533,7 +533,7 @@ Revision history for perl module Sys::Virt
  - Added networking APIs
  - Added APIs for host capabilities
  - Added APIs for inactive domains
- - Switch licensse to GPLv2+ or Artistic for CPAN compatability
+ - Switch licensse to GPLv2+ or Artistic for CPAN compatibility
  - Fix return values for reboot/shutdown/undefine/create APIs
  - Expanded documentation coverage
 
diff --git a/HACKING b/HACKING
index bb8b0f0..bfd1212 100644
--- a/HACKING
+++ b/HACKING
@@ -15,7 +15,7 @@ Additions to the libvirt C API will require changes to a 
minimum
 of two parts of the Sys::Virt codebase.
 
  - Virt.xs - this provides the C glue code to access the libvirt C
-   library APIs and constants from the Perl interpretor. As a general
+   library APIs and constants from the Perl interpreter. As a general
rule, every new function and header file constant/enum requires an
addition to this file.  The exceptions are functions that are only
provided for the benefit of language bindings and not intended for
@@ -93,7 +93,7 @@ effective way to update the Perl binding.
  - For each missing item reported in the test suite...
 
  - Edit Virt.xs to add the C binding
- - Edit lib/*.pm to add the POD documentation (and occassionally Perl glue 
code)
+ - Edit lib/*.pm to add the POD documentation (and occasionally Perl glue 
code)
  - Edit Changes to document the addition
  - Run the test suite (without maintainer mode) to verify POD docs
  # ../libvirt/run make test
diff --git a/lib/Sys/Virt.pm b/lib/Sys/Virt.pm
index 2ce7ed5..faaf668 100644
--- a/lib/Sys/Virt.pm
+++ b/lib/Sys/Virt.pm
@@ -135,7 +135,7 @@ types that will be supported. The credential constants in
 this module can be used as values in this list. The C
 parameter should be a subroutine reference containing the
 code necessary to gather the credentials. When invoked it
-will be supplied with a single parameter, a array reference
+will be supplied with a single parameter, an array reference
 of requested credentials. The elements of the array are
 hash references, with keys C giving the type of
 credential, C giving a user descriptive user
@@ -1164,7 +1164,7 @@ pool sources.
 
 =item my @stats = $vmm->get_all_domain_stats($stats, \@doms=undef, $flags=0);
 
-Get an list of all statistics for domains known to the hypervisor.
+Get a list of all statistics for domains known to the hypervisor.
 The C<$stats> parameter controls which data fields to return and
 should be a combination of the DOMAIN STATS FIELD CONSTANTS.
 
@@ -1469,7 +1469,7 @@ how long the node is suspended for before waking up.
 
 =item $conn->domain_event_register($callback)
 
-Register a callback to received notificaitons of domain state change
+Register a callback to received notifications of domain state change
 events. Only a single callback can be registered with each connection
 instance. The callback will be invoked with four parameters, an
 instance of C for the connection, an instance of 
C
diff --git a/lib/Sys/Virt/Domain.pm b/lib/Sys/Virt/Domain.pm
index 38b9c9b..7b90b68 100644
--- a/lib/Sys/Virt/Domain.pm
+++ b/lib/Sys/Virt/Domain.pm
@@ -45,7 +45,7 @@ sub _new {
 my $class = ref($proto) || $proto;
 my %params = @_;
 
-my $con = exists $params{connection} ? $params{connection} : die 
"connection parameter is requried";
+my $con = exists $params{connection} ? $params{connection} : die 
"connection parameter is required";
 my $self;
 if (exists $params{name}) {
$self = Sys::Virt::Domain::_lookup_by_name($con,  $params{name});
@@ -490,7 +490,7 @@ One of the CONTROL INFO constants listed later
 
 =item C
 
-Currently unsed, always 0.
+Currently unused, always 0.
 
 =item C
 
@@ -658,7 +658,7 @@ later.
 
 =item $dom->detach_device($xml[, $flags])
 
-Hotunplug a existing device whose configuration is given by C<$xml>,
+Hotunplug an existing device whose configuration is given by C<$xml>,
 from the running guest. The optional <$flags> parameter defaults
 to 0, but can accept one of 

Re: [PATCH] Exclude .tox, distro_tracker/vendor, and docs/conf.py from flake8

2017-12-19 Thread Ville Skyttä
On Tue, Dec 19, 2017 at 11:13 AM, Raphael Hertzog <hert...@debian.org> wrote:
> On Mon, 18 Dec 2017, Ville Skyttä wrote:
>> -exclude = 
>> .git,.ropeproject,__pycache__,distro_tracker/project/settings/local.py,*/migrations/*.py
>> +exclude = 
>> .git,.ropeproject,.tox,__pycache__,distro_tracker/project/settings/local.py,distro_tracker/vendor,docs/conf.py,*/migrations/*.py
>
> Ok, for .tox and docs/conf.py. But why distro_tracker/vendor?

Without having had a closer look, I assumed that the vendor dir is for
"vendored" packages, i.e. bundled ones from other upstreams, but that
seems wrong. Updated patch attached.

> And why is it needed at all? I was not getting any warning from those
> directories (I see a few errors currently with the latest version of
> flake8, but not specially in the above directories).

I see a bunch of errors related to use of bare except there. Full list
attached, generated with:
$ flake8 --version
3.5.0 (flake8-bugbear: 17.12.0, mccabe: 0.6.1, pycodestyle: 2.3.1,
pyflakes: 1.6.0) CPython 3.6.3 on Linux
./setup.py:9:1: E302 expected 2 blank lines, found 1
./setup.py:12:22: E225 missing whitespace around operator
./setup.py:42:81: E501 line too long (81 > 80 characters)
./setup.py:47:9: E121 continuation line under-indented for hanging indent
./setup.py:52:6: E124 closing bracket does not match visual indentation
./setup.py:60:9: E121 continuation line under-indented for hanging indent
./setup.py:65:6: E124 closing bracket does not match visual indentation
./manage.py:17:81: E501 line too long (86 > 80 characters)
./distro_tracker/accounts/views.py:194:36: B306 `BaseException.message` has 
been deprecated as of Python 2.6 and is removed in Python 3. Use `str(e)` to 
access the user-readable message. Use `e.args` to access arguments passed to 
the exception.
./distro_tracker/core/panels.py:727:13: E722 do not use bare except'
./distro_tracker/core/panels.py:727:13: B001 Do not use bare `except:`, it also 
catches unexpected events like memory errors, interrupts, system exit, and so 
on.  Prefer `except Exception:`.  If you're sure what you're doing, be explicit 
and write `except BaseException:`.
./distro_tracker/core/retrieve_data.py:60:5: E722 do not use bare except'
./distro_tracker/core/retrieve_data.py:60:5: B001 Do not use bare `except:`, it 
also catches unexpected events like memory errors, interrupts, system exit, and 
so on.  Prefer `except Exception:`.  If you're sure what you're doing, be 
explicit and write `except BaseException:`.
./distro_tracker/core/admin.py:73:5: E722 do not use bare except'
./distro_tracker/core/admin.py:73:5: B001 Do not use bare `except:`, it also 
catches unexpected events like memory errors, interrupts, system exit, and so 
on.  Prefer `except Exception:`.  If you're sure what you're doing, be explicit 
and write `except BaseException:`.
./distro_tracker/core/models.py:2021:9: E722 do not use bare except'
./distro_tracker/core/models.py:2021:9: B001 Do not use bare `except:`, it also 
catches unexpected events like memory errors, interrupts, system exit, and so 
on.  Prefer `except Exception:`.  If you're sure what you're doing, be explicit 
and write `except BaseException:`.
./distro_tracker/core/management/commands/tracker_run_task.py:56:13: E722 do 
not use bare except'
./distro_tracker/core/management/commands/tracker_run_task.py:56:13: B001 Do 
not use bare `except:`, it also catches unexpected events like memory errors, 
interrupts, system exit, and so on.  Prefer `except Exception:`.  If you're 
sure what you're doing, be explicit and write `except BaseException:`.
./distro_tracker/core/tests/tests_utils.py:599:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:602:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:605:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:612:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:630:25: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:632:26: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:634:25: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:635:26: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_utils.py:668:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_models.py:127:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_models.py:128:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/tests/tests_models.py:139:9: E741 ambiguous variable name 
'l'
./distro_tracker/core/utils/__init__.py:97:24: E741 ambiguous variable name 'l'
./distro_tracker/core/utils/http.py:225:9: E722 do not use bare except'
./distro_tracker/core/utils/http.py:225:9: B001 Do not use bare `except:`, it 
also catches unexpected events like memory errors, interrupts, system exit, and 
so on

[PATCH] Exclude .tox, distro_tracker/vendor, and docs/conf.py from flake8

2017-12-18 Thread Ville Skyttä
---
 tox.ini | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tox.ini b/tox.ini
index b8da0bd..04e5e39 100644
--- a/tox.ini
+++ b/tox.ini
@@ -57,7 +57,7 @@ deps =
 [flake8]
 max-complexity = 12
 max-line-length = 80
-exclude = 
.git,.ropeproject,__pycache__,distro_tracker/project/settings/local.py,*/migrations/*.py
+exclude = 
.git,.ropeproject,.tox,__pycache__,distro_tracker/project/settings/local.py,distro_tracker/vendor,docs/conf.py,*/migrations/*.py
 ignore = N813,N806,N802
 
 [testenv:coverage]
-- 
2.14.1



[PATCH] Fix functional_tests.tests unittest.mock import

2017-12-16 Thread Ville Skyttä
---
 functional_tests/tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/functional_tests/tests.py b/functional_tests/tests.py
index 2914ee4..08b6bcf 100644
--- a/functional_tests/tests.py
+++ b/functional_tests/tests.py
@@ -33,7 +33,7 @@ from selenium import webdriver
 from selenium.common.exceptions import NoSuchElementException
 import selenium.webdriver.support.ui as ui
 from selenium.webdriver.common.keys import Keys
-from unitest import mock
+from unittest import mock
 import os
 import time
 
-- 
2.14.1



Bug#884559: lintian: Run png's through zopflipng

2017-12-16 Thread Ville Skyttä
Package: lintian
Version: 2.5.55
Severity: minor

Dear Maintainer,

Running *.png through zopflipng would save a bit in file sizes, see
attached patch.

-- System Information:
Debian Release: stretch/sid
  APT prefers artful-updates
  APT policy: (500, 'artful-updates'), (500, 'artful-security'), (500, 
'artful'), (100, 'artful-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.13.0-19-generic (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages lintian depends on:
ii  binutils  2.29.1-4ubuntu1
ii  bzip2 1.0.6-8.1
ii  diffstat  1.61-1build1
ii  dpkg  1.18.24ubuntu1
ii  file  1:5.32-1
ii  gettext   0.19.8.1-4ubuntu1
ii  intltool-debian   0.35.0+20060710.4
ii  libapt-pkg-perl   0.1.33
ii  libarchive-zip-perl   1.59-1
ii  libclass-accessor-perl0.34-1
ii  libclone-perl 0.38-2build2
ii  libdpkg-perl  1.18.24ubuntu1
ii  libemail-valid-perl   1.202-1
ii  libfile-basedir-perl  0.07-1
ii  libipc-run-perl   0.96-1
ii  liblist-moreutils-perl0.416-1build3
ii  libparse-debianchangelog-perl 1.2.0-12
ii  libperl5.26 [libdigest-sha-perl]  5.26.0-8ubuntu1
ii  libtext-levenshtein-perl  0.13-1
ii  libtimedate-perl  2.3000-2
ii  liburi-perl   1.72-1
ii  libxml-simple-perl2.24-1
ii  libyaml-libyaml-perl  0.63-2build1
ii  man-db2.7.6.1-2
ii  patchutils0.3.4-2
ii  perl  5.26.0-8ubuntu1
ii  t1utils   1.40-2
ii  xz-utils  5.2.2-1.3

Versions of packages lintian recommends:
ii  libperlio-gzip-perl  0.19-1build3

Versions of packages lintian suggests:
pn  binutils-multiarch 
ii  dpkg-dev   1.18.24ubuntu1
ii  libhtml-parser-perl3.72-3build1
ii  libtext-template-perl  1.46-1

-- no debconf information
>From 5f53621e44b774fdba02b9edf585859f5fef21c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Sat, 16 Dec 2017 22:55:25 +0200
Subject: [PATCH] Run reporting/images/*.png through zopflipng -m

---
 reporting/images/ico.png| Bin 355 -> 230 bytes
 reporting/images/l.png  | Bin 1588 -> 669 bytes
 reporting/images/logo-small.png | Bin 3828 -> 2830 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

diff --git a/reporting/images/ico.png b/reporting/images/ico.png
index 
cd7355d7526b1ff1222b69fade9fd3d202230271..e78bd5bf286a83614134b6decf5681d49428eb77
 100644
GIT binary patch
delta 202
zcmV;*05$*P0_FjbB!8_*L_t(|0b`

Bug#884559: lintian: Run png's through zopflipng

2017-12-16 Thread Ville Skyttä
Package: lintian
Version: 2.5.55
Severity: minor

Dear Maintainer,

Running *.png through zopflipng would save a bit in file sizes, see
attached patch.

-- System Information:
Debian Release: stretch/sid
  APT prefers artful-updates
  APT policy: (500, 'artful-updates'), (500, 'artful-security'), (500, 
'artful'), (100, 'artful-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.13.0-19-generic (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages lintian depends on:
ii  binutils  2.29.1-4ubuntu1
ii  bzip2 1.0.6-8.1
ii  diffstat  1.61-1build1
ii  dpkg  1.18.24ubuntu1
ii  file  1:5.32-1
ii  gettext   0.19.8.1-4ubuntu1
ii  intltool-debian   0.35.0+20060710.4
ii  libapt-pkg-perl   0.1.33
ii  libarchive-zip-perl   1.59-1
ii  libclass-accessor-perl0.34-1
ii  libclone-perl 0.38-2build2
ii  libdpkg-perl  1.18.24ubuntu1
ii  libemail-valid-perl   1.202-1
ii  libfile-basedir-perl  0.07-1
ii  libipc-run-perl   0.96-1
ii  liblist-moreutils-perl0.416-1build3
ii  libparse-debianchangelog-perl 1.2.0-12
ii  libperl5.26 [libdigest-sha-perl]  5.26.0-8ubuntu1
ii  libtext-levenshtein-perl  0.13-1
ii  libtimedate-perl  2.3000-2
ii  liburi-perl   1.72-1
ii  libxml-simple-perl2.24-1
ii  libyaml-libyaml-perl  0.63-2build1
ii  man-db2.7.6.1-2
ii  patchutils0.3.4-2
ii  perl  5.26.0-8ubuntu1
ii  t1utils   1.40-2
ii  xz-utils  5.2.2-1.3

Versions of packages lintian recommends:
ii  libperlio-gzip-perl  0.19-1build3

Versions of packages lintian suggests:
pn  binutils-multiarch 
ii  dpkg-dev   1.18.24ubuntu1
ii  libhtml-parser-perl3.72-3build1
ii  libtext-template-perl  1.46-1

-- no debconf information
>From 5f53621e44b774fdba02b9edf585859f5fef21c0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Sat, 16 Dec 2017 22:55:25 +0200
Subject: [PATCH] Run reporting/images/*.png through zopflipng -m

---
 reporting/images/ico.png| Bin 355 -> 230 bytes
 reporting/images/l.png  | Bin 1588 -> 669 bytes
 reporting/images/logo-small.png | Bin 3828 -> 2830 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

diff --git a/reporting/images/ico.png b/reporting/images/ico.png
index 
cd7355d7526b1ff1222b69fade9fd3d202230271..e78bd5bf286a83614134b6decf5681d49428eb77
 100644
GIT binary patch
delta 202
zcmV;*05$*P0_FjbB!8_*L_t(|0b`

[issue28393] Update encoding lookup docs wrt #27938

2017-12-14 Thread Ville Skyttä

Ville Skyttä <ville.sky...@iki.fi> added the comment:

I'm getting a 500 internatl server error trying to update 
https://bugs.python.org/review/28393/, so noting here that the latest review 
issue has been addressed in https://github.com/python/cpython/pull/4871

--

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue28393>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue27938] PyUnicode_AsEncodedString, PyUnicode_Decode: add fast-path for "us-ascii" encoding

2017-12-14 Thread Ville Skyttä

Change by Ville Skyttä <ville.sky...@iki.fi>:


--
pull_requests: +4763

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue27938>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28393] Update encoding lookup docs wrt #27938

2017-12-14 Thread Ville Skyttä

Change by Ville Skyttä <ville.sky...@iki.fi>:


--
pull_requests: +4762

___
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue28393>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



Re: [PATCH] Use debianbts instead of SOAPpy

2017-11-07 Thread Ville Skyttä
On Wed, Nov 1, 2017 at 10:51 PM, Ville Skyttä <ville.sky...@iki.fi> wrote:
> On Wed, Nov 1, 2017 at 12:52 PM, Raphael Hertzog <hert...@debian.org> wrote:
>> On Tue, 31 Oct 2017, Ville Skyttä wrote:
>>> This switches to using debianbts instead of SOAPpy. To be applied over
>>> the LDAP->nm.d.o REST patch in https://bugs.debian.org/797223#10
>>
>> Thanks for this. Right now tracker.debian.org still runs jessie. Do
>> you know if your code works with python-debianbts 1.12 from jessie or if
>> I need to request the installation from jessie-backports ? (which has
>> 2.6.1~bpo8+1)
>
> I don't know; while doing the port I skimmed through old
> python-debianbts tags at GitHub, and IIRC all needed functions have
> always been there, which is why I didn't add any version to the
> dependency. All the testing I've done has been with the 2.6.1 shipping
> with Ubuntu 17.10.

Tested locally using jessie docker image + django 1.8 from backports
(so this is with debianbts 1.12): success, works.

Attached is a small patch on top of the previous one: 'fixed' is not a
documented value for a pending bug, 'done' is. Just happened to
notice, but did not see any effect in cases I tested with.
From baaa91765aab70e6bfbd6bf1bc125dc67816829e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= <ville.sky...@iki.fi>
Date: Tue, 7 Nov 2017 22:49:34 +0200
Subject: [PATCH 2/2] BTS: Check for pending == 'done' instead of 'fixed'

https://wiki.debian.org/DebbugsSoapInterface#line-55
---
 distro_tracker/vendor/debian/tracker_tasks.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/distro_tracker/vendor/debian/tracker_tasks.py b/distro_tracker/vendor/debian/tracker_tasks.py
index 3478c06..3dc8d3b 100644
--- a/distro_tracker/vendor/debian/tracker_tasks.py
+++ b/distro_tracker/vendor/debian/tracker_tasks.py
@@ -247,7 +247,7 @@ class UpdatePackageBugStats(BaseTask):
 bug_stats = {}
 bugs = debianbts.get_status(*bug_numbers)
 for bug in bugs:
-if bug.done or bug.fixed_versions or bug.pending == 'fixed':
+if bug.done or bug.fixed_versions or bug.pending == 'done':
 continue
 
 bug_stats.setdefault(bug.package, 0)
-- 
2.14.1



Re: Packages looking for new maintainers

2017-11-05 Thread Ville Skyttä
The following packages have been orphaned now:

- isrcsubmit
- mbox2eml
- modplugtools
- portecle
- python-flake8-import-order
- vdr-epgfixer
- vdr-ttxtsubs
- zopfli
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org


Re: [PATCH] Fix Standards-Version links

2017-11-02 Thread Ville Skyttä
On Thu, Nov 2, 2017 at 12:15 PM, Raphael Hertzog <hert...@debian.org> wrote:
>
> On Wed, 01 Nov 2017, Ville Skyttä wrote:
> > --- 
> > a/distro_tracker/stdver_warnings/templates/stdver_warnings/standards-version-action-item.html
> > +++ 
> > b/distro_tracker/stdver_warnings/templates/stdver_warnings/standards-version-action-item.html
> > @@ -1,11 +1,9 @@
> > -{% with lastsv=item.extra_data.lastsv %}
> > -{% with standards_version=item.extra_data.standards_version %}
>
> You missed to drop the corresponding {% endwith %}. Otherwise it looks
> good. I merged your patch with the endwith dropped.

Ah, classic last minute change done after doing the actual testing.
Thanks for noticing and taking care of it.



[PATCH] Let logging format messages on demand

2017-11-01 Thread Ville Skyttä
---
 distro_tracker/core/tasks.py  |  7 +++
 distro_tracker/vendor/debian/tracker_tasks.py | 15 +++
 2 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/distro_tracker/core/tasks.py b/distro_tracker/core/tasks.py
index f8f283c..3995c80 100644
--- a/distro_tracker/core/tasks.py
+++ b/distro_tracker/core/tasks.py
@@ -516,11 +516,10 @@ class Job(object):
 # Inject additional parameters, if any
 if parameters:
 task.set_parameters(parameters)
-logger.info("Starting task {task}".format(
-task=task.task_name()))
+logger.info("Starting task %s", task.task_name())
 task.execute()
-logger.info("Successfully executed task {task}".format(
-task=task.task_name()))
+logger.info("Successfully executed task %s",
+task.task_name())
 except Exception:
 logger.exception("Problem processing a task.")
 # Update dependent tasks based on events raised.
diff --git a/distro_tracker/vendor/debian/tracker_tasks.py 
b/distro_tracker/vendor/debian/tracker_tasks.py
index 0a7b185..9f044c3 100644
--- a/distro_tracker/vendor/debian/tracker_tasks.py
+++ b/distro_tracker/vendor/debian/tracker_tasks.py
@@ -431,8 +431,8 @@ class UpdatePackageBugStats(BaseTask):
 bug_counts = [int(count) for count in bug_counts]
 except ValueError:
 logger.warning(
-'Failed to parse bug information for {pkg}: {cnts}'.format(
-pkg=package_name, cnts=bug_counts), exc_info=1)
+'Failed to parse bug information for %s: %s',
+package_name, bug_counts, exc_info=1)
 continue
 
 # Match the extracted counts with category names
@@ -520,8 +520,8 @@ class UpdatePackageBugStats(BaseTask):
 bug_counts = [int(count) for count in bug_counts]
 except ValueError:
 logger.exception(
-'Failed to parse bug information for {pkg}: {cnts}'.format(
-pkg=package_name, cnts=bug_counts))
+'Failed to parse bug information for %s: %s',
+package_name, bug_counts)
 continue
 
 bug_stats[package_name] = [
@@ -598,9 +598,8 @@ class UpdateLintianStatsTask(BaseTask):
 }
 except ValueError:
 logger.exception(
-'Failed to parse lintian information for {pkg}: '
-'{line}'.format(
-pkg=package, line=line))
+'Failed to parse lintian information for %s: %s',
+package, line)
 continue
 
 return all_stats
@@ -1507,7 +1506,7 @@ class UpdatePiuPartsTask(BaseTask):
 for suite in suites:
 content = self._get_piuparts_content(suite)
 if content is None:
-logger.info("There is no piuparts for suite: {}".format(suite))
+logger.info("There is no piuparts for suite: %s", suite)
 continue
 
 for line in content.splitlines():
-- 
2.14.1



Re: [PATCH] Use debianbts instead of SOAPpy

2017-11-01 Thread Ville Skyttä
On Wed, Nov 1, 2017 at 12:52 PM, Raphael Hertzog <hert...@debian.org> wrote:
> On Tue, 31 Oct 2017, Ville Skyttä wrote:
>> This switches to using debianbts instead of SOAPpy. To be applied over
>> the LDAP->nm.d.o REST patch in https://bugs.debian.org/797223#10
>
> Thanks for this. Right now tracker.debian.org still runs jessie. Do
> you know if your code works with python-debianbts 1.12 from jessie or if
> I need to request the installation from jessie-backports ? (which has
> 2.6.1~bpo8+1)

I don't know; while doing the port I skimmed through old
python-debianbts tags at GitHub, and IIRC all needed functions have
always been there, which is why I didn't add any version to the
dependency. All the testing I've done has been with the 2.6.1 shipping
with Ubuntu 17.10.

Attached is a revised version of the patch: adds tox.ini
modifications, no other changes.
From 91a7d107f3a0f3949a1f4b8c03db6dad193db2e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= <ville.sky...@iki.fi>
Date: Tue, 31 Oct 2017 08:44:42 +0200
Subject: [PATCH] Use debianbts instead of SOAPpy

---
 TODO  |  3 ---
 debian/control|  4 ++--
 distro_tracker/vendor/debian/tracker_tasks.py | 30 ++-
 docs/setup/setup.rst  |  4 ++--
 tox.ini   |  2 +-
 5 files changed, 16 insertions(+), 27 deletions(-)

diff --git a/TODO b/TODO
index 87d41fd..d5d2851 100644
--- a/TODO
+++ b/TODO
@@ -16,9 +16,6 @@ Misc possible enhancements:
 * Add a subscriber count on each package page (and put
   subscription-related actions in the same panel).
 * Paul Wise's input: https://lists.debian.org/debian-qa/2014/07/msg00092.html
-* Codebase is Python 3 compatible but some optional dependencies need to
-  be ported:
-  - python-soappy => switch to pysimplesoap
 * Re-enable a smarter clickjacking protection: only activate it when the
   page is rendered for a logged in user and allow callers to pass a
   "anonymous=1" parameter that will force render the web page as if
diff --git a/debian/control b/debian/control
index a5189e6..3a7373c 100644
--- a/debian/control
+++ b/debian/control
@@ -12,13 +12,13 @@ Build-Depends: debhelper (>= 9),
 python-apt,
 python-bs4,
 python-debian,
+python-debianbts,
 python-django (>= 1.8),
 python-django-jsonfield,
 python-django-captcha,
 python-gpgme,
 python-lzma,
 python-requests (>= 2),
-python-soappy,
 python-yaml,
 python-pyinotify,
 Standards-Version: 3.9.5
@@ -59,12 +59,12 @@ Depends: ${python:Depends},
 python-apt,
 python-beautifulsoup,
 python-debian,
+python-debianbts,
 python-django (>= 1.8),
 python-django-jsonfield,
 python-gpgme,
 python-lzma,
 python-requests (>= 2),
-python-soappy,
 python-yaml,
 python-pyinotify,
 ${misc:Depends}
diff --git a/distro_tracker/vendor/debian/tracker_tasks.py b/distro_tracker/vendor/debian/tracker_tasks.py
index 0a7b185..bf4d4b8 100644
--- a/distro_tracker/vendor/debian/tracker_tasks.py
+++ b/distro_tracker/vendor/debian/tracker_tasks.py
@@ -56,7 +56,7 @@ from bs4 import BeautifulSoup as soup
 import yaml
 
 try:
-import SOAPpy
+import debianbts
 except ImportError:
 pass
 
@@ -222,7 +222,7 @@ class UpdatePackageBugStats(BaseTask):
 
 def _get_tagged_bug_stats(self, tag, user=None):
 """
-Using the BTS SOAP interface, retrieves the statistics of bugs with a
+Using the BTS interface, retrieves the statistics of bugs with a
 particular tag.
 
 :param tag: The tag for which the statistics are required.
@@ -237,29 +237,21 @@ class UpdatePackageBugStats(BaseTask):
 debian_ca_bundle = '/etc/ssl/ca-debian/ca-certificates.crt'
 if os.path.exists(debian_ca_bundle):
 os.environ['SSL_CERT_FILE'] = debian_ca_bundle
-url = 'https://bugs.debian.org/cgi-bin/soap.cgi'
-namespace = 'Debbugs/SOAP'
-server = SOAPpy.SOAPProxy(url, namespace)
 if user:
-bugs = server.get_usertag(user, tag)
-bugs = bugs[0]
+bug_numbers = debianbts.get_usertag(user, tag).values()
 else:
-bugs = server.get_bugs('tag', tag)
+bug_numbers = debianbts.get_bugs('tag', tag)
 
 # Match each retrieved bug ID to a package and then find the aggregate
 # count for each package.
 bug_stats = {}
-statuses = server.get_status(bugs)
-statuses = statuses[0]
-for status in statuses:
-status = status['value']
-if status['done'] or status['fixed'] or \
-status['pending'] == 'fixed':
+bugs = debianbts.get_status(*bug_numbers)
+for bug in bugs:
+if bug.done or bug.fixed_versions or bug.pen

[PATCH] Support chromedriver installed in /usr/lib/chromium-browser

2017-11-01 Thread Ville Skyttä
Ubuntu ships it there.
---
 functional_tests/tests.py | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/functional_tests/tests.py b/functional_tests/tests.py
index b165c93..1600f39 100644
--- a/functional_tests/tests.py
+++ b/functional_tests/tests.py
@@ -47,7 +47,10 @@ class SeleniumTestCase(LiveServerTestCase):
 def setUp(self):
 os.environ['NO_PROXY'] = 'localhost,127.0.0.1,127.0.1.1'
 
-chromedriver = "/usr/lib/chromium/chromedriver"
+for path in "/usr/lib/chromium-browser", "/usr/lib/chromium":
+chromedriver = os.path.join(path, "chromedriver")
+if os.path.exists(chromedriver):
+break
 os.environ["webdriver.chrome.driver"] = chromedriver
 self.browser = webdriver.Chrome(chromedriver)
 self.browser.implicitly_wait(3)
-- 
2.14.1



[PATCH] Fix Standards-Version links

2017-11-01 Thread Ville Skyttä
---
 .../templates/stdver_warnings/standards-version-action-item.html| 6 ++
 distro_tracker/stdver_warnings/tracker_tasks.py | 2 ++
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/distro_tracker/stdver_warnings/templates/stdver_warnings/standards-version-action-item.html
 
b/distro_tracker/stdver_warnings/templates/stdver_warnings/standards-version-action-item.html
index aeffa81..6dc41b5 100644
--- 
a/distro_tracker/stdver_warnings/templates/stdver_warnings/standards-version-action-item.html
+++ 
b/distro_tracker/stdver_warnings/templates/stdver_warnings/standards-version-action-item.html
@@ -1,11 +1,9 @@
-{% with lastsv=item.extra_data.lastsv %}
-{% with standards_version=item.extra_data.standards_version %}
 {% if item.extra_data.severely_outdated %}
 The package is severely out of date with respect to the Debian 
Policy.
 {% endif %}
 The package should be updated to follow the last version of https://www.debian.org/doc/debian-policy/;>Debian Policy
-(Standards-Version https://www.debian.org/doc/debian-policy/upgrading-checklist.html#s-{{ 
lastsv }}.0">{{ lastsv }} instead of
-https://www.debian.org/doc/debian-policy/upgrading-checklist.html#s-{{ 
standards_version }}.0">{{ standards_version }}).
+(Standards-Version https://www.debian.org/doc/debian-policy/#version-{{ 
item.extra_data.lastsv_dashes|urlencode:'' }}">{{ item.extra_data.lastsv }} 
instead of
+https://www.debian.org/doc/debian-policy/#version-{{ 
item.extra_data.standards_version_dashes|urlencode:'' }}">{{ 
item.extra_data.standards_version }}).
 
 {% endwith %}
 {% endwith %}
diff --git a/distro_tracker/stdver_warnings/tracker_tasks.py 
b/distro_tracker/stdver_warnings/tracker_tasks.py
index 8c5ea5d..6102706 100644
--- a/distro_tracker/stdver_warnings/tracker_tasks.py
+++ b/distro_tracker/stdver_warnings/tracker_tasks.py
@@ -113,7 +113,9 @@ class UpdateStandardsVersionWarnings(BaseTask):
 action_item.short_description = self.ITEM_DESCRIPTION
 action_item.extra_data = {
 'lastsv': policy_version,
+'lastsv_dashes': policy_version.replace('.', '-'),
 'standards_version': standards_version,
+'standards_version_dashes': standards_version.replace('.', '-'),
 'severely_outdated': severely_outdated,
 }
 action_item.save()
-- 
2.14.1



[PATCH] Use debianbts instead of SOAPpy

2017-10-31 Thread Ville Skyttä
This switches to using debianbts instead of SOAPpy. To be applied over
the LDAP->nm.d.o REST patch in https://bugs.debian.org/797223#10



[PATCH] Use debianbts instead of SOAPpy

2017-10-31 Thread Ville Skyttä
---
 TODO  |  3 ---
 debian/control|  4 ++--
 distro_tracker/vendor/debian/tracker_tasks.py | 30 ++-
 docs/setup/setup.rst  |  4 ++--
 4 files changed, 15 insertions(+), 26 deletions(-)

diff --git a/TODO b/TODO
index 87d41fd..d5d2851 100644
--- a/TODO
+++ b/TODO
@@ -16,9 +16,6 @@ Misc possible enhancements:
 * Add a subscriber count on each package page (and put
   subscription-related actions in the same panel).
 * Paul Wise's input: https://lists.debian.org/debian-qa/2014/07/msg00092.html
-* Codebase is Python 3 compatible but some optional dependencies need to
-  be ported:
-  - python-soappy => switch to pysimplesoap
 * Re-enable a smarter clickjacking protection: only activate it when the
   page is rendered for a logged in user and allow callers to pass a
   "anonymous=1" parameter that will force render the web page as if
diff --git a/debian/control b/debian/control
index a5189e6..3a7373c 100644
--- a/debian/control
+++ b/debian/control
@@ -12,13 +12,13 @@ Build-Depends: debhelper (>= 9),
 python-apt,
 python-bs4,
 python-debian,
+python-debianbts,
 python-django (>= 1.8),
 python-django-jsonfield,
 python-django-captcha,
 python-gpgme,
 python-lzma,
 python-requests (>= 2),
-python-soappy,
 python-yaml,
 python-pyinotify,
 Standards-Version: 3.9.5
@@ -59,12 +59,12 @@ Depends: ${python:Depends},
 python-apt,
 python-beautifulsoup,
 python-debian,
+python-debianbts,
 python-django (>= 1.8),
 python-django-jsonfield,
 python-gpgme,
 python-lzma,
 python-requests (>= 2),
-python-soappy,
 python-yaml,
 python-pyinotify,
 ${misc:Depends}
diff --git a/distro_tracker/vendor/debian/tracker_tasks.py 
b/distro_tracker/vendor/debian/tracker_tasks.py
index 0a7b185..bf4d4b8 100644
--- a/distro_tracker/vendor/debian/tracker_tasks.py
+++ b/distro_tracker/vendor/debian/tracker_tasks.py
@@ -56,7 +56,7 @@ from bs4 import BeautifulSoup as soup
 import yaml
 
 try:
-import SOAPpy
+import debianbts
 except ImportError:
 pass
 
@@ -222,7 +222,7 @@ class UpdatePackageBugStats(BaseTask):
 
 def _get_tagged_bug_stats(self, tag, user=None):
 """
-Using the BTS SOAP interface, retrieves the statistics of bugs with a
+Using the BTS interface, retrieves the statistics of bugs with a
 particular tag.
 
 :param tag: The tag for which the statistics are required.
@@ -237,29 +237,21 @@ class UpdatePackageBugStats(BaseTask):
 debian_ca_bundle = '/etc/ssl/ca-debian/ca-certificates.crt'
 if os.path.exists(debian_ca_bundle):
 os.environ['SSL_CERT_FILE'] = debian_ca_bundle
-url = 'https://bugs.debian.org/cgi-bin/soap.cgi'
-namespace = 'Debbugs/SOAP'
-server = SOAPpy.SOAPProxy(url, namespace)
 if user:
-bugs = server.get_usertag(user, tag)
-bugs = bugs[0]
+bug_numbers = debianbts.get_usertag(user, tag).values()
 else:
-bugs = server.get_bugs('tag', tag)
+bug_numbers = debianbts.get_bugs('tag', tag)
 
 # Match each retrieved bug ID to a package and then find the aggregate
 # count for each package.
 bug_stats = {}
-statuses = server.get_status(bugs)
-statuses = statuses[0]
-for status in statuses:
-status = status['value']
-if status['done'] or status['fixed'] or \
-status['pending'] == 'fixed':
+bugs = debianbts.get_status(*bug_numbers)
+for bug in bugs:
+if bug.done or bug.fixed_versions or bug.pending == 'fixed':
 continue
 
-package_name = status['package']
-bug_stats.setdefault(package_name, 0)
-bug_stats[package_name] += 1
+bug_stats.setdefault(bug.package, 0)
+bug_stats[bug.package] += 1
 
 return bug_stats
 
@@ -465,14 +457,14 @@ class UpdatePackageBugStats(BaseTask):
 if not bug_stats:
 bug_stats = {}
 
-# Add in help bugs from the BTS SOAP interface
+# Add in help bugs from the BTS interface
 try:
 help_bugs = self._get_tagged_bug_stats('help')
 self._extend_bug_stats(bug_stats, help_bugs, 'help')
 except:
 logger.exception("Could not get bugs tagged help")
 
-# Add in newcomer bugs from the BTS SOAP interface
+# Add in newcomer bugs from the BTS interface
 try:
 newcomer_bugs = self._get_tagged_bug_stats('newcomer')
 self._extend_bug_stats(bug_stats, newcomer_bugs, 'newcomer')
diff --git a/docs/setup/setup.rst b/docs/setup/setup.rst
index cd95ba6..d4c62f8 100644
--- a/docs/setup/setup.rst
+++ b/docs/setup/setup.rst
@@ -16,12 +16,12 @@ Distro Tracker currently depends on the following Debian 

Bug#797223:

2017-10-30 Thread Ville Skyttä
Implementation attached, tox tested only.
From d107eb7d1985b01dcf415ae9eb391dccc4d511c8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Mon, 30 Oct 2017 23:01:30 +0200
Subject: [PATCH] Use nm.d.o REST API instead of LDAP

---
 TODO |  1 -
 debian/control   |  2 --
 distro_tracker/vendor/debian/sso_auth.py | 37 +---
 docs/setup/setup.rst |  3 +--
 tox.ini  |  1 -
 5 files changed, 16 insertions(+), 28 deletions(-)

diff --git a/TODO b/TODO
index 60f9975..87d41fd 100644
--- a/TODO
+++ b/TODO
@@ -19,7 +19,6 @@ Misc possible enhancements:
 * Codebase is Python 3 compatible but some optional dependencies need to
   be ported:
   - python-soappy => switch to pysimplesoap
-  - python-ldap => replace LDAP access with nm.d.o REST api, cf #797223
 * Re-enable a smarter clickjacking protection: only activate it when the
   page is rendered for a logged in user and allow callers to pass a
   "anonymous=1" parameter that will force render the web page as if
diff --git a/debian/control b/debian/control
index 62be97c..a5189e6 100644
--- a/debian/control
+++ b/debian/control
@@ -16,7 +16,6 @@ Build-Depends: debhelper (>= 9),
 python-django-jsonfield,
 python-django-captcha,
 python-gpgme,
-python-ldap,
 python-lzma,
 python-requests (>= 2),
 python-soappy,
@@ -69,7 +68,6 @@ Depends: ${python:Depends},
 python-yaml,
 python-pyinotify,
 ${misc:Depends}
-Recommends: python-ldap
 Description: Python libraries of Distro Tracker
  Distro Tracker offers a web interface to display an overview of each source
  package provided as well as an email interface to be notified of changes
diff --git a/distro_tracker/vendor/debian/sso_auth.py b/distro_tracker/vendor/debian/sso_auth.py
index f749353..a39a9bf 100644
--- a/distro_tracker/vendor/debian/sso_auth.py
+++ b/distro_tracker/vendor/debian/sso_auth.py
@@ -9,18 +9,16 @@
 # except according to the terms contained in the LICENSE file.
 
 from __future__ import unicode_literals
+import json
 from django.contrib.auth.middleware import RemoteUserMiddleware
 from django.contrib.auth.backends import RemoteUserBackend
 from django.contrib import auth
 from django.core.exceptions import ImproperlyConfigured
+from django.utils.http import urlencode
 
 from distro_tracker.accounts.models import UserEmail
 from distro_tracker.accounts.models import User
-
-try:
-import ldap
-except ImportError:
-ldap = None
+from distro_tracker.core.utils.http import get_resource_content
 
 
 class DebianSsoUserMiddleware(RemoteUserMiddleware):
@@ -101,7 +99,7 @@ class DebianSsoUserBackend(RemoteUserBackend):
 user (identified by their @debian.org email) in Distro Tracker. If
 a matching User model instance does not exist, one is
 automatically created. In that case the DDs first and last name
-are pulled from Debian's LDAP.
+are pulled from Debian's NM REST API.
 """
 def authenticate(self, remote_user):
 if not remote_user:
@@ -130,27 +128,22 @@ class DebianSsoUserBackend(RemoteUserBackend):
 
 def get_user_details(self, remote_user):
 """
-Gets the details of the given user from the Debian LDAP.
+Gets the details of the given user from the Debian NM REST API.
 :return: Dict with the keys ``first_name``, ``last_name``
-``None`` if the LDAP lookup did not return anything.
+``None`` if the API lookup did not return anything.
 """
-if ldap is None:
-return None
 if not remote_user.endswith('@debian.org'):
-# We only know how to extract data for DD via LDAP
+# We only know how to extract data for DD via NM API
 return None
 
-l = ldap.initialize('ldap://db.debian.org')
-result_set = l.search_s(
-'dc=debian,dc=org',
-ldap.SCOPE_SUBTREE,
-'uid={}'.format(self.get_uid(remote_user)),
-None)
-if not result_set:
-return None
+content = get_resource_content(
+'https://nm.debian.org/api/people?' +
+urlencode({'uid': self.get_uid(remote_user)}))
+result = json.loads(content)['r']
 
-result = result_set[0]
+if not result:
+return None
 return {
-'first_name': result[1]['cn'][0].decode('utf-8'),
-'last_name': result[1]['sn'][0].decode('utf-8'),
+'first_name': result[0]['cn'],
+'last_name': result[0]['sn'],
 }
diff --git a/docs/setup/setup.rst b/docs/setup/setup.rst
index dad9ac0..cd95ba6 100644
--- a/docs/setup/setup.rst
+++ b/docs/setup/setup.rst
@@ -22,7 +22,6 @@ Distro Tracker currently depends on the following Debian packages:
 - python-bs4
 - python-pyinotify
 - python-soappy (optional)
-- python-ldap (optional)
 - 

Bug#797223:

2017-10-30 Thread Ville Skyttä
Implementation attached, tox tested only.
From d107eb7d1985b01dcf415ae9eb391dccc4d511c8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Mon, 30 Oct 2017 23:01:30 +0200
Subject: [PATCH] Use nm.d.o REST API instead of LDAP

---
 TODO |  1 -
 debian/control   |  2 --
 distro_tracker/vendor/debian/sso_auth.py | 37 +---
 docs/setup/setup.rst |  3 +--
 tox.ini  |  1 -
 5 files changed, 16 insertions(+), 28 deletions(-)

diff --git a/TODO b/TODO
index 60f9975..87d41fd 100644
--- a/TODO
+++ b/TODO
@@ -19,7 +19,6 @@ Misc possible enhancements:
 * Codebase is Python 3 compatible but some optional dependencies need to
   be ported:
   - python-soappy => switch to pysimplesoap
-  - python-ldap => replace LDAP access with nm.d.o REST api, cf #797223
 * Re-enable a smarter clickjacking protection: only activate it when the
   page is rendered for a logged in user and allow callers to pass a
   "anonymous=1" parameter that will force render the web page as if
diff --git a/debian/control b/debian/control
index 62be97c..a5189e6 100644
--- a/debian/control
+++ b/debian/control
@@ -16,7 +16,6 @@ Build-Depends: debhelper (>= 9),
 python-django-jsonfield,
 python-django-captcha,
 python-gpgme,
-python-ldap,
 python-lzma,
 python-requests (>= 2),
 python-soappy,
@@ -69,7 +68,6 @@ Depends: ${python:Depends},
 python-yaml,
 python-pyinotify,
 ${misc:Depends}
-Recommends: python-ldap
 Description: Python libraries of Distro Tracker
  Distro Tracker offers a web interface to display an overview of each source
  package provided as well as an email interface to be notified of changes
diff --git a/distro_tracker/vendor/debian/sso_auth.py b/distro_tracker/vendor/debian/sso_auth.py
index f749353..a39a9bf 100644
--- a/distro_tracker/vendor/debian/sso_auth.py
+++ b/distro_tracker/vendor/debian/sso_auth.py
@@ -9,18 +9,16 @@
 # except according to the terms contained in the LICENSE file.
 
 from __future__ import unicode_literals
+import json
 from django.contrib.auth.middleware import RemoteUserMiddleware
 from django.contrib.auth.backends import RemoteUserBackend
 from django.contrib import auth
 from django.core.exceptions import ImproperlyConfigured
+from django.utils.http import urlencode
 
 from distro_tracker.accounts.models import UserEmail
 from distro_tracker.accounts.models import User
-
-try:
-import ldap
-except ImportError:
-ldap = None
+from distro_tracker.core.utils.http import get_resource_content
 
 
 class DebianSsoUserMiddleware(RemoteUserMiddleware):
@@ -101,7 +99,7 @@ class DebianSsoUserBackend(RemoteUserBackend):
 user (identified by their @debian.org email) in Distro Tracker. If
 a matching User model instance does not exist, one is
 automatically created. In that case the DDs first and last name
-are pulled from Debian's LDAP.
+are pulled from Debian's NM REST API.
 """
 def authenticate(self, remote_user):
 if not remote_user:
@@ -130,27 +128,22 @@ class DebianSsoUserBackend(RemoteUserBackend):
 
 def get_user_details(self, remote_user):
 """
-Gets the details of the given user from the Debian LDAP.
+Gets the details of the given user from the Debian NM REST API.
 :return: Dict with the keys ``first_name``, ``last_name``
-``None`` if the LDAP lookup did not return anything.
+``None`` if the API lookup did not return anything.
 """
-if ldap is None:
-return None
 if not remote_user.endswith('@debian.org'):
-# We only know how to extract data for DD via LDAP
+# We only know how to extract data for DD via NM API
 return None
 
-l = ldap.initialize('ldap://db.debian.org')
-result_set = l.search_s(
-'dc=debian,dc=org',
-ldap.SCOPE_SUBTREE,
-'uid={}'.format(self.get_uid(remote_user)),
-None)
-if not result_set:
-return None
+content = get_resource_content(
+'https://nm.debian.org/api/people?' +
+urlencode({'uid': self.get_uid(remote_user)}))
+result = json.loads(content)['r']
 
-result = result_set[0]
+if not result:
+return None
 return {
-'first_name': result[1]['cn'][0].decode('utf-8'),
-'last_name': result[1]['sn'][0].decode('utf-8'),
+'first_name': result[0]['cn'],
+'last_name': result[0]['sn'],
 }
diff --git a/docs/setup/setup.rst b/docs/setup/setup.rst
index dad9ac0..cd95ba6 100644
--- a/docs/setup/setup.rst
+++ b/docs/setup/setup.rst
@@ -22,7 +22,6 @@ Distro Tracker currently depends on the following Debian packages:
 - python-bs4
 - python-pyinotify
 - python-soappy (optional)
-- python-ldap (optional)
 - 

Bug#851296:

2017-10-30 Thread Ville Skyttä
Hm, not a good idea to use git send-email to send to the BTS it seems.
Here are the same patches as attachments.
From 0c43317f342e2aa43207605f17e583da866e7b24 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Mon, 30 Oct 2017 21:43:27 +0200
Subject: [PATCH 1/3] Use urlquote_plus instead of urlquote for query string
 data

---
 distro_tracker/vendor/debian/rules.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/distro_tracker/vendor/debian/rules.py b/distro_tracker/vendor/debian/rules.py
index 9a6ed00..16672b3 100644
--- a/distro_tracker/vendor/debian/rules.py
+++ b/distro_tracker/vendor/debian/rules.py
@@ -15,7 +15,7 @@ import re
 import requests
 
 from django import forms
-from django.utils.http import urlencode, urlquote
+from django.utils.http import urlencode, urlquote_plus
 from django.utils.safestring import mark_safe
 from django.conf import settings
 
@@ -263,7 +263,7 @@ def get_developer_information_url(developer_email):
 Return a URL to extra information about a developer, by email address.
 """
 URL_TEMPLATE = 'https://qa.debian.org/developer.php?email={email}'
-return URL_TEMPLATE.format(email=urlquote(developer_email))
+return URL_TEMPLATE.format(email=urlquote_plus(developer_email))
 
 
 def get_external_version_information_urls(package_name):
@@ -328,7 +328,7 @@ def _add_dmd_entry(extra, email):
 'display': 'DMD',
 'description': 'UDD\'s Debian Maintainer Dashboard',
 'link': 'https://udd.debian.org/dmd/?{email}#todo'.format(
-email=urlquote(email)
+email=urlquote_plus(email)
 )
 })
 
-- 
2.14.1

From 6abc4e4e6c02554e8f79d077085ce8741442c2c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Mon, 30 Oct 2017 21:46:40 +0200
Subject: [PATCH 2/3] Missing URL encoding fixes

---
 .../accounts/templates/accounts/subscriptions.html   |  6 +++---
 .../accounts/templates/accounts/user-widget.html |  2 +-
 .../core/templates/core/edit-team-membership.html|  6 +++---
 distro_tracker/core/templates/core/news_list.html|  2 +-
 distro_tracker/core/templates/core/package.html  |  2 +-
 distro_tracker/core/templates/core/team-list.html|  2 +-
 distro_tracker/core/templates/core/team-manage.html  |  2 +-
 distro_tracker/core/templates/core/team.html |  2 +-
 distro_tracker/vendor/debian/tracker_panels.py   | 20 +---
 9 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/distro_tracker/accounts/templates/accounts/subscriptions.html b/distro_tracker/accounts/templates/accounts/subscriptions.html
index cc0243d..02fab38 100644
--- a/distro_tracker/accounts/templates/accounts/subscriptions.html
+++ b/distro_tracker/accounts/templates/accounts/subscriptions.html
@@ -30,7 +30,7 @@
 Unsubscribe all
 
 {% endif %}
-
+
 Modify keywords
 
 
@@ -77,7 +77,7 @@
 		
 		
 		
-			
+			
 			Modify keywords
 			{% csrf_token %}
 			
@@ -123,7 +123,7 @@
 		
 		
 			Modify keywords
-			Manage subscriptions
+			Manage subscriptions
 			{% if membership.muted %}
 			{% csrf_token %}
 			{% else %}
diff --git a/distro_tracker/accounts/templates/accounts/user-widget.html b/distro_tracker/accounts/templates/accounts/user-widget.html
index a5b0247..5838afa 100644
--- a/distro_tracker/accounts/templates/accounts/user-widget.html
+++ b/distro_tracker/accounts/templates/accounts/user-widget.html
@@ -1,7 +1,7 @@
 {% if user.is_authenticated %}
 Profile
 |
-Log out
+Log out
 {% else %}
 Register
 |
diff --git a/distro_tracker/core/templates/core/edit-team-membership.html b/distro_tracker/core/templates/core/edit-team-membership.html
index 06125ed..745aed2 100644
--- a/distro_tracker/core/templates/core/edit-team-membership.html
+++ b/distro_tracker/core/templates/core/edit-team-membership.html
@@ -35,14 +35,14 @@
 {% csrf_token %}
 
 
-
+
 Unmute
 
 {% else %}
 {% csrf_token %}
 
 
-
+
 Mute
 
 {% endif %}
@@ -70,7 +70,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/news_list.html b/distro_tracker/core/templates/core/news_list.html
index c13952d..4f139ab 100644
--- a/distro_tracker/core/templates/core/news_list.html
+++ b/distro_tracker/core/templates/core/news_list.html
@@ -25,7 +25,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/package.html b/distro_tracker/core/templates/core/package.html
index 2253794..1f29d33 100644
--- a/distro_tracker/core/templates/core/package.html
+++ 

Bug#851296:

2017-10-30 Thread Ville Skyttä
Hm, not a good idea to use git send-email to send to the BTS it seems.
Here are the same patches as attachments.
From 0c43317f342e2aa43207605f17e583da866e7b24 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Mon, 30 Oct 2017 21:43:27 +0200
Subject: [PATCH 1/3] Use urlquote_plus instead of urlquote for query string
 data

---
 distro_tracker/vendor/debian/rules.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/distro_tracker/vendor/debian/rules.py b/distro_tracker/vendor/debian/rules.py
index 9a6ed00..16672b3 100644
--- a/distro_tracker/vendor/debian/rules.py
+++ b/distro_tracker/vendor/debian/rules.py
@@ -15,7 +15,7 @@ import re
 import requests
 
 from django import forms
-from django.utils.http import urlencode, urlquote
+from django.utils.http import urlencode, urlquote_plus
 from django.utils.safestring import mark_safe
 from django.conf import settings
 
@@ -263,7 +263,7 @@ def get_developer_information_url(developer_email):
 Return a URL to extra information about a developer, by email address.
 """
 URL_TEMPLATE = 'https://qa.debian.org/developer.php?email={email}'
-return URL_TEMPLATE.format(email=urlquote(developer_email))
+return URL_TEMPLATE.format(email=urlquote_plus(developer_email))
 
 
 def get_external_version_information_urls(package_name):
@@ -328,7 +328,7 @@ def _add_dmd_entry(extra, email):
 'display': 'DMD',
 'description': 'UDD\'s Debian Maintainer Dashboard',
 'link': 'https://udd.debian.org/dmd/?{email}#todo'.format(
-email=urlquote(email)
+email=urlquote_plus(email)
 )
 })
 
-- 
2.14.1

From 6abc4e4e6c02554e8f79d077085ce8741442c2c6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= 
Date: Mon, 30 Oct 2017 21:46:40 +0200
Subject: [PATCH 2/3] Missing URL encoding fixes

---
 .../accounts/templates/accounts/subscriptions.html   |  6 +++---
 .../accounts/templates/accounts/user-widget.html |  2 +-
 .../core/templates/core/edit-team-membership.html|  6 +++---
 distro_tracker/core/templates/core/news_list.html|  2 +-
 distro_tracker/core/templates/core/package.html  |  2 +-
 distro_tracker/core/templates/core/team-list.html|  2 +-
 distro_tracker/core/templates/core/team-manage.html  |  2 +-
 distro_tracker/core/templates/core/team.html |  2 +-
 distro_tracker/vendor/debian/tracker_panels.py   | 20 +---
 9 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/distro_tracker/accounts/templates/accounts/subscriptions.html b/distro_tracker/accounts/templates/accounts/subscriptions.html
index cc0243d..02fab38 100644
--- a/distro_tracker/accounts/templates/accounts/subscriptions.html
+++ b/distro_tracker/accounts/templates/accounts/subscriptions.html
@@ -30,7 +30,7 @@
 Unsubscribe all
 
 {% endif %}
-
+
 Modify keywords
 
 
@@ -77,7 +77,7 @@
 		
 		
 		
-			
+			
 			Modify keywords
 			{% csrf_token %}
 			
@@ -123,7 +123,7 @@
 		
 		
 			Modify keywords
-			Manage subscriptions
+			Manage subscriptions
 			{% if membership.muted %}
 			{% csrf_token %}
 			{% else %}
diff --git a/distro_tracker/accounts/templates/accounts/user-widget.html b/distro_tracker/accounts/templates/accounts/user-widget.html
index a5b0247..5838afa 100644
--- a/distro_tracker/accounts/templates/accounts/user-widget.html
+++ b/distro_tracker/accounts/templates/accounts/user-widget.html
@@ -1,7 +1,7 @@
 {% if user.is_authenticated %}
 Profile
 |
-Log out
+Log out
 {% else %}
 Register
 |
diff --git a/distro_tracker/core/templates/core/edit-team-membership.html b/distro_tracker/core/templates/core/edit-team-membership.html
index 06125ed..745aed2 100644
--- a/distro_tracker/core/templates/core/edit-team-membership.html
+++ b/distro_tracker/core/templates/core/edit-team-membership.html
@@ -35,14 +35,14 @@
 {% csrf_token %}
 
 
-
+
 Unmute
 
 {% else %}
 {% csrf_token %}
 
 
-
+
 Mute
 
 {% endif %}
@@ -70,7 +70,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/news_list.html b/distro_tracker/core/templates/core/news_list.html
index c13952d..4f139ab 100644
--- a/distro_tracker/core/templates/core/news_list.html
+++ b/distro_tracker/core/templates/core/news_list.html
@@ -25,7 +25,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/package.html b/distro_tracker/core/templates/core/package.html
index 2253794..1f29d33 100644
--- a/distro_tracker/core/templates/core/package.html
+++ 

Bug#851296: [PATCH 2/3] Missing URL encoding fixes

2017-10-30 Thread Ville Skyttä
---
 .../accounts/templates/accounts/subscriptions.html   |  6 +++---
 .../accounts/templates/accounts/user-widget.html |  2 +-
 .../core/templates/core/edit-team-membership.html|  6 +++---
 distro_tracker/core/templates/core/news_list.html|  2 +-
 distro_tracker/core/templates/core/package.html  |  2 +-
 distro_tracker/core/templates/core/team-list.html|  2 +-
 distro_tracker/core/templates/core/team-manage.html  |  2 +-
 distro_tracker/core/templates/core/team.html |  2 +-
 distro_tracker/vendor/debian/tracker_panels.py   | 20 +---
 9 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/distro_tracker/accounts/templates/accounts/subscriptions.html 
b/distro_tracker/accounts/templates/accounts/subscriptions.html
index cc0243d..02fab38 100644
--- a/distro_tracker/accounts/templates/accounts/subscriptions.html
+++ b/distro_tracker/accounts/templates/accounts/subscriptions.html
@@ -30,7 +30,7 @@
 Unsubscribe all
 
 {% endif %}
-
+
 Modify keywords
 
 
@@ -77,7 +77,7 @@



-   
+   
Modify keywords
{% 
csrf_token %}

@@ -123,7 +123,7 @@


Modify keywords
-   Manage subscriptions
+   Manage subscriptions
{% if membership.muted %}
{% 
csrf_token %}
{% else %}
diff --git a/distro_tracker/accounts/templates/accounts/user-widget.html 
b/distro_tracker/accounts/templates/accounts/user-widget.html
index a5b0247..5838afa 100644
--- a/distro_tracker/accounts/templates/accounts/user-widget.html
+++ b/distro_tracker/accounts/templates/accounts/user-widget.html
@@ -1,7 +1,7 @@
 {% if user.is_authenticated %}
 Profile
 |
-Log out
+Log out
 {% else %}
 Register
 |
diff --git a/distro_tracker/core/templates/core/edit-team-membership.html 
b/distro_tracker/core/templates/core/edit-team-membership.html
index 06125ed..745aed2 100644
--- a/distro_tracker/core/templates/core/edit-team-membership.html
+++ b/distro_tracker/core/templates/core/edit-team-membership.html
@@ -35,14 +35,14 @@
 {% csrf_token %}
 
 
-
+
 Unmute
 
 {% else %}
 {% csrf_token %}
 
 
-
+
 Mute
 
 {% endif %}
@@ -70,7 +70,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/news_list.html 
b/distro_tracker/core/templates/core/news_list.html
index c13952d..4f139ab 100644
--- a/distro_tracker/core/templates/core/news_list.html
+++ b/distro_tracker/core/templates/core/news_list.html
@@ -25,7 +25,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/package.html 
b/distro_tracker/core/templates/core/package.html
index 2253794..1f29d33 100644
--- a/distro_tracker/core/templates/core/package.html
+++ b/distro_tracker/core/templates/core/package.html
@@ -33,7 +33,7 @@


{% else %}
-   
+   
{% endif %}
 
  Subscribe
diff --git a/distro_tracker/core/templates/core/team-list.html 
b/distro_tracker/core/templates/core/team-list.html
index ae1d1cc..4192515 100644
--- a/distro_tracker/core/templates/core/team-list.html
+++ b/distro_tracker/core/templates/core/team-list.html
@@ -27,7 +27,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/team-manage.html 
b/distro_tracker/core/templates/core/team-manage.html
index c61eb8b..4cf0f7b 100644
--- a/distro_tracker/core/templates/core/team-manage.html
+++ b/distro_tracker/core/templates/core/team-manage.html
@@ -31,7 +31,7 @@
 
 
 {% for page in page_obj.paginator.page_range %}
-{{ page }}
+{{ page }}
 {% endfor %}
 
 
diff --git a/distro_tracker/core/templates/core/team.html 
b/distro_tracker/core/templates/core/team.html
index 722e243..de338de 100644
--- a/distro_tracker/core/templates/core/team.html
+++ b/distro_tracker/core/templates/core/team.html
@@ -116,7 +116,7 @@
 {% endif %}
{% if user_member_of_team %}

-   {% octicon 'trashcan' 'remove package 
from team' %}
+   {% octicon 'trashcan' 'remove 
package from team' %}

{% endif %}
   

  1   2   3   4   5   6   7   8   9   10   >