- Add support for Sigma Eight receivers
- fix bugs in
tagme()
tagme(dir = ...)
now correctly downloads projects as well as receivers and respects theskipXXX
argumentstagme()
for receivers now skips node downloads if receiver is not a SensorStationtagme()
fails gracefully if the directory specified does not exist- Fixed
Error in as.POSIXlt.character(x, tz, ...)
when starting a download
tagme(new = TRUE)
now starts a download immediately- Add
srvTimeout()
to specify the server timeout limit - Clean up helper functions
sunRiseSet()
andtimeToSunriset()
sunRiseSet()
now required to runtimeToSunriset()
- Changed function argument names for clarity
- Replace use of ggmap with ggspatial for creating plots with static maps.
- Clean up docs for
tagSum()
- Add helper function
tagmeSample()
for an in-memory connection to the sample data base for running examples - Remove any functions that rely on deprecating spatial functions
- Remove year, month, day fields from activity tables.
- Standardize names in docs and examples
- Update tests internally
- Remove placeholder for French documents (will add back in once we get translations)
- Fix bug in
xxxRunsFilter()
functions resulting in the inability to correctly return the filter id
- Changed internal method for loading SQLite databases. Now uses standard method
with
DBI::dbConnect()
. Previously, users applyingDBI
functions to databases loaded withtagme()
had to use the$con
sub-element of the connection.$con
should no longer be used (it will result in an error).
- Remove functions
safeSQL()
,sqliteToRDS()
- fixed bug in
deprecateBatches()
which caused an error when removing deprecated batches from receivers.
- Updated internal code for logging messages
- Now use simple wrappers for
DBI::dbExecute()
andDBI::dbGetQuery()
, usingglue::glue_sql()
to help construct statements.
- fixed bug in
deprecateBatches()
which caused an error when there were no batches to deprecate. - ensure new databases are fully up-to-date (without needing to immediately update).
- New
allruns
andallrunsGPS
views for quicker first passes of the data with large datasets - New field/column
attachment
intagDeps
table - New field/column
numGPSfix
inactivity
andactivityAll
tables - New field/columns
stationName
andstationID
inrecvDeps
tables gpsAll()
andactivityAll()
functions allow downloading complete records of GPS points and Activity- Deprecated batches are now returned to a new table
deprecated
ontagme()
deprecateBatches()
function to fetch and (optionally) remove deprecated batches from all relevant tables
- fixed bug in
filterByActivity()
resulting inNA
probabilities - fixed bug in
getGPS()
which crashed ifts
had been converted to date/time format
- fixed bug resulting in missing metadata tables, and permission errors resulting from JSON formatting
- fixed bug where
forceMeta
did not force metadata download for previously downloaded tags - fixed warnings produced by
plotRouteMap()
on old versions of R
- removed not null constraint on tsEnd in nodeDeps
- fixed bug resulting in occasional unending download loop of GPS fixes for receivers
- fixed bug resulting in error "no applicable method for 'db_has_table'..."
- fixed rounding error in
filterByActivity()
resulting in mismatchedhourBins
- fixed incorrect receiver types and model assignment for CTT receivers
- Corrected the server address
- Add
test
to metadata intagDeps
table to identify test deployments (tagDeployTest
inalltags
andalltagsGPS
views) - Add
age
andsex
to metadata intagDeps
table - For CTT SensorStation V2
- Add
lat_mean
,lon_mean
, andn_fixes
togps
table - Add
nodets
,firmware
,solarVolt
,solarCurrent
,solarCurrentCumul
,lat
, andlon
tonodeData
table - Add
validated
tohits
table
- Add
- Downloading hits no longer fails if extra columns are supplied by the server
- Internal workings of major
motusUpdateXXX()
functions split into multiple smaller functions to make testing more efficient - Added mockery package for mock testing
- Receiver downloads now have similar progress messages to Project downloads
- Move GPS fields from
alltags
toalltagsGPS
- New function
getGPS()
adds GPS fields to data - Remove NOT NULL constraint on
motusTagID
s in ambiguous tag view
- Receivers updating to the new version errored on the download start
- Allow renaming (if possible) of large databases on data updates
- Continue checking for activity/nodeData even if first batch returns 0
nodeDataId
is corrected tonodeDataID
- Warn users with custom views if they need to be removed prior to updating
- Switch to data version 2
- Includes new CTT antennas
- Includes
nodeData
andnodeDeps
tables for node related data and metadata.
- Replace all
cat()
withmessage()
(now suppressible) - Add
recvUtcOffset
andtsCorrected
toalltags
view - Add
gpsID
togps
table,gpsID
is now the primary key and index
- Fixed bug where
tagme(..., countOnly = TRUE)
failed
- Combined
motus
andmotusClient
packages
- New function
activity()
adds hit activity for batches to a newactivity
table in the SQLite database. This is useful for detecting 'noisy' periods where hits may be unreliable. - New function
filterByActivity()
allows users to create custom filters using data from theactivity
table. - Added a
NEWS.md
file to track changes to the package - Added support for
httr
for server queries - Added
?motus
package documentation - Added unit testing
- Fix references to
ggmap
to avoid having to get Google API keys
- Moved dependencies to import rather than depend, to improve attach times, and reduce conflict with user-attached packages (note that
dplyr
will have to be loaded by users now) - All examples are tested
- tagme() / tellme() and supporting functions are now in the motusClient
package, which is automatically installed from github the first time you do
library(motus)
after installing themotus
package. If automatic installation ofmotusClient
fails, you can install it directly like so:
install_github("motusWTS/motusClient")
- tagme() - for updating local copies of receiver or tag project detection databases
- tellme() - for asking how much data will need to be transferred by the corresponding tagme() call
The latest version of the data server that works with this package is now running on a new box, but its database is only populated with data from 4 (!) receivers. Raw files from other receivers will be re-run with the latest version of the tag finder and added to this database. Only those users willing to wrestle with alpha code and not actually interested in getting their data should be using this package for now.
- srvTagsForAmbiguities()
- srvMetadataForReceivers()
- srvGPSforTagProject()
- srvMetadataForTags()
- srvRunsForReceiverProject()
- srvHitsForTagProject()
- srvHitsForReceiverProject()
- srvGPSforReceiverProject()
- srvRunsForTagProject()
- srvBatchesForTagProject()
- srvBatchesForReceiverProject()
- authentication against local data server
- some R functions for post-processing
- nothing (yes, nothing is working; in fact, nothing is working beautifully)