Debian Bug report logs - #1056351
dicod: wrong quotes in MediaWiki snippets in `/etc/dicod.conf`

version graph

Package: dicod; Maintainer for dicod is Ritesh Raj Sarraf <[email protected]>; Source for dicod is src:dico (PTS, buildd, popcon).

Affects: dico-module-mediawiki

Reported by: Luca Capello <[email protected]>

Date: Tue, 21 Nov 2023 14:45:02 UTC

Severity: important

Tags: patch

Found in version dico/2.11-2

Fixed in version dico/2.12-2

Done: Marc Dequènes (Duck) <[email protected]>

Reply or subscribe to this bug.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to [email protected], [email protected], Ritesh Raj Sarraf <[email protected]>:
Bug#1056351; Package dicod. (Tue, 21 Nov 2023 14:45:04 GMT) (full text, mbox, link).


Acknowledgement sent to Luca Capello <[email protected]>:
New Bug report received and forwarded. Copy sent to [email protected], Ritesh Raj Sarraf <[email protected]>. (Tue, 21 Nov 2023 14:45:04 GMT) (full text, mbox, link).


Message #5 received at [email protected] (full text, mbox, reply):

From: Luca Capello <[email protected]>
To: Debian Bug Tracking System <[email protected]>
Subject: dicod: wrong quotes in MediaWiki snippets in `/etc/dicod.conf`
Date: Tue, 21 Nov 2023 15:32:29 +0100
[Message part 1 (text/plain, inline)]
Package: dicod
Version: 2.11-2+b3
Severity: important
Affects: dico-module-mediawiki
Tags: patch
Usertags: pca.it-communication

Hi there,

after the `load python` bug[1], I tried to configure some WikiMedia
databases using the `dicod`-commented M4 macros, without success:
```
root@harlock:~# /usr/bin/dicod --stderr -f
dicod: Error: /etc/dicod.conf:136.11-11: stray character `
dicod: Error: /etc/dicod.conf:136.14-14: stray character '
dicod: Error: /etc/dicod.conf:137.3-3: stray character `
dicod: Error: /etc/dicod.conf:137.20-20: stray character '
root@harlock:~# 
```

[1] <https://bugs.debian.org/1028487>

NB, plain non-macro configurations as the ones in the
    `dico-module-mediawiki`'s README.Debian allowed `dicod` to start.

In fact, after having read the `dico` upstream manual[2] I discovered
that for whatever reason (I am not an M4 neither a `dico` expert) the
wrong quoting characters ` and ' where used instead of [ and ][3],
albeit according to the M4 manual[4] ` and ' are indeed the M4 default
quoting characters.

[2] <https://www.gnu.org.ua/software/dico/manual/dico.html#Preprocessor>
[3] <https://stackoverflow.com/questions/66738638/how-should-i-escape-a-comma-inside-the-arguments-to-esyscmd#70503189>
[4] <https://www.gnu.org/software/m4/manual/m4.html#Quoted-strings>

Thus, replacing `' with [] in the `wikipedia` and `wiktionary` M4
macro definitions was the first step to get something working, albeit
to have everything OK I could not be able to keep the `wiktionary` and
`wiktionary` macro names, attached the full patch.

However, two final notes:

1. the snippets in `dico-module-mediawiki`'s README.Debian are IMHO
   useless if `dicod.conf` contains commented M4 macros.

2. I would go for a even more generic MediaWiki M4 macro and not 2
   different ones, as shown in the included `/etc/dicod.conf`.

Thx, bye,
Gismo / Luca

-- System Information:
Debian Release: 12.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'oldstable-updates'), (500, 'oldstable-security'), (500, 'oldoldstable'), (500, 'stable'), (500, 'oldstable'), (100, 'bookworm-fasttrack'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.5.0-0.deb12.1-amd64 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dicod depends on:
ii  adduser                    3.134
ii  init-system-helpers        1.65.2
ii  libc6                      2.36-9+deb12u3
ii  libcrypt1                  1:4.4.33-2
ii  libdico2                   2.11-2+b3
ii  libgsasl18                 2.2.0-1
ii  libldap-2.5-0              2.5.13+dfsg-5
ii  libltdl7                   2.4.7-5
ii  libpam0g                   1.5.2-6+deb12u1
ii  libpcre3                   2:8.39-15
ii  m4                         1.4.19-3
ii  sysvinit-utils [lsb-base]  3.06-4
ii  zlib1g                     1:1.2.13.dfsg-1

dicod recommends no packages.

Versions of packages dicod suggests:
pn  dico-doc                         <none>
pn  openbsd-inetd | inetutils-inetd  <none>

-- Configuration Files:
/etc/dicod.conf changed:
capability (mime,xversion);
timing yes;
pidfile /var/run/dicod/dicod.pid;
listen localhost;
module-load-path ("/usr/lib/dico");
// Enable handling of databases in dict.org format:
load-module dictorg {
	command "dictorg sort trim-ws dbdir=/usr/share/dictd";
}
// dicodconfig automatically generates the database sections for dictorg
// formatted dictionaries, the following line makes use of this facility:
// Uncomment the following to enable handling of databases in Emacs outline 
// format:
/* load-module outline {
	command "outline";
}
*/
// Uncomment the following to enable Guile interface:
/* load-module guile {
	command "guile";
}
*/
// Uncomment the following to enable Python modules (e.g. MediaWiki):
// <https://bugs.debia.org/1028487>
load-module python {
	command "python load-path=/usr/share/dico/python";
}
// Emacs outline database example:
/* database {
	name "devdict";
	handler "outline /usr/share/dico/outline/devils.out";
}
*/
// WikiMedia via `debpkg:dico-module-mediawiki`
// <https://www.gnu.org.ua/software/dico/manual/dico.html#Preprocessor>
m4_define([defdbwikimedia], [
database {
	name "$1";
	handler "python load-path=/usr/share/dico/python init-script=mediawiki $2";
	mime-headers <<- EOT
	  Content-Type: text/x-wiki
	  Content-Transfer-Encoding: quoted-printable
	  X-Wiki-Language: $1
	EOT;
m4_ifelse([$2],,,[
	description "$2";])
m4_ifelse([$3],,,[
	info <<- EOT
$3
EOT;])
}
])
defdbwikimedia(wikipedia-en,
  [en.wikipedia.org],
  [English language Wikipedia, a collaborative project to produce a
   free-content multilingual encyclopedia.])
defdbwikimedia(wikipedia-fr, [fr.wikipedia.org])
defdbwikimedia(wikipedia-it, [it.wikipedia.org])
defdbwikimedia(wiktionary-en,
  [en.wiktionary.org],
  [English language Wiktionary, a collaborative project to produce a
   free-content multilingual dictionary.])
defdbwikimedia(wiktionary-fr, [fr.wiktionary.org])
defdbwikimedia(wiktionary-it, [it.wiktionary.org])
alias d DEFINE;
alias da d "*";
alias df d "!";
alias m MATCH;
alias mas m "*";
alias mfs m "!";
alias ma mas ".";
alias mf mfs ".";
alias s STATUS;
alias h HELP;
alias q QUIT;
help-text <<- EOT
	+
  The following commands are abbreviations that Gray likes to use when
  debugging the daemon.  You may or may not find them useful.  However
  it is, do not write your client software to relay on them.  They may
  disappear or change any time Gray pleases, without notice.
  d database word                 -- DEFINE database word
  da word                         -- DEFINE * word
  df word                         -- DEFINE ! word
  ma word                         -- MATCH * . word
  mf word                         -- MATCH ! . word
  mas strategy word               -- MATCH * strategy word
  mfs strategy word               -- MATCH ! strategy word
  m database strategy word        -- MATCH database strategy word
  s                               -- STATUS
  h                               -- HELP
  q                               -- QUIT
EOT;
user dicod;
max-children 18;
server-info <<EOT
This is a Dico server.
EOT;
/* load-module stratall {
  command "stratall";
}
strategy all {
  deny-all yes;
}
*/
/* load-module substr {
  command "substr";
}
strategy substr {
  deny-length-lt 3;
}
*/


-- no debconf information
[dicod_2.11-2+b3_dicod.conf_dico-module-mediawiki.patch.gz (application/gzip, attachment)]
[signature.asc (application/pgp-signature, inline)]

Added indication that 1056351 affects dico-module-mediawiki Request was from Luca Capello <[email protected]> to [email protected]. (Tue, 21 Nov 2023 16:48:02 GMT) (full text, mbox, link).


Information forwarded to [email protected], Ritesh Raj Sarraf <[email protected]>:
Bug#1056351; Package dicod. (Sun, 07 Jul 2024 08:09:02 GMT) (full text, mbox, link).


Acknowledgement sent to "Sergey Poznyakoff" <[email protected]>:
Extra info received and forwarded to list. Copy sent to Ritesh Raj Sarraf <[email protected]>. (Sun, 07 Jul 2024 08:09:02 GMT) (full text, mbox, link).


Message #12 received at [email protected] (full text, mbox, reply):

From: "Sergey Poznyakoff" <[email protected]>
To: <[email protected]>
Subject: Re: dicod: wrong quotes in MediaWiki snippets in `/etc/dicod.conf`
Date: Sun, 07 Jul 2024 09:47:02 +0200
That's an error in /etc/dicod.conf shipped with debian package.  The
dicod manual says clearly that:

  The default pp-setup file changes quote characters to â[ and â],
  and renames all m4 built-in macros so they all start with the prefix
  m4_.

See https://www.gnu.org.ua/software/dico/manual/html_node/Preprocessor.html

Regards,
Sergey



Reply sent to Marc Dequènes (Duck) <[email protected]>:
You have taken responsibility. (Wed, 16 Apr 2025 22:09:01 GMT) (full text, mbox, link).


Notification sent to Luca Capello <[email protected]>:
Bug acknowledged by developer. (Wed, 16 Apr 2025 22:09:01 GMT) (full text, mbox, link).


Message #17 received at [email protected] (full text, mbox, reply):

From: Debian FTP Masters <[email protected]>
To: [email protected]
Subject: Bug#1056351: fixed in dico 2.12-2
Date: Wed, 16 Apr 2025 22:04:35 +0000
[Message part 1 (text/plain, inline)]
Source: dico
Source-Version: 2.12-2
Done: Marc Dequènes (Duck) <[email protected]>

We believe that the bug you reported is fixed in the latest version of
dico, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Marc Dequènes (Duck) <[email protected]> (supplier of updated dico package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 17 Apr 2025 06:48:22 +0900
Source: dico
Architecture: source
Version: 2.12-2
Distribution: unstable
Urgency: medium
Maintainer: Ritesh Raj Sarraf <[email protected]>
Changed-By: Marc Dequènes (Duck) <[email protected]>
Closes: 1056351
Changes:
 dico (2.12-2) unstable; urgency=medium
 .
   * Fix example config for the mediawiki module (Closes: #1056351),
     thanks Luca Capello for the snippet.
Checksums-Sha1:
 674bdb86375ae638e7891578b047e16fd3b67636 3022 dico_2.12-2.dsc
 4a7446eaede34215e40ccbf9ee8bad517082fb30 31148 dico_2.12-2.debian.tar.xz
 11b00552b2eae1a1dabec80b7b1969c71450a55d 13373 dico_2.12-2_amd64.buildinfo
Checksums-Sha256:
 3c88d4989a06c67a7148b5c38227d7a4d1ca8f9abe25b2d95f40cf908e861865 3022 dico_2.12-2.dsc
 820b7a228d0c6dd6fa410353e207c20c92a1bc62ecbd5144fbd40ee251a88ecb 31148 dico_2.12-2.debian.tar.xz
 01fa30161634fbfba612dd522d4c6ec2a9a854f25553aded76e1ffeb4cb12618 13373 dico_2.12-2_amd64.buildinfo
Files:
 44c5cbe3e66cc2b54a15e1b8bf953d3d 3022 text optional dico_2.12-2.dsc
 d8927eb68a0d823e930fa83db24dbf0e 31148 text optional dico_2.12-2.debian.tar.xz
 f8cb6aab6c43527005fad743aba32023 13373 text optional dico_2.12-2_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcpcqg+UmRT3yiF+BVen596wcRD8FAmgAJlkACgkQVen596wc
RD//YRAAmjGwLx35B5Hm2OYNWqGOYsZWxAQILm6Fkuxo8zaZzh06P6WBh7Gma6Nx
aeVOIcr9/khoBINFtVQ9fJa8M91YAhQp5v6jPbn8Ys/xwekL9IZ+XMWUKqGdDS5k
ae4DGC5PTZkfq9OSfTiOvC5IKhgsIKPeWgqpR+zT41etQ4KR5XulXK+Rj8P5ZTic
gkivJ23+6GNN+p2l3JCzJWTAjoivKVXUS0IA3x3UQmvJTD6RcCHNGsdORxuSPEE3
RZ0kq7K6DIQtF4rvrtZSDlaiYlHCnc6Kq3P11d0OXGtSk9ZuUnOJfL8salG2ZkYO
wXO0oUCw4oBbVZBzMS7SsrpCdW3ioupxY2LbuMNVLWNJ0QL6bP2h5BqkIxOPnERj
DG7NYT88BScPDHWphadxIXADfJttRDJtk9pnqnrPKjDa+eq4FxjZEfc2U3PvPucN
v2AWcCl+K2xjbSVIeEstaJcmWSgfSOZcP3gyGMU6NZoXbH561o1kfSMXec9jxMwi
urBwmL/gh7N/stjfcSwnOZl907yb0Na78BB6VsjDd8ubZS/MVu/PetO45JF4V0+0
Vuqa/1L8FF6SVXY2oYv5FuMHwd4JjtGld+rayL7uZC08w/SlE70zSxodZgCu4QlF
wXQLqG9+wZHgsmYAaq1scJ3Uj5gqdFLCP2pZr2qWD35FdB7KWFA=
=Lfp7
-----END PGP SIGNATURE-----

[Message part 2 (application/pgp-signature, inline)]

Send a report that this bug log contains spam.


Debian bug tracking system administrator <[email protected]>. Last modified: Tue May 13 13:14:59 2025; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU General Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.