Skip to content

Package management using Lingo #58

Description

@edwardalee

I'm attempting use Lingo and create a reusable library following the instructions in this PR. My work is in this library. I have (too many) questions:

  1. There is an mqtt-c in a separate lf-pkgs organization. Why a separate organization? I have no write permission in this organization, so I created an mqtt-c repo in lf-lang. Following this suggestion, I also created a pkgs repo in lf-lang with just one README file. It currently lists just this one library. Perhaps @vinzbarbuto could add his Python library here?
  2. What is the difference between [lib] and [[app]] in Lingo? Why does [[app]] have double brackets? It seems that without a [lib] in the file, Lingo does not recognize a library, even though there is a lib directory. But it seems to not matter what [lib] points to in its main property. What should it point to?
  3. Where should cmake files go in a library's directory tree? I've put them in src/include.
  4. The instructions suggest there is just one Main.lf in src. Usually there will be multiple examples.
  5. Why is [app.properties] a separate clause rather than just part of [[app]] in Lingo? Why is [app.properties] required? The examples show it setting fast = false, but this is a default property, so it seems unnecessary.
  6. Why does lingo clean not remove the build directory? Also, perhaps it should remove the lfc-generated directories, bin, src-gen, fed-get, and
  7. lingo build does not compile the generated code. It has no-compile: true. Why?
  8. lingo build puts executables (though only for federated programs because of the no-compile) in build/bin. Shouldn't these go into bin to behave like lfc?
  9. What is the lingo.lock file for? Should this me in a .gitignore?

Activity

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

Metadata

Metadata

Labels

questionFurther information is requested

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions