Open bryce-carson opened 4 days ago
The rsconnect.max.bundle.files
option limits the number of files permitted in a bundle. https://rstudio.github.io/rsconnect/reference/listDeploymentFiles.html
The appFiles
argument is not seen as a way to bypass rsconnect.max.bundle.files
because appFiles
may include directories, which are fully enumerated during deployment. Those directories may prove larger (in number of files or size) than individuals expect.
Regarding the warning, I just ran your example command in a directory without the named files and received:
Warning message:
All files listed in `appFiles` must exist.
Problems: LICENSE, www, www/images, www/images/SEIR.svg, www/images/SEIRD.svg, www/images/SEIRS.svg, www/images/SIR.svg,
www/images/SIRD.svg, www/images/SIRS.svg, www/markdown, www/markdown/freezeAndThaw.md, www/modelSelect.css,
www/modelSelect.js, www/sidebar.js, www/reactcharteditor, www/reactcharteditor/plotly_editor,
www/reactcharteditor/plotly_editor/plotly_editor.js.LICENSE.txt, www/reactcharteditor/plotly_editor/plotly_editor.js, …,
ui.R, and .rscignore
The
rsconnect.max.bundle.files
option limits the number of files permitted in a bundle. https://rstudio.github.io/rsconnect/reference/listDeploymentFiles.htmlThe
appFiles
argument is not seen as a way to bypassrsconnect.max.bundle.files
becauseappFiles
may include directories, which are fully enumerated during deployment. Those directories may prove larger (in number of files or size) than individuals expect.
I see.
When I read,
If neither are supplied, will bundle all files in appDir, apart from standard exclusions and files listed in a .rscignore file.
In the appDir argument description, it implies (in my reading) that if supplied then the function will not bundle all files, but only the specified files.
I suppose a documentation improvement is in order, then?
Regarding the warning, I just ran your example command in a directory without the named files and received:
Warning message: All files listed in `appFiles` must exist. Problems: LICENSE, www, www/images, www/images/SEIR.svg, www/images/SEIRD.svg, www/images/SEIRS.svg, www/images/SIR.svg, www/images/SIRD.svg, www/images/SIRS.svg, www/markdown, www/markdown/freezeAndThaw.md, www/modelSelect.css, www/modelSelect.js, www/sidebar.js, www/reactcharteditor, www/reactcharteditor/plotly_editor, www/reactcharteditor/plotly_editor/plotly_editor.js.LICENSE.txt, www/reactcharteditor/plotly_editor/plotly_editor.js, …, ui.R, and .rscignore
I don't know why'd you'd bother when all the paths are relative to the current working directory, assumed to be the appDir, just as appDir is assumed to be the current working directory when not supplied.
I'm not following what you're trying to recommend, unfortunately.
The appFiles
argument indicates what files are supposed to be deployed. That list may include files or directories beneath the appDir
. The appFiles
must enumerate things that exist and is also subject to rsconnect.max.bundle.files
and rsconnect.max.bundle.size
.
Could you share a specific directory layout and deployApp()
command that is not behaving as you expect?
Using the following
appFiles
argument, I would expect that deployApp would not complain about the number of files in the application being over ten thousand, which is the reason I constructed the appFiles argument vector.deployApp should produce a warning which states which elements of the vector were not matched against files in the application directory so that the vector can be corrected; it certainly shouldn't include files other than those in the vector; it should include nothing, per the function documentation, if nothing in the vector is matched or if only some in the vector aren't matched, given .rscignore doesn't support globbing either.