PrimeIntellect/SWE-rebench-V2-Filtered-Easy-Verified huggingface dataset:
Repository: yannickcr/eslint-plugin-react (js)
Issue: False positive for react/jsx-pascal-case on namespaced components
In v5.2.0 I'm getting a false positive for the `react/jsx-pascal-case` rule when using namespaced components.

```jsx
<Modal show={showModal} onHide={this.closeModal}>
  <Modal.Header closeButton>
    <Modal.Title>Demo</Modal.Title>
  </Modal.Header>
</Modal>
```

It looks like it was introduced in cd5ef2b17257d10f5398c35d7fc73fdfb9a360f9.
Pull request description: [fix] - Fix jsx-pascal-case for JSXMemberExpressions.
Only test object (part before the `.`). Fixes #637

Patch:
diff --git a/lib/rules/jsx-pascal-case.js b/lib/rules/jsx-pascal-case.js
index 93bd952b..b7277fb9 100644
--- a/lib/rules/jsx-pascal-case.js
+++ b/lib/rules/jsx-pascal-case.js
@@ -29,9 +29,11 @@ module.exports = function(context) {
     JSXOpeningElement: function(node) {
       var name = elementType(node);
 
-      // Get namespace if the type is JSXNamespacedName.
+      // Get namespace if the type is JSXNamespacedName or JSXMemberExpression
       if (name.indexOf(':') > -1) {
         name = name.substring(0, name.indexOf(':'));
+      } else if (name.indexOf('.') > -1) {
+        name = name.substring(0, name.indexOf('.'));
       }
 
       var isPascalCase = PASCAL_CASE_REGEX.test(name);


Test patch:
diff --git a/tests/lib/rules/jsx-pascal-case.js b/tests/lib/rules/jsx-pascal-case.js
index 187c27a4..752b5f50 100644
--- a/tests/lib/rules/jsx-pascal-case.js
+++ b/tests/lib/rules/jsx-pascal-case.js
@@ -58,6 +58,12 @@ ruleTester.run('jsx-pascal-case', rule, {
     code: '<YMCA />',
     parserOptions: parserOptions,
     options: [{allowAllCaps: true}]
+  }, {
+    code: '<Modal.Header />',
+    parserOptions: parserOptions
+  }, {
+    code: '<Modal:Header />',
+    parserOptions: parserOptions
   }, {
     code: '<IGNORED />',
     parserOptions: parserOptions,
Repository: vaexio/vaex (python)
Issue: ds.join with how='right' automatically sets inplace=True
For how='right', inplace is apparently automatically activated.
Using inplace=False does not alter this anymore.
I guess this is a small bug.

ds1.join(ds2, left_on='a', right_on='b', how='right', inplace=False)
returns:

\# | b | y | a | x
-- | -- | -- | -- | --
0 | 'a' | 1 | 'a' | 1
1 | 'b' | 4 | 'b' | 2
2 | 'd' | 9 | masked | masked

For:
ds1

\# | a | x
-- | -- | --
0 | 'a' | 1
1 | 'b' | 2
2 | 'c' | 3

and 
ds2

\# | b | y
-- | -- | --
0 | 'a' | 1
1 | 'b' | 4
2 | 'd' | 9


Pull request description: fix(core,join): inplace was not respected fow how=right
Fixes #95

Patch:
diff --git a/packages/vaex-core/vaex/dataframe.py b/packages/vaex-core/vaex/dataframe.py
index 3ba90a45..b55ec4df 100644
--- a/packages/vaex-core/vaex/dataframe.py
+++ b/packages/vaex-core/vaex/dataframe.py
@@ -4957,23 +4957,21 @@ class DataFrameLocal(DataFrame):
         :param inplace: {inplace}
         :return:
         """
-        ds = self if inplace else self.copy()
         inner = False
+        left = self
+        right = other
         if how == 'left':
-            left = ds
-            right = other
+            pass
         elif how == 'right':
-            left = other
-            right = ds
+            left, right = right, left
             lprefix, rprefix = rprefix, lprefix
             lsuffix, rsuffix = rsuffix, lsuffix
             left_on, right_on = right_on, left_on
         elif how == 'inner':
-            left = ds
-            right = other
             inner = True
         else:
             raise ValueError('join type not supported: {}, only left and right'.format(how))
+        left = left if inplace else left.copy()
 
         for name in right:
             if name in left and rprefix + name + rsuffix == lprefix + name + lsuffix:
@@ -4997,7 +4995,7 @@ class DataFrameLocal(DataFrame):
                 else:
                     left.add_column(right_name, right.columns[name])
         else:
-            df = ds
+            df = left
             # we index the right side, this assumes right is smaller in size
             index = right._index(right_on)
             lookup = np.zeros(left._length_original, dtype=np.int64)


Test patch:
diff --git a/tests/join_test.py b/tests/join_test.py
index c3e4b506..c89f2559 100644
--- a/tests/join_test.py
+++ b/tests/join_test.py
@@ -94,6 +94,7 @@ def test_right_x_x():
     assert df.evaluate('x_r').tolist() == [2, 1, 0]
     assert df.evaluate('y').tolist() == [2, None, 0]
     assert df.evaluate('y_r').tolist() == [None, 1, 2]
+    assert 'y_r' not in df_b
 
 
 def test_left_dup():
Repository: jsonata-js/jsonata (js)
Issue: JSONata leaks internal references in expression when using lambdas
I am creating this after corresponding with @andrew-coleman over email as it has some security implications.

Currently, one can use lambdas as a way to grab references to JSONata internals. For example:

```
$leak_env_refs := function() {1};
$leak_env_refs.environment.bind('whatever_you_want', false);
```

This seems unintentional and can potentially be used maliciously.
Pull request description: Prevent lookup of function object properties
A lambda function is represented internally as a javascript object.  A check needs to be added to the `lookup` function to only expose properties if they are a non-function object.  Similar to the check that already exists in the `keys` function.

Resolves #691 

Patch:
diff --git a/src/functions.js b/src/functions.js
index 219a390..d493c94 100644
--- a/src/functions.js
+++ b/src/functions.js
@@ -1658,7 +1658,7 @@ const functions = (() => {
                 });
             });
             result = keys(merge);
-        } else if (arg !== null && typeof arg === 'object' && !(isLambda(arg))) {
+        } else if (arg !== null && typeof arg === 'object' && !isFunction(arg)) {
             Object.keys(arg).forEach(key => result.push(key));
         }
         return result;
@@ -1685,7 +1685,7 @@ const functions = (() => {
                     }
                 }
             }
-        } else if (input !== null && typeof input === 'object') {
+        } else if (input !== null && typeof input === 'object' && !isFunction(input)) {
             result = input[key];
         }
         return result;


Test patch:
diff --git a/test/test-suite/groups/lambdas/case013.json b/test/test-suite/groups/lambdas/case013.json
new file mode 100644
index 0000000..01ef867
--- /dev/null
+++ b/test/test-suite/groups/lambdas/case013.json
@@ -0,0 +1,6 @@
+{
+    "expr": "( $f := function(){1}; $f.environment )",
+    "dataset": null,
+    "bindings": {},
+    "undefinedResult": true
+}
\ No newline at end of file
Repository: ROpdebee/mb-userscripts (ts)
Issue: Cover art page seeding buttons always point to main MB site
Just noticed it redirects from beta.MB to MB.
Pull request description: fix(ecau): maintain MB domain when seeding from cover art page
Closes #444

This doesn't change the behaviour on atisket, and redirecting to the preferred MBS version is supported by jesus2099's script there.

Patch:
diff --git a/src/mb_enhanced_cover_art_uploads/seeding/musicbrainz.tsx b/src/mb_enhanced_cover_art_uploads/seeding/musicbrainz.tsx
index 735d27d3..e6a7d4c4 100644
--- a/src/mb_enhanced_cover_art_uploads/seeding/musicbrainz.tsx
+++ b/src/mb_enhanced_cover_art_uploads/seeding/musicbrainz.tsx
@@ -28,7 +28,7 @@ export const MusicBrainzSeeder: Seeder = {
                 const favicon = await provider.favicon;
                 const seedUrl = new SeedParameters([{
                     url,
-                }]).createSeedURL(mbid);
+                }]).createSeedURL(mbid, window.location.host);
 
                 return <a
                     title={url.href}
diff --git a/src/mb_enhanced_cover_art_uploads/seeding/parameters.ts b/src/mb_enhanced_cover_art_uploads/seeding/parameters.ts
index e73620b5..baf3cdba 100644
--- a/src/mb_enhanced_cover_art_uploads/seeding/parameters.ts
+++ b/src/mb_enhanced_cover_art_uploads/seeding/parameters.ts
@@ -60,8 +60,8 @@ export class SeedParameters {
         return seedParams;
     }
 
-    createSeedURL(releaseId: string): string {
-        return `https://musicbrainz.org/release/${releaseId}/add-cover-art?${this.encode()}`;
+    createSeedURL(releaseId: string, domain = 'musicbrainz.org'): string {
+        return `https://${domain}/release/${releaseId}/add-cover-art?${this.encode()}`;
     }
 
     static decode(seedParams: URLSearchParams): SeedParameters {


Test patch:
diff --git a/tests/unit/mb_enhanced_cover_art_uploads/seeding/parameters.test.ts b/tests/unit/mb_enhanced_cover_art_uploads/seeding/parameters.test.ts
index d9490832..0d06e726 100644
--- a/tests/unit/mb_enhanced_cover_art_uploads/seeding/parameters.test.ts
+++ b/tests/unit/mb_enhanced_cover_art_uploads/seeding/parameters.test.ts
@@ -96,4 +96,20 @@ describe('seed parameters', () => {
                 url: new URL('https://example.com/123'),
             }]);
     });
+
+    describe('creating seeding URL', () => {
+        const params = new SeedParameters([dummyImageWithTypeAndComment]);
+
+        it('should default to main MB', () => {
+            const url = params.createSeedURL('dummy-id');
+
+            expect(new URL(url)).toHaveProperty('host', 'musicbrainz.org');
+        });
+
+        it('should be customisable', () => {
+            const url = params.createSeedURL('dummy-id', 'custom.musicbrainz.instance.com');
+
+            expect(new URL(url)).toHaveProperty('host', 'custom.musicbrainz.instance.com');
+        });
+    });
 });
Repository: ota-meshi/eslint-plugin-svelte (ts)
Issue: `block-lang` triggers on non-svelte files
Hi
`block-lang` reports plain `.ts` files as well, no just svelte files - kind of a false positive.

I'll try to fix it, but I am not sure how to find out whether a file is a svelte file - @ota-meshi, do you just check for file extension? I can't check for `<script>` or `<style>` blocks as they theoretically may not be present...
Pull request description: Fixed `block-lang` false positives for non-svelte files
Closes #393

Patch:
diff --git a/.changeset/eleven-guests-chew.md b/.changeset/eleven-guests-chew.md
new file mode 100644
index 0000000..a84c331
--- /dev/null
+++ b/.changeset/eleven-guests-chew.md
@@ -0,0 +1,5 @@
+---
+"eslint-plugin-svelte": patch
+---
+
+fix(block-lang): fixed false positives for non-svelte files
diff --git a/src/rules/block-lang.ts b/src/rules/block-lang.ts
index 19c50f0..d526ef1 100644
--- a/src/rules/block-lang.ts
+++ b/src/rules/block-lang.ts
@@ -59,6 +59,9 @@ export default createRule("block-lang", {
     type: "suggestion",
   },
   create(context) {
+    if (!context.parserServices.isSvelte) {
+      return {}
+    }
     const enforceScriptPresent: boolean =
       context.options[0]?.enforceScriptPresent ?? false
     const enforceStylePresent: boolean =


Test patch:
diff --git a/tests/fixtures/rules/block-lang/valid/non-svelte/_config.json b/tests/fixtures/rules/block-lang/valid/non-svelte/_config.json
new file mode 100644
index 0000000..5e80e5a
--- /dev/null
+++ b/tests/fixtures/rules/block-lang/valid/non-svelte/_config.json
@@ -0,0 +1,10 @@
+{
+  "options": [
+    {
+      "enforceScriptPresent": true,
+      "enforceStylePresent": true,
+      "script": "ts",
+      "style": "scss"
+    }
+  ]
+}
diff --git a/tests/fixtures/rules/block-lang/valid/non-svelte/non-svelte01-input.ts b/tests/fixtures/rules/block-lang/valid/non-svelte/non-svelte01-input.ts
new file mode 100644
index 0000000..c7a2e01
--- /dev/null
+++ b/tests/fixtures/rules/block-lang/valid/non-svelte/non-svelte01-input.ts
@@ -0,0 +1,1 @@
+export const value: boolean | number = false
diff --git a/tests/fixtures/rules/block-lang/valid/non-svelte/non-svelte02-input.js b/tests/fixtures/rules/block-lang/valid/non-svelte/non-svelte02-input.js
new file mode 100644
index 0000000..38241da
--- /dev/null
+++ b/tests/fixtures/rules/block-lang/valid/non-svelte/non-svelte02-input.js
@@ -0,0 +1,1 @@
+export const value = false