You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+17
Original file line number
Diff line number
Diff line change
@@ -7,14 +7,31 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
7
7
8
8
## [Unreleased]
9
9
### Added
10
+
- Special handling of attempts to run the `arduino_ci.rb` CI script against the ruby library instead of an actual Arduino project
11
+
- Explicit checks for attemping to test `arduino_ci` itself as if it were a library, resolving a minor annoyance to this developer.
12
+
- Code coverage tooling
13
+
- Explicit check and warning for library directory names that do not match our guess of what the library should/would be called
14
+
- Symlink tests for `Host`
10
15
11
16
### Changed
17
+
- Arduino backend is now `arduino-cli` version `0.13.0`
18
+
-`ArduinoCmd` is now `ArduinoBackend`
19
+
-`CppLibrary` now relies largely on `ArduinoBackend` instead of making its own judgements about libraries (metadata, includes, and examples)
20
+
-`ArduinoBackend` functionality related to `CppLibrary` now lives in `CppLibrary`
21
+
-`CppLibrary` now works in an installation-first manner for exposure to `arduino-cli`'s logic -- without installation, there is no ability to reason about libraries
22
+
-`CppLibrary` forces just-in-time recursive dependency installation in order to work sensibly
23
+
-`ArduinoBackend` maintains the central "best guess" logic on what a library (on disk) might be named
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
-1
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,6 @@ See `SampleProjects/TestSomething/test/*.cpp` for the existing tests (run by rsp
31
31
32
32
To speed up testing by targeting only the files you're working on, you can set several environment variables that `bundle exec rspec` will respond to:
33
33
34
-
*`ARDUINO_CI_SKIP_SPLASH_SCREEN_RSPEC_TESTS`: if set, this will avoid any rspec test that calls the arduino executable (and as such, causes the splash screen to pop up).
35
34
*`ARDUINO_CI_SKIP_RUBY_RSPEC_TESTS`: if set, this will skip all tests against ruby code (useful if you are not changing Ruby code).
36
35
*`ARDUINO_CI_SKIP_CPP_RSPEC_TESTS`: if set, this will skip all tests against the `TestSomething` sample project (useful if you are not changing C++ code).
37
36
*`ARDUINO_CI_SELECT_CPP_TESTS=<glob>`: if set, this will skip all C++ unit tests whose filenames don't match the provided glob (executed in the tests directory)
@@ -36,6 +36,9 @@ For a bare-bones example that you can copy from, see [SampleProjects/DoSomething
36
36
37
37
The complete set of C++ unit tests for the `arduino_ci` library itself are in the [SampleProjects/TestSomething](SampleProjects/TestSomething) project. The [test files](SampleProjects/TestSomething/test/) are named after the type of feature being tested.
38
38
39
+
> Arduino expects all libraries to be in a specific `Arduino/libraries` directory on your system. If your library is elsewhere, `arduino_ci` will _automatically_ create a symbolic link in the `libraries` directory that points to the directory of the project being tested. This simplifieds working with project dependencies, but **it can have unintended consequences on Windows systems** because [in some cases deleting a folder that contains a symbolic link to another folder can cause the _entire linked folder_ to be removed instead of just the link itself](https://superuser.com/a/306618).
40
+
>
41
+
> If you use a Windows system **it is recommended that you only run `arduino_ci` from project directories that are already inside the `libraries` directory**
0 commit comments