Add esomx, trackerm, p2 + eliminate duplicated data so new hardware platforms can easily be added #13
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.
Overview
Adds support for
esomx
andtrackerm
platforms. Also adjusts code so that future hardware platforms will not require custom modifications, but rather, just a simple update of@particle/device-constants
version and a re-release.The approach to eliminating duplicated hardware platform
tags
metadata was to depend on device-constantsfeatures
data directly and transforming the data slightly to comply with the internal data structures in platform.js.See sc-98440 for more details.
How to test?
Observe the new unit tests that cover the expected tags for each platform. Some of these tags are used in DVOS integration tests here: https://github.com/particle-iot/device-os/tree/develop/user/tests/integration
git checkout sc-98440/make-platforms-depend-on-device-constants
npm i
npm test
Observe that
esomx
,trackerm
, andp2
args can be passed to a build command like this: (you'll need to modify the args to match actual location of device-os on your machine)This command should fail in way that clearly illustrates that the
esomx
arg was accepted and that themake
system of device-os got executed. Instead ofError: Unrecognized filtering option: bonk
, you should see something like this: