NH-23784 NH-104999 Build sdist without setup.py; use build for sdist#616
Merged
tammy-baylis-swi merged 2 commits intopure-pythonfrom Apr 28, 2025
Merged
NH-23784 NH-104999 Build sdist without setup.py; use build for sdist#616tammy-baylis-swi merged 2 commits intopure-pythonfrom
tammy-baylis-swi merged 2 commits intopure-pythonfrom
Conversation
jerrytfleung
added a commit
that referenced
this pull request
Apr 28, 2025
Updates APM Python to be a Pure Python library, where all signals export by OTLP HTTP by default. This branch includes changes from 53 PRs that have each been tested. Regular release and testing process will be followed after merging this into main. List of all PRs ### Added - Added ApmConfig mapping for pure Python sampler ([#552](#552), [#589](#589)) - Added pure Python transaction name pool ([#559](#559)) - Added suppression of tracing when HTTP getSettings ([#560](#560)) - Added resource detection for AWS, Azure, Kubernetes, UAMS written to resource attributes ([#577](#577), [#596](#596)) - Added internal deduction of export endpoint from SW_APM_COLLECTOR ([#590](#590), [#602](#602)) ### Changed - Updated custom transaction naming as pure Python ([#558](#558)) - Simplified spankind check ([#561](#561)) - Updated `http.route` assignment based on semconv ([#562](#562)) - Updated to register NoOp provider if not exporting ([#566](#566)) - Fixed counter metrics init ([#564](#564)) - Refactored ResponseTime metrics and request counters ([#563](#563), [#567](#567), [#568](#568)) - Fixed transaction name environment config support ([#569](#569)) - Breaking: changed SolarWindsSpan Exporter to no-op for future removal ([#572](#572)) - Redesigned custom Configurator ([#578](#578), [#581](#581)) - Updated `solarwinds_ready` API function for pure Python ([#582](#582), [#584](#584), [#599](#599)) - Breaking: Changed default export protocol to OTLP HTTP for all signals ([#580](#580)) - Updated Lambda dependencies and builds for resource detection ([#593](#593)) - Fixed Configurator exporter loading to prevent ImportError ([#592](#592)) - Updated smoke tests / verify_install for pure Python ([#595](#595)) - Updated PyPI sdist, wheel publishes in pure Python ([#597](#597)) - Breaking: Unified AWS Lambda builds for pure Python without architecture in layer name ([#594](#594)) - Update autoinstrumentation-python image builds for pure Python, beta testing ([#598](#598)) - Updated default OTel export header assignment for SWO vs other ([#601](#601)) - Fixed HttpSampler warning message ([#604](#604)) - Breaking: Updated local development setup for pure Python ([#603](#603)) - Fixed `sw.w3c.tracestate` attribute assignment ([#606](#606)) - Updated integration tests ([#605](#605)) - Updated units, descriptions of APM counters ([#608](#608)) - Updated sampler init ([#609](#609)) - Updated `SW_APM_LOG_FILEPATH` support for Pure Python ([#613](#613)) - Fixed tracestate KV deletion ([#617](#617)) ### Removed - Breaking: removed c-lib extension and legacy components ([#549](#549), [#612](#612), [#614](#614)) - Removed discontinued OboeAPI ([#565](#565)) - Removed legacy configuration logic ([#570](#570), [#571](#571), [#583](#583)) - Removed discontinued grpcio-using dependencies from Lambda builds ([#591](#591)) - Removed warning log for Lambda mode ([#600](#600)) - Removed unnecessary tests ([#611](#611), [#610](#610), [#615](#615)) - Removed setup.py usage for builds ([#616](#616)) --------- Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com> Co-authored-by: tammy-baylis-swi <tammy.baylis@solarwinds.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updates sdist builds to no longer need setup.py, which is easier since APM Python is pure Python. We do this because setup.py is legacy and pyproject.toml should be used: https://pip.pypa.io/en/stable/reference/build-system/#build-system-interface. Adds
builddependency to publish/dev container for building sdist.TestPyPI was published successfully to https://test.pypi.org/project/solarwinds-apm/4.0.0.10/#files and smoke tests pass: https://github.com/solarwinds/apm-python/actions/runs/14674509169. See ticket comment for additional testing.