Permalink
...
Checking mergeability…
Don’t worry, you can still create the pull request.
Comparing changes
Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Choose a Base Repository
snapcore/snapcraft
3v1n0/snapcraft
AdrianRubio/snapcraft
AlexandreAbreu/snapcraft
CNXTEoEorg/snapcraft
CSRedRat/snapcraft
CavanJ/snapcraft
ChrisMacNaughton/snapcraft
Conan-Kudo/snapcraft
EduardoVega/snapcraft
Eroui/snapcraft
Fohlen/snapcraft
General-Beck/snapcraft
JamesLinus/snapcraft
JuanJ67m/snapcraft
Laserbear/snapcraft
LefterisJP/snapcraft
Lingaprahasam/snapcraft
M0ses/snapcraft
Magical-Chicken/snapcraft
MaxLeiter/snapcraft
Mega-Tr0n/snapcraft
MonJamp/snapcraft
OddBloke/snapcraft
OpnSrcConstruction/snapcraft
RAOF/snapcraft
Roadmaster/snapcraft
RobLoach/snapcraft
SamYaple/snapcraft
SamuelWeiss/snapcraft
Saviq/snapcraft
StetHD/snapcraft
ZenHarbinger/snapcraft
albertodonato/snapcraft
aleixpol/snapcraft
alexcrichton/snapcraft
alextnewman/snapcraft
andyli/snapcraft
ankurjain41282/snapcraft
annesteenbeek/snapcraft
apachelogger/snapcraft
asac/snapcraft
attente/snapcraft
barkinet/snapcraft
battlemidget/snapcraft
bjornt/snapcraft
blakerouse/snapcraft
blimjoe/snapcraft
bloodearnest/snapcraft
bobolopolis/snapcraft
bogdanap/snapcraft
boghison/snapcraft
btenaglia/snapcraft
bzoltan1/snapcraft
caio1982/snapcraft
caldav/snapcraft
chadmiller/snapcraft
chenhan1218/snapcraft
chihchun/snapcraft
chipaca/snapcraft
cholcombe973/snapcraft
chrisglass/snapcraft
cjwatson/snapcraft
clobrano/snapcraft
codeofdusk/snapcraft
cpaelzer/snapcraft
cprov/snapcraft
cratliff/snapcraft
croepha/snapcraft
cwayne18/snapcraft
danklut/snapcraft
dholbach/snapcraft
diddledan/snapcraft
didrocks/snapcraft
dplanella/snapcraft
dpniel/snapcraft
dustinkirkland/snapcraft
earnubs/snapcraft
ehbello/snapcraft
elopio/snapcraft
evandandrea/snapcraft
facundobatista/snapcraft
fallen/snapcraft
fazerlicourice7/snapcraft
felicianotech/snapcraft
fgallina/snapcraft
fgimenez/snapcraft
filibtester/snapcraft
flexiondotorg/snapcraft
fmanea/snapcraft
fnordahl/snapcraft
franciscocpg/snapcraft
frankban/snapcraft
gnuoy/snapcraft
gsilvapt/snapcraft
gunawanw9/snapcraft
gxx9203/snapcraft
hasansaikat/snapcraft
jamiedbennett/snapcraft
javacruft/snapcraft
jaymell/snapcraft
jdxcode/snapcraft
jhobbs/snapcraft
jocave/snapcraft
joedborg/snapcraft
jonathon-love/snapcraft
jorgher/snapcraft
josepht/snapcraft
justincan/snapcraft
kalikiana/snapcraft
kissiel/snapcraft
kspviswa/snapcraft
kustomzone/snapcraft
kyrofa/snapcraft
larryprice/snapcraft
leecow/snapcraft
liu-xiao-guo/snapcraft
lool/snapcraft
m-shibata/snapcraft
malept/snapcraft
mariogrip/snapcraft
markshuttle/snapcraft
maxiberta/snapcraft
mbruzek/snapcraft
mhall119/snapcraft
mikemccracken/snapcraft
morphis/snapcraft
mrjogo/snapcraft
msis/snapcraft
mtau87/snapcraft
mvayngrib/snapcraft
mvo5/snapcraft
mwhudson/snapcraft
nathanhaines/snapcraft
naufraghi/snapcraft
nefelim/snapcraft
nhandler/snapcraft
nottrobin/snapcraft
nvcexploder/snapcraft
oSoMoN/snapcraft
ops-snappy/snapcraft
pachulo/snapcraft
pedrococa/snapcraft
piso77/snapcraft
plars/snapcraft
pombredanne/snapcraft
psivaa/snapcraft
q0wOp/snapcraft
rafaelcaricio/snapcraft
ralsina/snapcraft
rbreitenmoser/snapcraft
ricardokirkner/snapcraft
rmescandon/snapcraft
robert-ancell/snapcraft
robgev/snapcraft
robotlinker/snapcraft
rowhit/snapcraft
roxyd/snapcraft
sdeancos/snapcraft
seawaywen/snapcraft
seb128/snapcraft
sergiusens/snapcraft
shawn111/snapcraft
simon-jentzsch/snapcraft
sjpan/snapcraft
smith-i/snapcraft
smoser/snapcraft
snapcore-io-st/snapcraft
snappy-m-o/snapcraft
sparkiegeek/snapcraft
squidsoup/snapcraft
ssweeny/snapcraft
stephenbhope/snapcraft
stevenwilkin/snapcraft
stgraber/snapcraft
strukturag/snapcraft
stub42/snapcraft
surajwarrier05/snapcraft
tachyons/snapcraft
tasdomas/snapcraft
techraf/snapcraft
ted-gould/snapcraft
teknoraver/snapcraft
thomir/snapcraft
tim-sueberkrueb/snapcraft
timchen119/snapcraft
timjp87/snapcraft
torusJKL/snapcraft
tsdgeos/snapcraft
tsimonq2/snapcraft
tuksik/snapcraft
untriangle/snapcraft
vilagithub/snapcraft
vilvo/snapcraft
walimis/snapcraft
williamcrowe/snapcraft
yphus/snapcraft
yu-yang-halo/snapcraft
zhangtuoparis13/snapcraft
zyga/snapcraft
Nothing to show
Choose a Head Repository
snapcore/snapcraft
3v1n0/snapcraft
AdrianRubio/snapcraft
AlexandreAbreu/snapcraft
CNXTEoEorg/snapcraft
CSRedRat/snapcraft
CavanJ/snapcraft
ChrisMacNaughton/snapcraft
Conan-Kudo/snapcraft
EduardoVega/snapcraft
Eroui/snapcraft
Fohlen/snapcraft
General-Beck/snapcraft
JamesLinus/snapcraft
JuanJ67m/snapcraft
Laserbear/snapcraft
LefterisJP/snapcraft
Lingaprahasam/snapcraft
M0ses/snapcraft
Magical-Chicken/snapcraft
MaxLeiter/snapcraft
Mega-Tr0n/snapcraft
MonJamp/snapcraft
OddBloke/snapcraft
OpnSrcConstruction/snapcraft
RAOF/snapcraft
Roadmaster/snapcraft
RobLoach/snapcraft
SamYaple/snapcraft
SamuelWeiss/snapcraft
Saviq/snapcraft
StetHD/snapcraft
ZenHarbinger/snapcraft
albertodonato/snapcraft
aleixpol/snapcraft
alexcrichton/snapcraft
alextnewman/snapcraft
andyli/snapcraft
ankurjain41282/snapcraft
annesteenbeek/snapcraft
apachelogger/snapcraft
asac/snapcraft
attente/snapcraft
barkinet/snapcraft
battlemidget/snapcraft
bjornt/snapcraft
blakerouse/snapcraft
blimjoe/snapcraft
bloodearnest/snapcraft
bobolopolis/snapcraft
bogdanap/snapcraft
boghison/snapcraft
btenaglia/snapcraft
bzoltan1/snapcraft
caio1982/snapcraft
caldav/snapcraft
chadmiller/snapcraft
chenhan1218/snapcraft
chihchun/snapcraft
chipaca/snapcraft
cholcombe973/snapcraft
chrisglass/snapcraft
cjwatson/snapcraft
clobrano/snapcraft
codeofdusk/snapcraft
cpaelzer/snapcraft
cprov/snapcraft
cratliff/snapcraft
croepha/snapcraft
cwayne18/snapcraft
danklut/snapcraft
dholbach/snapcraft
diddledan/snapcraft
didrocks/snapcraft
dplanella/snapcraft
dpniel/snapcraft
dustinkirkland/snapcraft
earnubs/snapcraft
ehbello/snapcraft
elopio/snapcraft
evandandrea/snapcraft
facundobatista/snapcraft
fallen/snapcraft
fazerlicourice7/snapcraft
felicianotech/snapcraft
fgallina/snapcraft
fgimenez/snapcraft
filibtester/snapcraft
flexiondotorg/snapcraft
fmanea/snapcraft
fnordahl/snapcraft
franciscocpg/snapcraft
frankban/snapcraft
gnuoy/snapcraft
gsilvapt/snapcraft
gunawanw9/snapcraft
gxx9203/snapcraft
hasansaikat/snapcraft
jamiedbennett/snapcraft
javacruft/snapcraft
jaymell/snapcraft
jdxcode/snapcraft
jhobbs/snapcraft
jocave/snapcraft
joedborg/snapcraft
jonathon-love/snapcraft
jorgher/snapcraft
josepht/snapcraft
justincan/snapcraft
kalikiana/snapcraft
kissiel/snapcraft
kspviswa/snapcraft
kustomzone/snapcraft
kyrofa/snapcraft
larryprice/snapcraft
leecow/snapcraft
liu-xiao-guo/snapcraft
lool/snapcraft
m-shibata/snapcraft
malept/snapcraft
mariogrip/snapcraft
markshuttle/snapcraft
maxiberta/snapcraft
mbruzek/snapcraft
mhall119/snapcraft
mikemccracken/snapcraft
morphis/snapcraft
mrjogo/snapcraft
msis/snapcraft
mtau87/snapcraft
mvayngrib/snapcraft
mvo5/snapcraft
mwhudson/snapcraft
nathanhaines/snapcraft
naufraghi/snapcraft
nefelim/snapcraft
nhandler/snapcraft
nottrobin/snapcraft
nvcexploder/snapcraft
oSoMoN/snapcraft
ops-snappy/snapcraft
pachulo/snapcraft
pedrococa/snapcraft
piso77/snapcraft
plars/snapcraft
pombredanne/snapcraft
psivaa/snapcraft
q0wOp/snapcraft
rafaelcaricio/snapcraft
ralsina/snapcraft
rbreitenmoser/snapcraft
ricardokirkner/snapcraft
rmescandon/snapcraft
robert-ancell/snapcraft
robgev/snapcraft
robotlinker/snapcraft
rowhit/snapcraft
roxyd/snapcraft
sdeancos/snapcraft
seawaywen/snapcraft
seb128/snapcraft
sergiusens/snapcraft
shawn111/snapcraft
simon-jentzsch/snapcraft
sjpan/snapcraft
smith-i/snapcraft
smoser/snapcraft
snapcore-io-st/snapcraft
snappy-m-o/snapcraft
sparkiegeek/snapcraft
squidsoup/snapcraft
ssweeny/snapcraft
stephenbhope/snapcraft
stevenwilkin/snapcraft
stgraber/snapcraft
strukturag/snapcraft
stub42/snapcraft
surajwarrier05/snapcraft
tachyons/snapcraft
tasdomas/snapcraft
techraf/snapcraft
ted-gould/snapcraft
teknoraver/snapcraft
thomir/snapcraft
tim-sueberkrueb/snapcraft
timchen119/snapcraft
timjp87/snapcraft
torusJKL/snapcraft
tsdgeos/snapcraft
tsimonq2/snapcraft
tuksik/snapcraft
untriangle/snapcraft
vilagithub/snapcraft
vilvo/snapcraft
walimis/snapcraft
williamcrowe/snapcraft
yphus/snapcraft
yu-yang-halo/snapcraft
zhangtuoparis13/snapcraft
zyga/snapcraft
Nothing to show
- 1 commit
- 2 files changed
- 0 commit comments
- 1 contributor
Commits on Oct 18, 2017
Carlo Lobrano
Removed dependency on VERSION_ID in os-release
_get_system_libs depends on VERSION_ID for the name of the file that is expected to contain the list of shared libraries to exclude from the build. However, according to os-release(5), VERSION_ID is just optional, so its absence should not cause failures. With this commit, the absence of VERSION_ID is considered as the file with the list of shared libraries to be excluded does not exist. Moreover, added dedicated test in snapcraft/tests/test_libraries.py using Gentoo os-release-info, which does not have VERSION_ID field. Fixes https://bugs.launchpad.net/snapcraft/+bug/1722650
Unified
Split
Showing
with
32 additions
and 3 deletions.
- +6 −3 snapcraft/internal/libraries.py
- +26 −0 snapcraft/tests/test_libraries.py
View
9
snapcraft/internal/libraries.py
| @@ -66,10 +66,13 @@ def _get_system_libs(): | ||
| if _libraries: | ||
| return _libraries | ||
| - release = common.get_os_release_info()['VERSION_ID'] | ||
| - lib_path = os.path.join(common.get_librariesdir(), release) | ||
| + try: | ||
| + release = common.get_os_release_info()['VERSION_ID'] | ||
| + lib_path = os.path.join(common.get_librariesdir(), release) | ||
| + except KeyError: | ||
| + lib_path = None | ||
| - if not os.path.exists(lib_path): | ||
| + if not lib_path or not os.path.exists(lib_path): | ||
| logger.debug('No libraries to exclude from this release') | ||
| # Always exclude libc.so.6 | ||
| return frozenset(['libc.so.6']) | ||
View
26
snapcraft/tests/test_libraries.py
| @@ -146,3 +146,29 @@ def setUp(self): | ||
| def test_fail_gracefully_if_system_libs_not_found(self): | ||
| self.assertThat(libraries.get_dependencies('foo'), Equals([])) | ||
| + | ||
| + | ||
| +class TestSystemLibsOnReleasesWithNoVersionId(tests.TestCase): | ||
| + | ||
| + def setUp(self): | ||
| + super().setUp() | ||
| + | ||
| + libraries._libraries = None | ||
| + | ||
| + patcher = mock.patch('snapcraft.internal.common.get_os_release_info') | ||
| + distro_mock = patcher.start() | ||
| + distro_mock.return_value = {'NAME': 'Gentoo', | ||
| + 'ID': 'gentoo', | ||
| + 'PRETTY_NAME': "Gentoo/Linux", | ||
| + 'ANSI_COLOR': "1;32", | ||
| + 'HOME_URL': "http://www.gentoo.org/", | ||
| + 'SUPPORT_URL': | ||
| + "http://www.gentoo.org/main/en/support\ | ||
| + .xml", | ||
| + 'BUG_REPORT_URL': | ||
| + "https://bugs.gentoo.org/"} | ||
| + self.addCleanup(patcher.stop) | ||
| + | ||
| + def test_fail_gracefully_if_no_version_id_found(self): | ||
| + self.assertThat(libraries._get_system_libs(), | ||
| + Equals(frozenset(['libc.so.6']))) | ||