BrowserMob Proxy 2.1.4 released!

@jekh jekh released this Dec 26, 2016 · 12 commits to master since this release

BrowserMob Proxy 2.1.4 has been released! This release contains a few small but important updates since the recent 2.1.3 release:

  • Removed deprecated uadetector
  • Simplified startup script on unix OSes, including OS X
  • (LittleProxy) Fix hang on invalid responses from server
  • Updated to latest curl/mozilla trust store

2.1.3 was mistakenly not released to Central, so if you were experiencing issues with your dependency management system and 2.1.3, please update to 2.1.4.

Thanks to everyone who helped with this release!

Enjoy!
-Jason

Downloads

BrowserMob Proxy 2.1.3 has been released!

@jekh jekh released this Dec 11, 2016 · 27 commits to master since this release

BrowserMob Proxy 2.1.3 has been released! This release contains a few bugfixes and dependency updates, including important netty updates that fix memory leaks.

  • Update to netty 4.0.42, 4.1.6; update to jackson 2.8.5
  • Support for serverBindAddress in REST API
  • Defaulting to UTF-8 instead of ISO-8859-1 when no charset is specified
  • Added --version command-line option

Thanks to everyone who submitted bug reports, tested, and submitted PRs, including:

@schamper
@lexrj

Enjoy!
-Jason

Downloads

BrowserMob Proxy 2.1.2 released!

@jekh jekh released this Jul 23, 2016 · 55 commits to master since this release

BrowserMob Proxy 2.1.2 has been released! This version contains a few bugfixes, plus some dependency updates:

  • Using Netty 4.1 by default in standalone/command-line/REST API mode; Embedded Mode continues to use Netty 4.0 by default (but should be compatible with projects using 4.1)
  • Fixed potential NPE in ServerResponseCaptureFilter
  • Added captureCookies param to REST API
  • Reduced log message spam

Thanks to everyone who submitted bug reports, tested, and submitted PRs, including:

@djtm
@antonecma
@anandbagmar
@madoni

And anybody I may have missed!

Enjoy!
-Jason

Downloads

BrowserMob Proxy 2.1.1 released!

@jekh jekh released this May 29, 2016 · 91 commits to master since this release

BrowserMob Proxy 2.1.1 has been released! This is a bugfix release, fixing a few minor issues:

  • MITM TrustSource initialization failed if the default Java truststore could not be read
  • HARs captured incorrect cookie expiration dates
  • /limit endpoint in REST API always returned 0 for bandwidth limits

Thanks to everyone who reported issues, tested, and contributed to this release, including:

@teleological
@nehat09
@antonecma

Happy testing!
-Jason

Downloads

BrowserMob Proxy 2.1.0 released!

@jekh jekh released this May 16, 2016 · 108 commits to master since this release

Exciting news! BrowserMob Proxy 2.1.0 has been released. This is the first GA release in the 2.1.0 series, reflecting the maturity and stability of the LittleProxy implementation.

Important changes from the 2.1.0-beta series

Module name change

The browsermob-core-littleproxy module has been renamed browsermob-core. The previous -core module that supported legacy Jetty-based implementation has been renamed to browsermob-core-legacy.

To use the stable LittleProxy-based implementation (BrowserMobProxy and BrowserMobProxyServer):

<dependency>
    <groupId>net.lightbody.bmp</groupId>
    <artifactId>browsermob-core</artifactId>
    <version>2.1.0</version>
</dependency>

To use the legacy Jetty-based implementation (ProxyServer, LegacyProxyServer, and BrowserMobProxyServerLegacyAdapter):

<dependency>
    <groupId>net.lightbody.bmp</groupId>
    <artifactId>browsermob-core-legacy</artifactId>
    <version>2.1.0</version>
</dependency>

Note for users of LegacyProxyServer with LittleProxy: The LittleProxy implementation fully supports the LegacyProxyServer interface, but its support has been extracted out of the BrowserMobProxyServer class into a new class, BrowserMobProxyServerLegacyAdapter. You must use the browsermob-core-legacy module when using the legacy adapter. We highly recommend you migrate from LegacyProxyServer to the BrowserMobProxy interface as soon as possible.

Acknowledgements

An enormous amount of people spent countless hours developing, testing, and reporting issues with BMP between 2.0.0 and 2.1.0. Special thanks to all the BMP and LittleProxy contributors, including:

@jpereira06
@AutomatedTester
@bsaylor
@thibaut-sticky
@romovs
@chemicwepn
@gempesaw
@ryanlevell
@makmi
@mediga
@NozomiIto
@pynicolas
@gabrielf
@bhdrk
@nite23
@ganskef
@MediumOne
Alex Johnson

Enjoy!

-Jason

Downloads

BrowserMob Proxy 2.1.0-beta-6

@jekh jekh released this Apr 23, 2016 · 136 commits to master since this release

