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

mbed-mesh-api introduces too many dependencies #14

Open
bremoran opened this issue Jul 28, 2015 · 4 comments
Open

mbed-mesh-api introduces too many dependencies #14

bremoran opened this issue Jul 28, 2015 · 4 comments
Assignees

Comments

@bremoran
Copy link
Contributor

The socket abstraction layer should not introduce any dependencies which are not critical to implementing a socket API. Currently, mbed-net-socket-abstract has a target dependency on mbed-mesh-api, which introduces this tree:

mbed-mesh-api 0.0.2 yotta_modules/mbed-mesh-api
      ┣─ mbed-6lowpan 0.0.13 yotta_modules/mbed-6lowpan
      ┃ ┣─ mbed-client-c 0.1.6 yotta_modules/mbed-client-c
      ┃ ┣─ coap-service 0.0.6 yotta_modules/coap-service
      ┃ ┣─ mbed-6lowpan-eventloop 0.0.11 yotta_modules/mbed-6lowpan-eventloop
      ┃ ┃ ┗─ mbed-6lowpan-eventloop-adaptor 0.0.14 yotta_modules/mbed-6lowpan-eventloop-adaptor
      ┃ ┣─ mbed-client-randlib 0.0.2 yotta_modules/mbed-client-randlib
      ┃ ┣─ libx509-v3 0.0.2 yotta_modules/libx509-v3
      ┃ ┗─ mbed-client-ecc 0.0.2 yotta_modules/mbed-client-ecc
      ┣─ mbed-6lowpan-adaptor 0.1.0 yotta_modules/mbed-6lowpan-adaptor
      ┗─ mbed-client-libservice 3.0.1 yotta_modules/mbed-client-libservice

The socket abstraction layer should not require coap, mbed-client, ecc support, libx509, etc.

Maybe mbed-6lowpan-adaptor would be a better target dependency for mbed-net-socket-abstract.

@artokin
Copy link

artokin commented Jul 29, 2015

@bremoran , yesterday I published mbed-mesh-api v0.0.3 that contains dependencies to mbed-core and mbed-6lowpan-adaptor. Please check if the new version is better.

@artokin
Copy link

artokin commented Jul 29, 2015

Another option would be to remove mbed-mesh-api dependency from mbed-net-socket-abstract and let applications have dependency to mbed-mesh-api directly. At the moment application need to use the mbed-mesh-api for connecting to mesh network.

@bremoran
Copy link
Contributor Author

Since the mbed-mesh-api is not strictly necessary for implementing the socket API, I think it should be removed from the dependency tree of mbed-net-socket-abstract. Likewise, I think it would be a good idea to remove mbed-net-lwip-eth from the dependency tree of mbed-net-lwip. I think it belongs somewhere else, possibly under mbed-net-interface (as yet uncreated), or similar.

@rainierwolfcastle
Copy link

ARM Internal Ref: IOTSFW-991

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants