# Ant
build/

# Buck
# buck-out may also be generated under an integration test directory
# when someone runs Buck locally out of that directory to reproduce
# a failure, so we exclude all directories named buck-out, not just
# the one in the root directory.
buck-out
local.properties
.buckd

# Compiled Python
*.pyc
*py.class

# Eclipse
/.settings/

# IntelliJ, based on http://devnet.jetbrains.net/docs/DOC-1186
.idea/ant.xml
.idea/dictionaries
.idea/inspectionProfiles
.idea/tasks.xml
.idea/uiDesigner.xml
.idea/workspace.xml
.idea/misc.xml
.idea/runConfigurations

# From building Emma with Ant.
/third-party/java/emma-2.0.5312/out/

# OS X
.DS_Store

