sup-heliotrope / sup Goto Github PK
View Code? Open in Web Editor NEWA curses threads-with-tags style email client (mailing list: [email protected])
Home Page: http://sup-heliotrope.github.io
License: GNU General Public License v2.0
A curses threads-with-tags style email client (mailing list: [email protected])
Home Page: http://sup-heliotrope.github.io
License: GNU General Public License v2.0
Current release procedure involves manually setting release version in all binaries and in lib/sup/version.rb
I have a strange problem after pulling from the master revision
./bin/sup: line 5: syntax error near unexpected token (' ./bin/sup: line 5:
$:.unshift File.join(File.dirname(FILE), *%w[.. lib])'
Running on ruby 1.9.3p194 (2012-04-20 revision 35410) [i486-linux]
That particular line is within code from (or at least, that is the last entry and it is shown in git diff HEAD^ HEAD):
commit 455f28f
Merge: b424243 08ebfc4
Author: Gaute Hope [email protected]
Date: Sun Aug 11 11:54:40 2013 +0200
Diff: 5long/sup-wiki@base...master
I think the only big issue before releasing is 0.13 is documentation. I'd like to see this change of documentation reviewed and revised since it's a lot bigger than a trivial change. But Github doesn't have pull request for wiki so I have to create this issue.
joey@warthog:~$ sup
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': iconv will be deprecated in the future, use String#encode instead.
[2013-07-01 15:56:47 -0600] WARNING: can't find character set by using locale, defaulting to utf-8
[2013-07-01 15:56:47 -0600] No 'gpgme' gem detected. Install it for email encryption, decryption and signatures.
We are very sorry. It seems that an error occurred in Sup. Please
accept our sincere apologies. Please submit the contents of
/home/joey/.sup/exception-log.txt and a brief report of the
circumstances to https://github.com/sup-heliotrope/sup/issues so that
we might address this problem. Thank you!
Sincerely,
--- NoMethodError from thread: main
undefined method []' for nil:NilClass /var/lib/gems/1.9.1/gems/sup-0.13.2/lib/sup/account.rb:38:in
initialize'
/var/lib/gems/1.9.1/gems/sup-0.13.2/lib/sup/util.rb:577:in new' /var/lib/gems/1.9.1/gems/sup-0.13.2/lib/sup/util.rb:577:in
init'
/var/lib/gems/1.9.1/gems/sup-0.13.2/lib/sup.rb:168:in start' /var/lib/gems/1.9.1/gems/sup-0.13.2/bin/sup:155:in
module:Redwood'
/var/lib/gems/1.9.1/gems/sup-0.13.2/bin/sup:74:in <top (required)>' /usr/local/bin/sup:23:in
load'
/usr/local/bin/sup:23:in `
Some mail senders (rushed-out in-house services, accessibility-unaware tech startups not using 3rd-party mail services) only send email in HTML format without providing plain-text alternative.
Sup might need to handle this for a better user experience. If so, a few things come to mind:
<a>
? The href
attribute is no doubt important. But how to present it to user?<img>
? <table>
? Shall we implement an HTML render engine? (short answer: probably no.)Refiled this issue from previous issue #69. Still having ncurses issue when entering anything into the textfield in sup. For instance, when trying global search
--- NoMethodError from thread: main
undefined method `unpost_form' for nil:NilClass
~/tmp/sup/lib/sup/textfield.rb:57:in `deactivate'
~/tmp/sup/lib/sup/buffer.rb:622:in `block in ask'
<internal:prelude>:10:in `synchronize'
~/tmp/sup/lib/sup/buffer.rb:27:in `sync'
~/tmp/sup/lib/sup/buffer.rb:621:in `ask'
~/tmp/sup/lib/sup/util.rb:573:in `method_missing'
~/tmp/sup/lib/sup/modes/scroll_mode.rb:82:in `search_in_buffer'
~/tmp/sup/lib/sup/mode.rb:59:in `handle_input'
~/sup/lib/sup/buffer.rb:274:in `handle_input'
bin/sup:266:in `<module:Redwood>'
bin/sup:74:in `<main>'
brew doctor
shows that the ncurses package has been linked and running ncursesw5-config shows the homebrew installed ncurses.
ncursesw5-config --prefix
/usr/local/Cellar/ncurses/5.9
Reinstalling ncursesw-sup gem also did not help. Thanks for the help.
I've got an advice that these steps would help me fixup gem install sup
fail:
brew install ncurses
brew doctor
brew link ncurses # might require a --force
But, this is what I got:
~ % brew install ncurses
Error: No available formula for ncurses
~ % brew doctor
Your system is ready to brew.
Is there something wrong with ncurse source in brew? So wierd.
From #65 (comment):
By the way, I question the usability of the horizontal bar as it is implemented now; I have 7+ different alternates, and my terminal is usually too narrow to display them all. A solution would be to make the
selector scrollable, or maybe implement some kind of pulldown selection when selecting the From address.
Personally I'm +1 with this. Looping highlight selection is only good when number of options <= 3. Tab-completion / Fuzzy matching might solve this problem better though, I guess.
Besides there're more usability issues I've found while testing #66:
From
field with hotkey e
, the tab-completion candidates are contacts, not user's accounts.:account_selector: false
, user can't even edit From
field with hotkey e
. It's unclear that this options means "I need a menu-like account selector" or "I use multiple account so allow me to choose".Looks like a redisgn for account selector is around the corner. Probably around or post 0.14 release.
Just set up sup on my working laptop today.
~
to drop into consoleremove_labels('is:inbox', 'Inbox')
and press enter key.Got
NoMethodError: undefined method `save' for #<Redwood::Message:0x007f303031ad50>
Will look into this later today. Removing inbox labels would be the first thing to do for new users. And I just didn't know that sup-sync
has an option of --archive
. Looks worth fixing for me.
Great work on the web page! I did notice a display error on my Nexus 7 (Dolphin Browser), see this screenshot. This hapens as soon as I scroll down.
Everything works fine in Chrome, though, so I'd consider it low priority.
In the sup index when the cursor is over a message with a subject that is too long to fit on screen, sup spans the subject to cover two rows.
This is cool but in my terminal (Konsole) moving the cursor in fast succession (e.g. holding down/up keys) does not correctly refreshes the screen resulting in a mess shown in the attached screenshot:
Refreshing the terminal with CTRL-L fixes this but is annoying to have to do this everytime.
Using latest develop branch of sup a global search (F) for any Japanese text (e.g. テスト, 生活) causes sup to crash.
--- Encoding::CompatibilityError from thread: main
incompatible character encodings: UTF-8 and ASCII-8BIT
/home/ryujin/Apps/sup-git/lib/sup/modes/text_mode.rb:49:in `<<'
/home/ryujin/Apps/sup-git/lib/sup/modes/log_mode.rb:38:in `block in <<'
/home/ryujin/Apps/sup-git/lib/sup/modes/log_mode.rb:38:in `each'
/home/ryujin/Apps/sup-git/lib/sup/modes/log_mode.rb:38:in `<<'
/home/ryujin/Apps/sup-git/lib/sup/logger.rb:64:in `block (2 levels) in send_message'
/home/ryujin/Apps/sup-git/lib/sup/logger.rb:63:in `each'
/home/ryujin/Apps/sup-git/lib/sup/logger.rb:63:in `block in send_message'
<internal:prelude>:10:in `synchronize'
/home/ryujin/Apps/sup-git/lib/sup/logger.rb:62:in `send_message'
/home/ryujin/Apps/sup-git/lib/sup/logger.rb:40:in `block (2 levels) in <class:Logger>'
/home/ryujin/Apps/sup-git/lib/sup/logger.rb:74:in `block (2 levels) in <module:LogsStuff>'
/home/ryujin/Apps/sup-git/lib/sup/index.rb:451:in `parse_query'
/home/ryujin/Apps/sup-git/lib/sup/util.rb:637:in `method_missing'
/home/ryujin/Apps/sup-git/lib/sup/modes/search_results_mode.rb:43:in `spawn_from_query'
bin/sup:300:in `<module:Redwood>'
bin/sup:74:in `<main>'
The following patch seems to fix the issue but I am not sure if it is the correct way to do this. Specially if we want to keep ruby1.8 compatibility:
diff --git a/lib/sup/modes/text_mode.rb b/lib/sup/modes/text_mode.rb
index 39706d3..3a92d8c 100644
--- a/lib/sup/modes/text_mode.rb
+++ b/lib/sup/modes/text_mode.rb
@@ -46,7 +46,7 @@ class TextMode < ScrollMode
def << line
@lines = [0] if @text.empty?
- @text << line
+ @text << line.force_encoding("UTF-8")
@lines << @text.length
if buffer
ensure_mode_validity
I guess it's time.
And, we could use a 4-digit version scheme for 0.13. The leading part 0.13
should stay the same. The 2 trailing digits could work like semver's minor and patch version incase we backport user-visible features to 0.13.
What do you think? Are there any more tasks should be done before releasing?
sudo gem1.9 install sup
...
configure: error: uuid.h found, but uuid_create() not found. You probably wants to install libuuid from util-linux-ng or e2fsprogs (you may need to install the uuid-dev, libuuid-devel or e2fsprogs-devel package)
rake aborted!
...
Gem files will remain installed in /usr/local/share/gems1.9/gems/xapian-full-alaveteli-1.2.9.5 for inspection.
Results logged to /usr/local/share/gems1.9/gems/xapian-full-alaveteli-1.2.9.5/./gem_make.out
I'm on
Amazon Linux AMI release 2013.03
I've installed e2fsprogs-devel
uuid-devel
xapian-core
and xapian-bindings
system packages but I still get this same error message.
Although I almost never resize the terminal running sup, it'd be better to redraw after resize happens since every good ncurses application does this.
~/.offlineimaprc example has a hardcode [Gmail]/All Mail
. But I just found that offlineimap --info
verbose like [Gmail]/&g0l6Pw- (disabled)
instead of the name of [Gmail]/All Mail
. That why I always got these output:
~ % offlineimap
OfflineIMAP 6.5.4
Licensed under the GNU GPL v2+ (v2 or any later version)
Account sync personal:
*** Processing account personal
Establishing connection to imap.gmail.com:993
*** Finished account 'personal' in 0:03
After changing display language in gmail setting from 中文简体 to English(US), offlineimap worked.
I think wiki shall remind user that this filter must adjust to user's gmail language setting.
This is a feature request for a configuration option for "snippet length." It would be nice to have more than 80 chars for using sup fullscreen on a wide monitor.
Umbrella issue for migrating to Psych (available in both 1.8 and 1.9) as opposed to Syck which is on the way out. Syck and Psych might create incompatible configuation/YAML files so existing files either need to be migrated on the fly (which should not be a problem untill Syck is dropped) or some documented script.
Psych needs to be required conditionally for Ruby <1.9.2.
Issues #16 and #3 are preliminary hacks to fix these issues.
Hi!
I'm writing a color scheme for sup, based on vim's wombat http://dengmao.wordpress.com/2007/01/22/vim-color-scheme-wombat/ and I noticed that certain widgets, like the system log and message bodies always use the console default colors.
Instead, these should use the colors for normal text.
Attached is the color scheme so far. It is supposed to be used with a 256 color terminal, I'm using rxvt-unicode-256color.
I would like to attach the file, but github doesn't let me. So here it is inline. Sorry for that.
---
# ======================================
# globals
:status:
:fg: 230
:bg: 238
:attrs:
- bold
:twiddle:
:fg: 241
:bg: 232
:text:
:highlight: default_highlight
:fg: 252
:bg: 234
# convenience
:default_highlight:
:fg: 252
:bg: 239
# ======================================
# thread-index-mode
:date:
:highlight: default_highlight
:fg: 252
:bg: 234
:to_me:
:highlight: to_me_highlight
:fg: 113
:bg: 234
:to_me_highlight:
:fg: 113
:bg: 239
:size_widget:
:highlight: default_highlight
:fg: 252
:bg: 234
:index_old:
:highlight: default_highlight
:fg: 252
:bg: 234
:index_new:
:highlight: index_new_highlight
:fg: 11
:bg: 234
:index_new_highlight:
:fg: 11
:bg: 239
:snippet:
:highlight: snippet_highlight
:fg: 113
:bg: 234
:snippet_highlight:
:fg: 113
:bg: 239
:label:
:highlight: label_highlight
:fg: 111
:bg: 234
:label_highlight:
:fg: 111
:bg: 239
:tagged:
:highlight: tagged_highlight
:fg: 11
:bg: 234
:attrs:
- bold
:tagged_highlight:
:fg: 11
:bg: 239
:attrs:
- bold
# the one-character widget '*'
:starred:
:highlight: starred_highlight
:fg: 11
:bg: 234
:attrs:
- bold
:starred_highlight:
:fg: 11
:bg: 239
:attrs:
- bold
# subject of a starred message
:index_starred:
:highlight: index_starred_highlight
:fg: 11
:bg: 234
:attrs:
- bold
:index_starred_highlight:
:fg: 11
:bg: 239
:attrs:
- bold
# ======================================
# thread-view-mode
:message_patina: # message header
:highlight: default_highlight
:fg: 234
:bg: c030
:alternate_patina: # message header
:highlight: default_highlight
:fg: 234
:bg: 110
:quote:
:highlight: quote_highlight
:fg: 113
:bg: 234
:quote_highlight:
:fg: 113
:bg: 239
:quote_patina:
:highlight: quote_patina_highlight
:fg: 113
:bg: 234
:quote_patina_highlight:
:fg: 113
:bg: 239
:sig:
:highlight: sig_highlight
:fg: 113
:bg: 234
:sig_highlight:
:fg: 113
:bg: 239
:sig_patina:
:highlight: sig_patina_highlight
:fg: 113
:bg: 234
:sig_patina_highlight:
:fg: 113
:bg: 239
:attachment:
:highlight: attachment_highlight
:fg: 111
:bg: 234
:attachment_highlight:
:fg: 111
:bg: 239
:cryptosig_valid:
:highlight: cryptosig_valid_highlight
:fg: 11
:bg: 234
:cryptosig_valid_highlight:
:fg: 11
:bg: 239
:cryptosig_unknown:
:highlight: cryptosig_unknown_highlight
:fg: 113
:bg: 234
:cryptosig_unknown_highlight:
:fg: 113
:bg: 239
:cryptosig_invalid:
:fg: yellow
:bg: red
:attrs:
- bold
# ======================================
# label list
:labellist_new:
:fg: black
:bg: red
:attrs:
- bold
:labellist_old:
:highlight: default_highlight
:fg: 252
:bg: 234
:labellist_new:
:highlight: labellist_new_highlight
:fg: 11
:bg: 234
:labellist_new_highlight:
:fg: 11
:bg: 239
# ======================================
# misc
:regular_buf:
:highlight: default_highlight
:fg: 252
:bg: 234
:system_buf:
:highlight: default_highlight
:fg: 252
:bg: 234
:modified_buffer:
:highlight: default_highlight
:fg: 252
:bg: 234
:search_highlight:
:highlight: search_highlight_highlight
:fg: black
:bg: 11
:search_highlight_highlight:
:fg: black
:bg: 11
# ======================================
# reply-mode
:horizontal_selector_selected:
:highlight: horizontal_selector_selected_highlight
:fg: 11
:bg: 234
:attrs:
- bold
:horizontal_selector_selected_highlight:
:fg: 11
:bg: 239
:attrs:
- bold
:horizontal_selector_unselected:
:highlight: horizontal_selector_unselected_highlight
:fg: 252
:bg: 234
:horizontal_selector_unselected_highlight:
:fg: 252
:bg: 239
# ======================================
# completion-mode
:completion_character:
:fg: 252
:bg: 53
# ======================================
# TODO
:draft_notification:
:fg: black
:bg: red
:attrs:
- bold
:missing_message:
:fg: black
:bg: red
:starred_patina:
:fg: black
:bg: red
:attrs:
- bold
:alternate_starred_patina:
:fg: black
:bg: red
:attrs:
- bold
:generic_notice_patina:
:fg: cyan
:bg: 234
:option:
:fg: 252
:bg: 234
:index_draft:
:fg: red
:bg: 234
:attrs:
- bold
When testing ncurses-ruby on Ubuntu w/ Ruby 1.8.7-p352 I found that ~/.sup/config.yaml
looks like:
# excerpt
:accounts:
:default:
:name: !str:HighLine::String Whyme Lyu
:email: !str:HighLine::String <email here>
and running sup
later would produce a backtrace:
[Tue Apr 30 03:08:58 +0800 2013] No 'gpgme' gem detected. Install it for email encryption, decryption and signatures.
./lib/sup/util.rb:557:in `method_missing': no Redwood::HookManager instance defined in method call to run! (RuntimeError)
from bin/sup:372
which doesn't explain the problem at all since the actual exception was already caught and this new exception comes from the corresponding rescue
block.
Meanwhile on Arch Ruby 1.8.7-p371, ~/.sup/config
looks like:
# excerpt
:accounts:
:default:
:name: Whyme Lyu
and everything just goes smoothly.
http://www.ruby-lang.org/en/news/2013/02/24/ruby-2-0-0-p0-is-released/
I.e. as introduced by 18365be (#12), but also exists other places like lib/sup/rfc2047.rb.
I'd like to experiment with implementing new Source
s. I'm new to ruby so this could be a misunderstanding on my side, but it seems to me that the documentation is a little bit out of date. Some methods such as end_offset
aren't implemented anywhere even though they're supposed to be mandatory.
After a short discussion on #sup with @5long; it would be nice to keep all the documentation in the wiki in markdown format and merge a few selected pages, FAQ, UserGuide, etc. into the repository at release time. Then use a similar script like npm (https://github.com/isaacs/npm/blob/master/scripts/doc-build.sh) to build the documentation for shipping with the release.
At this point we got some documentation both in the repo and in the wiki, its not a big deal now since the next release is mostly bugfixes, but later changes will probably result in things getting out of sync and hard to maintain.
I have emails in English, Spanish and Japanese indexed by sup. If I do a global search (F) and enter any English or Spanish string I get all matching messages with those strings in the subject or body. The issue is that Japanese strings do not match anything unless I explicitly add "subject:" or "body:" to the query.
For example the string "テスト” matches nothing even tough I do have messages with that string in the subject. But the string "subject:テスト" does correctly matches those messages.
I do have the latest develop branch that has CJK tokenization enabled.
As an enhancement: Windows support would be nice. A Mac installer was also requested by some users, but I am not sure if it is a good idea since you can easily do 'gem' stuff from mac already.
/home/gaute/.gem/ruby/2.0.0/gems/rmail-1.0.0/lib/rmail/address.rb:694: invalid multibyte escape: /\A[\200-\377\w!$%&\'*+\/=?^_\`{\}|~#-]+/m
/home/gaute/.gem/ruby/2.0.0/gems/rmail-1.0.0/lib/rmail.rb:41:in `<top (required)>'
/home/gaute/dev/ruby/sup/lib/sup.rb:8:in `<top (required)>'
/home/gaute/dev/ruby/sup/sup-version.rb:9:in `<top (required)>'
/home/gaute/dev/ruby/sup/Rakefile:49:in `require_relative'
/home/gaute/dev/ruby/sup/Rakefile:49:in `<top (required)>'
Upstream issue: rlane/ncursesw-ruby#2, see error in: https://travis-ci.org/5long/sup/jobs/5918964. Brought up in issue #16.
I run sup inside TMUX pane and I was simply resizing the pane when I got a crash:
/home/ryujin/Apps/sup-git/lib/sup/util.rb:122: warning: already initialized constant EXTRACT_FIELD_NAME_RE
[2013-06-28 12:13:53 +0900] No 'gpgme' gem detected. Install it for email encryption, decryption and signatures.
[2013-06-28 12:17:51 +0900] ERROR: oh crap, an exception
----------------------------------------------------------------
We are very sorry. It seems that an error occurred in Sup. Please
accept our sincere apologies. Please submit the contents of
/home/ryujin/.sup/exception-log.txt and a brief report of the
circumstances to https://github.com/sup-heliotrope/sup/issues so that
we might address this problem. Thank you!
Sincerely,
The Sup Developers
----------------------------------------------------------------
--- ThreadError from thread: main
deadlock; recursive locking
<internal:prelude>:8:in `lock'
<internal:prelude>:8:in `synchronize'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:218:in `sigwinch_happened!'
(eval):1:in `sigwinch_happened!'
bin/sup:161:in `block in <module:Redwood>'
<internal:prelude>:8:in `call'
<internal:prelude>:8:in `synchronize'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:218:in `sigwinch_happened!'
(eval):1:in `sigwinch_happened!'
bin/sup:161:in `block in <module:Redwood>'
/var/lib/gems/1.9.1/gems/ncursesw-sup-1.3.1.3/lib/ncurses_sugar.rb:70:in `call'
/var/lib/gems/1.9.1/gems/ncursesw-sup-1.3.1.3/lib/ncurses_sugar.rb:70:in `method_missing'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:126:in `write'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:238:in `block in draw_line_from_array'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:224:in `each'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:224:in `each_with_index'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:224:in `draw_line_from_array'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:199:in `draw_line'
/home/ryujin/Apps/sup-git/lib/sup/modes/line_cursor_mode.rb:52:in `draw_line'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:46:in `block in draw'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:46:in `each'
/home/ryujin/Apps/sup-git/lib/sup/modes/scroll_mode.rb:46:in `draw'
/home/ryujin/Apps/sup-git/lib/sup/modes/line_cursor_mode.rb:37:in `draw'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:116:in `draw'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:336:in `draw_screen'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:302:in `block in completely_redraw_screen'
<internal:prelude>:10:in `synchronize'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:27:in `sync'
/home/ryujin/Apps/sup-git/lib/sup/buffer.rb:299:in `completely_redraw_screen'
(eval):1:in `completely_redraw_screen'
bin/sup:245:in `<module:Redwood>'
bin/sup:74:in `<main>'
The current block quote pattern is hardcoded and only matches the english outlook verison. Would a configurable list of block quote regexps be appreciated, and if so, any ideas on how to configure this? Should this be configured sup-wide, or on a per account basis?
after installing and relinking the homebrew ncurses following the previous instructions,
brew install ncurses
brew doctor
brew link --force ncurses
i run gem i sup
, which succeeds. however, on execution, there seems to be a load error in the ncursesw library
~/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': dlopen(/Users/stbose/.rvm/gems/ruby-1.9.3-p392/gems/ncursesw-sup-1.3.1.1/lib/ncursesw_bin.bundle, 9): Symbol not found: _TYPE_ALNUM (LoadError)
I'd appreciate any insight that you can give.
Just tried to install (via gem) and run it via rbenv under ruby
1.9.3-p327 and 1.9.3-p392. With both I have the problem that characters
like Umlauts are not show correctly. For example: "ä" becomes "\xe4".
When setting $SUP_LOG_LEVEL to debug I get several of those lines:
couldn't transcode text from ASCII (ASCII) to UTF8 ("<20130523193529.GB30"...): got String::CheckError (unexpected encoding ASCII-8BIT)
I'm almost sure this is related to my encoding problems. Any of those
lines seem to be referencing to header lines.
Hope this helps. I was long enough without sup so I can wait for the
compatibility with ruby 2.0.0 so don't bother if this will be gone by then
anyway. Just filed this issue bacuase I was advised so on sup-talk. Of course
I'd prefer to sup again sooner. ;)
Keep relevant things around:
I just found that on http://gitorious.org/sup there is no indication that current development is happening on Github infrastructure. Probably worth making it clear on that page.
Using ruby 2.0, this bug happens a lot:
We are very sorry. It seems that an error occurred in Sup. Please
accept our sincere apologies. Please submit the contents of
/home/rakoo/.sup/exception-log.txt and a brief report of the
circumstances to https://github.com/sup-heliotrope/sup/issues so that
we might address this problem. Thank you!
Sincerely,
The Sup Developers
----------------------------------------------------------------
--- ThreadError from thread: main
can't be called from trap context
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/lib/sup/buffer.rb:218:in `synchronize'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/lib/sup/buffer.rb:218:in `sigwinch_happened!'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/lib/sup/util.rb:573:in `method_missing'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/bin/sup:163:in `block in <module:Redwood>'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/lib/sup/buffer.rb:36:in `call'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/lib/sup/buffer.rb:36:in `select'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/lib/sup/buffer.rb:36:in `nonblocking_getch'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/bin/sup:237:in `<module:Redwood>'
/home/rakoo/.gem/ruby/2.0.0/gems/sup-0.13.0/bin/sup:72:in `<top (required)>'
/home/rakoo/.gem/ruby/1.9.1/bin/sup:23:in `load'
/home/rakoo/.gem/ruby/1.9.1/bin/sup:23:in `<main>'
A quick googling seems to say that trap is not thread-safe, so we cannot do thread-related stuff inside a trap: see bug 7917.
I've been playing recently with celluloid, a framework for using actor logic (such as in Erlang) inside ruby; this makes all thread-related stuff put in the background and allows a dev to use standard ruby objects without ever bothering with concurrency. Maybe a faraway goal for sup ?
sup v0.13.0
Start new mail, edit in vi, save and exit editor, and sup crasehs on me with:
----------------------------------------------------------------
We are very sorry. It seems that an error occurred in Sup. Please
accept our sincere apologies. Please submit the contents of
/home/ico/.sup/exception-log.txt and a brief report of the
circumstances to https://github.com/sup-heliotrope/sup/issues so that
we might address this problem. Thank you!
Sincerely,
The Sup Developers
----------------------------------------------------------------
a--- TypeError from thread: main
no implicit conversion from nil to integer
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/horizontal-selector.rb:18:in `[]'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/horizontal-selector.rb:18:in `val'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/modes/edit-message-mode.rb:383:in `update'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/modes/edit-message-mode.rb:245:in `edit_message'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/mode.rb:59:in `send'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/mode.rb:59:in `handle_input'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/lib/sup/buffer.rb:274:in `handle_input'
/usr/lib/ruby/gems/1.8/gems/sup-0.13.0/bin/sup:264
/usr/bin/sup:19:in `load'
/usr/bin/sup:19
You have mail in /home/ico/Maildir
If I change any of the first 5 options in sup-config, I won't be able to run neither sup nor sup-config.
The errors are:
[bitraten@perseus ~]$ sup-sync /usr/lib/ruby/1.8/yaml.rb:133:in
transfer': invalid subclass (TypeError)
from /usr/lib/ruby/1.8/yaml.rb:133:in node_import' from /usr/lib/ruby/1.8/yaml.rb:133:in
load'
from /usr/lib/ruby/1.8/yaml.rb:133:in load' from /usr/lib/ruby/1.8/yaml.rb:144:in
load_file'
from /usr/lib/ruby/1.8/yaml.rb:143:in open' from /usr/lib/ruby/1.8/yaml.rb:143:in
load_file'
from /home/bitraten/.gem/ruby/1.8/gems/sup-0.12.1/lib/sup.rb:136:in load_yaml_obj' from /home/bitraten/.gem/ruby/1.8/gems/sup-0.12.1/lib/sup.rb:266:in
load_config'
from /home/bitraten/.gem/ruby/1.8/gems/sup-0.12.1/lib/sup.rb:157:in start' from /home/bitraten/.gem/ruby/1.8/gems/sup-0.12.1/bin/sup-sync:80
and
[bitraten@perseus ~]$ sup /home/bitraten/.gem/ruby/1.8/gems/sup-0.12.1/lib/sup/util.rb:601:in
method_missing': no Redwood::HookManager instance defined in method call to run! (RuntimeError)
from /home/bitraten/.gem/ruby/1.8/gems/sup-0.12.1/bin/sup:370`
Versions:
We should try to get sup 0.14 out soon with all the new stuff in 'develop', what we need to do:
this release should only support ruby >1.9.3. Please add other 'critical' requirements, it wouldn't be very nice if this release crashed things totally. Downgrading to 0.13* should be possible.
rake gem fails with:
** Execute pkg/sup-999.gem
cd pkg/sup-999
rake aborted!
undefined method `write' for #<Syck::Emitter:0x00000001f30b00>
/home/gaute/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/psych/visitors/emitter.rb:20:in `end_document'
more error: https://gist.github.com/gauteh/5488890
adding require 'psych' in the Rakefile fixes the issue for me, but probably breaks 1.8 (and 1.9.1). Conditional require... ?
This should only affect people who build the gem, perhaps its not necessary to support that on 1.8? Especially since 1.8 being deprecated in a month or so anyway..
Regards, gaute
As @ericweikl pointed out in #13; test_server.rb and server.rb are probably obsolete. Does anyone have more insight?
It would be great to have a configuration option to automatically use async mode and the associated hook when composing and replying.
Could previously just do 'F' and search blank. Now only works with search hacks like before:tomorrow or label: or similar.. great for listing recent all mail.
This could be valuable when there's quite a few mails in inbox, and the user would want to view oldest threads first.
A rough cut is #79 (see the comments for why it didn't get merged), which is a patch from sup-talk circa 2009.
I installed ncurses 5.9 manually as I was getting an error while trying to install ncursesw-sup. After installing ncurses 5.9 I am now getting build errors like the below.
I miss sup and would like to get back to using it again. Will I be able to run it on my Mac?
make
compiling form_wrap.c
form_wrap.c:624:11: warning: implicit conversion loses integer precision: 'long' to 'int' [-Wshorten-64-to-32]
int n = rbncurs_array_length(arg3);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
form_wrap.c:701:40: warning: implicit conversion loses integer precision: 'unsigned long' to 'chtype' (aka 'unsigned int') [-Wshorten-64-to-32]
return INT2NUM(set_field_fore(field, NUM2ULONG(attr)));
~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~
/usr/local/Cellar/ruby/2.0.0-p0/include/ruby-2.0.0/ruby/ruby.h:601:22: note: expanded from macro 'NUM2ULONG'
^~~~~~~~~~~~~~~~~~~~~~
/usr/local/Cellar/ruby/2.0.0-p0/include/ruby-2.0.0/ruby/ruby.h:1167:35: note: expanded from macro 'INT2NUM'
^
/usr/local/Cellar/ruby/2.0.0-p0/include/ruby-2.0.0/ruby/ruby.h:241:45: note: expanded from macro 'INT2FIX'
I am using sup-config to add sources and after adding them I get the following errors:
/usr/lib/ruby/vendor_ruby/sup/account.rb:38:in `initialize': undefined method `[]' for nil:NilClass (NoMethodError)
from /usr/lib/ruby/vendor_ruby/sup/util.rb:576:in `new'
from /usr/lib/ruby/vendor_ruby/sup/util.rb:576:in `init'
from /usr/lib/ruby/vendor_ruby/sup.rb:166:in `start'
from /usr/bin/sup-add:78:in `<main>'
When I try to run sup-sync I get the same error (except the call originates in sup-sync on line 80 instead of sup-add on line 78.
This is using the 0.12..1+git20120407.aaa852f version in the Ubuntu 12.10 (quantal) repo.
So, I tried to use the one from "gem install sup" instead and then I get this error as soon as I run sup-config and it immediately exits:
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': superclass mismatch for class Iconv (TypeError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.9.1/gems/sup-0.12.1/lib/sup/rfc2047.rb:19:in `<top (required)>'
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.9.1/gems/sup-0.12.1/lib/sup/source.rb:1:in `<top (required)>'
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.9.1/gems/sup-0.12.1/lib/sup.rb:351:in `<top (required)>'
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.9.1/gems/sup-0.12.1/bin/sup-config:7:in `<top (required)>'
from /usr/local/bin/sup-config:23:in `load'
from /usr/local/bin/sup-config:23:in `<main>'
The version of the iconv gem I have is 1.0.3.
Easy to fix with File.expand_path
. But worth a bit refactoring to make the same logic DRY with sup-add
As was mentioned in #101 by @5long we should get a better setup for distributing hooks and themes, either submitted by users or a managed list of semi-supported hooks + themes.
Currently we are using the wiki, but that doesn't scale very well. Perhaps a git based repository with a web ui? We keep a official repository and users can fork their own.. and we keep some sort of main list. Is this overkill?
Configuration setups could also be put in there.
When I reply to a message and the thread is still in my inbox the message I just sent in that thread is truncated to a line or two and then this error is shown:
***********************************************************************
An error occurred while loading this message.
***********************************************************************
If I archive the thread the message displays correctly if I go view it there.
It would be nice to have control over how threads are displayed in the index mode. For example, I'd like to have the flags and subject display immediately after the names on a row by row basis. Themes, like those available in alot (for notmuch) would be great and allow these kinds of customizations.
Another crash, when doing a global find () :
[Fri May 24 12:36:30 +0200 2013] ERROR: oh crap, an exception
----------------------------------------------------------------
We are very sorry. It seems that an error occurred in Sup. Please
accept our sincere apologies. Please submit the contents of
/home/ico/.sup/exception-log.txt and a brief report of the
circumstances to https://github.com/sup-heliotrope/sup/issues so that
we might address this problem. Thank you!
Sincerely,
The Sup Developers
----------------------------------------------------------------
--- RuntimeError from thread: load threads for thread-index-mode
./bin/../lib/sup/index.rb:557:in `find_docid'
./bin/../lib/sup/index.rb:562:in `find_doc'
./bin/../lib/sup/index.rb:572:in `get_entry'
./bin/../lib/sup/index.rb:197:in `build_message'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
./bin/../lib/sup/index.rb:581:in `synchronize'
./bin/../lib/sup/index.rb:197:in `build_message'
./bin/../lib/sup/index.rb:191:in `each_message_in_thread_for'
./bin/../lib/sup/thread.rb:349:in `call'
./bin/../lib/sup/thread.rb:349:in `load_thread_for_message'
./bin/../lib/sup/index.rb:191:in `each_message_in_thread_for'
./bin/../lib/sup/index.rb:191:in `each'
./bin/../lib/sup/index.rb:191:in `each_message_in_thread_for'
./bin/../lib/sup/thread.rb:347:in `load_thread_for_message'
./bin/../lib/sup/thread.rb:339:in `load_n_threads'
./bin/../lib/sup/index.rb:152:in `each_id_by_date'
./bin/../lib/sup/index.rb:249:in `each_id'
./bin/../lib/sup/index.rb:249:in `each'
./bin/../lib/sup/index.rb:249:in `each_id'
./bin/../lib/sup/index.rb:152:in `each_id_by_date'
./bin/../lib/sup/thread.rb:334:in `load_n_threads'
./bin/../lib/sup/modes/thread_index_mode.rb:654:in `__unprotected_load_n_threads'
(eval):12:in `load_n_threads'
./bin/../lib/sup/modes/thread_index_mode.rb:638:in `load_n_threads_background'
./bin/../lib/sup.rb:82:in `reporting_thread'
./bin/../lib/sup.rb:80:in `initialize'
./bin/../lib/sup.rb:80:in `new'
./bin/../lib/sup.rb:80:in `reporting_thread'
./bin/../lib/sup/modes/thread_index_mode.rb:637:in `load_n_threads_background'
./bin/../lib/sup/modes/thread_index_mode.rb:708:in `__unprotected_load_threads'
(eval):12:in `load_threads'
./bin/../lib/sup/modes/search_results_mode.rb:48:in `spawn_from_query'
bin/sup:304
This is the assert which fails:
fail unless docids.size <= 1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.