Skip to content

Brew installed version fails while rendering the markdown file #112

@kracekumar

Description

@kracekumar

Installation

  • I installed the CLI tool via brew as mentioned in the README. Here is the trace
brew tap textualize/homebrew
                                      brew install frogmouth
==> Tapping textualize/homebrew
Cloning into '/opt/homebrew/Library/Taps/textualize/homebrew-homebrew'...
remote: Enumerating objects: 47, done.
remote: Counting objects: 100% (47/47), done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 47 (delta 22), reused 41 (delta 16), pack-reused 0 (from 0)
Receiving objects: 100% (47/47), 17.74 KiB | 672.00 KiB/s, done.
Resolving deltas: 100% (22/22), done.
Tapped 4 formulae (18 files, 43.6KB).
==> Downloading https://formulae.brew.sh/api/formula.jws.json
##################################################################################################################################################################################### 100.0%
==> Downloading https://formulae.brew.sh/api/cask.jws.json
##################################################################################################################################################################################### 100.0%
==> Fetching dependencies for textualize/homebrew/frogmouth: ca-certificates
==> Fetching ca-certificates
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2024-12-31
##################################################################################################################################################################################### 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/blobs/sha256:414ada64e60703cd4e9aa97f36e29c1a7ec73d60862b5219b8110731fcfd2cb7
##################################################################################################################################################################################### 100.0%
==> Fetching textualize/homebrew/frogmouth
==> Downloading https://files.pythonhosted.org/packages/db/4d/3970183622f0330d3c23d9b8a5f52e365e50381fd484d08e3285104333d3/anyio-4.3.0.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/71/da/e94e26401b62acd6d91df2b52954aceb7f561743aa5ccc32152886c76c96/certifi-2024.2.2.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/f5/38/3af3d3633a34a3316095b39c8e8fb4853a28a536e55d347bd8d8e9a14b03/h11-0.14.0.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/63/ad/c98ecdbfe04417e71e143bf2f2fb29128e4787d78d1cedba21bd250c7e7a/httpcore-0.17.3.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/f8/2a/114d454cb77657dbf6a293e69390b96318930ace9cd96b51b99682493276/httpx-0.24.1.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/bf/3f/ea4b9117521a1e9c50344b909be7886dd00a519552724809bb1f486986c2/idna-3.6.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/64/dd/7467b3be0e863401438a407411f78c33376748aff39ec0b8f45f6739c86c/importlib_metadata-7.0.2.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/2a/ae/bb56c6828e4797ba5a4821eec7c43b8bf40f69cda4d4f5f8c8a2810ec96a/linkify-it-py-2.0.3.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/38/71/3b932df36c1a044d397a1f92d1cf91ee0a503d91e470cbd670aa66b07ed0/markdown-it-py-3.0.0.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/b4/db/61960d68d5c39ff0dd48cb799a39ae4e297f6e9b96bf2f8da29d897fba0c/mdit_py_plugins-0.4.0.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/55/59/8bccf4157baf25e4aa5a0bb7fa3ba8600907de105ebc22b0c78cfbf6f565/pygments-2.17.2.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/b3/01/c954e134dc440ab5f96952fe52b4fdc64225530320a910473c1fe270d9aa/rich-13.7.1.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/a2/87/a6771e1546d97e7e041b6ae58d80074f81b7d5121207425c964ddf5cfdbd/sniffio-1.3.1.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/5c/9e/000c6910f8390cdec827e738e52c6ab21501d7ce7b18d31293dd53879db8/textual-0.43.2.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/16/3a/0d26ce356c7465a19c9ea8814b960f8a36c3b0d07c323176620b7b483e44/typing_extensions-4.10.0.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/91/7a/146a99696aee0609e3712f2b44c6274566bc368dfe8375191278045186b8/uc-micro-py-1.0.3.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/2a/b9/0e6e6f19fb75cf5e1758f4f33c1256738f718966700cffc0fde2f966218b/xdg-6.0.0.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/3e/ef/65da662da6f9991e87f058bc90b91a935ae655a16ae5514660d6460d1298/zipp-3.18.1.tar.gz
##################################################################################################################################################################################### 100.0%
==> Downloading https://files.pythonhosted.org/packages/75/2e/747826187029cd9fae0761573d5ebf3566417b0bc4d8ed1caafa9bd8819f/frogmouth-0.9.2.tar.gz
##################################################################################################################################################################################### 100.0%
==> Installing frogmouth from textualize/homebrew
==> Installing dependencies for textualize/homebrew/frogmouth: ca-certificates
==> Installing textualize/homebrew/frogmouth dependency: ca-certificates
==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2024-12-31
Already downloaded: /Users/kracekumar/Library/Caches/Homebrew/downloads/c41a485689e1507291617fb1f0e2322a087064960638fd050663df867bf53928--ca-certificates-2024-12-31.bottle_manifest.json
==> Pouring ca-certificates--2024-12-31.all.bottle.tar.gz
==> Regenerating CA certificate bundle from keychain, this may take a while...
🍺  /opt/homebrew/Cellar/ca-certificates/2024-12-31: 4 files, 233.9KB
==> Installing textualize/homebrew/frogmouth
==> python3 -m venv --system-site-packages --without-pip /opt/homebrew/Cellar/frogmouth/0.9.2/libexec
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--anyio-20250102-95415-s66zse/anyio-4.3.0
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--certifi-20250102-95415-3yjpw0/certifi-2024.2.2
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--h11-20250102-95415-kzykp/h11-0.14.0
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--httpcore-20250102-95415-b3t9o8/httpcore-0.17.3
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--httpx-20250102-95415-quy7z8/httpx-0.24.1
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--idna-20250102-95415-85re4a/idna-3.6
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--importlib-metadata-20250102-95415-i2ijfc/importlib_metadata-7.0.2
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--linkify-it-py-20250102-95415-u9adfo/linkify-it-py-2.0.3
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--markdown-it-py-20250102-95415-i53pgg/markdown-it-py-3.0.0
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--mdit-py-plugins-20250102-95415-u03mhs/mdit_py_plugins-0.4.0
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--mdurl-20250102-95415-3r9v8z/mdurl-0.1.2
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--Pygments-20250102-95415-k8cvq2/pygments-2.17.2
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--rich-20250102-95415-7xaliy/rich-13.7.1
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--sniffio-20250102-95415-jqb5s0/sniffio-1.3.1
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--textual-20250102-95415-oqu63/textual-0.43.2
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--typing-extensions-20250102-95415-65gg38/typing_extensions-4.10.0
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--uc-micro-py-20250102-95415-fvwvlz/uc-micro-py-1.0.3
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--xdg-20250102-95415-xc5q89/xdg-6.0.0
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth--zipp-20250102-95415-hr5kn5/zipp-3.18.1
==> python3 -m pip --python=/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/bin/python install /private/tmp/frogmouth-20250102-95415-yldnrj/frogmouth-0.9.2
🍺  /opt/homebrew/Cellar/frogmouth/0.9.2: 1,076 files, 9.2MB, built in 33 seconds
==> Running `brew cleanup frogmouth`.....
  • As you can see the CLI was successfully installed.

Failure

  • When I run the command to render the markdown file, the CLI raises python exception
  • Here is na example
frogmouth open-webui/README.md
Traceback (most recent call last):
  File "/opt/homebrew/bin/frogmouth", line 5, in <module>
    from frogmouth.app.app import run
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/frogmouth/app/__init__.py", line 3, in <module>
    from .app import run
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/frogmouth/app/app.py", line 6, in <module>
    from textual import __version__ as textual_version  # pylint: disable=no-name-in-module
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/textual/__init__.py", line 13, in <module>
    from ._work_decorator import work
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/textual/_work_decorator.py", line 18, in <module>
    FactoryParamSpec = ParamSpec("FactoryParamSpec")
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/typing_extensions.py", line 1549, in __new__
    _set_default(paramspec, default)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/typing_extensions.py", line 1412, in _set_default
    type_param.__default__ = None
    ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: attribute '__default__' of 'typing.ParamSpec' objects is not writable

Extra info for debugging

$python3 --version
Python 3.13.1
$frogmouth --version
Traceback (most recent call last):
  File "/opt/homebrew/bin/frogmouth", line 5, in <module>
    from frogmouth.app.app import run
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/frogmouth/app/__init__.py", line 3, in <module>
    from .app import run
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/frogmouth/app/app.py", line 6, in <module>
    from textual import __version__ as textual_version  # pylint: disable=no-name-in-module
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/textual/__init__.py", line 13, in <module>
    from ._work_decorator import work
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/textual/_work_decorator.py", line 18, in <module>
    FactoryParamSpec = ParamSpec("FactoryParamSpec")
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/typing_extensions.py", line 1549, in __new__
    _set_default(paramspec, default)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/frogmouth/0.9.2/libexec/lib/python3.13/site-packages/typing_extensions.py", line 1412, in _set_default
    type_param.__default__ = None
    ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: attribute '__default__' of 'typing.ParamSpec' objects is not writable
$which frogmouth
/opt/homebrew/bin/frogmouth
$pyenv versions
\* system (set by /Users/kracekumar/.pyenv/version)
  3.11.11
  3.12.0
  3.13.0

Let me know if you need any information.

Bottom line: Frogmouth installed via brew on Python 3.13.1 is broken.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions