Uploaded image for project: 'AI Platform Core Components'
  1. AI Platform Core Components
  2. AIPCC-10928

Add alchemy-logging into the RHAI pipeline onboarding collection

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • None
    • None
    • False
    • Hide

      None

      Show
      None
    • False

      Add package 'alchemy-logging' into the RHAI pipeline onboarding collection.

      The package requires builder repository onboarding before it can be added to the RHAI pipeline. This ticket is blocked by the builder onboarding ticket.

      Summary

      Here is the executive summary formatted as a JIRA comment in JIRA wiki markup:

      Executive Summary: alchemy-logging (alog) Packaging Analysis

      alchemy-logging (PyPI: `alchemy-logging`, import: `alog`) is a Simple complexity pure-Python logging framework maintained by IBM. It carries a 1/10 complexity score with zero native compilation requirements, zero system library dependencies, and — for Python 3.8+ — zero runtime dependencies. The resulting wheel is tagged `py3-none-any`, meaning a single build serves all platforms and architectures. The license is MIT, fully compatible with Red Hat redistribution. This package is one of the most straightforward onboarding candidates in the pipeline.

      The single critical blocker for building from source is the `setup.py`'s unconditional requirement for the `PYTHON_RELEASE_VERSION` environment variable. Without it, any build invocation fails with an `AssertionError`. This is by design — IBM's CI injects the version at release time rather than hardcoding it. For the RHEL AI wheels pipeline (MR !1953), the fix is a one-line configuration change:

      PYTHON_RELEASE_VERSION=1.5.1 pip wheel --no-deps -w dist .
      

      Note that the repository is a multi-language monorepo; the Python source resides exclusively in `src/python/`, and build scripts must target that subdirectory — not the repository root.

      Version 1.5.1 (latest, released 2025-12-18) is the recommended target. It fixes a `utcfromtimestamp` deprecation warning affecting Python 3.12+ (#597). One additional note: version 1.5.1 was published to PyPI without an sdist, so building from source requires cloning the git repository rather than downloading from PyPI. The pre-built `py3-none-any` wheel on PyPI is a valid fallback since pure-Python wheels are platform-independent. Also be aware that an unrelated `alog` package exists on PyPI — ensure dependency resolution pulls `alchemy-logging`, not the separate `alog` project.

      Key Recommendations for Onboarding (AIPCC-10923)

      • Set `PYTHON_RELEASE_VERSION=1.5.1` as a build environment variable — this is the only required customization
      • Build from `src/python/` within the git checkout, not the repository root
      • Mark as noarch / universal — no architecture-specific builds needed despite the ticket specifying x86_64
      • This package feeds the caikit dependency chain (AIPCC-10389) and introduces zero transitive dependency complexity
      • Validate with: `python -c "import alog; alog.configure('info')"` as a basic smoke test

              epacific@redhat.com Einat Pacifici
              aipcc-jira-bot@redhat.com AIPCC JIRABOT
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: