Merge lp:~robru/libcolumbus/symbol-versioning into lp:libcolumbus

Proposed by Robert Bruce Park
Status: Merged
Approved by: Jussi Pakkanen
Approved revision: 478
Merged at revision: 463
Proposed branch: lp:~robru/libcolumbus/symbol-versioning
Merge into: lp:libcolumbus
Diff against target: 492 lines (+340/-15)
12 files modified
CMakeLists.txt (+1/-1)
debian/changelog (+11/-1)
debian/libcolumbus1.symbols (+189/-0)
debian/rules (+0/-4)
include/ErrorValues.hh (+1/-1)
include/Matcher.hh (+1/-1)
include/Trie.hh (+1/-1)
src/CMakeLists.txt (+4/-1)
src/ErrorValues.cc (+2/-2)
src/Matcher.cc (+3/-2)
src/libcolumbus.map (+122/-0)
test/CMakeLists.txt (+5/-1)
To merge this branch: bzr merge lp:~robru/libcolumbus/symbol-versioning
Reviewer Review Type Date Requested Status
Jussi Pakkanen (community) Approve
PS Jenkins bot (community) continuous-integration Approve
Review via email: mp+212719@code.launchpad.net

Commit message

Manual changelog to workaround citrain bug.

To post a comment you must log in.
478. By Robert Bruce Park

One more try.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

I assume this supersedes my branch but how does this work w.r.t. silos and the like?

Revision history for this message
Robert Bruce Park (robru) wrote :

"Supercedes" is probably too strong a word. It includes all the work you did, I just put a little cherry on top ;-)

I already went in and rebuilt the silo with this MP instead of yours, and published it even. Once it gets through to the archive (eg, after beta freeze....), then we can merge this and both MPs should get marked as merged automatically (neither will have any unmerged commits, unless you made any commits after I proposed this branch?)

Revision history for this message
Jussi Pakkanen (jpakkane) wrote :

