Comments (13)
Iām running into this as well.
from jison.
xregexp should behave as expected again.
I'm looking into moving to 'scoped npm modules' so that I can get rid of the github#master references and still have a fast turn-around while developing.
from jison.
I just ran
npm install https://github.com/GerHobbelt/jison/archive/0.4.18-186.tar.gz
node_modules/jison-gho/lib/cli.js node_modules/jison-gho/examples/ansic.jison
on macOS 10.12.6 and still get
module.js:491
throw err;
^
Error: Cannot find module 'xregexp'
at Function.Module._resolveFilename (module.js:489:15)
at Function.Module._load (module.js:439:25)
at Module.require (module.js:517:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/ā¦/node_modules/jison-gho/lib/util/regexp-lexer.js:7:15)
at Module._compile (module.js:573:30)
at Object.Module._extensions..js (module.js:584:10)
at Module.load (module.js:507:32)
at tryModuleLoad (module.js:470:12)
at Function.Module._load (module.js:462:3)
from jison.
WARNING: work is underway to solve this, but be reminded that build 0.6.0-187 still hasn't been round-trip tested, so expect another release after that one before this can be said to be 'solved'.
from jison.
For those curious folks: 'round trip testing' means running this sequence with zero failures:
make superclean make prep make
which will clean the NPM node_modules/ stores, re-install the npm packages and then run all the builds and tests.
from jison.
Okay, I think I've got it nailed now.
Sorry for the trouble y'all had. Release 0.6.0-188 should not exhibit this problem anymore.
Notes on that release:
a few things have changed, though nothing major unless:
- you're an avid user of
%parse-params
in your grammar files: from 0.6.0-xxx forward all%parse-params
end up in theyy
shared context object, saving us quite a bit of parameter passing call overhead in both parser and lexer, or - you expect the
parseError()
APIthis
reference to point at theyy
context: that is not true any more:this
will reference the current parser or lexer instance (to be precise: the instance that invoked this particularparseError()
);yy
is available insideparseError()
via thehash
parameter already.
from jison.
@stefan-leye :
I saw you forked the repo; can you help me and confirm / deny that this issue is fixed in this release?
Do you observe other behaviour which might bother you? (e.g. #12)
Thanks!
from jison.
fixed in latest release 0.6.0-191; jison dependencies now use scoped packages where necessary (https://docs.npmjs.com/misc/scope) plus npm's package-lock.json
should really fix this issue as it stores the unique hash for every dependency as it has been installed on the machine which produces the release(s).
from jison.
@stefan-leye: ping? Can we confirm this fixed with -191 or later?
(FYI: I've switched to using scoped packages for the submodules so this type of problem should be gone or at least severely mitigated in the future.)
from jison.
@GerHobbelt ah sorry, for not replying. I switched to an older version of jison, that works for our project.
To avoid breaking thinks we update our dependencies on the start of a development cycle, only. So I cannot check the problem until the next development cycle starts (propably in November). Feel free to close the ticket, if you don't want to wait..
from jison.
Thanks for the info, I'll keep it open then until you get an opportunity to verify.
(Off-topic: I hope to have some more work done on jison by November -- fingers crossed š -- so it would be great to hear about your experience then. (the main issue now is documentation; others using this helps as a strong motivator to give that one a fresh shove in the gluteus maximus)
from jison.
@GerHobbelt finally tried it out. Everthing works fine :)
from jison.
Superb! š
I'm going to close this issue; if anything pops up, please create a new one and reference this one (or re-open this issue).
Enjoy!
from jison.
Related Issues (20)
- Generate lexer/parser in different programming language
- build problem: @gerhobbelt/recast should require @gerhobbelt/esprima
- Rename project, new identity.
- arrow notation barfs on comments HOT 8
- `lexer.conditions[K].rules` grows with each call to parse HOT 7
- Git version looks older than NPM HOT 4
- Question: jison-gho debugger HOT 1
- Do parsers share a global state? HOT 1
- Parser source produced by generate API is different from CLI output HOT 1
- suggestion: typescript compilable to WASM HOT 6
- make esprima errors more intelligible (caused by faults in user action code test-parse-passes during grammar compile)
- Add unit tests to directly verify feature stripper generating compiling-and-running output
- Doesn't seem to pick longest possible match HOT 1
- Using "?." and "??" JS operators in action code blocks ?
- TypeError: yylexer.mergeLocationInfo is not a function HOT 1
- Use sub part of the parser HOT 2
- How is possible to implement C-like pre-processor macros ?
- NPM warnings about vulnerabilities
- Can't parse postgresql grammar and missing error location HOT 2
- Decorator error when using `@` variables in actions
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jison.