Boost C++ Libraries: Ticket #11888: boost.test throws an exception when passed a custom command line parameter https://svn.boost.org/trac10/ticket/11888 <p> At work we have lots of custom command line arguments for our tests and the upgrade from 1.58.0 to 1.59.0 no longer works. When running the executable our flags set ("--use_timeouts" in this case) runtime_config::init incorrectly throws a unrecognized_param exception from within locate_parameter when parsing our custom option. It looks like it is trying to find a likely typo but there are none as it's not anything to do with the built in arguments. </p> <p> The runtime_config.html documentation states "The rest of command line is forwarded to the test module initialization function supplied by you.". </p> <p> This stops us upgrading to versions greater than 1.59 which in turn means we cannot currently upgrade to Visual Studio 2015. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11888 Trac 1.4.3 Raffi Enficiaud Sat, 09 Jan 2016 14:39:22 GMT <link>https://svn.boost.org/trac10/ticket/11888#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11888#comment:1</guid> <description> <p> I believe you meant when you upgraded from 1.59 to 1.60, please confirm. </p> <p> The API for command line has changed in 1.60, and <code>--</code> needs to be added before user command line arguments, as explained eg. here <a href="http://www.boost.org/doc/libs/master/libs/test/doc/html/boost_test/change_log.html">http://www.boost.org/doc/libs/master/libs/test/doc/html/boost_test/change_log.html</a>. </p> <p> If you are using a test driver such as cmake, this can be easily achieved by testing against the version of boost. </p> </description> <category>Ticket</category> </item> <item> <author>James Whitworth <fun4jimmy@…></author> <pubDate>Sat, 09 Jan 2016 17:38:47 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/11888#comment:2 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11888#comment:2</guid> <description> <p> Ah ok, I just realised I didn't look at the 1.60 documentation. I skipped version 1.59 on windows when trying this upgrade as it was the latest version. I must have only looked at the 1.59 documentation though. I had to fix up some breaking api changes and someone had already fixed up similar errors when changing our linux builds over to version 1.59 so I wrongly assumed everything had changed in that version. </p> <p> Is there a more detailed version of the changes between these version? I couldn't find mention of some of the changes in the documentation for either version. Off the top of my head some of the changes were the methods of test reporter changed and the way of querying the runtime config. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Raffi Enficiaud</dc:creator> <pubDate>Sun, 10 Jan 2016 15:28:12 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/11888#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11888#comment:3</guid> <description> <p> There is the changelog that you may find here, that summarizes as accurately as possible the changes between versions: </p> <p> <a href="http://www.boost.org/doc/libs/master/libs/test/doc/html/boost_test/change_log.html">http://www.boost.org/doc/libs/master/libs/test/doc/html/boost_test/change_log.html</a> </p> <p> but maybe this deserves some more entry in the "runtime parameter configuration": </p> <p> <a href="http://www.boost.org/doc/libs/master/libs/test/doc/html/boost_test/runtime_config.html">http://www.boost.org/doc/libs/master/libs/test/doc/html/boost_test/runtime_config.html</a> </p> <p> What do you think would make the information more accessible? </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Raffi Enficiaud</dc:creator> <pubDate>Sun, 10 Jan 2016 15:28:28 GMT</pubDate> <title>owner, status changed https://svn.boost.org/trac10/ticket/11888#comment:4 https://svn.boost.org/trac10/ticket/11888#comment:4 <ul> <li><strong>owner</strong> changed from <span class="trac-author">Gennadiy Rozental</span> to <span class="trac-author">Raffi Enficiaud</span> </li> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">assigned</span> </li> </ul> Ticket Raffi Enficiaud Mon, 11 Jan 2016 14:25:27 GMT version changed https://svn.boost.org/trac10/ticket/11888#comment:5 https://svn.boost.org/trac10/ticket/11888#comment:5 <ul> <li><strong>version</strong> <span class="trac-field-old">Boost 1.59.0</span> → <span class="trac-field-new">Boost 1.60.0</span> </li> </ul> Ticket James Whitworth <fun4jimmy@…> Mon, 11 Jan 2016 15:37:33 GMT <link>https://svn.boost.org/trac10/ticket/11888#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11888#comment:6</guid> <description> <p> I think having the api in changes in <strong>change_log.html</strong> is the best place for them. I would have liked to know: </p> <ul><li>the call to <code>boost::unit_test::runtime_config::log_format()</code> was replaced with a generic template system <code>boost::unit_test::runtime_config::get&lt;boost::unit_test::output_format&gt;( boost::unit_test::runtime_config::OUTPUT_FORMAT)</code>, this could then link to the <strong>runtime_config.html</strong> page with a more detailed explanation </li><li>The enum for format types was renamed <code>boost::unit_test::XML</code> was renamed to <code>boost::unit_test::OF_XML</code> etc. </li><li><code>boost::unit_test::unit_test_log_formatter::test_unit_skipped()</code> now takes a const_string reason. </li><li><code>boost::unit_test::unit_test_log_formatter::log_exception()</code> was replaced with <code>log_exception_start</code> and <code>log_exception_finish</code> </li><li><code>boost::unit_test::unit_test_log_formatter</code> has new functions added for contexts: <code>entry_context_start()</code>, <code>log_entry_context()</code> and <code>entry_context_finish()</code> </li></ul><p> If all that was available from the <strong>change_log.html</strong> then there would be less digging around in the source to see what was required to fix up. If any of these were marked as internal to boost test then I understand it's up to me to fix them but if they are in the public api then it would be good to have some mention of the changes. </p> <p> I guess doing a diff with the last released version would get you a good idea of what should be mentioned. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Raffi Enficiaud</dc:creator> <pubDate>Wed, 13 Jan 2016 22:45:50 GMT</pubDate> <title>severity changed https://svn.boost.org/trac10/ticket/11888#comment:7 https://svn.boost.org/trac10/ticket/11888#comment:7 <ul> <li><strong>severity</strong> <span class="trac-field-old">Showstopper</span> → <span class="trac-field-new">Problem</span> </li> </ul> Ticket Raffi Enficiaud Sun, 11 Dec 2016 19:07:31 GMT status changed; resolution set https://svn.boost.org/trac10/ticket/11888#comment:8 https://svn.boost.org/trac10/ticket/11888#comment:8 <ul> <li><strong>status</strong> <span class="trac-field-old">assigned</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">wontfix</span> </li> </ul> <p> All those have been documented in 1.62 (api documentation). I believe modifying the change_log now would not improve this. Also there were so many changes between 1.58 and 1.59... </p> Ticket