Archive for the ‘Charles’ Category

Charles v3.5.1 released

Friday, January 1st, 2010

Happy New Year everyone! A small bug fix release for Charles, tidying up two bugs that were discovered in the 3.5 release. These include a fault in the Repeat Advanced tool, where it would fail after a number of requests, and a fault in the Auto Save tool where it wouldn’t save the “Enable on startup” setting.

Download Charles 3.5.1

Charles v3.5 released

Wednesday, December 23rd, 2009

Charles v3.5 is now available, just in time for Christmas. It contains a number of significant new features, enhancements and bug fixes. They’re all detailed on the version history page.

The UI has been improved again and is now looking sensible on Windows 7 (thanks to an update from JGoodies) and better on Mac OS X (thanks to Quaqua, and some work getting rid of duplicate borders). It’s a hard road making Charles look sensible across all of these different platforms, but I hope that the direction is always up!

Users with Microsoft proxies or proxies that require NTLM authentication; you’re in luck! I’ve implemented NTLM authentication into Charles using the JCIFS library, so you can now enter your Domain, Username and Password in the External Proxy Settings dialog and never be bothered by proxy authentication again. Various other external proxy related fixes are also in this release so it should be a good one for you guys.

Users who dare to venture into WireShark or TCP Dump… I too have had to go there, particularly to debug a performance issue in Charles, so I’ve added PCAP import to Charles. It’s a little basic at the moment so I expect there to be PCAPs that don’t import correctly – if you can, please send them to me so I can increase my test coverage and fix up faults! PCAP import is HTTP only, it can’t import HTTPS (of course).

Transparent proxying is now an option on the HTTP proxy configuration in the Proxy Settings. This is mostly useful if you’re a network guy and can configure your firewall to route traffic through Charles. This can help you capture traffic from more stubborn applications.

As always, contact me via the form on the Charles website if you encounter any bugs. Otherwise, best wishes for Christmas and New Year. See you in 2010!

Download Charles v3.5

Charles v3.4.1 released

Saturday, October 17th, 2009

This is a minor feature and bug fix release. Firstly, it fixes the regression bug in v3.4 that broke request body editing in Breakpoints. Thanks to everyone that reported and tested that for me – your help is most appreciated. Secondly, it replaces the functionality that you could paste a full URL into the Location form. It works even better now, as you’ll see, and there are warnings if you enter inappropriate things in different fields to make it more likely that you’ll get the right result!

Download Charles 3.4.1

Charles v3.4 released

Sunday, September 27th, 2009

After six months of development I’ve released Charles v3.4.

This version features major SSL changes improvements including:

  • You must now explicitly turn on SSL proxying on a per-site basis. This is to prevent confusion and problems with Charles’s SSL certificates, and also to save users from accidentally violating their own privacy by recording unwanted SSL communication inside Charles.
  • The SSL CA certificate has changed, but thankfully so have the ways of installing it. In Firefox after installing the Charles add-on (now also automatic) you can choose “Install Charles CA SSL Certificate” from the Charles submenu in the Tools menu. For your OS as a whole, there is a similar option in the Help menu. The SSL certificate change was to address faults in Mac OS X Leopard and later.
  • Client SSL certificates are now supported for authentication. There is an option to load them in the Proxy menu.
  • When Charles creates an SSL certificate for a site you can now permanently trust that SSL certificate in your browser. This can negate the need to trust the Charles CA SSL certificate at all.

Version 3.4 also adds a much requested “only record these sites” option in the Recording settings. I am still working on a better way to reduce the noise in Charles, but this will be useful in the meantime.

There are many other changes and fixes listed in the Version History, please take a look.

Please let me know if you encounter any problems, particularly regressions.

Download Charles Proxy 3.4

Charles v3.4b1 featuring SSL improvements

Monday, March 30th, 2009

Charles v3.4 is in the works. I haven’t settled on a final feature list for this yet; my focus is intended to be UI improvements, but I couldn’t resist releasing some new SSL features. So this isn’t really a beta, but I’m calling it 3.4b1.

Charles now supports client-side SSL certificates, so you can authenticate with servers that require them. You must configure Charles to use your P12 file for each site that requires it using the Client SSL Certificates option in the Proxy menu. Charles will ask for your password when it needs it, and it doesn’t remember it beyond the session for your security. Please let me know how this works for you!

You can now list SSL sites that should not be proxied / decrypted by Charles. In the process I also renamed “Decrypt SSL” to “SSL Proxying” as it wasn’t the right terminology. So if you have software that accesses specific sites and doesn’t like Charles’s certificates you can add them here; by default it has PayPal and Kagi in there to ward off the emails I get about those sites having invalid certificates! For myself I’ve added *.getdropbox.com as it doesn’t like the SSL certificates it sees even with Charles’s CA certificate trusted by the system – that’s good security.

Finally, the SSL certificates that Charles generates for sites are now cached. This means when you say “permanently trust this certificate” in your browser, it will actually work!

