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

the wheels on the bus go round and round #143

Closed

Conversation

schmidma
Copy link
Member

@schmidma schmidma commented Mar 13, 2023

Introduced Changes

Depends on #110

This PR introduces a major cleanup of the framework code generation.

  • The most obvious change is the framework intialization by a framework.toml file (crates/hulk/framework.toml). This file specifies all necessary information to build a auto generate a framework.
  • reduction of crates and merge of all autogenerated code to the crates/hulk crate.
  • The source analyzer was restructured to a central Cyclers hierarchy. This makes the entire structure much more readable and usable from external tools.
  • No bidirectional mappings etc.
  • Nearly all code generation was refactored to improve readability and use libary features of syn and quote.
  • Error handling is changed from color_eyre to custom thiserror derived types.
  • Circular dependencies are identified and lead to errors during compilation.
  • reduces compilation time by 7 seconds on my machine (little, but still...)

ToDo / Known Issues

  • test on the Nao
  • rerun if changed for build.rs

Ideas for Next Iterations (Not This PR)

  • Framework v2 #21
  • Ideas for next iteration #71
  • Errors have to be improved, when hitting them. I tried to test many of them, but definitely missed corner cases.
  • structuring by framework.toml allow for different framework configuration for different targets or run-configurations

How to Test

./pepsi run (for webots)
./pepsi upload xx (to test the nao)
./pepsi analyze xxxxxx to query framework information

@schmidma schmidma force-pushed the the-wheels-on-the-bus-go-round-and-round branch from 8fe38d9 to 557b471 Compare March 13, 2023 23:04
@knoellle
Copy link
Contributor

Moved to Post-GORE iteration as discussed today.

@schmidma
Copy link
Member Author

schmidma commented Apr 9, 2023

Superseded by #182

@schmidma schmidma closed this Apr 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants