Giter VIP home page Giter VIP logo

Comments (8)

holzensp avatar holzensp commented on May 17, 2024 2

We have now released initial Bazel integration, through rules_pkl. I'm not sure what this Issue asks for specifically (Bazel docs before integration). We do not yet have support for gazelle, because it (and Bazel) doesn't like how Pkl does multi-file output.

The generated Bazel docs don't yet integrate with our website build automation (because they render markdown instead of asciidoc). This is on my TODO list. When this is done, the documentation will be part of https://pkl-lang.org

from pkl.

silicon-ninja avatar silicon-ninja commented on May 17, 2024 1

Not yet, I am trying to write the rules. Maybe this week.

from pkl.

silicon-ninja avatar silicon-ninja commented on May 17, 2024

How do you want it to look like @udf2457 ?

from pkl.

udf2457 avatar udf2457 commented on May 17, 2024

@silicon-ninja The way I've typically seen it done at other projects is they create an MVP skeleton example repo which has the bare minimum, i.e.:

  • BUILD
  • MODULE.bazel
  • Other project-specific files/folders necessary to demonstrate the functionality (e.g. in your case pkl files located in a sub-folder)

The BUILD would then show the minimum configuration for integration with gazelle (becasue most real-world projects use gazelle). The bzlmod integration itself is inherent from using MODULE.bazel instead of the legacy WORKSPACE.bazel.

So gazelle is used to automatically locate project-specific files (e.g. pkl in your case) and then automatically create a local BUILD file in its immediate directory. Its very popular with e.g. go monorepos, but also other applications (e.g. building gRPC stubs from protobuf files).

Hope this helps clarify ?

from pkl.

silicon-ninja avatar silicon-ninja commented on May 17, 2024

Well, @udf2457. I've used gazelle before it's great but not yet perfect for anything except rules_go in production as we have a monorepo. I like your idea of using gazelle for BUILD file generation. Did you have a look at gazelle directives. This would eliminate using gazelle directives completely if bazel team were to implement this. I think right now team at apple thought of it more like your typical config files that are used for the systems (primarily backend). To validate and use it with ease. Thanks.

from pkl.

dieu avatar dieu commented on May 17, 2024

@silicon-ninja, does PKL have integration with Bazel?

from pkl.

dieu avatar dieu commented on May 17, 2024

@silicon-ninja Nice, looking forward to trying it out.

from pkl.

udf2457 avatar udf2457 commented on May 17, 2024

I'm not sure what this Issue asks for specifically (Bazel docs before integration)

I thought Apple-peeps were supposed to be geniuses and capable of time travel (docs before integration) @holzensp
😛

In all honesty, the serious answer is you can assume "this issue asks for" a feature request. I will openly admit I could have worded it better / posted it in a better place / whatever.

Nonetheless, thank you for the efforts in getting rules_pkl out, I look forward to trying it out, and of course I will keep my fingers crossed for eventual gazelle integration (followed by docs 😉).

from pkl.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.