Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-opentelemetry-api for 
openSUSE:Factory checked in at 2023-12-11 21:50:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-opentelemetry-api (Old)
 and      /work/SRC/openSUSE:Factory/.python-opentelemetry-api.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-opentelemetry-api"

Mon Dec 11 21:50:41 2023 rev:10 rq:1132370 version:1.21.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-opentelemetry-api/python-opentelemetry-api.changes
        2023-05-12 20:40:28.466918307 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-opentelemetry-api.new.25432/python-opentelemetry-api.changes
     2023-12-11 21:50:52.900262015 +0100
@@ -1,0 +2,41 @@
+Sun Dec 10 21:48:52 UTC 2023 - Dirk Müller <[email protected]>
+
+- update to 1.21.0:
+  * Fix `SumAggregation`   (#3390)
+  * Fix handling of empty metric collection cycles (#3335)
+  * Fix error when no LoggerProvider configured for
+    LoggingHandler (#3423)
+  * Make `opentelemetry_metrics_exporter` entrypoint support pull
+    exporters (#3428)
+  * Allow instrument names to have '/' and up to 255 characters
+    (#3442)
+  * Do not load Resource on sdk import (#3447)
+  * Update semantic conventions to version 1.21.0 (#3251)
+  * Add missing schema_url in global api for logging and metrics
+    (#3251)
+  * Prometheus exporter support for auto instrumentation  (#3413)
+  * Modify Prometheus exporter to translate non-monotonic Sums
+    into Gauges (#3306)
+  * Update the body type in the log ($3343)
+  * Add max_scale option to Exponential Bucket Histogram
+    Aggregation  (#3323)
+  * Use BoundedAttributes instead of raw dict to extract
+    attributes from LogRecord (#3310)
+  * Support dropped_attributes_count in LogRecord and exporters
+    (#3351)
+  * Add unit to view instrument selection criteria (#3341)
+  * Upgrade opentelemetry-proto to 0.20 and regen #3355)
+  * Include endpoint in Grpc transient error warning #3362)
+  * Fixed bug where logging export is tracked as trace #3375)
+  * Select histogram aggregation with an environment variable
+  * Move Protobuf encoding to its own package (#3169)
+  * Add experimental feature to detect resource detectors in auto
+    instrumentation (#3181)
+  * Fix exporting of ExponentialBucketHistogramAggregation from
+    opentelemetry.sdk.metrics.view (#3240)
+  * Fix headers types mismatch for OTLP Exporters (#3226)
+  * Fix suppress instrumentation for log batch processor (#3223)
+  * Add speced out environment variables and arguments for
+    BatchLogRecordProcessor (#3237)
+
+-------------------------------------------------------------------

Old:
----
  opentelemetry_api-1.17.0.tar.gz

New:
----
  opentelemetry_api-1.21.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-opentelemetry-api.spec ++++++
--- /var/tmp/diff_new_pack.CYFu5B/_old  2023-12-11 21:50:53.580287199 +0100
+++ /var/tmp/diff_new_pack.CYFu5B/_new  2023-12-11 21:50:53.580287199 +0100
@@ -19,7 +19,7 @@
 %define skip_python2 1
 %{?sle15_python_module_pythons}
 Name:           python-opentelemetry-api
-Version:        1.17.0
+Version:        1.21.0
 Release:        0
 Summary:        OpenTelemetry Python API
 License:        Apache-2.0
@@ -29,7 +29,6 @@
 BuildRequires:  %{python_module hatchling}
 BuildRequires:  %{python_module importlib-metadata}
 BuildRequires:  %{python_module pip}
-BuildRequires:  %{python_module setuptools}
 BuildRequires:  %{python_module wheel}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
@@ -39,7 +38,6 @@
 BuildArch:      noarch
 Requires:       python-Deprecated
 Requires:       python-importlib-metadata
-Requires:       python-setuptools
 %if %{python_version_nodots} < 37
 Requires:       python-aiocontextvars
 %endif

++++++ opentelemetry_api-1.17.0.tar.gz -> opentelemetry_api-1.21.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opentelemetry_api-1.17.0/.gitignore 
new/opentelemetry_api-1.21.0/.gitignore
--- old/opentelemetry_api-1.17.0/.gitignore     2020-02-02 01:00:00.000000000 
+0100
+++ new/opentelemetry_api-1.21.0/.gitignore     2020-02-02 01:00:00.000000000 
+0100
@@ -63,3 +63,6 @@
 # Django example
 
 docs/examples/django/db.sqlite3
+
+# Semantic conventions
+scripts/semconv/semantic-conventions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opentelemetry_api-1.17.0/PKG-INFO 
new/opentelemetry_api-1.21.0/PKG-INFO
--- old/opentelemetry_api-1.17.0/PKG-INFO       2020-02-02 01:00:00.000000000 
+0100
+++ new/opentelemetry_api-1.21.0/PKG-INFO       2020-02-02 01:00:00.000000000 
+0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: opentelemetry-api
-Version: 1.17.0
+Version: 1.21.0
 Summary: OpenTelemetry Python API
 Project-URL: Homepage, 
https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-api
 Author-email: OpenTelemetry Authors 
<[email protected]>
@@ -19,8 +19,7 @@
 Classifier: Typing :: Typed
 Requires-Python: >=3.7
 Requires-Dist: deprecated>=1.2.6
-Requires-Dist: importlib-metadata~=6.0.0
-Requires-Dist: setuptools>=16.0
+Requires-Dist: importlib-metadata<7.0,>=6.0
 Provides-Extra: test
 Description-Content-Type: text/x-rst
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opentelemetry_api-1.17.0/pyproject.toml 
new/opentelemetry_api-1.21.0/pyproject.toml
--- old/opentelemetry_api-1.17.0/pyproject.toml 2020-02-02 01:00:00.000000000 
+0100
+++ new/opentelemetry_api-1.21.0/pyproject.toml 2020-02-02 01:00:00.000000000 
+0100
@@ -26,10 +26,9 @@
 ]
 dependencies = [
     "Deprecated >= 1.2.6",
-    "setuptools >= 16.0",
     # FIXME This should be able to be removed after 3.12 is released if there 
is a reliable API
     # in importlib.metadata.
-    "importlib-metadata ~= 6.0.0",
+    "importlib-metadata >= 6.0, < 7.0",
 ]
 dynamic = [
     "version",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/_logs/_internal/__init__.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/_logs/_internal/__init__.py
--- old/opentelemetry_api-1.17.0/src/opentelemetry/_logs/_internal/__init__.py  
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/src/opentelemetry/_logs/_internal/__init__.py  
2020-02-02 01:00:00.000000000 +0100
@@ -37,6 +37,7 @@
 from abc import ABC, abstractmethod
 from logging import getLogger
 from os import environ
+from time import time_ns
 from typing import Any, Optional, cast
 
 from opentelemetry._logs.severity import SeverityNumber
@@ -70,6 +71,8 @@
         attributes: Optional["Attributes"] = None,
     ):
         self.timestamp = timestamp
+        if observed_timestamp is None:
+            observed_timestamp = time_ns()
         self.observed_timestamp = observed_timestamp
         self.trace_id = trace_id
         self.span_id = span_id
@@ -143,7 +146,7 @@
 
             version: Optional. The version string of the
                 instrumenting library.  Usually this should be the same as
-                
``pkg_resources.get_distribution(instrumenting_library_name).version``.
+                ``importlib.metadata.version(instrumenting_library_name)``.
 
             schema_url: Optional. Specifies the Schema URL of the emitted 
telemetry.
         """
@@ -199,19 +202,20 @@
         _logger.warning("Overriding of current LoggerProvider is not allowed")
 
 
-def set_logger_provider(meter_provider: LoggerProvider) -> None:
+def set_logger_provider(logger_provider: LoggerProvider) -> None:
     """Sets the current global :class:`~.LoggerProvider` object.
 
     This can only be done once, a warning will be logged if any further attempt
     is made.
     """
-    _set_logger_provider(meter_provider, log=True)
+    _set_logger_provider(logger_provider, log=True)
 
 
 def get_logger(
     instrumenting_module_name: str,
     instrumenting_library_version: str = "",
     logger_provider: Optional[LoggerProvider] = None,
+    schema_url: Optional[str] = None,
 ) -> "Logger":
     """Returns a `Logger` for use within a python process.
 
@@ -223,5 +227,5 @@
     if logger_provider is None:
         logger_provider = get_logger_provider()
     return logger_provider.get_logger(
-        instrumenting_module_name, instrumenting_library_version
+        instrumenting_module_name, instrumenting_library_version, schema_url
     )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/context/__init__.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/context/__init__.py
--- old/opentelemetry_api-1.17.0/src/opentelemetry/context/__init__.py  
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/src/opentelemetry/context/__init__.py  
2020-02-02 01:00:00.000000000 +0100
@@ -172,3 +172,13 @@
 _SUPPRESS_HTTP_INSTRUMENTATION_KEY = create_key(
     "suppress_http_instrumentation"
 )
+
+__all__ = [
+    "Context",
+    "attach",
+    "create_key",
+    "detach",
+    "get_current",
+    "get_value",
+    "set_value",
+]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/environment_variables.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/environment_variables.py
--- old/opentelemetry_api-1.17.0/src/opentelemetry/environment_variables.py     
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/src/opentelemetry/environment_variables.py     
2020-02-02 01:00:00.000000000 +0100
@@ -22,6 +22,29 @@
 """
 .. envvar:: OTEL_METRICS_EXPORTER
 
+Specifies which exporter is used for metrics. See `General SDK Configuration
+<https://opentelemetry.io/docs/concepts/sdk-configuration/general-sdk-configuration/#otel_metrics_exporter>`_.
+
+**Default value:** ``"otlp"``
+
+**Example:**
+
+``export OTEL_METRICS_EXPORTER="prometheus"``
+
+Accepted values for ``OTEL_METRICS_EXPORTER`` are:
+
+- ``"otlp"``
+- ``"prometheus"``
+- ``"none"``: No automatically configured exporter for metrics.
+
+.. note::
+
+    Exporter packages may add entry points for group 
``opentelemetry_metrics_exporter`` which
+    can then be used with this environment variable by name. The entry point 
should point to
+    either a `opentelemetry.sdk.metrics.export.MetricExporter` (push exporter) 
or
+    `opentelemetry.sdk.metrics.export.MetricReader` (pull exporter) subclass; 
it must be
+    constructable without any required arguments. This mechanism is considered 
experimental and
+    may change in subsequent releases.
 """
 
 OTEL_PROPAGATORS = "OTEL_PROPAGATORS"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/metrics/_internal/__init__.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/metrics/_internal/__init__.py
--- 
old/opentelemetry_api-1.17.0/src/opentelemetry/metrics/_internal/__init__.py    
    2020-02-02 01:00:00.000000000 +0100
+++ 
new/opentelemetry_api-1.21.0/src/opentelemetry/metrics/_internal/__init__.py    
    2020-02-02 01:00:00.000000000 +0100
@@ -719,6 +719,7 @@
     name: str,
     version: str = "",
     meter_provider: Optional[MeterProvider] = None,
+    schema_url: Optional[str] = None,
 ) -> "Meter":
     """Returns a `Meter` for use by the given instrumentation library.
 
@@ -729,7 +730,7 @@
     """
     if meter_provider is None:
         meter_provider = get_meter_provider()
-    return meter_provider.get_meter(name, version)
+    return meter_provider.get_meter(name, version, schema_url)
 
 
 def _set_meter_provider(meter_provider: MeterProvider, log: bool) -> None:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/metrics/_internal/instrument.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/metrics/_internal/instrument.py
--- 
old/opentelemetry_api-1.17.0/src/opentelemetry/metrics/_internal/instrument.py  
    2020-02-02 01:00:00.000000000 +0100
+++ 
new/opentelemetry_api-1.21.0/src/opentelemetry/metrics/_internal/instrument.py  
    2020-02-02 01:00:00.000000000 +0100
@@ -38,7 +38,7 @@
 
 _logger = getLogger(__name__)
 
-_name_regex = re_compile(r"[a-zA-Z][-_.a-zA-Z0-9]{0,62}")
+_name_regex = re_compile(r"[a-zA-Z][-_./a-zA-Z0-9]{0,254}")
 _unit_regex = re_compile(r"[\x00-\x7F]{0,63}")
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/propagate/__init__.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/propagate/__init__.py
--- old/opentelemetry_api-1.17.0/src/opentelemetry/propagate/__init__.py        
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/src/opentelemetry/propagate/__init__.py        
2020-02-02 01:00:00.000000000 +0100
@@ -144,11 +144,12 @@
                 )
             ).load()()
         )
-
-    except Exception:  # pylint: disable=broad-except
-        logger.exception(
-            "Failed to load configured propagator: %s", propagator
+    except StopIteration:
+        raise ValueError(
+            f"Propagator {propagator} not found. It is either misspelled or 
not installed."
         )
+    except Exception:  # pylint: disable=broad-except
+        logger.exception("Failed to load propagator: %s", propagator)
         raise
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/trace/__init__.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/trace/__init__.py
--- old/opentelemetry_api-1.17.0/src/opentelemetry/trace/__init__.py    
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/src/opentelemetry/trace/__init__.py    
2020-02-02 01:00:00.000000000 +0100
@@ -588,6 +588,11 @@
                         description=f"{type(exc).__name__}: {exc}",
                     )
                 )
+
+        # This causes parent spans to set their status to ERROR and to record
+        # an exception as an event if a child span raises an exception even if
+        # such child span was started with both record_exception and
+        # set_status_on_exception attributes set to False.
         raise
 
     finally:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/src/opentelemetry/version.py 
new/opentelemetry_api-1.21.0/src/opentelemetry/version.py
--- old/opentelemetry_api-1.17.0/src/opentelemetry/version.py   2020-02-02 
01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/src/opentelemetry/version.py   2020-02-02 
01:00:00.000000000 +0100
@@ -12,4 +12,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-__version__ = "1.17.0"
+__version__ = "1.21.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/tests/logs/test_log_record.py 
new/opentelemetry_api-1.21.0/tests/logs/test_log_record.py
--- old/opentelemetry_api-1.17.0/tests/logs/test_log_record.py  1970-01-01 
01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/tests/logs/test_log_record.py  2020-02-02 
01:00:00.000000000 +0100
@@ -0,0 +1,27 @@
+# Copyright The OpenTelemetry Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import unittest
+from unittest.mock import patch
+
+from opentelemetry._logs import LogRecord
+
+OBSERVED_TIMESTAMP = "OBSERVED_TIMESTAMP"
+
+
+class TestLogRecord(unittest.TestCase):
+    @patch("opentelemetry._logs._internal.time_ns")
+    def test_log_record_observed_timestamp_default(self, time_ns_mock):  # 
type: ignore
+        time_ns_mock.return_value = OBSERVED_TIMESTAMP
+        self.assertEqual(LogRecord().observed_timestamp, OBSERVED_TIMESTAMP)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/tests/metrics/test_instruments.py 
new/opentelemetry_api-1.21.0/tests/metrics/test_instruments.py
--- old/opentelemetry_api-1.17.0/tests/metrics/test_instruments.py      
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/tests/metrics/test_instruments.py      
2020-02-02 01:00:00.000000000 +0100
@@ -564,14 +564,13 @@
         )
 
     def test_name_check(self):
-
         instrument = ChildInstrument("name")
 
         self.assertEqual(
             instrument._check_name_unit_description(
-                "a" * 63, "unit", "description"
+                "a" * 255, "unit", "description"
             )["name"],
-            "a" * 63,
+            "a" * 255,
         )
         self.assertEqual(
             instrument._check_name_unit_description(
@@ -591,13 +590,25 @@
             )["name"],
             "a_",
         )
+        self.assertEqual(
+            instrument._check_name_unit_description(
+                "a/", "unit", "description"
+            )["name"],
+            "a/",
+        )
 
-        self.assertIsNone(
+        # the old max length
+        self.assertIsNotNone(
             instrument._check_name_unit_description(
                 "a" * 64, "unit", "description"
             )["name"]
         )
         self.assertIsNone(
+            instrument._check_name_unit_description(
+                "a" * 256, "unit", "description"
+            )["name"]
+        )
+        self.assertIsNone(
             instrument._check_name_unit_description(
                 "Ñ", "unit", "description"
             )["name"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/opentelemetry_api-1.17.0/tests/propagators/test_propagators.py 
new/opentelemetry_api-1.21.0/tests/propagators/test_propagators.py
--- old/opentelemetry_api-1.17.0/tests/propagators/test_propagators.py  
2020-02-02 01:00:00.000000000 +0100
+++ new/opentelemetry_api-1.21.0/tests/propagators/test_propagators.py  
2020-02-02 01:00:00.000000000 +0100
@@ -15,7 +15,6 @@
 # type: ignore
 
 from importlib import reload
-from logging import ERROR
 from os import environ
 from unittest import TestCase
 from unittest.mock import Mock, patch
@@ -109,16 +108,16 @@
     )
     def test_composite_propagators_error(self):
 
-        # pylint: disable=import-outside-toplevel
-        import opentelemetry.propagate
-
-        with self.assertRaises(Exception):
-            with self.assertLogs(level=ERROR) as err:
-                reload(opentelemetry.propagate)
-                self.assertIn(
-                    "Failed to load configured propagator `unknown`",
-                    err.output[0],
-                )
+        with self.assertRaises(ValueError) as cm:
+            # pylint: disable=import-outside-toplevel
+            import opentelemetry.propagate
+
+            reload(opentelemetry.propagate)
+
+        self.assertEqual(
+            str(cm.exception),
+            "Propagator unknown not found. It is either misspelled or not 
installed.",
+        )
 
 
 class TestTraceContextTextMapPropagator(TestCase):

Reply via email to