Merge branch 'develop'

This commit is contained in:
Jürg Lehni 2016-07-09 21:04:42 +02:00
commit be12275db4
19 changed files with 29031 additions and 49 deletions

2
.gitignore vendored
View file

@ -1,2 +1,2 @@
/node_modules/ /node_modules/
/dist/ /dist/*/

View file

@ -38,6 +38,6 @@ script:
- gulp jshint - gulp jshint
- gulp minify - gulp minify
- gulp test - gulp test
- gulp dist - gulp zip
after_script: after_script:
- '[ "${TRAVIS_BRANCH}" = "develop" ] && [ "${TRAVIS_NODE_VERSION}" = "stable" ] && travis/deploy-prebuilt.sh' - '[ "${TRAVIS_BRANCH}" = "develop" ] && [ "${TRAVIS_NODE_VERSION}" = "stable" ] && travis/deploy-prebuilt.sh'

View file

@ -1,9 +1,11 @@
# Change Log # Change Log
All notable changes to Paper.js shall be documented in this file, following
common [CHANGELOG](http://keepachangelog.com/) conventions. As of `0.10.0`,
Paper.js adheres to [Semantic Versioning](http://semver.org/).
## `0.10.1` (Unreleased) ## `0.10.2`
### Fixed
- Get published version to work correctly in Bower again.
## `0.10.1`
### Fixed ### Fixed
- Correct a few issues with documentation and NPM publishing that slipped - Correct a few issues with documentation and NPM publishing that slipped
@ -14,9 +16,12 @@ Paper.js adheres to [Semantic Versioning](http://semver.org/).
### Preamble ### Preamble
This is a huge release for Paper.js as we aim for a version `1.0.0` release This is a huge release for Paper.js as we aim for a version `1.0.0` release
later this year. There are many items in the changelog (and many more items not later this year. As of this version, all notable changes are documented in the
in the changelog) so here a high-level overview to frame the long list of change-log following common [CHANGELOG](http://keepachangelog.com/) conventions.
changes: Paper.js now also adheres to [Semantic Versioning](http://semver.org/).
There are many items in the changelog (and many more items not in the changelog)
so here a high-level overview to frame the long list of changes:
- Boolean operations have been improved and overhauled for reliability and - Boolean operations have been improved and overhauled for reliability and
efficiency. These include the path functions to unite, intersect, subtract, efficiency. These include the path functions to unite, intersect, subtract,

View file

@ -15,13 +15,13 @@
"main": "dist/paper-full.js", "main": "dist/paper-full.js",
"ignore": [ "ignore": [
"build", "build",
"components", "gulp",
"dist/paper-node.js",
"projects",
"node_modules", "node_modules",
"package.json", "package.json",
"projects",
"src", "src",
"test" "test",
"travis"
], ],
"keywords": [ "keywords": [
"vector", "vector",

View file

@ -1,6 +1,6 @@
{ {
"name": "paper", "name": "paper",
"version": "0.10.1", "version": "0.10.2",
"description": "The Swiss Army Knife of Vector Graphics Scripting", "description": "The Swiss Army Knife of Vector Graphics Scripting",
"license": "MIT", "license": "MIT",
"repo": "paperjs/paper.js", "repo": "paperjs/paper.js",

14249
dist/paper-core.js vendored Normal file

File diff suppressed because it is too large Load diff

38
dist/paper-core.min.js vendored Normal file

File diff suppressed because one or more lines are too long

14623
dist/paper-full.js vendored Normal file

File diff suppressed because one or more lines are too long

39
dist/paper-full.min.js vendored Normal file

File diff suppressed because one or more lines are too long

@ -1 +1 @@
Subproject commit 698991bfba9210c6d94c08bd70ba9f815ea98bdf Subproject commit b6f36edba33690cee908cadcb24515ec5be97b1d

View file

@ -17,7 +17,7 @@ var gulp = require('gulp'),
whitespace = require('gulp-whitespace'), whitespace = require('gulp-whitespace'),
del = require('del'), del = require('del'),
extend = require('extend'), extend = require('extend'),
options = require('../utils/options.js')({ suffix: true }); options = require('../utils/options.js');
// Options to be used in Prepro.js preprocessing through the global __options // Options to be used in Prepro.js preprocessing through the global __options
// object, merged in with the options required above. // object, merged in with the options required above.

View file

@ -15,7 +15,9 @@ var gulp = require('gulp'),
merge = require('merge-stream'), merge = require('merge-stream'),
zip = require('gulp-zip'); zip = require('gulp-zip');
gulp.task('dist', ['minify', 'docs', 'clean:dist'], function() { gulp.task('dist', ['build', 'minify', 'docs']);
gulp.task('zip', ['clean:zip', 'dist'], function() {
return merge( return merge(
gulp.src([ gulp.src([
'dist/paper-full*.js', 'dist/paper-full*.js',
@ -31,7 +33,7 @@ gulp.task('dist', ['minify', 'docs', 'clean:dist'], function() {
.pipe(gulp.dest('dist')); .pipe(gulp.dest('dist'));
}); });
gulp.task('clean:dist', function() { gulp.task('clean:zip', function() {
return del([ return del([
'dist/paperjs.zip' 'dist/paperjs.zip'
]); ]);

View file

@ -14,7 +14,7 @@ var gulp = require('gulp'),
del = require('del'), del = require('del'),
rename = require('gulp-rename'), rename = require('gulp-rename'),
shell = require('gulp-shell'), shell = require('gulp-shell'),
options = require('../utils/options.js')({ suffix: true }); options = require('../utils/options.js');
var docOptions = { var docOptions = {
local: 'docs', // Generates the offline docs local: 'docs', // Generates the offline docs

View file

@ -21,5 +21,5 @@ gulp.task('load', ['clean:load'], function() {
}); });
gulp.task('clean:load', function() { gulp.task('clean:load', function() {
return del([ 'dist/paper-full.js', 'dist/paper-core.js', 'dist/node/**' ]); return del([ 'dist/*.js', 'dist/node/**' ]);
}); });

View file

@ -11,31 +11,56 @@
*/ */
var gulp = require('gulp'), var gulp = require('gulp'),
addSrc = require('gulp-add-src'),
bump = require('gulp-bump'), bump = require('gulp-bump'),
git = require('gulp-git-streamed'), git = require('gulp-git-streamed'),
run = require('run-sequence'),
shell = require('gulp-shell'), shell = require('gulp-shell'),
options = require('../utils/options.js')({ suffix: false }); options = require('../utils/options.js');
gulp.task('publish:bump', function() { gulp.task('publish', function() {
return gulp.src([ 'package.json', 'component.json' ])
.pipe(bump({ version: options.version }))
.pipe(gulp.dest('./'))
.pipe(addSrc('src/options.js'))
.pipe(git.add());
});
gulp.task('publish', ['publish:bump'], function() {
if (options.branch !== 'develop') { if (options.branch !== 'develop') {
throw new Error('Publishing is only allowed on the develop branch.'); throw new Error('Publishing is only allowed on the develop branch.');
} }
return run(
'publish:version',
'publish:dist',
'publish:commit',
'publish:release',
'publish:load'
);
});
gulp.task('publish:version', function() {
// Since we're executing this on the develop branch but we don't wan the
// version suffixed, reset the version value again.
options.resetVersion();
return gulp.src([ 'package.json', 'component.json' ])
.pipe(bump({ version: options.version }))
.pipe(gulp.dest('.'));
});
gulp.task('publish:dist', ['dist']);
gulp.task('publish:commit', function() {
var message = 'Release version ' + options.version; var message = 'Release version ' + options.version;
return gulp.src('.') return gulp.src('.')
.pipe(git.add())
.pipe(git.commit(message)) .pipe(git.commit(message))
.pipe(git.tag('v' + options.version, message)) .pipe(git.tag('v' + options.version, message));
});
gulp.task('publish:release', function() {
return gulp.src('.')
.pipe(git.checkout('master')) .pipe(git.checkout('master'))
.pipe(git.merge('develop', { args: '-X theirs' })) .pipe(git.merge('develop', { args: '-X theirs' }))
.pipe(git.push('origin', ['master', 'develop'], { args: '--tags' })) .pipe(git.push('origin', ['master', 'develop'], { args: '--tags' }))
.pipe(shell('npm publish')) .pipe(shell('npm publish'))
.pipe(git.checkout('develop')); .pipe(git.checkout('develop'));
}); });
gulp.task('publish:load', ['load'], function() {
return gulp.src('dist')
.pipe(git.add())
.pipe(git.commit('Switch back to load.js versions on develop branch.'))
.pipe(git.push('origin', 'develop'));
});

View file

@ -14,7 +14,6 @@ var gulp = require('gulp'),
path = require('path'), path = require('path'),
gutil = require('gulp-util'); gutil = require('gulp-util');
gulp.task('watch', function () { gulp.task('watch', function () {
gulp.watch('src/**/*.js', ['jshint']) gulp.watch('src/**/*.js', ['jshint'])
.on('change', function(event) { .on('change', function(event) {

View file

@ -20,19 +20,20 @@ function git(command) {
return execSync('git ' + command).toString().trim(); return execSync('git ' + command).toString().trim();
} }
options.date = git('log -1 --pretty=format:%ad');
options.branch = git('rev-parse --abbrev-ref HEAD');
// Get the date of the last commit from this branch for release date: // Get the date of the last commit from this branch for release date:
var date = git('log -1 --pretty=format:%ad'), var version = options.version,
branch = git('rev-parse --abbrev-ref HEAD'); branch = options.branch;
extend(options, {
date: date,
branch: branch,
// If we're not on the master branch, use the branch name as a suffix: // If we're not on the master branch, use the branch name as a suffix:
suffix: branch === 'master' ? '' : '-' + branch if (branch !== 'master')
}); options.version += '-' + branch;
module.exports = function(opts) { // Allow the removal of the suffix again, as needed by the publish task.
return extend({}, options, opts && opts.suffix && { options.resetVersion = function() {
version: options.version + options.suffix options.version = version;
}); }
};
module.exports = options;

View file

@ -1,6 +1,6 @@
{ {
"name": "paper", "name": "paper",
"version": "0.10.1", "version": "0.10.2",
"description": "The Swiss Army Knife of Vector Graphics Scripting", "description": "The Swiss Army Knife of Vector Graphics Scripting",
"license": "MIT", "license": "MIT",
"homepage": "http://paperjs.org", "homepage": "http://paperjs.org",
@ -20,6 +20,7 @@
"prepush": "gulp test", "prepush": "gulp test",
"build": "gulp build", "build": "gulp build",
"dist": "gulp dist", "dist": "gulp dist",
"zip": "gulp zip",
"docs": "gulp docs", "docs": "gulp docs",
"load": "gulp load", "load": "gulp load",
"jshint": "gulp jshint", "jshint": "gulp jshint",
@ -47,7 +48,6 @@
"del": "^2.2.1", "del": "^2.2.1",
"extend": "^3.0.0", "extend": "^3.0.0",
"gulp": "^3.9.1", "gulp": "^3.9.1",
"gulp-add-src": "^0.2.0",
"gulp-bump": "^2.2.0", "gulp-bump": "^2.2.0",
"gulp-cached": "^1.1.0", "gulp-cached": "^1.1.0",
"gulp-git-streamed": "^1.8.0", "gulp-git-streamed": "^1.8.0",
@ -71,6 +71,7 @@
"qunitjs": "^1.23.0", "qunitjs": "^1.23.0",
"require-dir": "^0.3.0", "require-dir": "^0.3.0",
"resemblejs": "^2.2.1", "resemblejs": "^2.2.1",
"run-sequence": "^1.2.2",
"stats.js": "0.16.0", "stats.js": "0.16.0",
"straps": "^1.9.0" "straps": "^1.9.0"
}, },

View file

@ -17,7 +17,7 @@
// The paper.js version. // The paper.js version.
// NOTE: Adjust value here before calling `gulp publish`, which then updates and // NOTE: Adjust value here before calling `gulp publish`, which then updates and
// publishes the various JSON package files automatically. // publishes the various JSON package files automatically.
var version = '0.10.1'; var version = '0.10.2';
// If this file is loaded in the browser, we're in load.js mode. // If this file is loaded in the browser, we're in load.js mode.
var load = typeof window === 'object'; var load = typeof window === 'object';