I’d like to use this thread to make short announcements on new and upcoming releases of HADES packages.
ParallelLogger 2.0.1 has been released to CRAN. Probably the most important change is the removal of the XML package dependency. XML was the only HADES dependency requiring R version 4. With this dependency gone, people can still use older R versions for a little while. However, there are nice features in R 4 that I would like to use, so we will be requiring R 4 in the near future.
Andromeda 0.4.0 has been released. Most important is a bugfix when using a tilde in file paths. Additionally, this version introduces functions for creating indices to improve performance.
Cyclops 3.1.0 has been released to CRAN, with two important updates: First, some bugfixes for likelihood profiling, which we’ll use for combining effect size estimates across the OHDSI network (especially important when there are low or zero counts). Second, adding support for competing risk analyses, which will be integrated into CohortMethod.
EvidenceSynthesis 0.1.0 has been released. This introduces a new approach to combining evidence on effect sizes across the OHDSI network, without sharing patient-level data (by sharing non-normal approximations of the per-site likelihood functions).
Eunomia 1.0.1 has been released. The only real change is that Eunomia is now in CRAN, which will allow us to move other HADES packages into CRAN, which in the end should make installing the HADES packages a lot easier.
EvidenceSynthesis 0.2.0 has been released. Most important change is that the package is now available in CRAN.
EvidenceSynthesis 0.2.1 has been released. This release primarily addresses an issue in the CRAN testing infrastructure.
Hydra 0.1.1 has been released. This just contains a single patch fixing a problem when hydrating packages while specifying a new package name. It is recommended to use Hydra to generate study packages based on the JSON specifications created in ATLAS. (The Hydra version in ATLAS is not up-to-date, so packages generated by ATLAS itself will not use the latest and greatest of HADES).
CohortMethod 4.0.1 has been released. This contains several bugfixes, including better handling of exposure cohorts that become empty somewhere during the analysis. Also by default likelihood profiles are generated which are needed for EvidenceSynthesis.
EvidenceSynthesis 0.2.3 has been released. No relevant changes (just more work to prevent unit tests from failing on the CRAN testing infrastructure).
One week from now, new versions of DatabaseConnector (v4.0.0) and SqlRender (v1.7.0) will be released. Especially the DatabaseConnector release will have major impact for users. Here are the most important changes:
-
In the past, the JDBC drivers for Oracle, PostgreSQL, SQL Server, PDW, and RedShift were automatically included (through DatabaseConnectorJars). However, the newer versions of these drivers require more space and are no longer allowed on CRAN. Users will therefore need to download these drivers, and for this purpose a new
downloadJdbcDrivers()
function has been introduced that will download the driver for you. You will however need to specify the location on your local drive where these drivers are stored. Most convenient is to set this path using theDATABASECONNECTOR_JAR_FOLDER
environmental variable. All will be explained in the new vignette. -
For those using SQL Server or PDW with integrated security, note that the new JDBC driver does not work with the old authentication DLL. You will need to download the new authentication DLL.
-
The
oracleTempSchema
argument found in many SqlRender and DatabaseConnector functions will be deprecated. Instead, there’s a newtempEmulationSchema
argument, which can be set via the RsqlRenderTempEmulationSchema
option. So in the future, those that needed to provide theoracleTempSchema
argument in almost every function call can simply declareoptions(sqlRenderTempEmulationSchema = "<your temp schema>")
once and be done with it. This should also avoid many bugs in study packages where we forgot to foward theoracleTempSchema
argument to lower-level function calls. -
For security reasons, the
connectionDetails
object no longer stores the user’s credentials, but instead the function call that gets these credentials. This should not really impact anyone, unless someone used something likeuser <- connectorDetails$user
in their code, which is not a terribly good idea anyway. We highly recommend the keyring package for keeping your credentials out of your code.
Some changes that should not impact users directly:
-
Downloading
BIGINT
fields from a database now can be converted to typeinteger64
in thebit64
package. Unfortunately, since this is not a native R type, there are major downsides to usinginteger64
in your code, with many opportunities for silent errors (e.g. this one). To avoid having to spend the coming years debugginginteger64
-related issues, by default theinteger64
types are immediately converted to R’s numeric type (double). One advantage that we do get is that DatabaseConnector now throws an error when this conversion leads to a loss of precision. We’ll be updating our methods packages to avoid downloading BIGINTS that may lead to loss of precision as much as possible. -
Bulk upload for PostgreSQL is now supported, which should prove useful as more of our Shiny apps start using a Postgres backend.
In addition, there are many bugfixes unrelated to these changes.
All other HADES packages should work with these new versions. For those that want to try them out, you can install them from the respective develop
branches:
install.packages("remotes")
remotes::install_github("ohdsi/SqlRender", ref = "develop")
remotes::install_github("ohdsi/DatabaseConnector", ref = "develop")
Anything specific that BigQuery users need to know about? How are the Simba JDBC drivers handled based on what you wrote about the other JDBC drivers.
Currently BQ users already need to download the JDBC drivers manually, and that will still work.
We are in fact exploring whether we can also provide the BQ drivers via the new downloadJdbcDrivers()
function to make life easier for BQ users. (In the past this was impossible because of the size of those drivers, which would never be allowed in CRAN).
SqlRender 1.7.0 has been released. As mentioned above, this introduces the new tempEmulationSchema
that will eventually replace oracleTempSchema
. It also contains some bugfixes and additional translation rules.
DatabaseConnector 4.0.0 has been released. As mentioned above, probably the most important change is the need to download the JDBC drivers manually for Oracle, PostgreSQL, SQL Server, PDW, and RedShift. See the vignette for instructions.
If we are making changes to connectionDetails it would be nice to possibly include few other frequently used parameters, namely
- cdmDatabaseSchema
- resultsDatabaseSchema
- vocabularyDatabaseSchema
- (maybe not that one) but also often needed :work folder
Please try and keep this forum thread for development announcements only. For package-specific questions, please use the respective issue trackers.
EmpiricalCalibration v2.1.0 has been released. This introduces the Expected Absolute Systematic Error (EASE) metric for summarizing the systematic error in a study design. This metric is already being used in several (not yet published) papers.
MethodEvaluation v2.1.0 has been released. Most important change is the addition of a new reference set (‘ohdsiDevelopment’) with only one target, one comparator, and multiple real negative and synthetic positive control outcomes. This set is based on the LEGEND Hypertension study. It should be used for evaluating methods that are being developed, since you shouldn’t develop against the full OHDSI Methods Benchmark, as that would be training on your test data.