rstudio / sass

Sass compiler package for R
https://rstudio.github.io/sass/
Other
102 stars 17 forks source link

Increase `fs` dependency #125

Closed pawelru closed 1 year ago

pawelru commented 1 year ago

Describe the problem

fs::path_has_parent is exported since 1.2.4. Please include that into your DESCRIPTION file. Right now it is possible to end up with the following error:

Error: 'path_has_parent' is not an exported object from 'namespace:fs'

Reprex: (the root cause is in sass)

r$> bslib::bs_theme(version = "4")
Error: 'path_has_parent' is not an exported object from 'namespace:fs'

r$> traceback()
20: match.fun(FUN)
19: vapply(dest, fs::path_has_parent, logical(1), parent = ".")
18: check_files(dest, vapply(dest, fs::path_has_parent, logical(1), 
        parent = "."), "Illegal file attachment destination path(s)")
17: validate_attachments(file_attachments)
16: sass_layer_struct(defaults = defaults, declarations = declarations, 
        rules = rules, html_deps = html_deps, file_attachments = file_attachments)
15: is_sass_bundle(x)
14: as_sass_bundle(sass_layer_struct(defaults = defaults, declarations = declarations, 
        rules = rules, html_deps = html_deps, file_attachments = file_attachments))
13: sass_layer(defaults = sass_file(system_file("bs3compat", "_defaults.scss", 
        package = "bslib")), declarations = sass_file(system_file("bs3compat", 
        "_declarations.scss", package = "bslib")), rules = sass_file(system_file("bs3compat", 
        "_rules.scss", package = "bslib")), file_attachments = c(fonts = lib_file("bs-sass", 
        "assets", "fonts")), html_deps = htmltools::htmlDependency("bs3compat", 
        packageVersion("bslib"), package = "bslib", src = "bs3compat/js", 
        script = c("tabs.js", "bs3compat.js")))
12: bs3compat_bundle()
11: list2(...)
10: dropNulls(list2(...))
9: sass_bundle(sass_layer(defaults = bs4_sass_files(c("deprecated", 
       "functions", "variables")), declarations = bs4_sass_files("mixins")), 
       !!!rule_bundles(bs4_sass_files(c("root", "reboot", "type", 
           "images", "code", "grid", "tables", "forms", "buttons", 
           "transitions", "dropdown", "button-group", "input-group", 
           "custom-forms", "nav", "navbar", "card", "breadcrumb", 
           "pagination", "badge", "jumbotron", "alert", "progress", 
           "media", "list-group", "close", "toasts", "modal", "tooltip", 
           "popover", "carousel", "spinners", "utilities", "print"))), 
       sass_layer(rules = list(".table th[align=left] { text-align: left; }", 
           ".table th[align=right] { text-align: right; }", ".table th[align=center] { text-align: center; }")), 
       bs3compat = bs3compat_bundle())
8: switch_version(version, four = sass_bundle(sass_layer(defaults = bs4_sass_files(c("deprecated", 
       "functions", "variables")), declarations = bs4_sass_files("mixins")), 
       !!!rule_bundles(bs4_sass_files(c("root", "reboot", "type", 
           "images", "code", "grid", "tables", "forms", "buttons", 
           "transitions", "dropdown", "button-group", "input-group", 
           "custom-forms", "nav", "navbar", "card", "breadcrumb", 
           "pagination", "badge", "jumbotron", "alert", "progress", 
           "media", "list-group", "close", "toasts", "modal", "tooltip", 
           "popover", "carousel", "spinners", "utilities", "print"))), 
       sass_layer(rules = list(".table th[align=left] { text-align: left; }", 
           ".table th[align=right] { text-align: right; }", ".table th[align=center] { text-align: center; }")), 
       bs3compat = bs3compat_bundle()), three = sass_bundle(sass_layer(defaults = bs3_sass_files("variables"), 
       declarations = bs3_sass_files("mixins")), !!!rule_bundles(bs3_sass_files(c("normalize", 
       "print", "glyphicons", "scaffolding", "type", "code", "grid", 
       "tables", "forms", "buttons", "component-animations", "dropdowns", 
       "button-groups", "input-groups", "navs", "navbar", "breadcrumbs", 
       "pagination", "pager", "labels", "badges", "jumbotron", "thumbnails", 
       "alerts", "progress-bars", "media", "list-group", "panels", 
       "responsive-embed", "wells", "close", "modals", "tooltip", 
       "popovers", "carousel", "utilities", "responsive-utilities"))), 
       accessibility = bs3_accessibility_bundle(), glyphicon_font_files = sass_layer(defaults = list(`icon-font-path` = "'glyphicon-fonts/'"), 
           file_attachments = c(`glyphicon-fonts` = lib_file("bs-sass", 
               "assets", "fonts", "bootstrap")))))
7: bootstrap_bundle(version)
6: list2(...)
5: dropNulls(list2(...))
4: sass_bundle(theme, ...)
3: structure(sass_bundle(theme, ...), class = class(theme))
2: bs_bundle(bs_theme_init(version, bootswatch), bootstrap_bundle(version), 
       bootswatch_bundle(bootswatch, version), color_contrast_layer())
1: bslib::bs_theme(version = "4")

Session Info


r$> sessionInfo()
R version 4.2.1 (2022-06-23)
Platform: x86_64-apple-darwin17.0 (64-bit)
Running under: macOS Monterey 12.6

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.2/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.2/Resources/lib/libRlapack.dylib

locale:
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] DT_0.1                   rtables_0.5.1            formatters_0.3.4.13      magrittr_1.5            
[5] ggplot2_0.9.0            teal.reporter_0.1.1.9010 shiny_1.6.0              crayon_1.5.2            

loaded via a namespace (and not attached):
 [1] bslib_0.2.4        remotes_2.4.2      reshape2_1.0       rcmdcheck_1.4.0    colorspace_0.97   
 [6] htmltools_0.5.1    yaml_2.1.5         rlang_1.0.6        pkgbuild_1.4.0     jquerylib_0.1.3   
[11] R.oo_1.25.0        later_1.2.0        withr_2.5.0        R.utils_2.12.2     xopen_1.0.0       
[16] RColorBrewer_0.1-3 lifecycle_0.2.0    plyr_1.2           stringr_0.6.2      munsell_0.2       
[21] R.methodsS3_1.8.2  htmlwidgets_0.4    memoise_2.0.1      callr_3.7.3        fastmap_1.1.0     
[26] httpuv_1.6.0       ps_1.7.2           curl_5.0.0         proto_0.3-9.2      Rcpp_0.12.16      
[31] xtable_1.5-0       promises_1.1.0     backports_1.1.0    scales_0.1.0       checkmate_2.0.0   
[36] cachem_1.0.6       desc_1.4.2         jsonlite_1.8.4     fs_1.2.2           mime_0.12         
[41] digest_0.6.25      processx_3.8.0     rprojroot_2.0.3    grid_4.2.1         cli_3.6.0         
[46] tools_4.2.1        sass_0.3.0         dichromat_1.2-3    ellipsis_0.2.0     MASS_7.3-58.1     
[51] prettyunits_1.1.1  rmarkdown_0.3.3    httr_1.4.4         R6_2.5.1           compiler_4.2.1