thomasp85 / fiery

A flexible and lightweight web server
https://fiery.data-imaginist.com
Other
240 stars 12 forks source link

Cannot set_logger of a cloned server #30

Closed cpsievert closed 6 years ago

cpsievert commented 6 years ago
library(fiery)

server <- Fire$new()
server2 <- server$clone()
server2$set_logger(fiery::logger_console("{event}: {message}"))
Error in private$logger <- logger : 
  cannot change value of locked binding for 'logger'
thomasp85 commented 6 years ago

Hmm... This seems to be a bug in how R6 clones objects. It identifies all functions as methods and not only those that were part of the original class definition...

This can of course be solved in fiery be storing the logger in a list, but we should probably alert @wch about the issue...