This repository was archived by the owner on Apr 17, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 39
Release v0.6 #44
Merged
Merged
Release v0.6 #44
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
It previously had been part of the SDK-discovery module.
# Conflicts: # .travis.yml # appveyor.yml
All required dependencies are currently met, so the time-consuming 'brew' actions such as 'update' and 'upgrade' are not required. Also removed output of Arduino SDK's directory contents on failed builds.
SDK won't be downloaded from the web if its' cache exists.
…n 'AppVeyor'. Also refactored some env variables defined during the 'install' phase to be standard variables as they're not required to be environmental. At last removed cache dependency from SDK path to version, at least for now.
Bumped latest SDK version to 1.8.7 (Accidentally reverted back to 1.8.6 a few commits back).
…l' section. Also removed instruction to copy 'mingw32-make' to 'make', calling 'ming32-make' directly later in the build phase.
Added support for Travis-CI
…nch in 'AppVeyor'.
Cached Arduino SDK in AppVeyor builds
Fix arduino sdk path finding issue on Mac
It can now be used to add 3rd-party arduino libraries located outside the SDK, or having a name that doesn't comply with the current used scheme (Will be fixed soon). On the same note - Added an example that uses a 3rd-party/custom arduino library, leveraging the above.
It instructs it to find the library without altering its' name to an "Arduino-Compliant" name.
Updated code across all framework to use this function.
It allows functions to accept practically unlimited sources (or any other arbitrary value) as long as any reserved arguments/options aren't encountered. When at least one is encountered, processing stops and the already-parsed arguments are returned.
The `add_arduino_library` function has been updated to use this function in order to remove the inconvenient 'library_root_dir' argument it used to accept. As such, updated all other code using this API.
Everything related to the library properties file is now passed using the 'LIB_PROPS_FILE' optional argument. Also added utility function to get a library's properties file based on a given root directory - It simply appends the properties file name (which is now stored as a default cache variable) and checks for existence before returning.
… now 1st. Updated usages accordingly. Also updated the `link_library_flags` function to use the scope parsing function, it was somehow missed until now.
…parsing to utility macro.
…rsing "unlimited" arguments, such as sources.
Applied library-centric refactoring
… directory. This is enough to determine whether the library exists and adds support for libraries that don't specify the properties file. The properties file is found later in the `add_arduino_library` function. Added an example for a properties-less library named 'Skywriter'.
…ary` function. It's no longer used as the function automatically finds this file itself.
…ths. It also can search the 'libraries' and 'dependencies' sub-dirs.
…aders. This is relevant for libraries conforming to the 1.0 standard, where there's no 'src' sub-dir. The specs say that besides the root dir, 'utility' sub-dir should be part of the search as well.
Added support for libraries that don't have a properties file
Reordered 'Readme' paragraphs and rephrased 'Features' section. Updated 'Authors' Updated 'Changelog' to match all 0.6 changes
Updated the example in the 'Usage' section inside 'Readme' as well.
Updated 'Changelog' to list change in project's workflow model. Updated 'Contributing' to match new workflow model. Also rephrased a bit.
…get. Solution is to use argument-source parsing as used in the 'Executable' API. Also fixed bug where sketch-to-source conversion would fail when the matching index to insert the platform's header include line to was 0, i.e. the first line. At last, removed the 'header-validation' process in case a header included by a sketch doesn't resolve to any known library - It's simply impossible to validate it against the target properties since it's something known only at cmake's generation, not configuration.
Refactored the sketch-to-source conversion model as well, optimizing and handling a few edge-cases.
Added source-parsing bug fix to 'Change log'.
…itly given. Updated usages accordingly.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Official v0.6 release.