Skip to content

Commit 47305c0

Browse files
authored
Merge pull request #1459 from rpm-software-management/no-man-pip3
FilesCheck: fix manpage regex to support numbers
2 parents 5912567 + dd35ac1 commit 47305c0

File tree

3 files changed

+30
-1
lines changed

3 files changed

+30
-1
lines changed

rpmlint/checks/FilesCheck.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@
204204
non_readable_regexs = (re.compile(r'^/var/log/'),
205205
re.compile(r'^/etc/(g?shadow-?|securetty)$'))
206206

207-
man_base_regex = re.compile(r'^/usr(?:/share)?/man(?:/overrides)?/man(?P<category>[^/]+)/(?P<filename>((?P<binary>[^.]+)\..+))')
207+
man_base_regex = re.compile(r'^/usr(?:/share)?/man(?:/overrides)?/man(?P<category>[^/]+)/(?P<filename>((?P<binary>.+)\.\d.*))')
208208

209209
fsf_license_regex = re.compile(br'(GNU((\s+(Library|Lesser|Affero))?(\s+General)?\s+Public|\s+Free\s+Documentation)\s+Licen[cs]e|(GP|FD)L)', re.IGNORECASE)
210210
fsf_wrong_address_regex = re.compile(br'(675\s+Mass\s+Ave|59\s+Temple\s+Place|02139|51\s+Franklin\s+St)', re.IGNORECASE)

test/mockdata/mock_files.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,26 @@
219219
)
220220

221221

222+
Pip3ManPagesPackage = get_tested_mock_package(
223+
lazyload=True,
224+
files={
225+
'/usr/bin/pip': {'content': '', 'metadata': {'mode': 0o755 | stat.S_IFREG}},
226+
'/usr/bin/pip3': {'content': '', 'metadata': {'mode': 0o755 | stat.S_IFREG}},
227+
'/usr/bin/pip3.13': {'content': '', 'metadata': {'mode': 0o755 | stat.S_IFREG}},
228+
'/usr/bin/pip3.13.3': {'content': '', 'metadata': {'mode': 0o755 | stat.S_IFREG}},
229+
'/usr/bin/pip3.14': {'content': '', 'metadata': {'mode': 0o755 | stat.S_IFREG}},
230+
'/usr/bin/pip-3.14': {'content': '', 'metadata': {'mode': 0o755 | stat.S_IFREG}},
231+
'/usr/share/man/man1/pip.2': {'content': 'text'},
232+
'/usr/share/man/man1/pip3.1posix': {'content': 'text'},
233+
'/usr/share/man/man1/pip3.13.1': {'content': 'text'},
234+
'/usr/share/man/man1/pip3.13.3.1posix.xz': {'content': 'xz'},
235+
'/usr/share/man/man1/pip3.14.1.gz': {'content': 'gz'},
236+
'/usr/share/man/man1/pip-3.14.1.gz': {'content': 'gz'},
237+
},
238+
header={'requires': []},
239+
)
240+
241+
222242
DevelopmentPackage = get_tested_mock_package(
223243
lazyload=True,
224244
name='my-package-devel',

test/test_files.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
ManualPagesPackage,
1515
NetmaskDebugsourcePackage,
1616
NonReadableGhostPackage,
17+
Pip3ManPagesPackage,
1718
Python3PowerBrokenPackage,
1819
Python3PowerPackage,
1920
PythonShebangLinkOkPackage,
@@ -238,6 +239,14 @@ def test_manpages(package, filescheck):
238239
assert 'This manual page is not compressed with the bz2 compression' in out
239240

240241

242+
@pytest.mark.parametrize('package', [Pip3ManPagesPackage])
243+
def test_manpages_pip3(package, filescheck):
244+
output, test = filescheck
245+
test.check(package)
246+
out = output.print_results(output.results)
247+
assert 'no-manual-page-for-binary' not in out
248+
249+
241250
@pytest.mark.parametrize('package', [DevelopmentPackage])
242251
def test_provides_devel(package, filescheck):
243252
output, test = filescheck

0 commit comments

Comments
 (0)