-
Notifications
You must be signed in to change notification settings - Fork 248
Open
Description
- Similar to this issue Unicode filenames cause Listen 2.7.9 to crash with Jekyll , while I change the file whose folder contains utf-8 string, jekyll crash
bundle exec jekyll serve
Configuration file: /Users/jskyzero/workspace/blog/design.jskyzero.com/_config.yml
Source: /Users/jskyzero/workspace/blog/design.jskyzero.com
Destination: /Users/jskyzero/workspace/blog/design.jskyzero.com/_site
Incremental build: disabled. Enable with --incremental
Generating...
FINISH: post-data-revision
Jekyll Feed: Generating feed for posts
done in 3.502 seconds.
Auto-regeneration: enabled for '/Users/jskyzero/workspace/blog/design.jskyzero.com'
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.- Change the file whose folder contains utf-8 string
E, [2023-01-20T16:54:33.307871 #11469] ERROR -- : Exception rescued in listen-worker_thread:
Encoding::CompatibilityError: incompatible encoding regexp match (UTF-8 regexp with ASCII-8BIT string)
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/silencer.rb:86:in `block in _ignore?'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/silencer.rb:86:in `any?'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/silencer.rb:86:in `_ignore?'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/silencer.rb:80:in `silenced?'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/change.rb:17:in `silenced?'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/change.rb:42:in `invalidate'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/base.rb:108:in `_queue_change'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:68:in `_process_event'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/base.rb:44:in `block (2 levels) in configure'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:58:in `block (2 levels) in _process_changes'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:56:in `each'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:56:in `block in _process_changes'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:53:in `each'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:53:in `_process_changes'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/rb-fsevent-0.11.2/lib/rb-fsevent/fsevent.rb:77:in `run'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:49:in `block in _run'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/thread.rb:26:in `rescue_and_log'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/thread.rb:18:in `block in new'
--- Thread.new ---
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:49:in `_run'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/base.rb:79:in `block in start'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/thread.rb:26:in `rescue_and_log'
/opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/thread.rb:18:in `block in new'- Other information (It seems like only crash with macOS)
➜ ~ sw_vers
ProductName: macOS
ProductVersion: 13.0
BuildVersion: 22A380
➜ ~ ruby --version
ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin22]
# project tree structure
# find the project at https://github.com/jskyzero/design.jskyzero.com
➜ _posts git:(jekyll) tree -L 2
.
├── 日常
│ ├── chapter0
│ └── chapter1
├── 杂谈
│ ├── 2019-05-18-penguin_and_rpg.md # for example, change this file, then crash
....
- I change local file to fix this error, but I‘m not the expert at ruby, so i made this issue
# Encoding::CompatibilityError: incompatible encoding regexp match (UTF-8 regexp with ASCII-8BIT string)
# /opt/homebrew/lib/ruby/gems/3.2.0/gems/listen-3.8.0/lib/listen/adapter/darwin.rb:68:in `_process_event'
# before
rel_path = path.relative_path_from(dir).to_s
# after
rel_path = path.relative_path_from(dir).to_s.force_encoding('utf-8')Rasinari and djsmentyaRasinari
Metadata
Metadata
Assignees
Labels
No labels