Skip to content

Create post with a path composed of numbers throw an error #4334

@lucassardois

Description

@lucassardois

Check List

Please check followings before submitting a new issue.

  • I have already read Docs page & Troubleshooting page
  • I have already searched existing issues and they are not help to me
  • I examined error or warning messages and it's difficult to solve
  • Using the latest version of Hexo (run hexo version to check)
  • Node.js is higher than 8.6.0

Expected behavior

It should be possible to create a post with a path using only numbers such as 404.

Actual behavior

FATAL Something's wrong. Maybe you can find the solution here: https://hexo.io/docs/troubleshooting.html
TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type number (404)
    at validateString (internal/validators.js:121:11)
    at join (path.js:1039:7)
    at Hexo.newPostPathFilter (/mnt/hdd/dev/blog/node_modules/hexo/lib/plugins/filter/new_post_path.js:37:18)
    at Hexo.tryCatcher (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/util.js:16:23)
    at Hexo.<anonymous> (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/method.js:15:34)
    at /mnt/hdd/dev/blog/node_modules/hexo/lib/extend/filter.js:62:52
    at tryCatcher (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/util.js:16:23)
    at Object.gotValue (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/reduce.js:166:18)
    at Object.gotAccum (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/reduce.js:155:25)
    at Object.tryCatcher (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/promise.js:547:31)
    at Promise._settlePromise (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/promise.js:604:18)
    at Promise._settlePromiseCtx (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/promise.js:641:10)
    at _drainQueueStep (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/async.js:97:12)
    at _drainQueue (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/async.js:86:9)
    at Async._drainQueues (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/async.js:102:5)
    at Immediate.Async.drainQueues [as _onImmediate] (/mnt/hdd/dev/blog/node_modules/bluebird/js/release/async.js:15:14)
    at processImmediate (internal/timers.js:456:21)

How to reproduce?

Run hexo new page --path 404 "Page not found"

Environment & Settings

Node.js & npm version

Node v14.3.0
npm 6.14.5

Hexo and Plugin version(npm ls --depth 0)

hexo-site@0.0.0 /mnt/hdd/dev/blog
├── hexo@4.2.1
├── hexo-deployer-git@2.1.0
├── hexo-generator-archive@1.0.0
├── hexo-generator-category@1.0.0
├── hexo-generator-index@1.0.0
├── hexo-generator-tag@1.0.0
├── hexo-renderer-ejs@1.0.0
├── hexo-renderer-marked@2.0.0
├── hexo-renderer-pug@1.0.0
├── hexo-renderer-stylus@1.1.0
└── hexo-server@1.0.0

Your package.json package.json

{
  "name": "hexo-site",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "build": "hexo generate",
    "clean": "hexo clean",
    "deploy": "npm run clean && npm run build && hexo deploy",
    "server": "hexo server"
  },
  "hexo": {
    "version": "4.2.1"
  },
  "dependencies": {
    "hexo": "^4.2.1",
    "hexo-deployer-git": "^2.1.0",
    "hexo-generator-archive": "^1.0.0",
    "hexo-generator-category": "^1.0.0",
    "hexo-generator-index": "^1.0.0",
    "hexo-generator-tag": "^1.0.0",
    "hexo-renderer-ejs": "^1.0.0",
    "hexo-renderer-marked": "^2.0.0",
    "hexo-renderer-pug": "^1.0.0",
    "hexo-renderer-stylus": "^1.1.0",
    "hexo-server": "^1.0.0"
  }
}

Others

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions