TwitNotes – v. 1.0.7 is out

Just uploaded TwitNotes v. 1.0.7 to the update site. It’s just a small bug fix release that fixes some minor things:

  • Easier searching by responding to pressing the Enter key on the Search tab
  • Make sure all profile images are scaled to 48x48px to handle too large images (looking at you @marybethraven)
  • Attempt to fix wordwrap issue on Ubuntu – still working on that

Thanks to Brian Leonard from IBM for providing a widget descriptor to make installation a lot easier. Simply drag the link to your MyWidgets sidebar plug-in to install.

Thinking about improvements to TwitNotes – do you have any suggestions?


While I’m getting more and more absorbed into the twitterverse I’m also thinking about new ways to extend TwitNotes to make it even more useful in my day-to-day twittering. The search capability I added that hooks into Twitter search is nice but making searches persistent would be nice. By persistent I mean to have the option of having Twitter searches in separate, created-on-the-fly, sidebar plugins for easier reference. It might well be that it makes just as much sense to follow a hashtag as to follow your friends and your timeline. Also having separate access to your replies would be nice.

If you have comments and/or suggestions about improvements please drop me a comment or send me a direct message via Twitter. You can also simply reply to me.

TwitNotes – 1.0.6 released to the update site

I just released TwitNotes 1.0.6 to the update site and if you’re using TwitNotes you should upgrade. The reason for the update isn’t functionality but because twitter.com changed the way the API method for verifying credentials works. For more info see the comments to my post from last night (TwitNotes stopped working today 😦).

To upgrade simply follow the installation guidelines on the TwitNotes page.

TwitNotes stopped working today :-(

Don’t know if twitter.com changed the API or the service is just unreliable but today the service stopped working for me using TwitNotes. I get a “CWPST0071E: The maximum number of login attempts has been exceeded.” and some funny stacktraces in the log of the Notes client. I also see a “java.net.UnknownHostException: twitter.com” message. Using the website works fine though using the same username/password combination.

I will look into it.

TwitNotes – proxy support in v. 1.0.5

So TwitNotes has been out for a while now and I have been discussing various aspects of the application with users. One of the issues that come up time and time again is proxy support. The proxies supported by TwitNotes v. 1.0.5 are the proxies supported by the Notes version you’re using.

One of the issues I discovered is that the proxy configuration in location documents doesn’t seem to work all the time. Sometimes the proxy configuration is only picked up from the “Network Connections” page under Preferences. Another observation is that only the “Manual proxy configuration” option seems to work.

Your miles may vary and please let me know if you have proxy issues.

TwitNotes – 1.0.5 released to the update site

Finally after talking about it for a long time and working on it for even longer I’m happy to announce that I have uploaded TwitNotes v. 1.0.5 to the update site. This release became bigger than first expected and required more work than expected so I’m really happy to get it out there. Before you go ahead and upgrade/install let me tell you a little about what has happened with TwitNotes since the last public release (v. 1.0.3).

The first and most important is that TwitNotes 1.0.5 runs on Notes 8.0.1, 8.0.2 beta 2 and Notes 8.5 public beta 1 (I admit I haven’t tested on Notes 8.0). The second biggie is that I have rewritten the entire HTTP layer to use the HTTP classes built into the Lotus Expeditor framework (more on this is a separate post). This affords me automatic authentication (due to integration with the Accounts API) but also, supposedly, proxy support. I’m not behind a proxy but the feedback from beta testers is positive. The third and final thing that has changed is that TwitNotes now have two tabs – one for normal tweeting and reading tweets (the UI you know) and the second for searching for Twitter posts (using the service formerly known as Summize). See this post for more info (although the UI has changed slightly).

The caveat

As noted above this release took more work than first expected but I’m really happy about the result and as noted I ended up scrapping my own HTTP layer. By doing that I got automatic HTTP authentication and proxy support. The drawback is that TwitNotes now require a patched version of the org.apache.commons.lang plugin if you’re running Notes 8.0.1 or Notes 8.5 public beta 1. This is due to some rather unfortunate packaging of this plug-in from IBM Lotus. For some reason this patch isn’t required on Notes 8.0.2 beta 2.

On the positive side I have a conference call with IBM on Friday. This is to confirm that the patched version of the plug-in that I submitted makes it into the next releases of Notes so this no longer will be an issue once 8.5 and 8.0.2 are released.

For now however it means that you have to patch your Notes install (if running Notes 8.0.1/8.5 public beta 1) before installing TwitNotes 1.0.5. It’s really easy and only takes a minute or two. See below to installation instructions.

If you wonder why patching the plugin is necessary read the separate post (Why patching the org.apache.commons.lang plugin is necessary).

Installation

  1. Close your Notes client
  2. Download the org.apache.commons.lang plugin that’s appropriate from the list below (remember that Notes 8.0.2 beta 2 doesn’t require the patch).
  3. Locate your Notes installation directory and open the framework/rcp/eclipse/plugins directory (e.g. C:Notes8frameworkrcpeclipseplugins).
  4. (optional) Rename the file called org.apache.commons.lang_2.2.0.yyyymmdd.jar from something else.
  5. Copy the jar-file you downloaded to the directory optionally replacing the copy that’s already there.
  6. Install TwitNotes using the update site I have setup (http://update.lekkimworld.com/attentionotes/) or refer to the somewhat outdated installation guidelines for instructions.

Wrap-up

That’s it. I hope you will install TwitNotes and that it will work for you! 🙂 As always comments and suggestions are more than welcome.

Why patching the org.apache.commons.lang plugin is necessary

As part of the core Lotus Expeditor framework a number of Apache Jakarta Commons libraries are supplied as plugins. Unfortunately the org.apache.commons.lang plugin is incorrectly packaged which means that developers cannot reuse code from this library. This goes for all Notes 8 releases so far (Notes 8.0, 8.0.1, 8.0.2 beta 1, 8.0.2 beta 2, 8.5 beta 1).

The problem is that the plugin manifest file (MANIFEST.MF) doesn’t export all the packages of the library but only the root package. The *right* thing would be to export all the packages (e.g. org.apache.commons.lang.exception, org.apache.commons.lang.math etc.)

Luckily the problem is quite easy to fix and it will be in upcoming releases. For now, as a developer, the easy way to solve the problem is to simply modify the manifest by unzipping the plugin, changing the MANIFEST.MF file and rezipping the plugin back up. I have done this on all my machines and will be supplying a patched version of the plugins so you can run TwitNotes 1.0.5 on these releases.

Patching this plug-in wont affect other code in my eyes.

TwitNotes – 1.0.5 is coming and has search.twitter.com capability

In whatever spare time I have I’m working on finishing TwitNotes v. 1.0.5 so it’s ready for Notes 8.5 and Notes 8.0.2. Among other things TwitNotes now supports proxies by using the HTTP libraries built into Notes. It has been somewhat of a challenge but I’m getting there. Last night I thought I was done but no…

After hearing about the Twitter acquisition of Summize and trying it out I had to add this capability to TwitNotes. First I extended the Twitter Java API I’m using to support the JSON API for search.twitter.com, then I extended the TwitNotes plug-in using the extension points already in place (to add a second tab) and voila! Searching in TwitNotes as you can see below.

I hope to get TwitNotes 1.0.5 out this week.

P.S.: If you’re running Notes 8.5 or Notes 8.0.2 and wanna beta test 1.0.5 drop me an e-mail…

TwitNotes – why it doesn’t run in Notes 8.5 beta and why IBM should care

After getting my Eclipse IDE to work with Notes 8.5 I nailed why TwitNotes doesn’t work with Notes 8.5 beta yesterday. For long I was told that the main culprit was me using my own copy of org.apache.commons.httpclient but rather the version of org.apache.commons.lang that IBM supply as part of the platform was the problem.

To get TwitNotes working with Notes 8.5 I had to use both the IBM version of org.apache.commons.lang and org.apache.commons.httpclient and not my own versions. This is fine since they, among other things, provide transparent HTTP proxy support but my code wouldn’t compile using the IBM plugins. The IBM version of the org.apache.commons.lang plugin is wrongly packaged though which was the source of the problems. I actually had to repackage and replace the org.apache.commons.lang plugin supplied by IBM. When I say replace I mean actually deleting the IBM version and replacing it with my patched version.

I really hope that IBM will patch the plug-in before releasing Expeditor 6.2 and Notes 8.5.

Getting technical the problem is the Export-Package directive in the MANIFEST.MF of the org.apache.commons.lang plugin. The IBM-supplied version only export the root-package (org.apache.commons.lang) whereas they should export all the packages. This is a utility library after all.

The issue was easy to solve but unless the patched version makes it into the core platform it wont help me as I will be unable to supply a new version of a platform plugin with the same plugin version. Cross your fingers.

Oh and IBM does care – I have actually been talking to quite a lot of IBM’ers about this and only post here to Google’ize it in case others run into the same issue. Whether the patch makes it into Expeditor 6.2/Notes 8.5 still remains to be seen though…