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

Add Dart to executors #65

Merged
merged 21 commits into from
Aug 7, 2023
Merged

Add Dart to executors #65

merged 21 commits into from
Aug 7, 2023

Conversation

mosuem
Copy link
Contributor

@mosuem mosuem commented May 17, 2023

Just testing collators on the web for now; as ICU4X integration progresses native tests will be possible.

@CLAassistant
Copy link

CLAassistant commented May 17, 2023

CLA assistant check
All committers have signed the CLA.

generateDataAndRun.sh Outdated Show resolved Hide resolved
testdriver/testplan.py Outdated Show resolved Hide resolved
Copy link
Collaborator

@sven-oly sven-oly left a comment

Choose a reason for hiding this comment

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

A few comments and notes. I don't know enough about Dart to review in more detail.

@@ -0,0 +1,191 @@
/* Main execution program for Data Driven Test of ICU / Unicode / CLDR
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is just a copy of the node executor, I don't know what the smartest way is to not duplicate the file. Copying at runtime seems ugly...

Copy link
Collaborator

Choose a reason for hiding this comment

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

OK for now, but copy will be a problem when the node version gets out of sync with Dart implementation.

@mosuem
Copy link
Contributor Author

mosuem commented Jun 19, 2023

@echeran @sven-oly I updated the dart_web executor to use node, works nicely!

@echeran
Copy link
Collaborator

echeran commented Jun 22, 2023

@mosuem The PR looks fine in theory, so if we can get this working, we can merge. Note: I don't know yet if this will update our dashboard HTML templates to include the Dart {Web, Native} test results in the dashboards, but I think that is a good for a followup PR, not here.

I checked out the PR (gh pr checkout 65) and ran it locally (./generateDataAndRun.sh), and I got the following output:

...
Resolving dependencies... 
The current Dart SDK version is 3.0.5.

Because dart requires SDK version ^3.1.0-39.0.dev, version solving failed.

Can you help resolve this?

I don't know if we can count on Dart being installed on the Github Actions CI's runner VMs by default. Or, at least, I don't currently know how to find out which things get pre-installed.

The safest way is to use the Github Action by the Dart Lang team that does the setup of Dart within a CI workflow.

I think what you need to do is edit .github/worfklows/e2e.yml, find the job that runs the command ./generateDataAndRun.sh, and follow the Dart Github Action docs to add a step that looks something like

...
      - uses: dart-lang/setup-dart@v1
        with:
          sdk: '3.0.5'
...

@mosuem
Copy link
Contributor Author

mosuem commented Jun 29, 2023

@echeran I updated the Dart version, and added it to the Github CI pinned by a hash (see https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-third-party-actions).

@mosuem mosuem requested a review from sven-oly July 4, 2023 22:13
Copy link
Collaborator

@sven-oly sven-oly left a comment

Choose a reason for hiding this comment

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

With the exception of copying the executor.js file, this looks OK to me.

@mosuem
Copy link
Contributor Author

mosuem commented Jul 12, 2023

Any idea on how to better fix this, especially until all test_types have been implemented in Dart? I don't have write access, so I can't merge the PR.

@sven-oly
Copy link
Collaborator

Hey, please resolve the conflict with testdriver/datasets.py
and then I can merge this!

@mosuem
Copy link
Contributor Author

mosuem commented Jul 20, 2023

@sven-oly Could you approve the running of workflows?

@sven-oly
Copy link
Collaborator

Shane or Elango, please help with the workflow. I don't see a way for me to approve as Mortiz requested

@sffc
Copy link
Member

sffc commented Jul 21, 2023

I ran the CI!

@echeran @sven-oly what are the next steps before we can merge this?

@sven-oly sven-oly merged commit 1f8bcd8 into unicode-org:main Aug 7, 2023
@mosuem mosuem deleted the dartExecutors branch August 8, 2023 09:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants