UNPKG

3.86 kBMarkdownView Raw
1# Change Log
2
3## v1.1.0
4
5 - Added `min` and `max` options to automatically generate a number of images, and `steps` option to say how many images ([#31](https://github.com/herrstucki/responsive-loader/pull/31)).
6
7## v1.0.0
8
9### New
10
11- 🚀 Added support for [sharp](https://github.com/lovell/sharp) ([#19](https://github.com/herrstucki/responsive-loader/pull/29))
12
13### Breaking
14
15#### Webpack 2 support
16
17Removed support for webpack 1! Please upgrade to webpack >= 2.
18
19The syntax to import images has changed. The query part now comes _after_ the resource (the image) instead of the loader.
20
21```diff
22- require('responsive-loader?size=100!some-image.jpg')
23+ require('responsive-loader!some-image.jpg?size=100')
24```
25
26That means if `responsive-loader` is configured in your webpack-config, it's possible to specify image-specific options without having to add the loader part to the import path. For example:
27
28```js
29// webpack.config.js
30module.exports = {
31 // ...
32 module: {
33 rules: [
34 {
35 test: /\.jpg$/,
36 loader: 'responsive-loader',
37 options: {
38 size: 1000
39 //...
40 }
41 }
42 ]
43 },
44}
45
46// some-file.js
47const image1000 = require('some-image.jpg') // will have size 1000 from the config
48const image500 = require('some-image.jpg?size=500')
49```
50
51#### Other breaking changes
52
53- The `ext` option was removed, in favor of `format=jpg|png`. `[ext]` is now part of the `name` option like in other loaders (fixes [#13](https://github.com/herrstucki/responsive-loader/issues/13))
54- Changed default JPEG `quality` to `85`
55- The `pass` option is now called `disable`
56
57## v0.7.0
58
59- Add `placeholder` option ([#16](https://github.com/herrstucki/responsive-loader/pull/16))
60- Add `width` and `height` attributes to output ([#19](https://github.com/herrstucki/responsive-loader/pull/19))
61
62## v0.6.1
63
64- Declare default `name`, `context`, `quality`, and `background` through webpack options when they're not specified in the loader query ([#12](https://github.com/herrstucki/responsive-loader/pull/12)).
65
66## v0.6.0
67
68- Add linting ([#7](https://github.com/herrstucki/responsive-loader/pull/7))
69- Breaking (maybe): Require node >= v4
70
71## v0.5.3
72
73- Fix wrong callback being called on file load error ([#6](https://github.com/herrstucki/responsive-loader/pull/6))
74
75## v0.5.2
76
77- Added tests!
78- Update `queue-async` to `d3-queue`
79
80## v0.5.1
81
82- Optimization: skip resizing images of the same size ([#5](https://github.com/herrstucki/responsive-loader/pull/5))
83
84## v0.5.0
85
86Using the `size` option for getting only one resized image no longer just returns a string but the same object structure as when using `sizes`. The difference is, that when `toString()` is called on that object, it will return the path of the first resized image.
87
88Also, for pure convenience, the returned object also contains a `src` property, so it can be spread onto a React component (e.g. `<img {...resized} />`).
89
90### Before
91
92This worked:
93
94```js
95import resized from 'responsive?sizes[]=100,sizes[]=200';
96
97<img srcSet={resized.srcSet} src={resized.images[0].path} />
98```
99
100```css
101.foo { background-image: url('responsive?size=100'); }
102```
103
104But this didn't :sob::
105
106```js
107import resized from 'responsive?size=100';
108
109// Whoops, error because `resized` ist just a string
110<img srcSet={resized.srcSet} src={resized.images[0].path} />
111```
112
113```css
114/* Whoops, `url('[object Object]')` */
115.foo { background-image: url('responsive?sizes[]=100'); }
116```
117
118### After
119
120All these work :v:
121
122```js
123import resized from 'responsive?sizes[]=100,sizes[]=200';
124
125<img srcSet={resized.srcSet} src={resized.src} />
126<img srcSet={resized.srcSet} src={resized} />
127<img {...resized} />
128```
129
130```css
131.foo { background-image: url('responsive?sizes[]=100,sizes[]=200'); }
132.foo { background-image: url('responsive?sizes[]=100'); }
133.foo { background-image: url('responsive?size=100'); }
134```