Floobits / floobits-neovim

Floobits plugin for NeoVim
Apache License 2.0
167 stars 7 forks source link

A Clojure source file is not rendered in workspace #34

Open k2n opened 9 years ago

k2n commented 9 years ago

I got the following error when I "FlooShareDirPrivate" in my clojure project.

[Tue Aug 25 05:50:10 2015] Failed to create buffer /Users/kenji/Code/beta-accounts-recycler/src/beta_accounts_recycler/core.clj: must be string or buffer, not list

As the result, the file doesn't show up in the workspace. I can send the file to cause the issue directly upon request.

I realized a file starting with parenthesis causes this issue. I can workaround by adding clojure comment at the top of the file, but this should be addressed.

This causes the issue.

(ns foo.bar)

This works;

;; some comment
(ns foo.bar)

Thanks,

ggreer commented 9 years ago

Thanks for the bug report. Unfortunately, I can't seem to reproduce the issue. :( Both of your example files upload fine for me, using Neovim on OS X 10.10.5 and python 2.7.10.

Can you give me more information about your set-up? What operating system, python version, etc, are you using? Also, do you see anything in :messages before the error? If you want more verbose logging, you can add "debug": true to your ~/.floorc.json. It's annoying if left on all the time, but it could contain some useful clues for fixing this issue.

k2n commented 9 years ago

Environment: Mac OS X 10.10.5, python 2.7.10, NVIM 0.0.0-alpha+201508240435 Steps to reproduce:

  1. :FlooShareDirPrivate
  2. Create test1.clj in a root level of the project. I start to see the followings in the log.
[Wed Aug 26 02:09:05 2015] Failed to create buffer /Users/kenji/Code/beta-accounts-recycler/test2.clj: must be string or buffer, not list
[Wed Aug 26 02:09:05 2015] no buffer found for view 12
[Wed Aug 26 02:09:16 2015] got data ping
[Wed Aug 26 02:09:16 2015] writing pong req_id 16 qsize 0
[Wed Aug 26 02:09:17 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:17 2015] no buffer found for view 12
[Wed Aug 26 02:09:17 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:17 2015] no buffer found for view 12
[Wed Aug 26 02:09:17 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:17 2015] no buffer found for view 12
[Wed Aug 26 02:09:21 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:21 2015] no buffer found for view 12
[Wed Aug 26 02:09:21 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:21 2015] no buffer found for view 12
[Wed Aug 26 02:09:21 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:21 2015] no buffer found for view 12
[Wed Aug 26 02:09:22 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:22 2015] no buffer found for view 12
[Wed Aug 26 02:09:23 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:23 2015] no buffer found for view 12
[Wed Aug 26 02:09:23 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:23 2015] no buffer found for view 12
[Wed Aug 26 02:09:23 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:23 2015] no buffer found for view 12
[Wed Aug 26 02:09:23 2015] Maybe buffer changed: /Users/kenji/Code/beta-accounts-recycler/test2.clj
[Wed Aug 26 02:09:23 2015] no buffer found for view 12
  1. Type in (ns foo.bar), and save it, but it doesn't show up in the workspace, and see the following error.
[Wed Aug 26 02:09:27 2015] Ignoring blacklisted file .git
[Wed Aug 26 02:09:27 2015] /Users/kenji/Code/beta-accounts-recycler/.lein-repl-history ignored by pattern /.lein-* in /Users/kenji/Code/beta-accounts-recycler/.hgignore
[Wed Aug 26 02:09:27 2015] /Users/kenji/Code/beta-accounts-recycler/.nrepl-port ignored by pattern /.nrepl-port in /Users/kenji/Code/beta-accounts-recycler/.hgignore
[Wed Aug 26 02:09:27 2015] Initializing ignores for /Users/kenji/Code/beta-accounts-recycler/resources
[Wed Aug 26 02:09:27 2015] Initializing ignores for /Users/kenji/Code/beta-accounts-recycler/src
[Wed Aug 26 02:09:27 2015] Initializing ignores for /Users/kenji/Code/beta-accounts-recycler/src/beta_accounts_recycler
[Wed Aug 26 02:09:27 2015] /Users/kenji/Code/beta-accounts-recycler/target ignored by pattern /target in /Users/kenji/Code/beta-accounts-recycler/.gitignore
[Wed Aug 26 02:09:27 2015] Initializing ignores for /Users/kenji/Code/beta-accounts-recycler/test
[Wed Aug 26 02:09:27 2015] Initializing ignores for /Users/kenji/Code/beta-accounts-recycler/test/beta_accounts_recycler
[Wed Aug 26 02:09:27 2015] Error encoding buf /Users/kenji/Code/beta-accounts-recycler/test2.clj: 'list' object has no attribute 'encode'
[Wed Aug 26 02:09:27 2015] Failed to create buffer /Users/kenji/Code/beta-accounts-recycler/test2.clj: must be string or buffer, not list
[Wed Aug 26 02:09:32 2015] got data ping
[Wed Aug 26 02:09:32 2015] writing pong req_id 17 qsize 0

Hope this helps, and I can invite you to my workspace to share what's happening if necessary :-)

ggreer commented 9 years ago

OK, please try the latest version (3.1.2). I'm pretty sure I fixed the issue.

k2n commented 9 years ago

Upgraded 3.1.2 (git hash 3c9ce5b), restart nvim, and now I got the following error when I create a clojure source code file.

[Wed Aug 26 07:59:28 2015] /Users/kenji/Code/beta-accounts-recycler/.nrepl-port ignored by pattern /.nrepl-port in /Users/kenji/Code/beta-accounts-recycler/.hgignore
[Wed Aug 26 07:59:28 2015] /Users/kenji/Code/beta-accounts-recycler/target ignored by pattern /target in /Users/kenji/Code/beta-accounts-recycler/.gitignore
[Wed Aug 26 07:59:33 2015] Floobits plugin error! Sending exception report: {'description': "global name 'vim_buf_to_text' is not defined", 'stack': ['Traceback (most recent call last):\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/protocols/floo_proto.py", line 118, in _handle\n    self.emit(\'data\', name, data)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/event_emitter.py", line 20, in emit\n    handler(*args, **kwargs)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/handlers/base.py", line 43, in on_data\n    return handler(data)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/vim_handler.py", line 355, in _on_room_info\n    super(VimHandler, self)._on_room_info(data)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 511, in wrap\n    return _unwind_generator(f(*args, **kwargs))\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 481, in _unwind_generator\n    return maybe_func(*args)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/vim_handler.py", line 204, in stomp_prompt\n    return cb(choices.index(choice))\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 472, in f\n    return _unwind_generator(gen_expr, cb, args)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 481, in _unwind_generator\n    return maybe_func(*args)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 511, in wrap\n    return _unwind_generator(f(*args, **kwargs))\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 481, in _unwind_generator\n    return maybe_func(*args)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 511, in wrap\n    return _unwind_generator(f(*args, **kwargs))\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 468, in _unwind_generator\n    res = gen_expr.send(res)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/handlers/floo_handler.py", line 635, in prompt_ignore\n    cb([files, size])\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 472, in f\n    return _unwind_generator(gen_expr, cb, args)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/utils.py", line 466, in _unwind_generator\n    res = gen_expr.send(res[0])\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/handlers/floo_handler.py", line 357, in _initial_upload\n    self._rate_limited_upload(make_iterator(), total_size, upload_func=__upload)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/handlers/floo_handler.py", line 673, in _rate_limited_upload\n    size = upload_func(p)\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/common/handlers/floo_handler.py", line 347, in __upload\n    return self._upload(utils.get_full_path(rel_path_or_buf), self.get_view_text_by_path(rel_path_or_buf))\n', '  File "/Users/kenji/.vim/bundle/floobits-neovim/rplugin/python/floobits/vim_handler.py", line 214, in get_view_text_by_path\n    return vb and vim_buf_to_text(vb)\n', "NameError: global name 'vim_buf_to_text' is not defined\n"]}
[Wed Aug 26 07:59:34 2015] Disconnected.
ggreer commented 9 years ago

Ah! My bad. I forgot to add the import statement that works with Python 3. Please try the latest version (3.1.3) now.