Skip to content

Commit b9a77f5

Browse files
committed
fix packages being added to the package manager even if they were not respecting the specification
1 parent 664c9b6 commit b9a77f5

File tree

2 files changed

+32
-28
lines changed

2 files changed

+32
-28
lines changed

arduino/cores/packagemanager/loader.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,10 @@ func (pm *PackageManager) LoadHardwareFromDirectory(path *paths.Path) []*status.
144144
statuses = append(statuses, errs...)
145145
}
146146
}
147+
// If the Package does not contain Platforms or Tools we remove it since does not contain anything valuable
148+
if len(targetPackage.Platforms) == 0 && len(targetPackage.Tools) == 0 {
149+
delete(pm.Packages, packager)
150+
}
147151
}
148152

149153
return statuses
@@ -261,7 +265,6 @@ func (pm *PackageManager) loadPlatform(targetPackage *cores.Package, platformPat
261265
// case: ARCHITECTURE/VERSION/boards.txt
262266
// let's dive into VERSION directories
263267

264-
platform := targetPackage.GetOrCreatePlatform(architecture)
265268
versionDirs, err := platformPath.ReadDir()
266269
if err != nil {
267270
return status.Newf(codes.FailedPrecondition, tr("reading dir %[1]s: %[2]s"), platformPath, err)
@@ -279,6 +282,7 @@ func (pm *PackageManager) loadPlatform(targetPackage *cores.Package, platformPat
279282
if err != nil {
280283
return status.Newf(codes.FailedPrecondition, tr("invalid version dir %[1]s: %[2]s"), versionDir, err)
281284
}
285+
platform := targetPackage.GetOrCreatePlatform(architecture)
282286
release := platform.GetOrCreateRelease(version)
283287
if err := pm.loadPlatformRelease(release, versionDir); err != nil {
284288
return status.Newf(codes.FailedPrecondition, tr("loading platform release %[1]s: %[2]s"), release, err)

i18n/data/en.po

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2474,7 +2474,7 @@ msgstr "can't find latest release of %s"
24742474
msgid "can't find main Sketch file in %s"
24752475
msgstr "can't find main Sketch file in %s"
24762476

2477-
#: arduino/cores/packagemanager/loader.go:791
2477+
#: arduino/cores/packagemanager/loader.go:795
24782478
msgid "can't find pattern for discovery with id %s"
24792479
msgstr "can't find pattern for discovery with id %s"
24802480

@@ -2557,7 +2557,7 @@ msgstr "computing hash: %s"
25572557
msgid "could not find a valid build artifact"
25582558
msgstr "could not find a valid build artifact"
25592559

2560-
#: arduino/cores/packagemanager/loader.go:728
2560+
#: arduino/cores/packagemanager/loader.go:732
25612561
msgid "creating discovery: %s"
25622562
msgstr "creating discovery: %s"
25632563

@@ -2598,11 +2598,11 @@ msgstr "directory doesn't exist: %s"
25982598
msgid "discovery %[1]s process not started: %[2]w"
25992599
msgstr "discovery %[1]s process not started: %[2]w"
26002600

2601-
#: arduino/cores/packagemanager/loader.go:719
2601+
#: arduino/cores/packagemanager/loader.go:723
26022602
msgid "discovery not found: %s"
26032603
msgstr "discovery not found: %s"
26042604

2605-
#: arduino/cores/packagemanager/loader.go:723
2605+
#: arduino/cores/packagemanager/loader.go:727
26062606
msgid "discovery not installed: %s"
26072607
msgstr "discovery not installed: %s"
26082608

@@ -2739,7 +2739,7 @@ msgstr "getting build properties for board %[1]s: %[2]s"
27392739
msgid "getting discovery dependencies for platform %[1]s: %[2]s"
27402740
msgstr "getting discovery dependencies for platform %[1]s: %[2]s"
27412741

2742-
#: arduino/cores/packagemanager/loader.go:672
2742+
#: arduino/cores/packagemanager/loader.go:676
27432743
msgid "getting parent dir of %[1]s: %[2]s"
27442744
msgstr "getting parent dir of %[1]s: %[2]s"
27452745

@@ -2856,7 +2856,7 @@ msgstr "invalid path writing inventory file: %[1]s error: %[2]w"
28562856
msgid "invalid platform archive size: %s"
28572857
msgstr "invalid platform archive size: %s"
28582858

2859-
#: arduino/cores/packagemanager/loader.go:369
2859+
#: arduino/cores/packagemanager/loader.go:373
28602860
msgid "invalid pluggable monitor reference: %s"
28612861
msgstr "invalid pluggable monitor reference: %s"
28622862

@@ -2876,7 +2876,7 @@ msgstr "invalid recipe '%[1]s': %[2]s"
28762876
msgid "invalid value '%[1]s' for option '%[2]s'"
28772877
msgstr "invalid value '%[1]s' for option '%[2]s'"
28782878

2879-
#: arduino/cores/packagemanager/loader.go:280
2879+
#: arduino/cores/packagemanager/loader.go:283
28802880
msgid "invalid version dir %[1]s: %[2]s"
28812881
msgstr "invalid version dir %[1]s: %[2]s"
28822882

@@ -2913,17 +2913,17 @@ msgstr "listing ports from discovery %[1]s: %[2]w"
29132913
msgid "listing serial ports"
29142914
msgstr "listing serial ports"
29152915

2916-
#: arduino/cores/packagemanager/loader.go:307
2917-
#: arduino/cores/packagemanager/loader.go:316
2918-
#: arduino/cores/packagemanager/loader.go:321
2916+
#: arduino/cores/packagemanager/loader.go:311
2917+
#: arduino/cores/packagemanager/loader.go:320
2918+
#: arduino/cores/packagemanager/loader.go:325
29192919
msgid "loading %[1]s: %[2]s"
29202920
msgstr "loading %[1]s: %[2]s"
29212921

2922-
#: arduino/cores/packagemanager/loader.go:357
2922+
#: arduino/cores/packagemanager/loader.go:361
29232923
msgid "loading boards: %s"
29242924
msgstr "loading boards: %s"
29252925

2926-
#: arduino/cores/packagemanager/loader.go:627
2926+
#: arduino/cores/packagemanager/loader.go:631
29272927
msgid "loading bundled tools from %[1]s: %[2]s"
29282928
msgstr "loading bundled tools from %[1]s: %[2]s"
29292929

@@ -2941,20 +2941,20 @@ msgstr "loading library from %[1]s: %[2]s"
29412941
msgid "loading library.properties: %s"
29422942
msgstr "loading library.properties: %s"
29432943

2944-
#: arduino/cores/packagemanager/loader.go:256
2945-
#: arduino/cores/packagemanager/loader.go:284
2944+
#: arduino/cores/packagemanager/loader.go:260
2945+
#: arduino/cores/packagemanager/loader.go:288
29462946
msgid "loading platform release %[1]s: %[2]s"
29472947
msgstr "loading platform release %[1]s: %[2]s"
29482948

2949-
#: arduino/cores/packagemanager/loader.go:207
2949+
#: arduino/cores/packagemanager/loader.go:211
29502950
msgid "loading platform.txt: %v"
29512951
msgstr "loading platform.txt: %v"
29522952

2953-
#: arduino/cores/packagemanager/loader.go:594
2953+
#: arduino/cores/packagemanager/loader.go:598
29542954
msgid "loading tool release in %[1]s: %[2]s"
29552955
msgstr "loading tool release in %[1]s: %[2]s"
29562956

2957-
#: arduino/cores/packagemanager/loader.go:200
2957+
#: arduino/cores/packagemanager/loader.go:204
29582958
msgid "looking for boards.txt in %[1]s: %[2]s"
29592959
msgstr "looking for boards.txt in %[1]s: %[2]s"
29602960

@@ -3032,7 +3032,7 @@ msgstr "no versions available for the current OS"
30323032
msgid "opening archive file: %s"
30333033
msgstr "opening archive file: %s"
30343034

3035-
#: arduino/cores/packagemanager/loader.go:273
3035+
#: arduino/cores/packagemanager/loader.go:276
30363036
msgid "opening boards.txt: %s"
30373037
msgstr "opening boards.txt: %s"
30383038

@@ -3063,7 +3063,7 @@ msgstr "package '%s' not found"
30633063
msgid "package not found"
30643064
msgstr "package not found"
30653065

3066-
#: arduino/cores/packagemanager/loader.go:227
3066+
#: arduino/cores/packagemanager/loader.go:231
30673067
msgid "parsing IDE bundled index: %s"
30683068
msgstr "parsing IDE bundled index: %s"
30693069

@@ -3076,7 +3076,7 @@ msgstr "parsing fqbn: %s"
30763076
msgid "parsing library_index.json: %s"
30773077
msgstr "parsing library_index.json: %s"
30783078

3079-
#: arduino/cores/packagemanager/loader.go:189
3079+
#: arduino/cores/packagemanager/loader.go:193
30803080
msgid "path is not a platform directory: %s"
30813081
msgstr "path is not a platform directory: %s"
30823082

@@ -3094,7 +3094,7 @@ msgstr "platform %s is not installed"
30943094

30953095
#: arduino/cores/packagemanager/install_uninstall.go:65
30963096
#: arduino/cores/packagemanager/install_uninstall.go:108
3097-
#: arduino/cores/packagemanager/loader.go:456
3097+
#: arduino/cores/packagemanager/loader.go:460
30983098
#: commands/compile/compile.go:127
30993099
msgid "platform not installed"
31003100
msgstr "platform not installed"
@@ -3131,17 +3131,17 @@ msgstr "quitting discovery %[1]s: %[2]w"
31313131
msgid "reading %[1]s directory: %[2]s"
31323132
msgstr "reading %[1]s directory: %[2]s"
31333133

3134-
#: arduino/cores/packagemanager/loader.go:677
3134+
#: arduino/cores/packagemanager/loader.go:681
31353135
msgid "reading %[1]s: %[2]s"
31363136
msgstr "reading %[1]s: %[2]s"
31373137

3138-
#: arduino/cores/packagemanager/loader.go:267
3138+
#: arduino/cores/packagemanager/loader.go:270
31393139
#: arduino/libraries/librariesmanager/librariesmanager.go:196
31403140
msgid "reading dir %[1]s: %[2]s"
31413141
msgstr "reading dir %[1]s: %[2]s"
31423142

3143-
#: arduino/cores/packagemanager/loader.go:162
3144-
#: arduino/cores/packagemanager/loader.go:585
3143+
#: arduino/cores/packagemanager/loader.go:166
3144+
#: arduino/cores/packagemanager/loader.go:589
31453145
msgid "reading directory %[1]s: %[2]s"
31463146
msgstr "reading directory %[1]s: %[2]s"
31473147

@@ -3232,7 +3232,7 @@ msgstr "retrieving Arduino public keys: %s"
32323232
msgid "scanning examples: %s"
32333233
msgstr "scanning examples: %s"
32343234

3235-
#: arduino/cores/packagemanager/loader.go:663
3235+
#: arduino/cores/packagemanager/loader.go:667
32363236
msgid "searching for builtin_tools_versions.txt in %[1]s: %[2]s"
32373237
msgstr "searching for builtin_tools_versions.txt in %[1]s: %[2]s"
32383238

@@ -3253,7 +3253,7 @@ msgstr "sketch path is not valid"
32533253
msgid "sketchPath"
32543254
msgstr "sketchPath"
32553255

3256-
#: arduino/cores/packagemanager/loader.go:519
3256+
#: arduino/cores/packagemanager/loader.go:523
32573257
msgid "skipping loading of boards %s: malformed custom board options"
32583258
msgstr "skipping loading of boards %s: malformed custom board options"
32593259

0 commit comments

Comments
 (0)