squidfunk / mkdocs-material

Documentation that simply works

Home Page:https://squidfunk.github.io/mkdocs-material/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TypeError: file.replace is not a function

brotherdust opened this issue · comments

Contribution guidelines

I've found a bug and checked that ...

  • ... the problem doesn't occur with the mkdocs or readthedocs themes
  • ... the problem persists when all overrides are removed, i.e. custom_dir, extra_javascript and extra_css
  • ... the documentation does not mention anything about my problem
  • ... there are no open or closed issues that are related to my problem

Description

Trying to do some theme development. Set up the dev environment as documented here: https://squidfunk.github.io/mkdocs-material/customization/#theme-development

I run npm start, and it starts without error.
I make a change to a file in the theme, and it spits out an error (see below).

Expected behaviour

File changes do not cause npm to crash.

Actual behaviour

Error output:

npm start

> mkdocs-material@8.2.13 start /home/jarad/work/rbb-docs/mkdocs-material
> ts-node -T tools/build --verbose --all --dirty --watch

14:01:07 + material/assets/stylesheets/main.css.map
14:01:07 + material/assets/stylesheets/main.css
14:01:08 + material/assets/stylesheets/palette.css.map
14:01:08 + material/assets/stylesheets/palette.css
14:01:08 + material/assets/javascripts/bundle.js
14:01:08 + material/assets/javascripts/bundle.js.map
14:01:08 + material/overrides/assets/stylesheets/main.css.map
14:01:08 + material/overrides/assets/stylesheets/main.css
14:01:08 + material/assets/javascripts/workers/search.js
14:01:08 + material/assets/javascripts/workers/search.js.map
14:01:08 + material/overrides/assets/javascripts/bundle.js
14:01:08 + material/overrides/assets/javascripts/bundle.js.map
14:01:08 + material/base.html
14:01:08 + material/404.html
14:01:08 + material/main.html
14:01:08 + material/overrides/blog.html
14:01:08 + material/overrides/home.html
14:01:08 + material/overrides/main.html
14:01:08 + material/overrides/partials/content.html
14:01:08 + material/partials/content.html
14:01:08 + material/partials/copyright.html
14:01:08 + material/partials/footer.html
14:01:08 + material/partials/header.html
14:01:08 + material/partials/integrations/analytics.html
14:01:08 + material/partials/javascripts/outdated.html
14:01:08 + material/partials/javascripts/palette.html
14:01:08 + material/partials/javascripts/base.html
14:01:08 + material/partials/integrations/analytics/google.html
14:01:08 + material/partials/language.html
14:01:08 + material/partials/languages/af.html
14:01:08 + material/partials/languages/bg.html
14:01:08 + material/partials/languages/bn.html
14:01:08 + material/partials/languages/ca.html
14:01:08 + material/partials/languages/cs.html
14:01:08 + material/partials/languages/da.html
14:01:08 + material/partials/languages/de.html
14:01:08 + material/partials/languages/el.html
14:01:08 + material/partials/languages/ar.html
14:01:08 + material/partials/languages/en.html
14:01:08 + material/partials/languages/es.html
14:01:08 + material/partials/languages/et.html
14:01:08 + material/partials/languages/fa.html
14:01:08 + material/partials/languages/eo.html
14:01:08 + material/partials/languages/fi.html
14:01:08 + material/partials/languages/fr.html
14:01:08 + material/partials/languages/gl.html
14:01:08 + material/partials/languages/he.html
14:01:08 + material/partials/languages/hi.html
14:01:08 + material/partials/languages/hr.html
14:01:08 + material/partials/languages/id.html
14:01:08 + material/partials/languages/hu.html
14:01:08 + material/partials/languages/is.html
14:01:08 + material/partials/languages/it.html
14:01:08 + material/partials/languages/ka.html
14:01:08 + material/partials/languages/kr.html
14:01:08 + material/partials/languages/lv.html
14:01:08 + material/partials/languages/mk.html
14:01:08 + material/partials/languages/ja.html
14:01:08 + material/partials/languages/mn.html
14:01:08 + material/partials/languages/ms.html
14:01:08 + material/partials/languages/my.html
14:01:08 + material/partials/languages/nl.html
14:01:08 + material/partials/languages/nn.html
14:01:08 + material/partials/languages/no.html
14:01:08 + material/partials/languages/pt-BR.html
14:01:08 + material/partials/languages/pt.html
14:01:08 + material/partials/languages/ro.html
14:01:08 + material/partials/languages/ru.html
14:01:08 + material/partials/languages/pl.html
14:01:08 + material/partials/languages/sh.html
14:01:08 + material/partials/languages/si.html
14:01:08 + material/partials/languages/sk.html
14:01:08 + material/partials/languages/sl.html
14:01:08 + material/partials/languages/sr.html
14:01:08 + material/partials/languages/sv.html
14:01:08 + material/partials/languages/th.html
14:01:08 + material/partials/languages/tr.html
14:01:08 + material/partials/languages/uk.html
14:01:08 + material/partials/languages/vi.html
14:01:08 + material/partials/languages/zh-Hant.html
14:01:08 + material/partials/languages/zh-TW.html
14:01:08 + material/partials/languages/zh.html
14:01:08 + material/partials/logo.html
14:01:08 + material/partials/nav-item.html
14:01:08 + material/partials/nav.html
14:01:08 + material/partials/palette.html
14:01:08 + material/partials/search.html
14:01:08 + material/partials/social.html
14:01:08 + material/partials/source.html
14:01:08 + material/partials/tabs-item.html
14:01:08 + material/partials/source-file.html
14:01:08 + material/partials/tabs.html
14:01:08 + material/partials/tags.html
14:01:08 + material/partials/toc-item.html
14:01:08 + material/partials/toc.html
/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/operators/mergeInternals.ts:71
    innerFrom(project(value, index++)).subscribe(
              ^
TypeError: file.replace is not a function
    at /home/jarad/work/rbb-docs/mkdocs-material/tools/build/copy/index.ts:108:37
    at doInnerSub (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/operators/mergeInternals.ts:71:15)
    at outerNext (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/operators/mergeInternals.ts:53:58)
    at OperatorSubscriber._this._next (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts:70:13)
    at OperatorSubscriber.Subscriber.next (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/Subscriber.ts:75:12)
    at /home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/operators/mergeInternals.ts:85:24
    at OperatorSubscriber._this._next (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts:70:13)
    at OperatorSubscriber.Subscriber.next (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/Subscriber.ts:75:12)
    at FSWatcher.handler (/home/jarad/work/rbb-docs/mkdocs-material/node_modules/rxjs/src/internal/observable/fromEvent.ts:288:52)
    at FSWatcher.emit (events.js:400:28)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! mkdocs-material@8.2.13 start: `ts-node -T tools/build --verbose --all --dirty --watch`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the mkdocs-material@8.2.13 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/jarad/.npm/_logs/2022-05-05T20_01_12_976Z-debug.log

Steps to reproduce

  1. Set up dev environment
  2. npm start
  3. Change a file

Package versions

  • Python: 3.9.5
  • MkDocs: 1.3.0
  • Material: git clone, branch master, hash d219ae2

Configuration

# Copyright (c) 2016-2022 Martin Donath <martin.donath@squidfunk.com>

# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:

# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.

# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.

# Project information
site_name: Material for MkDocs
site_url: https://squidfunk.github.io/mkdocs-material/
site_author: Martin Donath
site_description: >-
  Create a branded static site from a set of Markdown files to host the
  documentation of your Open Source or commercial project

# Repository
repo_name: squidfunk/mkdocs-material
repo_url: https://github.com/squidfunk/mkdocs-material

# Copyright
copyright: Copyright &copy; 2016 - 2022 Martin Donath

# Configuration
theme:
  name: null
  custom_dir: !ENV [THEME_DIR, "material"]

  # Static files
  static_templates:
    - 404.html

  # Don't include MkDocs' JavaScript
  include_search_page: false
  search_index_only: true

  # Default values, taken from mkdocs_theme.yml
  language: en
  features:
    - content.code.annotate
    # - content.tabs.link
    # - header.autohide
    # - navigation.expand
    - navigation.indexes
    # - navigation.instant
    - navigation.sections
    - navigation.tabs
    # - navigation.tabs.sticky
    - navigation.top
    - navigation.tracking
    - search.highlight
    - search.share
    - search.suggest
    - toc.follow
    # - toc.integrate
  palette:
    - scheme: default
      primary: indigo
      accent: indigo
      toggle:
        icon: material/toggle-switch
        name: Switch to dark mode
    - scheme: slate
      primary: red
      accent: red
      toggle:
        icon: material/toggle-switch-off-outline
        name: Switch to light mode
  font:
    text: Roboto
    code: Roboto Mono
  favicon: assets/favicon.png
  icon:
    logo: logo

# Plugins
plugins:
  - search
  - redirects:
      redirect_maps:
        changelog/insiders.md: insiders/changelog.md
        conventions.md: philosophy.md
        reference/meta-tags.md: reference/index.md
        reference/variables.md: https://mkdocs-macros-plugin.readthedocs.io/
        sponsorship.md: insiders/index.md
        upgrading.md: upgrade.md
  - minify:
      minify_html: true

# Customization
extra:
  analytics:
    provider: google
    property: !ENV GOOGLE_ANALYTICS_KEY
  social:
    - icon: fontawesome/brands/github
      link: https://github.com/squidfunk
    - icon: fontawesome/brands/gitter
      link: https://gitter.im/squidfunk/mkdocs-material
    - icon: fontawesome/brands/docker
      link: https://hub.docker.com/r/squidfunk/mkdocs-material/
    - icon: fontawesome/brands/python
      link: https://pypi.org/project/mkdocs-material/
    - icon: fontawesome/brands/twitter
      link: https://twitter.com/squidfunk

# Extensions
markdown_extensions:
  - abbr
  - admonition
  - attr_list
  - def_list
  - footnotes
  - meta
  - md_in_html
  - toc:
      permalink: true
  - pymdownx.arithmatex:
      generic: true
  - pymdownx.betterem:
      smart_enable: all
  - pymdownx.caret
  - pymdownx.details
  - pymdownx.emoji:
      emoji_generator: !!python/name:materialx.emoji.to_svg
      emoji_index: !!python/name:materialx.emoji.twemoji
  - pymdownx.highlight:
      anchor_linenums: true
  - pymdownx.inlinehilite
  - pymdownx.keys
  - pymdownx.magiclink:
      repo_url_shorthand: true
      user: squidfunk
      repo: mkdocs-material
  - pymdownx.mark
  - pymdownx.smartsymbols
  - pymdownx.superfences:
      custom_fences:
        - name: mermaid
          class: mermaid
          format: !!python/name:pymdownx.superfences.fence_code_format
  - pymdownx.tabbed:
      alternate_style: true
  - pymdownx.tasklist:
      custom_checkbox: true
  - pymdownx.tilde

# Page tree
nav:
  - Home: index.md
  - Getting started:
    - Installation: getting-started.md
    - Creating your site: creating-your-site.md
    - Publishing your site: publishing-your-site.md
    - Customization: customization.md
    - Browser support: browser-support.md
    - Philosophy: philosophy.md
    - Alternatives: alternatives.md
    - License: license.md
    - Changelog:
      - changelog/index.md
      - How to upgrade: upgrade.md
  - Setup:
    - Changing the colors: setup/changing-the-colors.md
    - Changing the fonts: setup/changing-the-fonts.md
    - Changing the language: setup/changing-the-language.md
    - Changing the logo and icons: setup/changing-the-logo-and-icons.md
    - Ensuring data privacy: setup/ensuring-data-privacy.md
    - Setting up navigation: setup/setting-up-navigation.md
    - Setting up site search: setup/setting-up-site-search.md
    - Setting up site analytics: setup/setting-up-site-analytics.md
    - Setting up social cards: setup/setting-up-social-cards.md
    - Setting up tags: setup/setting-up-tags.md
    - Setting up versioning: setup/setting-up-versioning.md
    - Setting up the header: setup/setting-up-the-header.md
    - Setting up the footer: setup/setting-up-the-footer.md
    - Adding a git repository: setup/adding-a-git-repository.md
    - Adding a comment system: setup/adding-a-comment-system.md
    - Building for offline usage: setup/building-for-offline-usage.md
    - Extensions:
      - setup/extensions/index.md
      - Python Markdown: setup/extensions/python-markdown.md
      - Python Markdown Extensions: setup/extensions/python-markdown-extensions.md
  - Reference:
    - reference/index.md
    - Abbreviations: reference/abbreviations.md
    - Admonitions: reference/admonitions.md
    - Annotations: reference/annotations.md
    - Buttons: reference/buttons.md
    - Code blocks: reference/code-blocks.md
    - Content tabs: reference/content-tabs.md
    - Data tables: reference/data-tables.md
    - Diagrams: reference/diagrams.md
    - Footnotes: reference/footnotes.md
    - Formatting: reference/formatting.md
    - Grids: reference/grids.md
    - Icons, Emojis: reference/icons-emojis.md
    - Images: reference/images.md
    - Lists: reference/lists.md
    - MathJax: reference/mathjax.md
  - Insiders:
    - insiders/index.md
    - Getting started:
      - Installation: insiders/getting-started.md
      - Changelog: insiders/changelog.md
  - Blog:
    - blog/index.md
    - 2022:
      - blog/2022/chinese-search-support.md
    - 2021:
      - blog/2021/the-past-present-and-future.md
      - blog/2021/excluding-content-from-search.md
      - blog/2021/search-better-faster-smaller.md

System information

  • Operating system: Ubuntu 20.04 on WSL on Windows 11
  • Browser: Firefox 100

I'm not able to reproduce the problem you reported. I've done a fresh clone and then followed the steps. Here's the output:

squidfunk@squidfunk:~ > git clone git@github.com:squidfunk/mkdocs-material.git mkdocs-material-clean
Cloning into 'mkdocs-material-clean'...
remote: Enumerating objects: 86946, done.
remote: Counting objects: 100% (185/185), done.
remote: Compressing objects: 100% (75/75), done.
remote: Total 86946 (delta 74), reused 170 (delta 62), pack-reused 86761
Receiving objects: 100% (86946/86946), 93.23 MiB | 4.57 MiB/s, done.
Resolving deltas: 100% (51868/51868), done.
Updating files: 100% (9764/9764), done.
squidfunk@squidfunk:~ > cd mkdocs-material-clean   
squidfunk@squidfunk:~/mkdocs-material-clean git:master > virtualenv venv
created virtual environment CPython3.8.11.final.0-64 in 684ms
  creator CPython3Posix(dest=/Users/squidfunk/Desktop/Projects/Personal/Sources/mkdocs-material-clean/venv, clear=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/squidfunk/Library/Application Support/virtualenv)
    added seed packages: pip==22.0.4, setuptools==62.0.0, wheel==0.37.1
  activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
squidfunk@squidfunk:~/mkdocs-material-clean git:master > . ./venv/bin/activate
(venv) squidfunk@squidfunk:~/mkdocs-material-clean git:master > pip install -e .     
Obtaining file:///Users/squidfunk/Desktop/Projects/Personal/Sources/mkdocs-material-clean
  Preparing metadata (setup.py) ... done
Collecting jinja2>=2.11.1
  Using cached Jinja2-3.1.2-py3-none-any.whl (133 kB)
Collecting markdown>=3.2
  Downloading Markdown-3.3.7-py3-none-any.whl (97 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.8/97.8 KB 1.4 MB/s eta 0:00:00
Collecting mkdocs>=1.3.0
  Using cached mkdocs-1.3.0-py3-none-any.whl (3.7 MB)
Collecting mkdocs-material-extensions>=1.0.3
  Using cached mkdocs_material_extensions-1.0.3-py3-none-any.whl (8.1 kB)
Collecting pygments>=2.12
  Using cached Pygments-2.12.0-py3-none-any.whl (1.1 MB)
Collecting pymdown-extensions>=9.4
  Using cached pymdown_extensions-9.4-py3-none-any.whl (216 kB)
Collecting MarkupSafe>=2.0
  Using cached MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl (13 kB)
Collecting importlib-metadata>=4.4
  Using cached importlib_metadata-4.11.3-py3-none-any.whl (18 kB)
Collecting click>=3.3
  Using cached click-8.1.3-py3-none-any.whl (96 kB)
Collecting ghp-import>=1.0
  Downloading ghp_import-2.1.0-py3-none-any.whl (11 kB)
Collecting pyyaml-env-tag>=0.1
  Using cached pyyaml_env_tag-0.1-py3-none-any.whl (3.9 kB)
Collecting mergedeep>=1.3.4
  Using cached mergedeep-1.3.4-py3-none-any.whl (6.4 kB)
Collecting watchdog>=2.0
  Using cached watchdog-2.1.7-cp38-cp38-macosx_10_9_x86_64.whl (85 kB)
Collecting PyYAML>=3.10
  Using cached PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl (192 kB)
Collecting packaging>=20.5
  Using cached packaging-21.3-py3-none-any.whl (40 kB)
Collecting python-dateutil>=2.8.1
  Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting zipp>=0.5
  Using cached zipp-3.8.0-py3-none-any.whl (5.4 kB)
Collecting pyparsing!=3.0.5,>=2.0.2
  Using cached pyparsing-3.0.8-py3-none-any.whl (98 kB)
Collecting six>=1.5
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Installing collected packages: zipp, watchdog, six, PyYAML, pyparsing, pygments, mkdocs-material-extensions, mergedeep, MarkupSafe, click, pyyaml-env-tag, python-dateutil, packaging, jinja2, importlib-metadata, markdown, ghp-import, pymdown-extensions, mkdocs, mkdocs-material
  Running setup.py develop for mkdocs-material
Successfully installed MarkupSafe-2.1.1 PyYAML-6.0 click-8.1.3 ghp-import-2.1.0 importlib-metadata-4.11.3 jinja2-3.1.2 markdown-3.3.7 mergedeep-1.3.4 mkdocs-1.3.0 mkdocs-material-8.2.13 mkdocs-material-extensions-1.0.3 packaging-21.3 pygments-2.12.0 pymdown-extensions-9.4 pyparsing-3.0.8 python-dateutil-2.8.2 pyyaml-env-tag-0.1 six-1.16.0 watchdog-2.1.7 zipp-3.8.0
(venv) squidfunk@squidfunk:~/mkdocs-material-clean git:master > pip install mkdocs-minify-plugin
pip install mkdocs-redirects
npm install
Collecting mkdocs-minify-plugin
  Using cached mkdocs_minify_plugin-0.5.0-py3-none-any.whl
Collecting htmlmin>=0.1.4
  Using cached htmlmin-0.1.12-py3-none-any.whl
Collecting csscompressor>=0.9.5
  Using cached csscompressor-0.9.5-py3-none-any.whl
Requirement already satisfied: mkdocs>=1.0.4 in ./venv/lib/python3.8/site-packages (from mkdocs-minify-plugin) (1.3.0)
Collecting jsmin>=3.0.0
  Using cached jsmin-3.0.1-py3-none-any.whl
Requirement already satisfied: pyyaml-env-tag>=0.1 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (0.1)
Requirement already satisfied: PyYAML>=3.10 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (6.0)
Requirement already satisfied: click>=3.3 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (8.1.3)
Requirement already satisfied: packaging>=20.5 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (21.3)
Requirement already satisfied: Jinja2>=2.10.2 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (3.1.2)
Requirement already satisfied: ghp-import>=1.0 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (2.1.0)
Requirement already satisfied: importlib-metadata>=4.3 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (4.11.3)
Requirement already satisfied: mergedeep>=1.3.4 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (1.3.4)
Requirement already satisfied: Markdown>=3.2.1 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (3.3.7)
Requirement already satisfied: watchdog>=2.0 in ./venv/lib/python3.8/site-packages (from mkdocs>=1.0.4->mkdocs-minify-plugin) (2.1.7)
Requirement already satisfied: python-dateutil>=2.8.1 in ./venv/lib/python3.8/site-packages (from ghp-import>=1.0->mkdocs>=1.0.4->mkdocs-minify-plugin) (2.8.2)
Requirement already satisfied: zipp>=0.5 in ./venv/lib/python3.8/site-packages (from importlib-metadata>=4.3->mkdocs>=1.0.4->mkdocs-minify-plugin) (3.8.0)
Requirement already satisfied: MarkupSafe>=2.0 in ./venv/lib/python3.8/site-packages (from Jinja2>=2.10.2->mkdocs>=1.0.4->mkdocs-minify-plugin) (2.1.1)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in ./venv/lib/python3.8/site-packages (from packaging>=20.5->mkdocs>=1.0.4->mkdocs-minify-plugin) (3.0.8)
Requirement already satisfied: six>=1.5 in ./venv/lib/python3.8/site-packages (from python-dateutil>=2.8.1->ghp-import>=1.0->mkdocs>=1.0.4->mkdocs-minify-plugin) (1.16.0)
Installing collected packages: jsmin, htmlmin, csscompressor, mkdocs-minify-plugin
Successfully installed csscompressor-0.9.5 htmlmin-0.1.12 jsmin-3.0.1 mkdocs-minify-plugin-0.5.0
Collecting mkdocs-redirects
  Using cached mkdocs_redirects-1.0.4-py3-none-any.whl
Requirement already satisfied: mkdocs<2,>=1.0.4 in ./venv/lib/python3.8/site-packages (from mkdocs-redirects) (1.3.0)
Requirement already satisfied: PyYAML>=3.10 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (6.0)
Requirement already satisfied: pyyaml-env-tag>=0.1 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (0.1)
Requirement already satisfied: Markdown>=3.2.1 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (3.3.7)
Requirement already satisfied: importlib-metadata>=4.3 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (4.11.3)
Requirement already satisfied: ghp-import>=1.0 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (2.1.0)
Requirement already satisfied: packaging>=20.5 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (21.3)
Requirement already satisfied: watchdog>=2.0 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (2.1.7)
Requirement already satisfied: mergedeep>=1.3.4 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (1.3.4)
Requirement already satisfied: Jinja2>=2.10.2 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (3.1.2)
Requirement already satisfied: click>=3.3 in ./venv/lib/python3.8/site-packages (from mkdocs<2,>=1.0.4->mkdocs-redirects) (8.1.3)
Requirement already satisfied: python-dateutil>=2.8.1 in ./venv/lib/python3.8/site-packages (from ghp-import>=1.0->mkdocs<2,>=1.0.4->mkdocs-redirects) (2.8.2)
Requirement already satisfied: zipp>=0.5 in ./venv/lib/python3.8/site-packages (from importlib-metadata>=4.3->mkdocs<2,>=1.0.4->mkdocs-redirects) (3.8.0)
Requirement already satisfied: MarkupSafe>=2.0 in ./venv/lib/python3.8/site-packages (from Jinja2>=2.10.2->mkdocs<2,>=1.0.4->mkdocs-redirects) (2.1.1)
Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in ./venv/lib/python3.8/site-packages (from packaging>=20.5->mkdocs<2,>=1.0.4->mkdocs-redirects) (3.0.8)
Requirement already satisfied: six>=1.5 in ./venv/lib/python3.8/site-packages (from python-dateutil>=2.8.1->ghp-import>=1.0->mkdocs<2,>=1.0.4->mkdocs-redirects) (1.16.0)
Installing collected packages: mkdocs-redirects
Successfully installed mkdocs-redirects-1.0.4
npm WARN deprecated @types/vfile-message@2.0.0: This is a stub types definition. vfile-message provides its own type definitions, so you do not need this installed.
npm WARN deprecated @types/clipboard@2.0.7: This is a stub types definition. clipboard provides its own type definitions, so you do not need this installed.
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated gitlab@14.2.2: The gitlab package has found a new home in the @gitbeaker organization. For the latest gitlab node library, check out @gitbeaker/node. A full list of the features can be found here: https://github.com/jdalrymple/gitbeaker#readme

added 1087 packages, and audited 1088 packages in 10s

156 packages are looking for funding
  run `npm fund` for details

15 vulnerabilities (1 moderate, 14 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
(venv) squidfunk@squidfunk:~/mkdocs-material-clean git:master > npm start          

> mkdocs-material@8.2.13 start
> ts-node -T tools/build --verbose --all --dirty --watch

17:29:38 + material/assets/stylesheets/main.css.map
17:29:38 + material/assets/stylesheets/main.css
17:29:39 + material/assets/stylesheets/palette.css.map
17:29:39 + material/assets/stylesheets/palette.css
17:29:39 + material/overrides/assets/stylesheets/main.css.map
17:29:39 + material/overrides/assets/stylesheets/main.css
17:29:39 + material/assets/javascripts/bundle.js
17:29:39 + material/assets/javascripts/bundle.js.map
17:29:39 + material/404.html
17:29:39 + material/overrides/partials/content.html
17:29:39 + material/partials/copyright.html
17:29:39 + material/overrides/home.html
17:29:39 + material/overrides/main.html
17:29:39 + material/main.html
17:29:39 + material/partials/integrations/analytics.html
17:29:39 + material/partials/content.html
17:29:39 + material/partials/footer.html
17:29:39 + material/partials/header.html
17:29:39 + material/overrides/blog.html
17:29:39 + material/partials/javascripts/base.html
17:29:39 + material/partials/javascripts/outdated.html
17:29:39 + material/partials/javascripts/palette.html
17:29:39 + material/base.html
17:29:39 + material/partials/integrations/analytics/google.html
17:29:39 + material/partials/languages/bn.html
17:29:39 + material/partials/languages/bg.html
17:29:39 + material/partials/languages/ar.html
17:29:39 + material/partials/languages/af.html
17:29:39 + material/partials/language.html
17:29:39 + material/partials/languages/cs.html
17:29:39 + material/partials/languages/ca.html
17:29:39 + material/partials/languages/da.html
17:29:39 + material/partials/languages/de.html
17:29:39 + material/partials/languages/et.html
17:29:39 + material/partials/languages/eo.html
17:29:39 + material/partials/languages/es.html
17:29:39 + material/partials/languages/el.html
17:29:39 + material/partials/languages/fi.html
17:29:39 + material/partials/languages/en.html
17:29:39 + material/partials/languages/fa.html
17:29:39 + material/partials/languages/hr.html
17:29:39 + material/partials/languages/fr.html
17:29:39 + material/partials/languages/gl.html
17:29:39 + material/partials/languages/he.html
17:29:39 + material/partials/languages/hu.html
17:29:39 + material/partials/languages/hi.html
17:29:39 + material/partials/languages/id.html
17:29:39 + material/partials/languages/is.html
17:29:39 + material/partials/languages/ja.html
17:29:39 + material/partials/languages/lv.html
17:29:39 + material/partials/languages/it.html
17:29:39 + material/partials/languages/kr.html
17:29:39 + material/partials/languages/ka.html
17:29:39 + material/partials/languages/mk.html
17:29:39 + material/partials/languages/mn.html
17:29:39 + material/partials/languages/ms.html
17:29:39 + material/partials/languages/my.html
17:29:39 + material/partials/languages/nn.html
17:29:39 + material/partials/languages/pl.html
17:29:39 + material/partials/languages/no.html
17:29:39 + material/partials/languages/pt-BR.html
17:29:39 + material/partials/languages/si.html
17:29:39 + material/partials/languages/nl.html
17:29:39 + material/partials/languages/pt.html
17:29:39 + material/partials/languages/sh.html
17:29:39 + material/partials/languages/ro.html
17:29:39 + material/partials/languages/ru.html
17:29:39 + material/partials/languages/sk.html
17:29:39 + material/partials/languages/sl.html
17:29:39 + material/partials/languages/sr.html
17:29:39 + material/partials/languages/sv.html
17:29:39 + material/partials/languages/th.html
17:29:39 + material/assets/javascripts/workers/search.js.map
17:29:39 + material/assets/javascripts/workers/search.js
17:29:39 + material/partials/languages/uk.html
17:29:39 + material/partials/languages/tr.html
17:29:39 + material/partials/languages/vi.html
17:29:39 + material/partials/languages/zh.html
17:29:39 + material/partials/languages/zh-Hant.html
17:29:39 + material/partials/logo.html
17:29:39 + material/partials/languages/zh-TW.html
17:29:39 + material/partials/palette.html
17:29:39 + material/partials/nav.html
17:29:39 + material/partials/search.html
17:29:39 + material/partials/nav-item.html
17:29:39 + material/partials/source-file.html
17:29:39 + material/partials/social.html
17:29:39 + material/partials/tabs-item.html
17:29:39 + material/partials/source.html
17:29:39 + material/partials/tabs.html
17:29:39 + material/partials/tags.html
17:29:39 + material/partials/toc-item.html
17:29:39 + material/partials/toc.html
17:29:39 + material/overrides/assets/javascripts/bundle.js.map
17:29:39 + material/overrides/assets/javascripts/bundle.js

Closing as not reproducible. If the issue persists, please provide a minimal reproduction and the exact steps you took.

I am seeing the same error.

Adding to it I'm seeing the same error after cloning the repo and too frequently.

I can see that it usually expects the file object to be { file: string} but on this error it returns

{
  file: [
    '.overrides/home.html',
    Stats {
      dev: 66311,
      mode: 33204,
      nlink: 1,
      uid: 1000,
      gid: 1000,
      rdev: 0,
      blksize: 4096,
      ino: 9996024,
      size: 353450,
      blocks: 696,
      atimeMs: 1690556707567.158,
      mtimeMs: 1691908838145.4534,
      ctimeMs: 1691908838145.4534,
      birthtimeMs: 1690556707567.158,
      atime: 2023-07-28T15:05:07.567Z,
      mtime: 2023-08-13T06:40:38.145Z,
      ctime: 2023-08-13T06:40:38.145Z,
      birthtime: 2023-07-28T15:05:07.567Z
    }
  ]
}

Fixed in 26de756 with the help of @purplecandy! Will be in 9.4.0 which will come out in the next hour.