intltool-update spits warnings with Perl 5.22 (which might be wrongly used by callers)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
intltool |
In Progress
|
High
|
dobey | ||
Fedora |
Fix Released
|
Undecided
|
Bug Description
The issue has been identified while building gramps 4.20, with perl 5.22 installed
The build log yields:
[ 30s] Traceback (most recent call last):
[ 30s] File "setup.py", line 545, in <module>
[ 30s] "Classifier: Topic :: Sociology :: Genealogy",
[ 30s] File "/usr/lib64/
[ 30s] dist.run_commands()
[ 30s] File "/usr/lib64/
[ 30s] self.run_
[ 30s] File "/usr/lib64/
[ 30s] cmd_obj.run()
[ 30s] File "setup.py", line 248, in run
[ 30s] build_intl(self)
[ 30s] File "setup.py", line 189, in build_intl
[ 30s] if intltool_version() < (0, 25, 0):
[ 30s] File "setup.py", line 98, in intltool_version
[ 30s] return tuple([int(num) for num in version_
[ 30s] File "setup.py", line 98, in <listcomp>
[ 30s] return tuple([int(num) for num in version_
[ 30s] ValueError: invalid literal for int() with base 10: 'Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^('
[ 30s] error: Bad exit status from /var/tmp/
The issue here is that gramps' setup.py uses the output of intltool-updates directly (in a non-safe way)... but the underlying issue is actually that intltool-update uses deprecated perl regex syntax.
I'm just preparing a patch for this issue as well - so simply lean back and wait :)
Related branches
- intltool Developers: Pending requested
-
Diff: 44 lines (+10/-10)1 file modifiedintltool-update.in (+10/-10)
Changed in intltool: | |
status: | New → In Progress |
importance: | Undecided → High |
assignee: | nobody → Rodney Dawes (dobey) |
tags: | added: patch |
Changed in fedora: | |
importance: | Unknown → Undecided |
status: | Unknown → Fix Released |
Description of problem:
Apparently, intltool-update isn't perl-5.22 (fc23) compatible. It seems to rely on perl-constructs, which have been deprecated in perl-5.22 and now cause intltool-update to face warnings from perl.
Real world example: intltool- update line 1065. intltool- update line 1193. intltool- update line 1194. VERSION} ?/ at /usr/bin/ intltool- update line 1195. intltool- update line 1196. intltool- update line 1222. intltool- update line 1223. VERSION} ?/ at /usr/bin/ intltool- update line 1224. intltool- update line 1225. intltool- update line 1226.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^(.*)\${ <-- HERE ?([A-Z_]+)}?(.*)$/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?AC_PACKAGE_NAME}?/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?PACKAGE}?/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?AC_PACKAGE_
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?VERSION}?/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?AC_PACKAGE_NAME}?/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?PACKAGE}?/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?AC_PACKAGE_
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?VERSION}?/ at /usr/bin/
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ?\w+}?/ at /usr/bin/
[Source: https:/ /kojipkgs. fedoraproject. org//work/ tasks/488/ 10090488/ build.log]
Version-Release number of selected component (if applicable): 0.51.0- 2.fc23
intltool-