Skip to content
This repository has been archived by the owner on Oct 1, 2019. It is now read-only.

Unsupported node types #24

Closed
3 tasks
j-f1 opened this issue Jan 28, 2018 · 2 comments
Closed
3 tasks

Unsupported node types #24

j-f1 opened this issue Jan 28, 2018 · 2 comments

Comments

@j-f1
Copy link
Member

j-f1 commented Jan 28, 2018

I did a test run of this on the SmokeDetector codebase, and found a few nodes that aren’t yet supported:

  • GeneratorExp: el for el in an_iterable
  • Set: { "foo", "bar", "baz" }
  • YieldFrom: yield from asyncio.sleep(interval)

Also, I got this error when running Prettier on test/test_chatcommunicate.py:

Traceback (most recent call last):
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 122, in <module>
    main()
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 117, in main
    json = export_json(tree, True)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 9, in export_json
    dict = export_dict(atok)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 25, in export_dict
    return DictExportVisitor(atok).visit(atok.tree)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 37, in visit
    return meth(node)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 52, in default_visit
    args[field] = meth(getattr(node, field))
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in default_visit_field
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in <listcomp>
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 37, in visit
    return meth(node)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 52, in default_visit
    args[field] = meth(getattr(node, field))
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in default_visit_field
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in <listcomp>
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 37, in visit
    return meth(node)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 52, in default_visit
    args[field] = meth(getattr(node, field))
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in default_visit_field
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in <listcomp>
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 37, in visit
    return meth(node)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 52, in default_visit
    args[field] = meth(getattr(node, field))
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in default_visit_field
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 75, in <listcomp>
    return [self.visit(x) for x in val]
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 37, in visit
    return meth(node)
  File ".../SmokeDetector/node_modules/@prettier/plugin-python/vendor/python/astexport.py", line 46, in default_visit
    for field in node._fields:
AttributeError: str object has no attribute _fields

    at parseText (.../SmokeDetector/node_modules/@prettier/plugin-python/src/parser.js:18:11)
    at Object.parse (.../SmokeDetector/node_modules/@prettier/plugin-python/src/parser.js:26:27)
    at Object.parse$4 [as parse] (.../SmokeDetector/node_modules/prettier/index.js:24274:19)
    at formatWithCursor (.../SmokeDetector/node_modules/prettier/index.js:33650:27)
    at format (.../SmokeDetector/node_modules/prettier/index.js:33695:10)
    at Object.format (.../SmokeDetector/node_modules/prettier/index.js:33945:12)
    at Object.diagnose (.../SmokeDetector/node_modules/prettylint/lib/diagnose.js:14:30)
    at Object.<anonymous> (.../SmokeDetector/node_modules/prettylint/lib/lint.js:33:37)
    at step (.../SmokeDetector/node_modules/tslib/tslib.js:133:27)
    at Object.next (.../SmokeDetector/node_modules/tslib/tslib.js:114:57)
    at fulfilled (.../SmokeDetector/node_modules/tslib/tslib.js:104:62)
    at <anonymous>  prettier/prettier
@FuegoFro
Copy link
Collaborator

It looks like there's also:

  • DictComp: {k: v for k, v in my_pairs}
  • SetComp: {my_func(item) for item in items}
  • Yield: yield some_value

@FuegoFro
Copy link
Collaborator

FuegoFro commented Mar 1, 2018

I think these node types are all handled now :) Would you be okay with closing this out (and maybe opening a separate issue for the crash you mentioned, if it's still occurring)?

@j-f1 j-f1 closed this as completed Mar 1, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants