limdor / bazel-examples Goto Github PK
View Code? Open in Web Editor NEWThe goal is to have several examples including multi language projects using Bazel build system
The goal is to have several examples including multi language projects using Bazel build system
Readme files are the base of this repository. With them the user will learn bazel.
Because of that it is important that they do not have problems like visualization issues.
To achieve that a linter for markdown files should be added and integrated with the CI.
This example should show a small Python application that contains a python test, a py_binary and an py_library and it shows how linting using pylint can be automatically done in bazel with an additional py test target.
It should take into consideration the files declared in the bazel target and not analyze everything in the folder.
baseline coverage is not supported in Bazel for C++. However it is not clear if it is fully working on Java or not.
This example would help to asses how is the bazel coverage in Bazel for Java and if the baseline coverage is supported or note.
Related Bazel issues:
bazelbuild/bazel#5716
bazelbuild/bazel#8324
Python examples with the default toolchain can be run locally but not in the CI. Probably there is some issue with the setup in the CI.
For each example there are several build commands that we want to show to the user. To make sure that these build commands are working all the time, they are executed in the CI adding them in the appveyor file.
The problem with this approach is that the commands are repeated, appearing once in the appveyor file and once in the Readme file.
The goal of this task is to have a script that parse the readme files to find bazel commands and these commands are executed in the CI.
Buildifier integration is not working on Windows in the CI and also not locally.
Could be that the Windows setup in CI is not done properly:
https://docs.bazel.build/versions/master/install-windows.html
Or could be that we are affected by one of the following bugs:
bazelbuild/buildtools#346
bazelbuild/buildtools#770
The examples in this repository want to show bazel best practices and recommended usages. One of the way to achieve this is doing linting in the BUILD files.
Bazel provides buildifier to achieve this goal.
In this task buildifier should be integrated in all examples and configured to run on the CI.
Material to consider:
https://www.youtube.com/watch?v=P51Rgcbxhyk
Open bazel tickets to consider:
bazelbuild/bazel#5716
Most of the examples use third party dependencies only for the buildifier rule.
In order to have it reproducible, we ping the version of rules_go, skylib, protobuf, and buildtools.
With Bzlmod it would be much simpler because then we only pin builtools and we check in the log file.
Unfortunately buildtools does not have yet a module. Once it is available, examples should be migrated.
bazelbuild/bazel-central-registry#380
The only example that should not be migrated is the one that shows how to deal with third party dependencies without Bzlmod
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.