The Elegant Chaos Blog
News, thoughts, and other ramblings from the world of Elegant Chaos.

December 18, 2010

I’m pleased to announce the release of Neu 1.0.2.

This update contains a number of small changes:

  • Neu now handles the .neulicense file type. Double-clicking on a license file will automatically launch Neu and register the license.
  • Neu now respects symbolic links in the path to the Templates folder, and for individual templates.
  • Added Quit button to “Presence” preference when in “Stealth” mode, since the normal Quit menu item is unavailable.
  • Added tooltips to the preferences panels. Added application name to preference window title.
  • Window changes: added fades, increased the default size, made resizable,changed the buttons to a white-text-on-black-background style to match the windows.
  • Updated sparkle and release notes URLs.
  • Fixed old reference to Replicator in the Updating preferences panel.
  • Updated the in-application Help to reflect the current state of the website.
  • Changed the default Pages template to an iWork ‘08 version, and added a Numbers template (note that this will not affect you unless you throw away your existing templates folder, since these default templates are only used when Neu can’t find a templates folder).
  • Fixed a bug in the build process which was bloating the size of the application.
Read more...

December 12, 2010

I’ve added a page to the Elegant Chaos website which lists the latest available beta versions of our software.

I’d like to avoid having people accidentally download betas without realising that they are getting untested software, so the main product pages will always link to the latest release version.

Which is why, if you’re the adventurous sort, you may want to keep an eye on the beta versions page.

Read more...

December 08, 2010

I have a new version of Neu in testing, with a number of minor tweaks and bug fixes:

  • Fixed old reference to Replicator in the Updating preferences panel.
  • Neu now handles the .neulicense file type. Double-clicking on a license file will automatically launch Neu and register the license.
  • Updated the in-application Help to reflect the current state of the website.
  • Template selection windows now fade in/out.
  • Neu now respects symbolic links in the path to the Templates folder, and for individual templates.
  • Changed the default Pages template to an iWork ‘08 version, and added a Numbers template (note that this will not affect you unless you throw away your existing templates folder, since these default templates are only used when Neu can’t find a templates folder).
  • Fixed a bug in the build process which was bloating the size of the application.

It isn’t available via the in-application update mechanism, because I don’t want to dump beta code onto people who’ve paid for the application, but if you’d like to give the beta a spin, you can find it here.

Please let me know if you discover any problems!

Read more...

This is a bit of a technical one… you have been warned…

I’ve got some internal Objective-C frameworks, and they have some unit tests.

I’ve have targets set up for both SenTestingKit and GHUnit, because I like to have the choice of which one to run (I use SenTestingKit from continuous integration scripts, and GHUnit when I want to run the tests manually).

I recently came across a problem when I wanted to test one of my frameworks which uses another one of my frameworks, using SenTestingKit.

The problem is that SenTestingKit builds your tests into a bundle, then runs another application to load that bundle and execute it. This means that, by default, the application that is running your tests doesn’t know where to find any frameworks that your tests depend on.

There are probably a few ways of solving this, but the one I came up with was this:

First, add a copy files phase to your target, and make it copy any dependent frameworks into Contents/Frameworks/ inside the octest bundle that you’re making.

This gives you a known location containing a copy of any frameworks that you’ll need, but it doesn’t automatically tell the unit test running application to look there.

Second, edit the run script which actually invokes the unit test running app.

By default this script looks like this:

    # Run the unit tests in this test bundle.
    "${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"

The trick is to add our plugin’s Frameworks folder to the search path for frameworks, before running the tool:

    # Add the unit test plugin's Frameworks/ path to the search paths for dynamic libraries
    export DYLD_FRAMEWORK_PATH="${CONFIGURATION_BUILD_DIR}/${FULL_PRODUCT_NAME}/Contents/Frameworks:$DYLD_FRAMEWORK_PATH"

    # Run the unit tests in this test bundle.
    "${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"

Bingo - the unit test app now finds the dependent frameworks and runs the tests ok.

Read more...

November 25, 2010

Neu 1.0 is now officially out of beta and released.

Neu is a simple application that makes it easier to create new documents in the Finder, without you having to open an application first. You can find out more here.

Although it’s a relatively small product, Neu represents a bit of a landmark for me as it’s the first piece of commercial software that I’ve released since giving up the “day job” and returning to life as an independent developer. As such it was a deliberately small project that was at least partially intended as a way for me to get up to speed with various technologies such as the Sparkle update framework and integration with the FastSpring online store. It’s also had to take a back seat for quite a while as I’ve been distracted with some other projects.

That said, Neu is a real tool that I wanted for my own use, and hopefully it will prove to be of some use to others.

So what’s next?

For Neu, I’ve had a couple of reports of minor cosmetic bugs, so I’ll work on a 1.0.1 release which should follow fairly quickly. After that, I’ve got a number of features that I’d like to fit into a 1.1 version, including support for more complicated templates, and possibly some smart detection of the “best” place to create new files when you aren’t working in the Finder. I’m also planning on trying to do a Mac Application Store edition of Neu - it’s possible that that will result in some changes to the application, which will also find their way back to the version I’m publishing myself.

Other than Neu, I’ve also got quite a few Mac and iOS applications in development, at various stages of completion! I’ll post some more news here as they get nearer to seeing the light of day. Currently I’m working on three things Twitter related (one on the Mac, two on iOS), but I’ve also got all sorts of other ideas. If there’s something that you want to see done though, feel free to send me your ideas too (although bear in mind that if you do, there’s every chance that I’ll run off with them and attempt to make money!).

Read more...