-
Notifications
You must be signed in to change notification settings - Fork 88
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
Gh pages update #86
Gh pages update #86
Conversation
- Update: Point redirect to `estools` - Lint: HTML - Build: Rollup esquery (now as dep.) and of espree (changed from esprima) - Styling: Add minimum height to textarea - Add `.editorconfig` and .eslintrc.js (tweaking to gh-pages needs) - Merge npmrc, travis.yml, and README ---- Merge branch 'espree' into gh-pages * espree: (63 commits) - Remove deprecated `preferGlobal`: https://docs.npmjs.com/files/package.json#preferglobal - Testing: Switch to more currently maintained espree - Breaking change: To ensure passing `nyc`, bump to Node 8 - Fix: Multiple leading decimals were not being handled correctly (produced inner array followed by "." such that `21.` (e.g., at beginning of "21.35") would be procssed instead as `2,1.`) - Refactoring: Avoid unnecessary code to unescape `\\a` (`\a` has no special meaning) - Maintenance: Add pegjs as 2 sp. in `.editorconfig` - Testing: Expand to effective 100% coverage - Enhancement: Throw for unknown operator - Testing: Switch from jstestr to mocha - Testing: Get coverage for bad operator, class name, and selector type - Enhancement: Add ESM distribution pointed to by `module` - Refactoring: Switch to ESM internally - Build: Ensure `dist` files are bundled in npm - Update: pegjs (and refactor to handle the 0.8.0 change to return `null` for `?`) - npm: Add npm scripts in place of Makefile (and remove `parser.js` upon running the parser build) - npm: Simplify to reference binary without `node_modules` - Breaking change: Bump to Node 4.0 (required by estraverse) - Refactoring: remove now unneed Array.isArray polyfill - npm: Update estraverse dep. minor version and devDeps. - Linting (ESLint): Add `node_modules` and `dist` to ignore file and unignore `.eslintrc.js`; use "js" extension for comments; enforce `semi` rule; lint `parser.js` to catch any buggy generator issues - Linting (package.json): Add recommended fields (contributors, bugs, homepage); update repository URL - Refactoring: Fix broken or redundant HTML - Maintenance: Enforce 2 sp. for JSON in `.editorconfig` (per current `package.json`) - npm: Add build scripts (leading currently to Makefile) Add eslint setup (estools#80) Make :function matching more precise (estools#53) Fix global leak due to missing var declaration of l (estools#74) Version 1.1.0 prevent exception when encountering a node of unknown type (estools#78) chore: list 'has:' pseudo-class to README (estools#77) fix typos Version 1.0.1 Fixes estools#58: check attribute type before matching against a regexp (estools#62) Fix: add MetaProperty and TemplateLiteral to :expression class (estools#59) Add correct SPDX expression. Expand :has() tests ... # Conflicts: # .gitignore # .travis.yml # README.md # demo.html # esquery.js # package.json # testRunner.html # tests/queryAttribute.js # tests/queryComplex.js # tests/queryCompound.js # tests/queryField.js # tests/queryMatches.js # tests/queryNot.js # tests/queryPseudoChild.js # tests/querySubject.js # tests/queryType.js # tests/queryWildcard.js
Whenever you may be ready for a new npm release, this PR would just need to point to it in order to be ready from my perspective (there could be more linting, but there's always the risk the newer features aren't supported in some older browsers). |
@brettz9 Do you have any opinion on whether a major bump is warranted? On one hand, we've dropped support for some engines, but on the other hand, they were out of maintenance anyway. |
I think the most common practice from what I have seen is to make the major bump, even when the only change is due to EOL. If someone is still depending on an older Node version, they won't be disturbed by the changes. (There may sometimes inevitably be "breaking" changes when any fix is applied, but I think he semver "contract" is basically that nothing should break if the user was using the previous version as advertised) For projects which check for major updates (as I like to do), there is only the minor downside in having a little extra work of reviewing the reasons for the bump, but when the change log makes it clear at a glance that that is the only breaking change, I think this is part and parcel, with the downside negligible. The only real downside I see is that it doesn't get automatically applied for existing projects, but hopefully the larger projects using esquery like eslint will get informed of the bump (e.g., if its maintainers use the likes of Just my two cents... |
While ideally I think your work would be integrated into https://astexplorer.net/ as a befitting demo, I think it would be nice for the gh-pages branch to at least have a simple radio button to toggle the parser between babel-eslint, typescript-eslint, and esprima (and maybe espree since it comes with the devDep. eslint anyways) if that's ok with you. |
@brettz9 Thanks for getting this started. I merged with a few tweaks. You can check it out on the |
Builds on #81, #82, #83, #84, and #85. Fixes #79.Works, but awaiting a possible release for previous PRs, so can point to updated dependency in the demo.
estools
.editorconfig
and .eslintrc.js (tweaking to gh-pages needs)