Skip to content
Snippets Groups Projects
Commit fd628c9d authored by jcarpent's avatar jcarpent
Browse files

[Versioning] Change to use MAJOR.MINOR.PATCH convention

parent 5c492f52
No related branches found
No related tags found
No related merge requests found
......@@ -21,14 +21,14 @@
#include <Eigen/Core>
/// \brief Define the current version of Pinocchio
#define PINOCCHIO_WORLD_VERSION 1
#define PINOCCHIO_MAJOR_VERSION 2
#define PINOCCHIO_MINOR_VERSION 9
#define PINOCCHIO_MAJOR_VERSION 1
#define PINOCCHIO_MINOR_VERSION 2
#define PINOCCHIO_PATCH_VERSION 9
/// \brief Macro to check the current Pinocchio version against a version provided by x.y.z
#define PINOCCHIO_VERSION_AT_LEAST(x,y,z) (PINOCCHIO_WORLD_VERSION>x || (PINOCCHIO_WORLD_VERSION>=x && \
(PINOCCHIO_MAJOR_VERSION>y || (PINOCCHIO_MAJOR_VERSION>=y && \
PINOCCHIO_MINOR_VERSION>=z))))
#define PINOCCHIO_VERSION_AT_LEAST(x,y,z) (PINOCCHIO_MAJOR_VERSION>x || (PINOCCHIO_MAJOR_VERSION>=x && \
(PINOCCHIO_MINOR_VERSION>y || (PINOCCHIO_MINOR_VERSION>=y && \
PINOCCHIO_PATCH_VERSION>=z))))
/// \brief Empty macro argument
#define PINOCCHIO_MACRO_EMPTY_ARG
......
......@@ -32,15 +32,15 @@ namespace se3
///
/// \brief Returns the current version of Pinocchio as a string using
/// the following standard:
/// PINOCCHIO_MAJOR_VERSION.PINOCCHIO_MAJOR_VERSION.PINOCCHIO_MINOR_VERSION
/// PINOCCHIO_MINOR_VERSION.PINOCCHIO_MINOR_VERSION.PINOCCHIO_PATCH_VERSION
///
std::string printVersion(const std::string & delimiter = ".")
{
std::ostringstream oss;
oss
<< PINOCCHIO_WORLD_VERSION << delimiter
<< PINOCCHIO_MAJOR_VERSION << delimiter
<< PINOCCHIO_MINOR_VERSION;
<< PINOCCHIO_MINOR_VERSION << delimiter
<< PINOCCHIO_PATCH_VERSION;
return oss.str();
}
......@@ -48,23 +48,23 @@ namespace se3
/// \brief Checks if the current version of Pinocchio is at least the version provided
/// by the input arguments.
///
/// \param[in] world_version World version to check.
/// \param[in] major_version Major version to check.
/// \param[in] minor_version Minor version to check.
/// \param[in] patch_version Patch version to check.
///
/// \returns true if the current version of Pinocchio is greater than the version provided
/// by the input arguments.
///
bool checkVersionAtLeast(unsigned int world_version,
unsigned int major_version,
unsigned int minor_version)
bool checkVersionAtLeast(unsigned int major_version,
unsigned int minor_version,
unsigned int patch_version)
{
return
PINOCCHIO_WORLD_VERSION > world_version
|| (PINOCCHIO_WORLD_VERSION >= world_version
&& (PINOCCHIO_MAJOR_VERSION > major_version
|| (PINOCCHIO_MAJOR_VERSION >= major_version
&& PINOCCHIO_MINOR_VERSION >= minor_version)));
PINOCCHIO_MAJOR_VERSION > major_version
|| (PINOCCHIO_MAJOR_VERSION >= major_version
&& (PINOCCHIO_MINOR_VERSION > minor_version
|| (PINOCCHIO_MINOR_VERSION >= minor_version
&& PINOCCHIO_PATCH_VERSION >= patch_version)));
}
}
......
......@@ -28,15 +28,15 @@ BOOST_AUTO_TEST_CASE(test_version)
const string delimiter = ".";
ostringstream version_ref;
version_ref
<< PINOCCHIO_WORLD_VERSION << delimiter
<< PINOCCHIO_MAJOR_VERSION << delimiter
<< PINOCCHIO_MINOR_VERSION;
<< PINOCCHIO_MINOR_VERSION << delimiter
<< PINOCCHIO_PATCH_VERSION;
BOOST_CHECK_EQUAL(version_ref.str().c_str(),printVersion());
BOOST_CHECK(checkVersionAtLeast(0,0,0));
BOOST_CHECK(checkVersionAtLeast(PINOCCHIO_WORLD_VERSION,PINOCCHIO_MAJOR_VERSION,PINOCCHIO_MINOR_VERSION));
BOOST_CHECK(not checkVersionAtLeast(PINOCCHIO_WORLD_VERSION,PINOCCHIO_MAJOR_VERSION,PINOCCHIO_MINOR_VERSION+1));
BOOST_CHECK(checkVersionAtLeast(PINOCCHIO_MAJOR_VERSION,PINOCCHIO_MINOR_VERSION,PINOCCHIO_PATCH_VERSION));
BOOST_CHECK(not checkVersionAtLeast(PINOCCHIO_MAJOR_VERSION,PINOCCHIO_MINOR_VERSION,PINOCCHIO_PATCH_VERSION+1));
BOOST_CHECK(not checkVersionAtLeast(99,0,0));
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment