Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion eng/tools/azure-sdk-tools/ci_tools/functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -745,7 +745,20 @@ def resolve_compatible_package(package_name: str, immutable_requirements: List[R
versions = [v for v in versions if not v.is_prerelease]

for version in versions:
version_release = pypi.project_release(package_name, version).get("info", {}).get("requires_dist", [])
# ``project_release`` reads per-version metadata from the PyPI JSON API. Under the
# ``CFSClean`` network isolation policy pypi.org is unreachable, so this best-effort
# compatibility walk cannot fetch metadata. Treat an unreachable endpoint as "no info"
# and continue rather than hard-failing the entire dependency check.
try:
version_release = pypi.project_release(package_name, version).get("info", {}).get("requires_dist", [])
except Exception as e:
logging.warning(
"Unable to retrieve release metadata for %s==%s while resolving a compatible version: %s",
Comment on lines +752 to +756
package_name,
version,
e,
)
continue

if version_release:
requirements_for_dev_req = [Requirement(r) for r in version_release]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,29 @@
NEW_DEV_REQ_FILE = "new_dev_requirements.txt"
PKGS_TXT_FILE = "packages.txt"

# Internal Azure Artifacts (CFS) feed used when no usable index is configured. Version resolution
# below builds a ``PyPIClient`` whose backend is chosen from ``PIP_INDEX_URL``: an Azure Artifacts
# URL selects the AzDO REST backend, anything else falls back to pypi.org. Under the ``CFSClean``
# network isolation policy, pypi.org egress is blocked, so an unset or pypi.org index would make
# resolution fail. Mirror the default applied by ``azpysdk.main`` so shared resolution always
# targets the CFS feed unless an Azure Artifacts index is already set.
CFS_INDEX_URL = "https://pkgs.dev.azure.com/azure-sdk/public/_packaging/azure-sdk-for-python/pypi/simple/"


def _ensure_resolution_index() -> None:
"""Point ``PIP_INDEX_URL`` at the CFS feed unless an Azure Artifacts index is already set.

This keeps ``PyPIClient`` on its AzDO backend during version resolution, which is required
under the ``CFSClean`` policy that blocks pypi.org.
"""

current = os.environ.get("PIP_INDEX_URL", "")
if "pkgs.dev.azure.com" in current:
return
Comment on lines +48 to +50
if current:
logger.info("Overriding PIP_INDEX_URL %s with CFS feed for dependency resolution.", current)
os.environ["PIP_INDEX_URL"] = CFS_INDEX_URL
Comment on lines +48 to +53

# GENERIC_OVERRIDES dictionaries pair a specific dependency with a MINIMUM or MAXIMUM inclusive bound.
# During LATEST and MINIMUM dependency checks, we sometimes need to ignore versions for various compatibility
# reasons.
Expand Down Expand Up @@ -121,6 +144,8 @@ def install_dependent_packages(

python_exe = python_executable or sys.executable

_ensure_resolution_index()

released_packages = find_released_packages(setup_py_file_path, dependency_type)
override_added_packages: List[str] = []

Expand Down
6 changes: 6 additions & 0 deletions sdk/eventhub/azure-eventhub/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Release History

## 5.15.2 (Unreleased)

### Bugs Fixed

- Fixed a bug where the async pure-Python AMQP transport failed to connect with `[Errno 22] Invalid argument` (`amqp:socket-error`) inside containerized/virtualized environments such as Docker Desktop on macOS. The transport no longer reads back and re-applies platform-negotiated TCP options (e.g. `TCP_MAXSEG`) that some platforms reject via `setsockopt`. Also fixed the async transport to apply default TCP socket settings even when no custom `socket_settings` are provided. ([#45394](https://github.com/Azure/azure-sdk-for-python/issues/45394))

## 5.15.1 (2025-11-11)

### Bugs Fixed
Expand Down
Loading
Loading