public function run(array $sources, array $destinations)
    {
        $updatedSources = [];

        foreach ($sources as $source) {
            // remove .scss extension and add .css extension
            $css = $this->getCacheDir().$source->getBasename('.scss').'.css';
            $this->addNotification('compiling '.$source.' to '.$css);

            // compilation start
            $process = new Process($command = $this->buildCommandString($source));
            $process->run();

            if (!$process->isSuccessful()) {
                throw new Exception(
                    'An error has occurred during the compass compile task : "'.$process->getErrorOutput().""
                    .' (running "'.$command.'")'
                );
            }

            // add css file to destination files
            $updatedSources[] = $css;
        }
        if (count($updatedSources)) {
            // compilation success notification
            $this->addNotification('scss files compilation success');
        }

        return $updatedSources;
    }
public function run(array $sources, array $destinations)
    {
        $updatedSources = [];

        foreach ($sources as $source) {
            // remove .scss extension and add .css extension
            $css = $this->getCacheDir().$source->getBasename('.scss').'.css';
            $this->addNotification('compiling '.$source.' to '.$css);

            // compilation start
            $process = new Process($command = $this->buildCommandString($source));
            $process->run();

            if (!$process->isSuccessful()) {
                throw new Exception(
                    'An error has occurred during the compass compile task : "'.$process->getErrorOutput().""
                    .' (running "'.$command.'")'
                );
            }

            // add css file to destination files
            $updatedSources[] = $css;
        }
        if (count($updatedSources)) {
            // compilation success notification
            $this->addNotification('scss files compilation success');
        }

        return $updatedSources;
    }
public function run ( array $ sources , array $ destinations ) { $ updatedSources = [ ] ; foreach ( $ sources as $ source ) { // remove .scss extension and add .css extension $ css = $ this -> getCacheDir ( ) . $ source -> getBasename ( '.scss' ) . '.css' ; $ this -> addNotification ( 'compiling ' . $ source . ' to ' . $ css ) ; // compilation start $ process = new Process ( $ command = $ this -> buildCommandString ( $ source ) ) ; $ process -> run ( ) ; if ( ! $ process -> isSuccessful ( ) ) { throw new Exception ( 'An error has occurred during the compass compile task : "' . $ process -> getErrorOutput ( ) . "" . ' (running "' . $ command . '")' ) ; } // add css file to destination files $ updatedSources [ ] = $ css ; } if ( count ( $ updatedSources ) ) { // compilation success notification $ this -> addNotification ( 'scss files compilation success' ) ; } return $ updatedSources ; }
Compile scss file into css file via compass.

@param SplFileInfo[] $sources
@param SplFileInfo[] $destinations
@return SplFileInfo[]
@throws Exception
Compile scss file into css file via compass .