This adds support for developing libraries on CloudPebble. Users can now
Create a pebble package project
Import/export pebble package projects
Build them in CloudPebble and export them
Link CloudPebble projects to each other as dependencies
Users can create public header files by selecting them as a type in the Source Files "Add New" menu.
In the settings window, settings not relevant to packages (e.g. display name, deprecated messageKeys, etc) are hidden
Bonus feature: get a list of all includable headers in (non-transitive) dependencies
The image above shows the UI for linking projects i.e. just a list of checkboxes. Only package projects appear in the list, and you can only tick projects which have actually been built since it is the built library that will be linked to.
Other things to note:
While dependency changes are being process, a loading spinner is shown in the sidebar instead of appearing in the dependencies page. (This seemed like the neatest way to do things once the dependencies page starting growing.)
When a user tries to export a package which depends on CloudPebble projects, it shows them this warning.
This adds support for developing libraries on CloudPebble. Users can now
The image above shows the UI for linking projects i.e. just a list of checkboxes. Only package projects appear in the list, and you can only tick projects which have actually been built since it is the built library that will be linked to.
Other things to note:
While dependency changes are being process, a loading spinner is shown in the sidebar instead of appearing in the dependencies page. (This seemed like the neatest way to do things once the dependencies page starting growing.)
When a user tries to export a package which depends on CloudPebble projects, it shows them this warning.
(Depends on #316 and #322 )