Skip to content

Commit 078fd9f

Browse files
committed
Updated documentation
1 parent 1908634 commit 078fd9f

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

Diff for: docs/UPGRADING.md

+52
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,58 @@ Here you can find a list of migration guides to handle breaking changes between
44

55
## 0.28.0
66

7+
### Breaking changes in libraries name handling
8+
9+
In the structure `github.com/arduino/arduino-cli/arduino/libraries.Library` the field:
10+
11+
- `RealName` has been renamed to `Name`
12+
- `Name` has been renamed to `CanonicalName`
13+
14+
Now `Name` is the name of the library as it appears in the `library.properties` file and `CanonicalName` it's the name
15+
of the directory containing the library. The `CanonicalName` is usually the name of the library with non-alphanumeric
16+
characters converted to underscore, but it could be actually anything since the directory where the library is installed
17+
can be freely renamed.
18+
19+
This change improves the overall code base naming coherence since all the structures involving libraries have the `Name`
20+
field that refers to the library name as it appears in the `library.properties` file.
21+
22+
### `github.com/arduino/arduino-cli/arduino/libraries/librariesmanager.LibrariesManager.Install` removed parameter `installLocation`
23+
24+
The method:
25+
26+
```go
27+
func (lm *LibrariesManager) Install(indexLibrary *librariesindex.Release, libPath *paths.Path, installLocation libraries.LibraryLocation) error { ... }
28+
```
29+
30+
no more needs the `installLocation` parameter:
31+
32+
```go
33+
func (lm *LibrariesManager) Install(indexLibrary *librariesindex.Release, libPath *paths.Path) error { ... }
34+
```
35+
36+
The install location is determined from the libPath.
37+
38+
### `github.com/arduino/arduino-cli/arduino/libraries/librariesmanager.LibrariesManager.FindByReference` now returns a list of libraries.
39+
40+
The method:
41+
42+
```go
43+
func (lm *LibrariesManager) FindByReference(libRef *librariesindex.Reference, installLocation libraries.LibraryLocation) *libraries.Library { ... }
44+
```
45+
46+
has been changed to:
47+
48+
```go
49+
func (lm *LibrariesManager) FindByReference(libRef *librariesindex.Reference, installLocation libraries.LibraryLocation) libraries.List { ... }
50+
```
51+
52+
the method now returns all the libraries matching the criteria and not just the first one.
53+
54+
### `github.com/arduino/arduino-cli/arduino/libraries/librariesmanager.LibraryAlternatives` removed
55+
56+
The structure `librariesmanager.LibraryAlternatives` has been removed. The `libraries.List` object can be used as a
57+
replacement.
58+
759
### Breaking changes in UpdateIndex API (both gRPC and go-lang)
860

961
The gRPC message `cc.arduino.cli.commands.v1.UpdateIndexResponse` has been changed from:

0 commit comments

Comments
 (0)