RFC: rpc-autogen: module for haskell bindings#1407
Open
eric-ch wants to merge 1 commit intoOpenXT:masterfrom
Open
RFC: rpc-autogen: module for haskell bindings#1407eric-ch wants to merge 1 commit intoOpenXT:masterfrom
eric-ch wants to merge 1 commit intoOpenXT:masterfrom
Conversation
Provide generated Haskell bindings as a cabal module[1] The bindings were generated and versioned using dbus-gen[2], then are provided by the rpc-autogen recipe. This makes it easier to track changes across versions and avoid depending on generated sources in-tree for the haskell components. The goal of this is to provide a reasonably easy to modify alternative to rpcgen that could still with low efforts target different languages. In this current implementation, only haskell is generated by dbus-gen, the other generated bindings (for OCaml, C and JavaScript) still rely on rpcgen. Signed-off-by: Eric Chanudet <chanudete@ainfosec.com> [1] https://github.com/eric-ch/dbus-gen-bindings [2] https://github.com/eric-ch/dbus-gen/tree/haskell-bindings
Member
|
Big +1 on the approach. While the bindings generation may not be a significant contributor to full build time, every bit helps. This is also is very useful for development, in particular external development. |
Contributor
Author
|
Some clarifications:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Provide generated Haskell bindings as a cabal module. The bindings were generated and versioned using dbus-gen, then are provided by the rpc-autogen recipe.
This makes it easier to track changes across versions and avoid depending on generated sources in-tree for the haskell components.
The goal of this is to provide a reasonably easy to modify alternative to rpcgen that could still, with low efforts, target different languages.
To avoid changes in existing Haskell projects the module names have been preserved. Changes to the cabal configuration is still necessary though. The GHC 6 dependent projects being the main consumer of the generated bindings, these were targeted first. As, given the age of the runtime, they are the most likely to become a target for replacement.
In this current implementation, only haskell bindings are generated by dbus-gen, the other generated bindings (for OCaml, C and JavaScript) still rely on rpcgen.
Dependencies:
External dependencies: