Commit Graph
136 Commits
Author SHA1 Message Date
Ryan Curtin e4b4b3179e Fix CMake configuration for older Armadillo versions on CI (#3917)
* Ensure builds fail on any step.

* Work around CMake error.
2025-04-02 13:12:14 -04:00
Ryan Curtin e4fc09d9b8 Use catch -o option for junit output (#3904)
* Try using catch output option directly.

* Force a test to fail and give some output.

* It works!  Remove test that I broke.
2025-03-06 10:21:12 +01:00
Ryan Curtin e7f79637f6 First attempt at GHA CI instead of Azure Pipelines. (#3881)
* First attempt at GHA CI instead of Azure Pipelines.

* Could I have the matrix config wrong?

* Oh, oops, I was just looking in the wrong place for the GHA log.

* Disable Azure Pipelines Linux job.

* Fix some additional small syntax errors.

* Minor updates.

* Try to figure out what is happening with this test!

* Ha, actually remember the argument.

* Try to parse the CTest results.

* Don't build CLI programs for the debug-only mlpack_test build.

* Try to figure out why we don't have the CTest output file.

* Seems like maybe the test just needs more iterations.

* Fix directory for CTest output.

* Try running mlpack_test manually to see if we get better test output.

* Remove version numbers and other non-XML from XML output test file.

* Try to fix debug build.

* Filtering regex.

* Try to fail the build when the tests fail.

* Minor fixes and cleanups to run Python binding tests.

* Print test failure information in the actual build step.

* Update Julia testing strategy.

* Try to also get outputs from other test bindings.

* Fix Julia and Go testing blocks.

* Avoid random collisions that cause test failures.

* Try moving splitting into the trial loop.

* Try a different test reporter action.

* Install pytest for Python tests.

* Fix working directory for Julia test.

* Add test case that will fail to see what it looks like.

* Back to the old action, the new one I tried didn't do what I needed.

* Try a better way to print the test output.

* I still don't know how to mark the job failed yet.

* Maybe this stdout character works better.

* Try a forked test-summary action.

* Try to use distribution version of the modified action.

* Try to see if ccache is doing anything.

* Always run ccache stats step.

* Turn off PCH for ccache.

* Let's just see what it looks like with more error output.

* Clean up ccache configuration.

* Remove fake test because it seems like now I have the output working right.

* Try to reduce file size by not printing debug output into it.

* Try and refactor binding environment seutp into a composite local action.

* Try to fix some syntactical errors.

* Refactor test running into a separate composite action.

* Start trying to make the R build part of the main CI build.

* Oops, the include directory was in the wrong place.

* Try actually running R tests in the workflow too.

* Try to fix a few action issues.

* Try to work around libicu issue.

* Remove unnecessary option.

* Try to run OS X builds too.

* Try to fix matrix configuration.

* Revert "Try to fix matrix configuration."

This reverts commit 22a08d6dcd0d39de0a27f2df16e885bd68e18fda.

* Oops, maybe it was just an extra comma.

* Fix naming, and maybe we have to remove stringi first.

* Try to set Julia location correctly.

* Some fixes to the pipelines.

* Oops, I need root for that.

* Some additional fixes for jobs.

* Hopefully fix a few more builds.

* What, how did that get there?

* Don't use non-portable -i option with sed.

* Run R tests properly to get junit output.

* Oops, I have to redirect the output.

* Where is the output file?

* Try to fix macOS Python location.

* Oops, ROOTDIR is just not set.

* Try to store the name of the R package correctly.

* Oops, we need to specify pip.

* Try to get the right directory for the R package.

* Try to fix another round of issues.  I'm getting closer, at least.

* Okay, fine, let's do it the brutalistic way.

* What is actually happening with the Go binding tests?

* Try a different strategy for printing.

* Make some updates to prepare for Windows builds.

* What's the output of go test?

* Remove -Wall as per golang/go#6883.

* Try to fix duplicate library warning.

* Maybe I just specified the variable in an invalid way that didn't stick?

* This should fix the Go build.

* How did that cd go missing?

* Try to remove DEBUG output from the debug tests.

* Try to be more specific about the ccache key.

* Oops, incorrect variable name.

* Try to speed up the testing step.

* Try to run the Windows build through GHA.

* Try to install locally to deps/.

* Try to install and set up Windows dependencies correctly.

* Try to debug Windows build.

* Use bash for CMake configuration.

* Some additional path fixes.

* A couple fixes, but I don't have the Armadillo path right.

* Fix curl command.

* Maybe this is closer to the right path...

* Okay, look one directory deeper...

* Temporarily print STB compilation failure.

* Try to use absolute path for STB inclusion test.

* Oops, fix syntax.

* Try using REALPATH instead.

* Try just skipping the check...

* Try specifying BLAS and LAPACK locations directly.

* Try to figure out what is going on.

* Are we even using the correct FindArmadillo script?

* Try specifying the libraries manually.

* Try disabling the wrapper library.

* What version of CMake is this?

* Print the configuration.

* What if we specify these library locations?

* Double-check: this should fail.

* Okay, that actually surprisingly did not fail.

* Fix style issues.

* Compress into only one GHA file so all the jobs show up in the same place.

* Try to use absolute path to OpenBLAS.

* Try to fix path mangling on Windows.

* Fix STB path and no PS please.

* Try to fix output on Windows tests.

* Call test from the right place.

* Remove some unnecessary output.

* Try just running the test.

* What is going on, why doesn't the test run?

* Try just running the test with PowerShell.

* Maybe I have the filename wrong?

* PowerShell makes me angry...

* Right, .exe is the suffix...

* I love PowerShell!

* Okay, forget PowerShell.

* Can we even run the test?

* Is it a DLL search path issue?

* Okay, I think this might work for Windows.

* Fix porting of new r2u/p3m workflow (hopefully).

* Fix possibly incorrect variable name.

* Reduce the number of macOS jobs.

* Fix name of job.

* Remove potentially unnecessary step.

* Document CI changes and reorganize jobs for better viewing.

* Remove invalid link.  (Awesome that the link check build picked this up.)
2025-02-14 20:22:13 -05:00
Dirk Eddelbuettel 1cd888f5d0 Use r2u for Linux continuous integration (#3889) 2025-02-07 06:50:23 -06:00
Ryan CurtinandDirk Eddelbuettel 9fd815144d Add a cache to documentation check job (#3882)
* A first attempt at overhauling the documentation job with a cache.

* Actually remove files we don't need anymore.

* Fix output from local link checks to give it all at once.

* Add sparse matrices to the set of detected matrix types.

* Fix comparison condition.

* Make a pass to try and re-validate cached links that have not yet expired.

* Compile and link separately so that ccache can take effect.

* Be a little bit smarter about caching.

* Ensure libicu$SO is installed so 'stringi' can be used

Also collapse to remotes calls into one

* Fix style issues that cpplint 2 found (#3884)

* Try to workaround the libicu issue for now.

* Mention new dependency.

---------

Co-authored-by: Dirk Eddelbuettel <edd@debian.org>
2025-02-04 08:04:42 -05:00
Ryan Curtin 26e148e610 Update cache Github action to v4. (#3871) 2025-01-10 10:56:53 -06:00
Dirk Eddelbuettel 0fd8d6166b Switch remaining upload-artifact to v4* (#3867) 2025-01-07 15:06:51 -05:00
Ryan Curtin 43e6363b85 Attempt to work around OpenBLAS thread thrashing issue (#3860)
* Update documentation and CI configurations to work around OpenBLAS OpenMP thrashing issue.

* Update out-of-date link.

* Clarify the situation on Ubuntu and Debian.

* Clarify about pthread compilation.

* Add a bit about the OpenMP variant.

* Make the verbiage consistent everywhere.

* Try to see if the fix works on macOS too.

* Homebrew packages OpenBLAS 0.3.28, so no workaround is needed.
2024-12-29 10:29:29 -06:00
Dirk EddelbuettelandRyan Curtin 8549d15196 Add ccache detection and use (#3842)
* Add ccache detection and use

* Install ccache on Linux and OS X Azure Pipelines workers.

* Enable ccache in GitHub Actions and Azure

* Temporarily error on error, not warning, when checking R package

* Several small simplifications based on draft pr review

* Update .ci/linux-steps.yaml

Co-authored-by: Ryan Curtin <ryan@ratml.org>

* Call `make` without `VERBOSE=1`

* Update .ci/macos-steps.yaml

Co-authored-by: Ryan Curtin <ryan@ratml.org>

* Update .ci/linux-steps.yaml

Co-authored-by: Ryan Curtin <ryan@ratml.org>

---------

Co-authored-by: Ryan Curtin <ryan@ratml.org>
2024-12-06 12:03:27 -06:00
Ryan Curtin ede4a11b6f Fixes for CRAN. 2024-09-30 11:22:36 -04:00
Ryan Curtin c31b62688b Try bumping upload-artifact too. 2024-09-04 11:53:51 -04:00
dependabot[bot] 078b27e047 Bump actions/download-artifact from 2 to 4.1.7 in /.github/workflows
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 2 to 4.1.7.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v2...v4.1.7)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-03 21:03:48 +00:00
Ryan Curtin 8b93069bac Specify label for stale PRs. (#3775) 2024-07-25 07:43:30 +02:00
Ryan Curtin 0d0147eb4a Switch to using both actions from one repository. 2024-07-18 17:32:03 -04:00
Ryan Curtin e936cc9b70 Don't fully specify version number. 2024-07-15 09:20:02 -04:00
Ryan Curtin c669093fb5 Try to fix extra auto-approval and incorrect stickers detection. 2024-07-10 09:04:16 -04:00
Ryan Curtin b4512ef3c7 Round one of mlpack-bot action fixes. 2024-07-09 09:33:21 -04:00
James J Balamuta 735eb0c7d0 Merge pull request #3757 from rcurtin/stickers-action 2024-07-08 17:09:58 -07:00
James J Balamuta 6c71840ff3 Merge pull request #3756 from rcurtin/auto-approve-action 2024-07-08 17:09:32 -07:00
Ryan Curtin 7aaf85f82b Post about stickers as a Github action. 2024-07-08 14:13:25 -04:00
Ryan Curtin 5482085cac Use specific version. 2024-07-08 13:45:44 -04:00
Ryan Curtin 77635c304b No comma needed. 2024-07-08 13:41:13 -04:00
Ryan Curtin de9194cb0b Add auto-approval Github action. 2024-07-08 13:38:58 -04:00
Ryan Curtin 990ed83f58 Add stale configuration to replace mlpack-bot. 2024-07-08 13:33:42 -04:00
Arun 4dfbc142a8 Use GITHUB_OUTPUT envvar instead of set-output command as the latter is deprecated 2023-12-26 22:17:16 -08:00
Ryan Curtin 59de5bbf21 Take a guess that might fix the build issue. 2023-12-11 11:42:33 -05:00
Ryan Curtin e1bdbfc99f Fix path. 2023-01-23 03:23:51 -05:00
Ryan Curtin 5d293871ce Comment out pragmas in base64.hpp to fix CRAN warnings. 2023-01-13 14:37:24 -05:00
Ryan Curtin f81359be02 Try to bundle the upstream version of cereal directly. 2023-01-09 10:53:45 -05:00
Ryan Curtin 9a7fb8456e Attempt to install cereal on OS X runner. 2023-01-05 10:41:51 -05:00
Ryan Curtin f626041ff8 Install libcereal-dev (and thus rapidjson-dev) for the R CMD check call. 2022-12-29 10:24:07 -05:00
Ryan Curtin bad846b0d1 Maybe the indentation is wrong? 2022-12-03 11:01:53 -05:00
Ryan Curtin 2c89b98dd4 Attempt to fix invalid workflow. 2022-12-03 10:59:44 -05:00
Ryan Curtin 625c385713 How did that colon disappear? 2022-12-03 10:58:03 -05:00
Ryan Curtin 3b7640b582 Use a conditional to disable the job instead. 2022-12-03 10:56:08 -05:00
Ryan Curtin c2e47f80d7 Set default for BUILD_TESTS to OFF (#3316)
related issue: #3314
2022-11-21 05:08:20 +01:00
James J Balamuta e1e9fad1e3 Let's try with the old check routine 2022-10-25 13:58:49 -07:00
James J Balamuta 613a60a3b2 Remove path change. Should remain at mlpack/mlpack 2022-10-25 13:55:50 -07:00
James J Balamuta 8eedcdaa65 Try a different approach for testing package 2022-10-25 12:27:44 -07:00
James J Balamuta 1140ad4223 Add back in the custom dependency install 2022-10-25 10:23:02 -07:00
James J Balamuta 1c4485125b Move R Github Actions workflow to r-lib/actions@v2
The R GitHub action referencing r-lib/actions@master is stalled out. We need to migrate over to using r-lib/actions@v2. Within this PR, we attempt to address this issue. 

Discussion on matrix.
2022-10-25 10:05:41 -07:00
Alex f6a3087ddf Update main.yml
Signed-off-by: sashashura <93376818+sashashura@users.noreply.github.com>
2022-09-01 17:42:54 +01:00
Marcus Edel ef60a11be1 Merge branch 'master' into Pinned-Dependencies-GitHub 2022-06-20 15:55:44 -04:00
Ryan Curtin d83c3c035c Comment out catch workflow. 2022-06-17 18:27:57 -04:00
naveen a47e4359ba chore: Set permissions for GitHub actions
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
2022-06-14 00:30:10 +00:00
Ryan Curtin 5814bc6d2e Remove Boost from build scripts too. 2022-05-27 16:14:43 -04:00
shubham1206agra 1c1182301e force install pkgbuild 2022-04-28 12:46:18 +05:30
Ryan Curtin 4d0a8740f9 Merge pull request #3120 from zoq/boost-update-ci-fix
Fix Boost Update Action
2022-01-10 08:43:04 -05:00
Marcus Edel f00822b047 Install build dependencies. 2022-01-06 19:23:28 -05:00
shubham1206agra 7f9870f0db fixed macOS R env by downgrading macOS version
Changed macOS version detection regex logic
2022-01-04 23:08:03 +05:30