Open sih4sing5hong5 opened 5 years ago
"missing metadata" means the dictionary wasn't successfully built. Read the INFO logs (lines starting with E are error logs) after deploying data to see if there's an error in the deployment process. When I try your code I get
E1107 10:18:53.584096 24928256 dict_compiler.cc:67] source file '/Users/tada/Library/Rime/taigi_pojhanlo.extended.dict.yaml' does not exist.
E1107 10:18:53.584460 24928256 deployment_tasks.cc:373] dictionary 'taigi_pojhanlo' failed to compile.
because I don't have the other file taigi_pojhanlo.extended.dict.yaml
your taigi_pojhanlo.dict.yaml
wants to import.
Thank you a lot.
Our taigi_pojhanlo.extended.dict.yaml
is empty now. We tried removing import_tables
still failed.
$ cat taigi_pojhanlo.extended.dict.yaml
# Rime dictionary
# encoding: utf-8
---
name: taigi.extended
version: "1.0.0"
sort: by_weight
use_preset_vocabulary: false
...
Another question:
After tracing from deployment_tasks.cc
, dict_compiler.cc
, entry_controller.cc
, table.cc
to MappedFile
, I still didn't find the code where rime does IO.
The message we printed in EntryCollector::Collect
. It seems that entry_controller
parsed correctly
By the way, we're using behaved-driven development to write our schema.yaml
and dict.yaml
.
There are our code and CI.
We got error when loading
table.bin
Failed yaml
taigi_pojhanlo.dict.yaml
The result of taigi_pojhanlo.table.bin
Passed yaml
taigi_pojhanlo.dict.yaml
The result of taigi_pojhanlo.table.bin
taigi_pojhanlo.schema.yaml