#!/usr/bin/python # Copyright (c) 2009 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import os.path # When files in these directories are changed, we display a warning. DEPENDENT_DIRS = set([ os.path.normpath("chrome/common/extensions/api"), os.path.normpath("chrome/common/extensions/docs") ]) # Except for these directories. BLACKLIST_DIRS = set([ os.path.normpath("chrome/common/extensions/docs/server") ]) REBUILD_WARNING = """ This change modifies file(s) which the extension docs depend on. You must rebuild the extension docs. Build by running the build.py script in chrome/common/extensions/docs/build/. Be sure to include any modified resulting static files (/common/extension/docs/*.html) in your final changelist. """ def CheckChange(input_api, output_api): for f in input_api.AffectedFiles(): dir = os.path.normpath(input_api.os_path.dirname(f.LocalPath())) while len(dir): if dir in BLACKLIST_DIRS: return [] if dir in DEPENDENT_DIRS: return [output_api.PresubmitPromptWarning(REBUILD_WARNING)] dir = os.path.dirname(dir) return [] def CheckChangeOnUpload(input_api, output_api): return CheckChange(input_api, output_api) def CheckChangeOnCommit(input_api, output_api): return CheckChange(input_api, output_api)