helloadhavan/github_issues huggingface dataset:
Repository: facebook/react
Pull request: [compiler][ez] Patch for JSX escape sequences in @babel/generator


Fall back to using JSXExpressionContainer for strings potentially containing escape sequences (a single backslash) to fix  https://github.com/facebook/react/issues/32123. This is an extension of https://github.com/facebook/react/pull/29079


Changed files:
filename: compiler/packages/babel-plugin-react-compiler/src/ReactiveScopes/CodegenReactiveFunction.ts
patch: @@ -2269,7 +2269,7 @@ function codegenInstructionValue(
  * https://en.wikipedia.org/wiki/List_of_Unicode_characters#Control_codes
  */
 const STRING_REQUIRES_EXPR_CONTAINER_PATTERN =
-  /[\u{0000}-\u{001F}\u{007F}\u{0080}-\u{FFFF}]|"/u;
+  /[\u{0000}-\u{001F}\u{007F}\u{0080}-\u{FFFF}]|"|\\/u;
 function codegenJsxAttribute(
   cx: Context,
   attribute: JsxAttribute,

filename: compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/jsx-preserve-escape-character.expect.md
patch: @@ -38,7 +38,7 @@ function MyApp() {
   const $ = _c(1);
   let t0;
   if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
-    t0 = <input pattern="\\w" />;
+    t0 = <input pattern={"\\w"} />;
     $[0] = t0;
   } else {
     t0 = $[0];

filename: compiler/packages/babel-plugin-react-compiler/src/__tests__/fixtures/compiler/repro-propagate-type-of-ternary-nested.expect.md
patch: @@ -42,15 +42,23 @@ function V0(t0) {
       <ComponentC cd="TxqUy" ce="oh`]uc" cf="Bdbo" c10={!V9.va && v11.v12}>
         gmhubcw
         {v1 === V3.V13 ? (
-          <c14 c15="L^]w\\\\T\\\\qrGmqrlQyrvBgf\\\\inuRdkEqwVPwixiriYGSZmKJf]E]RdT{N[WyVPiEJIbdFzvDohJV[BV`H[[K^xoy[HOGKDqVzUJ^h">
+          <c14
+            c15={
+              "L^]w\\\\T\\\\qrGmqrlQyrvBgf\\\\inuRdkEqwVPwixiriYGSZmKJf]E]RdT{N[WyVPiEJIbdFzvDohJV[BV`H[[K^xoy[HOGKDqVzUJ^h"
+            }
+          >
             iawyneijcgamsfgrrjyvhjrrqvzexxwenxqoknnilmfloafyvnvkqbssqnxnexqvtcpvjysaiovjxyqrorqskfph
           </c14>
         ) : v16.v17("pyorztRC]EJzVuP^e") ? (
-          <c14 c15="CRinMqvmOknWRAKERI]RBzB_LXGKQe{SUpoN[\\\\gL[`bLMOhvFqDVVMNOdY">
+          <c14
+            c15={
+              "CRinMqvmOknWRAKERI]RBzB_LXGKQe{SUpoN[\\\\gL[`bLMOhvFqDVVMNOdY"
+            }
+          >
             goprinbjmmjhfserfuqyluxcewpyjihektogc
           </c14>
         ) : (
-          <c14 c15="H\\\\\\\\GAcTc\\\\lfGMW[yHriCpvW`w]niSIKj\\\\kdgFI">
+          <c14 c15={"H\\\\\\\\GAcTc\\\\lfGMW[yHriCpvW`w]niSIKj\\\\kdgFI"}>
             yejarlvudihqdrdgpvahovggdnmgnueedxpbwbkdvvkdhqwrtoiual
           </c14>
         )}
Repository: vuejs/vue
Pull request: Use genAssignmentCode in chehckbox model web compiler

Fix #5398

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [x] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [ ] Other, please describe:

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [x] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [ ] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [ ] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: src/platforms/web/compiler/directives/model.js
patch: @@ -91,7 +91,7 @@ function genCheckboxModel (
           '$$i=_i($$a,$$v);' +
       `if($$c){$$i<0&&(${value}=$$a.concat($$v))}` +
       `else{$$i>-1&&(${value}=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}` +
-    `}else{${value}=$$c}`,
+    `}else{${genAssignmentCode(value, '$$c')}}`,
     null, true
   )
 }

filename: test/unit/features/directives/model-checkbox.spec.js
patch: @@ -256,4 +256,29 @@ describe('Directive v-model checkbox', () => {
       expect(vm.$el.checked).toBe(true)
     }).then(done)
   })
+
+  it('triggers a watcher when binding to an array value in a checkbox', done => {
+    const vm = new Vue({
+      data: {
+        test: {
+          thing: false,
+          arr: [true]
+        }
+      },
+      template: `
+        <div>
+          <input type="checkbox" v-model="test.arr[0]">
+          <span>{{ test.arr[0] }}</span>
+        </div>
+      `
+    }).$mount()
+    document.body.appendChild(vm.$el)
+    expect(vm.$el.children[0].checked).toBe(true)
+    expect(vm.$el.children[1].textContent).toBe('true')
+    vm.$el.children[0].click()
+    expect(vm.$el.children[0].checked).toBe(false)
+    waitForUpdate(() => {
+      expect(vm.$el.children[1].textContent).toBe('false')
+    }).then(done)
+  })
 })
Repository: vercel/next.js
Pull request: fix(next-custom-transforms): preserve all declarators in multi-declarator export statements

Fixes a bug in `next_ssg` transform where only the first declarator in multi-declarator export statements was being processed. Previously, when analyzing `export const a = 1, b = 2`, only `a` was tracked, causing `b` to be incorrectly removed during SSG optimization if referenced in `getStaticProps`.

Changed files:
filename: crates/next-custom-transforms/src/transforms/next_ssg.rs
patch: @@ -144,9 +144,11 @@ impl VisitMut for Analyzer<'_> {
                 return;
             }
 
-            if let Pat::Ident(id) = &d.decls[0].name {
-                if !SSG_EXPORTS.contains(&&*id.id.sym) {
-                    self.add_ref(id.to_id());
+            for decl in &d.decls {
+                if let Pat::Ident(id) = &decl.name {
+                    if !SSG_EXPORTS.contains(&&*id.id.sym) {
+                        self.add_ref(id.to_id());
+                    }
                 }
             }
         }

filename: crates/next-custom-transforms/tests/fixture/ssg/getStaticProps/multi-declarator-export/input.js
patch: @@ -0,0 +1,14 @@
+export const a = 1,
+  b = 2
+
+export async function getStaticProps() {
+  return {
+    props: {
+      sum: a + b,
+    },
+  }
+}
+
+export default function Page() {
+  return <div>Test</div>
+}

filename: crates/next-custom-transforms/tests/fixture/ssg/getStaticProps/multi-declarator-export/output.js
patch: @@ -0,0 +1,5 @@
+export var __N_SSG = true;
+export const a = 1, b = 2;
+export default function Page() {
+    return __jsx("div", null, "Test");
+}
Repository: nodejs/node
Pull request: doc: clarify that CQ only picks up PRs targeting `main`

🤦 

Changed files:
filename: doc/contributing/commit-queue.md
patch: @@ -54,6 +54,8 @@ of the commit queue:
 2. A CI must've ran and succeeded since the last change on the PR
 3. A collaborator must have approved the PR since the last change
 4. Only Jenkins CI and GitHub Actions are checked (V8 CI and CITGM are ignored)
+5. The PR must target the `main` branch (PRs opened against other branches, such
+   as backport PRs, are ignored)
 
 ## Implementation
Repository: huggingface/transformers
Pull request: Initialize cache state in RecurrentGemmaRecurrentBlock based on batch…

Fix needed to pass CI training test (generation matching test) in https://github.com/huggingface/transformers/pull/42597

Changed files:
filename: src/transformers/models/recurrent_gemma/modeling_recurrent_gemma.py
patch: @@ -460,6 +460,7 @@ def forward(
         use_cache: bool = True,
     ) -> tuple[torch.Tensor, dict[str, torch.Tensor]]:
         _, seq_len, _ = input_states.shape
+        batch_size = input_states.shape[0]
 
         y_branch = self.linear_y(input_states)
         y_branch = self.act_fn(y_branch)
@@ -468,6 +469,17 @@ def forward(
         x_branch = x_branch.transpose(1, 2)
 
         if use_cache:
+            # Check if cache needs initialization (None or batch size mismatch)
+            if self.conv1d_state is None or self.conv1d_state.shape[0] != batch_size:
+                self.conv1d_state = torch.zeros(
+                    (batch_size, self.hidden_size, self.conv1d_width - 1),
+                    device=input_states.device,
+                    dtype=input_states.dtype,
+                )
+                self.rg_lru.recurrent_states = torch.zeros(
+                    (batch_size, self.lru_width), device=input_states.device, dtype=torch.float32
+                )
+
             if cache_position.shape[0] != 1:  # prefill
                 self.conv1d_state = nn.functional.pad(x_branch, (self.conv1d_width - x_branch.shape[-1] - 1, 0))
                 x_branch = self.conv_1d(x_branch)[..., :seq_len]
Repository: vuejs/vue
Pull request: fixed readme for styling inconsistencies

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [ ] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [x] Other, please describe: Documentation (Readme) Update

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [ ] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [ ] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [ ] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [ ] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: README.md
patch: @@ -78,7 +78,7 @@ Vue.js is an MIT-licensed open source project. Its ongoing development is made p
 
 Vue.js is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API. Core features include:
 
-- [Declarative rendering with a plain JavaScript object based reactivity system.](https://vuejs.org/guide/index.html#Declarative-Rendering)
+- [Declarative rendering with a plain JavaScript object based reactivity system](https://vuejs.org/guide/index.html#Declarative-Rendering)
 - [Component-oriented development style with tooling support](https://vuejs.org/guide/index.html#Composing-with-Components)
 - Lean and extensible core
 - [Flexible transition effect system](https://vuejs.org/guide/transitions.html)
@@ -104,7 +104,7 @@ Details changes for each release are documented in the [release notes](https://g
 
 ## Stay In Touch
 
-- For latest releases and announcements, follow on Twitter: [@vuejs](https://twitter.com/vuejs)
+For the latest releases and announcements, follow on Twitter: [@vuejs](https://twitter.com/vuejs)
 
 ## License
Repository: ollama/ollama
Pull request: llama: Add CI to verify all vendored changes have patches

With the new vendoring model we want to make sure we don't accidentally merge changes in the vendored code without having those changes covered by a patch that applies cleanly on the current baseline.

Changed files:
filename: .github/workflows/test.yaml
patch: @@ -322,3 +322,15 @@ jobs:
       - run: go generate ./...
       - run: go build
       - run: go test -v ./...
+
+  patches:
+    needs: [changes]
+    if: ${{ needs.changes.outputs.RUNNERS == 'True' }}
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          submodules: recursive
+      - name: Verify patches carry all the changes
+        run: |
+          cd llama && ./sync.sh && git diff --compact-summary --exit-code .
\ No newline at end of file
Repository: vuejs/vue
Pull request: fix a typo in comment

<!--
Please make sure to read the Pull Request Guidelines:
https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#pull-request-guidelines
-->

<!-- PULL REQUEST TEMPLATE -->
<!-- (Update "[ ]" to "[x]" to check a box) -->

**What kind of change does this PR introduce?** (check at least one)

- [ ] Bugfix
- [ ] Feature
- [ ] Code style update
- [ ] Refactor
- [ ] Build-related changes
- [x] Other, please describe:
a typo

**Does this PR introduce a breaking change?** (check one)

- [ ] Yes
- [x] No

If yes, please describe the impact and migration path for existing applications:

**The PR fulfills these requirements:**

- [x] It's submitted to the `dev` branch for v2.x (or to a previous version branch), _not_ the `master` branch
- [ ] When resolving a specific issue, it's referenced in the PR's title (e.g. `fix #xxx[,#xxx]`, where "xxx" is the issue number)
- [ ] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
- [ ] New/updated tests are included

If adding a **new feature**, the PR's description includes:
- [ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

**Other information:**


Changed files:
filename: src/platforms/web/runtime/directives/model.js
patch: @@ -32,7 +32,7 @@ export default {
       el._vModifiers = binding.modifiers
       if (!binding.modifiers.lazy) {
         // Safari < 10.2 & UIWebView doesn't fire compositionend when
-        // siwtching focus before confirming composition choice
+        // switching focus before confirming composition choice
         // this also fixes the issue where some browsers e.g. iOS Chrome
         // fires "change" instead of "input" on autocomplete.
         el.addEventListener('change', onCompositionEnd)
Repository: nodejs/node
Pull request: worker: remove not implemented declarations of `Worker::CloneParentEnvVars` and `Worker::SetEnvVars`

In this PR https://github.com/nodejs/node/pull/31711/files#diff-b06b65a7f7e33816a1986d731765d732ab23f585bece6b23c5e83ca3682dba62L537-L554 there were removed implementations for `Worker::CloneParentEnvVars` and `Worker::SetEnvVars`, but declarations not. This PR removes those not implemented declarations.

<!--
Before submitting a pull request, please read:

- the CONTRIBUTING guide at https://github.com/nodejs/node/blob/HEAD/CONTRIBUTING.md
- the commit message formatting guidelines at
  https://github.com/nodejs/node/blob/HEAD/doc/contributing/pull-requests.md#commit-message-guidelines

For code changes:
1. Include tests for any bug fixes or new features.
2. Update documentation if relevant.
3. Ensure that `make -j4 test` (UNIX), or `vcbuild test` (Windows) passes.

If you believe this PR should be highlighted in the Node.js CHANGELOG
please add the `notable-change` label.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.
-->


Changed files:
filename: src/node_worker.cc
patch: @@ -268,7 +268,6 @@ class WorkerThreadData {
   uv_loop_t loop_;
   bool loop_init_failed_ = true;
   DeleteFnPtr<IsolateData, FreeIsolateData> isolate_data_;
-  const SnapshotData* snapshot_data_ = nullptr;
   friend class Worker;
 };
 

filename: src/node_worker.h
patch: @@ -66,9 +66,6 @@ class Worker : public AsyncWrap {
   std::string_view name() const { return name_; }
 
   static void New(const v8::FunctionCallbackInfo<v8::Value>& args);
-  static void CloneParentEnvVars(
-      const v8::FunctionCallbackInfo<v8::Value>& args);
-  static void SetEnvVars(const v8::FunctionCallbackInfo<v8::Value>& args);
   static void StartThread(const v8::FunctionCallbackInfo<v8::Value>& args);
   static void StopThread(const v8::FunctionCallbackInfo<v8::Value>& args);
   static void HasRef(const v8::FunctionCallbackInfo<v8::Value>& args);
Repository: ggml-org/llama.cpp
Pull request: Updated documentation

Model is no longer a parameter, so remove it from inline comments.

Changed files:
filename: include/llama.h
patch: @@ -1150,9 +1150,9 @@ extern "C" {
     //
 
     /// Apply chat template. Inspired by hf apply_chat_template() on python.
-    /// Both "model" and "custom_template" are optional, but at least one is required. "custom_template" has higher precedence than "model"
+    ///
     /// NOTE: This function does not use a jinja parser. It only support a pre-defined list of template. See more: https://github.com/ggml-org/llama.cpp/wiki/Templates-supported-by-llama_chat_apply_template
-    /// @param tmpl A Jinja template to use for this chat. If this is nullptr, the model’s default chat template will be used instead.
+    /// @param tmpl A Jinja template to use for this chat.
     /// @param chat Pointer to a list of multiple llama_chat_message
     /// @param n_msg Number of llama_chat_message in this chat
     /// @param add_ass Whether to end the prompt with the token(s) that indicate the start of an assistant message.
Repository: facebook/react
Pull request: [flow] Eliminate usage of global React types in ReactNativeTypes.js

## Summary

Flow will remove these types from global library definition soon. This PR replaces them in the ReactNativeTypes first, because this file will be synced to the react-native repo.

## How did you test this change?

`flow`

Changed files:
filename: packages/react-native-renderer/src/ReactNativeTypes.js
patch: @@ -9,7 +9,13 @@
  * @flow strict
  */
 
-import type {ElementRef, ElementType, MixedElement} from 'react';
+import type {
+  Component as ReactComponent,
+  ElementRef,
+  ElementType,
+  MixedElement,
+  RefSetter,
+} from 'react';
 // $FlowFixMe[nonstrict-import] TODO(@rubennorte)
 import {type PublicRootInstance} from 'react-native/Libraries/ReactPrivate/ReactNativePrivateInterface';
 
@@ -135,7 +141,7 @@ declare const ensureNativeMethodsAreSynced: NativeMethods;
 
 export type HostInstance = NativeMethods;
 export type HostComponent<Config: {...}> = component(
-  ref: React$RefSetter<HostInstance>,
+  ref: RefSetter<HostInstance>,
   ...Config
 );
 
@@ -188,7 +194,8 @@ export type RenderRootOptions = {
     errorInfo: {
       +componentStack?: ?string,
       // $FlowFixMe[unclear-type] unknown props and state.
-      +errorBoundary?: ?React$Component<any, any>,
+      // $FlowFixMe[value-as-type] Component in react repo is any-typed, but it will be well typed externally.
+      +errorBoundary?: ?ReactComponent<any, any>,
     },
   ) => void,
   onRecoverableError?: (

filename: packages/react/index.js
patch: @@ -17,6 +17,7 @@ export type Key = React$Key;
 export type Node = React$Node;
 export type Context<T> = React$Context<T>;
 export type Portal = React$Portal;
+export type RefSetter<-I> = React$RefSetter<I>;
 export type ElementProps<C> = React$ElementProps<C>;
 export type ElementConfig<C> = React$ElementConfig<C>;
 export type ElementRef<C> = React$ElementRef<C>;
Repository: ollama/ollama
Pull request: Update README.md

add our new LLM tool on Ollama: argo
please approve, thank you.

Changed files:
filename: README.md
patch: @@ -328,6 +328,7 @@ See the [API documentation](./docs/api.md) for all endpoints.
 - [Archyve](https://github.com/nickthecook/archyve) (RAG-enabling document library)
 - [crewAI with Mesop](https://github.com/rapidarchitect/ollama-crew-mesop) (Mesop Web Interface to run crewAI with Ollama)
 - [LLMChat](https://github.com/trendy-design/llmchat) (Privacy focused, 100% local, intuitive all-in-one chat interface)
+- [ARGO](https://github.com/xark-argo/argo) (Locally download and run Ollama and Huggingface models with RAG on Mac/Windows/Linux)
 
 ### Terminal
Repository: vercel/next.js
Pull request: Turbopack: fix fuzz command

### What?

Fix the fuzz testing command

Changed files:
filename: turbopack/crates/turbo-tasks-backend/fuzz/fuzz_targets/graph.rs
patch: @@ -10,7 +10,8 @@ mod graph;
 
 // Run with:
 // cd turbopack/crates/turbo-tasks-backend
-// cargo fuzz run fuzz_graph -- -timeout=3 -print_pcs=1 -print_funcs=999999 -print_final_stats=1
+// cargo fuzz run fuzz_graph -s none -- -timeout=3 -print_pcs=1 -print_funcs=999999
+// -print_final_stats=1
 // add --jobs=6 -workers=6 for parallel fuzzing
 
 fuzz_target!(init: { init(); }, |data: Vec<TaskSpec>| {
Repository: ollama/ollama
Pull request: llama: Exercise the new build in CI

Conditionally build the new runners if any code in that tree is touched.

Changed files:
filename: .github/workflows/test.yaml
patch: @@ -24,6 +24,7 @@ jobs:
       GENERATE: ${{ steps.changes.outputs.GENERATE }}
       GENERATE_CUDA: ${{ steps.changes.outputs.GENERATE_CUDA }}
       GENERATE_ROCM: ${{ steps.changes.outputs.GENERATE_ROCM }}
+      RUNNERS: ${{ steps.changes.outputs.RUNNERS }}
     steps:
       - uses: actions/checkout@v4
         with:
@@ -41,6 +42,7 @@ jobs:
             echo GENERATE=$(changed 'llm/llama.cpp' 'llm/patches/**' 'llm/ext_server/**' 'llm/generate/**')
             echo GENERATE_CUDA=$(changed 'llm/llama.cpp' 'llm/patches/**' 'llm/ext_server/**' 'llm/generate/**')
             echo GENERATE_ROCM=$(changed 'llm/llama.cpp' 'llm/patches/**' 'llm/ext_server/**' 'llm/generate/**')
+            echo RUNNERS=$(changed 'llama/**')
           } >>$GITHUB_OUTPUT
 
   generate:
@@ -213,6 +215,46 @@ jobs:
         env:
           OLLAMA_SKIP_CPU_GENERATE: '1'
 
+  runners:
+    needs: [changes]
+    if: ${{ needs.changes.outputs.RUNNERS == 'True' }}
+    strategy:
+      matrix:
+        os: [ubuntu-latest, macos-latest, windows-2019]
+        arch: [amd64, arm64]
+        exclude:
+          - os: ubuntu-latest
+            arch: arm64
+          - os: windows-2019
+            arch: arm64
+    runs-on: ${{ matrix.os }}
+    env:
+      GOARCH: ${{ matrix.arch }}
+      ARCH: ${{ matrix.arch }}
+      CGO_ENABLED: '1'
+    steps:
+      - uses: actions/checkout@v4
+      - uses: actions/setup-go@v5
+        with:
+          go-version-file: go.mod
+          cache: true
+      - run: go get ./...
+      - name: 'Build Windows Go Runners'
+        if: ${{ startsWith(matrix.os, 'windows-') }}
+        run: |
+          $gopath=(get-command go).source | split-path -parent
+          $gccpath=(get-command gcc).source | split-path -parent
+          & "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\Tools\Launch-VsDevShell.ps1"
+          cd $env:GITHUB_WORKSPACE
+          $env:CMAKE_SYSTEM_VERSION="10.0.22621.0"
+          $env:PATH="$gopath;$gccpath;$env:PATH"
+          echo $env:PATH
+          make -C llama -j 4      
+      - name: 'Build Unix Go Runners'
+        if: ${{ ! startsWith(matrix.os, 'windows-') }}
+        run: make -C llama -j 4
+      - run: go build .
+
   lint:
     strategy:
       matrix: