Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change project data storage to something non-binary #45

Open
nyxxxie opened this issue Jun 14, 2017 · 1 comment
Open

Change project data storage to something non-binary #45

nyxxxie opened this issue Jun 14, 2017 · 1 comment

Comments

@nyxxxie
Copy link
Owner

nyxxxie commented Jun 14, 2017

Storing project data in a non-binary format (e.g. xml, json, etc) would allow for it to be friendly to version control software like git, enabling users to collaborate with other reverse engineers in their work.

Currently the project class stores all data in a sqlite database, which is great for performance and ease of query but is stored in a binary format that isn't friendly to git. I think an ideal solution would be to invent a project format that can be distributed as one compressed archive file and then decompressed into a collection of multiple files containing various pieces of data. Some of those files could be binary but serve as a caching mechanism and could be regenerated from info committed to version control.

The exact way this feature will be manifested will become apparent post-v1 when spade is usable and we have an idea how quickly the sqlite database expands.

@nyxxxie
Copy link
Owner Author

nyxxxie commented Jul 2, 2017

Tacking on to this idea for later, we should probably extract to a tmp directory outside of the cwd. We might also consider integrating git directly into the project metadata storage system and provide a wrapper over it in spade (might have to if we extract to a tmp directory).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant