@@ -4,16 +4,43 @@ function(libname, pkgname) {
44
55`.onAttach` <- function (libname , pkgname ) {
66 if (interactive()) {
7+ # Utility function
8+ get_dev_version <- function (package ) {
9+ url <- paste0(" https://raw.githubusercontent.com/CenterForAssessment/" , package , " /refs/heads/master/DESCRIPTION" )
10+ tryCatch({
11+ lines <- readLines(url , warn = FALSE )
12+ version_line <- grep(" ^Version:" , lines , value = TRUE )
13+ if (length(version_line ) > 0 ) {
14+ return (strsplit(version_line , " : " )[[1 ]][2 ])
15+ } else {
16+ return (" Unavailable" )
17+ }
18+ }, error = function (e ) {
19+ return (" Unavailable" )
20+ }, warning = function (w ) {
21+ return (" Unavailable" )
22+ })
23+ }
24+
725 # Extract version information
8- version <- utils :: packageVersion(" SGPdata" )
26+ installed.version <- utils :: packageDescription(" SGPdata" )[[' Version' ]]
27+ cran.version <- tryCatch(
28+ pkgsearch :: cran_package(" SGPdata" )[[' Version' ]],
29+ error = function (e ) " Unavailable" ,
30+ warning = function (w ) " Unavailable" )
31+ dev.version <- get_dev_version(" SGPdata" )
932
1033 # Define a friendly startup message
11- message_text <- paste0(
12- magenta(bold(" \u D83C\u DF89 SGPdata v" , version )), " - " , toOrdinal :: toOrdinalDate(" 2024-12-3" ), " \n " ,
13- " \U 1F4A1 Tip: " , magenta(bold(" > help(\" SGPdata\" )" )), " \n " ,
14- " \U 1F310 Docs: " , magenta(bold(" https://centerforassessment.github.io/SGPdata" )), " \n " ,
15- " \u 2728 Happy SGPing!"
16- )
34+ message_text <- paste0(
35+ magenta(bold(" \u D83C\u DF89 SGPdata v" , installed.version , sep = " " )), " - " , toOrdinal :: toOrdinalDate(" 2024-12-4" ), " \n " ,
36+ strrep(" \u 2501" , 40 ), " \n " ,
37+ bold(" \U 1F4E6 CRAN: " ), green(" v" , cran.version , sep = " " ), " \n " ,
38+ bold(" \U 1F527 Dev: " ), cyan(" v" , dev.version , sep = " " ), " \n " ,
39+ strrep(" \u 2501" , 40 ), " \n " ,
40+ " \U 1F4A1 Tip: " , magenta(bold(" > help(package=\" SGPdata\" )" )), " \n " ,
41+ " \U 1F310 Docs: " , magenta(bold(" https://centerforassessment.github.io/SGPdata" )), " \n " ,
42+ strrep(" \u 2501" , 40 ), " \n " ,
43+ " \u 2728 Happy SGPing!" )
1744
1845 # Display the startup message
1946 packageStartupMessage(message_text )
0 commit comments