2.1 Implementation
PAReTT (version 1.0.1) was scripted in the Spyder 5 IDE in pure PYTHON
and is compatible with versions 3.6 and upward. A full list of
dependencies is provided on the GitHub wiki, along with details for
download and installation. This includes the use of several
well-established PYTHON based libraries such as NumPy (version 1.20.1)
and pandas (version 1.2.4) for ease of input and high order moulding of
data structures with relative ease (McKinney, 2010; Harris et
al. , 2020), as well as Bio (version 1.3.9) for handling trees in the
newick format. PAReTT further uses the headless browser functionality
implemented in Splinter (version 0.17.0) with the Selenium (version
4.1.5) extensions for the Firefox browser to submit user specified web
data to the Time Tree website and retrieve the relevant results. Results
are printed in real-time to the shell, while list results are first
stored to a ‘dataframe’ object which is written to user specified output
file. Some functionality had also been provided to validate data for any
errors that may have occurred and preview basic tree files. The script
was benchmarked to test for time and memory consumption of individual
functions using memory-profiler (version 0.16.0).