# Files and directories matching the patterns below are excluded from Docker
# contexts. This file was initially created by copy/pasting from .gitignore,
# and it's probably a good idea to keep them in sync.

*.pyc
*.swp
*.iml
*.perfetto-trace
.DS_Store
.android_config
.gclient*
.gradle
.idea
.cproject
.clwb/
.project
.recipe_deps/
.settings/
.vscode/
.vs/
.win_toolchain/
TAGS
bower_components
imgui.ini
infra/bots/gen_tasks_aux.go
infra/bots/tools/luci-go/linux64/cipd
infra/bots/tools/luci-go/linux64/isolate
infra/bots/tools/luci-go/mac64/cipd
infra/bots/tools/luci-go/mac64/isolate
infra/bots/tools/luci-go/win64/cipd.exe
infra/bots/tools/luci-go/win64/isolate.exe
out
platform_tools/android/apps/build
platform_tools/android/apps/*.properties
platform_tools/android/apps/*/build
platform_tools/android/apps/*/src/main/libs
platform_tools/android/apps/*/*/src/main/libs
platform_tools/android/apps/*.hprof
platform_tools/android/apps/*/.externalNativeBuild

/mskps
/skps
/svgs
tools/skp/page_sets/data/*.json
tools/skp/page_sets/data/*.wpr

buildtools
third_party/externals

bin/gn
bin/gn.exe
bin/clang-format
bin/clang-format.exe
bin/sk
bin/sk.exe
bin/sk.version
third_party/gn
third_party/ninja
bin/ninja
bin/ninja.exe
bin/ninja.version


node_modules
tools/lottiecap/filmstrip.png

bazel-*

Cargo.lock
target/

# A user is free to specify custom builds or options here without them being checked in.
bazel/user/buildrc

# Coding Agents put workspace state here - we don't want to check that in.
.gemini
