Skip to content

Conversation

@redboltz
Copy link
Contributor

@redboltz
Copy link
Contributor Author

This is a pretty big modification to prepare version 2.0.0.

I added the following sub directories:

include/msgpack/v1
include/msgpack/v2

Current API version is v1. The files located on include/msgpack/ are moved to include/msgpack/v1.

For example:

Before moved:

include/msgpack/pack.hpp # v1 implementaion

After moved:

include/msgpack/pack_decl.hpp # include v1/pack_decl.hpp and v2/pack_decl.hpp
include/msgpack/pack.hpp # include pack_decl.hpp and v1/pack.hpp.
include/msgpack/v1/pack_decl.hpp # v1 minimal declaration
include/msgpack/v1/pack.hpp # v1 implementaion
include/msgpack/v2/pack_decl.hpp # v2 minimal declaration. By default, using v1::*

MSGPACK_DEFAULT_API_VERSION is changed to 2 from 1. There is no v2 implementation for now, so the default behavior should be the same as v1 even though MSGPACK_DEFAULT_API_VERSION is 2. I updated the travis-ci, it includes multiple API version versions tests.
@jpetso, @davidchappelle, I have recognized you are great reviewer. Could you check the PR and test on your projects?

Users can set MSGPACK_DEFAULT_API_VERSION by defining the macro as follows. g++ -DMSGPACK_DEFAULT_API_VERSION=1 ...

When we update the code, we need to update an appropriate code.

If the update is a breaking change, update the code located on v2 directory. For example,

include/msgpack/pack.hpp # include pack_decl.hpp, v1/pack.hpp, and v2/pack.hpp.
include/msgpack/v2/pack.hpp # add the breaking change here

Otherwise, update the code located on v1 directory.

Note: Adding new APIs is NOT a breaking change.

@redboltz
Copy link
Contributor Author

There is no problem reported so far. I will merge the PR tomorrow.

redboltz added a commit that referenced this pull request Feb 13, 2016
Re-organized tree to prepare for version 2.0.0.
@redboltz redboltz merged commit 43a86cf into msgpack:master Feb 13, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant