You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by "Ranxy (via GitHub)" <gi...@apache.org> on 2024/01/23 07:08:26 UTC

[I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Ranxy opened a new issue, #4057:
URL: https://github.com/apache/opendal/issues/4057

   During the release process, the `OCaml bindings` for Opendal encountered some issues, one of which is as follows. `Opam`, OCaml's package manager, builds from the project's root directory. This requires the presence of files such as `opendal.opam` and `dune-project` in the project's root directory. However, this is not suitable for the Opendal project because these files are specific to just one binding used by Opendal.
   
   A feasible solution currently is to replace `opendal = { path = "../../core" }` with a specific version in the `Cargo.toml` file located in `binding/ocaml`. This allows the binding to be built independently. Consequently, during the release, we can package this binding separately as `apache-opendal-$release_version-binding-ocaml-src.tar.gz`, thus circumventing issues with Opam builds.
   
   However, this approach introduces challenges, such as coordinating development between the binding and the core during ongoing development. I would like to hear everyone's thoughts on how to address these challenges.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1905462520

   > A feasible solution currently is to replace `opendal = { path = "../../core" }` with a specific version in the `Cargo.toml` file located in `binding/ocaml`.
   
   I'm ok with pinning opendal to specific version with specific version.
   
   I also believe that the OCaml binding should have its own versioning, independent of OpenDAL's. Although this implies we would need to release OCaml binding separately.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1951282515

   Hi, @Ranxy, will opam work if we provide a tar that contains both `core` and `bindings/ocaml`? Can `opam` works inside `bindings/ocaml` with `path = "../../core"`?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Ranxy (via GitHub)" <gi...@apache.org>.
Ranxy commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1951337357

   Wasmer seems to be separating the binding from the core, and only building the capi in the core step, while leaving the binding part to be done in an additional project. I'm not sure if this approach will affect opam's ability to build ocaml projects once we've merged them together. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1913612052

   I feel like we can release ocaml binding separately. For example:
   
   1. Release the ocaml binding source first.
   2. Submit PR to ocaml registry after ASF release approved.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Ranxy (via GitHub)" <gi...@apache.org>.
Ranxy commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1913613400

   Good idea, I think it's doable


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1951324827

   I plan to release file like 
   [apache-opendal-bindings-ocaml-0.0.0+core.0.44.2-src.tar.gz](https://github.com/apache/opendal/files/14322600/apache-opendal-bindings-ocaml-0.0.0%2Bcore.0.44.2-src.tar.gz)
   
   Maybe we can perform some actions inside `opam` to make it work?
   
   Like [libwasmer](https://github.com/ocaml/opam-repository/blob/8b5a0a33b8f5dece20002390a216098b22c080d5/packages/libwasmer/libwasmer.3.0.0~beta/opam#L36):
   
   ```opam
   build: [
   	["mkdir" ".cargo"]
   	["mv" "config.toml" ".cargo"]
   	["sh" "-c" "gunzip vendor.tar.gz && tar xf vendor.tar"]
   	[make "build-capi"]
   	[make "package-capi"]
   	["cp" "package/lib/libwasmer.dylib" "package/lib/libwasmer.so"] {os = "macos"}
   ]
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1919582921

   Hey @Ranxy, do you know any potential users for our OCaml binding?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] Resolution for Opam Build Issues in Opendal's OCaml Bindings during Release [opendal]

Posted by "Ranxy (via GitHub)" <gi...@apache.org>.
Ranxy commented on issue #4057:
URL: https://github.com/apache/opendal/issues/4057#issuecomment-1951318642

   > Hi, @Ranxy, will opam work if we provide a tar that contains both `core` and `bindings/ocaml`? Can `opam` works inside `bindings/ocaml` with `path = "../../core"`?
   
   As far as I know this doesn't seem to work unless we add `dune-project` and `opendal.opam` to the top level of the directory. Maybe there are other solutions we can ask in the OCaml community


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org