anon-iclr-submission/benchname-bug-localization huggingface dataset:
Repository: urbit/bridge
Issue: Path hasn't been changed in bridge-https.py

The `build` directory has been axed, but `bridge-https.py` still looks for it.  Might be worth doing a patch release that fixes this.

Changed files:
bridge-https.py

diff --git a/bridge-https.py b/bridge-https.py
index f43b16ae..003ceaa8 100644
--- a/bridge-https.py
+++ b/bridge-https.py
@@ -4,5 +4,4 @@ import ssl
 
 httpd = BaseHTTPServer.HTTPServer(('localhost', 4443), SimpleHTTPServer.SimpleHTTPRequestHandler)
 httpd.socket = ssl.wrap_socket (httpd.socket, certfile='localhost.pem', keyfile='localhost-key.pem', server_side=True)
-os.chdir('./build')
 httpd.serve_forever()
Repository: bioconda/bioconda-utils
Issue: duplicate_key_in_meta_yaml doesn't respect selectors

This is understandable given how it's done, but when `yaml.load` hits a duplicate key it throws an error that's passed on as a linter error that can't be skipped. That's often going to be correct, but it doesn't then respect selectors, such as in https://github.com/bioconda/bioconda-recipes/pull/16968. We should really come up with a way around this, as a number of recipes can not longer be "built" because of it. The normal cause of this is that binaries are being redistributed, which while not ideal is sometimes the only option.

Changed files:
bioconda_utils/recipe.py

diff --git a/bioconda_utils/recipe.py b/bioconda_utils/recipe.py
index da15965..d39c40c 100644
--- a/bioconda_utils/recipe.py
+++ b/bioconda_utils/recipe.py
@@ -272,8 +272,11 @@ class Recipe():
             return None
         if not variants:
             return None
-        if any(" " in v for v in variants):
-            # can't handle "[py2k or osx]" style things
+        for k in list(variants.keys()):
+            if " " in k:
+                # can't handle "[py2k or osx]" style things
+                del variants[k]
+        if not variants:
             return None
 
         new_lines = []
Repository: bioconda/bioconda-utils
Issue: bioconductor-skeleton still picking up 3.8 rather than 3.9

For some reason, `bioconda-utils bioconductor-skeleton --force ... update-all-packages` is still picking up bioconductor 3.8 as the most recent release. 3.9 can be forced, but that shouldn't be required.

Changed files:
test/test_bioconductor_skeleton.py, bioconda_utils/bioconductor_skeleton.py

diff --git a/bioconda_utils/bioconductor_skeleton.py b/bioconda_utils/bioconductor_skeleton.py
index e9136f1..abb7144 100755
--- a/bioconda_utils/bioconductor_skeleton.py
+++ b/bioconda_utils/bioconductor_skeleton.py
@@ -58,7 +58,8 @@ def bioconductor_versions():
     response = requests.get(url)
     bioc_config = yaml.load(response.text)
     versions = list(bioc_config["r_ver_for_bioc_ver"].keys())
-    versions = sorted(versions, key=float, reverse=True)
+    # Handle semantic version sorting like 3.10 and 3.9
+    versions = sorted(versions, key=lambda v: list(map(int, v.split('.'))), reverse=True)
     return versions
 
 
@@ -344,7 +345,7 @@ class BioCProjectPage(object):
         it exists.
         """
         url = cargoport_url(self.package, self.version, self.bioc_version)
-        response = requests.get(url)
+        response = requests.head(url)
         if response.status_code == 404:
             # This is expected if this is a new package or an updated version.
             # Cargo Port will archive a working URL upon merging
diff --git a/test/test_bioconductor_skeleton.py b/test/test_bioconductor_skeleton.py
index 8b7bca9..8b13823 100644
--- a/test/test_bioconductor_skeleton.py
+++ b/test/test_bioconductor_skeleton.py
@@ -151,13 +151,13 @@ def test_annotation_data(tmpdir, bioc_fetch):
 
 
 def test_experiment_data(tmpdir, bioc_fetch):
-    bioconductor_skeleton.write_recipe('affydata', str(tmpdir), config, recursive=False, packages=bioc_fetch)
-    meta = utils.load_first_metadata(str(tmpdir.join('bioconductor-affydata'))).meta
+    bioconductor_skeleton.write_recipe('Affyhgu133A2Expr', str(tmpdir), config, recursive=False, packages=bioc_fetch)
+    meta = utils.load_first_metadata(str(tmpdir.join('bioconductor-affyhgu133a2expr'))).meta
     assert any(dep.startswith('curl ') for dep in meta['requirements']['run'])
     assert len(meta['source']['url']) == 3
-    assert not tmpdir.join('bioconductor-affydata', 'build.sh').exists()
-    assert tmpdir.join('bioconductor-affydata', 'post-link.sh').exists()
-    assert tmpdir.join('bioconductor-affydata', 'pre-unlink.sh').exists()
+    assert not tmpdir.join('bioconductor-affyhgu133a2expr', 'build.sh').exists()
+    assert tmpdir.join('bioconductor-affyhgu133a2expr', 'post-link.sh').exists()
+    assert tmpdir.join('bioconductor-affyhgu133a2expr', 'pre-unlink.sh').exists()
 
 
 def test_nonexistent_pkg(tmpdir, bioc_fetch):
Repository: cmu-delphi/delphi-epidata
Issue: `delphi` endpoint returns wrong result code

When there are no results, Epidata should return
```
{"result":-2, "message":"no results", "epidata": []}
```

But for the `delphi` endpoint, we're returning the following, causing `Epidata.check` to fail to identify the no-results condition:
```
$ curl -sL "http://api.covidcast.cmu.edu/epidata/delphi/?system=epic&epiweek=202132"
{"epidata":[],"message":"success","result":1}
$ curl -sL "http://api.covidcast.cmu.edu/epidata/api.php?source=delphi&system=epic&epiweek=202132"
{"epidata":[],"message":"success","result":1}
```

This in turn is causing excessive (multi-hour) runtimes on some of the nowcasting sensor updates.

Changed files:
src/server/_printer.py

diff --git a/src/server/_printer.py b/src/server/_printer.py
index 06f92b42..715214e1 100644
--- a/src/server/_printer.py
+++ b/src/server/_printer.py
@@ -18,8 +18,16 @@ def print_non_standard(data):
     format = request.values.get("format", "classic")
     if format == "json":
         return jsonify(data)
+
+    if not data:
+        message = "no results"
+        result = -2
     else:
-        return jsonify(dict(result=1, message="success", epidata=data))
+        message = "success"
+        result = 1
+    if result == -1 and is_compatibility_mode():
+        return jsonify(dict(result=result, message=message))
+    return jsonify(dict(result=result, message=message, epidata=data))
 
 
 class APrinter: