[Citadel Development] (no subject)
>it seems as if the new bbsview fails to mark everything read? >behaves a little funny to me over here. Same as before. Messages are marked as read when you Goto out of the room.
[Citadel Development] Re: Citadel commit log: revision 8275
Fair enough. Is it portable?
[Citadel Development] Re: Citadel commit log: revision 8275
>* use mmap to read the download file for output; this way we don't need to >copy it into memory first and can let the kernel do >this job Does mmap() read the whole file into memory at the kernel level? Or does it merely provide userspace with the illusion that this has happened? Obviously if there are big files out there we don't want to load the whole file image into main memory...
[Citadel Development] (no subject)
davew: yes, it's been running very nicely. I think you got it this time. We will continue to observe its operation for a while.
[Citadel Development] (no subject)
It's about time. So we do have to figure out what code we have in our framework that exists solely to support obsolete browsers. That'll be the challenge. (Matt? Thierry? Anyone know for sure?)
[Citadel Development] Re: Citadel commit log: revision 8268
I would say that it should be decoded by libcitadel when the vcard is deserialized into our in-memory data structure.
[Citadel Development] Re: Citadel commit log: revision 8262
Not a problem, let me know when you're ready. And don't worry, it won't saturate a 2M link because most of the spam is for accounts that don't exist (actually, all of it, since I'm not actually running that company, but I did activate a couple of addresses such as info@ so a little of the mail would come through).
[Citadel Development] Re: Citadel commit log: revision 8262
davew: if you want, I can point this mega-spam domain's MX record at the server of your choice so you can work on the thread issue. It usually only takes a little while to make the problem come up.
[Citadel Development] Re: Citadel commit log: revision 8262
Sorry dude: 2010/01/30 12:48:31.967497 Closing socket 60 2010/01/30 12:48:31.967520 Done with RemoveContext() 2010/01/30 12:48:32.002170 Interrupted CtdlThreadSelect. 2010/01/30 12:48:32.002234 Thread "Worker Thread" caught signal 1. 2010/01/30 12:48:32.002284 Thread "Worker Thread" (0xa8ec4b90) exited. 2010/01/30 12:48:32.002691 Garbage Collection for thread "Worker Thread" (0xa8dc3b90). 2010/01/30 12:48:32.002729 Garbage Collection for thread "Worker Thread" (0xa8ec4b90). 2010/01/30 12:48:32.384415 New client socket 34 2010/01/30 12:48:32.468350 [3896] SMTP server: HELO pc-67-97-241-201.cm.vtr.net 2010/01/30 12:48:32.486225 New client socket 54 2010/01/30 12:48:32.489859 New client socket 57 2010/01/30 12:48:32.510098 [3898] Session SMTP data is null. WTF? We will crash now. 2010/01/30 12:48:32.510539 [3898] SMTP server: �z Segmentation fault (core dumped) #0 smtp_command_loop () at modules/smtp/serv_smtp.c:876 876 if (sSMTP->command_state == smtp_user) { (gdb) bt #0 smtp_command_loop () at modules/smtp/serv_smtp.c:876 #1 0x08058a7f in worker_thread (arg=0x0) at sysdep.c:1020 #2 0x080776df in ctdl_internal_thread_func (arg=0x9f328c8) at threads.c:839 #3 0xb7d2750f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0 #4 0xb79e07ee in clone () from /lib/tls/i686/cmov/libc.so.6
[Citadel Development] Re: Citadel commit log: revision 8262
I have the ability to slam a server with connections, through the use of an abandoned domain name that gets a TON of nonstop spam. I'll give it a try.
[Citadel Development] (no subject)
Now would be the time to start playing, yes ... but do keep in mind that Uncensored is running on HEAD, so don't check in anything that's known to be outright broken.
[Citadel Development] Re: Revision 8429 SMTP WTF bug
Last coupla lines of logs... 2010/01/21 2:18:20.198476 New client socket 33 2010/01/21 2:18:20.228583 [36312] SMTP server: QUIT 2010/01/21 2:18:20.229020 Purging session 36312 2010/01/21 2:18:20.229089 RemoveContext() session 36312 2010/01/21 2:18:20.229116 [36312] xmpp_queue_event(1, ) 2010/01/21 2:18:20.229174 [36312] Performing SMTP cleanup hook 2010/01/21 2:18:20.229203 [36312] Session ended. 2010/01/21 2:18:20.229224 Closing socket 44 2010/01/21 2:18:20.229248 Done with RemoveContext() 2010/01/21 2:18:20.259755 New client socket 39 2010/01/21 2:18:20.311786 [36316] Session SMTP data is null. WTF? We will crash now. 2010/01/21 2:18:20.312182 [36316] SMTP server: �z 2010/01/21 2:18:20.316010 [36306] SMTP server: MAIL FROM: SIZE=2568 Segmentation fault (core dumped) And a backtrace... gdb ./citserver core.21084 Core was generated by `./citserver -x9'. Program terminated with signal 11, Segmentation fault. #0 smtp_command_loop () at modules/smtp/serv_smtp.c:871 871 if (sSMTP->command_state == smtp_user) { #0 smtp_command_loop () at modules/smtp/serv_smtp.c:871 #1 0x08058a5f in worker_thread (arg=0x0) at sysdep.c:1020 #2 0x080776af in ctdl_internal_thread_func (arg=0x8487ad0) at threads.c:839 #3 0xb7eed50f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0 #4 0xb7ba67ee in clone () from /lib/tls/i686/cmov/libc.so.6
[Citadel Development] Re: Revision 8429 SMTP WTF bug
I'm showing it on a 32 bit machine. Do you want a core dump and log sample?
[Citadel Development] Re: Citadel commit log: revision 8249
For what it's worth, this issue is getting exposed by a test server that is constantly getting hammered with an extremely large volume of spam, so there is a large incoming SMTP load.
[Citadel Development] Citadel commit log: revision 8242
Ok, so that explains why the mailing list digests were broken. I've gone through serv_network.c and fixed all the places where the return value from fread() was handled as if it was the number of bytes read instead of the number of blocks read. Was this type of change made anywhere other than serv_network.c ??
[Citadel Development] (no subject)
Huzzah indeed. Considering that it would fail 100% of the time, I'm certain that it wasn't tested. And y'all know how I feel about checking in code without TESTING IT!!!
[Citadel Development] Re: Citadel commit log: revision 8226
r8201 *completely* broke the networker.
[Citadel Development] (no subject)
>ups, that was moved to aide/edituser/select > >i'll fix it. Ok, the screen appears now, but the user list in it is empty.
[Citadel Development] (no subject)
The "Add, change, delete user accounts" link in WebCit is broken. It displays an error page "didn't find Template [edituser_select] 15 15". Can this be fixed easily ... and how many more of these errors might be lurking?
[Citadel Development] Re: Citadel commit log: revision 8211
>Fix race condition that caused segfaults in imap and xmpp as seen on >uncensored. Ok, I'm gonna put that into production.
[Citadel Development] Citadel commit log: revision 8209
davew: any reason for this? If we have libgc support at all it's probably more sensible to manually activate it...
[Citadel Development] Re: Citadel commit log: revision 8182
Give it a try. I think it's pretty nice!
[Citadel Development] Re: Citadel commit log: revision 8181
Pushing an update out to Easy Install now. (I will continue to do this at any time during the stable-77x series, under the assumption that everything committed to that branch is indeed stable.)
[Citadel Development] Re: Patch: fix groupdav_delete
Cool. Thank you.
[Citadel Development] (no subject)
I guess private locales are legal, but I don't see the point.
[Citadel Development] Re: Citadel commit log: revision 8156
Is that the whole change?
[Citadel Development] Re: Citadel commit log: revision 8154
r8154 fixes the Slashdot feed (which is really a disgusting mess of xml that should be taken out back and shot)
[Citadel Development] (no subject)
>at least it should send an aide message in that case? If the disk is full, the database isn't going to get written either. Actually, this shows how good Berkeley DB is. Perhaps some records didn't get written, but the database did not get corrupted. If the disk wasn't full, perhaps we would even have the log records to prove it. :)
[Citadel Development] Re: Problems with SVN
>plus one usual connection to uncensored with -M to your general >uncensored account. When you set it up in .ssh/config, you don't have to use -M. The first session automatically becomes the master. Using -M and -S specifies the location of the session socket manually.
[Citadel Development] (no subject)
Well folks, I think I finally figured out the "disappearing netconfigs" issue. It happens when you run out of disk space. That happened to me a couple of days ago. All gone. :(
[Citadel Development] (no subject)
I guess you can email me the details if there's a security problem. If it's really something that can't be fixed in a compatible way, then we'll change the command name. Old clients will fall back to unencrypted connections.
[Citadel Development] (no subject)
>OK, now that I've been out of this for so long, where are the svn repos >at? svn+ssh://er...@uncensored.citadel.org/appl/svn/
[Citadel Development] Re: Citadel commit log: revision 8139
>If a message is received and the message saved to disk but TDAP runs before >the msg pointers are saved in any room then is it possible for the message to >be purged by TDAP? I don't fully understand how TDAP decides to delete the >message yet. TDAP purges a message when its reference count reaches zero. Dig dis: * Whenever a message is saved to a room, or removed from a room, we write a record to refcount_adjustments.dat indicating a +1 or -1 delta. * TDAP purges users and rooms first, which, as always, writes more of those deltas * The last thing TDAP does is to read and flush refcount_adjustments.dat to the database, updating the message's metadata. It is at this time that we delete any messages whose reference count has reached zero. I hope that clears things up.
[Citadel Development] Re: Patch: fix unread msgs status in webcit iconbar/tree room view
>ok, done; I hope no more old messages make it over? ;-) Yeah, I don't know what happened there. Should we put this code in stable too?
[Citadel Development] Re: 7.70 release
Easy Install has been updated to stable-77x. Tarballs to follow, after we let a few people act as "guinea pigs" :) I wonder if I should strip the new bbsview code out of stable-77x, since it's not going to get used anyway?
[Citadel Development] Re: Citadel commit log: revision 8139
Sounds very cool, but is this going to be one of those things that only davew understands and therefore becomes difficult to maintain?
[Citadel Development] 7.70 release
Yes, we should continue to make use of release branches. I just don't want them to live *too* long. We'll keep stable-77x around for backports of bug fixes if that's the release that makes it into Debian stable, of course. I think what I'm trying to say here is that we should never let svn head get "very" unstable. We did that last year and by the time we got it finished, there were so many bugs in it that we didn't catch in our own testing, that it became quite a setback to get it stable again.
[Citadel Development] 7.70 release
Uncensored is now running on the stable-77x branch. Assuming everything still looks good tomorrow morning, I will push this branch out to Easy Install and build some tarballs too. I don't want this to be a long-lived branch for anything other than Debian stable. The last time we lived too long with an unstable head, we had all sorts of poorly tested code still in place when head became the new stable. I'll be working on the new bbs view. Is the vCard edit bug definitely fixed now?
[Citadel Development] (no subject)
>the one with the admin editing a users vcard, and getting the mail >for that user afterwards. I'm hoping I'll have a chance to look at this soon, but in case anyone else looks at it first -- this is VERY LIKELY to be a WebCit problem, not a Citadel server problem. It's probably saving the modified vCard in the Aide's own "My Citadel Config" room instead of the target user's "My Citadel Config" room.
[Citadel Development] (no subject)
Hey everyone, Just wanted to mention that I'm sorry I haven't been immersed in Citadel development over the last couple of weeks. I'm currently facing the double whammy of both being overwhelmingly busy at work *and* suddenly dealing with some personal issues (read elsewhere on Uncensored for that). I'll jump back in with both feet soon, I promise.
[Citadel Development] (no subject)
>would it be reasonable to output the number of messages in the smtp >outbout queue via the mrtg command? I don't see why not. MRTG uses a very simple data format.
[Citadel Development] (no subject)
CommonJS effort sets _javascript_ on path for world domination CommonJS is a grassroots campaign to quickly produce standards and a standard library for _javascript_. Our man on the inside reports on JSConf Europe, where the effort to produce interoperable _javascript_ embeddings was evident. By Kris Kowal | Last updated December 1, 2009 6:19 AM This has been a big year for _javascript_. New, fast engines have tested their legs. Libraries have matured. With the ECMAScript 5 draft proposal, the language is growing. However, the language remains largely in exile, to only be used in Web browsers. This year has marked a resurgence of efforts to make _javascript_ useful outside the browser. This was patently obvious at this year's first European _javascript_ conference, jsconf.eu. There have been a variety of _javascript_ platforms for programming outside the browser since 1996, starting with Netscape's server-side offerings. A system called Helma (best known in Austria) has been around almost as long. In 2007, AppJet provided a service (now discontinued) for creating and hosting server-side _javascript_ applications. Aptana offers an IDE for front-to-back _javascript_ Web applications called Jaxer. Through each generation of Web development, _javascript_ did not measure up against Perl, PHP, Python, Ruby, Java, or other alternatives for general-purpose programming. Several things have changed. The creation, proliferation, and discovery of _javascript_-driven HTTP requests gave rise to highly interactive websites and applications. This drove the need for faster _javascript_ engines, which have since become available to every serious denizen of the Web and most of their unsuspecting extended family. Furthermore, these highly-interactive applications usually require significant programming both on the client and the server, much of which now overlaps. Particularly, the technique of Progressive Enhancement often requires a feature to be implemented both on the server—for initial rendering and the baseline user-experience—and on the client, for an enhanced experience. _javascript_ has a couple more things going for it. _javascript_ is the only programming language that has ever shipped on every consumer computer, and it has done so for the last 10 years. In these post-QBasic times, HTML, CSS, and _javascript_ have become for every ungainly, bespectacled troglodyte the gateway from social exile to deeper social exile. More noteworthy is that a growing number of graphic designers who would never confess that they knew how to program will readily hack with jQuery. There are a lot of _javascript_ programmers. Also, despite its deplorable shortcomings, _javascript_ is cool and people like it. So, what is holding _javascript_ back from world domination? _javascript_ has no module system. To compose _javascript_ scripts, they must be either managed in HTML, concatenated, injected, or manually fetched and evaluated. There is no native facility for scope isolation or dependency management. _javascript_ has no standard library. It has a browser API, dates, and math, but no file system API, much less an IO stream API or primordial types for binary data. _javascript_ has no standard interfaces for things like Web servers or databases. _javascript_ has no package management system that manages dependencies and automatically installs them, except JSAN (not to be confused with JSON), which falls short for scope isolation. CommonJS (née ServerJS) is an initiative that began in January with a post by Kevin Dangoor to his blog and the founding of a mailing list. In his blog, Kevin outlined the above problems and called for server-side _javascript_ aficionados to band together, write some specs, and support interoperability on their respective platforms. "[This] is not a technical problem," he wrote. "It's a matter of people getting together and making a decision to step forward and start building up something bigger and cooler together." The call was answered. One week later, with 224 members, and 653 messages posted, we knew Kevin had struck a nerve. It probably helped that Kevin was already known for creating the Python Turbo Gears framework, Paver, and is presently working on Mozilla's Bespin. The people behind Helma, Hannes Wallnofer and Chris Zumbrunn, showed up. Kris Zyp, of JSON extension fame, showed up with his _javascript_ persistent-object store project, Persevere. Ondrej Zara brought v8cgi to the drawing board. Ihab Awad brought Google's Caja. Wes Garland brought a Mozilla SpiderMonkey-based implementation to the table. One month later, we had converged on a specification for module systems and interoperable modules. Now, there are over a dozen compliant implementations of CommonJS module loaders, and hundreds of compliant modules. CommonJS is a growing collection of standards, including Modules Binary strings and buffers Charset encodings Binary, buffered, and textual input and output (io) streams System pro
[Citadel Development] (no subject)
I'd say that's a feature, not a bug. And yes, it should do that, as long as the feed provider is using the same uuid's for both formats. Already seen is already seen. I think that's great, because it means you can switch feed formats without seeing duplicates. If you want to run tests, go find the place where EUID's are generated, and prepend a different string for an Atom feed. But, please don't check that code in. Dupe-zapping agnostic of feed format is a nice feature.
[Citadel Development] release schedule
Yes, we definitely need to get something out soon.
[Citadel Development] Re: Citadel commit log: revision 8086
Our URL parser handles either one, but the '&' gets interpreted by Tidy as an error.
[Citadel Development] Re: Citadel commit log: revision 8076
Ok, well you can do all the unit tests you want; the real test is whether Kontact still works.
[Citadel Development] Re: Citadel commit log: revision 8076
How unrecognizable is the dav server going to be when I eventually get around to implementing CalDAV?
[Citadel Development] Re: threads, aboit and canceling
Y'all are thinking too much. The original thread manager was deliberately made simple, almost naive. I don't see any need to ever reduce the size of the thread pool, and I certainly don't see any need to gracefully shut down anything other than the database. Quite frankly, I think we should configure the shutdown function to just kill off any threads that don't exit on their own within a few seconds.
[Citadel Development] (no subject)
>If one adds an RSS feed, do we catch that? My impression was, that it >needs a server restart to make it collected? No server restart required, but you still have to wait until the next time it runs. The RSS aggregator and the POP3 aggregator are started in the same way.
[Citadel Development] (no subject)
>in general blocking on shut down for blocked tcp/ip connections (for >example) is another nail to the coffin for creating reliable backup >strategies. Here's a reliable backup strategy: if it doesn't shut down within 10-15 seconds, "kill -9" the server. We have a journaling database and it *will* recover.
[Citadel Development] (no subject)
Ok, I'm going to revert r8058 and we'll see if that fixes it.
[Citadel Development] (no subject)
Can we change it back? And how did you get that nifty view with the rev numbers and names?
[Citadel Development] (no subject)
..and it crashed again. What's going on here? What changed?
[Citadel Development] (no subject)
Ok, Uncensored just crashed because it hit the abort() at threads.c:781. Why is there an abort() in our code?
[Citadel Development] Re: Citadel commit log: revision 8064
>I most probably could use some hints on the duplicate detection, >since it seems as if it doesn't work with the atom of freshmeat.. It's quite simple: if there is a field present, we prepend "rss/" to it, and hit the use table to determine whether it's a duplicate. If there's no guid in the item itself, we make one up using and MD5 hash of the title and link. I'm also noticing now on Uncensored that the links are missing.
[Citadel Development] Citadel commit log: revision 8064
Hmm, was there some sort of change made to the RSS module other than the initial Atom support? Some of our feeds reloaded and posted a lot of duplicates.
[Citadel Development] Citadel commit log: revision 8064
Ok, all done
[Citadel Development] Re: Ugh, what a mess
Hey, nothing ventured nothing gained, right? Enjoy your development platform.
[Citadel Development] Re: Confirmed, svn webcit isn't compiling on 64-bit gentoo
kinetix: if the method used by Easy Install doesn't work for you, then I'm not sure what else you could try. It took a while for me to figure out that method, and it seems to have worked for countless thousands of Easy Install users. I suppose your other option would be to do your test installation in a virtual machine.
[Citadel Development] Re: Inconsistent webcit compile, svn revision 8056
kinetix: Forgive me if I'm late to the game and you've already tried this, but ... Have you looked at the Easy Install script to analyze what it's doing? It contains all of the necessary flags for building a private copy of Citadel with private copies of its libraries.
[Citadel Development] (no subject)
>similar casts that my 64bit box complains about, don't want to mess with your >work in progress :-) It's more or less finished. Tune it if you need to. But of course test test test afterwards.
[Citadel Development] Re: Citadel commit log: revision 8049
>* identify the room we're in by REST; first draft. Ummm ... isn't DAV already REST by its very nature? /groupdav/roomname/...
[Citadel Development] Re: Citadel commit log: revision 8012
hmm ... the logs are full of "SMTP queue run already in progress"
[Citadel Development] Re: Citadel commit log: revision 8012
davew: we've got a problem! Uncensored was updated to svn head on November 11 ... it ran the SMTP outbound queue -- ONCE -- and hasn't run it again since. No mail is going out at all!!
[Citadel Development] Re: Wiki Rooms
>Hmm, I was thinking more about a list of every page in the wiki so I can just >browse it instead of having to search on some random keyword that may or may >not be included in every page. Sure, why not? For search, we could use the very same renderer with a search-reduced list of pages. >As for the Bugzilla Wiki, I don't see why not. But how would someone post a >new bug and get it linked into the list of bugs without directly editing the >list of bugs? I'm not thinking in terms of a public bug tracking system. This would be more of a "punch list" internal to the developers (I think this is what dothebart calls a "Triple M List" but I still don't know what that means) that we'd be careful to edit in a way that makes sense. Bugzilla has too much noise, too many badly researched, badly qualified, or badly described submissions, too many feature requests, and just too much *crap* to be useful ... so much that I seldom even bother with it anymore unless someone brings a particularly nasty bug to my attention. Switching to a different bug tracking system for the public one wouldn't fix that.
[Citadel Development] Re: Wiki Rooms
The full text index is of course active for Wiki rooms. We just have to write some code to display the search results in a sensible way. Fleeb came up with a brilliant idea: we should use Wiki rooms for our internal bug tracking. That way we can annotate stuff as much as we want. And since it's internal just to us, I can ignore Bugzilla even more than I do now. :)
[Citadel Development] Re: Contexts
Re. contexts -- I'm not sure what exactly that would involve, but I definitely would like to get a new release of Citadel finished before we make any "dangerous" changes. Let's start thinking about Citadel 7.70 and what it will take to get it finished. I already hit my target (wiki rooms) ... what did the rest of you want to finish?
[Citadel Development] Re: Posting mail
>If I fill in the subject and then hit the key it posts the message >which is usally empty. Aha! I was wondering why there have been so many blank posts lately. Yes, we have to fix that.
[Citadel Development] Re: participate and greylisting?
Isn't that how greylisting is supposed to work?
[Citadel Development] Re: Citadel commit log: revision 7989
My test server now spits out "Server strangled due to machine load average too high" once per second.
[Citadel Development] Re: Spider Monkey
>Anyway, the only reason I was erring on the side of SpiderMonkey is because >most people seem to have it in their distro already whereas V8 doesn't seem >to be so prevelent yet. The other issue with V8 is that it's a JIT engine, which restricts the OS and CPU choices of the application. I think it would be wise to keep the coupling loose "just in case" we have to make a change ... kind of like we do with our database layer.
[Citadel Development] Re: Spider Monkey
>When in a single thread it doesn't use the NSPR since theres little or >nothing to worry about but in a multithreaded environment it makes use of the >NSPR for just about everything to ensure that locks and atomic operations etc >are obeyed. Even so, I'm still inclined to avoid using it for anything other than the parser. Mozilla's future is unclear and I think it would be a strategically bad move to tie our fortune to theirs. Swapping out a JavaScript parser would be inconvenient. Rewriting the server core because we tied to NSPR and then Mozilla kicked the bucket would be tragic. Or we could look at other languages. I really do like JavaScript, though.
[Citadel Development] Re: Spider Monkey
Oh, here's a good starting point: http://en.wikipedia.org/wiki/List_of_JavaScript_engines
[Citadel Development] Re: Spider Monkey
It uses it for everything, but it's optional for a single-threaded parser? How's that? Are there any other JS parsers out there that we should be looking at? Perhaps the KDE or GNOME projects have their own? I really don't want to add too many external dependencies, and I *really* don't want to rewrite our server core.
[Citadel Development] Re: Citadel commit log: revision 7986
It works!! It works!!!
[Citadel Development] Re: Javascript engine
>Whilst I've been poking about I have noticed some messages (generally in gdb) >that seem to indicate that some library that citserver currently relies on >also requires libnspr. Is there a command that can be run on an executable >and will print out all the library dependencies and all their dependencies? ldd? I wasn't aware of any existing NSPR dependency. Perhaps it's an optional linkage that we don't use?
[Citadel Development] (no subject)
Fixing up the API calls is a good thing. I presume this is being done in preparation for the eventual addition of a scripting engine? I still want to know exactly what SpiderMonkey is using NSPR for. Just thread stuff? I wonder if we can work around that requirement.
[Citadel Development] (no subject)
You guys are doing a lot of sweeping changes here. I hope you're testing extensively. Not just "does it compile" but really putting the system through its paces.
[Citadel Development] Re: Spider Monkey
Well, there's also the V8 JavaScript engine, which is what Chrome uses, and is faster: http://code.google.com/apis/v8/embed.html
[Citadel Development] Re: stable / unstable / release cycles etc
The version numbers are completely arbitrary. We jump by 0.01 for a maintenance release, or to the next multiple of 0.10 if minor features were added, or to the next multiple of 1.00 for a major feature release.
[Citadel Development] Re: Scripting engine
>Right, I'll look into it. Oh ... ok, I wasn't expecting that, but if so, here's where to start: http://www.mozilla.org/js/spidermonkey/ Read their "embedder's guide." It appears to be quite clean. Most of our work would involve writing all of the Citadel API bindings.
[Citadel Development] Re: Scripting engine
>What were you thinking of using? > >Perl, PHP, something else, something home grown? JavaScript. It would definitely be JavaScript. Mozilla's JS engine (I think it's called SpiderMonkey) is designed to be embeddable, and could be bolted onto Citadel with a relatively straightforward set of bindings. I'm also interested in seeing whether Google's "sooper dooper fast fast fast" JS engine is designed for embedding. So far I haven't seen a compelling case for using any other language. Perl is disqualified because its parser isn't really designed for embedding. Yes, it can be done, but its footprint is too unwieldy. Python, Lua, and Scheme are disqualified because I don't like those languages. Java is too bulky, and .NET is too Microsoft. JavaScript is easy to write, has relatively lightweight embeddable parsers available, and we already use this language elsewhere in the Citadel system so it makes sense to continue using it. I'm willing to listen to other suggestions, but the case for JavaScript seems fairly clear.
[Citadel Development] Re: Citadel commit log: revision 7934
Note: wiki rooms are *enabled* in the current build. If we do any new releases before this module is complete we will have to remember to disable them again.
[Citadel Development] (no subject)
Hmm. I wonder if now is the time to take that Big Bloated Step (tm) we've been contemplating for a few years, and bind a scripting engine into the system?
[Citadel Development] (no subject)
At the moment I'm happy just to see you lurking about.
[Citadel Development] Re: NNTP?
>Whats the current status and view of NNTP support? NNTP has always been a "that would be nice to have someday" goal, but as the global use of NNTP declines it seems less important now. I don't think anyone currently has plans to write an NNTP module. I'd be happy to support anyone who wanted to do so, though.
[Citadel Development] (no subject)
davew!! where you been!!!
[Citadel Development] Re: Implicit Rooms for Webcit
>Can the principle be accepted that for web sites it makes sense to have the >room as part of the URL and that more than one room could be open at once? WebCit already supports the "gotofirst=" parameter across the entire system. It would be a fairly reasonable effort to simply add calls to that parameter in any location where it is important for the user to be in the correct room between HTTP transactions. I think REST is overrated, though. eBay works just fine without it.
[Citadel Development] (no subject)
Uncensored was updated to svn head last night and everything seems to be working. I needed to make distclean to get all of the mime type registrations into the build. Can you make a note in the commit log when you check in something that requires rebootstrapping please? Thanks..
[Citadel Development] (no subject)
>will that produce an expected behaviour? Evidently not. Calendar and wiki views are both broken now. Wiki shows plain text with no links; calendar shows nothing at all.
[Citadel Development] (no subject)
Anyone else having trouble getting the mailbox view to render (at all) in the current svn head? I had to backport my OpenID patches to an older rev because the current one wouldn't run properly on Uncensored.
[Citadel Development] (no subject)
Why does "wiki" have to refer to "byzantine markup syntax" ?? I think the nature of a wiki isn't that it requires its maintainers to learn wiki markup, but that it can be maintained and edited from within itself. I suppose we can solicit a few more opinions on this, but so far I'm not convinced.
[Citadel Development] Re: Citadel commit log: revision 7862
Note to developers: the Wiki view isn't actually "disabled" but until we finish it, we're simply disabling (and hiding) the ability to create Wiki rooms. If your system *has* Wiki rooms, they will work. So if you want to experiment with the Wiki view: 1. Edit roomops.c and find the function called is_view_allowed_as_default() 2. Switch VIEW_WIKI to return 1 instead of 0 3. Create your wiki rooms 4. Switch VIEW_WIKI back to 0 if you're someone with commit access. At the moment I am still fixing things that broke during the templatization of webcit. Once we get back to where we were before this project was shelved, we will then add verzion control and history, and at that point we'll consider the Wiki view complete enough for general availability. I would still love to find a diff/patch library, but if none is found we will just make calls to the operating system's diff and patch commands.
[Citadel Development] (no subject)
Working on getting our wiki view into shape tonight. And I realized something. We use locate_message_by_uid() to map a UUID/EUID to a message number ... this function originally came from our GroupDAV implementation, which needs similar functionality, because we use EUID's as the filenames for DAV. We also use them as the page names for our wiki mode. This means that it will be fairly straightforward to build a DAV-enabled Wiki. This will be pretty cool. (We can even make it a pseudo-standard and call it "WikiDAV" and stick it to the idiots who created CalDAV and CardDAV, and we'll have the first implementation. Hahahahaha!) (Yes, I have issues. Feel free to blame my mother.)
[Citadel Development] (no subject)
Check out the /topic on #centos : 12:53 -!- Topic for #centos: DO NOT ASK ABOUT CentOS 5.4 | Yum problems? try: yum clean all | DO NOT PASTE IN HERE (unless asked; 1 line MAX), use http://pastebin.centos.org/ | More on /topic http://centos.org/irc | How to ASK a question: http://tinyurl.com/anel | CentOS mirrors: http://centos.org/mirrors | Backports: http://tinyurl.com/r77l2 | Versions: 5.3, 4.8, 3.9 | We support what we ship. | Poll or Survey: /kick | Don't like the rules? Leave! | No Spoon Feeding Seems we're not the only ones who are constantly getting hit with the same stupid requests :)
[Citadel Development] Re: Citadel commit log: revision 7826
That's good to know, but the double messages to which I was referring aren't the ones originating from mycastlerealm. We were actually tracking down a problem with the new instant message logs, in which we now save entire conversations instead of one instant message at a time. If the recipient of an instant message was logged in on more than one session, the message would appear in the transcript more than once.
[Citadel Development] Re: Citadel commit log: revision 7826
..and that's why the double messages didn't show up during testing: I only had the two users logged in one session each. On most of my desktops I have my Citadel client set up so that if it sees I have a Jabber session open to the server, it throws away any incoming instant messages. The server was still logging them twice though. Anyway, it's fixed. And I think we can release 7.66 early next week. (I'll be away all weekend, otherwise it could be sooner.)
[Citadel Development] Citadel commit log: revision 7821
Funny, I did two commits, one of them got its log message through, the other didn't. Anyway, I re-did the logs because they were looking pretty bad. Now it's in pretty HTML with the usernames in bold and each instant message wrapped up in tags. I also set the message author to the name of whoever started the conversation, and the recipient to the other user (if applicable), instead of just authoring it as "Citadel." I like this feature. It should be very useful. When I told the folks at my office about it they all said that it sounded great and it would definitely be an improvement.
[Citadel Development] Re: Citadel commit log: revision 7806
I don't know. They came back all by themselves!
[Citadel Development] Re: Citadel commit log: revision 7806
Hey look, the commit logs are back. :)