= !MapGuide RFC 142 - ACE Upgrade = This page contains a change request (RFC) for the !MapGuide Open Source project. More !MapGuide RFCs can be found on the [wiki:MapGuideRfcs RFCs] page. == Status == ||RFC Template Version||(1.0)|| ||Submission Date||1 July 2014|| ||Last Modified||28 Aug 2014|| ||Author||Jackie Ng|| ||RFC Status||adopted|| ||Implementation Status||completed|| ||Proposed Milestone|||| ||Assigned PSC guide(s)|||| ||'''Voting History'''|||| ||+1||Jackie,Crispin,Trevor,Kevin|| ||+0|||| ||-0|||| ||-1|||| ||No vote||Haris,Gordon|| == Overview == This RFC updates !MapGuide to use the latest version of ACE. For details, refer to ACE website: http://www.cs.wustl.edu/~schmidt/ACE.html == Motivation == Where possible, MapGuide's thirdparty components should be regularly kept up to date to ensure they get the latest bug fixes and enhancements. ACE is one such component that's several versions behind now and should be updated to the latest version. == Proposed Solution == Upgrade existing OEM ACE 5.8 library to the latest ACE library version (at the time this RFC was drafted), which was 6.2.6 == Implications == Several macros defined in previous versions of ACE no longer exist: * ACE_LIB_TEXT (replaced with ACE_TEXT) * ACE_RCSID (no replacement. All references removed) * ACE_static_cast (no replacement. All references now use raw static_cast) On Windows, the MapGuideCommonApi and WebApi projects now require an explicit link to ACE to avoid unresolved external symbol errors due to ACE types being exposed by various public headers in MapGuideCommon == Test Plan == Build/Run on Windows/Linux. Ensure existing unit test suite passes. == Funding/Resources == Community