6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Elixir 3.0.0 がバージョンアップしたことで Laravel 5.0.x で起こりうる障害とその対策

Posted at

背景

Elixir 3.0.0 がリリースされました。これにより Laravel 5.0.1 までのバージョンを使っていると gulp が動かなくなるケースがあります。ハマったので共有。
https://github.com/laravel/elixir/releases/tag/3.0.0

Laravel 5.0.1 までだとデフォルトで Elixir のバージョン指定が "*" となっているため、npm update すると Elixir は 3.0.0 にバージョンアップします。
https://github.com/laravel/laravel/blob/v5.0.1/package.json

queueTask の廃止

これまで Elixir には、独自タスクを追加するための仕組みとして、queueTask というメソッドが実装されていました。
例えば「デプロイ前にどこそこのディレクトリは一旦削除しておきたいな〜」など、Elixir が提供する機能の範囲内ではできないようなことを、Elixir のワークフローで行うための仕組みです。

var gulp = require('gulp');
var del = require('del');
var elixir = require('laravel-elixir');

elixir.extend('del', function(args) {
    gulp.task('del', function(cb) {
        del(args, cb);
    });
    return this.queueTask('del');
});

elixir(function(mix) {
    mix
        .del('public/assets/')
        // 中略
        .copy('resources/', 'public/assets/');
});

この、queueTask がなくなりました。
3.0.0 からは以下の様に変わります。

var gulp = require('gulp');
var del = require('del');
var Elixir = require('laravel-elixir');
var Task = Elixir.Task;

Elixir.extend('del', function(args) {
    new Task('del', function(cb) {
        del(args, cb);
    });
});

Elixir(function(mix) {
    mix
        .del('public/assets/')
        // 中略
        .copy('resources/', 'public/assets/');
});

phpunit は明示的に phpunit.xml を指定しなければならなくなった

これまで以下のように指定すれば暗黙的に phpunit.xml を参照していました。

var elixir = require('laravel-elixir');

elixir(function(mix) {
    mix.phpUnit();
});

しかし、3.0.0 からは以下のようにする必要があります。

var elixir = require('laravel-elixir');

elixir(function(mix) {
    mix.phpUnit('./phpunit.xml');
});
6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?