internlm/SWE-Fixer-Train-110K huggingface dataset:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Fix ConfluentKafkaInstrumentor usage
**Describe your environment** 
Docker image running `python:3.10.7-slim-bullseye` as base

**Steps to reproduce**
```python3
from opentelemetry.instrumentation.confluentkafka import ConfluentKafkaInstrumentor

# Instrument kafka
ConfluentKafkaInstrumentor().instrument()
```

**What is the expected behavior?**
Instrumentation to work just by adding the lines above.

**What is the actual behavior?**

> ModuleNotFoundError: No module named 'opentelemetry.instrumentation.confluentkafka'

**Additional context**
The solution is to actually make the import like this:
```python3
from opentelemetry.instrumentation.confluent_kafka import ConfluentKafkaInstrumentor
```



Discussion:
This isn't really a bug with the package. The docs have a typo. Feel free to send pull request.

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py
@@ -20,7 +20,7 @@
 
 ..code:: python
 
-    from opentelemetry.instrumentation.confluentkafka import ConfluentKafkaInstrumentor
+    from opentelemetry.instrumentation.confluent_kafka import ConfluentKafkaInstrumentor
     from confluent_kafka import Producer, Consumer
 
     # Instrument kafka
@@ -69,7 +69,7 @@ def instrument_producer(producer: Producer, tracer_provider=None)
                           def instrument_consumer(consumer: Consumer, tracer_provider=None)
 for example:
 .. code: python
-    from opentelemetry.instrumentation.confluentkafka import ConfluentKafkaInstrumentor
+    from opentelemetry.instrumentation.confluent_kafka import ConfluentKafkaInstrumentor
     from confluent_kafka import Producer, Consumer
 
     inst = ConfluentKafkaInstrumentor()


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
httpx tests failing on httpx==0.23.1



Discussion:

Resolving patch:
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
@@ -81,7 +81,7 @@
         "instrumentation": "opentelemetry-instrumentation-grpc==0.36b0.dev",
     },
     "httpx": {
-        "library": "httpx >= 0.18.0",
+        "library": "httpx >= 0.18.0, <= 0.23.0",
         "instrumentation": "opentelemetry-instrumentation-httpx==0.36b0.dev",
     },
     "jinja2": {


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for urlib instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/__init__.py b/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/__init__.py
@@ -12,14 +12,12 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-
 """
 This library allows tracing HTTP requests made by the
-`urllib https://docs.python.org/3/library/urllib.html>`_ library.
+`urllib <https://docs.python.org/3/library/urllib>`_ library.
 
 Usage
 -----
-
 .. code-block:: python
 
     from urllib import request
@@ -43,7 +41,7 @@
 right after a Span is created for a request and right before the span is finished processing a response respectively.
 The hooks can be configured as follows:
 
-..code:: python
+.. code:: python
 
     # `request_obj` is an instance of urllib.request.Request
     def request_hook(span, request_obj):


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for remoulade instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py b/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py
@@ -16,13 +16,13 @@
 Usage
 -----
 
-* Start broker backend
+Start broker backend
 
 ::
 
     docker run -p 5672:5672 rabbitmq
 
-* Run instrumented actor
+Run instrumented actor
 
 .. code-block:: python
 


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for aws lambda instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py b/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 """
-The opentelemetry-instrumentation-aws-lambda package provides an `Instrumentor`
+The opentelemetry-instrumentation-aws-lambda package provides an Instrumentor
 to traces calls within a Python AWS Lambda function.
 
 Usage
@@ -27,7 +27,6 @@
     from opentelemetry.instrumentation.botocore import AwsBotocoreInstrumentor
     from opentelemetry.instrumentation.aws_lambda import AwsLambdaInstrumentor
 
-
     # Enable instrumentation
     AwsBotocoreInstrumentor().instrument()
     AwsLambdaInstrumentor().instrument()
@@ -47,8 +46,8 @@ def lambda_handler(event, context):
 
 tracer_provider (TracerProvider) - an optional tracer provider
 event_context_extractor (Callable) - a function that returns an OTel Trace
-    Context given the Lambda Event the AWS Lambda was invoked with
-    this function signature is: def event_context_extractor(lambda_event: Any) -> Context
+Context given the Lambda Event the AWS Lambda was invoked with
+this function signature is: def event_context_extractor(lambda_event: Any) -> Context
 for example:
 
 .. code:: python
@@ -63,7 +62,10 @@ def custom_event_context_extractor(lambda_event):
     AwsLambdaInstrumentor().instrument(
         event_context_extractor=custom_event_context_extractor
     )
+
+---
 """
+
 import logging
 import os
 from importlib import import_module


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for pika instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/__init__.py b/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/__init__.py
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 """
-Instrument `pika` to trace RabbitMQ applications.
+Instrument pika to trace RabbitMQ applications.
 
 Usage
 -----
@@ -63,7 +63,7 @@
     PikaInstrumentor.instrument_channel(channel, tracer_provider=tracer_provider)
 
 * PikaInstrumentor also supports instrumenting with hooks that will be called when producing or consuming a message.
-  The hooks should be of type `Callable[[Span, bytes, BasicProperties], None]`
+  The hooks should be of type "Callable[[Span, bytes, BasicProperties], None]"
   where the first parameter is the span, the second parameter is the message body
   and the third parameter is the message properties
 


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation tortoiseorm instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py b/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 """
-Instrument `tortoise-orm`_ to report SQL queries.
+Instrument tortoise-orm to report SQL queries.
 
 Usage
 -----


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for elasticsearch instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/__init__.py b/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/__init__.py
@@ -34,7 +34,7 @@
     es.get(index='my-index', doc_type='my-type', id=1)
 
 Elasticsearch instrumentation prefixes operation names with the string "Elasticsearch". This
-can be changed to a different string by either setting the `OTEL_PYTHON_ELASTICSEARCH_NAME_PREFIX`
+can be changed to a different string by either setting the OTEL_PYTHON_ELASTICSEARCH_NAME_PREFIX
 environment variable or by passing the prefix as an argument to the instrumentor. For example,
 
 
@@ -42,16 +42,15 @@
 
     ElasticsearchInstrumentor("my-custom-prefix").instrument()
 
-
-The `instrument` method accepts the following keyword args:
-
+The instrument() method accepts the following keyword args:
 tracer_provider (TracerProvider) - an optional tracer provider
 request_hook (Callable) - a function with extra user-defined logic to be performed before performing the request
-                          this function signature is:
-                          def request_hook(span: Span, method: str, url: str, kwargs)
+this function signature is:
+def request_hook(span: Span, method: str, url: str, kwargs)
+
 response_hook (Callable) - a function with extra user-defined logic to be performed after performing the request
-                          this function signature is:
-                          def response_hook(span: Span, response: dict)
+this function signature is:
+def response_hook(span: Span, response: dict)
 
 for example:
 


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for kafka python instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/__init__.py b/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/__init__.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 """
-Instrument `kafka-python` to report instrumentation-kafka produced and consumed messages
+Instrument kafka-python to report instrumentation-kafka produced and consumed messages
 
 Usage
 -----
@@ -30,24 +30,21 @@
     producer = KafkaProducer(bootstrap_servers=['localhost:9092'])
     producer.send('my-topic', b'raw_bytes')
 
-
     # report a span of type consumer with the default settings
-    consumer = KafkaConsumer('my-topic',
-                             group_id='my-group',
-                             bootstrap_servers=['localhost:9092'])
+    consumer = KafkaConsumer('my-topic', group_id='my-group', bootstrap_servers=['localhost:9092'])
     for message in consumer:
-        # process message
+    # process message
 
-The `_instrument` method accepts the following keyword args:
+The _instrument() method accepts the following keyword args:
 tracer_provider (TracerProvider) - an optional tracer provider
 produce_hook (Callable) - a function with extra user-defined logic to be performed before sending the message
-                          this function signature is:
-                          def produce_hook(span: Span, args, kwargs)
+this function signature is:
+def produce_hook(span: Span, args, kwargs)
 consume_hook (Callable) - a function with extra user-defined logic to be performed after consuming a message
-                          this function signature is:
-                          def consume
-                          _hook(span: Span, record: kafka.record.ABCRecord, args, kwargs)
+this function signature is:
+def consume_hook(span: Span, record: kafka.record.ABCRecord, args, kwargs)
 for example:
+
 .. code: python
     from opentelemetry.instrumentation.kafka import KafkaInstrumentor
     from kafka import KafkaProducer, KafkaConsumer


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Fix fastapi version
CI in `main` is failing right now because of `opentelemetery-instrumentation-fastapi` failures, fix `fastapi` version.


Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/package.py b/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/package.py
--- a/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/package.py
+++ b/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/package.py
@@ -13,6 +13,6 @@
 # limitations under the License.
 
 
-_instruments = ("fastapi ~= 0.58",)
+_instruments = ("fastapi <= 0.90.1",)
 
 _supports_metrics = True
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
@@ -69,7 +69,7 @@
         "instrumentation": "opentelemetry-instrumentation-falcon==0.37b0.dev",
     },
     "fastapi": {
-        "library": "fastapi ~= 0.58",
+        "library": "fastapi <= 0.90.1",
         "instrumentation": "opentelemetry-instrumentation-fastapi==0.37b0.dev",
     },
     "flask": {


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Add readthedocs documentation for boto3sqs instrumentation
Part of [1491](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1491)


Discussion:

Resolving patch:
diff --git a/docs/conf.py b/docs/conf.py
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -126,7 +126,7 @@ def getlistcfg(strval):
     ]
 
 
-ignore_categories = ["py-class", "py-func", "py-exc", "any"]
+ignore_categories = ["py-class", "py-func", "py-exc", "py-obj", "any"]
 
 for category in ignore_categories:
     if category in mcfg:
diff --git a/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py b/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py
@@ -16,17 +16,17 @@
 
 .. _boto3sqs: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sqs.html
 
-
 Usage
 -----
 
-.. code:: python
+.. code-block:: python
 
     import boto3
     from opentelemetry.instrumentation.boto3sqs import Boto3SQSInstrumentor
 
-
     Boto3SQSInstrumentor().instrument()
+
+---
 """
 import logging
 from typing import Any, Collection, Dict, Generator, List, Mapping, Optional


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Httpx instrumentation results in a connection leak
**Describe your environment** 
python 3.10.10
httpx==0.23.3
opentelemetry-instrumentation-httpx==0.36b0

**Steps to reproduce**
```python
import httpx
from opentelemetry.instrumentation.httpx import HTTPXClientInstrumentor

with httpx.Client() as client:
    HTTPXClientInstrumentor.instrument_client(client)
    print(client.get("https://wtfismyip.com/json").json())
```

**What is the expected behavior?**
I expected it to run without any ResourceWarning.

**What is the actual behavior?**
Got ResourceWarning for each client instance



Discussion:

Resolving patch:
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
--- a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
@@ -162,6 +162,7 @@ def response_hook(span, request, response):
 """
 import logging
 import typing
+from types import TracebackType
 
 import httpx
 
@@ -293,6 +294,18 @@ def __init__(
         self._request_hook = request_hook
         self._response_hook = response_hook
 
+    def __enter__(self) -> "SyncOpenTelemetryTransport":
+        self._transport.__enter__()
+        return self
+
+    def __exit__(
+        self,
+        exc_type: typing.Optional[typing.Type[BaseException]] = None,
+        exc_value: typing.Optional[BaseException] = None,
+        traceback: typing.Optional[TracebackType] = None,
+    ) -> None:
+        self._transport.__exit__(exc_type, exc_value, traceback)
+
     def handle_request(
         self,
         *args,
@@ -343,6 +356,9 @@ def handle_request(
 
         return response
 
+    def close(self) -> None:
+        self._transport.close()
+
 
 class AsyncOpenTelemetryTransport(httpx.AsyncBaseTransport):
     """Async transport class that will trace all requests made with a client.
@@ -372,6 +388,18 @@ def __init__(
         self._request_hook = request_hook
         self._response_hook = response_hook
 
+    async def __aenter__(self) -> "AsyncOpenTelemetryTransport":
+        await self._transport.__aenter__()
+        return self
+
+    async def __aexit__(
+        self,
+        exc_type: typing.Optional[typing.Type[BaseException]] = None,
+        exc_value: typing.Optional[BaseException] = None,
+        traceback: typing.Optional[TracebackType] = None,
+    ) -> None:
+        await self._transport.__aexit__(exc_type, exc_value, traceback)
+
     async def handle_async_request(
         self, *args, **kwargs
     ) -> typing.Union[
@@ -423,6 +451,9 @@ async def handle_async_request(
 
         return response
 
+    async def aclose(self) -> None:
+        await self._transport.aclose()
+
 
 class _InstrumentedClient(httpx.Client):
     _tracer_provider = None


Test patch:
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
httpx tests failing on httpx==0.23.1
        Can we leave https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1459 open until we actually fix the instrumentation to work with that version?

_Originally posted by @aabmass in https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1460#pullrequestreview-1186403709_
      


Discussion:

Resolving patch:
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
@@ -81,7 +81,7 @@
         "instrumentation": "opentelemetry-instrumentation-grpc==0.40b0.dev",
     },
     "httpx": {
-        "library": "httpx >= 0.18.0, <= 0.23.0",
+        "library": "httpx >= 0.18.0",
         "instrumentation": "opentelemetry-instrumentation-httpx==0.40b0.dev",
     },
     "jinja2": {


Test patch:
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py b/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
--- a/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
@@ -59,7 +59,7 @@ def _async_call(coro: typing.Coroutine) -> asyncio.Task:
 def _response_hook(span, request: "RequestInfo", response: "ResponseInfo"):
     span.set_attribute(
         HTTP_RESPONSE_BODY,
-        response[2].read(),
+        b"".join(response[2]),
     )
 
 
@@ -68,7 +68,7 @@ async def _async_response_hook(
 ):
     span.set_attribute(
         HTTP_RESPONSE_BODY,
-        await response[2].aread(),
+        b"".join([part async for part in response[2]]),
     )
Repository: open-telemetry/opentelemetry-python-contrib

Issue:
Fix Falcon dependency
Falcon test cases are [failing](https://github.com/open-telemetry/opentelemetry-python/actions/runs/7202220508/job/19619933938?pr=3581) with its latest release.


Discussion:

Resolving patch:
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
@@ -77,7 +77,7 @@
         "instrumentation": "opentelemetry-instrumentation-elasticsearch==0.43b0.dev",
     },
     {
-        "library": "falcon >= 1.4.1, < 4.0.0",
+        "library": "falcon >= 1.4.1, < 3.1.2",
         "instrumentation": "opentelemetry-instrumentation-falcon==0.43b0.dev",
     },
     {


Test patch: