Opened 4 months ago

Last modified 3 months ago

#69087 assigned defect

py-jsonschema broken by update to @4.20 which forced Rust dependency

Reported by: barracuda156 Owned by: stromnov (Andrey Stromnov)
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: yosemite, mavericks, mountainlion, lion, snowleopard, leopard, tiger Cc: johankytt
Port: py311-jsonschema, py310-jsonschema, py39-jsonschema

Description

Update to 4.20 has broken the port due to coercing Rust as a dependency: https://github.com/macports/macports-ports/commit/e0af71afd0e9bd65857c5071c6027d3e50657419

See numerous systems failing here: https://ports.macports.org/port/py311-rpds-py/details

Change History (4)

comment:1 Changed 4 months ago by barracuda156

36-246% port rdeps py311-jsonschema
Warning: All compilers are either blacklisted or unavailable; defaulting to first fallback option
The following ports are dependencies of py311-jsonschema @4.20.0_0:
  py311-hatch-vcs
    py311-build
      py-bootstrap-modules
      py311-installer
        python311
          xz
            lbzip2
            gettext
              libiconv
                gperf
              libtextstyle
                ncurses
              gettext-runtime
              gettext-tools-libs
          pkgconfig
          gcc13
            texinfo
              help2man
                perl5.34
                  db48
                  gdbm
                    readline
                p5.34-locale-gettext
            gcc10-bootstrap
            cctools
              libunwind-headers
                xz-bootstrap
            gmp
            isl
            ld64
              ld64-97
                libmacho-headers
                llvm-3.4
                  python27
                    bzip2
                    expat
                    libedit
                    libffi
                      expect
                        automake
                          autoconf
                            m4
                        tcl
                      dejagnu
                    sqlite3
                      zlib
                    openssl11
                      perl5
                    python_select
                    python2_select
                  llvm_select
            libmpc
              mpfr
            zstd
              lz4
            gcc_select
            libgcc
              libgcc13
          openssl
            openssl3
          python_select-311
          python3_select-311
            python3_select
      py311-packaging
        py311-pretend
          py311-setuptools
          py311-wheel
            py311-flit_core
          py311-pytest
            py311-setuptools_scm
              py311-typing_extensions
            py311-attrs
              py311-hatchling
                py311-editables
                py311-pathspec
                py311-pluggy
                py311-trove-classifiers
                  py311-calver
                hatchling_select
              py311-hatch-fancy-pypi-readme
              py311-hypothesis
                py311-sortedcontainers
              py311-zopeinterface
                py311-coverage
                py311-zope-event
            py311-iniconfig
            py311-py
            pytest_select
      py311-pyproject_hooks
        py311-testpath
  py311-jsonschema-specifications
    py311-referencing
      py311-rpds-py
        py311-maturin
          py311-setuptools-rust
            py311-semantic_version
            cargo
              cmake
                curl
                  brotli
                    cmake-bootstrap
                  libidn2
                    libunistring
                      libtool
                  libpsl
                    python310
                  curl-ca-bundle
                    unzip
                libarchive
                  libxml2
                    icu
                  lzo2
                  libb2
                libuv
                  legacy-support
              rust
                ninja
                  re2c
                    bison
                      bison-runtime
                libgit2
                  libssh2
                  pcre2

comment:2 Changed 4 months ago by jmroot (Joshua Root)

You make it sound like the contributor who updated the port chose to have it use rust. That's just one of the dependencies of the new version. There's already a ticket about rust failing to build on old OS versions IIRC.

comment:3 Changed 3 months ago by johankytt

I think the issue with the Rust dependency should be directed towards the authors of jsonschema.

Here's an attempt to fix the build for old OS-s using an older version of jsonschema. However I have no possibility of testing this myself as I have no machines running those OS-s. https://github.com/macports/macports-ports/pull/22164

comment:4 in reply to:  3 Changed 3 months ago by barracuda156

Replying to johankytt:

I think the issue with the Rust dependency should be directed towards the authors of jsonschema.

Here's an attempt to fix the build for old OS-s using an older version of jsonschema. However I have no possibility of testing this myself as I have no machines running those OS-s. https://github.com/macports/macports-ports/pull/22164

I can test that on Intel and PowerPC, I have 10.6 for all three archs. Will reply in your PR.

Note: See TracTickets for help on using tickets.