Page MenuHomePhabricator

extensions/Wikidata - file permissions trigger debian lintian warnings
Closed, InvalidPublic

Description

0. Context

DEB packages of mediawiki and many of its extensions, are prepared as part of the WP-MIRROR project.
See https://www.mediawiki.org/wiki/Wp-mirror.

  1. Lintian

During the build process, lintian performs a great number of sanity checks, including seeing if each file has file permissions appropriate to its file type.

When lintian sees a non-executable file with 755 permissions, rather than 644, lintian will throw a warning like:

W: wp-mirror-mediawiki: executable-not-elf-or-script usr/share/wp-mirror-mediawiki/extensions/Wikidata/extensions/Constraints/includes/ConstraintCheck/Checker/CommonsLinkChecker.php

When lintian sees an executable file with 644 permissions, rather than 755, lintian will throw a warning like:

W: wp-mirror-mediawiki-extensions: script-not-executable usr/share/wp-mirror-mediawiki/extensions/Wikidata/extensions/Constraints/build/travis/after_script.sh

  1. Files which should have permissions set to 644
  1. Files which should have permissions set to 755

Wikidata/extensions/PropertySuggester/build/travis/after_script.sh
Wikidata/extensions/PropertySuggester/build/travis/before_script.sh
Wikidata/extensions/PropertySuggester/build/travis/script.sh
Wikidata/extensions/Wikibase/build/jenkins/mw-apply-wb-settings.sh
Wikidata/extensions/Wikibase/build/travis/install.sh
Wikidata/extensions/Wikibase/build/travis/mw-apply-wb-settings.sh
Wikidata/extensions/Wikibase/build/travis/script.sh
Wikidata/extensions/Wikibase/build/travis/update-db.sh
Wikidata/vendor/data-values/data-types/build/travis/script.sh
Wikidata/vendor/wikibase/data-model-javascript/build/travis/script.sh
Wikidata/vendor/wikibase/serialization-javascript/build/travis/script.sh

  1. Technical details

DEB standards version: 3.9.6
GIT branch: master

The files under 3. have their executable stripped because composer extracted them from a zip archive that misses that bit. The original repos have the permission bit on these files.

Event Timeline

wpmirrordev assigned this task to Wikidata-bugs.
wpmirrordev raised the priority of this task from to Medium.
wpmirrordev updated the task description. (Show Details)
wpmirrordev subscribed.

Change 226620 had a related patch set uploaded (by JanZerebecki):
Remove executable flag from regular PHP file

https://gerrit.wikimedia.org/r/226620

JanZerebecki lowered the priority of this task from Medium to Lowest.Jul 23 2015, 8:40 PM
JanZerebecki set Security to None.

composer uses zip files which drop the executable bit, which explains why the .sh scripts from Wikibase don't have it anymore. It is set in the Wikibase repo.
Anyway not sure if creating a deb from the build (the Wikidata extension) makes sense, but in the long run the build will hopefully go away.

Change 226624 had a related patch set uploaded (by JanZerebecki):
Remove executable bit from files that are not

https://gerrit.wikimedia.org/r/226624

Change 226629 had a related patch set uploaded (by JanZerebecki):
Remove executable bit from files that are not

https://gerrit.wikimedia.org/r/226629

Change 226631 had a related patch set uploaded (by JanZerebecki):
Remove executable bit from files that are not

https://gerrit.wikimedia.org/r/226631

Change 226631 merged by jenkins-bot:
Remove executable bit from files that are not

https://gerrit.wikimedia.org/r/226631

Change 226629 merged by jenkins-bot:
Remove executable bit from files that are not

https://gerrit.wikimedia.org/r/226629

Change 226620 merged by jenkins-bot:
Remove executable flag from regular PHP file

https://gerrit.wikimedia.org/r/226620

Change 226624 merged by jenkins-bot:
Remove executable bit from files that are not

https://gerrit.wikimedia.org/r/226624

JanZerebecki updated the task description. (Show Details)
JanZerebecki moved this task from ready to go to hold on the Wikidata board.

If T95663 is done then the Wikidata repository will be abandoned.

Task description was updated due to appearance of files with inappropriate permissions seen in the latest git pull.
In particular, new files with paths like Wikidata/extensions/ExternalValidation/* should be reviewed.

I updated the task description to reflect the closure of T113751, which cured the debian lintian warnings caused by Wikidata/extensions/ExternalValidation/* files.

I updated the task description to reflect closure of T113751, which cured the debian lintian warnings caused by Wikidata/extensions/Constraints/* and Wikidata/extensions/Quality/* files.

Addshore subscribed.

Closing this as the repo is now not used / should be archived.

And if anything using it throws warnings or errors it should stop using it.