Subject: [sup-talk] can't remove draft label

From: [email-masked] (John Bent)
Date: Wed, 30 Jan 2008 11:05:20 -0700

I had two messages that weren't drafts that kept showing up with
draft labels on them.  I removed everything from the .sup/drafts
folder - no change.  I did 'sup-tweak-labels --remove draft' on my
mbox, it said:

Scanned 13 / 13 messages and changed 13.

At which point, I restarted sup and found that one of the two falsely
labeled drafts was removed.  But there's still one.  I retried the
sup-tweak-labels but to no avail.  draft is not a user supplied label
so just editing the message labels doesn't work.  The thread that is
marked as a draft does not have a draft anywhere in it (i.e. I skip to
each message and hit 'e' but it always says, "this isn't a draft").

Any ideas?  Thanks!

---

From: [email-masked] (Christopher Warrington)
Date: Wed, 30 Jan 2008 22:36:09 -0600

> each message and hit 'e' but it always says, "this isn't a draft").

Try

sup-sync --changed sup://drafts

-- 
Christopher Warrington <chrisw at rice.edu>

---

From: [email-masked] (John Bent)
Date: Wed, 30 Jan 2008 23:08:09 -0700

> sup-sync --changed sup://drafts
Thanks so much for the suggestion.  :)
I thought it worked because I saw this message:

Deleting missing messages from the index...
Deleted 1 / 1 messages

But that was just the message I'd previously deleted from the drafts dir.
The false draft is still there...

---

From: [email-masked] (William Morgan)
Date: Sat, 02 Feb 2008 20:44:41 -0800

Reformatted excerpts from John Bent's message of 2008-01-30:
> But that was just the message I'd previously deleted from the drafts
> dir.  The false draft is still there... 

I'm not sure why that label would be there, but you can perform some
index surgery to remove it.

$ sh devel/console.sh 
irb(main):001:0> r=Index.ferret.search("message_id:1201759596-sup-4274 at tangerine.lanl.gov")
=> #<struct Ferret::Search::TopDocs total_hits=1, hits=[#<struct Ferret::Search::Hit doc=92571, score=10.82630443573>], max_score=10.82630443573, searcher=#<Ferret::Search::Searcher:0xb740dff0>>
irb(main):002:0> id=r.hits.first.doc
=> 92571
irb(main):003:0> m = Index.build_message id
[...]
irb(main):004:0> m.remove_label :draft
=> true
irb(main):005:0> m.save Index
=> false
irb(main):006:0> exit

Something like that. Plug in the correct message-id above.

-- 
William <wmorgan-sup at masanjin.net>

---

From: [email-masked] (John Bent)
Date: Thu, 20 Mar 2008 16:37:42 -0600

Excerpts from William Morgan's message of Sat Feb 02 21:44:41 -0700 2008:
> irb(main):001:0>
> r=Index.ferret.search("message_id:1201759596-sup-4274 at tangerine.lanl.gov")
> => #<struct Ferret::Search::TopDocs total_hits=1, hits=[#<struct
> Ferret::Search::Hit doc=92571, score=10.82630443573>],
> max_score=10.82630443573, searcher=#<Ferret::Search::Searcher:0xb740dff0>>
Two months later and I finally did this... :)  It worked great.  The only
slight problem was that somehow all 25 messages in that thread were falsely
labeled so I had to repeat the above 25 times.  Although I did eventually
realize that the console accepted semicolons so I combined them into a 
single line and then just did arrow up 25 times so it was pretty fast.

Thanks!

John