Comments (10)
See also bblfsh/documentation#228, which was motivated by issues like this. I think we will need to make a clearer contract about what constitutes "acceptable" changes to the UAST structure as a result of bug fixes and natural evolution
from javascript-driver.
One more file: probably because of 💾
from javascript-driver.
I cannot reproduce this issue.
According to the comment on the Offset
field:
Offset is ... an absolute byte offset.
@EgorBu Maybe you are using the offset as a UTF8 character offset instead of a byte offset?
from javascript-driver.
OK, nevermind, I reproduced an issue. The native driver returns JS offsets in UTF8 runes, not bytes.
from javascript-driver.
@dennwc do you plan to fix it not only in the lastest v2 driver but for the latest v1 too?
yeah, we still use old drivers, sorry for that, but as soon as we have enough time we plan to switch to v2.
from javascript-driver.
I don't think we can backport it down to v1, but all new drivers should be able to run in v1 compatibility mode.
from javascript-driver.
oh, I did not know it is possible. Sorry for offtopic, but how can I enable it? From my experiments, I remember that pure driver replacement gives different UAST structure and it breaks ML team code.
from javascript-driver.
@dennwc what about v1 compatibility mode and my last question?
from javascript-driver.
@zurk Yeah, sorry, missed the notification.
I checked the code, v1 compatibility is still enabled in the new bblfshd
releases. So you can use new driver to get the good old Node
structure.
But, since we fixed lots of things in new drivers, you might see some slight changes in the AST. Those are mostly bug fixes, but I don't know if they are severe enough to break assumptions in your pipeline.
I would say you should give it a try and feel free to ping me if you find any differences that break the pipeline. Some might be fixable upstream.
from javascript-driver.
ok, thank you, @dennwc! I will check it.
from javascript-driver.
Related Issues (20)
- Consider using existing JS parsing tests for fixtures
- Parsing fails on valid JS file: extra + parenthesized/parenStart HOT 5
- UASTv2 has no tokens for JSX Nodes HOT 8
- Parsing fails on JSX + Flow file HOT 6
- panic: slice bounds out of range in uast/transformer HOT 5
- Parsing fails on valid JS: string literal with \0 HOT 4
- Better type annotations
- Operator Role missing position information HOT 5
- Missing token for StringLiteralTypeAnnotation HOT 3
- Error `message check: key "extra": field was not used: parenthesized` for v2.6.0 HOT 2
- JSXIdentifier: comments are not handled HOT 2
- ImportDeclaration: unhandled case
- transform failed: rune out of bounds: 2200447 [0, 2200314) HOT 8
- Better comment handling
- semantic: string literal escape sequence handing HOT 1
- Unhandled values **, **= HOT 1
- Unused fields on nodes
- Premature EOF
- Native driver crashed
- I/O timeout
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 javascript-driver.