-
-
Notifications
You must be signed in to change notification settings - Fork 322
Closed
Description
Related to https://discourse.julialang.org/t/read-only-pluto-notebook/66563
If I make a file readonly, e.g. chmod -w test.jl then Pluto complains. Is this something that in principle should be possible or is it outside of the Pluto roadmap (for now?)
SystemError: opening file "/home/stefan/Documents/ScratchSpace/quantumsavory/test.jl": Permission denied
Stacktrace:
[1] systemerror(p::String, errno::Int32; extrainfo::Nothing)
@ Base ./error.jl:168
[2] #systemerror#62
@ ./error.jl:167 [inlined]
[3] systemerror
@ ./error.jl:167 [inlined]
[4] open(fname::String; lock::Bool, read::Nothing, write::Nothing, create::Nothing, truncate::Bool, append::Nothing)
@ Base ./iostream.jl:293
[5] open(fname::String, mode::String; lock::Bool)
@ Base ./iostream.jl:355
[6] open(fname::String, mode::String)
@ Base ./iostream.jl:355
[7] open(::Pluto.var"#44#45"{String}, ::String, ::Vararg{String, N} where N; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Base ./io.jl:328
[8] open
@ ./io.jl:328 [inlined]
[9] open_safe_write
@ ~/.julia/packages/Pluto/HmZoH/src/notebook/Notebook.jl:173 [inlined]
[10] save_notebook
@ ~/.julia/packages/Pluto/HmZoH/src/notebook/Notebook.jl:179 [inlined]
[11] save_notebook
@ ~/.julia/packages/Pluto/HmZoH/src/notebook/Notebook.jl:184 [inlined]
[12] load_notebook(path::String; disable_writing_notebook_files::Bool)
@ Pluto ~/.julia/packages/Pluto/HmZoH/src/notebook/Notebook.jl:304
[13] open(session::Pluto.ServerSession, path::String; run_async::Bool, compiler_options::Nothing, as_sample::Bool)
@ Pluto.SessionActions ~/.julia/packages/Pluto/HmZoH/src/webserver/SessionActions.jl:37
[14] (::Pluto.var"#try_launch_notebook_response#235"{Pluto.var"#try_launch_notebook_response#212#236"{Pluto.ServerSession}})(action::typeof(Pluto.SessionActions.open), path_or_url::String; title::String, advice::String, home_url::String, as_redirect::Bool, action_kwargs::Base.Iterators.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:as_sample,), Tuple{Bool}}})
@ Pluto ~/.julia/packages/Pluto/HmZoH/src/webserver/Static.jl:141
[15] (::Pluto.var"#214#238")(request::HTTP.Messages.Request)
@ Pluto ~/.julia/packages/Pluto/HmZoH/src/webserver/Static.jl:172
[16] (::Pluto.var"#201#223"{Bool, Pluto.var"#214#238", Pluto.ServerSession, Pluto.var"#add_set_secret_cookie!#220"{Pluto.ServerSession}})(request::HTTP.Messages.Request)
@ Pluto ~/.julia/packages/Pluto/HmZoH/src/webserver/Static.jl:101
[17] handle(::HTTP.Handlers.RequestHandlerFunction{Pluto.var"#201#223"{Bool, Pluto.var"#214#238", Pluto.ServerSession, Pluto.var"#add_set_secret_cookie!#220"{Pluto.ServerSession}}}, ::HTTP.Messages.Request)
@ HTTP.Handlers ~/.julia/packages/HTTP/D0FSE/src/Handlers.jl:254
[18] handle(::HTTP.Handlers.Router{Symbol("##257")}, ::HTTP.Messages.Request)
@ HTTP.Handlers ~/.julia/packages/HTTP/D0FSE/src/Handlers.jl:468
[19] (::Pluto.var"#301#311"{Pluto.ServerSession, Base.RefValue{Function}, HTTP.Handlers.Router{Symbol("##257")}})(http::HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}})
@ Pluto ~/.julia/packages/Pluto/HmZoH/src/webserver/WebServer.jl:211
[20] handle
@ ~/.julia/packages/HTTP/D0FSE/src/Handlers.jl:270 [inlined]
[21] #4
@ ~/.julia/packages/HTTP/D0FSE/src/Handlers.jl:346 [inlined]
[22] macro expansion
@ ~/.julia/packages/HTTP/D0FSE/src/Servers.jl:413 [inlined]
[23] (::HTTP.Servers.var"#13#14"{HTTP.Handlers.var"#4#5"{HTTP.Handlers.StreamHandlerFunction{Pluto.var"#301#311"{Pluto.ServerSession, Base.RefValue{Function}, HTTP.Handlers.Router{Symbol("##257")}}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Servers.Server{Nothing, Sockets.TCPServer}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
@ HTTP.Servers ./task.jl:406
ederag
Metadata
Metadata
Assignees
Labels
No labels