BrowserMob Proxy 2.1.0-beta-6 has been released! It is now available on Maven Central. Changes include:

  • The MITM module no longer trusts all upstream servers by default. Instead, BMP uses the JDK's trust store combined with Firefox's default trust store (via https://curl.haxx.se/ca/cacert.pem). To ignore untrusted certificate warnings when using BMP, call proxy.setTrustAllServers(true), or add the trustAllServers=true query parameter when POSTing to the /proxy endpoint.
  • Allow changing the connect timeout when using the LittleProxy implementation
  • Fix WebSocket upgrade request hangs

A big thanks to everyone who reported issues and helped with testing, including:

@jpereira06
@AutomatedTester
The LittleProxy contributors

Enjoy!

-Jason

Downloads

BrowserMob Proxy 2.1.0-beta-5

@jekh jekh released this Mar 26, 2016 · 163 commits to master since this release

BrowserMob Proxy 2.1.0-beta-5 has been released! It is now available on Maven Central. This release brings several enhancements:

  • HAR generation fixes
  • MITM improvements: Netty SslContext (including support for native openssl instead of Java SSLContext), configurable cipher suites, and bug fixes
  • Auto Basic Auth support, the last legacy feature not supported by the LittleProxy module
  • Complete removal of the obsolete version of bouncycastle used by the legacy ProxyServer implementation
  • Miscellaneous bug fixes and documentation updates

Special thanks to the contributors and testers who reported issues and contributed code, including:

@bsaylor
@ganskef
@thibaut-sticky
@jpereira06

And thanks to anyone I may have missed!

-Jason

Downloads

BrowserMob Proxy 2.1.0-beta-4

@jekh jekh released this Dec 28, 2015 · 215 commits to master since this release

This release has been in the works for a long time because it contains a significant new feature: the MITM module, a LittleProxy-compatible module that enables full MITM support with LittleProxy (and BrowserMob Proxy when used with LittleProxy). For details, see the MITM readme.

This release includes:

  • Full MITM support with BMP+LittleProxy.
  • New ca-certificate-rsa.cer certificate in /sslSupport for both LittleProxy and legacy BMP implementations. The previous Cybervillains CA certificates have been removed.
  • MITM now works with chained proxies
  • New setTrustAllServers option in BrowserMobProxy. Set to true to disable remote server certificate validation, false to use the default Java trust store to validate server certificates. (Currently enabled by default, will be disabled in a future release.)
  • Minor update to blacklist and whitelist URL matching: if a URL uses the default port (80 for HTTP, 443 for HTTPS), there is no need to explicitly specify the port in the regex.

Very special thanks to all the LittleProxy contributors, especially @ganskef for his work on LittleProxy+MITM, and @MediumOne for his work on MITM+chained proxy.

Downloads

BrowserMob Proxy 2.1.0-beta-3

@jekh jekh released this Sep 13, 2015 · 235 commits to master since this release

I'm excited to announce the release of the BrowserMob Proxy 2.1.0-beta-3. This release contains several fixes to the LittleProxy HAR capture functionality, as well as improvements to LittleProxy itself.

The next beta release will target improvements to MITM with the LittleProxy implementation, as we approach the release of 'official' 2.1.0.

Special thanks to all those who contributed time and effort reporting issues, testing fixes, and submitting code:
@romovs
@chemicwepn
@jpereira06

My apologies to anyone I missed; send me a note and I will add you to the release notes.

-Jason

Downloads

BrowserMob Proxy 2.1.0-beta-2

@jekh jekh released this Jul 20, 2015 · 283 commits to master since this release

I am pleased to announce the release of BrowserMob Proxy 2.1.0-beta-2! The release is now available in Maven Central, and stand-alone binaries are available on the github releases page.

This release fixes several defects in the 2.1.0-beta-1 release and adds new features, including:

  • HAR capture for request and response errors
  • HAR capture for redirect URLs
  • Access to additional request and response values in filters
  • Fixed inconsistent URL rewriting between HTTP and HTTPS requests
  • Fixed inconsistent URL matching for whitelist and blacklist requests
  • Fixed hanging blacklist and whitelist responses
  • Fixed connection hanging on HTTPS connections

Visit the github page for more information.

Please report any issues you find via github so we can address them in the next release.

Maven artifacts for Embedded Mode

The artifactId for Embedded Mode has changed. To use the LittleProxy-powered version of BrowserMob Proxy, update the artifactId to browsermob-core-littleproxy:

<dependency>
    <groupId>net.lightbody.bmp</groupId>
    <artifactId>browsermob-core-littleproxy</artifactId>
    <version>2.1.0-beta-2</version>
</dependency>

To use the legacy Jetty-based version of BrowserMob Proxy, update the artifactId to browsermob-core:

<dependency>
    <groupId>net.lightbody.bmp</groupId>
    <artifactId>browsermob-core</artifactId>
    <version>2.1.0-beta-2</version>
</dependency>

Thank you to everyone who contributed their time and effort identifying, reporting, and verifying fixes for all the beta-1 defects!

Downloads