Download the beta.

Charles v3.3 released

Sunday, February 15th, 2009

I’ve released Charles v3.3 today. This release adds several new and exciting features including:

  • HTML, CSS & RSS/Atom validation
  • XML export formats
  • JSONP support

I’ve blogged previously about these, and other new features, so I’m just going to link through to those! Read the first announcement and the second announcement.

The next release of Charles will focus on improving various UI and usability features. Particularly the ability to focus in on a small set of hosts, so you don’t get cluttered with others. Also I’ll be making improvements to the Sequence view; probably some sorting. I’ve received lots of suggestions along these lines; if you have anything to add please leave a comment with your thoughts!

Download Charles v3.3

Charles v3.3 public beta 2

Monday, February 9th, 2009

The second public beta of Charles has just been released. This update adds:

  • “Window always on top” setting and window remembers maximised state
  • Summary table column sorting improved to sort numeric columns
  • Map Remote can now map http requests to https servers
  • Location matching now supports adding $ after the final / for an exact directory match rather than an implicit wildcard

It also includes fixes and improvements to JSON and JSON P and validation. In particular you can now repeat a request within the validation results and have it repeat the original request and then validate the result – really handy for iterative testing and fixing!

This release is heading for final this week I hope so please send your feedback.

Download Charles v3.3 public beta 2

Charles v3.3 public beta

Monday, December 29th, 2008

Hi all. Happy holidays!

I’ve put the finishing touches on some new features for Charles:

  • Validation of Markup (HTML/XHTML), RSS / Atom & CSS
  • XML import/export format for recorded sessions
  • JSONP support

Download Charles v3.3 b1

Validation is a really exciting addition for web developers. If you’re trying to build valid HTML / XHTML pages (and the accompanying CSS and RSS/Atom feeds) then this will be invaluable for checking your work. First record your pages in Charles, then select them and choose Validate from the context-menu or the toolbar; Charles will validate each page, one at a time, using W3C’s validator web services. You can view a simple summary of the results or detailed warnings & errors for each page. Double-click the error message line numbers to view that line in the source. Note that the validation uses the source recorded by Charles, it doesn’t just pass the URL to the validator, so this correctly validates dynamically generated pages where the same page may emit different markup depending upon input or state. I’m very interested to hear feedback on this feature. Credit to Rowan Simpson and Glen Barnes for the idea to integrate validation into Charles.

Charles can now export and import recorded sessions in an XML format. This is useful if you want to analyse the data collected by Charles in your own software. To this end the Auto Save tool now also supports saving in any export format, rather than just the Charles session format. I’m going to be looking at more ways to integrate Charles into automated monitoring environments in the near future.

Finally, JSONP support was a small but irritating omission in Charles’s JSON support that is now fixed!

This is a public beta so I’m hoping for feedback and bug reports on the new features, especially if I’ve introduced any bugs! There have also been a few bug fixes in this release: fixes to the request editing feature, Map Remote with SSL, and using an external SOCKS proxy.

Please leave feedback in the comments or via the contact form on the Charles website.

Download Charles v3.3 b1

Charles 3.2.2 released

Saturday, September 6th, 2008

A small bug fix release to Charles after a few quiet months. I’ve been a bit distracted with family and iPhone apps!

This release includes various minor bug fixes, which you read about. New features include remembering whether you use Structure or Sequence view, support for large files (>2GB) and binding reverse proxies and port forwardings to specific IP addresses on the local machine.

The next release won’t be far away and will include one major new feature around HTML validation, and numerous UI improvements as requested by you!

Download Charles 3.2.2

Charles 3.2 released

Monday, March 24th, 2008

Happy Easter! Charles 3.2 has been released today. There are lots of new features so I’ll cover a few of the highlights. You can read the full version history for the whole list.

Breakpoints let you interactively change requests or responses as they pass through Charles. This opens up whole new opportunities for debugging and testing your applications.

Throttling has been enhanced to allow individual throttle configurations for hosts, so not everything has to be throttled the same way anymore. Throttling now also has settings for down and up bandwidth, as these often differ in the real world.

OS integration has improved with the new .chls file extension for saved Charles sessions, and you can now open a .chls file and have it open Charles on Windows and Mac OS X. Windows also gets single-instanced support, so you won’t open a second instance of Charles and have it complain about ports in use! On Windows these enhancements have been made possible by the WinRun4J Java launcher.

Lots of improvements have been made in the Tools user-interface, including enable/disable checkboxes for each location listed in a tool for fine-grained control

There are lots of other enhancements and bug fixes, making this an exciting release! It’s been in beta testing for quite some time but there could still be some bugs; if anything isn’t working the way you expect, or if anything has regressed, please contact me immediately!

Finally, I am planning to change the licensing model for Charles in April: licenses will no longer include life-time upgrades, they will be for the current major version (2.x, 3.x) with upgrade pricing for subsequent versions. This will help Charles to keep improving! Existing license holders are of course not affected by this change.

Download