@@ -32,14 +32,13 @@ import (
3232)
3333
3434var (
35- mutex = sync.Mutex {}
36- sdVersion = semver .ParseRelaxed ("1.1.0" )
37- flavors = []* cores.Flavor {
35+ serialDiscoveryVersion = semver .ParseRelaxed ("1.1.0" )
36+ serialDiscoveryFlavors = []* cores.Flavor {
3837 {
3938 OS : "i686-pc-linux-gnu" ,
4039 Resource : & resources.DownloadResource {
41- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_32bit.tar.bz2" , sdVersion ),
42- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_32bit.tar.bz2" , sdVersion ),
40+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_32bit.tar.bz2" , serialDiscoveryVersion ),
41+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_32bit.tar.bz2" , serialDiscoveryVersion ),
4342 Size : 1589443 ,
4443 Checksum : "SHA-256:e60fa16da2735f80410c636234a405bd1cc9306090cab4e312c4189e38f93f72" ,
4544 CachePath : "tools" ,
4847 {
4948 OS : "x86_64-pc-linux-gnu" ,
5049 Resource : & resources.DownloadResource {
51- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_64bit.tar.bz2" , sdVersion ),
52- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_64bit.tar.bz2" , sdVersion ),
50+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_64bit.tar.bz2" , serialDiscoveryVersion ),
51+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_64bit.tar.bz2" , serialDiscoveryVersion ),
5352 Size : 1611875 ,
5453 Checksum : "SHA-256:6232f852543094e9f73e1994e6888646fdcd24eca15fd4e5bde716a8e23046dc" ,
5554 CachePath : "tools" ,
5857 {
5958 OS : "i686-mingw32" ,
6059 Resource : & resources.DownloadResource {
61- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Windows_32bit.zip" , sdVersion ),
62- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Windows_32bit.zip" , sdVersion ),
60+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Windows_32bit.zip" , serialDiscoveryVersion ),
61+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Windows_32bit.zip" , serialDiscoveryVersion ),
6362 Size : 1719070 ,
6463 Checksum : "SHA-256:3efdc744a0ca11c5f9088525eb4363e90e2b6a43a0db23c5c6975a10d739c7cb" ,
6564 CachePath : "tools" ,
6867 {
6968 OS : "x86_64-mingw32" ,
7069 Resource : & resources.DownloadResource {
71- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Windows_64bit.zip" , sdVersion ),
72- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Windows_64bit.zip" , sdVersion ),
70+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Windows_64bit.zip" , serialDiscoveryVersion ),
71+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Windows_64bit.zip" , serialDiscoveryVersion ),
7372 Size : 1683799 ,
7473 Checksum : "SHA-256:c6296b92459160f4c0bf7d2e1234cd53fd64f44cb3fa8c3a4b10dd6670466c69" ,
7574 CachePath : "tools" ,
7877 {
7978 OS : "x86_64-apple-darwin" ,
8079 Resource : & resources.DownloadResource {
81- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_macOS_64bit.tar.bz2" , sdVersion ),
82- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_macOS_64bit.tar.bz2" , sdVersion ),
80+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_macOS_64bit.tar.bz2" , serialDiscoveryVersion ),
81+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_macOS_64bit.tar.bz2" , serialDiscoveryVersion ),
8382 Size : 1620346 ,
8483 Checksum : "SHA-256:4052a64dd68090726247dea7f03656eae951549df9878362dcedfcef116a9e9f" ,
8584 CachePath : "tools" ,
8887 {
8988 OS : "arm-linux-gnueabihf" ,
9089 Resource : & resources.DownloadResource {
91- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_ARM.tar.bz2" , sdVersion ),
92- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_ARM.tar.bz2" , sdVersion ),
90+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_ARM.tar.bz2" , serialDiscoveryVersion ),
91+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_ARM.tar.bz2" , serialDiscoveryVersion ),
9392 Size : 1511104 ,
9493 Checksum : "SHA-256:fe68fd5abdfebe0f01c48c3eac16d27af46ec2391da87de44571e6ea2dab31e7" ,
9594 CachePath : "tools" ,
9897 {
9998 OS : "arm64-linux-gnueabihf" ,
10099 Resource : & resources.DownloadResource {
101- ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_ARM64.tar.bz2" , sdVersion ),
102- URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_ARM64.tar.bz2" , sdVersion ),
100+ ArchiveFileName : fmt .Sprintf ("serial-discovery_v%s_Linux_ARM64.tar.bz2" , serialDiscoveryVersion ),
101+ URL : fmt .Sprintf ("https://downloads.arduino.cc/tools/serial-discovery_v%s_Linux_ARM64.tar.bz2" , serialDiscoveryVersion ),
103102 Size : 1500998 ,
104103 Checksum : "SHA-256:1e6bcb6b7790d38863df15395c96baba239cb56233d7ef2d78bcb2b3efb1bc5d" ,
105104 CachePath : "tools" ,
@@ -123,12 +122,14 @@ type eventJSON struct {
123122 Ports []* BoardPort `json:"ports"`
124123}
125124
125+ var listBoardMutex sync.Mutex
126+
126127// ListBoards foo
127128func ListBoards (pm * packagemanager.PackageManager ) ([]* BoardPort , error ) {
128129 // ensure the connection to the discoverer is unique to avoid messing up
129130 // the messages exchanged
130- mutex .Lock ()
131- defer mutex .Unlock ()
131+ listBoardMutex .Lock ()
132+ defer listBoardMutex .Unlock ()
132133
133134 // get the bundled tool
134135 t , err := getBuiltinSerialDiscoveryTool (pm )
@@ -233,8 +234,8 @@ func WatchListBoards(pm *packagemanager.PackageManager) (<-chan *discovery.Event
233234
234235func getBuiltinSerialDiscoveryTool (pm * packagemanager.PackageManager ) (* cores.ToolRelease , error ) {
235236 builtinPackage := pm .Packages .GetOrCreatePackage ("builtin" )
236- ctagsTool := builtinPackage .GetOrCreateTool ("serial-discovery" )
237- ctagsRel := ctagsTool .GetOrCreateRelease (sdVersion )
238- ctagsRel .Flavors = flavors
239- return pm .Package ("builtin" ).Tool ("serial-discovery" ).Release (sdVersion ).Get ()
237+ serialDiscoveryTool := builtinPackage .GetOrCreateTool ("serial-discovery" )
238+ serialDiscoveryToolRel := serialDiscoveryTool .GetOrCreateRelease (serialDiscoveryVersion )
239+ serialDiscoveryToolRel .Flavors = serialDiscoveryFlavors
240+ return pm .Package ("builtin" ).Tool ("serial-discovery" ).Release (serialDiscoveryVersion ).Get ()
240241}
0 commit comments