]> source.dussan.org Git - svg.js.git/commitdiff
Updated CHANGELOG
authorwout <wout@mick-wout.com>
Fri, 7 Apr 2017 18:20:02 +0000 (20:20 +0200)
committerwout <wout@mick-wout.com>
Fri, 7 Apr 2017 18:20:02 +0000 (20:20 +0200)
CHANGELOG.md
bench/runner.html
bench/tests/10000-circles.js
bench/tests/10000-each.js [new file with mode: 0644]
bench/tests/10000-pathArrays.js
bench/tests/10000-paths.js
bench/tests/10000-rects.js

index 2878bacb70c04d88dc18f88e8b93fa1f6efc21ed..287697380a9e481d25d21708d973a7fae0b8fcab 100644 (file)
@@ -34,10 +34,11 @@ The document follows the conventions described in [“Keep a CHANGELOG”](http:
 ### Fixed
 - `clear()` does not remove the parser in svg documents anymore
 
-## [2.5.1] - 2017-03-27
+## [2.5.1](https://github.com/svgdotjs/svg.js/releases/tag/2.5.1) - 2017-03-27
 
 ### Fixed
 - fixed `SVG.PathArray.parse` that did not correctly parsed flat arrays
+- prevented unnecessary parsing of point or path strings
 
 ### Changed
 - make svgjs ready to be used on the server
index 31b97c1f8b2d36ab5dc51997760179f215e85e16..719f38569e41f67dcaef6e20b182ce121c760832 100644 (file)
@@ -40,6 +40,7 @@
   <script src="../dist/svg.js"></script>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/snap.svg/0.5.1/snap.svg-min.js"></script>
   <script src="svg.bench.js"></script>
+  <!-- <script src="tests/10000-each.js"></script> -->
   <script src="tests/10000-rects.js"></script>
   <script src="tests/10000-circles.js"></script>
   <script src="tests/10000-paths.js"></script>
index da2a3ded986be49650792f5770a0c887b6f72fd2..85dadb2cec8b822ae34431e7fe4cda929eaeb55d 100644 (file)
@@ -1,5 +1,5 @@
 SVG.bench.describe('Generate 10000 circles', function(bench) {
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       bench.draw.circle(100,100)
   })
@@ -18,7 +18,7 @@ SVG.bench.describe('Generate 10000 circles', function(bench) {
 })
 
 SVG.bench.describe('Generate 10000 circles with fill', function(bench) {
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       bench.draw.circle(100,100).fill('#f06')
   })
diff --git a/bench/tests/10000-each.js b/bench/tests/10000-each.js
new file mode 100644 (file)
index 0000000..c47eb60
--- /dev/null
@@ -0,0 +1,27 @@
+SVG.bench.describe('each() vs forEach()', function(bench) {
+  // preparation
+  var list = []
+
+  for (var i = 99; i >= 0; i--)
+    list.push(bench.draw.rect(100, 50))
+
+  var set = new SVG.Set(list)
+
+
+  bench.test('10000 x each()', function() {
+    for (var i = 0; i < 10000; i++) {
+      set.each(function() {
+        this.fill('#f06')
+      })
+    }
+  })
+
+  bench.test('10000 x forEach()', function() {
+    for (var i = 0; i < 10000; i++) {
+      list.forEach(function(e) {
+        e.fill('#f06')
+      })
+    }
+  })
+
+})
\ No newline at end of file
index fc34e5f8818f5cb6953c828fd4963c25f71e0665..b30229a6a4ad2ff84ac93fd4184e05fab3afa74c 100644 (file)
@@ -5,17 +5,17 @@ SVG.bench.describe('Generate 10000 pathArrays', function(bench) {
 
   var data3 = 'M10 10-45-30.5.5 .89L2e-2.5.5.5-.5C.5.5.5.5.5.5L-3-4z'
   
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       new SVG.PathArray(data)
   })
   
-  bench.test('using SVG.js v2.4.0 more data', function() {
+  bench.test('using SVG.js v2.5.1 more data', function() {
     for (var i = 0; i < 10000; i++)
       new SVG.PathArray(data2)
   })
   
-  bench.test('using SVG.js v2.4.0 complicated data', function() {
+  bench.test('using SVG.js v2.5.1 complicated data', function() {
     for (var i = 0; i < 10000; i++)
       new SVG.PathArray(data3)
   })
index 378cb29dce0815b831aacc32bf2adc16bd7b2282..54602dc614861d9a1572d3dc6fec860f900fbd82 100644 (file)
@@ -1,7 +1,7 @@
 SVG.bench.describe('Generate 10000 paths', function(bench) {
   var data = 'M 100 200 C 200 100 300  0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100'
 
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       bench.draw.path(data)
   })
index dee09b49b5ded471d32b228a49eb063a34caf742..4fa6b29566bfa4bbac2bb3bd91f58151eb1803a4 100644 (file)
@@ -1,5 +1,5 @@
 SVG.bench.describe('Generate 10000 rects', function(bench) {
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       bench.draw.rect(100,100)
   })
@@ -19,7 +19,7 @@ SVG.bench.describe('Generate 10000 rects', function(bench) {
 
 
 SVG.bench.describe('Generate 10000 rects with fill', function(bench) {
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       bench.draw.rect(100,100).fill('#f06')
   })
@@ -40,7 +40,7 @@ SVG.bench.describe('Generate 10000 rects with fill', function(bench) {
 
 
 SVG.bench.describe('Generate 10000 rects with position and fill', function(bench) {
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++)
       bench.draw.rect(100,100).move(50,50).fill('#f06')
   })
@@ -63,7 +63,7 @@ SVG.bench.describe('Generate 10000 rects with position and fill', function(bench
 
 
 SVG.bench.describe('Generate 10000 rects with gradient fill', function(bench) {
-  bench.test('using SVG.js v2.4.0', function() {
+  bench.test('using SVG.js v2.5.1', function() {
     for (var i = 0; i < 10000; i++) {
       var g = bench.draw.gradient('linear', function(stop) {
         stop.at(0, '#000')