.NET Library for working with CMSIS-Pack component packaging for embedded devices
Перейти к файлу
Steve Maillet b7970d2b06 - Added more DeviceVendorEnum values based on non-conforming real world description files
- Added current (1.4.6) Pack.XSD to repository for reference
- Updated FileDownloadProgress to take advantage of C# 6 language features
- renamed several methods to use xxxAsync standard naming
- Added IDisposable to IRepository
- Added IRepositoryProvider to abstract information about respository locations from applications.
- Added MDK specific repository provider
- removed PackIndex.DefaultIndexUriPath it is now part of the provider
- removed APIs that assumed the default index URI
- Added support for downloading missing PDSC files from the index URI
- updated PackRepository.LastUpdatedTimeUTC so that if the index file doesn't exist it will provide a default constructed DateTime so it will be earlier than DateTime.Now
- Added new test/debug app to parse all the PDSC files and validate them against the "official" schemas to log errors in the official released and apparently "sanctioned" PDSC files that are not in conformance with the schema. This includes some workarounds and is helping to point to additional new workarounds.
2016-09-02 21:37:40 -07:00
CMSIS.Pack - Added more DeviceVendorEnum values based on non-conforming real world description files 2016-09-02 21:37:40 -07:00
NetmfPackInstaller - Added more DeviceVendorEnum values based on non-conforming real world description files 2016-09-02 21:37:40 -07:00
SemVer.NET -Moved CMSIS-PAck specific version parsing out of SemanticVersion classes to keep SemanticVersion clean and conformant, while still handling the lrelaxed parsing needs of CMSIS 2016-04-07 22:02:15 -07:00
UnitTests -Moved CMSIS-PAck specific version parsing out of SemanticVersion classes to keep SemanticVersion clean and conformant, while still handling the lrelaxed parsing needs of CMSIS 2016-04-07 22:02:15 -07:00
ValidatePackSchema - Added more DeviceVendorEnum values based on non-conforming real world description files 2016-09-02 21:37:40 -07:00
.gitignore Initial commit 2016-03-28 07:50:48 -07:00
LICENSE Initial commit 2016-03-28 07:50:48 -07:00
NetmfPackInstaller.sln - Added more DeviceVendorEnum values based on non-conforming real world description files 2016-09-02 21:37:40 -07:00
README.md Update README.md 2016-04-10 08:49:02 -07:00

README.md

CMSIS.Pack

.NET Library for working with CMSIS-Pack component packaging for embedded devices

This library is still in the early stages of development and includes a robust SemanticVersion parser that can handle the non-conformant real world pack description files. Unfortunately the official CMSIS-Pack documentation specifies a relaxed syntax for SemanticVersion numbers, furthermore there are world PDSC files published that don't fully conform to the published XSD. In addition, the official HTML documentation included with CMSIS itself is not consistent with the officially published Pack.XSD file. Thus, this library has to do some dancing to resolve such ambiguities and can't just rely on a validating XML parser with the official schema and a standard SemanticVersion parser.

Current State

At this point in time it can parse all of the currently published PDSC files, there is a simple application "netmfpackinstaller" that can show all the packs along with some basic information.

More refactoring work is needed to make the classes originally generated via XSD.exe more normal .NET style, including specifying default values that are defined in the documentation but not in the schema.