O Google abriu o código do Leak Finder, uma ferramenta para examinar a memória de aplicações em JavaScript para encontrar vazamentos de memória. Como em outras linguagens com memória gerenciada, o JavaScript não possui os vazamentos de memória típicos encontrados em outras linguagens como C++; mas quando a memória permanece alocada para objetos que não estão mais sendo utilizados, considera-se que a aplicação apresenta vazamentos, que são capazes de comprometer o desempenho e gerar falhas de execução.
Uma possível maneira de gerar um vazamento de memória em JavaScript é através de uma referência circular, especialmente quando closures são utilizados. O Leak Finder consegue detectar quando uma closure produz um vazamento, alertando o desenvolvedor para o código com problemas. A ferramenta tenta encontrar Google Closures (objetos do tipo goog.Disposable) no heap, verificando se o método dispose() foi chamado e se os listeners do evento foram liberados, pois estes últimos podem manter referências a objetos DOM.
Atualmente, o Leak Finder trabalha com a biblioteca Closures, mas pode ser configurado para integração com outras bibliotecas. Closures é uma biblioteca de código aberto feita em JavaScript que contém ferramentas de tratamento de eventos, manipulação de DOM, testes de unidade, funcionalidades de animação e outros componentes. É muito utilizada por serviços do Google como o GMail, GDocs, GMaps e outros.
Além do Leak Finder, o Google já abriu o código de várias ferramentas de JavaScript, como Closure Compiler, para geração de código compacto e com alta performance; Closure Templates, para geração dinâmica de HTML, Closure Linter, ferramenta de checagem de estilo para JavaScript e a Closure Stylesheets, uma série de extensões para CSS.