# git hyper-blame master ignore list.
#
# This file contains a list of git hashes of revisions to be ignored by git
# hyper-blame (in depot_tools). These revisions are considered "unimportant" in
# that they are unlikely to be what you are interested in when blaming.
#
# Instructions:
# - Only large (generally automated) reformatting or renaming CLs should be
#   added to this list. Do not put things here just because you feel they are
#   trivial or unimportant. If in doubt, do not put it on this list.
# - Precede each revision with a comment containing the first line of its log.
# - Only put full 40-character hashes on this list (not short hashes or any
#   other revision reference).
# - Append to the bottom of the file (revisions should be in chronological order
#   from oldest to newest).
# - Because you must use a hash, you need to append to this list in a follow-up
#   CL to the actual reformatting CL that you are trying to ignore.

# This block of commits mechanically renamed scoped_ptr to std::unique_ptr and
# make_scoped_ptr to base::WrapUnique, throughout the codebase.
# Convert //android_webview to use std::unique_ptr
08daa0770adc348a5e3852200352b2cd7f620d21
# Convert //storage to use std::unique_ptr
c6378bdd46cb9fbeb4e7a0fbb37d820f8b82232d
# Convert //gin to use std::unique_ptr
c862da8ac734722d6928b64ae87564bf2ee0d2ae
# Convert //url to use std::unique_ptr
ea64f7caeafef5b77b656d03b4b8c4ec8edab4c0
# convert //rlz to std::unique_ptr
03c6cc125a0f63fcf549db5caa525ad5941fffd8
# convert //apps to std::unique_ptr
ecb4a22b939cdcd3e022ee2c452dd7f866d1dfb5
# convert //testing to std::unique_ptr
d1b5b043fcf499cf46d059f5bb72a6ab07f04d88
# convert //headless to std::unique_ptr
c3d183bef609f3c4dab124572281ba13257d37a6
# convert //chrome_elf to std::unique_ptr
1795070c67cd08f5c5437b4e0d3ae6e5d3e5fd13
# convert //mash to std::unique_ptr
1aaf50682f5b06bea8db36316dcddde48444b54e
# Convert //base to use std::unique_ptr
093de9b30c0ba6ded896506a297314e5ed818b89
# Convert media/mojo/ to use std::unique_ptr
f1bc82901463a76329b480e1ce55638d105f4616
# Convert //sandbox to use std::unique_ptr
d521b63cb0fe3d78ed64bbba2c4cfacfeb7ebfd3
# Convert //remoting to use std::unique_ptr
0765c49ae6fb26c49c98bf9205d690174de3c0e4
# Convert //blimp to use std::unique_ptr
1b185c49a6f2e9eea0bac36132f79b8ce50f529a
# Convert //ppapi to use std::unique_ptr
ced9224fbb7866e6ea7e9da221c0b2570008bd55
# Convert //third_party/WebKit from scoped_ptr to std::unique_ptr
a37bedae9c23a82bf8b2f9011d06c9933e0048db
# Nuke WebPassOwnPtr<T> and replace it with std::unique_ptr<T>.
e0d99834d5d8f817c55828c1f53b4d0946b2d6df
# Convert //ios from scoped_ptr to std::unique_ptr.
942f39d75745824a53ef6ce896bb2462010476bb
# Convert //chrome/browser/download from scoped_ptr to std::unique_ptr
abbf4465acfdb9c8d6223c680b634f1fd506813e
# Convert //printing to use std::unique_ptr
c3df9bafc8db94bd613fbd76c61abe5057f7a82d
# Convert //chrome/browser/android from scoped_ptr to std::unique_ptr
aeceb05e862d97596a0e005a17a4f7d61183b818
# Convert //chrome/browser/chromeos from scoped_ptr to std::unique_ptr
24002d093cd0d2b540b0b1895d0044d44a30450d
# Convert //sync from scoped_ptr to std::unique_ptr
c3e80570c413b058d8f855a695610b38072d6519
# Convert //chrome/browser/profiles from scoped_ptr to std::unique_ptr
6e25ed32b8e7dca8352af477dbc82b67ac836736
# Convert //chrome/browser/extensions from scoped_ptr to std::unique_ptr
c963c714c99f34bd80b392d9896ca9cecd66fb6d
# Convert //chrome/browser/ui from scoped_ptr to std::unique_ptr
9603ab9714083051fc19942aa171d88af2cd379c
# Convert //chromecast from scoped_ptr to std::unique_ptr
3c3c93d549f8685459c9d938e81f1e68c888ad6c
# Convert //ash from scoped_ptr to std::unique_ptr
a9454747427889f70d14df4646f7f599d00df02d
# Convert //chrome/browser/sync_file_system from scoped_ptr to std::unique_ptr
566c3c55ebc5fa4600c3e6259938c3f9e1baf483
# Convert //google_apis from scoped_ptr to std::unique_ptr
f064cccace7bf4d940a494042754760f07e8164f
# Convert //chromeos from scoped_ptr to std::unique_ptr
0a6e80cc6b045cb1217a59ad3c9e764c36fb0260
# Convert //tools to use std::unique_ptr
a500b69aa06c2bc084a3b1867b9824f4218014de
# Convert crypto to std::unique_ptr
d1a1847163c0038284a7053b41ba0dedfad9b7b7
# Convert //dbus from scoped_ptr to std::unique_ptr
2a193281aac690b3fdfba1246d6b36877553a9be
# Convert //chrome/browser/media from scoped_ptr to std::unique_ptr
c16dc809e7c8026d8fad7d9169f324df7ab6b1ce
# Convert //content/renderer/media from scoped_ptr to std::unique_ptr
67e2c0a015fb2d2d2584a44b96da1620d2678bf5
# Convert //content/browser/renderer_host/media from scoped_ptr to std::unique_ptr
fd6a38135a1dd716d0f00a86900a03a931a697db
# Convert //content/browser/media from scoped_ptr to std::unique_ptr
3b4fe476046af664ea30dcfffb10956eeaba3b9e
# Convert //content/browser/loader from scoped_ptr to std::unique_ptr
40ce7b38f09de969a106da37e4dec11464da18c6
# Convert //content/child from scoped_ptr to std::unique_ptr
c864f52514c7e8cf9992a524e0294b1cc32c1db5
# Convert //content/browser/fileapi from scoped_ptr to std::unique_ptr
b4e18e45c933153b06833a33bf6352c5da38125a
# Convert //content/browser/download from scoped_ptr to std::unique_ptr
f6c40587bc9ee68ef8102992ea5c52cc8e0c6933
# Convert //cc from scoped_ptr to std::unique_ptr.
60bc3bcfa8b7141986c5e4b3c357c7e03393f230
# Convert //content/browser/frame_host from scoped_ptr to std::unique_ptr
9bfa516692718597507a3339a33dafdc7c2f00ba
# Convert //content/renderer from scoped_ptr to std::unique_ptr
cedca561f373a9f2d102e7bd896712b504b445db
# Convert //content/browser/service_worker from scoped_ptr to std::unique_ptr
86be9c00e6a13acad1851ddc64182a94347c9420
# Convert //content/browser/cache_storage from scoped_ptr to std::unique_ptr
92ae1414e686f8f8ba9c5c663b34552362641feb
# Convert //content/browser/indexed_db from scoped_ptr to std::unique_ptr
531cca917021e753d5215ddb194200be075944ac
# Convert //content/common from scoped_ptr to std::unique_ptr
4ac58c7a6c73f0972e73ce420749f886a8aec18c
# Convert //content/browser from scoped_ptr to std::unique_ptr
5971627d34ab2cca303e4a4552fecf2f019f61c6
# Convert //content from scoped_ptr to std::unique_ptr
6003e0b1ac1acb0a3973abbca62881d2b6acc0b1
# Convert device/bluetooth to std::unique_ptr
08c9d69b0c0d625d2ce38e3d8402f36e1226f0fc
# Change WebBlobRegistry::createBuilder to return a std::unique_ptr.
ae4a290306d308cd6c7187df85c1825edf3354db
# Convert device to std::unique_ptr
acd68a2e07af43fa67def3830555f294eff2ac8e
# Convert skia to std::unique_ptr
b743cc6790dd88fd5b53e4a21f089a38b40a53f8
# JPEG decoding: replace ownership comments with std::unique_ptr.
b587f9a457ee20bfc4e3055f3b79ad7b522c8682
# Convert //sql to use std::unique_ptr
d82cd995ba83303302900ebe7704a9fab405ef93
# Convert //chrome/browser/safe_browsing from scoped_ptr to std::unique_ptr
7bacc0eaa9eb6edb22c9e2734e0e57e64e8b4125
# Convert chrome/renderer to std::unique_ptr
fabb28482dce40e1ac570beb5b9eef5832f9a9b1
# convert //courgette to std::unique_ptr
1007a4af51fee305fd95933d9bdcd83c89f9df29
# Convert chrome/browser/printing to std::unique_ptr
6cb57924b37070a844c7626bc2ab8850c7cf17dd
# Convert //components/drive from scoped_ptr to std::unique_ptr
f427502355334e64faa24798a34f7db9f3bf7871
# Convert //chrome/browser/supervised_user from scoped_ptr to std::unique_ptr
f624e47486f525e6d266b99f90bcb81ad8f57295
# Convert chrome/common to std::unique_ptr
8b51c0ab6c7b58cfa186691dcc973527371b2309
# Replace scoped_ptr with std::unique_ptr in //ui
25c52c3f3c407fd9f5678c0079c877ccef34c090
# Convert //components/dom_distiller from scoped_ptr to std::unique_ptr
fecbe3fea62c512555c2f9c63b936331c9915619
# Convert pdf/ to use std::unique_ptr.
79ce717c93677da7d3db074bad0349995980ce93
# Convert //components/data_reduction_proxy from scoped_ptr to std::unique_ptr
5197113e6864b0530dd8b489615c089facd06e70
# Convert a few components from scoped_ptr to std::unique_ptr
532924d626b6538b547fd00793f0373bb5271df2
# Convert //chrome/test from scoped_ptr to std::unique_ptr
ba06265360528b619b4e6df792b0fb06350a2602
# Convert //chrome/browser/media_galleries from scoped_ptr to std::unique_ptr
5ea05e40ab4ad7a6f6dbd4fabd2ffe061d9e15f2
# Convert //chrome/browser/devtools from scoped_ptr to std::unique_ptr
b8eac3a8edbd7864438f5e326893fa52da75c16f
# Convert //chrome/installer from scoped_ptr to std::unique_ptr
f5d315cecedf2bc83f7499d9c4311215db51ecc6
# Convert media/formats to std::unique_ptr
f402ab9f3f02d00d87c840fe79863f4ac0609ba1
# Convert //chrome/browser/local_discovery from scoped_ptr to std::unique_ptr
bf70795c3d53b4c087b4276069bc8798048497da
# Convert //chrome/browser/net from scoped_ptr to std::unique_ptr
4e7c042ce7fda2baafe59dd88481b2de67644170
# Convert //chrome/browser/spellchecker from scoped_ptr to std::unique_ptr
4d0d72efb14b4746ff054fd1867058dc6997cafd
# Convert //chrome/browser/apps from scoped_ptr to std::unique_ptr
71f677162f1b860b005e20fc9c2f2417bdfb7030
# Convert //chrome/browser/metrics from scoped_ptr to std::unique_ptr
1edb03a4943e4e3de4116adcc031e2dfabbb7805
# Convert //chrome/browser/history from scoped_ptr to std::unique_ptr
b11f7ae342eeba3a126b8270171ab3c6981e0bf7
# Convert //chrome/browser/sync from scoped_ptr to std::unique_ptr
0569a0ed6347980265b437c61b5849ee2ca2c529
# Convert //chrome/browser/policy from scoped_ptr to std::unique_ptr
08cfe9ba9528151087b93894baaf4390a4ad75d0
# Convert //chrome/browser/search_engines from scoped_ptr to std::unique_ptr
878bd271da9444eba2a823fe30f0c316656b0d0d
# Change scoped_ptr to std::unique_ptr in //net/url_request.
8522a25bece204fd7281ec764af1e0c8e36329d6
# Change scoped_ptr to std::unique_ptr in //net/spdy.
aee3e1ec72a9985aa20be4ccf514774373737705
# Change scoped_ptr to std::unique_ptr in //net/socket.
655b66c64362dbea1b7e27207545234f7b908106
# Change scoped_ptr to std::unique_ptr in //net/websockets.
9c5cab5a712d0762319d115a30f5baed1d07416c
# Change scoped_ptr to std::unique_ptr in //net/quic.
ad1777e9c39dc1c7c4d4fb6293a01ca470595134
# Change scoped_ptr to std::unique_ptr in //net/disk_cache.
d04b92dd6de3bbe80c94955ac3347523e891f93d
# Change scoped_ptr to std::unique_ptr in //net/base.
42edb859e1917c96b988fa2f4e204de63aeb18ae
# Change scoped_ptr to std::unique_ptr in //net/dns.
22f90e716ad8674d122781cda62ab739ecb7271c
# Revert of Change scoped_ptr to std::unique_ptr in //net/base.
49964c23cbba511c110cfb642f5685694a895d49
# Change scoped_ptr to std::unique_ptr in //net/proxy.
8a98ca292bd722516ad23b2d85fdb5663a33dab3
# Change scoped_ptr to std::unique_ptr in //net/cert.
3a4770da8b56e8f4c0ef1a85f5786afe35f5401e
# Change scoped_ptr to std::unique_ptr in //net/http.
1fd259a0929d9c8ee68923e29ec1bd60d88f5690
# Change scoped_ptr to std::unique_ptr in //net/base.
7f767e658961d89959af3bd143e7719fcaca8445
# Change scoped_ptr to std::unique_ptr in //net.
a9850e17ec8a7e5e754d2b804ea1a93ff2352310
# Convert //chrome/browser from scoped_ptr to std::unique_ptr
4af48586364b625a8bfce51b10aa4a76109a9108
# Convert //chrome from scoped_ptr to std::unique_ptr
c0e39d57d0c16684ff7c99632fba9a49d4d2431e
# convert //gpu to std::unique_ptr
6682b1c4aac00aee61b09ba8f6084f1790429315
# Convert //extensions/renderer from scoped_ptr to std::unique_ptr
f6f806674c4f6ebbb8b20197ae5b6c7a40bba08f
# Convert //components/policy from scoped_ptr to std::unique_ptr
a3451b74e1aac0c538d7d6824bd714553eb0141e
# Convert //services from scoped_ptr to std::unique_ptr
39fafebd8ff93ca8aac361926e6b3ef840302328
# Convert //extensions/browser/api from scoped_ptr to std::unique_ptr
ccfc5401e32e24f29847cd91f643d03ed651b19a
# Convert //components/proximity_auth from scoped_ptr to std::unique_ptr
2f01269f405de0dfd12cb1dc56459c4492d65b8b
# Convert //services/ui from scoped_ptr to std::unique_ptr
c314381373dc794d3875428994ec7a74edda77e4
# Convert //components/exo from scoped_ptr to std::unique_ptr
31759da04512d5815aff6c30134e33856638889d
# Convert //extensions/browser from scoped_ptr to std::unique_ptr
f5d2410841791e8c32739a4418159489e1dde324
# Convert //components/sync_driver from scoped_ptr to std::unique_ptr
b21a1b10f9a753d3b66e448ca8fa74ac83d5c2cb
# Convert //jingle from scoped_ptr to std::unique_ptr
18e946f9ab6250614430fd09cccb849005ca7aeb
# Convert //components/gcm_driver from scoped_ptr to std::unique_ptr
a77e28eb3b14d816f2c880d3185af8522c04f6bc
# Convert //components/metrics from scoped_ptr to std::unique_ptr
d99c42a1a3c4566d5cdbac0bbbed5c266d09cfeb
# Convert //media/cast from scoped_ptr to std::unique_ptr
8a9783e4c8d986f835f8cc2760267d6c1c7b0b57
# Convert //components/bookmarks from scoped_ptr to std::unique_ptr
acd3f5279c9bc0c73f25976e1cdfa72f43309dba
# Convert //components/search_engines from scoped_ptr to std::unique_ptr
d967d950d071094d70cb480dc3158a48949a7167
# Convert //components/webcrypto from scoped_ptr to std::unique_ptr
7036d1e571ea31ea7ae35c9cc71890cef2fa90d7
# Convert //components/cronet from scoped_ptr to std::unique_ptr
fe3745e624cc39bca68defa70d92390baf897c8a
# Convert //components/history from scoped_ptr to std::unique_ptr
00dfa74c4fe33466816c58d175b60c3a5d4683b4
# Convert //components/omnibox from scoped_ptr to std::unique_ptr
259570ccaf98009037d611aac72e9d809d4d438f
# Convert //mojo from scoped_ptr to std::unique_ptr
40c732a8f3bb63cc6a16a200819f9d01da3e6039
# Convert //media/filters from scoped_ptr to std::unique_ptr
254c536ce14380dc8009240cfff27117a1d52897
# Convert //components/sessions from scoped_ptr to std::unique_ptr
c51ac9e88916cb09ed5f0c4ea7d00d835f4223c7
# Convert //media/capture from scoped_ptr to std::unique_ptr
b8259a16dea373e71505b1f8d9a02b96612161df
# Convert //components/domain_reliability from scoped_ptr to std::unique_ptr
04a35cd4ca655ce8092705d501678ba9edfd005a
# Convert //components/scheduler from scoped_ptr to std::unique_ptr
c0d9887721c7d00ad99a7df09ebae75720503a6a
# Convert //components/update_client from scoped_ptr to std::unique_ptr
d0fc6aa9a949b8093d5e836e3d6443e869495c6a
# Convert //components/content_settings from scoped_ptr to std::unique_ptr
b94ac84f0dc33dcba4d27424777a14fadbb659ef
# Convert //components/nacl from scoped_ptr to std::unique_ptr
24f43a5e9841b7177688291a625a373c3b8ba365
# Convert //components/prefs from scoped_ptr to std::unique_ptr
5f043bc0ea7c069e3ef5e6ef903b98f4e84ec4cb
# Convert //components/user_prefs from scoped_ptr to std::unique_ptr
b707c5c8bed8656c800f613b46967b916e1a7f44
# Convert //media/blink from scoped_ptr to std::unique_ptr
3076abbf53ffb74830a097f1c4f7dd232f246fad
# Convert //components/data_usage from scoped_ptr to std::unique_ptr
154b22210617a1f3f58d0a19d8b30ea9409b98e4
# Convert //extensions/{common,shell} from scoped_ptr to std::unique_ptr
7c2ca35e78f7ba433da3eef399753148fe30f127
# Convert //components/offline_pages from scoped_ptr to std::unique_ptr
e399ff07e13116e446b1ee904c1f6c970eb5bc3b
# Convert //components/copresence from scoped_ptr to std::unique_ptr
477cae30f89224646d3135ae03cdf93d4901dd78
# Convert //components/browser_sync from scoped_ptr to std::unique_ptr
d4593e75ceb64dbf966fc77530f4bd38cdcb687c
# Replace scoped_ptr with std::unique_ptr in //components/signin
fc1ac3074134f30e46543f5d9ca97d5d2a6d0282
# Convert //components/json_schema from scoped_ptr to std::unique_ptr
6430b2ca82390ebcecedc6c0dbf54008af8322ca
# Replace scoped_ptr with std::unique_ptr in //components/syncable_prefs
4d55af59cf486412be6e5e458417f6a423abd7da
# Replace scoped_ptr with std::unique_ptr in //components/suggestions.
501f801f0aa603ae08f213091de67f23476eb40e
# Convert scoped_ptr to std::unique_ptr in //components/translate.
396f876cf9e02a21687bb78364c2e3c930287e9e
# Use std::unique_ptr in components/search_provider_logos.
ef0ef5d8d5ac805e400ed5826a8b9ca57aececbe
# Replace scoped_ptr with std::unique_ptr in //components/sync_sessions
5b9c7ed6b732c9b65c851413d0fa5612edc95b85
# Convert //third_party from scoped_ptr to std::unique_ptr
91cdd51340b8f6a0cc13ec9f5199defbea6cd49c
# Convert //extensions from scoped_ptr to std::unique_ptr
4a7e93b6b2a43ecf9476695bb9046d59a39629dc
# Convert //components/guest_view from scoped_ptr to std::unique_ptr
bb7e2b70c8aace67356a53230d104738ebc92693
# Convert //components/safe_browsing_db from scoped_ptr to std::unique_ptr
45f93419065eb07f861fe59e3f969e2b3255b2ed
# Convert //components/invalidation from scoped_ptr to std::unique_ptr
b753c6fb8b539a9c5febe08f6b159f01b98ecfa8
# Convert //media/audio from scoped_ptr to std::unique_ptr
7089de047f9845b19afd5b671ace13aa1aa3ad42
# Convert scoped_ptr to std::unique_ptr in //ipc.
03de39b2f64eb2e9fbe69947be3d10042f30469e
# Convert //components/[u-z]* from scoped_ptr to std::unique_ptr
3f767dc3724b2e3f36c17ee760007475de7e63cc
# Convert //components/[o-t]* from scoped_ptr to std::unique_ptr
82beb4ff418b0dcb40bd6b860d2e9793a0193118
# Replace scoped_ptr with std::unique_ptr in //media/base.
6aaed6a40bc23a872e14f19a39ff2d7998c803d0
# Convert //components/[a-e]* from scoped_ptr to std::unique_ptr
a0ee5fb8a4dbf546b8da197a055dd3997f3dc475
# Replace scoped_ptr with std::unique_ptr in //media.
4d43bc26cc5d105edb1e976582803ea931e572e1
# Convert //components/[f-n]* from scoped_ptr to std::unique_ptr
84c358e7a3b1658bf396d39716fb0fffbb0aa018

# Move code in ui/gl/* from gfx:: to gl::
7a4638457b6cb7ba351c57b98f1871209604cb81

# Remove OwnPtr from Blink.
f5f08765522594f41a1c032754e4fbc30e90c134

# clang-format all of //ash
b8dcef526018a47e7cd985cef724c464d0d958a6
