这个可恶的 bug 显著降低了我 copy and paste from github
的效率。
大概下降了 66 倍 (66s/1s)。内存占用少量上升 145M/130M。当然 copy 的代码越长,paste 的效率下降越严重。
复现很简单,copy 一段缩进深且行数多的代码,贴到 REPL 里。REPL 就会贴进去又删除,然后就会变得很奇怪,并且并不会报错。最后这个函数还定义成功了,并且可以用。但是就很浪费时间了。
效果见 gif
v1.0 & v0.7 可复现的测试代码
copy_and_paste_bug.jl
function add1(x)
# 0 spaces
# 4 spaces
# 4 spaces
# 8 spaces
# 8 spaces
# 8 spaces
# 12 spaces
# 8 spaces
# 12 spaces
# 12 spaces
# 12 spaces
# 16 spaces
# 16 spaces
# 20 spaces
# 16 spaces
# 20 spaces
return x + 1
# 16 spaces
# 20 spaces
# 20 spaces
# 20 spaces
# 16 spaces
# 16 spaces
# 12 spaces
# 12 spaces
# 12 spaces
# 8 spaces
# 4 spaces
# 8 spaces
# 8 spaces
# 4 spaces
# 0 spaces
end
1.0 刷屏太长了,从 0.7 可以看出 REPL 在不断的尝试贴如代码段,而贴入的代码又被不断地删掉。贴入的部分代码段也不报错。
可以再继续尝试各种情况,然后去提 issue。