Skip to content

Commit d58727c

Browse files
Remove ScrChecks project and replace with streamlined parser (#764)
* Delete entire Lib/src/ScrChecks/ project and tests * Remove unused interfaces: IChecksDataSource, IScriptureCheck, RecordErrorEventArgs * Remove ScrChecks from solution, build targets, installer targets * Replace with ParseCharacterSequences in TextFileDataSource using StringInfo.GetTextElementEnumerator for correct Unicode handling * Update CharContextCtrl and ValidCharactersDlg to remove reflection-based loading of ScrChecks * Remove FwDirectoryFinder ScrChecks directory helper * Add comprehensive tests for diacritics, surrogate pairs, supplementary plane chars, and minority language scripts The ScrChecks project under Lib/src was over-engineered for the limited functionality actually used by FieldWorks. Only character sequence parsing (grouping base characters with combining diacritics) was needed. Currently all the artifacts from projects under Lib\src are committed in DistFiles - leave that for future evaluation Co-Authored with Claude
1 parent dc5f62b commit d58727c

50 files changed

Lines changed: 375 additions & 15714 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Build/Installer.legacy.targets

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -296,10 +296,6 @@
296296
<!-- REVIEW (Hasso) 2018.04: not sure if this is files or a folder -->
297297
<MergeModules Include="$(OutputDirForConfig)\Python\**\*" />
298298
<!-- REVIEW (Hasso) 2018.04: not sure if this is files or a folder -->
299-
<MergeModules Include="$(OutputDirForConfig)\ScrChecks.dll" />
300-
<!-- this will be taken from DistFiles\Editorial Checks -->
301-
<MergeModules Include="$(OutputDirForConfig)\ScrChecks.pdb" />
302-
<!-- this will be taken from DistFiles\Editorial Checks -->
303299
<MergeModules Include="$(OutputDirForConfig)\SilEncConverters40.dll" />
304300
<MergeModules Include="$(OutputDirForConfig)\SilEncConverters40.tlb" />
305301
<MergeModules Include="$(OutputDirForConfig)\Temp\**\*" />

Build/Src/FwBuildTasks/CollectTargets.cs

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,6 @@ public void Generate()
129129
);
130130
var infoEth = new DirectoryInfo(Path.Combine(m_fwroot, "Lib/src/Ethnologue"));
131131
CollectInfo(infoEth);
132-
var infoScr2 = new DirectoryInfo(Path.Combine(m_fwroot, "Lib/src/ScrChecks"));
133-
CollectInfo(infoScr2);
134132
var infoObj = new DirectoryInfo(Path.Combine(m_fwroot, "Lib/src/ObjectBrowser"));
135133
CollectInfo(infoObj);
136134

@@ -552,12 +550,6 @@ private void WriteTargetFiles()
552550
writer.Write("\t<Target Name=\"{0}\"", project);
553551
var bldr = new StringBuilder();
554552
bldr.Append("Initialize"); // ensure the output directories and version files exist.
555-
if (project == "ParatextImportTests" || project == "FwCoreDlgsTests")
556-
{
557-
// The ParatextImportTests and FwCoreDlgsTests require that the ScrChecks.dll be in DistFiles/Editorial Checks.
558-
// We don't discover that dependency because it's not a reference (LT-13777).
559-
bldr.Append(";ScrChecks");
560-
}
561553
var dependencies = m_mapProjDepends[project];
562554
dependencies.Sort();
563555
foreach (var dep in dependencies)

FieldWorks.sln

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -154,10 +154,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RootSite", "Src\Common\Root
154154
EndProject
155155
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RootSiteTests", "Src\Common\RootSite\RootSiteTests\RootSiteTests.csproj", "{EC934204-1D3A-5575-A500-CB7923C440E2}"
156156
EndProject
157-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ScrChecks", "Lib\src\ScrChecks\ScrChecks.csproj", "{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}"
158-
EndProject
159-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ScrChecksTests", "Lib\src\ScrChecks\ScrChecksTests\ScrChecksTests.csproj", "{37555756-6D42-5E46-B455-E58E3D1E8E0C}"
160-
EndProject
161157
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ScriptureUtils", "Src\Common\ScriptureUtils\ScriptureUtils.csproj", "{8336DC7C-954B-5076-9315-D7DC5317282B}"
162158
EndProject
163159
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ScriptureUtilsTests", "Src\Common\ScriptureUtils\ScriptureUtilsTests\ScriptureUtilsTests.csproj", "{04546E35-9A3A-5629-8282-3683A5D848F9}"
@@ -725,18 +721,6 @@ Global
725721
{EC934204-1D3A-5575-A500-CB7923C440E2}.Debug|x64.Build.0 = Debug|x64
726722
{EC934204-1D3A-5575-A500-CB7923C440E2}.Release|x64.ActiveCfg = Release|x64
727723
{EC934204-1D3A-5575-A500-CB7923C440E2}.Release|x64.Build.0 = Release|x64
728-
{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}.Bounds|x64.ActiveCfg = Release|x64
729-
{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}.Bounds|x64.Build.0 = Release|x64
730-
{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}.Debug|x64.ActiveCfg = Debug|x64
731-
{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}.Debug|x64.Build.0 = Debug|x64
732-
{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}.Release|x64.ActiveCfg = Release|x64
733-
{0B5C69D2-8502-5FED-A22C-CE6A0269D9F1}.Release|x64.Build.0 = Release|x64
734-
{37555756-6D42-5E46-B455-E58E3D1E8E0C}.Bounds|x64.ActiveCfg = Release|x64
735-
{37555756-6D42-5E46-B455-E58E3D1E8E0C}.Bounds|x64.Build.0 = Release|x64
736-
{37555756-6D42-5E46-B455-E58E3D1E8E0C}.Debug|x64.ActiveCfg = Debug|x64
737-
{37555756-6D42-5E46-B455-E58E3D1E8E0C}.Debug|x64.Build.0 = Debug|x64
738-
{37555756-6D42-5E46-B455-E58E3D1E8E0C}.Release|x64.ActiveCfg = Release|x64
739-
{37555756-6D42-5E46-B455-E58E3D1E8E0C}.Release|x64.Build.0 = Release|x64
740724
{8336DC7C-954B-5076-9315-D7DC5317282B}.Bounds|x64.ActiveCfg = Release|x64
741725
{8336DC7C-954B-5076-9315-D7DC5317282B}.Bounds|x64.Build.0 = Release|x64
742726
{8336DC7C-954B-5076-9315-D7DC5317282B}.Debug|x64.ActiveCfg = Debug|x64

Lib/src/ScrChecks/BuildInclude.targets

Lines changed: 0 additions & 29 deletions
This file was deleted.

0 commit comments

Comments
 (0)