Hi,

We'll release 0.14.0 soon. Then we use "1.0.0-SNAPSHOT" at
master. If we use "1.0.0-SNAPSHOT", C++ build is failed:

https://github.com/apache/arrow/blob/master/cpp/CMakeLists.txt#L47

  message(FATAL_ERROR "Need to implement SO version generation for Arrow 1.0+")

So we need to consider how to generate SO version for 1.0.0
as the first task for 1.0.0.

See also https://issues.apache.org/jira/browse/ARROW-2522
for the current SO versioning.


If we may break ABI compatibility each minor version up
release ("Y" is increased in "X.Y.Z"), we should include
minor version into SO major version (100, 101 and 102 in the
following examples):

  * 1.0.0 -> libarrow.100.0.0
  * 1.1.0 -> libarrow.101.0.0
  * 1.2.0 -> libarrow.102.0.0

If we don't break ABI compatibility each minor version up
release, we just use the same SO major version (100 in the
following examples) in 1.0.0:

  * 1.0.0 -> libarrow.100.0.0
  * 1.1.0 -> libarrow.100.1.0
  * 1.2.0 -> libarrow.100.2.0


I choose 1XX as SO major version because we already use
10-14 for SO major version. We should not use them in the
future to avoid confusion. So I choose 1XX in the above
examples.


Any thoughts?


Thanks,
--
kou

Reply via email to