- Feb 27, ‘24:
1) Discussed with Toby the changes I need to make for the GitHub Action.
2) Trying to find a way to include the link/URL to an artifact generated from a GitHub Actions workflow. Investigated this related thread on the upload-artifact action - Currently trying out an option mentioned therein (‘options’ referring to scripts and software that people created, can be found linked towards the end of that GitHub thread) - Nightly (+ addition of the run ID to generate the link)
This is still a WIP, but I’m prioritizing A) Getting more tests included before this, then B) Moving the action to operate under my data.table fork.
- Feb 28, ‘24:
1) Working on including more tests - Testing the addition of another test case today. The ones that Doris mentioned in her repository involve using atime_versions
(as opposed to the one here), thus the current version of defined tests includes this change.
Workflow with that change resulted in:
Error: Error in str2lang(s): parsing result not of length one, but 0
Calls: <Anonymous> ... do.call -> <Anonymous> -> do.call -> <Anonymous> -> str2lang
Execution halted
Error: Process completed with exit code 1.
The probable reason for this is the code involving atime_versions
doesn’t use quote
like here.
Currently checking if the code can be run in the old format (without atime_versions
or the commit IDs, as Doris mentioned that they were not working for her too). Seems like the arguments were invalid in my initial change:
Error in sample.int(length(x), size, replace, prob) :
invalid 'size' argument
Calls: <Anonymous> ... eval -> data.table -> sample -> sample -> sample.int
Execution halted
Error: Process completed with exit code 1.
Fixed them and I got the second test case to work. Here is a pull request showcasing the resultant plot.
PS: The prompt here is that atime::atime_pkg
is being run on my data.table
fork with the test.list
variable defined therein (or more specifically in inst/atime/tests.R).
2) Changes to the public GitHub action wrt 1) is that from now on I’ll be just incorporating the plot with all the combined tests to be commented on the PR thread. (too much visual information on a comment if I were to include plots of all the individual test cases)
3) Discussed progress and helped Doris to fix her git issue of missing references for remote:
- Tried
git config --global credential.helper wincred
followed by a git command to reset credentials (since keys were invalid), and then showed her the way to push changes she made from another git repository in her filesystem.
4) Read some of the older posts on Raft. (Noticed a very minor typo, sent a PR)
- Feb 29, ‘24:
1) I revisited the threads on GitHub I was going through on Tuesday evening to find a way to programmatically retrieve a link to an artifact generated by a GitHub Action within the workflow that generates it. Upon further reading, I came across the fact that upload-artifact v4 paves the way for that.
2) Created some issues:
i) One on my repository for details wrt artifact generation and strategy in using with my Action.
ii) One on atime
to have an example of a working test case with three commit IDs (Before, Regression, Fix).
3) The changes I made to my GitHub Action today make it now possible for the atime-generated results to be downloaded directly. For example, check this PR.
4) Working on enabling the Action to deal with the repository that it’s being used in without the need to explicitly clone it. This, along with 2 i) is a WIP atm.
- Mar 1, ‘24:
1) Refactored my action to work inside another repository with subtle changes required from one R repository to another.
2) Fixed the issue with unidentified references to branch names and inability to use git switch
after changing to checkout@v4
plus specifying the safe directory exception with appropriate authentication.
3) Encountered a new issue based on corrupted package databases. I was able to avoid it in the end by switching the setup of the atime
step to my version.
4) Did some final changes (like reconfiguration of the path to access the plot; then the target folder for uploading as an artifact) and got my action to work as intended inside my fork of data.table
. For example, check this comment.