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

[WIP] obus 2.0 #23

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

[WIP] obus 2.0 #23

wants to merge 6 commits into from

Conversation

meadofpoetry
Copy link
Collaborator

This is an effort on making obus more simple and modular, as well as small and easy to maintain. See #17.

@meadofpoetry meadofpoetry requested a review from a user February 7, 2020 13:03
@meadofpoetry meadofpoetry requested review from a user and pmetzger and removed request for a user and pmetzger February 7, 2020 13:05
@meadofpoetry meadofpoetry added this to the 2.0.0 milestone Feb 7, 2020
@meadofpoetry meadofpoetry linked an issue Feb 7, 2020 that may be closed by this pull request
5 tasks
@pmetzger
Copy link
Member

This seems like a fairly extensive set of changes to files but not much of a change to the code. Can you summarize what you've done? I'm not sure I'm in a very good position to review it meaningfully.

@meadofpoetry
Copy link
Collaborator Author

@pmetzger It's not done yet. There are much more changes to the files indeed because the code is pretty good.

As I've mentioned in #17 , the main goal of 2.0.0 update is to get rid of IDL language and supplementary code (for example custom Enum/Flag types ) I've also got rid of PPX since it brings none value but impedes compiling obus with new/beta compilers.

The second main goal is to split obus into obus (library), obus-utils (introspection and interface generating utils) and various bindings.

So here is what is/shall be done in this PR:

  • remove IDL and PPX (done, basically that's what these commits above are about)
  • remove IDL-related code (in progress)
  • split packages (mostly done, not yet pushed)
  • move this documentation into mli files adding mld, I want a result similar to what is done in lwt (not done yet)
  • update the docs and add some tutorial pieces and references to D-Bus docs see this thread (not done yet)
  • apply ocamlformat to the codebase ;) (done, but not yet pushed)
  • maybe simplify some internal code using the opportunity given by the major release, like these pieces for example. But the code is overall pretty nice so I doubt I would make any significant changes (investigating)

I'm also thinking of dropping bindings for this release since they didn't age well in many places and need a thorough update due to changes in related APIs. Anyways they would be in separate packages so I could publish them later. What are you thinking about all of this?

@pmetzger
Copy link
Member

pmetzger commented Feb 16, 2020

What are you thinking about all of this?

It all seems quite reasonable so far. Again, though, I'm not a domain expert (and know nothing about who is using this code and what they expect from the old interfaces.)

@meadofpoetry
Copy link
Collaborator Author

and know nothing about who is using this code and what they expect from the old interfaces

AFAIK @talex5 uses it, so I'll ping him.

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.

Towards 2.0 release
2 participants