diff --git a/_multibuild b/_multibuild
new file mode 100644
index 0000000..6996b96
--- /dev/null
+++ b/_multibuild
@@ -0,0 +1,3 @@
+
+ test
+
diff --git a/opentelemetry_api-1.25.0.tar.gz b/opentelemetry_api-1.25.0.tar.gz
deleted file mode 100644
index f5fc4fd..0000000
--- a/opentelemetry_api-1.25.0.tar.gz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:77c4985f62f2614e42ce77ee4c9da5fa5f0bc1e1821085e9a47533a9323ae869
-size 60383
diff --git a/opentelemetry_api-1.27.0.tar.gz b/opentelemetry_api-1.27.0.tar.gz
new file mode 100644
index 0000000..b85703f
--- /dev/null
+++ b/opentelemetry_api-1.27.0.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ed673583eaa5f81b5ce5e86ef7cdaf622f88ef65f0b9aab40b843dcae5bef342
+size 62693
diff --git a/python-opentelemetry-api.changes b/python-opentelemetry-api.changes
index 3b9a76c..1c68c74 100644
--- a/python-opentelemetry-api.changes
+++ b/python-opentelemetry-api.changes
@@ -1,3 +1,60 @@
+-------------------------------------------------------------------
+Mon Sep 2 08:01:13 UTC 2024 - John Paul Adrian Glaubitz
+
+- Update to 1.27.0
+ * Implementation of Events API (#4054)
+ * Make log sdk add `exception.message` to logRecord for exceptions whose argument
+ is an exception not a string message (#4122)
+ * Fix use of `link.attributes.dropped`, which may not exist (#4119)
+ * Running mypy on SDK resources (#4053)
+ * Added py.typed file to top-level module (#4084)
+ * Drop Final annotation from Enum in semantic conventions (#4085)
+ * Update log export example to not use root logger (#4090)
+ * sdk: Add OS resource detector (#3992)
+ * sdk: Accept non URL-encoded headers in `OTEL_EXPORTER_OTLP_*HEADERS`
+ to match other languages SDKs (#4103)
+ * Update semantic conventions to version 1.27.0 (#4104)
+ * Add support to type bytes for OTLP AnyValue (#4128)
+ * Export ExponentialHistogram and ExponentialHistogramDataPoint (#4134)
+ * Implement Client Key and Certificate File Support for All OTLP Exporters (#4116)
+ * Remove `_start_time_unix_nano` attribute from `_ViewInstrumentMatch` in favor
+ of using `time_ns()` at the moment when the aggregation object is created (#4137)
+- from version 1.26.0
+ * Standardizing timeout calculation in measurement consumer collect to nanoseconds (#4074)
+ * Optional scope attributes for logger creation (#4035)
+ * Optional scope attribute for tracer creation (#4028)
+ * OTLP exporter is encoding invalid span/trace IDs in the logs fix (#4006)
+ * Update sdk process resource detector `process.command_args` attribute
+ to also include the executable itself (#4032)
+ * Fix `start_time_unix_nano` for delta collection for explicit bucket
+ histogram aggregation (#4009)
+ * Fix `start_time_unix_nano` for delta collection for sum aggregation (#4011)
+ * Update opentracing and opencesus docs examples to not use JaegerExporter (#4023)
+ * Do not execute Flask Tests in debug mode (#3956)
+ * When encountering an error encoding metric attributes in the OTLP exporter,
+ log the key that had an error. (#3838)
+ * Fix `ExponentialHistogramAggregation` (#3978)
+ * Log a warning when a `LogRecord` in `sdk/log` has dropped attributes
+ due to reaching limits (#3946)
+ * Fix RandomIdGenerator can generate invalid Span/Trace Ids (#3949)
+ * Add Python 3.12 to tox (#3616)
+ * Improve resource field structure for LogRecords (#3972)
+ * Update Semantic Conventions code generation scripts:
+ + Fix namespace exclusion that resulted in dropping `os` and `net` namespaces.
+ + Add `Final` decorator to constants to prevent collisions
+ + Enable mypy and fix detected issues
+ + Allow to drop specific attributes in preparation for Semantic Conventions v1.26.0 (#3973)
+ * Update semantic conventions to version 1.26.0. (#3964)
+ * Use semconv exception attributes for record exceptions in spans (#3979)
+ * Fix _encode_events assumes events.attributes.dropped exists (#3965)
+ * Validate links at span creation (#3991)
+ * Add attributes field in `MeterProvider.get_meter` and `InstrumentationScope` (#4015)
+ * Fix inaccessible `SCHEMA_URL` constants in `opentelemetry-semantic-conventions` (#4069)
+- Add python-opentelemetry-test-utils to BuildRequires
+- Enable all previously disabled tests in %check section
+- Split off tests into separate -test package to avoid circular
+ build dependency with python-opentelemetry-test-utils
+
-------------------------------------------------------------------
Mon Jun 17 11:41:56 UTC 2024 - Dirk Müller
diff --git a/python-opentelemetry-api.spec b/python-opentelemetry-api.spec
index 341517c..4a90e06 100644
--- a/python-opentelemetry-api.spec
+++ b/python-opentelemetry-api.spec
@@ -16,9 +16,18 @@
#
+%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == "test"
+%define psuffix -test
+%bcond_without test
+%else
+%define psuffix %{nil}
+%bcond_with test
+%endif
+
%{?sle15_python_module_pythons}
-Name: python-opentelemetry-api
-Version: 1.25.0
+Name: python-opentelemetry-api%{?psuffix}
+Version: 1.27.0
Release: 0
Summary: OpenTelemetry Python API
License: Apache-2.0
@@ -40,9 +49,11 @@ Requires: python-importlib-metadata
%if %{python_version_nodots} < 37
Requires: python-aiocontextvars
%endif
-# SECTION test requirements
+%if %{with test}
+BuildRequires: %{python_module opentelemetry-api = %{version}}
+BuildRequires: %{python_module opentelemetry-test-utils == 0.48b0}
BuildRequires: %{python_module pytest}
-# /SECTION
+%endif
%python_subpackages
%description
@@ -51,22 +62,26 @@ OpenTelemetry Python API
%prep
%setup -q -n opentelemetry_api-%{version}
+%if !%{with test}
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%endif
+%if %{with test}
%check
-# ignore some tests because we don't have opentelemetry.test module
-# gh#open-telemetry/opentelemetry-python#2263
-%pytest --ignore tests/util/test_once.py --ignore tests/logs/test_logger_provider.py --ignore tests/logs/test_proxy.py --ignore tests/metrics/test_meter_provider.py --ignore tests/trace/test_globals.py --ignore tests/trace/test_proxy.py
+%pytest
+%endif
+%if !%{with test}
%files %{python_files}
%doc README.rst
%license LICENSE
%{python_sitelib}/opentelemetry
%{python_sitelib}/opentelemetry_api-%{version}*-info
+%endif
%changelog