Closed felixonmars closed 3 years ago
You'll see that a lot of these tests fail normally too (they are "expected failures").
It would be good to have a diff of the regular log vs the icu
log.
I see. Here it goes:
--- no-icu.out 2021-07-23 03:00:55.542006438 +0800
+++ icu.out 2021-07-23 02:59:28.640411541 +0800
@@ -117,8 +117,8 @@
--- expected
+++ actual
@@
--[Cite with a composer ; O A. "hello" <i>Book Title</i>]
-+[Cite with a composer ; O A. “hello” <i>Book Title</i>]
+-[Cite with a composer ; O A. "hello" <i>Book Title</i>]
++[Cite with a composer ; O A. “hello” <i>Book Title</i>]
[FAILED] test/csl/bugreports_SmallCapsEscape.txt
--- expected
@@ -331,9 +331,9 @@
+++ actual
@@
<div class="csl-bib-body">
-- <div class="csl-entry">1. Иванов И.И. Пример оформления книги с редактором и переводчиком в одном лице : вид издания : in 5 vols. Vol. 2 / И.И. Иванов, П.П. Петров, С.С. Сидоров; ed & trans. Р.Р. Романов Дополнительно. – Тюмень: Дом, 2013. – 10. – 100 p.</div>
-+ <div class="csl-entry">1. Иванов И.И.
-+. Пример оформления книги с редактором и переводчиком в одном лице : вид издания : in 5 vols. Vol. 2 / И.И. Иванов, П.П. Петров, С.С. Сидоров; ed & trans. Р.Р. Романов Дополнительно. – Тюмень: Дом, 2013. – 10. – 100 p.</div>
+- <div class="csl-entry">1. Иванов И.И. Пример оформления книги с редактором и переводчиком в одном лице : вид издания : in 5 vols. Vol. 2 / И.И. Иванов, П.П. Петров, С.С. Сидоров; ed & trans. Р.Р. Романов Дополнительно. – Тюмень: Дом, 2013. – 10. – 100 p.</div>
++ <div class="csl-entry">1. Иванов И.И.
++. Пример оформления книги с редактором и переводчиком в одном лице : вид издания : in 5 vols. Vol. 2 / И.И. Иванов, П.П. Петров, С.С. Сидоров; ed & trans. Р.Р. Романов Дополнительно. – Тюмень: Дом, 2013. – 10. – 100 p.</div>
@@
</div>
@@ -704,6 +704,19 @@
@@
</div>
+[FAILED] test/csl/sort_ConditionalMacroDates.txt
+--- expected
++++ actual
+@@
+ <div class="csl-bib-body">
+- <div class="csl-entry">Title 3</div>
+@@
+ <div class="csl-entry">Title 1</div>
+ <div class="csl-entry">Title 2</div>
++ <div class="csl-entry">Title 3</div>
+@@
+ </div>
+
[FAILED] test/csl/sort_LeadingApostropheOnNameParticle.txt
--- expected
+++ actual
@@ -715,6 +728,19 @@
@@
<div class="csl-entry">in ’t Horvath, P A B</div>
+[FAILED] test/csl/sort_NameVariable.txt
+--- expected
++++ actual
+@@
+ <div class="csl-bib-body">
+- <div class="csl-entry">John Doe</div>
+@@
+ <div class="csl-entry">Jacob [F]linders</div>
++ <div class="csl-entry">John Doe</div>
+@@
+ <div class="csl-entry">Jane Roe</div>
+ </div>
+
[WARNING] test/csl/sort_OmittedBibRefMixedNumericStyle.txt
==> Bibliography entry with no printed form: ITEM-2
[FAILED] test/csl/sort_OmittedBibRefMixedNumericStyle.txt
@@ -761,7 +787,7 @@
[WARNING] test/overrides/variables_TitleShortOnShortTitleNoTitleCondition.txt
==> Citation with no printed form: ITEM-3
-CPU time: 147.09s
+CPU time: 206.60s
CATEGORY PASS FAIL ERROR SKIP
abbreviations 2 0 0 0 |++++++++++++++++++++|
@@ -795,7 +821,7 @@
punctuation 15 1 0 0 |++++++++++++++++++ |
quotes 3 1 0 0 |+++++++++++++++ |
simplespace 1 0 0 0 |++++++++++++++++++++|
-sort 57 9 0 0 |+++++++++++++++++ |
+sort 55 11 0 0 |++++++++++++++++ |
sortseparator 1 0 0 0 |++++++++++++++++++++|
substitute 6 1 0 0 |+++++++++++++++++ |
testers 2 0 0 0 |++++++++++++++++++++|
@@ -804,8 +830,7 @@
variables 5 0 0 0 |++++++++++++++++++++|
virtual 1 0 0 0 |++++++++++++++++++++|
------------- ----- ----- ----- -----
-(all) 798 66 0 0
-We have passed all the CSL tests we expect to...
-Test suite spec: PASS
+(all) 796 68 0 0
+Test suite spec: FAIL
Test suite logged to: dist/test/citeproc-0.4.1-spec.log
-1 of 1 test suites (1 of 1 test cases) passed.
+0 of 1 test suites (0 of 1 test cases) passed.
So that test/csl/sort_ConditionalMacroDates.txt
and test/csl/sort_NameVariable.txt
are the differences.
(Also CPU time seems to be much longer. Not sure if that is expected...)
Longer CPU time is interesting indeed. I think that says that there's not much point using the icu
flag.
I think these differences arise because, with unicode-collation
we default to the "shifted" variable weighting, unless a variable weighting is explicitly specified. But with icu
we have a different default, apparently. This could be changed.
I have retried the test suite for three times each, on a low-load build host instead:
-ficu:
CPU time: 79.82s
CPU time: 73.40s
CPU time: 74.09s
Avg: 75.77s
-f-icu:
CPU time: 89.70s
CPU time: 70.53s
CPU time: 88.13s
Avg: 82.79s
So...indeed icu is slightly faster here. The result above should be an accident :P
Sorry for the confusion!
With this update tests should no longer fail with icu.
Interestingly, although the tests pass on my macos installation with icu 69.1, they fail on our CI with ubuntu and 66.1. Not going to worry about that, I think.
I have tried to re-enable
-ficu
for Arch Linux's packaging, but got the following errors, which were not present with icu disabled.Some versions: GHC 9.0.1 citeproc 0.4.1 text-icu 0.7.1.0 icu 69.1