- 25 Mar, 2021 1 commit
-
-
Akshita Dixit authored
* [docs]Add alt text on images * Update docs/GPU-Windows.rst Co-authored-by:
James Lamb <jaylamb20@gmail.com> * Update docs/GPU-Windows.rst Co-authored-by:
James Lamb <jaylamb20@gmail.com> * Apply suggestions from code review Co-authored-by:
James Lamb <jaylamb20@gmail.com> * Apply suggestions from code review Co-authored-by:
James Lamb <jaylamb20@gmail.com> * Merge main branch commit updates (#1) * [docs] Add alt text to image in Parameters-Tuning.rst (#4035) * [docs] Add alt text to image in Parameters-Tuning.rst Add alt text to Leaf-wise growth image, as part of #4028 * Update docs/Parameters-Tuning.rst Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
James Lamb <jaylamb20@gmail.com> * [ci] [R-package] upgrade to R 4.0.4 in CI (#4042) * [docs] update description of deterministic parameter (#4027) * update description of deterministic parameter to require using with force_row_wise or force_col_wise * Update include/LightGBM/config.h Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * update docs Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * [dask] Include support for init_score (#3950) * include support for init_score * use dataframe from init_score and test difference with and without init_score in local model * revert refactoring * initial docs. test between distributed models with and without init_score * remove ranker from tests * test value for root node and change docs * comma * re-include parametrize * fix incorrect merge * use single init_score and the booster_ attribute * use np.float64 instead of float * [ci] ignore untitle Jupyter notebooks in .gitignore (#4047) * [ci] prevent getting incompatible dask and distributed versions (#4054) * [ci] prevent getting incompatible dask and distributed versions * Update .ci/test.sh Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * empty commit Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * [ci] fix R CMD CHECK note about example timings (fixes #4049) (#4055) * [ci] fix R CMD CHECK note about example timings (fixes #4049) * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * empty commit Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * [ci] add CMake + R 3.6 test back (fixes #3469) (#4053) * [ci] add CMake + R 3.6 test back (fixes #3469) * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Update .ci/test_r_package_windows.ps1 * -Wait and remove rtools40 * empty commit Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * [dask] include multiclass-classification task in tests (#4048) * include multiclass-classification task and task_to_model_factory dicts * define centers coordinates. flatten init_scores within each partition for multiclass-classification * include issue comment and fix linting error * Update index.rst (#4029) Add alt text to logo image Co-authored-by:
James Lamb <jaylamb20@gmail.com> * [dask] raise more informative error for duplicates in 'machines' (fixes #4057) (#4059) * [dask] raise more informative error for duplicates in 'machines' * uncomment * avoid test failure * Revert "avoid test failure" This reverts commit 9442bdf00f193a19a923dc0deb46b7822cb6f601. * [dask] add tutorial documentation (fixes #3814, fixes #3838) (#4030) * [dask] add tutorial documentation (fixes #3814, fixes #3838) * add notes on saving the model * quick start examples * add examples * fix timeouts in examples * remove notebook * fill out prediction section * table of contents * add line back * linting * isort * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * move examples under python-guide * remove unused pickle import Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * set 'pending' commit status for R Solaris optional workflow (#4061) * [docs] add Yu Shi to repo maintainers (#4060) * Update FAQ.rst * Update CODEOWNERS * set is_linear_ to false when it is absent from the model file (fix #3778) (#4056) * Add CMake option to enable sanitizers and build gtest (#3555) * Add CMake option to enable sanitizer * Set up gtest * Address reviewer's feedback * Address reviewer's feedback * Update CMakeLists.txt Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * added type hint (#4070) * [ci] run Dask examples on CI (#4064) * Update Parallel-Learning-Guide.rst * Update test.sh * fix path * address review comments * [python-package] add type hints on Booster.set_network() (#4068) * [python-package] add type hints on Booster.set_network() * change behavior * [python-package] Some mypy fixes (#3916) * Some mypy fixes * address James' comments * Re-introduce pass in empty classes * Update compat.py Remove extra lines * [dask] [ci] fix flaky network-setup test (#4071) * [tests][dask] simplify code in Dask tests (#4075) * simplify Dask tests code * enable CI * disable CI * Revert "[ci] prevent getting incompatible dask and distributed versions (#4054)" (#4076) This reverts commit 4e9c9768 . * Fix parsing of non-finite values (#3942) * Fix index out-of-range exception generated by BaggingHelper on small datasets. Prior to this change, the line "score_t threshold = tmp_gradients[top_k - 1];" would generate an exception, since tmp_gradients would be empty when the cnt input value to the function is zero. * Update goss.hpp * Update goss.hpp * Add API method LGBM_BoosterPredictForMats which runs prediction on a data set given as of array of pointers to rows (as opposed to existing method LGBM_BoosterPredictForMat which requires data given as contiguous array) * Fix incorrect upstream merge * Add link to LightGBM.NET * Fix indenting to 2 spaces * Dummy edit to trigger CI * Dummy edit to trigger CI * remove duplicate functions from merge * Fix parsing of non-finite values. Current implementation silently returns zero when input string is "inf", "-inf", or "nan" when compiled with VS2017, so instead just explicitly check for these values and fail if there is no match. No attempt to optimise string allocations in this implementation since it is usually rarely invoked. * Dummy commit to trigger CI * Also handle -nan in double parsing method * Update include/LightGBM/utils/common.h Remove trailing whitespace to pass linting tests Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
matthew-peacock <matthew.peacock@whiteoakam.com> Co-authored-by:
Guolin Ke <guolin.ke@outlook.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * [dask] remove unused imports from typing (#4079) * Range check for DCG position discount lookup (#4069) * Add check to prevent out of index lookup in the position discount table. Add debug logging to report number of queries found in the data. * Change debug logging location so that we can print the data file name as well. * Revert "Change debug logging location so that we can print the data file name as well." This reverts commit 3981b34bd6e0530f89c4733e78e6b6603bf50d48. * Add data file name to debug logging. * Move log line to a place where it is output even when query IDs are read from a separate file. * Also add the out-of-range check to rank metrics. * Perform check after number of queries is initialized. * Update * [ci] upgrade R CI scripts to work on Ubuntu 20.04 (#4084) * [ci] install additional LaTeX packages in R CI jobs * update autoconf version * bump upper limit on package size to 100 * [SWIG] Add streaming data support + cpp tests (#3997) * [feature] Add ChunkedArray to SWIG * Add ChunkedArray * Add ChunkedArray_API_extensions.i * Add SWIG class wrappers * Address some review comments * Fix linting issues * Move test to tests/test_ChunkedArray_manually.cpp * Add test note * Move ChunkedArray to include/LightGBM/utils/ * Declare more explicit types of ChunkedArray in the SWIG API. * Port ChunkedArray tests to googletest * Please C++ linter * Address StrikerRUS' review comments * Update SWIG doc & disable ChunkedArray<int64_t> * Use CHECK_EQ instead of assert * Change include order (linting) * Rename ChunkedArray -> chunked_array files * Change header guards * Address last comments from StrikerRUS * store all CMake files in one place (#4087) * v3.2.0 release (#3872) * Update VERSION.txt * update appveyor.yml and configure * fix Appveyor builds Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
StrikerRUS <nekit94-12@hotmail.com> * [ci] Bump version for development (#4094) * Update .appveyor.yml * Update cran-comments.md * Update VERSION.txt * update configure Co-authored-by:
James Lamb <jaylamb20@gmail.com> * [ci] fix flaky Azure Pipelines jobs (#4095) * Update test.sh * Update setup.sh * Update .vsts-ci.yml * Update test.sh * Update setup.sh * Update .vsts-ci.yml * Update setup.sh * Update setup.sh Co-authored-by:
Subham Agrawal <34346812+subhamagrawal7@users.noreply.github.com> Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
shiyu1994 <shiyu_k1994@qq.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
jmoralez <jmoralz92@gmail.com> Co-authored-by:
marcelonieva7 <72712805+marcelonieva7@users.noreply.github.com> Co-authored-by:
Philip Hyunsu Cho <chohyu01@cs.washington.edu> Co-authored-by:
Deddy Jobson <dedjob@hotmail.com> Co-authored-by:
Alberto Ferreira <AlbertoEAF@users.noreply.github.com> Co-authored-by:
mjmckp <mjmckp@users.noreply.github.com> Co-authored-by:
matthew-peacock <matthew.peacock@whiteoakam.com> Co-authored-by:
Guolin Ke <guolin.ke@outlook.com> Co-authored-by:
ashok-ponnuswami-msft <57648631+ashok-ponnuswami-msft@users.noreply.github.com> Co-authored-by:
StrikerRUS <nekit94-12@hotmail.com> * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
Subham Agrawal <34346812+subhamagrawal7@users.noreply.github.com> Co-authored-by:
shiyu1994 <shiyu_k1994@qq.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
jmoralez <jmoralz92@gmail.com> Co-authored-by:
marcelonieva7 <72712805+marcelonieva7@users.noreply.github.com> Co-authored-by:
Philip Hyunsu Cho <chohyu01@cs.washington.edu> Co-authored-by:
Deddy Jobson <dedjob@hotmail.com> Co-authored-by:
Alberto Ferreira <AlbertoEAF@users.noreply.github.com> Co-authored-by:
mjmckp <mjmckp@users.noreply.github.com> Co-authored-by:
matthew-peacock <matthew.peacock@whiteoakam.com> Co-authored-by:
Guolin Ke <guolin.ke@outlook.com> Co-authored-by:
ashok-ponnuswami-msft <57648631+ashok-ponnuswami-msft@users.noreply.github.com> Co-authored-by:
StrikerRUS <nekit94-12@hotmail.com>
-
- 15 Mar, 2021 1 commit
-
-
Nikita Titov authored
* Update Parallel-Learning-Guide.rst * Update test.sh * fix path * address review comments
-
- 11 Mar, 2021 1 commit
-
-
Nikita Titov authored
* Update FAQ.rst * Update CODEOWNERS
-
- 10 Mar, 2021 2 commits
-
-
James Lamb authored
* [dask] add tutorial documentation (fixes #3814, fixes #3838) * add notes on saving the model * quick start examples * add examples * fix timeouts in examples * remove notebook * fill out prediction section * table of contents * add line back * linting * isort * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * move examples under python-guide * remove unused pickle import Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
marcelonieva7 authored
Add alt text to logo image Co-authored-by:James Lamb <jaylamb20@gmail.com>
-
- 04 Mar, 2021 1 commit
-
-
shiyu1994 authored
* update description of deterministic parameter to require using with force_row_wise or force_col_wise * Update include/LightGBM/config.h Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * update docs Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 02 Mar, 2021 1 commit
-
-
Subham Agrawal authored
* [docs] Add alt text to image in Parameters-Tuning.rst Add alt text to Leaf-wise growth image, as part of #4028 * Update docs/Parameters-Tuning.rst Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
James Lamb <jaylamb20@gmail.com>
-
- 24 Feb, 2021 1 commit
-
-
Qingyun Wu authored
* add FLAML for HPO in DOC * add FLAML for HPO * revise FLAML phasing * Update docs/Parameters-Tuning.rst Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Update README.md Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 23 Feb, 2021 2 commits
-
-
James Lamb authored
* [dask] allow tight control over ports * getting there, getting there * fix params maybe * fixing params * remove unnecessary stuff * fix tests * fixes * some minor changes * fix flaky test * linting * more linting * clarify parameter description * add warning * revert docs change * Update python-package/lightgbm/dask.py * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * trying to fix stuff * this is working * update tests * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * indent Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
Belinda Trotta authored
* Update docs to note that pred_contrib is not available for linear trees * Add warning in code * Change warning to error
-
- 22 Feb, 2021 1 commit
-
-
James Lamb authored
* rework distributed learning page * more references * more changes * more changes * add anchors for olds links * revert changes from #4000 * fix links * more links * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Update docs/Parallel-Learning-Guide.rst Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 19 Feb, 2021 1 commit
-
-
James Lamb authored
* [docs] Change some 'parallel learning' references to 'distributed learning' * found a few more * one more reference
-
- 14 Feb, 2021 1 commit
-
-
Zhuyi Xue authored
-
- 13 Feb, 2021 1 commit
-
-
Belinda Trotta authored
* Update docs about linear tree and monotone constraints * Fix punctuation
-
- 10 Feb, 2021 1 commit
-
-
James Lamb authored
-
- 07 Feb, 2021 1 commit
-
-
Gaurav Chopra authored
* Update Python-Intro.rst * Update docs/Python-Intro.rst Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 03 Feb, 2021 1 commit
-
-
Chen Yufei authored
* Add new task type: "save_binary". * Document for task "save_binary".
-
- 02 Feb, 2021 1 commit
-
-
James Lamb authored
* [ci] move link checking to a cron job * run once to register * set PYTHON_VERSION * actually build docs * uncomment * remove stuff * Update docs/.linkcheckerrc * condense * remove PR triggers again * Update .github/workflows/linkchecker.yml * move TASK
-
- 01 Feb, 2021 2 commits
-
-
Nikita Titov authored
-
Nikita Titov authored
-
- 31 Jan, 2021 3 commits
-
-
Nikita Titov authored
-
Nikita Titov authored
* Update .readthedocs.yml * Delete requirements_rtd.txt
-
Nikita Titov authored
* document CUDA version support * address review comments * collapse CUDA section in the guide * remove Clang support from CUDA docs as we have never tested it
-
- 29 Jan, 2021 1 commit
-
-
James Lamb authored
* add type hints in dask module * starting on asserts * remove unused code * add hints for dtypes * replace accidentally-removed docstrings * revert unrelated change * Update python-package/lightgbm/dask.py * empty commit * fix hints on group * capitalize array * hide hints in signatures * empty commit * sphinx version * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * fix hint for MatrixLike * Update python-package/lightgbm/dask.py Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * update docstring * empty commit Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 28 Jan, 2021 1 commit
-
-
Nikita Titov authored
-
- 25 Jan, 2021 1 commit
-
-
Nikita Titov authored
* initial Dask docs * fix MRO * address review comments
-
- 24 Jan, 2021 1 commit
-
-
Nikita Titov authored
* centralize Python-package logging in one place * continue * fix test name * removed unused import * enhance test * fix lint * hotfix test * workaround for GPU test * remove custom logger from Dask-package * replace one log func with flags by multiple funcs
-
- 22 Jan, 2021 1 commit
-
-
Nikita Titov authored
* move all submodules to external_libs folder * Update .Rbuildignore * Update MANIFEST.in * Update .appveyor.yml * Update CMakeLists.txt * Update build_r.R * Update test.sh * Update setup.py * Update CMakeLists.txt * Update test.sh * Update setup.py * Update conf.py * Update MANIFEST.in * Update LightGBM.vcxproj * continue * test * test * Update setup.py * hotfix * revert CI tests
-
- 21 Jan, 2021 3 commits
-
-
Nikita Titov authored
-
Nikita Titov authored
-
Nikita Titov authored
-
- 19 Jan, 2021 1 commit
-
-
Nikita Titov authored
* fix docs * Update basic.py * Update engine.py
-
- 18 Jan, 2021 3 commits
-
-
Nikita Titov authored
* Update .linkcheckerrc * Update .linkcheckerrc
-
James Lamb authored
* [python-package] expand documentation on 'group' for ranking task * add R package * update Query Data section * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * fix typo in group example * regenerate parameters * Apply suggestions from code review Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * regenerate R docs Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
James Lamb authored
* [R-package] enable use of trees with linear models at leaves (fixes #3319) * remove problematic pragmas * fix tests * try to fix build scripts * try fixing pragma check * more pragma checks * ok fix pragma stuff for real * empty commit * regenerate documentation * try skipping test * uncomment CI * add note on missing value types for R * add tests on saving and re-loading booster
-
- 11 Jan, 2021 1 commit
-
-
Ray Bell authored
* DOC: add conda-forge install instructions * DOC: add conda-forge instructions * DOC: fix hyperlink * DOC: point to installation guide * add detailed * Update python-package/README.rst Co-authored-by:
James Lamb <jaylamb20@gmail.com> * Update python-package/README.rst Co-authored-by:
James Lamb <jaylamb20@gmail.com> * rm characters * add pip install * add : * Update python-package/README.rst Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * Update python-package/README.rst Co-authored-by:
Nikita Titov <nekit94-08@mail.ru> * remove pip from header * channel Co-authored-by:
James Lamb <jaylamb20@gmail.com> Co-authored-by:
Nikita Titov <nekit94-08@mail.ru>
-
- 07 Jan, 2021 1 commit
-
-
Nikita Titov authored
* replace file extensions in docs during Sphinx build * Update .travis.yml * Update .travis.yml * Update conf.py * fix lint * fix lint
-
- 29 Dec, 2020 1 commit
-
-
James Lamb authored
* [docs] add doc on min_data_in_leaf approximation (fixes #3634) * Fix capital letter Co-authored-by:Nikita Titov <nekit94-08@mail.ru>
-
- 28 Dec, 2020 1 commit
-
-
Nikita Titov authored
* small code and docs refactoring * Update CMakeLists.txt * Update .vsts-ci.yml * Update test.sh * continue * continue * revert stable sort for all-unique values
-
- 24 Dec, 2020 1 commit
-
-
Belinda Trotta authored
* Add Eigen library. * Working for simple test. * Apply changes to config params. * Handle nan data. * Update docs. * Add test. * Only load raw data if boosting=gbdt_linear * Remove unneeded code. * Minor updates. * Update to work with sk-learn interface. * Update to work with chunked datasets. * Throw error if we try to create a Booster with an already-constructed dataset having incompatible parameters. * Save raw data in binary dataset file. * Update docs and fix parameter checking. * Fix dataset loading. * Add test for regularization. * Fix bugs when saving and loading tree. * Add test for load/save linear model. * Remove unneeded code. * Fix case where not enough leaf data for linear model. * Simplify code. * Speed up code. * Speed up code. * Simplify code. * Speed up code. * Fix bugs. * Working version. * Store feature data column-wise (not fully working yet). * Fix bugs. * Speed up. * Speed up. * Remove unneeded code. * Small speedup. * Speed up. * Minor updates. * Remove unneeded code. * Fix bug. * Fix bug. * Speed up. * Speed up. * Simplify code. * Remove unneeded code. * Fix bug, add more tests. * Fix bug and add test. * Only store numerical features * Fix bug and speed up using templates. * Speed up prediction. * Fix bug with regularisation * Visual studio files. * Working version * Only check nans if necessary * Store coeff matrix as an array. * Align cache lines * Align cache lines * Preallocation coefficient calculation matrices * Small speedups * Small speedup * Reverse cache alignment changes * Change to dynamic schedule * Update docs. * Refactor so that linear tree learner is not a separate class. * Add refit capability. * Speed up * Small speedups. * Speed up add prediction to score. * Fix bug * Fix bug and speed up. * Speed up dataload. * Speed up dataload * Use vectors instead of pointers * Fix bug * Add OMP exception handling. * Change return type of LGBM_BoosterGetLinear to bool * Change return type of LGBM_BoosterGetLinear back to int, only parameter type needed to change * Remove unused internal_parent_ property of tree * Remove unused parameter to CreateTreeLearner * Remove reference to LinearTreeLearner * Minor style issues * Remove unneeded check * Reverse temporary testing change * Fix Visual Studio project files * Restore LightGBM.vcxproj.filters * Speed up * Speed up * Simplify code * Update docs * Simplify code * Initialise storage space for max num threads * Move Eigen to include directory and delete unused files * Remove old files. * Fix so it compiles with mingw * Fix gpu tree learner * Change AddPredictionToScore back to const * Fix python lint error * Fix C++ lint errors * Change eigen to a submodule * Update comment * Add the eigen folder * Try to fix build issues with eigen * Remove eigen files * Add eigen as submodule * Fix include paths * Exclude eigen files from Python linter * Ignore eigen folders for pydocstyle * Fix C++ linting errors * Fix docs * Fix docs * Exclude eigen directories from doxygen * Update manifest to include eigen * Update build_r to include eigen files * Fix compiler warnings * Store raw feature data as float * Use float for calculating linear coefficients * Remove eigen directory from GLOB * Don't compile linear model code when building R package * Fix doxygen issue * Fix lint issue * Fix lint issue * Remove uneeded code * Restore delected lines * Restore delected lines * Change return type of has_raw to bool * Update docs * Rename some variables and functions for readability * Make tree_learner parameter const in AddScore * Fix style issues * Pass vectors as const reference when setting tree properties * Make temporary storage of serial_tree_learner mutable so we can make the object's methods const * Remove get_raw_size, use num_numeric_features instead * Fix typo * Make contains_nan_ and any_nan_ properties immutable again * Remove data_has_nan_ property of tree * Remove temporary test code * Make linear_tree a dataset param * Fix lint error * Make LinearTreeLearner a separate class * Fix lint errors * Fix lint error * Add linear_tree_learner.o * Simulate omp_get_max_threads if openmp is not available * Update PushOneData to also store raw data. * Cast size to int * Fix bug in ReshapeRaw * Speed up code with multithreading * Use OMP_NUM_THREADS * Speed up with multithreading * Update to use ArrayToString * Fix tests * Fix test * Fix bug introduced in merge * Minor updates * Update docs
-