8
.github/workflows/doc.yml
vendored
8
.github/workflows/doc.yml
vendored
@@ -21,7 +21,13 @@ jobs:
|
||||
run: npm install -g embedme
|
||||
|
||||
- name: Verify README.md embedded code
|
||||
run: npx embedme --verify README.md
|
||||
run: embedme --verify README.md
|
||||
|
||||
- name: Link Checker
|
||||
id: lychee
|
||||
uses: lycheeverse/lychee-action@v2
|
||||
with:
|
||||
args: README.md
|
||||
|
||||
doc_test:
|
||||
strategy:
|
||||
|
||||
@@ -401,11 +401,11 @@ TODO
|
||||
|
||||
## Development tools
|
||||
|
||||
* [pydump](chore/_xtool/pydump): It's the first program compiled by `llgo` (NOT `go`) in a production environment. It outputs symbol information (functions, variables, and constants) from a Python library in JSON format, preparing for the generation of corresponding packages in `llgo`.
|
||||
* [pydump](_xtool/pydump): It's the first program compiled by `llgo` (NOT `go`) in a production environment. It outputs symbol information (functions, variables, and constants) from a Python library in JSON format, preparing for the generation of corresponding packages in `llgo`.
|
||||
* [pysigfetch](https://github.com/goplus/hdq/tree/main/chore/pysigfetch): It generates symbol information by extracting information from Python's documentation site. This tool is not part of the `llgo` project, but we depend on it.
|
||||
* [llpyg](chore/llpyg): It is used to automatically convert Python libraries into Go packages that `llgo` can import. It depends on `pydump` and `pysigfetch` to accomplish the task.
|
||||
* [llgen](chore/llgen): It is used to compile Go packages into LLVM IR files (*.ll).
|
||||
* [ssadump](chore/ssadump): It is a Go SSA builder and interpreter.
|
||||
* [llpyg](compiler/chore/llpyg): It is used to automatically convert Python libraries into Go packages that `llgo` can import. It depends on `pydump` and `pysigfetch` to accomplish the task.
|
||||
* [llgen](compiler/chore/llgen): It is used to compile Go packages into LLVM IR files (*.ll).
|
||||
* [ssadump](compiler/chore/ssadump): It is a Go SSA builder and interpreter.
|
||||
|
||||
How do I generate these tools?
|
||||
|
||||
|
||||
@@ -213,7 +213,8 @@ func main() {
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
var testErr error
|
||||
for attempt := 0; attempt < 2; attempt++ {
|
||||
const maxAttempts = 4
|
||||
for attempt := 1; attempt <= maxAttempts; attempt++ {
|
||||
testErr = func() error {
|
||||
// Create a new test directory for each test case
|
||||
tmpDir := setupTestProject(t)
|
||||
@@ -285,8 +286,8 @@ func main() {
|
||||
break
|
||||
}
|
||||
|
||||
if attempt == 0 {
|
||||
t.Logf("Test failed on first attempt: %v. Retrying...", testErr)
|
||||
if attempt < maxAttempts {
|
||||
t.Logf("Test failed on attempt %v/%v: %v. Retrying...", testErr, attempt, maxAttempts)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user