New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error: C stack usage xxx is too close to the limit, with certain input to pin_write metadata parameter #824
Comments
Thanks for the report @marioem! Here is a smaller example that shows the problem: pins:::to_utf8(list(version = packageVersion("pins"))) The problem is that class(packageVersion("pins"))
#> [1] "package_version" "numeric_version" Created on 2024-04-15 with reprex v2.1.0 |
Well, that's interesting: is.list(packageVersion("pins"))
#> [1] TRUE
str(packageVersion("pins"))
#> Classes 'package_version', 'numeric_version' hidden list of 1
#> $ : int [1:3] 1 3 0 Created on 2024-04-15 with reprex v2.1.0 I think your workaround (coercing this funny object to character) is definitely the way to go for now @marioem. We do have lots of sanity checks and coercion, etc, before writing to YAML, but this particular thing is pretty weird: x <- packageVersion("pins")
class(x)
#> [1] "package_version" "numeric_version"
class(x[[1]])
#> [1] "package_version" "numeric_version"
class(x[[1]][[1]])
#> [1] "package_version" "numeric_version" Created on 2024-04-15 with reprex v2.1.0 It just keeps going like that! |
The following code causes Error: C stack usage xxx is too close to the limit:
As a result no data is written to the pin, only the enclosing folder is created.
mbm
is a board_folder board, located on local disk.The problem is triggered by
tidymodels_version = packageVersion("tidymodels")
. I've narrowed down the issue towrite_meta
function (it may be in write_yaml or below).Workaround consists in casting
packageVersion
result to character.I'd suggest adding some input sanity checks before writing yaml, or casting to character user-provided input, as default.
BTW, incredibly useful package, using it all the time in my modeling workflows.
BRs,
Mariusz
The text was updated successfully, but these errors were encountered: