Adium

Ticket #38 (closed task: invalid)

Opened 4 years ago

Last modified 1 week ago

Log format and viewer rewrite

Reported by: tick Assigned to: cbarrett
Priority: highest Milestone:
Component: Logging Version:
Severity: blocker Keywords:
Cc: Patch:
Pending:

Description (Last modified by evands)

The current log format isn't particularly machine-readable... we need something which:

  • Can be quickly read and written
  • Can be easily searched, most likely leveraging Spotlight
  • Can by easily indexed by Spotlight
  • Can be parsed into message history

Note that the above requirements mean we will most likely want to continue support for the old log format and message history for 10.3.

See: XMLLogFormat for the new format we are going along with.

The requests from other logging tickets are condensed below so that we can find everything in one place:

"Save as support for exporting a log" (#7)

"Problem: Encrypted chats are apparently being logged in cleartext. Seems to me that people who care enough to encrypt chats would probably not want their conversations logged in cleartext. Perhaps there could be an option (enabled by default) to not log encrypted conversations?" (#94)

~"When searching for more than one word in the Adium log viewer, there is no way to search for the words as a phrase. As a result, searching for, for instance, "to you" (with or without quotes) will bring up any log that contains those two words whether or not they are next to each other. Having the log viewer consider words in quotes as phrases to search for, as in online search engines, would be preferable. I've tested this in Adium 0.81 under 10.4.1." (#265)~

~"When searching in history, if I use any accented character in the search field, I get lots of results which don't contain the search string, whereas it seems ok if not using accented characters." (#1167)~

~"It seems that Adium does not respect metacontacts when displaying message history in new chat windows, or while browsing old chat logs. If metacontacts were grouped in the log browser, and message history was taken from the last conversation had (under any account) with a given metacontact, it would make both much more useful." (#1224)~

~See #812 as well, too large to paste in here~

"Delete all should only delete logged in acccounts' logs, to allow for multiple users better" #297

#542

'Printing support' #13

'Sort by log file size' #522

Attachments

adium_log_viewer_crash_log.txt (39.3 kB) - added by adium on 06/17/2006 06:51:55 AM.
I just checked out the current svn. with the current svn it crashed instead of spinning pizza.

Change History

05/24/2005 04:19:15 AM changed by evands

  • component changed from El Vision del Tick to Logging.

07/20/2005 03:40:17 PM changed by durin42

  • milestone changed from Adium X 0.90 (Old) to Adium X 0.90.

Probably should go along with the log format rewrite.

08/06/2005 11:33:39 AM changed by anonymous

Would be nice if the log viewer could group the chat logs according to meta grouping in the buddy list, and to display their alias rather than their user name in the "contacts" list.

09/20/2005 09:31:32 PM changed by samsamoa

  • priority changed from normal to highest.
  • severity changed from normal to blocker.

We need to fix logging, basically. Message history won't work right once we kill sql logger, too.

10/05/2005 11:32:23 PM changed by evands

  • description changed.
  • summary changed from Log viewer evaluation to Log format and viewer rewrite.

See LogFormatIdeas for discussion.

10/10/2005 05:22:27 PM changed by catfish_man

  • type changed from defect to task.

Setting to 'task', which I'm gonna use to mark 1.0 projects.

10/14/2005 04:04:47 PM changed by cbarrett

  • owner changed from AdamIser to cbarrett.

10/18/2005 12:56:32 AM changed by gnum <gnum@rogers.com>

Ticket #400 (http://trac.adiumx.com/ticket/400) should be kept in mind when rewriting the log module. I opened it as change request for the current logging and it was closed as irrelevant for the moment being. The ticked focused on keeping the history in UTF-8 as a standard file encoding to be human readable.

10/18/2005 12:59:59 AM changed by cbarrett

first off, no need to provide a link to the ticket, it's automatically linked. trac++ This isn't necessarily a bad idea, but I'm not sure of the correctness of leaving unescaped characters in XML files. I'll investigate it.

10/22/2005 07:47:43 PM changed by anonymous

I would like to suggest that the Adium logs be moved to the standard place for log files on OS X.

Most applications store their log files in ~/Library/Logs/

10/22/2005 08:00:28 PM changed by evands

See #1702 for an explanation of why we will not be storing our chat logs in ~/Library/Logs

10/25/2005 02:37:20 AM changed by cbarrett

  • status changed from new to assigned.

11/03/2005 09:37:17 PM changed by catfish_man

  • description changed.

Condensing the other logging tickets to here, since it's all related to the rewrite.

11/05/2005 06:14:57 PM changed by niklasbrunberg@mac.se

Request for the new log format. I recently discovered that you are about to switch to a new log format. I am quite happy with the current format but I see our reasons for the change. I will no doubt go along for the ride. However, I am very fond of my log and would hate to lose it. therefore I request (actually, I kindly ask for it) an importer of some kind. Or at least support for the old html format.

Thanks!

11/05/2005 07:34:49 PM changed by cbarrett

  • field_haspatch changed.

There will definitely be an importer for the old log format. It will probably be done as part of the first run wizard (#9). This is also mentioned in the description.

11/19/2005 06:07:19 AM changed by catfish_man

  • description changed.

11/19/2005 06:28:46 AM changed by catfish_man

  • description changed.

11/30/2005 08:56:02 PM changed by catfish_man

  • description changed.

11/30/2005 09:15:06 PM changed by catfish_man

  • description changed.

12/02/2005 07:49:37 PM changed by catfish_man

  • description changed.

12/12/2005 08:51:28 PM changed by waffffffle

I've posted on this in the forums, but I'm concerned about this new format.

I think it should incorporate the following information:

- It should log all timestamps and do so in GMT with timezone offset. Traveling cross country has tainted my logs. - It should retain all original formatting, colors, etc - it should retain the sender and recipient's screen name AND full name

XML-based would be nice. Ideally it would be a format that is easy to parse and use from the command line. I often find myself searching logs in the terminal using grep because Adium's Log Viewer is broken. The HTML log format thus far has been a pain but at least it is somewhat usable from the command line.

12/12/2005 08:56:44 PM changed by cbarrett

  • description changed.

Updates:

1) This has been addressed, see [XMLLogFormat].

2) IMO, if you're having to resort to grep to search your logs, that's a defect in Adium :) I"m not particularly concerned with making our new logs greppable, and would instead like to focus on making Adium's log viewer rock :)

12/12/2005 08:57:49 PM changed by cbarrett

  • description changed.

that's XMLLogFormat, sorry.

12/29/2005 11:21:58 PM changed by tick

  • description changed.

01/20/2006 04:43:34 AM changed by anonymous

would be a nice thing too have a working message history in 1.0svn, as it would result in "better betatesters". they could use 1.0svn for "everyday use" then.

02/12/2006 05:47:20 PM changed by MEMark

What I like about the logs today is that you can open them in your web browser and read them. This does not seem to be possible with this new format. One way to accomplish this is to link each logfile to an XSLT file provided with Adium.

What extension will you be using btw? I guess double clicking won't work like today, but you could always drag'n'drop the lof file to the browser.

02/12/2006 05:52:28 PM changed by boredzo

anonymous: 1.0svn is not for use by the general public. beta-testing is only done with betas.

02/21/2006 03:18:15 AM changed by rspeed

XSLT isn't necessary. The new log files as of the current spec would retain the ability to be read by modern web browsers. CSS alone would work nicely in Safari. Regardless, the new log viewer will hopefully remove any need to use Safari for reading logs.

02/21/2006 04:13:19 AM changed by boredzo

  • description changed.

changing the mock-up URL to a link.

02/21/2006 04:18:00 AM changed by boredzo

  • description changed.

fie. Trac still was trying to show that as an image.

02/24/2006 03:15:15 PM changed by catfish_man

  • owner deleted.
  • status changed from assigned to new.

Unassigning, since cbarrett is taking a break.

03/05/2006 02:20:25 AM changed by durin42

Comment: Should we store group chats separate somehow? right now it's hard to tell that "durintest" was a group chat room on AIM. Plus, what happens when you join the durin42 group chat room on AIM? Right now, I think the answer is armageddon...

03/05/2006 02:33:11 AM changed by cbarrett

  • owner set to cbarrett.

I guess since I actively worked on this in the last day, I"ll re-assign... just like me to be wishy washy :P

Group chats are gonna be stored separately. I'll work on getting the spec at least partially prepared for that.

03/21/2006 11:50:10 PM changed by freakman

Should the new log viewer have a calendar control?

03/26/2006 04:52:57 AM changed by evands

(In [15594]) 60% or so of an improved log viewer with iTunes-browser style tables at the top. I'm committing it now mostly to get feedback on its direction and the improvements thus far.

I rejected the Mail.app-search-style top type (from, to, content, etc.) bar because it felt too restricting, but I'm open to suggestions.

Note that the (Date) column is not implemented. Rather than listing every possible date, I picture it having "Today", "Yesterday", "This Week", "This Month", and so on.

In the process, much of the old log viewer moved to AIAbstractLogViewerWindowController, which is really only abstract in the sense that it is a common base class for the two log viewers (10.3 and 10.4) we now support, appropriate since the bottom half of the new one looks like and works like the old one.

Along with this commit we also see a huge speed-up in loading of logs in the old-fashioned, non-searchkit way (which is still used, in a modified form, for an initial 'search' of no criteria so is relevant on 10.4).

Refs #38.

03/27/2006 01:23:44 PM changed by catfish_man

Cool progress and all, but the new UI feels *really* big. It seems like having <50% of the available space devoted to the primary purpose (reading logs) isn't such a great idea.

04/04/2006 03:46:53 PM changed by evands

Yeah, I can see that. Would it help if the Browser area were togglable, like the iTunes Browser on which the UI is modeled?

04/04/2006 04:56:22 PM changed by catfish_man

Yes, that would help. The other reason why the iTunes one is acceptable (I'm not a huge fan of it there either, but it works) is because it's one row of stuff instead of two. Pulling the split view up so the top pane is closed makes the new log viewer a lot cleaner looking.

04/06/2006 08:33:51 AM changed by Lfe

How about displaying the log text in the selected message theme?

04/06/2006 10:19:27 AM changed by anonymous

  • The log viewer needs to be fast for displaying a whole conversation; processing an entire previous conversation in the webkit message style could be slow
  • I personally use the log viewer for copy/paste in many cases because our current webkit copy/paste is pretty bad for spacing and such... we'd need to have that fixed.
  • In general, I feel like a simple view for the logs is better than the more complex current-conversation appearance, but that could just be me.

04/06/2006 10:19:48 AM changed by evands

Ick, that was me in the previous comment.

04/07/2006 12:49:22 PM changed by bassclef

copy/paste isn't always that great from the log viewer. The case that comes up for me a lot is the Sametime/meanwhile case where in our case the user names are huge:

11:05:26 uid=foo, ou=active, ou=employees, ou=people, o=example.com: yes

That's a lot of ID for not very much content. If there was some way to see the alias rather than the user name in the log viewer it would be nice (slight extension of the request far above for having the alias in the contact selector).

04/21/2006 09:45:34 AM changed by cbarrett

  • status changed from new to assigned.

04/27/2006 11:35:13 PM changed by catfish_man

  • milestone changed from Adium X 1.0 to Adium X 1.0 Beta.

05/21/2006 08:36:57 PM changed by smilr@mac.com

Is there any way we could set it up so one can keep an encrypted copy of OTR chat sessions in the new logging system?

I personally prefer that all of my chats be logged as plain text, so the currently proposed fix of disabling the logging of encrypted chats by default, while allowing one to re-enable logging, works for me. However, I can easily imagine wanting to keep a conversation for the future, but not wanting it to be stored as plain-text locally.

05/23/2006 10:04:30 AM changed by evands

(In [16007])

  • Reverted most of [15407], [15475], [15594], and [15602]. Lots of work for a really bad result. Some of the old code is still lying around unused because I'm going to be moving it around and using it in an improved log viewer soon.
  • Improved speed of the old log viewer
  • Fixed our index type to be kSKIndexInverted instead of kSKIndexVector. Inverted indexes are for mapping terms to documents, which we want; vector indexes are for similarity searches, mapping documents to terms. Inverted indexes are faster for term-based searches (which are the only kind we do) and also support boolean and phrase searching in addition to Google-style search queries in 10.4 and up.
  • We now use the Spotlight importer when indexing content. In 10.3, our logs will be read as plaintext by the default SearchKit importer, which is fine since that's the behavior we were manually implementing in the first place. In 10.4 and up, markup will be removed before indexing, and future improvements to our Spotlight importer -- such as supporting parsing of the XML format -- will be automatically utilized.

Refs #38.

05/23/2006 02:28:03 PM changed by evands

(In [16009]) AIMDLogViewerWindowController (whose name is now improper but will do for the time being) now uses the 10.4+ SearchKit methods for fast asynchronous searching. Most of AILogViewerWindowController has been moved (with very minimal modifications) to AIAbstractLogViewerWindowController. The only difference between the two subclasses is now (and hopefully will remain) the precise mechanism by which searching is accomplished.

Check out the insane speed on pure-content searches in 10.4! Summary of speed boosts: proper index style, 10.4+ method usage, improved laziness of AIChatLog. Next up, filtering by one or more contacts, metacontacts, or date ranges, probably with a UI overhaul of the log viewer.

Refs #38.

05/24/2006 09:48:45 AM changed by evands

(In [16016]) Most of a shiny new log viewer UI.

  • Note the support for speedy filtering for multiple-selection of contacts, including while doing content searches :)
  • Once you've signed on, opening the log viewer will show contacts organized by metacontact, an organization upon which you can search, too.

Refs #38

05/24/2006 01:28:25 PM changed by catfish_man

Much much better. Searching still seems to be missing some content for me though. I did a search by content for "the" and got 9 results...

05/27/2006 03:28:04 AM changed by evands

  • description changed.

Struck out completed portions... that's the big ones related to the log viewer :)

06/08/2006 05:24:21 AM changed by sam

- I have a small feature request about the new log viewer : when I click on a contact name, i'd like to be able to see the whole IM history, in case of just one (the selected day) or 0 (if i unselect it)

so can you allow multiple selection or IM sessions ?

it can be useful for printing, but mostly it's more convenient to read and send large logs to somebody (i did it yesterday ... i had to copy and paste about 50 days of IM in a word document ... so not fun ...)

- a small bug in current svn : when i type a few words in the search box (eg : "hello honey") then search will work pretty well, but highlight separate words ... (eg : only hello, or honey, or even none of them, but the problem is that it can highlight one of these two words when they are in separate sentences of the same day log !!! (you can be sure that that log contains the "hello honey" sentence somewhere tho)

i hope you can fix that

thanks :)

06/08/2006 12:22:18 PM changed by evands

I don't understand what "when I click on a contact name, i'd like to be able to see the whole IM history, in case of just one (the selected day) or 0 (if i unselect it)" means.

06/10/2006 12:26:33 PM changed by Sam

Sorry Evan, let me explai it more precisely : When I click on a contact name in the new log viewer, the current behaviour is that it automatically displays the latest chat session with that contact. That's fine like that But i would love to be able to select a lot of different chat sessions at the same time (each chat session will have to be separated by the date of the day, or to display date and hour before hach line in case of just hours.

I'm asking that because now i feel quite limited in the log viewer, as explained before, sometimes it'll be cool to be able to copy and paste, or to print a lot of chat sessiosn at the same time.

I hope you see what i mean now :)

06/10/2006 04:48:28 PM changed by evands

I see -- you're requesting a new feature, not reporting a bug in the new log viewer, since this part of the display behavior is wholly unchanged from the old log viewer.

06/11/2006 07:38:43 AM changed by Sam

Yes, sorry :)

(follow-up: ↓ 58 ) 06/13/2006 11:42:16 AM changed by evands

(In [16224])

  • Multiple logs can now be selected and displayed; date/contact information is shown above each displayed log when multiple logs are selected.
  • Quoted search terms now highlight properly when doing content searches
  • Various performance and buglet fixes

06/13/2006 11:42:38 AM changed by evands

[16224] also adds printing support to the log viewer.

(in reply to: ↑ 56 ) 06/16/2006 03:44:43 AM changed by Sam

WOW thanks a lot that's just amazing :)

one last thing (i promise :-)) : can you make the contact column larger ?

Thanks again :)

(follow-up: ↓ 60 ) 06/16/2006 05:23:12 AM changed by adium

selecting a large number of logs cause adium to crash, everytime (i selected 120 logs with select-all, but actually it crashed too with much less logs too)

i can attach a crash log if you need it (adium crash reporter doesn't launch, but apple crash reporter does)

(in reply to: ↑ 59 ) 06/16/2006 05:26:31 AM changed by tick

Replying to adium:

selecting a large number of logs cause adium to crash, everytime (i selected 120 logs with select-all, but actually it crashed too with much less logs too) i can attach a crash log if you need it (adium crash reporter doesn't launch, but apple crash reporter does)

Is this with svn head or with .89.1 or something else?

06/16/2006 03:50:11 PM changed by catfish_man

Crashlog would be nice. I can reproduce this, but it's weird as heck. I think it has to do with the log viewer using huuuuuge amount of ram, which I *thought* I fixed with the autorelease pool I added, but apparently not.

"No memory available to program: call to vm_allocate failed" <-- eep!

(follow-ups: ↓ 63 ↓ 65 ) 06/17/2006 03:34:57 AM changed by sam

here is it, I hope it will help you

you are right, Adium crashed after using up to 120mb or ram (from 16mb usually) ;)

i'm using SVN (compiled 16/06/06)

http://files.bultez.info/adium/Adium.real.crash.log

(in reply to: ↑ 62 ; follow-up: ↓ 64 ) 06/17/2006 03:39:11 AM changed by cbarrett

Replying to sam:

http://files.bultez.info/adium/Adium.real.crash.log

The bottom crash log in that file is the one we're interested in. I was confused until I realized there were multiple crash logs in that file.

(in reply to: ↑ 63 ) 06/17/2006 03:42:07 AM changed by boredzo

Replying to cbarrett:

Replying to sam:

http://files.bultez.info/adium/Adium.real.crash.log

The bottom crash log in that file is the one we're interested in. I was confused until I realized there were multiple crash logs in that file.

He has edited it.

(in reply to: ↑ 62 ; follow-up: ↓ 66 ) 06/17/2006 03:50:58 AM changed by boredzo

Replying to sam:

you are right, Adium crashed after using up to 120mb or ram (from 16mb usually) ;)

Indeed. That definitely looks like an out-of-memory problem.

Please type this into a Terminal window when Adium begins to eat RAM: heap Adium > heap_adium.txt

It will take a minute or two to do its work (maybe more in the problem case). When it finishes, upload that file (heap_adium.txt) to your website, and comment here with the URL.

(in reply to: ↑ 65 ; follow-ups: ↓ 67 ↓ 71 ) 06/17/2006 04:48:45 AM changed by adium

i just compiled Adium again. (for the record, i just get the code with svn, and then type make in /release)

i selected all my logs (1100), saw the ram usage starting to increase, launched boredzo's command (it was done is a few seconds) then adium ate up to 95mb of ram, but didn't crash !! ;) and the log viewer successfully displayed all the selected logs

the problem still exists, because adium is still using that amount of ram now

anyway, i hope this file will help you :) http://files.bultez.info/adium/heap_adium.txt

(in reply to: ↑ 66 ) 06/17/2006 04:55:53 AM changed by boredzo

Replying to adium:

anyway, i hope this file will help you :) http://files.bultez.info/adium/heap_adium.txt

Unless the problem lies in the non-object allocations, that file isn't saying much that's surprising. You have a lot of logs selected, and there are a lot of logs (and log-related objects) in memory.

I did find it interesting that there were 1750 AIChatLog objects, though.

(follow-up: ↓ 69 ) 06/17/2006 05:01:28 AM changed by sam

it crashed as soon as i quit adium

i tried that a few times more, and sometimes it works, sometimes it crash, sometimes mem usage stay low, sometimes it rises and rises ....

so it's kinda random ...

i'm sorry not being able to help you more, ... i never written a single line of code ...

to boredzo : you're saying that i have a lot of logs in memory, ... do you want me to logout, or restart ?

(in reply to: ↑ 68 ) 06/17/2006 05:07:47 AM changed by boredzo

Replying to sam:

i'm sorry not being able to help you more, ... i never written a single line of code ...

You're helping just fine. We can write the code; we just need to figure out the problem first.

Replying to sam:

to boredzo : you're saying that i have a lot of logs in memory, ... do you want me to logout, or restart ?

No. Quitting Adium is enough to free that memory. We should also free it when logs are deselected; I don't know whether we're currently doing that.

06/17/2006 06:47:06 AM changed by adium

i have the same behaviour here, but adium does not crash. it just hangs (spinning pizza). anything i can do to help?

06/17/2006 06:51:55 AM changed by adium

  • attachment adium_log_viewer_crash_log.txt added.

I just checked out the current svn. with the current svn it crashed instead of spinning pizza.

(in reply to: ↑ 66 ) 06/17/2006 09:24:14 AM changed by catfish_man

Replying to adium:

i just compiled Adium again. (for the record, i just get the code with svn, and then type make in /release) i selected all my logs (1100), saw the ram usage starting to increase, launched boredzo's command (it was done is a few seconds) then adium ate up to 95mb of ram, but didn't crash !! ;) and the log viewer successfully displayed all the selected logs the problem still exists, because adium is still using that amount of ram now anyway, i hope this file will help you :) http://files.bultez.info/adium/heap_adium.txt

hm.... non-object, eh? Sounds like searchkit to me. I wonder if we've got a loop where we're building up searchkit temporary objects (like we were building up temporary html decoder objects earlier), or if it just takes a lot of ram. If the latter... I wonder how we can cap it/avoid it. I'll take a look at the code and see if I can figure out what's going on; I've been focusing on it from a profiling/objectalloc POV so far, and that's been of mixed usefulness.

06/17/2006 01:29:40 PM changed by catfish_man

Well, MallocDebug turns up a bunch of errors... [[[ ... libMallocDebug[Adium-2971]: frame pointer goes from bffee8a0 to bfffe8f0 -- assuming invalid. libMallocDebug[Adium-2971]: frame pointer goes from bffee8a0 to bfffe8f0 -- assuming invalid. libMallocDebug[Adium-2961]: target application trashed bytes after end of malloc buffer; buffer is at 0x18e7dd0, and is of size 16 libMallocDebug[Adium-2961]: Stack start is f009a000 libMallocDebug[Adium-2961]: Stack size is 00080000 libMallocDebug[Adium-2961]: target application trashed bytes after end of malloc buffer; buffer is at 0x5d6ead0, and is of size 335 libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed ... ]]]

06/17/2006 01:30:10 PM changed by catfish_man

Dammit. Using the right formatting chars this time:

Well, MallocDebug? turns up a bunch of errors... ... libMallocDebug[Adium-2971]: frame pointer goes from bffee8a0 to bfffe8f0 -- assuming invalid. libMallocDebug[Adium-2971]: frame pointer goes from bffee8a0 to bfffe8f0 -- assuming invalid. libMallocDebug[Adium-2961]: target application trashed bytes after end of malloc buffer; buffer is at 0x18e7dd0, and is of size 16 libMallocDebug[Adium-2961]: Stack start is f009a000 libMallocDebug[Adium-2961]: Stack size is 00080000 libMallocDebug[Adium-2961]: target application trashed bytes after end of malloc buffer; buffer is at 0x5d6ead0, and is of size 335 libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed libMallocDebug[Adium-2961]: target application recently wrote to freed malloc'd memory at: 0x5d6ec40, suggesting it didn't realize the memory had been freed ...

06/17/2006 01:30:55 PM changed by catfish_man

Bah, that still doesn't look right... :/

06/17/2006 06:10:42 PM changed by catfish_man

ok, it's definitely not running out of heap space or anything like that. I just selected one, then, two, then three, and so on until it crashed... it was around 10-15, which is not enough to cause horrendous memory usage. The stack trace showed it crashing in NSView's visibleRect method, which is BS. What's actually going on is a memory smasher, I think.

