klmr / klmr/box

Improve the debugging experience

Open
#288 7 comments 0 reactions 0 assignees View on GitHub
⚙️ enhancement ✨ new feature
Dominant language
R
Stars
979
Forks
49
PR merge metrics
No merged PRs in 30d

Description

### Error description

May just be me missing something, but whenever I load an environment using the box architecture, and then call a function which contains a `browser()` within it, the debug mode loads up fine and works smoothly, but if I try to call `View()` on any object within the debug environment, I get the following error:

`Error in View(df2) : could not find function "View"`

does this mean I need to load the utils separately using box as well? It can be quite cumbersome to do so.

Example below:

If I have the file structure:

R/run.R
R/fct_custom.R

run.R:

```
options(box.path = getwd())
box::use(R/fct_custom)

df <- mtcars

fct_custom$Manipulate_data(df=df)
```

R/fct_custom:

```
Manipulate_data <- function(df){
a <- 1
browser()
View(df)
}
```

### R version

```plain text
platform x86_64-apple-darwin15.6.0
arch x86_64
os darwin15.6.0
system x86_64, darwin15.6.0
status
major 3
minor 6.3
year 2020
month 02
day 29
svn rev 77875
language R
version.string R version 3.6.3 (2020-02-29)
nickname Holding the Windsock
```

### ‘box’ version

‘1.1.2’

Contributor guide

Open the contributing guide

Research direction

Reproduce the report using R/run.R and R/fct_custom.R, starting at fct_custom$Manipulate_data(), browser(), and View(df). Check how box::use and the debug environment expose View, then use the reported R 3.6.3 and box 1.1.2 context if relevant. Done means the expected View behavior in a browser() session is established and the issue is fixed or its required usage is clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
developer-experience
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.