Ok, great.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2014-02-28 13:45:38 +0000
3+++ CMakeLists.txt 2014-03-25 19:35:20 +0000
4@@ -35,7 +35,7 @@
5 # Symbol visibility
6 add_definitions(-DBUILDING_COLUMBUS)
7 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden")
8-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
9+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden")
10
11 set(SO_VERSION_MAJOR "1")
12 set(SO_VERSION_MINOR "1")
13
14=== modified file 'debian/changelog'
15--- debian/changelog 2014-03-06 13:06:03 +0000
16+++ debian/changelog 2014-03-25 19:35:20 +0000
17@@ -1,3 +1,13 @@
18+libcolumbus (1.1.0+14.04.20140325.2-0ubuntu1) UNRELEASED; urgency=low
19+
20+ [ Jussi Pakkanen ]
21+ * Add symbol versioning.
22+
23+ [ Ubuntu daily release ]
24+ * New rebuild forced
25+
26+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 25 Mar 2014 12:52:05 +0000
27+
28 libcolumbus (1.1.0+14.04.20140306-0ubuntu1) trusty; urgency=medium
29
30 [ Jussi Pakkanen ]
31@@ -46,7 +56,7 @@
32 libcolumbus (1.0.0+13.10.20130814-0ubuntu1) saucy; urgency=low
33
34 [ Mathieu Trudel-Lapierre ]
35- * Release new upstream version, bump to ABI 1
36+ * Release new upstream version, bump to ABI 1
37
38 [ Ubuntu daily release ]
39 * Automatic snapshot from revision 452
40
41=== added file 'debian/libcolumbus1.symbols'
42--- debian/libcolumbus1.symbols 1970-01-01 00:00:00 +0000
43+++ debian/libcolumbus1.symbols 2014-03-25 19:35:20 +0000
44@@ -0,0 +1,189 @@
45+libcolumbus.so.1 libcolumbus1 #MINVER#
46+ (c++)"Columbus::ErrorValues::addAccents(Columbus::accentGroups)@Base" 0replaceme
47+ (c++)"Columbus::ErrorValues::clearErrors()@Base" 0replaceme
48+ (c++)"Columbus::ErrorValues::setGroupError(Columbus::Word const&, int)@Base" 0replaceme
49+ (c++)"Columbus::ErrorValues::setSubstringMode()@Base" 0replaceme
50+ (c++)"Columbus::ErrorValues::addKeyboardErrors()@Base" 0replaceme
51+ (c++)"Columbus::ErrorValues::addStandardErrors()@Base" 0replaceme
52+ (c++)"Columbus::ErrorValues::addNumberpadErrors()@Base" 0replaceme
53+ (c++)"Columbus::ErrorValues::setError(unsigned short, unsigned short, int)@Base" 0replaceme
54+ (c++)"Columbus::ErrorValues::isInGroup(unsigned short)@Base" 0replaceme
55+ (c++)"Columbus::ErrorValues::ErrorValues()@Base" 0replaceme
56+ (c++)"Columbus::ErrorValues::~ErrorValues()@Base" 0replaceme
57+ (c++)"Columbus::IndexMatches::clear()@Base" 0replaceme
58+ (c++)"Columbus::IndexMatches::IndexMatches()@Base" 0replaceme
59+ (c++)"Columbus::IndexMatches::~IndexMatches()@Base" 0replaceme
60+ (c++)"Columbus::IndexWeights::setWeight(Columbus::Word const&, double)@Base" 0replaceme
61+ (c++)"Columbus::IndexWeights::IndexWeights()@Base" 0replaceme
62+ (c++)"Columbus::IndexWeights::~IndexWeights()@Base" 0replaceme
63+ (c++)"Columbus::MatchResults::addResults(Columbus::MatchResults const&)@Base" 0replaceme
64+ (c++|arch=amd64 arm64 ppc64el)"Columbus::MatchResults::copyResult(Columbus::MatchResults const&, unsigned long)@Base" 0replaceme
65+ (c++|arch=i386 armhf powerpc)"Columbus::MatchResults::copyResult(Columbus::MatchResults const&, unsigned int)@Base" 0replaceme
66+ (c++|arch=amd64 arm64 ppc64el)"Columbus::MatchResults::addResult(unsigned long, double)@Base" 0replaceme
67+ (c++|arch=i386 armhf powerpc)"Columbus::MatchResults::addResult(unsigned int, double)@Base" 0replaceme
68+ (c++)"Columbus::MatchResults::MatchResults(Columbus::MatchResults&&)@Base" 0replaceme
69+ (c++)"Columbus::MatchResults::MatchResults(Columbus::MatchResults const&)@Base" 0replaceme
70+ (c++)"Columbus::MatchResults::MatchResults()@Base" 0replaceme
71+ (c++)"Columbus::MatchResults::MatchResults(Columbus::MatchResults&&)@Base" 0replaceme
72+ (c++)"Columbus::MatchResults::MatchResults(Columbus::MatchResults const&)@Base" 0replaceme
73+ (c++)"Columbus::MatchResults::MatchResults()@Base" 0replaceme
74+ (c++)"Columbus::MatchResults::~MatchResults()@Base" 0replaceme
75+ (c++)"Columbus::MatchResults::operator=(Columbus::MatchResults&&)@Base" 0replaceme
76+ (c++)"Columbus::MatchResults::operator=(Columbus::MatchResults const&)@Base" 0replaceme
77+ (c++)"Columbus::ResultFilter::addNewTerm()@Base" 0replaceme
78+ (c++)"Columbus::ResultFilter::addNewSubTerm(Columbus::Word const&, Columbus::Word const&)@Base" 0replaceme
79+ (c++)"Columbus::ResultFilter::ResultFilter()@Base" 0replaceme
80+ (c++)"Columbus::ResultFilter::~ResultFilter()@Base" 0replaceme
81+ (c++)"Columbus::splitToWords(char const*)@Base" 0replaceme
82+ (c++)"Columbus::hiresTimestamp()@Base" 0replaceme
83+ (c++)"Columbus::LevenshteinIndex::insertWord(Columbus::Word const&, unsigned int)@Base" 0replaceme
84+ (c++)"Columbus::LevenshteinIndex::getDefaultError()@Base" 0replaceme
85+ (c++)"Columbus::LevenshteinIndex::LevenshteinIndex()@Base" 0replaceme
86+ (c++)"Columbus::LevenshteinIndex::~LevenshteinIndex()@Base" 0replaceme
87+ (c++)"Columbus::SearchParameters::setDynamic(bool)@Base" 0replaceme
88+ (c++)"Columbus::SearchParameters::getResultFilter()@Base" 0replaceme
89+ (c++)"Columbus::SearchParameters::addNonsearchingField(Columbus::Word const&)@Base" 0replaceme
90+ (c++)"Columbus::SearchParameters::SearchParameters()@Base" 0replaceme
91+ (c++)"Columbus::SearchParameters::~SearchParameters()@Base" 0replaceme
92+ (c++)"Columbus::Word::Word(Columbus::Word&&)@Base" 0replaceme
93+ (c++)"Columbus::Word::Word(char const*)@Base" 0replaceme
94+ (c++|arch=amd64 arm64 ppc64el)"Columbus::Word::Word(unsigned short*, unsigned long)@Base" 0replaceme
95+ (c++|arch=i386 armhf powerpc)"Columbus::Word::Word(unsigned short*, unsigned int)@Base" 0replaceme
96+ (c++)"Columbus::Word::Word(Columbus::Word const&)@Base" 0replaceme
97+ (c++)"Columbus::Word::Word(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
98+ (c++)"Columbus::Word::Word()@Base" 0replaceme
99+ (c++)"Columbus::Word::Word(Columbus::Word&&)@Base" 0replaceme
100+ (c++)"Columbus::Word::Word(char const*)@Base" 0replaceme
101+ (c++|arch=amd64 arm64 ppc64el)"Columbus::Word::Word(unsigned short*, unsigned long)@Base" 0replaceme
102+ (c++|arch=i386 armhf powerpc)"Columbus::Word::Word(unsigned short*, unsigned int)@Base" 0replaceme
103+ (c++)"Columbus::Word::Word(Columbus::Word const&)@Base" 0replaceme
104+ (c++)"Columbus::Word::Word(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
105+ (c++)"Columbus::Word::Word()@Base" 0replaceme
106+ (c++)"Columbus::Word::~Word()@Base" 0replaceme
107+ (c++)"Columbus::Word::operator=(Columbus::Word&&)@Base" 0replaceme
108+ (c++)"Columbus::Word::operator=(char const*)@Base" 0replaceme
109+ (c++)"Columbus::Word::operator=(Columbus::Word const&)@Base" 0replaceme
110+ (c++)"Columbus::Word::operator=(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
111+ (c++)"Columbus::Corpus::addDocument(Columbus::Document const&)@Base" 0replaceme
112+ (c++)"Columbus::Corpus::Corpus()@Base" 0replaceme
113+ (c++)"Columbus::Corpus::~Corpus()@Base" 0replaceme
114+ (c++)"Columbus::Matcher::onlineMatch(Columbus::WordList const&, Columbus::Word const&)@Base" 0replaceme
115+ (c++)"Columbus::Matcher::getErrorValues()@Base" 0replaceme
116+ (c++)"Columbus::Matcher::getIndexWeights()@Base" 0replaceme
117+ (c++)"Columbus::Matcher::index(Columbus::Corpus const&)@Base" 0replaceme
118+ (c++)"Columbus::Matcher::match(char const*)@Base" 0replaceme
119+ (c++)"Columbus::Matcher::match(char const*, Columbus::SearchParameters const&)@Base" 0replaceme
120+ (c++)"Columbus::Matcher::match(Columbus::WordList const&)@Base" 0replaceme
121+ (c++)"Columbus::Matcher::match(Columbus::WordList const&, Columbus::SearchParameters const&)@Base" 0replaceme
122+ (c++)"Columbus::Matcher::match(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
123+ (c++)"Columbus::Matcher::Matcher()@Base" 0replaceme
124+ (c++)"Columbus::Matcher::~Matcher()@Base" 0replaceme
125+ (c++)"Columbus::Document::addText(Columbus::Word const&, char const*)@Base" 0replaceme
126+ (c++)"Columbus::Document::addText(Columbus::Word const&, Columbus::WordList const&)@Base" 0replaceme
127+ (c++)"Columbus::Document::addText(Columbus::Word const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
128+ (c++)"Columbus::Document::Document(Columbus::Document const&)@Base" 0replaceme
129+ (c++|arch=amd64 arm64 ppc64el)"Columbus::Document::Document(unsigned long)@Base" 0replaceme
130+ (c++|arch=i386 armhf powerpc)"Columbus::Document::Document(unsigned int)@Base" 0replaceme
131+ (c++)"Columbus::Document::Document(Columbus::Document const&)@Base" 0replaceme
132+ (c++)"Columbus::Document::~Document()@Base" 0replaceme
133+ (c++)"Columbus::Document::operator=(Columbus::Document const&)@Base" 0replaceme
134+ (c++)"Columbus::WordList::addWord(Columbus::Word const&)@Base" 0replaceme
135+ (c++)"Columbus::WordList::WordList(Columbus::WordList&&)@Base" 0replaceme
136+ (c++)"Columbus::WordList::WordList(Columbus::WordList const&)@Base" 0replaceme
137+ (c++)"Columbus::WordList::WordList()@Base" 0replaceme
138+ (c++)"Columbus::WordList::WordList(Columbus::WordList&&)@Base" 0replaceme
139+ (c++)"Columbus::WordList::WordList(Columbus::WordList const&)@Base" 0replaceme
140+ (c++)"Columbus::WordList::WordList()@Base" 0replaceme
141+ (c++)"Columbus::WordList::~WordList()@Base" 0replaceme
142+ (c++)"Columbus::WordList::operator=(Columbus::WordList&&)@Base" 0replaceme
143+ (c++)"Columbus::WordList::operator=(Columbus::WordList const&)@Base" 0replaceme
144+ (c++)"Columbus::WordStore::getID(Columbus::Word const&)@Base" 0replaceme
145+ (c++)"Columbus::WordStore::WordStore()@Base" 0replaceme
146+ (c++)"Columbus::WordStore::~WordStore()@Base" 0replaceme
147+ (c++)"Columbus::ErrorValues::getSubstituteError(unsigned short, unsigned short) const@Base" 0replaceme
148+ (c++|arch=amd64 arm64 ppc64el)"Columbus::IndexMatches::getMatchError(unsigned long) const@Base" 0replaceme
149+ (c++|arch=i386 armhf powerpc)"Columbus::IndexMatches::getMatchError(unsigned int) const@Base" 0replaceme
150+ (c++)"Columbus::IndexMatches::size() const@Base" 0replaceme
151+ (c++|arch=amd64 arm64 ppc64el)"Columbus::IndexMatches::getMatch(unsigned long) const@Base" 0replaceme
152+ (c++|arch=i386 armhf powerpc)"Columbus::IndexMatches::getMatch(unsigned int) const@Base" 0replaceme
153+ (c++|arch=amd64 arm64 ppc64el)"Columbus::IndexMatches::getQuery(unsigned long) const@Base" 0replaceme
154+ (c++|arch=i386 armhf powerpc)"Columbus::IndexMatches::getQuery(unsigned int) const@Base" 0replaceme
155+ (c++)"Columbus::IndexWeights::getWeight(Columbus::Word const&) const@Base" 0replaceme
156+ (c++|arch=amd64 arm64 ppc64el)"Columbus::MatchResults::getRelevancy(unsigned long) const@Base" 0replaceme
157+ (c++|arch=i386 armhf powerpc)"Columbus::MatchResults::getRelevancy(unsigned int) const@Base" 0replaceme
158+ (c++|arch=amd64 arm64 ppc64el)"Columbus::MatchResults::getDocumentID(unsigned long) const@Base" 0replaceme
159+ (c++|arch=i386 armhf powerpc)"Columbus::MatchResults::getDocumentID(unsigned int) const@Base" 0replaceme
160+ (c++)"Columbus::MatchResults::size() const@Base" 0replaceme
161+ (c++|arch=amd64 arm64 ppc64el)"Columbus::ResultFilter::numSubTerms(unsigned long) const@Base" 0replaceme
162+ (c++|arch=i386 armhf powerpc)"Columbus::ResultFilter::numSubTerms(unsigned int) const@Base" 0replaceme
163+ (c++|arch=amd64 arm64 ppc64el)"Columbus::ResultFilter::getWord(unsigned long, unsigned long) const@Base" 0replaceme
164+ (c++|arch=i386 armhf powerpc)"Columbus::ResultFilter::getWord(unsigned int, unsigned int) const@Base" 0replaceme
165+ (c++|arch=amd64 arm64 ppc64el)"Columbus::ResultFilter::getField(unsigned long, unsigned long) const@Base" 0replaceme
166+ (c++|arch=i386 armhf powerpc)"Columbus::ResultFilter::getField(unsigned int, unsigned int) const@Base" 0replaceme
167+ (c++)"Columbus::ResultFilter::numTerms() const@Base" 0replaceme
168+ (c++)"Columbus::LevenshteinIndex::hasWord(Columbus::Word const&) const@Base" 0replaceme
169+ (c++)"Columbus::LevenshteinIndex::maxCount() const@Base" 0replaceme
170+ (c++)"Columbus::LevenshteinIndex::numNodes() const@Base" 0replaceme
171+ (c++)"Columbus::LevenshteinIndex::numWords() const@Base" 0replaceme
172+ (c++)"Columbus::LevenshteinIndex::findWords(Columbus::Word const&, Columbus::ErrorValues const&, int, Columbus::IndexMatches&) const@Base" 0replaceme
173+ (c++)"Columbus::LevenshteinIndex::wordCount(unsigned int) const@Base" 0replaceme
174+ (c++)"Columbus::SearchParameters::getDynamicError(Columbus::Word const&) const@Base" 0replaceme
175+ (c++)"Columbus::SearchParameters::getResultFilter() const@Base" 0replaceme
176+ (c++)"Columbus::SearchParameters::isNonsearchingField(Columbus::Word const&) const@Base" 0replaceme
177+ (c++)"Columbus::SearchParameters::looseningIterations() const@Base" 0replaceme
178+ (c++)"Columbus::SearchParameters::isDynamic() const@Base" 0replaceme
179+ (c++)"Columbus::Word::hash() const@Base" 0replaceme
180+ (c++)"Columbus::Word::join(Columbus::Word const&) const@Base" 0replaceme
181+ (c++)"Columbus::Word::asUtf8() const@Base" 0replaceme
182+ (c++)"Columbus::Word::toUtf8(char*, unsigned int) const@Base" 0replaceme
183+ (c++)"Columbus::Word::operator==(char const*) const@Base" 0replaceme
184+ (c++)"Columbus::Word::operator==(Columbus::Word const&) const@Base" 0replaceme
185+ (c++)"Columbus::Word::operator==(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0replaceme
186+ (c++)"Columbus::Word::operator[](unsigned int) const@Base" 0replaceme
187+ (c++)"Columbus::Word::operator<(Columbus::Word const&) const@Base" 0replaceme
188+ (c++)"Columbus::Word::operator!=(char const*) const@Base" 0replaceme
189+ (c++)"Columbus::Word::operator!=(Columbus::Word const&) const@Base" 0replaceme
190+ (c++)"Columbus::Word::operator!=(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0replaceme
191+ (c++|arch=amd64 arm64 ppc64el)"Columbus::Corpus::getDocument(unsigned long) const@Base" 0replaceme
192+ (c++|arch=i386 armhf powerpc)"Columbus::Corpus::getDocument(unsigned int) const@Base" 0replaceme
193+ (c++)"Columbus::Corpus::size() const@Base" 0replaceme
194+ (c++)"Columbus::Document::fieldCount() const@Base" 0replaceme
195+ (c++)"Columbus::Document::getFieldNames(Columbus::WordList&) const@Base" 0replaceme
196+ (c++)"Columbus::Document::totalWordCount(Columbus::Word const&) const@Base" 0replaceme
197+ (c++)"Columbus::Document::getID() const@Base" 0replaceme
198+ (c++)"Columbus::Document::getText(Columbus::Word const&) const@Base" 0replaceme
199+ (c++)"Columbus::Document::wordCount(Columbus::Word const&, Columbus::Word) const@Base" 0replaceme
200+ (c++)"Columbus::WordList::size() const@Base" 0replaceme
201+ (c++)"Columbus::WordList::operator==(Columbus::WordList const&) const@Base" 0replaceme
202+ (c++|arch=amd64 arm64 ppc64el)"Columbus::WordList::operator[](unsigned long) const@Base" 0replaceme
203+ (c++|arch=i386 armhf powerpc)"Columbus::WordList::operator[](unsigned int) const@Base" 0replaceme
204+ (c++)"Columbus::WordList::operator!=(Columbus::WordList const&) const@Base" 0replaceme
205+ (c++)"Columbus::WordStore::getWord(unsigned int) const@Base" 0replaceme
206+ (c++)"Columbus::WordStore::hasWord(Columbus::Word const&) const@Base" 0replaceme
207+ (c++)"Columbus::WordStore::hasWord(unsigned int) const@Base" 0replaceme
208+ col_corpus_add_document@Base 0replaceme
209+ col_corpus_delete@Base 0replaceme
210+ col_corpus_new@Base 0replaceme
211+ col_document_add_text@Base 0replaceme
212+ col_document_delete@Base 0replaceme
213+ col_document_get_id@Base 0replaceme
214+ col_document_new@Base 0replaceme
215+ col_error_values_add_standard_errors@Base 0replaceme
216+ col_error_values_set_substring_mode@Base 0replaceme
217+ col_index_weights_get_weight@Base 0replaceme
218+ col_index_weights_set_weight@Base 0replaceme
219+ col_match_results_delete@Base 0replaceme
220+ col_match_results_get_id@Base 0replaceme
221+ col_match_results_get_relevancy@Base 0replaceme
222+ col_match_results_new@Base 0replaceme
223+ col_match_results_size@Base 0replaceme
224+ col_matcher_delete@Base 0replaceme
225+ col_matcher_get_error_values@Base 0replaceme
226+ col_matcher_get_index_weights@Base 0replaceme
227+ col_matcher_index@Base 0replaceme
228+ col_matcher_match@Base 0replaceme
229+ col_matcher_new@Base 0replaceme
230+ col_word_as_utf8@Base 0replaceme
231+ col_word_delete@Base 0replaceme
232+ col_word_length@Base 0replaceme
233+ col_word_new@Base 0replaceme
234
235=== modified file 'debian/rules'
236--- debian/rules 2013-08-08 06:46:54 +0000
237+++ debian/rules 2014-03-25 19:35:20 +0000
238@@ -20,7 +20,3 @@
239
240 override_dh_install:
241 dh_install --fail-missing
242-
243-# force always taking latest version as the lib isn't stable
244-override_dh_makeshlibs:
245- dh_makeshlibs -V
246
247=== modified file 'include/ErrorValues.hh'
248--- include/ErrorValues.hh 2013-08-09 12:23:06 +0000
249+++ include/ErrorValues.hh 2014-03-25 19:35:20 +0000
250@@ -54,7 +54,7 @@
251 void clearLUT();
252 void addToLUT(Letter l1, Letter l2, int value);
253 void addGroupErrorToLUT(const Word &groupLetters, const int error);
254- int getSubstituteErrorSlow(Letter l1, Letter l2) const;
255+ int substituteErrorSlow(Letter l1, Letter l2) const;
256 void setPadError(const Letter number, const char letters[4], int letterCount, int error);
257
258 public:
259
260=== modified file 'include/Matcher.hh'
261--- include/Matcher.hh 2014-02-28 13:30:08 +0000
262+++ include/Matcher.hh 2014-03-25 19:35:20 +0000
263@@ -42,7 +42,7 @@
264
265 void buildIndexes(const Corpus &c);
266 void addToIndex(const Word &word, const WordID wordID, const WordID indexID);
267- void matchWithRelevancy(const WordList &query, const SearchParameters &params, const int extraError, MatchResults &matchedDocuments);
268+ void relevancyMatch(const WordList &query, const SearchParameters &params, const int extraError, MatchResults &matchedDocuments);
269
270 public:
271 Matcher();
272
273=== modified file 'include/Trie.hh'
274--- include/Trie.hh 2013-06-14 12:26:10 +0000
275+++ include/Trie.hh 2014-03-25 19:35:20 +0000
276@@ -27,7 +27,7 @@
277 struct TriePrivate;
278 class Word;
279
280-class COL_PUBLIC Trie final {
281+class Trie final {
282 private:
283 TriePrivate *p;
284 void expand();
285
286=== modified file 'src/CMakeLists.txt'
287--- src/CMakeLists.txt 2013-06-14 12:23:15 +0000
288+++ src/CMakeLists.txt 2014-03-25 19:35:20 +0000
289@@ -25,8 +25,11 @@
290 endif()
291 target_link_libraries(${COL_LIB_BASENAME} ${ICU_LIBRARIES})
292
293+set(symbol_map "${CMAKE_CURRENT_SOURCE_DIR}/libcolumbus.map")
294 set_target_properties(${COL_LIB_BASENAME} PROPERTIES VERSION ${SO_VERSION} SOVERSION ${ABI_VERSION})
295-
296+set_target_properties(${COL_LIB_BASENAME} PROPERTIES
297+ LINK_FLAGS "${ldflags} -Wl,--version-script,${symbol_map}")
298+set_target_properties(${COL_LIB_BASENAME} PROPERTIES LINK_DEPENDS ${symbol_map})
299 add_pch(pch/columbus_pch.hh ${COL_LIB_BASENAME})
300
301 install(
302
303=== modified file 'src/ErrorValues.cc'
304--- src/ErrorValues.cc 2013-08-09 12:23:06 +0000
305+++ src/ErrorValues.cc 2014-03-25 19:35:20 +0000
306@@ -94,10 +94,10 @@
307 if(l1 < LUT_LETTERS && l2 < LUT_LETTERS) {
308 return p->lut[LUT_OFFSET(l1, l2)];
309 }
310- return getSubstituteErrorSlow(l1, l2);
311+ return substituteErrorSlow(l1, l2);
312 }
313
314-int ErrorValues::getSubstituteErrorSlow(Letter l1, Letter l2) const {
315+int ErrorValues::substituteErrorSlow(Letter l1, Letter l2) const {
316 if(l1 == l2)
317 return 0;
318 if(l1 > l2) {
319
320=== modified file 'src/Matcher.cc'
321--- src/Matcher.cc 2014-02-28 13:30:08 +0000
322+++ src/Matcher.cc 2014-03-25 19:35:20 +0000
323@@ -35,6 +35,7 @@
324 #include <cassert>
325 #include <stdexcept>
326 #include <map>
327+#include <set>
328 #include <vector>
329 #include <algorithm>
330
331@@ -308,7 +309,7 @@
332 }
333
334
335-void Matcher::matchWithRelevancy(const WordList &query, const SearchParameters &params, const int extraError, MatchResults &matchedDocuments) {
336+void Matcher::relevancyMatch(const WordList &query, const SearchParameters &params, const int extraError, MatchResults &matchedDocuments) {
337 map<DocumentID, double> docs;
338 BestIndexMatches bestIndexMatches;
339 double start, indexMatchEnd, gatherEnd, finish;
340@@ -340,7 +341,7 @@
341 // Try to search with ever growing error until we find enough matches.
342 for(int i=0; i<maxIterations; i++) {
343 MatchResults matches;
344- matchWithRelevancy(query, params, i*increment, matches);
345+ relevancyMatch(query, params, i*increment, matches);
346 if(matches.size() >= minMatches || i == maxIterations-1) {
347 allMatches.addResults(matches);
348 break;
349
350=== added file 'src/libcolumbus.map'
351--- src/libcolumbus.map 1970-01-01 00:00:00 +0000
352+++ src/libcolumbus.map 2014-03-25 19:35:20 +0000
353@@ -0,0 +1,122 @@
354+{
355+global:
356+ extern "C++" {
357+ "Columbus::Matcher::Matcher()";
358+ "Columbus::Matcher::~Matcher()";
359+ Columbus::Matcher::match*;
360+ Columbus::Matcher::onlineMatch*;
361+ Columbus::Matcher::get*;
362+ Columbus::Matcher::operator*;
363+ Columbus::Matcher::index*;
364+ Columbus::Word::Word*;
365+ "Columbus::Word::~Word()";
366+ "Columbs::Word::length()";
367+ "Columbus::Word::asUtf8() const";
368+ Columbus::Word::toUtf8*;
369+ Columbus::Word::join*;
370+ Columbus::Word::operator*;
371+ "Columbus::Word::hash() const";
372+ Columbus::WordStore*;
373+ Columbus::Corpus*;
374+ Columbus::WordList*;
375+ Columbus::Document*;
376+ Columbus::MatchResults::MatchResults*;
377+ "Columbus::MatchResults::~MatchResults()";
378+ Columbus::MatchResults::operator*;
379+ Columbus::MatchResults::add*;
380+ Columbus::MatchResults::copyResult*;
381+ "Columbus::MatchResults::size() const";
382+ Columbus::MatchResults::get*;
383+
384+ "Columbus::ErrorValues::ErrorValues()";
385+ "Columbus::ErrorValues::~ErrorValues()";
386+ "Columbus::ErrorValues::getInsertionError() const";
387+ "Columbus::ErrorValues::getDeletionError() const";
388+ "Columbus::ErrorValues::getEndDeletionError() const";
389+ Columbus::ErrorValues::getStartInsertionError*;
390+ "Columbus::ErrorValues::getTransposeError() const";
391+ "Columbus::ErrorValues::setInsertionError(const int)";
392+ "Columbus::ErrorValues::setDeletionError(const int)";
393+ "Columbus::ErrorValues::setEndDeletionError(const int)";
394+ "Columbus::ErrorValues::setStartInsertionError(const int)";
395+ "Columbus::ErrorValues::setTransposeError(const int)";
396+ Columbus::ErrorValues::setSubstringStartLimit*;
397+ Columbus::ErrorValues::getSubstituteError*;
398+ "Columbus::ErrorValues::getDefaultError()";
399+ "Columbus::ErrorValues::getDefaultGroupError()";
400+ "Columbus::ErrorValues::getDefaultTypoError()";
401+ "Columbus::ErrorValues::getSubstringDefaultEndDeletionError()";
402+ "Columbus::ErrorValues::getSubstringDefaultStartInsertionError()";
403+ Columbus::ErrorValues::setError*;
404+ Columbus::ErrorValues::setGroupError*;
405+ Columbus::ErrorValues::addAccents*;
406+ "Columbus::ErrorValues::addKeyboardErrors()";
407+ "Columbus::ErrorValues::addNumberpadErrors()";
408+ "Columbus::ErrorValues::addStandardErrors()";
409+ Columbus::ErrorValues::isInGroup*;
410+ "Columbus::ErrorValues::clearErrors()";
411+ "Columbus::ErrorValues::setSubstringMode()";
412+
413+ "Columbus::IndexMatches::IndexMatches()";
414+ "Columbus::IndexMatches::~IndexMatches()";
415+
416+ "Columbus::IndexMatches::size() const";
417+ Columbus::IndexMatches::getMatch*;
418+ Columbus::IndexMatches::getQuery*;
419+ Columbus::IndexMatches::getMatchError*;
420+ "Columbus::IndexMatches::clear()";
421+
422+ Columbus::IndexWeights*;
423+ "Columbus::LevenshteinIndex::LevenshteinIndex()";
424+ "Columbus::LevenshteinIndex::~LevenshteinIndex()";
425+ "Columbus::LevenshteinIndex::getDefaultError()";
426+ Columbus::LevenshteinIndex::insertWord*;
427+ Columbus::LevenshteinIndex::hasWord*;
428+ Columbus::LevenshteinIndex::findWords*;
429+ Columbus::LevenshteinIndex::wordCount*;
430+ "Columbus::LevenshteinIndex::maxCount() const";
431+ "Columbus::LevenshteinIndex::numNodes() const";
432+ "Columbus::LevenshteinIndex::numWords() const";
433+ Columbus::SearchParameters*;
434+ Columbus::ResultFilter*;
435+ "Columbus::hiresTimestamp()";
436+ "Columbus::splitToWords(char const*)";
437+ };
438+ col_word_new;
439+ col_word_delete;
440+ col_word_length;
441+ col_word_as_utf8;
442+
443+ col_document_new;
444+ col_document_delete;
445+ col_document_get_id;
446+ col_document_add_text;
447+
448+ col_matcher_new;
449+ col_matcher_delete;
450+ col_matcher_index;
451+ col_matcher_match;
452+ col_matcher_get_error_values;
453+ col_matcher_get_index_weights;
454+
455+ col_match_results_new;
456+ col_match_results_delete;
457+ col_match_results_size;
458+ col_match_results_get_id;
459+ col_match_results_get_relevancy;
460+
461+ col_corpus_new;
462+ col_corpus_delete;
463+ col_corpus_add_document;
464+
465+ col_index_weights_set_weight;
466+ col_index_weights_get_weight;
467+
468+ col_error_values_add_standard_errors;
469+ col_error_values_set_substring_mode;
470+
471+local:
472+ extern "C++" {
473+ *;
474+ };
475+};
476
477=== modified file 'test/CMakeLists.txt'
478--- test/CMakeLists.txt 2013-06-14 12:23:15 +0000
479+++ test/CMakeLists.txt 2014-03-25 19:35:20 +0000
480@@ -4,7 +4,11 @@
481 add_test(${tname} ${tname})
482 endmacro()
483
484-coltest(trie TrieTest.cc)
485+# Trie is an internal class whose symbols are hidden
486+# so we need to add the source manually.
487+add_executable(trie TrieTest.cc ../src/Trie.cc)
488+target_link_libraries(trie ${COL_LIB_BASENAME})
489+add_test(trie trie)
490 coltest(levtrie LevTrieTest.cc)
491 coltest(levindex LevIndexTest.cc)
492 coltest(custom_error CustomErrorTest.cc)

Subscribers

People subscribed via source and target branches