question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

The future of Analysis

See original GitHub issue

Tagging @fmagin.

Our current system of analyses being classes which are silently partially initialized is a huge hack. We should have something at least a little bit nicer.

My suggestion is that analyses can be any callable, and the versions available on project.analyses are partial applications which apply project and kb kwargs. This enables all the same hackability of the current system while enabling running analyses outside of the project.analyses hub for purposes of type annotation, or simply just preferring the less-magic paradigm.

Issue Analytics

  • State:open
  • Created a year ago
  • Comments:6 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
fmagincommented, May 27, 2022

That seems kinda limiting for future features. I’d push for having a more rigid interface and some extra methods/properties that an analysis is expected to provide. I am currently writing a few analyses for Ghidra, and their interface requires e.g. a function to check if you can even sensible analyze the binary, their Analysis class has a priority system so you can define the order and “stage” of the analysis.

That analysis order is something I am annoyed with our internal analyses (which aren’t angr analyses, but IMO should be): There is an implicit requirement tree between them, but at best there is some check at the start of the constructor, typically they just crash if some expected data was not available. Ghidra has some number based system with stages https://ghidra.re/ghidra_docs/api/ghidra/app/services/AnalysisPriority.html But there could also be a system where you can explicitly specify another Analysis that has to run first, with an option to resolve this dependency tree automatically when calling an Analysis that has more complex requirements.

0reactions
github-actions[bot]commented, Sep 25, 2022

This issue has been marked as stale because it has no recent activity. Please comment or add the pinned tag to prevent this issue from being closed.

Read more comments on GitHub >

github_iconTop Results From Across the Web

The Future of Analysis
The field of intelligence analysis is at an inflection point. Behind us, several decades of accomplishment and innovation, chastened at times by.
Read more >
The future of intelligence analysis
The future of intelligence analysis. A task-level view of the impact of artificial intelligence on intel analysis. Kwasi Mitchell, Joe Mariani, Adam Routh, ......
Read more >
Analysis of the Future: The Delphi Method
The Delphi method in its simplest form solicits the opinions of experts through a series of carefully designed questionnaires interspersed with information and ......
Read more >
Global Trends 2040
This edition of Global Trends constructs its analysis of the future in several stages. First, we examine structural forces in demographics, environment, ...
Read more >
The Future of Data Analysis
THE FUTURE OF DATA ANALYSIS'. BY JOHN W. TuKEY. Princeton University and BeU Telephone Laboratories. I. General Considerations. 2. 1. Introduction.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found