Tag: Swift

Experimental File Transfer support hits Swift

It's been a busy summer for Tobias Markmann, one of the XMPP Standards Foundation’s 2011 Google Summer of Code students. He has been working on implementing File Transfer support for Swift, using the fresh Jingle XMPP protocols. I'm happy to announce that we integrated Tobias’s work as an experimental feature into the main Swift branch, where it will be further developed and brushed off before being enabled in our nightly builds and releases.

Continue reading →

Posted in Swift | Tagged File Transfer, Google Summer Of Code, Jabber, Jingle, Swift, and XMPP

Summer of Swift Code 2011

Yesterday, Google announced the 1116 students that were accepted for this year's edition of the Google Summer of Code, 5 of which will be working with the XMPP Standards Foundation. We're very happy to welcome both Tobias Markmann and Vlad Voicu, who will be working full-time on Swift this summer, implementing file transfer support and conversation history respectively. We have to mention that these weren't the only proposals we received. Most of the proposals we received this year were of good quality: we suspect that the teaser tasks we put up for potential students made it possible for both the students and us to get an idea up front of what should be expected. However, based on experience from previous years, we decided we should only accept 2 students, to ensure that we could give our full attention to making all projects successful (including fast integration into a Swift release). We're convinced that both Vlad and Tobias will live up to their expectations, and implement some of the most requested Swift features today!
Posted in Swift | Tagged Conversation History, File Transfer, Google Summer Of Code, Jabber, Swift, and XMPP

Swift 1.0 Released

Finally! After 2 years of development, we're happy to finally announce the first full release of the Swift IM client! In this first release, we have focused on building a user-friendly messaging client, with all the basic features you would typically need for having real-time conversations. In future versions (which are already in the works as we speak), we will be extending Swift with more features. We would like to thank Isode for sponsoring time for Kevin to work on Swift, Flosoft for providing our download infrastructure, Dave Cridland for the logo, all the translators who helped us make Swift available in different languages, all the code contributors, all of whom should be listed on our About page, and all our beta testers for giving us feedback and bugreports throughout the whole development period!
Posted in Swift | Tagged Jabber, Swift, and XMPP

Swift Translators Wanted

Now that the final Swift beta has been released, it's time to start translating Swift in as many languages as possible! Thanks to a handful of early translators, we've been able to iron out (hopefully) the last translation issues from beta9, and we have Dutch, Polish, French, German, Norwegian, Czech, Slovak, Spanish, and Catalan translations in the works. So, now, we're calling out to you: if your language is not in the list, and you feel you could do a good job translating the Swift user interface (containing about 250 strings), please drop by the Swift room swift@rooms.swift.im, and let us know!
Posted in Swift | Tagged I18n, Jabber, Swift, and XMPP

XMPP Scripting with Sluift

Did you ever want to find out what XMPP clients people in your contact list are using? Do you want to migrate your contact list from one server to another, but don’t want to provide your password to some on-line service to do that? Do you have some XMPP-related task you quickly want to write a script for, but don’t want to deal with complex asynchronous APIs? Well, Sluift may be just the thing you are looking for! Sluift is a Lua-based script layer on top of the Swiften XMPP library. It provides a simple API to do common XMPP tasks, either interactively (through an XMPP console), or by running a script in batch mode. In this post, we’ll go through some examples of what you can already do with Sluift today.

Continue reading →

Posted in Programming and Swift | Tagged Jabber, Lua, Sluift, Swift, Swiften, and XMPP

Swiften on Lambdas

One of the cool new features of the upcoming C++ (0x) standard is support for lambda expressions, providing functional-style inline function declarations. After seeing Herb Sutter’s PDC 2010 webcast on lambdas, I wanted to try this out on Swiften, the XMPP library behind Swift. I adapted the introductory EchoBot example from XMPP: The Definitive Guide, and ported it from Python to a C++ application using Swiften. The result is surprisingly clean.

Continue reading →

Posted in Programming and Swift | Tagged C++, C++0x, CLang, GCC, Herb Sutter, Jabber, Lambdas, Swift, Swiften, Visual Studio, and XMPP

“Swiften Developer’s Guide” available

People have recently been showing interest in using Swiften, Swift’s C++ XMPP library, for building their own XMPP applications. We therefore created the Swiften Developer’s Guide with a tutorial-style guide to Swiften (including examples), and made it available together with the Swiften API Documentation. If you’re interested in creating an XMPP client or component, be sure to give these documents (and some of the examples from the Swift code repository) a look!
Posted in Swift | Tagged C++, Jabber, Swift, Swiften, and XMPP

Swift 1.0-beta8 released

We just released the next Swift beta, beta8. The major focus of this release was fix some crashes, problems, and papercuts from the previous beta(s). For a full list of changes, see the Swift 1.0beta8 release page. The list of outstanding cases is getting shorter and shorter, so this will hopefully be one of the last few betas before 1.0. This also means now is the perfect time to give Swift a shot, and give us your feedback!
Posted in Swift | Tagged Jabber, Swift, and XMPP

Eclipse CPPUnit Error Parser

I've recently been experimenting with using Eclipse CDT as IDE for Swift development. One of the handy things is that Eclipse CDT has support for parsing compiler error messages, allowing you to quickly navigate to the failing source code line by simply clicking on the error message. Although Eclipse CDT supports all the compilers we use for Swift out of the box, I was still missing the easy navigation for fixing failing CPPUnit tests. Since the error parser (just like almost everything else from Eclipse) is extensible, I wrote a small plugin for parsing CPPUnit error messages.

Continue reading →

Posted in Programming and Software | Tagged CDT, CppUnit, Eclipse, and Swift

Swift 1.0-beta6 released

It's been a while since we released the previous Swift beta. As a result, the sixth beta is quite packed with bugfixes, speedups, and general improvements. The list of changes is too long to describe here, so head on over to http://swift.im/releases/swift-1.0beta6/ for details and downloads of the last Swift beta, and let us know what you think in the MUC room – swift@rooms.swift.im.
Posted in Swift | Tagged Jabber, Swift, and XMPP

Swift 1.0beta2 released

It’s only been 2 weeks since we released the first public beta of Swift, and we already got a lot of feedback. Thanks to all of you who joined the MUC and sent us their comments and bugreports! We decided that, before moving on to implementing the remaining missing features, we would first fix a bunch of small-yet-annoying ‘papercut’ bugs, and quickly release a new beta. This way, we hope to make the Swift experience a bit smoother for our valiant testers while we are busy implementing some of the larger changes. So, if you’re running Swift on a frequent basis, or would like to jump into our beta feedback cycle, head on over to the Swift 1.0beta2 page, and download the latest beta (we even have Ubuntu packages now!) We are aiming to put out new betas on a regular basis, so stay tuned for more Swift goodness!
Posted in Swift | Tagged Jabber, Swift, and XMPP

(Still) Hard at Work

Several people have been asking us about the status of Swift lately. Rest assured, we’ve been hard at work in the past months, despite all the job changes, house movings, and marriages slowing us down sometimes. And we have proof: below is a Gource visualization of the Swift Git repository from the past months (and we definitely wouldn’t fake that).  Swift is getting very near to the beta stage, so stay tuned for more updates!

Continue reading →

Posted in Swift | Tagged Git, Gource, Jabber, Swift, and XMPP

Beautiful (XMPP) Testing

O’Reilly recently released the book Beautiful Testing, a collection of essays about testing and QA in general. As I mentioned earlier, I wrote an article in that book on (unit) testing XMPP protocols, using Swift as a motivating example. Since the book’s scope may (oddly enough) not always be as interesting for developers in general, I released my article under a Creative Commons Attribution license (thanks to the good folks from O’Reilly for encouraging us to do this), which you can find here (or directly from my Git repository). The original excerpt from the book (including the index, list of biographies, and all the fancy artwork) is also available for download under the same license. I of course encourage you to buy either the PDF or dead tree version of the book, as all the proceeds of the book go to charity.
Posted in Swift and Writing | Tagged Books, Jabber, Nothing But Nets, O’Reilly, Swift, Unit Testing, and XMPP

“Beautiful Testing” XMPP Chapter

Adam Goucher and Tim Riley (Director of QA at Mozilla) announced a few months ago that they are putting together a Beautiful Testing book for O’Reilly. I took the opportunity to write a chapter about testing in the context of XMPP (more specifically, about testing protocol implementations in Swift), and just submitted the final draft for technical review. The book is expected to be released this August.

Continue reading →

Posted in Swift and Writing | Tagged Books, C++, Jabber, Nothing But Nets, O’Reilly, Swift, Unit Testing, and XMPP

Swift Messaging

I’m excited to announce a new player in the Jabber/XMPP game: Swift. Shortly after finishing the XMPP book, I started working on Swift, a pragmatic, cross-platform, user-friendly IM client. Together with Kevin Smith, we are building this project from the ground up, driving its development using agile methodologies. Underneath the IM client, we are working on an extensible and robust XMPP library, written in C++. Until we launch the project and its website, you can subscribe to the Swift blog and identi.ca group to stay up to date with the latest news and developments around the project. Thanks to Dave Cridland for lending us his graphical capabilities and drawing us a pretty logo.
Posted in Swift | Tagged IM, Jabber, Swift, and XMPP