06/17/2006 08:22:59 PM changed by evands

(In [16267]) Fixed a memory stomper in -[NSTableView(AITableViewAdditions) arrayOfSelectedItemsUsingSourceArray:] and -[NSOutlineView(AIOutlineViewAdditions) arrayOfSelectedItems]. The latter has been around a long time and is probably responsible for more than a couple unexplained crashes in 0.8x and 1.0svn. The former is responsible for crashes when selecting multiple logs described in #38. Refs #38.

06/18/2006 07:13:54 AM changed by adium

When deleting all logs belonging to a certain contact adium should delete the contacts name in the left column of the log viewer.

06/18/2006 09:13:03 AM changed by sam

you fixed it, thanks :-) I love it now :)

as the new log viewer seems to work pretty well now, let me add some ideas for a future Adium version (after 1.0). Feel free to use some, of not at all ;)

Can you make it look like all the new apps like iTunes, Mail2, NetNewWire ? I find them pretty sleek :)

http://files.bultez.info/adium/nnw.jpg

* the left column, containing contacts, in a light blue color

* the separator line between contacts and the other two parts of the viewer, should be 1px large, black, and allow to resize when dragged

* maybe move the '# or logs' bar from the top to the bottom, and make it look like NNW.

* in that bar, you should display '# of logs (# selected)' and maybe 'from 12 february 2005 to 22 march 2006'

* make sure that each and every contact has an icon (as of today, Gtalk contacts don't have any icon, but it's not specific to log viewer, so i guess it's a non issue)

* the contact column should be larger, and resizing it should redraw instantly the contacts (as of now, it redraws it when we stop resizing it)

* contacts with 0 logs should not be in the contact list, or at least should be deletable

* i prefered when email adress was first, then contact name (it was easier to read)

* i don't think the 'all' contact is useful, because users fill quicktly figure out that we can now select multiple contact and logs

* oh, i just noticed that the 'this week' filter make the week start on sunday. I think you can get that setting from international preferences (in france we start the week on monday)

* selecting a large number of logs still takes time, so it could be great to have a small progression bar on the bottom line

thanks, Sam

(follow-up: ↓ 80 ) 06/18/2006 02:36:43 PM changed by evands

Those are some great ideas, Sam. This ticket has gotten pretty unmanageably large -- tickets are much more useful when they are focused. Could you please submit each of your thoughts as a separate ticket so they can be worked on (and marked as completed) in a piecewise fashion?

I'd like for future discussion of the log viewer to be in a ticket or tickets which isn't this one. The Log Viewer portion of this ticket is now complete. Thanks! :)

(in reply to: ↑ 79 ) 06/18/2006 03:49:13 PM changed by adium

Replying to evands:

Those are some great ideas, Sam. This ticket has gotten pretty unmanageably large -- tickets are much more useful when they are focused. Could you please submit each of your thoughts as a separate ticket so they can be worked on (and marked as completed) in a piecewise fashion? I'd like for future discussion of the log viewer to be in a ticket or tickets which isn't this one. The Log Viewer portion of this ticket is now complete. Thanks! :)

ok that's done :) feel free to modify milestones of course :) i put UI changes to 1.1 and more background stuff for 1.0

06/22/2006 06:57:41 PM changed by evands

  • status changed from assigned to closed.
  • resolution set to invalid.
  • milestone deleted.

I'm going to mark this ticket closed and split it off into sane parts; a single ticket for the two very different tasks of the new log format and the new log viewer makes no sense.

08/30/2006 06:21:28 PM changed by cbarrett

(In [17535]) Message history now uses the new log format. Still has some minor kinks to be worked out, but works for the most part. I'm leaving the debug logs in for anyone who wants to try and debug it. They should probably be removed before a release. Refs #38. Fixes #4295. Also, in the process, I fixed #4412, so blank logs are no longer created. Spiffy, huh?

08/25/2008 11:27:58 AM changed by Axisama

A reminder for the tickert #522, which wasn't done even if It could interest some of us.

Indeed, some like me love to sort by log size so people which you talk often are in top of contact list.

I would prefer to show it as a built-in feature instead of usin' plugins.