src/CarteBlanche/App/Kernel.php
private function boot()
    {
        $config = $this->getContainer()->get('config');

        // load php settings
        $php_settings = $config->get('carte_blanche.php_settings');
        foreach ($php_settings as $type=>$setting) {
            if ($type==='date_timezone' && is_array($setting) && isset($setting['default'])) {                
                @date_default_timezone_set($setting['default']);
            } else {
                @ini_set($type, $setting); 
            }
        }

        // load internal dependencies
        $internal_deps = $config->get('carte_blanche.internal_dependencies');
        foreach ($internal_deps as $name=>$dep) {
            try {
                $this->getContainer()->load(
                    is_numeric($name) ? $dep : $name,
                    array(),
                    $dep
                );
            } catch (Exception $e) {
                $this->addBootError(
                    sprintf('An error occurred while loading a dependency: "%s"', $e->getMessage())
                );
            }
        }

        // load the app bootstrap
        if (false===$this->is_booted) {
            $namespace = $config->get('carte_blanche.app_namespace', 'App');
            if ($_f = Locator::locateData('bootstrap.php')) {
                include_once $_f;
                $bootstrap_class = '\\'.$namespace.'\Bootstrap\ContainerBootstrap';
                $cont = new $bootstrap_class($this);
            } else {
                throw new ErrorException("Bootstrap file can't be found!");
            }
        }

        // load internal language strings
        $i18nfile = Locator::locateLanguage(self::CARTE_BLANCHE_I18N_FILE);
        if (!file_exists($i18nfile)) {
            throw new ErrorException(
                sprintf('Global language file not found [%s]!', self::CARTE_BLANCHE_I18N_FILE)
            );
        }
        self::getContainer()->get('i18n')->loadFile($i18nfile);

        $this->is_booted=true;
        return $this;
    }
private function boot()
    {
        $config = $this->getContainer()->get('config');

        // load php settings
        $php_settings = $config->get('carte_blanche.php_settings');
        foreach ($php_settings as $type=>$setting) {
            if ($type==='date_timezone' && is_array($setting) && isset($setting['default'])) {                
                @date_default_timezone_set($setting['default']);
            } else {
                @ini_set($type, $setting); 
            }
        }

        // load internal dependencies
        $internal_deps = $config->get('carte_blanche.internal_dependencies');
        foreach ($internal_deps as $name=>$dep) {
            try {
                $this->getContainer()->load(
                    is_numeric($name) ? $dep : $name,
                    array(),
                    $dep
                );
            } catch (Exception $e) {
                $this->addBootError(
                    sprintf('An error occurred while loading a dependency: "%s"', $e->getMessage())
                );
            }
        }

        // load the app bootstrap
        if (false===$this->is_booted) {
            $namespace = $config->get('carte_blanche.app_namespace', 'App');
            if ($_f = Locator::locateData('bootstrap.php')) {
                include_once $_f;
                $bootstrap_class = '\\'.$namespace.'\Bootstrap\ContainerBootstrap';
                $cont = new $bootstrap_class($this);
            } else {
                throw new ErrorException("Bootstrap file can't be found!");
            }
        }

        // load internal language strings
        $i18nfile = Locator::locateLanguage(self::CARTE_BLANCHE_I18N_FILE);
        if (!file_exists($i18nfile)) {
            throw new ErrorException(
                sprintf('Global language file not found [%s]!', self::CARTE_BLANCHE_I18N_FILE)
            );
        }
        self::getContainer()->get('i18n')->loadFile($i18nfile);

        $this->is_booted=true;
        return $this;
    }
Boot: execute the app bootstrap and creates necessary dirs

@return self
@throws  \CarteBlanche\Exception\ErrorException if the Bootstrap file can't be found