Reputation: 17386
Python version: 2.7
Showing the following error on lektor server
command:
Traceback (most recent call last):
File "/Users/item4/Projects/lektor/lektor/devserver.py", line 49, in build
builder.prune()
File "/Users/item4/Projects/lektor/lektor/builder.py", line 1062, in prune
for aft in build_state.iter_unreferenced_artifacts(all=all):
File "/Users/item4/Projects/lektor/lektor/builder.py", line 371, in iter_unreferenced_artifacts
and is_primary_source''', [artifact_name])
ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.
Upvotes: 1
Views: 117
Reputation: 17386
Finally I got the answer. It may helpful
I have edited /Users/item4/Projects/lektor/lektor/builder.py and added a single line
con.text_factory = lambda x: unicode(x, 'utf-8', 'ignore')
after the following line
con = sqlite3.connect(self.buildstate_database_filename,
timeout=10, check_same_thread=False)
Ref Link : http://hakanu.net/sql/2015/08/25/sqlite-unicode-string-problem/
Upvotes: 1