-
Notifications
You must be signed in to change notification settings - Fork 0
Error generating CPG #51
Comments
@anonymitycoder2 joern project has some known bugs and performance issues with c/c++. Can you use our forks atom and chen instead? https://github.com/AppThreat/atom (comparable to joern cli v2+)
To query the atom you can use chen (fork of joern with enhancements) https://github.com/AppThreat/chen
Let me know how it goes. |
Thank you for your reply |
atom has dedicated commands for slices generation. https://github.com/AppThreat/atom/tree/main#create-usages-slice-for-a-java-project The repotests in atom have invocations for other languages. |
atom has dedicated commands for slices generation. https://github.com/AppThreat/atom/tree/main#create-usages-slice-for-a-java-project The repotests in atom have invocations for other languages. |
@anonymitycoder2, yes, slices are a single file for all source code. I didn't know joern was generating one file per source for slicing. If you mean |
It would be great if you could do this. Thank you for your patient reply. It really helped me a lot. |
@anonymitycoder2 could you kindly review the below PR, which adds export to graphml? atom -o app.atom -l java --export-atom --export-dir <export dir> <path to application> |
Thank you for your reply,I ran the program according to the PR you provided, but the graphml file was not successfully exported. |
@anonymitycoder2, interesting! Please share the full exception trace since I want to know which line is looking for Python, which must remain an optional dependency for non-ml users. |
@anonymitycoder2 Could you retest with the latest from that branch? |
@anonymitycoder2, thank you for trying the branch. I have pushed an update to atom:
Regarding support for all individual representations, we do not have any enterprise users with such a request, so it is not a priority yet. We also aim to keep atom lightweight for easy CI/CD use cases. Hope this helps. |
Thanks for your help, it really helped me a lot. If there is a chance in the future, I will introduce atoms in my paper to help promote it. Thanks again from the bottom of my heart |
@anonymitycoder2, you used the magic word |
@anonymitycoder2 atom 1.8.0 was released with three individual representations exported automatically in dot format. AST, CDG, CFG. Four files would be created per method in total, with the 4th comparable to CPG since it would include all representations, including DDG and PDG. I hope this helps. |
Thank you so much! This is really helpful for my work,I used the latest version of atom to generate a comprehensive dot file and dot files of ast, cfg, dfg. However, this comprehensive dot file is different from the cpg14 exported by joern. Atom seems to have more additional information about edges and nodes. The cpg14 type code graph structure exported by joern is very popular in the field of code representation learning, and it is what I want to generate. Thank you again for your help, atom is excellent, I will recommend it to my friends who are engaged in related research |
Thanks, @anonymitycoder2, for your kind words! As you figured, we call atom version 2 since we need that additional information to perform type inference and package URL inference. Below are a couple of screenshots that show these inferences in action. Not only do we know the type, but we even know the precise dependency they must have come from for a few languages. I am looking forward to the new generation of research unlocked by atom and chen. |
Why does the progress stop at 20% when I generate a CPG?
The text was updated successfully, but these errors were encountered: