Commit graph

100 commits

Author SHA1 Message Date
Futago-za Ryuu 87ad103177 Move nyc options to separate config 2018-03-23 02:38:00 +00:00
Futago-za Ryuu 6335818cb7 Gulp 4 2018-03-23 02:00:03 +00:00
Futago-za Ryuu 126a4c95f4 Update devDependencies
Closes #568
2018-03-20 03:19:30 +00:00
Futago-za Ryuu a11d217167 Updated devDependencies 2018-02-01 21:51:17 +00:00
Futago-za Ryuu a79757683f Should be 'test/impact master' 2018-01-28 02:08:20 +00:00
Mingun fde1c480f4 Use chai-like instead of own properties matcher (#550) 2018-01-06 23:29:24 +00:00
Futago-za Ryuu f5699d63fb Updated devDependencies
- Bump: eslint-config-futagozaryuu@3.8
- Bump:  run-sequence@2.2.1
2018-01-03 22:49:44 +00:00
Mingun a7a0a0d9ac Bump devDependencies (#549)
- Removed: babel-preset-es2015@6.24.1
- Added: babel-preset-env@1.6.1
- Updated: gulp-mocha@5.0.0
- Updated: nyc@11.4.1
- Updated: vinyl-buffer@1.0.1
- Updated: vinyl-source-stream@2.0.0
2017-12-31 22:01:29 +00:00
Futago-za Ryuu cd02806c94 Moved 'package.json:repository' field 2017-12-27 23:35:07 +00:00
Futago-za Ryuu d3cbbee592 Added .d.ts declaration files (#519) 2017-12-27 23:04:05 +00:00
Mingun 3f8cf7cd58 Add coveralls.io support 2017-12-18 18:58:49 +05:00
Mingun f0e5eebe1a Add code coverage by Intanbul 2017-12-18 18:53:01 +05:00
Futago-za Ryuu 1dd1487f9b Set version to v0.11.0-dev 2017-12-18 01:23:17 +00:00
Futago-za Ryuu f7dd11698a Updates devDependencies
- eslint-config-futagozaryuu
- sinon
2017-12-16 21:51:45 +00:00
Futago-za Ryuu 123a20a83c Updated ignored and published files 2017-11-28 20:42:01 +00:00
Futago-za Ryuu 37698d8981 Updated NPM scripts & Gulp tasks
- updated names & ordering
- set "gulp clean" to also remove generated examples
- added "gulp lint" to list of default tasks
2017-11-28 17:49:51 +00:00
Futago-za Ryuu e6d018a88d Update code format and style
This is related to my last commit. I've updated all the JavaScript files to satisfy 'eslint-config-futagozaryuu', my eslint configuration.

I'm sure I've probally missed something, but I've run all NPM scripts and Gulp tasks, fixed any bugs that cropped up, and updated some stuff (mainly related to generated messages), so as far as I can, tell this conversion is over (I know I've probally jixed it just by saying this ;P).
2017-10-25 19:19:42 +01:00
Futago-za Ryuu 3c6523ff83 Switched eslint configuration
Was using 'eslint-config-dmajda' by @dmajda, but since it's diffucult for me to use multiple styles across multiple projects, I'm switching to my own 'eslint-config-futagozaryuu'.
2017-10-25 02:24:11 +01:00
Futago-za Ryuu 50cbcd6704 Updated devDependencies
Was planning on doing this after 0.11 (see #497), but since I'm doing an overhaul of the development files now instead, might as well...
2017-10-24 18:49:04 +01:00
Futago-za Ryuu 35832f474f Updated gulpfile.js
- Updated glob for test files
- Updated HEADER var for generated browser build
- Inlined list of JS_FILES to lint
- Added helper 'execFile'
- Simplyfied 'gulp benchmark'
- Parser generator now use's 'bin/peg.js'
- Moved HEADER var into 'browser:build' function
- Simplyfied 'gulp browser:clean'
- removed dependency 'gulp-transform'
2017-10-24 16:38:10 +01:00
Futago-za Ryuu 5c36738a52 Rewrote test/impact as a Node.js script
"test/impact" was a bash script before, and used tools spefic to some systems, which required Window users to have more software installed.

This rewrite removes the bash script and add's a cross platform Node.js script that doesn't depend on platform-spefic tools.
2017-10-06 07:49:52 +01:00
Futago-za Ryuu 5a833bd982 Moved all spec and benchmark tests
- Moved benchmark to test/benchmark
- Moved tests to test/spec
- Removed individual servers
- Implemented single test server
- Moved server assets to test/server
- Updated Gulpfile.js
- Moved tools/impact to test/impact

This commit move's nearly all code related to testing the PEG.js module into the test directory, and also ensures they run as they did before the move.
2017-10-02 04:35:46 +01:00
Futago-za Ryuu a1ad351c2c Add extension for bin file
Fixes #535 (again ...)
2017-09-16 01:27:10 +01:00
Futago-za Ryuu 14948dad93 Update files field to include bin files
Closes #529, Fixes #535
2017-09-15 22:22:15 +01:00
Futago-za Ryuu 0ed8c6f89a Rewrote command line tool
- Split into 3 files: "peg.js", "options.js" and "usage.txt"
- Rewrote arguments parser and helpers to be more precise
- Any arguments after "--" will be passed to "options['--']" now
- Added negation options: "--no-cache" and "--no-trace"
- Added "bare" to accepted module formats
- Added 2 aliases for "--extra-options-file": "-c" and "--config"
- Added short options: "-a", "-f" and "-p"
- Reformatted help text in "usage.txt"
- Updated documentation related to command line options and normal options
- Changed "bin" field in "package.json" from "bin/pegjs" to "bin/peg"
- Added documentation note about command line options that are repeated
- Updated gulpfile.js, replacing "bin/pegjs" with "bin/*.js"

See #429, which was what I intended to fix/solve, but instead pushed back and did this instead.
2017-08-24 03:29:02 +01:00
Futago-za Ryuu b926be7d71 Added npm scripts for gulp tasks 2017-08-20 08:05:30 +01:00
Futago-za Ryuu 8856913ae8 Updated maintainer #503 2017-06-12 07:40:38 +01:00
David Majda 9f36131637 Use https: in links to majda.cz
This avoids redirects.
2016-12-08 10:45:07 +01:00
David Majda 95d1e0decf package.json: Use exact version of run-sequence
The package was added with a version range ("^") by mistake.
2016-12-08 10:23:11 +01:00
David Majda 73de2c9384 Switch from Jasmine to Mocha & Chai
The switch is mostly mechanical, with assertions translated 1:1. The
biggest non-mechanical part is rewriting Jasmine custom matchers as Chai
helpers. The matchers were streamlined and simplified in the process and
their messages were made more in line with messages produced by built-in
Chai helpers.

Fixes #409.
2016-12-08 09:01:08 +01:00
David Majda 266f17d11c Adapt to using HTTPS on PEG.js website
PEG.js website is now served exclusively using HTTPS. Change protocol in
all links to it to avoid redirects.
2016-12-04 11:24:33 +01:00
David Majda b5bd30c813 gulpfile.js: Use "run-sequence" to run default tasks
Instead of specifying tasks that are part of the "default" task using
dependencies and running them in parallel, execute them serially using
"run-sequence". This makes things deterministic and ensures that all
messages from all tasks are seen in the output (which wasn't the case
before, leading to confusion).
2016-12-01 16:26:58 +01:00
David Majda b33f2b2d24 Remove VERSION
Version information is already present in package.json and no code uses
the VERSION file anymore. It doesn't make sense too keep it just for the
sake of following an old convention as it is a maintenance burden.
2016-10-11 12:00:34 +02:00
David Majda 9956b42392 Switch from Make to Gulp
The core of the transition is getting rid of Makefile and replacing it
with gulpfile.js. The rest is details (fixing dependencies, changing all
references to "make", etc.).

Target/task names mostly stay the same, so in most cases "gulp foo" does
what "make foo" did before. The only exceptions are "make browser" and
"make browserclean", which are now "gulp browser:build" and "gulp
browser:clean" (it feels more systematic).

Functionality is mostly unchanged (modulo Gulp clutter in the console),
but there are two small exceptions:

  gulp spec

    The reporter now displays just dots while previously it displayed
    spec descriptions. There is also a deprecation warning (most likely
    because I used an old version of gulp-jasmine in order to support
    Jasmine 1.x). I kept these issues unfixed because I plan to switch
    to Mocha soon (#409).

  gulp browser:build

    The copyright header is now added manually both to the development
    and minified build. Before, it was added only to the development
    build and the minified build relied on preserving it using "uglify
    --comments". This was broken since switching to //-style comments.

    There is now also an empty line between the header and the source
    code.

Fixes #444.
2016-10-11 11:53:25 +02:00
David Majda 6f34b542b4 Code style: Use eslint-config-dmajda ESLint configuration
This change leads to quite some errors being reported by ESLint. These
will be fixed in subsequent commits.

Part of #407.
2016-10-10 10:58:05 +02:00
David Majda b5eb1a0ec4 Use eslint 3.6.1 2016-09-30 14:30:54 +02:00
Mingun fcddfbebdd Add glob dev dependency used in spec and benchmark servers 2016-09-14 21:39:04 +05:00
David Majda b2a9dabcff Remove now unused lib/utils/objects.js
See #442.
2016-09-14 14:06:59 +02:00
David Majda c344460855 Remove now unused lib/utils/arrays.js
See #442.
2016-09-14 10:06:36 +02:00
David Majda 5822596ab8 Replace classes.subclass with native classes
See #442.
2016-09-13 09:09:40 +02:00
David Majda 4a49e910ac package.json: Remove http-server
It is no longer used after introducing spec/server and benchmark/server.

See #442.
2016-09-08 14:54:18 +02:00
David Majda d239bf0107 package.json: Add packages that will be needed soon
Add "express" and "morgan" packages, which will be needed by
soon-to-be-introduced spec server and benchmark server.

See #442.
2016-09-08 13:26:31 +02:00
David Majda 4e38617748 Pass the browser version through Babel
This will allow to use ES2015 constructs in PEG.js code.

See #442.
2016-09-07 18:08:27 +02:00
David Majda 16f38f6380 Drop Node 0.10.x & 0.12.x support
See #442.
2016-09-07 11:26:52 +02:00
David Majda 671166bbe8 Update version to 0.10.0 2016-08-19 09:13:44 +02:00
David Majda 0478f8a6cf package.json: Sort files alphabetically 2016-08-06 17:00:42 +02:00
David Majda 5c0f0add95 Downgrade eslint to 2.13.1
It turns out ESLint 3.x works only with Node.js >= 4, which breaks Travis
CI builds:

  https://travis-ci.org/pegjs/pegjs/builds/149205616
2016-08-02 16:57:47 +02:00
David Majda 9446e07f6a Use uglify-js 2.7.0 2016-08-02 15:10:48 +02:00
David Majda a8d01e1834 Use eslint 3.2.0
Note the update required disabling the "no-control-regex" rule, which
started reporting following errors:

  /Users/dmajda/Programming/PEG.js/pegjs/lib/compiler/js.js
    22:16  error  Unexpected control character in regular expression  no-control-regex
    27:16  error  Unexpected control character in regular expression  no-control-regex
    28:16  error  Unexpected control character in regular expression  no-control-regex
    51:16  error  Unexpected control character in regular expression  no-control-regex
    52:16  error  Unexpected control character in regular expression  no-control-regex

  /Users/dmajda/Programming/PEG.js/pegjs/lib/parser.js
    76:16  error  Unexpected control character in regular expression  no-control-regex
    77:16  error  Unexpected control character in regular expression  no-control-regex
    90:16  error  Unexpected control character in regular expression  no-control-regex
    91:16  error  Unexpected control character in regular expression  no-control-regex
2016-08-02 15:02:49 +02:00
David Majda e6c3e7180f Use browserify 13.1.0 2016-08-01 15:41:32 +02:00