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.