यह डिपेंडेंसी एज के बीच कॉन्फ़िगरेशन ट्रांज़िशन को दिखाता है. उदाहरण के लिए, अगर कॉन्फ़िगरेशन ट्रांज़िशन के साथ //package:foo, //package:bar पर निर्भर करता है, तो इन दोनों टारगेट का कॉन्फ़िगरेशन अलग-अलग होगा: //package:bar का ट्रांज़िशन, //package:foo के ट्रांज़िशन से तय होगा. ऐसा इसलिए, क्योंकि यह ट्रांज़िशन ऑब्जेक्ट से तय किए गए फ़ंक्शन के मुताबिक होता है.
सदस्य
ट्रांज़िशन
transition transition(implementation, inputs, outputs)
उदाहरण:
def _transition_impl(settings, attr):
    # This transition just reads the current CPU value as a demonstration.
    # A real transition could incorporate this into its followup logic.
    current_cpu = settings["//command_line_option:cpu"]
    return {"//command_line_option:compilation_mode": "dbg"}
build_in_debug_mode = transition(
    implementation = _transition_impl,
    inputs = ["//command_line_option:cpu"],
    outputs = ["//command_line_option:compilation_mode"],
)ज़्यादा जानकारी के लिए यहां देखें.
पैरामीटर
| पैरामीटर | ब्यौरा | 
|---|---|
| implementation | ज़रूरी है यह ट्रांज़िशन लागू करने वाला फ़ंक्शन. इस फ़ंक्शन में हमेशा दो पैरामीटर होते हैं: settingsऔरattr.settingsपैरामीटर एक डिक्शनरी है. इसके कुंजियों के सेट को inputs पैरामीटर तय करता है. इसलिए, हर बिल्ड सेटिंग--//foo=barके लिए, अगरinputsमें//fooशामिल है, तोsettingsमेंsettings['//foo']='bar'की एंट्री होगी.
 इस फ़ंक्शन को, बिल्ड सेटिंग आइडेंटिफ़ायर से बिल्ड सेटिंग वैल्यू तक का  | 
| inputs | sequence of strings;
                                     ज़रूरी है बिल्ड सेटिंग की सूची, जिन्हें यह ट्रांज़िशन पढ़ सकता है. यह, लागू करने के फ़ंक्शन पैरामीटर के सेटिंग पैरामीटर का मुख्य सेट बन जाता है. | 
| outputs | sequence of strings;
                                     ज़रूरी है बिल्ड सेटिंग की सूची, जिन्हें इस ट्रांज़िशन की मदद से लिखा जा सकता है. यह ट्रांज़िशन से मिले डिक्शनरी के मुख्य सेट का सुपरसेट होना चाहिए. |