Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: append variable qualities to dpr srcsets #111

Merged
merged 1 commit into from
Feb 15, 2020

Conversation

sherwinski
Copy link
Contributor

This library will automatically append a variable q parameter mapped to each dpr parameter when generating a fixed-image srcset. This technique is commonly used to compensate for the increased filesize of high-DPR images. Since high-DPR images are displayed at a higher pixel density on devices, image quality can be lowered to reduce overall filesize without sacrificing perceived visual quality. For more information and examples of this technique in action, see this blog post.

This behavior will respect any overriding q value passed in as a parameter. Additionally, it can be disabled altogether by passing { disableVariableQuality: true } to the third argument of buildSrcSet().

The following map of q to dpr pairs will be generated:

dpr q
1 75
2 50
3 35
4 23
5 20

This behavior specifically occurs when a fixed-size image is rendered, for example:

var srcset = new ImgixClient({
          domain: 'testing.imgix.net',
          includeLibraryParam: false
        }).buildSrcSet('image.jpg', {w:100});

will generate a srcset with the following q to dpr mapping:

https://testing.imgix.net/image.jpg?w=100&dpr=1&q=75 1x,
https://testing.imgix.net/image.jpg?w=100&dpr=2&q=50 2x,
https://testing.imgix.net/image.jpg?w=100&dpr=3&q=35 3x,
https://testing.imgix.net/image.jpg?w=100&dpr=4&q=23 4x,
https://testing.imgix.net/image.jpg?w=100&dpr=5&q=20 5x

@sherwinski sherwinski merged commit b52148d into master Feb 15, 2020
@sherwinski sherwinski deleted the srcset-variable-qualities branch February 15, 2020 00:10
ericdeansanchez added a commit that referenced this pull request Feb 3, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-03)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([e4e8d92](e4e8d92))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 3, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-03)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
@ericdeansanchez
Copy link
Contributor

🎉 This PR is included in version 0.3.0-beta.1 🎉

The release is available on:

Your semantic-release bot 📦🚀

ericdeansanchez added a commit that referenced this pull request Feb 5, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-05)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 5, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-05)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* re-add semantic-release with retagged 2.3.2 release ([6ad6531](6ad6531))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 5, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-05)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 5, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-05)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update changelog format, trigger semantic ([4aa7127](4aa7127))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 5, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-05)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* update semantic release ([f55ff4a](f55ff4a))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 5, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-05)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* update semantic release ([ddfe8c7](ddfe8c7))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 6, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-06)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* update semantic release ([bf2dcad](bf2dcad))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
ericdeansanchez added a commit that referenced this pull request Feb 6, 2021
# [0.3.0-beta.1](v0.2.3...v0.3.0-beta.1) (2021-02-06)

### Bug Fixes

* percent encode plus signs in path components ([#223](#223)) ([a5d756e](a5d756e))
* remove ensureEven requirement ([#206](#206)) ([1007f86](1007f86))
* update minor or patch prior to release ([65c6f3e](65c6f3e))
* **buildSrcSet:** ensure largest size can't be repeated ([#184](#184)) ([71a092a](71a092a))
* **buildURL:** ensure operation is idempotent ([8c6c6f9](8c6c6f9))
* add missing variable declarations ([#121](#121)) ([851a607](851a607))
* deprecate domain sharding ([#39](#39)) ([1b90df3](1b90df3))
* ensure URL-legal, path-illegal characters are encoded ([#61](#61)) ([b89dba1](b89dba1))
* include dpr parameter when generating fixed-width srcset ([#59](#59)) ([189d4f7](189d4f7))
* remove deprecated domain sharding functionality ([#42](#42)) ([66d5cd9](66d5cd9))
* remove deprecated settings.host ([#45](#45)) ([41ef41f](41ef41f))
* throw error when certain srcset modifiers are passed zero ([#114](#114)) ([2630f96](2630f96))

### Features

* add babel core for mocha ([1266c1a](1266c1a))
* add minimal babelrc ([3809a93](3809a93))
* add rollup config ([f62e8db](f62e8db))
* add semantic-release ([ebed795](ebed795))
* add settings.domain argument ([#44](#44)) ([af40091](af40091))
* add src, README to files list ([9d3bb9e](9d3bb9e))
* add srcset generation ([#53](#53)) ([81f38e7](81f38e7))
* add srcset option parameter to buildSrcSet() method signature ([#118](#118)) ([1e5507a](1e5507a))
* add support for defining a custom srcset width array ([#110](#110)) ([84974a5](84974a5))
* add support for defining a custom srcset width tolerance ([#109](#109)) ([504af70](504af70))
* add support for defining a min and max srcset width ([#108](#108)) ([fe5f5ba](fe5f5ba))
* add typescript declaration file for ImgixClient ([#64](#64)) ([a065ad9](a065ad9))
* add validation tests ([91cc39c](91cc39c))
* append variable qualities to dpr srcsets ([#111](#111)) ([b52148d](b52148d))
* create a DPR srcset when a fixed height is specified ([#215](#215)) ([628e6c7](628e6c7)), closes [#177](#177)
* drop bower.json ([#222](#222)) ([2def739](2def739))
* enforce 0.01 lower bound for widthTolerance ([#211](#211)) ([8079e75](8079e75))
* generalize test-suite transpilation ([cf49986](cf49986))
* pull constants into separate file ([bb4b36d](bb4b36d))
* pull validation into separate module ([a113fea](a113fea))
* reintro renovate ([d9afcdb](d9afcdb))
* remove old interface ([7a5c1e0](7a5c1e0))
* remove renovate (for now) ([1be0281](1be0281))
* require @babel/register ([c488e43](c488e43))
* rewrite ix-core-js as esm ([7e98689](7e98689))
* run mocha with babel/register ([d5c519c](d5c519c))
* run release on beta branch ([857c864](857c864))
* test on node version 14 ([1d8d4a5](1d8d4a5))
* update @babel/preset-env ([879e235](879e235))
* update buildSrcSet test suite ([5e5d5da](5e5d5da))
* update buildURL test suite ([585bb19](585bb19))
* update client test suite ([e238dc4](e238dc4))
* update package.json ([c8491e0](c8491e0))
* update semantic release ([bf2dcad](bf2dcad))
* use --experimental-modules ([4c9735d](4c9735d))
* use const in validators ([be3ee98](be3ee98))
* use const where possible/appropriate ([4c2a31d](4c2a31d))
* use crypto-js ([a41ef47](a41ef47))
* use explicit extensions for main, module, and browser ([#225](#225)) ([3aa5bab](3aa5bab))
* use mjs file extensions with type module ([#209](#209)) ([72830c4](72830c4))
* use object spread operator ([6142e75](6142e75))

### Performance Improvements

* **srcset:** memoize generated srcset width-pairs ([#115](#115)) ([073d63d](073d63d))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants