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

Bazel build system #11337

Open
wants to merge 144 commits into
base: develop
Choose a base branch
from
Open

Bazel build system #11337

wants to merge 144 commits into from

Conversation

Frizi
Copy link
Contributor

@Frizi Frizi commented Oct 16, 2024

Pull Request Description

Created a bazel-based build system, implemented a whole GUI build target within it.

Currently this PR open in order to develop and test the github actions workflow.

Frizi and others added 30 commits April 19, 2024 14:39
Using latest JDK (after proper GraalVM integration) broke compilation of
Scala projects due to a problem with SecurityManager in `scala_rules`.
Workaround it by having custom toolchain.

Added example BUILD for mixed Scala/Java project with a small number of
dependencies.
Copy link

github-actions bot commented Dec 19, 2024

🧪 Storybook is successfully deployed!

📊 Dashboard:

@vitvakatu vitvakatu changed the title [WIP] Bazel build system Bazel build system Dec 20, 2024
@4e6
Copy link
Contributor

4e6 commented Dec 20, 2024

Please run the nightly workflow on this branch to make sure that it does not break the release https://github.com/enso-org/enso/actions/workflows/nightly.yml

GitHub
Enso Analytics is a self-service data prep and analysis platform designed for data teams. - Nightly Release · Workflow runs · enso-org/enso

@4e6
Copy link
Contributor

4e6 commented Dec 20, 2024

Otherwise, I'm ok with the change even though it edits the generated workflow files. I can update the workflow generation logic after the merge to unblock the progress on the Bazel build.

Copy link
Collaborator

@hubertp hubertp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving but please address the minor comments.
Pretty sure this is going to break something but we can address it on a per-need basis.


/** Company name, used as the copyright holder. */
export const COMPANY_NAME: string
export const COMPANY_NAME: string = 'New Byte Order sp. z o.o.'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that's correct. It should be

Suggested change
export const COMPANY_NAME: string = 'New Byte Order sp. z o.o.'
export const COMPANY_NAME: string = 'Enso International, Inc.'

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure about this. This PR doesn't actually change that value. I just combined index.js/index.d.ts into a single index.ts file. You can see previous assignment here:

export const COMPANY_NAME = 'New Byte Order sp. z o.o.'

@@ -0,0 +1,23 @@
# CAUTION: this file is intentionally NOT ignored. If you want to override those variables, create an `.env.local` file.
ENSO_IDE_AG_GRID_LICENSE_KEY=
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's gonna break a lot of local dev setups and should definitely be documented/announced appropriately

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The point of this is to be a safe fallback that you don't have to worry about.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will provide a temlate .env.local file on Discord when the PR lands.

@vitvakatu
Copy link
Contributor

I'm ok with the change even though it edits the generated workflow files.

@4e6 Oh, it is not supposed to do that. Running cargo run --package enso-build-ci-gen does no changes to the workflow files. Can you point me at these edits?

@4e6
Copy link
Contributor

4e6 commented Dec 20, 2024

Running cargo run --package enso-build-ci-gen does no changes

Sorry, I did not notice the changes in ci_gen.rs because the run script was moved under the build tools

@radeusgd
Copy link
Member

Does this change anything about our daily dev workflow or are the changes only relevant to CI?

@Frizi
Copy link
Contributor Author

Frizi commented Dec 20, 2024

Does this change anything about our daily dev workflow or are the changes only relevant to CI?

The changes are made specifically to not require any local setup changes yet. Things that are already fully ported to bazel right now run automatically. Everything else stays the same for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI: Clean build required CI runners will be cleaned before and after this PR is built. CI: No changelog needed Do not require a changelog entry for this PR.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants