GNU ARM Eclipse plug-ins v3.4.1-201704251808 released | web-jekyll

# GNU ARM Eclipse plug-ins v3.4.1-201704251808 released

Apr 25, 2017 / Liviu Ionescu / gnu, arm, eclipse, cmsis, packs

Version 3.4.1-201704251808 is a maintenance release, intended to update the plugins to the new CMSIS Packs specs and to also fix some bugs.

Binary files »

## New features

- [Issue:#199] starting with CMSIS Packs specs v1.4.8, ARM/Keil defined the format of the packs index as an `index.pidx` file; the previous undocumented `index.idx` file was deprecated; the plug-ins were upgraded and for new installs they default to the new `index.pidx` file; for existing workspaces, it is recommended to manually update the URL to `https://www.keil.com/pack/index.pidx` in the Preferences page C/C++ → Packages;
- [Issue:#200] starting with CMSIS Packs specs v1.4.8, the version fields can use the semver syntax; the parser was updated to support this new syntax and the packages are now ordered correctly when displaying the package list;
- [Issue:#137] to help identify possible syntax errors while processing the XML files, the location where the error occurred was added to the errors generated by the XML parser.

## Addressed bugs

- [Issue:#155] and [Issue:#157]: the lexicographic rule used to order versions was not appropriate, since versions like 1.10 were after 1.1, not after 1.9; the migration to semver also fixed this problem and the packages are ordered as expected;
- [Issue:#150] for SVDs using register clusters, the `<addressOffset>` element was erroneously ignored and the resulting register addresses were wrong; fixed, clusters and arrays do recursively add offsets on the way up to the top;
- [Issue:#144] in certain conditions, scrolling the content of the debugger configuration tabs did not work as expected; the logic behind the Debugger and Startup tabs was updated to exhibit the same scrolling behaviour as the Main tab;
- [Issue:#25] due to a bug, when multiple versions of a package were installed at the same time, they erroneously contributed multiple entries of the list of devices, boards and books; the code was fixed and duplicate records are now avoided.

## Template changes

- [Issue:#183] although support for the new M23 & M33 cores was added in the previous release, the project wizard was not able to use them; the wizard was updated to the full list;
- a copyright lawyer detected some possible ambiguous issues related to the code generated by the project wizards; to avoid such legal issues, the license of the C/C++ source files was changed to an explicit MIT license;
- [Issue:#153] the `raise()` & `kill()` functions generated for semihosting configurations were marked as `weak` to allow redefinition;
- [Issue:#159] the configurations created by the project wizards included tracing definitions even for the Release configurations; these definitions were removed, and `NDEBUG` was explicitly added to Release configurations to disable asserts.

## Other changes

- the update sites are currently migrated from SourceForge to Bintray; the public URL remains the same (`https://gnuarmeclipse.sourceforge.net/updates`) and will be automatically redirected to the new server; the full transition is expected to be complete by May 1st, 2017;
- the build scripts were updated to use SHA to compute the checksums for the generated binaries.

## Known problems

- none.

Edit