Add dot product distance metrics (Benjamin James in #78)
Replace empty examples macro to satisfy CRAN request.
The build setup switched from C++11 to C++17 which offers threading support (which remains off by default to ensure consistent results)
Upstream code was updated to Annoy 1.17.3, the switch to an explicit C++ namespace has been accomodated (Dirk in #75)
Minor tweaks to appease clang-15
and Xcode 14
Minor tweaks to default CI setup and DESCRIPTION file
Small tweaks to threading policy header defines (Dirk closing #65)
Vignette code is again compiled during testing (Aaron Lum and Dirk in #66 addressing #64)
Upstream code (with Aaron's PR) was synchronized once more (Dirk in #67)
A new helper function was added to report the Annoy version (Aaron in #68)
Upgrade to Annoy 1.17, but default to serial use.
Add new header file to regroup includes and defines.
Upgrade CI script to use R with bspm on focal.
Use int
in two interfaces (Dirk in #59 for upstream
PR 460 and closing #56).
Use inline
for two helper functions (Dirk in #59
for upstream PR 461 and closing #57; also Aaron in #58
after earlier discussion).
Removed a noisy pragma
(Dirk in #60 for upstream
PR 462).
Add a simple helper function displaying compiler status.
RcppAnnoy synchronized with upstream PR 455 (Dirk in #55).
The help page has a small correction thanks to Bill1 Venables.
The alloca()
function is now declared portably thanks
to a working example in Writing R Extensions.
RcppAnnoy again synchronized with upstream to ensure builds with older compilers without AVX512 instructions (Dirk #53).
The cleanup
script only uses /bin/sh
.
In example(), the saved and loaded filename is now obtained via tempfile() to not touch user directories per CRAN Policy (Dirk).
RcppAnnoy was again synchronized with Annoy upstream leading to enhanced performance and more features (Dirk #48).
Minor changes made (and send as PRs upstream) to adapt both
annoylib.h
and mman.h
changes (Dirk).
A spurious command was removed from one vignette (Peter Hickey in #49).
Two new user-facing functions onDiskBuild() and unbuild() were added (Dirk in #50).
Minor tweaks were made to two tinytest-using test files (Dirk).
Switched unit testing to the new tinytest package (Dirk in #45).
The vignette is now pre-made in included as-is in Sweave document reducing the number of suggested packages.
Added new Hamming distance measure functionality; should be considered experimental as the functionality depends on integer values.
Travis CI use was updated to the R 3.5 PPA (#28)
New vignette about Annoy use from C++ via Rcpp (Aaron Lun in #29 addressing #19; also #32, #33)
The getItemsVector()
function no longer crashes (#24)
Synchronized with Annoy upstream version 1.9.1
Minor updates in calls and tests as required by annoy 1.9.1
New Manhattan distance modules along with unit test code
Additional unit tests from upstream test code carried over
Binary mode is used for save
(as suggested by @khoran
in #21)
A new file init.c
was added with calls to
R_registerRoutines()
and R_useDynamicSymbols()
Symbol registration is enabled in useDynLib
New functions getNNsByItemList
and
getNNsByVectorList
, from by Michael Phan-Ba in #12
Added destructor (PR #14 by Michael Phan-Ba)
Extended templatization (PR #11 by Dan Dillon)
Switched to run.sh
for Travis (PR #17)
Added test for admissible value to addItem
(PR
#18 closing issue #13)
Synchronized with Annoy upstream changes
Minor internal changes required by Annoy changes
Synchronized with Annoy upstream changes
Permit supplying our own RNG
Minor internal changes
Synchronized with Annoy upstream changes
Synchronized with Annoy upstream changes
Depends on R (>= 3.1) to permit C++11 builds
Synchronized with Annoy upstream changes
Windows support added (Qiang Kou in #2)
Added verbosity toggle
Added regression tests
Initial release