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

Refactor deconstruct to use less protobuf #4298

Merged
merged 10 commits into from
May 22, 2024
Merged

Refactor deconstruct to use less protobuf #4298

merged 10 commits into from
May 22, 2024

Conversation

glennhickey
Copy link
Contributor

Changelog Entry

To be copied to the draft changelog by merger:

  • vg deconstruct now does path-based (formerly -e) deconstruction by default. Old default behaviour of exhaustively processing (tiny) sites is deprecated.
  • if -a is not used, vg deconstruct will recursive on child snarls of snarls it failed to process (like vg call) - functionality that was, I think, dropped a while back.

Description

This refactor

  • makes the code a bit more modular
  • cuts out everything protobuf except for snarl enumeration. which is now confined to a little function. so upgrading to the new distance-index-based format is now pretty trivial, but probably doesn't make sense until other tools like call are ready...
  • the exhaustive traversal support complicates the logic a bunch and is very proto dependent and I don't think used in practice, so I dropped it. if we really need something like this, I think a better approach would be going through some kind of path cover then doing a path deconstruction.

The whole point of doing this is to add better nesting support, but my branch for that is a mess so I'm breaking it into smaller PRs...

@glennhickey glennhickey merged commit f54e633 into master May 22, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants