Skip to content

Commit

Permalink
version bump
Browse files Browse the repository at this point in the history
  • Loading branch information
lemire committed Apr 2, 2024
1 parent c501a95 commit 7698589
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 23 deletions.
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ endif()
set(ROARING_LIB_NAME roaring)
set(PROJECT_VERSION_MAJOR 3)
set(PROJECT_VERSION_MINOR 0)
set(PROJECT_VERSION_PATCH 0)
set(ROARING_LIB_VERSION "3.0.0" CACHE STRING "Roaring library version")
set(PROJECT_VERSION_PATCH 1)
set(ROARING_LIB_VERSION "3.0.1" CACHE STRING "Roaring library version")
set(ROARING_LIB_SOVERSION "15" CACHE STRING "Roaring library soversion")

option(ROARING_EXCEPTIONS "Enable exception-throwing interface" ON)
Expand Down
2 changes: 1 addition & 1 deletion doxygen
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ PROJECT_NAME = "CRoaring"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = "3.0.0"
PROJECT_NUMBER = "3.0.1"

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
11 changes: 6 additions & 5 deletions include/roaring/roaring_version.h
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
// /include/roaring/roaring_version.h automatically generated by release.py, do
// not change by hand
// clang-format off
// /include/roaring/roaring_version.h automatically generated by release.py, do not change by hand
#ifndef ROARING_INCLUDE_ROARING_VERSION
#define ROARING_INCLUDE_ROARING_VERSION
#define ROARING_VERSION "3.0.0"
#define ROARING_VERSION "3.0.1"
enum {
ROARING_VERSION_MAJOR = 3,
ROARING_VERSION_MINOR = 0,
ROARING_VERSION_REVISION = 0
ROARING_VERSION_REVISION = 1
};
#endif // ROARING_INCLUDE_ROARING_VERSION
#endif // ROARING_INCLUDE_ROARING_VERSION
// clang-format on
32 changes: 17 additions & 15 deletions tools/release.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@


def extractnumbers(s):
return tuple(map(int,re.findall("(\d+)\.(\d+)\.(\d+)",str(s))[0]))
return tuple(map(int,re.findall(r"(\d+)\.(\d+)\.(\d+)",str(s))[0]))

def toversionstring(major, minor, rev):
return str(major)+"."+str(minor)+"."+str(rev)
Expand Down Expand Up @@ -83,16 +83,18 @@ def topaddedversionstring(major, minor, rev):
versionfile = maindir + versionfilerel

with open(versionfile, 'w') as file:
file.write("// "+versionfilerel+" automatically generated by release.py, do not change by hand \n")
file.write("#ifndef ROARING_INCLUDE_ROARING_VERSION \n")
file.write("#define ROARING_INCLUDE_ROARING_VERSION \n")
file.write("// clang-format off\n")
file.write("// "+versionfilerel+" automatically generated by release.py, do not change by hand\n")
file.write("#ifndef ROARING_INCLUDE_ROARING_VERSION\n")
file.write("#define ROARING_INCLUDE_ROARING_VERSION\n")
file.write("#define ROARING_VERSION \""+toversionstring(*newversion)+"\"\n")
file.write("enum { \n")
file.write("enum {\n")
file.write(" ROARING_VERSION_MAJOR = "+str(newversion[0])+",\n")
file.write(" ROARING_VERSION_MINOR = "+str(newversion[1])+",\n")
file.write(" ROARING_VERSION_REVISION = "+str(newversion[2])+"\n")
file.write("}; \n")
file.write("#endif // ROARING_INCLUDE_ROARING_VERSION \n")
file.write("};\n")
file.write("#endif // ROARING_INCLUDE_ROARING_VERSION\n")
file.write("// clang-format on")


print(versionfile + " modified")
Expand All @@ -109,7 +111,7 @@ def topaddedversionstring(major, minor, rev):


sonumber = None
pattern = re.compile("set\(ROARING_LIB_SOVERSION \"(\d+)\" CACHE STRING \"Roaring library soversion\"\)")
pattern = re.compile(r"""set\(ROARING_LIB_SOVERSION "(\d+)" CACHE STRING "Roaring library soversion"\)""")
with open (cmakefile, 'rt') as myfile:
for line in myfile:
m = pattern.search(line)
Expand All @@ -125,20 +127,20 @@ def topaddedversionstring(major, minor, rev):


for line in fileinput.input(cmakefile, inplace=1, backup='.bak'):
line = re.sub('ROARING_LIB_VERSION "\d+\.\d+\.\d+','ROARING_LIB_VERSION "'+newversionstring, line.rstrip())
line = re.sub('ROARING_LIB_SOVERSION "\d+','ROARING_LIB_SOVERSION "'+newmajorversionstring, line)
line = re.sub('set\(PROJECT_VERSION_MAJOR \d+','set(PROJECT_VERSION_MAJOR '+newmajorversionstring, line)
line = re.sub('set\(PROJECT_VERSION_MINOR \d+','set(PROJECT_VERSION_MINOR '+mewminorversionstring, line)
line = re.sub('set\(PROJECT_VERSION_PATCH \d+','set(PROJECT_VERSION_PATCH '+newrevversionstring, line)
line = re.sub('set\(ROARING_LIB_SOVERSION \"\d+\"','set(ROARING_LIB_SOVERSION \"'+str(sonumber)+'\"', line)
line = re.sub(r'ROARING_LIB_VERSION "\d+\.\d+\.\d+','ROARING_LIB_VERSION "'+newversionstring, line.rstrip())
line = re.sub(r'ROARING_LIB_SOVERSION "\d+','ROARING_LIB_SOVERSION "'+newmajorversionstring, line)
line = re.sub(r'set\(PROJECT_VERSION_MAJOR \d+','set(PROJECT_VERSION_MAJOR '+newmajorversionstring, line)
line = re.sub(r'set\(PROJECT_VERSION_MINOR \d+','set(PROJECT_VERSION_MINOR '+mewminorversionstring, line)
line = re.sub(r'set\(PROJECT_VERSION_PATCH \d+','set(PROJECT_VERSION_PATCH '+newrevversionstring, line)
line = re.sub(r'set\(ROARING_LIB_SOVERSION "\d+"','set(ROARING_LIB_SOVERSION \"'+str(sonumber)+'\"', line)
print(line)

print("modified "+cmakefile+", a backup was made")

doxygenfile = maindir + os.sep + "doxygen"

for line in fileinput.input(doxygenfile, inplace=1, backup='.bak'):
line = re.sub('PROJECT_NUMBER = "\d+\.\d+\.\d+','PROJECT_NUMBER = "'+newversionstring, line.rstrip())
line = re.sub(r'PROJECT_NUMBER = "\d+\.\d+\.\d+','PROJECT_NUMBER = "'+newversionstring, line.rstrip())
print(line)

print("Please run the tests before issuing a release: "+scriptlocation + "/prereleasetests.sh \n")
Expand Down

0 comments on commit 7698589

Please sign in to comment.