Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/svg/svgo

⚙️ Node.js tool for optimizing SVG files
https://github.com/svg/svgo

Refactor collapseGroups (#1572)

- migrated to visitor plugin api
- covered with tsdoc

Part of the code is still complicated....

e3c687324338be8d793177e0854d0a935e221191 authored about 3 years ago by Bogdan Chadkin <[email protected]>
2.6.1

4e7b903a2323b698795eb4056aa397fe6ed006c3 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Fix config type (#1573)

1b56e70cc017df7fbd7243a5d57b04b02eab3d56 authored about 3 years ago by Chris Wilkinson <[email protected]>
Add missing filter primitives to collections (#1571)

Ref https://github.com/svg/svgo/issues/1045#issuecomment-510208768

This should prevent feDrop...

a0bf4f7ebfa560efe640d15c105f6a837d2df1eb authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor removeEmptyContainers (#1570)

- migrated to visitor plugin api
- covered with tsdoc

edbd4337531195984f6461d3685142b61a89d1a1 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Upgrade to npm 7

65b2a30954c43c6687a557bdbe4a089400d62f97 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Update dependencies (#1569)

* colorette ^1.3.0 → ^1.4.0
* jest ^27.1.1 → ^27.2.0
* node-fetch ^2.6.1 → ...

42f3f8c230cb2efbf75e026a3b68dc6a26f47eb9 authored about 3 years ago by XhmikosR <[email protected]>
Pick from https://github.com/svg/svgo/pull/1567

f602e10eb1277597e4405ac02cd9171c8c8fb75a authored about 3 years ago by Bogdan Chadkin <[email protected]>
2.6.0

721a1e591da131affece29362cf7e7089b474904 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor sortAttrs plugin (#1564)

- covered with tsdoc
- migrated to visitor plugin api
- slightly simplified (hope so) logic by...

1c551a87c0f3fc9798dd87318ca431363e7db201 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor prefixIds (#1561)

Ref https://github.com/svg/svgo/issues/1499

- migrated to visitor plugin api
- covered with ...

3d22a5b23d24a982580871621dc3dfc90ac2735c authored about 3 years ago by Bogdan Chadkin <[email protected]>
Move platform specific eol to svgo-node entry point (#1565)

`os` package in js2svg module bothered me for a long time.
We had to hack rollup to mock it for...

23c7f48130adea2e8c1bd5f06d2fa6b295d48c40 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Remove node 16 version fix (#1566)

Looks like the bug with v8 internals was fixed.

1f5ea7e61019f36c3af9db6995942c3d164f0779 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Add better parser errors (#1553)

Old SVGO errors were not very helpful. Packages like cssnano
(postcss-svgo) had to deal with a ...

77102ed0963a5f1597e8072536311b55465e1874 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Allow choosing EOL and appending final newline (#1546)

Addresses #951

Adds the following options to js2svg and CLI:

- eol — can be set to `lf` or...

e8321f0c27b563734d9c4d7240a1b5a0b904b4ec authored about 3 years ago by Adaline Valentina Simonian <[email protected]>
Refactor removeUnusedNS plugin (#1559)

- covered with types
- migrated to visitor plugin api
- dropped traverse utility which is repl...

6eb4524aef02a7a59a2d2d26e3155a809d16a1ff authored about 3 years ago by Bogdan Chadkin <[email protected]>
Fix CI

d9102930ca6dfabf2dea60038c9c868c5c91edb3 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor removeEditorsNSData (#1557)

- covered with types
- migrated to visitor plugin api
- got rid from parseName utility in favo...

f587aae1c2ad560f7de2e08f488c0d7de71c2cb7 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor cleanupIDs (#1556)

I still did get how id generation works but data flow is clear now at
least.

- covered with ...

298820b8d9013827c215f4735ce75f3059953bc9 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor minifyStyles plugin (#1552)

- migrated to visitor plugin api
- covered with types
- get rid from "traverse" usage

Split...

107922405a11c0773ac3c9bdb6388fc2fca198cb authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor removeUselessStrokeAndFill (#1549)

The logic is a little messy. Will be better when we drop node 12 support
and use optional chain...

93143f32c1ff580416000fbacb7412599b377ea4 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Add xmlns:xlink in reusePaths plugin (#1555)

Ref https://github.com/svg/svgo/issues/1200

fab4b255c76ff7de5e651fd08ae39310e4d332d5 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor reusePaths plugin (#1551)

- migrated to visitor plugin api; combination of enter and exit helped
to fit into single tra...

1e5236d8138a6ea2164a2b41c9744633bf580837 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Update devDependencies (#1550)

* @rollup/plugin-commonjs ^17.1.0 → ^20.0.0
* @rollup/plugin-node-resolve ^11.2.1 → ^...

c80ffca0fb5c923f3cf8a91eb477a6d77f74925d authored about 3 years ago by XhmikosR <[email protected]>
2.5.0

cf03c2398d2f7cc5cda4a404edb2b44cd4fae710 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Add transform-origin to presentation attributes

Ref https://github.com/svg/svgo/issues/1475

680e143daf622bc3ace9e0b82f626507caad0530 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor removeUnknownsAndDefaults (#1548)

- got rid from two computeAttr usages
- got rid from node.parentNode usages
- avoided mutating...

bc95263885af4938cabb8d7cb4eb146b5e5496a2 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor removeOffCanvasPaths plugin (#1545)

- refactored with visitor plugin api
- covered with types
- replaced parentNode traverse with ...

5ad2d4a5f6172f8b49cd3d45ed3279c239926ede authored about 3 years ago by Bogdan Chadkin <[email protected]>
Check types in path tests

6002f0bf651ffb3f427e088c87692082aa751cce authored about 3 years ago by Bogdan Chadkin <[email protected]>
Add visitSkip symbol (#1547)

This should help to avoid node.parentNode and closestByName
in some cases by skiping visiting c...

3ca57d1856b4d5963b4f9abd9ce3d8d0aac225be authored about 3 years ago by Bogdan Chadkin <[email protected]>
Fix applying transform to arc with zero radius

Ref https://github.com/svg/svgo/issues/1500

ac8edbaf4163fd7e0934b72175d60e71844d8cf9 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Cover convertTransform plugin with types (#1542)

In this diff covered convertTransform pluginn with types
and got rid from global state which ma...

1b02799e18654048d9512f6b170c52946f5d565d authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor convertColors (#1543)

- refactored with visitor plugin api
- covered with types

cce036f28541342804acb66cd7d96bfb259af2f4 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor defs plugins (#1544)

Refactored and covered with types following plugins

- removeUselessDefs
- sortDefsChildren

a228020329d0f6836c08034a09b5068bac217816 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Cover with types numeric values plugins (#1541)

- cleanupNumericValues
- cleanupListOfValues

0ead871eeddc865fe0d9dfd9775f7e1a04dc63f3 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor cleanupEnableBackground with visitor plugin api (#1540)

Slightly restructured plugin to do less work in case no filters used.

4082eca762334623d87441360cf162ec1d664c3b authored about 3 years ago by Bogdan Chadkin <[email protected]>
removeViewBox and convertShapeToPath types and visitor (#1537)

- added types to convertShapeToPath
- refactored removeViewBox with visitor plugin api and got ...

a2331a5dee731766a9ac4f4b5774e0ffa26872a7 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Cover mergePaths plugin with types (#1539)

- covered mergePaths plugin
- covered big path logic

74c383153ec593937368ff6a9bf366a008eaee14 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Drop unused bézier utilities

b359730219637d02ae116a9bb79801bbead0b6f7 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor convertRelativeToAbsolute

147d2dadd60c2354d24a656b7a2e4f7330c9dc73 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Normalize path data structure (#1538)

Use modern path data structure in all plugins.
Will be easier to cover with types.

539237ce8746c69299046751b7114103f6620b75 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Clarify how to enable/configure builtin plugins (#1531)

I just spent quite a while trying to upgrade to svgo 2.3 because I was thinking that all the con...

ecf855db50e32c4b8171fe4ad76aacc6b9ef348a authored about 3 years ago by Oscar Busk <[email protected]>
Drop node.style usages (#1534)

Parsing inline styles with csstree in place is easier.
Caching does not add much value here.

6cb2f7034fb57ecf98348928e96e274f30ea16dd authored about 3 years ago by Bogdan Chadkin <[email protected]>
Drop node.class usages (#1533)

We are gonna remove everything outside of xast.
Here's dropped class prop.

98c023bdb09014ec95aba468e3e6c0f800a5a1ff authored about 3 years ago by Bogdan Chadkin <[email protected]>
Covert removeHiddenElems with types (#1532)

Covered removeHiddenElems plugin and big part of our code
- path parser and stringifier
- styl...

e4918ccdd1a2b5831defe0f00c1286744b479448 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Remove mention of deprecated extendDefaultPlugins. (#1529)

1368f8dc93b668f269858336bd0747637be7988d authored about 3 years ago by Morgan Ney <[email protected]>
Update minor and patch dependencies (#1528)

* @rollup/plugin-node-resolve ^11.2.0 → ^11.2.1
* @types/jest ^27.0.0 → ^...

75ec2943b0ce1fa162232f291e7bfe194b76f62e authored about 3 years ago by XhmikosR <[email protected]>
Add plugin types (#1527)

Covered following plugins
- addAttributesToSVGElement.js
- addClassesToSVGElement.js
- clea...

9b8f13e91136bcab74843d3b8c8066a37ef31bb7 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor adhoc plugins with visitor api (#1526)

- addAttributesToSVGElement
- addClassesToSVGElement
- removeAttributesBySelector
- removeAtt...

7ec255719c95f4c08e4c9a1b993261535c88b837 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Convert cleanupListOfValues and cleanupNumericValues to visitor (#1521)

SLightly refactored

e6b441aca014dc3f7965cb8ed1b3966f14f41d56 authored about 3 years ago by Bogdan Chadkin <[email protected]>
moveElemsAttrsToGroup.js: fix missing return value in `Array.every()` (#1525)

7b6e73048fe12af61c550ba2b87691da7cfcf0bd authored about 3 years ago by XhmikosR <[email protected]>
CI: remove Node.js 15 and add 16 (#1523)

11b2801bd5bde4891ab4cd8a5bb6db17ea00ceef authored about 3 years ago by XhmikosR <[email protected]>
removeUselessStrokeAndFill.js: use `String.startsWith()` (#1522)

b41c6fe473ea566cef660cb3597e9e57585be9e1 authored about 3 years ago by XhmikosR <[email protected]>
2.4.0

87ad664659514a57ed865644ed931f95b036783f authored about 3 years ago by Bogdan Chadkin <[email protected]>
Implement preset-default plugin (#1513)

I saw complaints about `extendDefaultPlugins` api

- it cannot be used when svgo is installed ...

07f8d606e0aee1b37d869994815f351a284ee2a0 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Reset current cursor on Z

Ref https://github.com/svg/svgo/issues/1510

9e578b515a6b23e6ab4bd41f7b28e2655d3bd110 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Remove the unused `intersectArrays` util (#1459)

179ca5c60f208017c1fd47cfccd004aecafe6029 authored about 3 years ago by XhmikosR <[email protected]>
Replace deprecated methods in jsAPI (#1479)

efa518b23d94fb17bd82978f968b1762b4b606ec authored about 3 years ago by Yehonatan Daniv <[email protected]>
Remove flag spaces for all arcs (#1484)

Ref #1476

The issue is that a path command may have multiple arcs, and the space optimization...

454b4277a3634d5a9289d2cf8a24f43ce8f25a3b authored about 3 years ago by Josep del Rio <[email protected]>
Refactor convertShapeToPath with visitor api (#1519)

This plugin also removes invalid polyline and polygon.
Looks like out of pluginn scope.

9892e28a711349216dc080ff0930553c98e2e0c5 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Migrate to jest (#1520)

Mocha doesn't have a lot of features provided by jest.
There is a great assertion library out o...

c3695ae5338529e8b3cf2d4b5b1be98bb24d3271 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Drop examples folder

862c43ec64d481b522f5725fbe397a09ac00f520 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Refactor basic plugins with visitor api (#1518)

- cleanupAttrs
- convertEllipseToCircle
- removeDesc
- removeDoctype
- removeEmptyText
- re...

f00bd727b0378efd308dff31b0b02df71dd5f9a7 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Pass parent node to visitor (#1517)

Wrapping each node with JSAPI class and passing parent to it is not
reliable. Parent may be cha...

35b7356ff0c0f03e6ec5947e8a2eb30e126d11b9 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Collect stylesheet once per plugin (#1456)

computeStyle(node) in isolation is quite slow utility because it
collects style elements across...

2c0c3610747587a7731ccf6db2372983d6e5f643 authored about 3 years ago by Bogdan Chadkin <[email protected]>
Exclude test files from the npm package. (#1458)

69d01746cdf212f23d10514e7e6d8481bc416301 authored about 3 years ago by XhmikosR <[email protected]>
add Oh My SVG to frontends (#1507)

Co-authored-by: Bogdan Chadkin <[email protected]>

19014a11136e6c6333abd699e1ef6a6994f24db5 authored about 3 years ago by Sonny Piers <[email protected]>
Add SVG Gobbler to "Ways to use SVGO" (#1503)

Co-authored-by: Bogdan Chadkin <[email protected]>

9ae23e4cd526b42f206ffff299c652748d1e0bcd authored about 3 years ago by Ross Moody <[email protected]>
Add "another way to use SVGO" (#1501)

I've added a link to a free API to use SVGO. May be useful for somebody!

For transparency sak...

0e71422c8d5bb5417f6ca4f5450c92299396a123 authored about 3 years ago by Frank Sandqvist <[email protected]>
Replace chalk with colorette (#1511)

Remove 5 deps from production install:
`ansi-styles`, `supports-color`, `color-convert`, `has-f...

c4ae19e250b0d21ebb300835d76537338973e3f9 authored about 3 years ago by Ludovico Fischer <[email protected]>
Fix typo in README built-in plugins table

cef184cdaf2d7a2f0ca66135fa4e1aaea7733d10 authored over 3 years ago by Bogdan Chadkin <[email protected]>
2.3.1

daf2f88ef342a85ea9e0cd19d56bfb367ef8d048 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Upgrade css-select from `^3.1.2` to `^4.1.3` (#1485)

25d0f87e3321684f5529831c6b7b105a25f92f4b authored over 3 years ago by Eric Cornelissen <[email protected]>
Remove unused artifacts

59876d894ba758814a224cffe26566104018130d authored over 3 years ago by Bogdan Chadkin <[email protected]>
Mark convertStyleToAttrs as `disabled` in README (#1472)

68798ebb6c115b3efab7c2cee0b0e81b96c91312 authored over 3 years ago by Fabien Caylus <[email protected]>
Convert convertPathData to visitor

3d79f57a10d7b3dba4bcd30d0b94e22410626cae authored over 3 years ago by Bogdan Chadkin <[email protected]>
Convert mergePaths to visitor

06110b4fc058e34cadacbf6eaba080468e892d31 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Convert removeHiddenElems to visitor

368a67b70fabcfc0c4e2c30b57ec788081c9e306 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Cleanup collapseGroups tests

17aaf3617f84667d4fb16e4616b2487c03ae3785 authored over 3 years ago by Bogdan Chadkin <[email protected]>
2.3.0

e381ccc13213a7c4c066caca6efa541726d5f999 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Implement exclude pattern cli option (#1409)

* Implement exclude pattern cli option

* fix: support empty exclude folder

* chore: remove...

09aec376c6edd955086bf8443aec894ae5bb730c authored over 3 years ago by Manu Chambon <[email protected]>
Add mergeStyles to readme

e3f37ec4e65c00ec993b6c7e1584770ea69c45fe authored over 3 years ago by Bogdan Chadkin <[email protected]>
Add "visitor" plugins support (#1454)

Visitor is a simple pattern which helps to avoid many type checks
and provide both "perItem" an...

27bef1a954d7a709e2d54d8d926d36aed8a79f5e authored over 3 years ago by Bogdan Chadkin <[email protected]>
Add mergeStyles plugin (#1381)

19c77d23989739ee94d8bfa051646ad501f59278 authored over 3 years ago by strarsis <[email protected]>
Split regression extracter and runner (#1451)

A lot of new sources of regression tests may come and it's important to
make debug simpler.

...

d89d36eacec7bd52002ef55ec6e2bd698352123e authored over 3 years ago by Bogdan Chadkin <[email protected]>
Serve svg for regressions and cache w3c test suite

eb934b40f63acf31ed46d1a24fd149aed04ae0c0 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Override default floatPrecision with global

Ref https://github.com/svg/svgo/issues/1426

Previously extendDefaultPlugins incorrectly overrid...

7389bcddbfadc49de84203b048199b4a397d656a authored over 3 years ago by Bogdan Chadkin <[email protected]>
Implement simple node clone (#1450)

https://github.com/svg/svgo/pull/1279 faced some problems with node cloning.
In this diff I mov...

d08815c1cd3ad087c536c24868fcd9299cb4da31 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Simplify number rendering and fix -0 in path

Ref https://github.com/svg/svgo/issues/1422

3d4adb6b044ff1361a970ea049f90d5626ea9888 authored over 3 years ago by Bogdan Chadkin <[email protected]>
Remove hasAttr and hasAttrLocal usages (#1447)

In most cases simple check for null is enough.

316a002299ae6ec94749e1ff34c08575eccc9dce authored over 3 years ago by Bogdan Chadkin <[email protected]>
Convert addAttributesToSVGElement to item plugin (#1448)

"full" plugins prevents from possible optimisation. We need to migrate
all plugins to "perItem"...

447f82ca6bc8406f73328abecaf205bee309f73b authored over 3 years ago by Bogdan Chadkin <[email protected]>
Specify --ignore-path for ESLint (#1443)

Otherwise, all files are included

13a0ad056ba6d58039573b1d602afc343ce6c3d7 authored over 3 years ago by XhmikosR <[email protected]>
Fix invalid radix in cli (#1446)

e8d563c1f0217f5b517fcd78320a9a17020e8211 authored over 3 years ago by XhmikosR <[email protected]>
Add a test for removeXMLNS plugin (#1444)

bc5c4ea29c7f37a716ceefc82a127499d958aea6 authored over 3 years ago by XhmikosR <[email protected]>
removeOffCanvasPaths: Add one more test (#1445)

3390df1186a102314600dc01f3b5f682b0c355a3 authored over 3 years ago by XhmikosR <[email protected]>
Update devDependencies (#1442)

* @types/mocha ^8.2.1 → ^8.2.2
* chai ^4.3.0 → ^4.3.4
* eslint ^7.20....

de0572c799be449f9dfb61c0fe73c3f3a93818fc authored over 3 years ago by XhmikosR <[email protected]>
addClassesToSVGElement: add one more test (#1441)

f44612e7a220e8d7de64eb2ee2c818f5222f82c5 authored over 3 years ago by XhmikosR <[email protected]>
Use charAt instead of charCodeAt when possible (#1440)

65c733a42a7cf1da54716ae9964b6e3534c83ed2 authored over 3 years ago by XhmikosR <[email protected]>
Remove the executable flag from files. (#1439)

21d24006fd1bc97e6a47723d983b0b428d50a7a9 authored over 3 years ago by XhmikosR <[email protected]>
test/config/_index.js: fix `find` usage (#1438)

b903de9554dfa7f9862705e26f55f1a3af0e780d authored over 3 years ago by XhmikosR <[email protected]>