SIL.Core 16.0.0-beta0066

Prefix Reserved
This is a prerelease version of SIL.Core.
There is a newer version of this package available.
See the version list below for details.
dotnet add package SIL.Core --version 16.0.0-beta0066
                    
NuGet\Install-Package SIL.Core -Version 16.0.0-beta0066
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SIL.Core" Version="16.0.0-beta0066" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SIL.Core" Version="16.0.0-beta0066" />
                    
Directory.Packages.props
<PackageReference Include="SIL.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SIL.Core --version 16.0.0-beta0066
                    
#r "nuget: SIL.Core, 16.0.0-beta0066"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SIL.Core@16.0.0-beta0066
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SIL.Core&version=16.0.0-beta0066&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=SIL.Core&version=16.0.0-beta0066&prerelease
                    
Install as a Cake Tool

SIL.Core provides general utilities for language software. It is the base library for all Palaso libraries.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 is compatible.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (33)

Showing the top 5 NuGet packages that depend on SIL.Core:

Package Downloads
SIL.WritingSystems

SIL.WritingSystems contains classes for managing and persisting writing systems using the Locale Data Markup Language (LDML) format. This library also contains classes for processing IETF (BCP-47) language tags and accessing the SIL Locale Data Repository (SLDR).

SIL.Scripture

SIL.Scripture provides classes for working with Scripture data such as references and versifications.

SIL.Core.Desktop

SIL.Core.Desktop provides general UI related utilities for language software.

SIL.DblBundle

SIL.DblBundle provides classes for building a Digital Bible Library (DBL) bundle.

SIL.Lift

SIL.Lift contains classes for reading and writing Lexicon Interchange FormaT (LIFT) data. This assembly currently supports LIFT 0.13.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
16.2.0-beta0043 82 9/26/2025
16.2.0-beta0040 473 9/15/2025
16.2.0-beta0037 459 9/15/2025
16.2.0-beta0034 412 9/9/2025
16.2.0-beta0029 339 9/5/2025
16.2.0-beta0027 420 9/4/2025
16.2.0-beta0025 394 9/3/2025
16.2.0-beta0022 395 8/21/2025
16.2.0-beta0020 418 8/21/2025
16.2.0-beta0018 483 8/7/2025
16.2.0-beta0016 465 8/7/2025
16.2.0-beta0013 421 7/25/2025
16.2.0-beta0008 455 7/25/2025
16.2.0-beta0005 550 7/24/2025
16.1.0 607 7/18/2025
16.1.0-beta0022 336 7/18/2025
16.1.0-beta0009 338 7/11/2025
16.1.0-beta0006 332 7/11/2025
16.1.0-beta0005 377 7/10/2025
16.1.0-beta0004 560 6/12/2025
16.0.1-beta0002 421 5/20/2025
16.0.1-beta0001 384 5/26/2025
16.0.0 2,083 5/20/2025
16.0.0-beta0162 423 5/20/2025
16.0.0-beta0159 405 5/20/2025
16.0.0-beta0158 371 5/17/2025
16.0.0-beta0146 473 5/13/2025
16.0.0-beta0145 481 5/12/2025
16.0.0-beta0144 368 4/25/2025
16.0.0-beta0143 347 4/25/2025
16.0.0-beta0141 448 4/16/2025
16.0.0-beta0140 1,558 4/7/2025
16.0.0-beta0127 391 4/4/2025
16.0.0-beta0126 373 3/28/2025
16.0.0-beta0125 402 3/27/2025
16.0.0-beta0124 401 3/27/2025
16.0.0-beta0109 358 3/26/2025
16.0.0-beta0104 680 3/24/2025
16.0.0-beta0103 358 3/18/2025
16.0.0-beta0102 375 3/18/2025
16.0.0-beta0090 346 3/18/2025
16.0.0-beta0088 277 3/14/2025
16.0.0-beta0083 348 3/12/2025
16.0.0-beta0079 359 3/8/2025
16.0.0-beta0068 432 3/5/2025
16.0.0-beta0067 412 3/5/2025
16.0.0-beta0066 404 3/5/2025
16.0.0-beta0063 427 3/5/2025
16.0.0-beta0061 470 3/4/2025
16.0.0-beta0052 339 2/24/2025
16.0.0-beta0051 328 2/21/2025
16.0.0-beta0050 315 2/21/2025
16.0.0-beta0049 298 2/20/2025
16.0.0-beta0048 329 2/20/2025
16.0.0-beta0047 419 2/18/2025
16.0.0-beta0046 400 2/18/2025
16.0.0-beta0045 379 2/17/2025
16.0.0-beta0034 381 2/17/2025
16.0.0-beta0033 356 2/17/2025
16.0.0-beta0032 421 2/13/2025
16.0.0-beta0031 8,675 2/13/2025
16.0.0-beta0021 383 2/12/2025
16.0.0-beta0020 347 2/12/2025
16.0.0-beta0019 334 2/11/2025
16.0.0-beta0017 319 2/7/2025
16.0.0-beta0016 332 2/7/2025
16.0.0-beta0012 325 2/6/2025
16.0.0-beta0011 321 2/6/2025
16.0.0-beta0010 356 2/5/2025
16.0.0-beta0009 344 2/5/2025
15.0.1-beta0007 301 1/27/2025
15.0.1-beta0004 307 1/24/2025
15.0.1-beta0003 314 1/23/2025
15.0.1-beta0002 264 1/13/2025
15.0.0 5,216 1/7/2025
15.0.0-beta0170 316 1/7/2025
15.0.0-beta0165 325 1/2/2025
15.0.0-beta0163 340 12/20/2024
15.0.0-beta0135 338 12/20/2024
15.0.0-beta0133 352 12/3/2024
15.0.0-beta0128 1,314 11/19/2024
15.0.0-beta0122 330 11/19/2024
15.0.0-beta0117 1,437 11/14/2024
15.0.0-beta0115 349 11/12/2024
15.0.0-beta0114 352 11/7/2024
15.0.0-beta0112 343 10/30/2024
15.0.0-beta0111 276 10/28/2024
15.0.0-beta0102 282 10/25/2024
15.0.0-beta0101 294 10/24/2024
15.0.0-beta0099 305 10/24/2024
15.0.0-beta0098 316 10/24/2024
15.0.0-beta0097 264 10/17/2024
15.0.0-beta0096 311 10/11/2024
15.0.0-beta0093 297 10/10/2024
15.0.0-beta0091 270 10/8/2024
15.0.0-beta0083 358 9/6/2024
15.0.0-beta0082 352 8/28/2024
15.0.0-beta0081 486 8/28/2024
15.0.0-beta0079 353 8/27/2024
15.0.0-beta0067 346 8/23/2024
15.0.0-beta0051 339 8/19/2024
14.2.0-beta0022 21,664 8/15/2024
14.2.0-beta0021 335 8/15/2024
14.2.0-beta0020 383 8/12/2024
14.2.0-beta0019 367 8/1/2024
14.2.0-beta0014 339 8/1/2024
14.2.0-beta0012 309 8/1/2024
14.2.0-beta0010 334 8/1/2024
14.2.0-beta0009 7,642 6/10/2024
14.1.2-beta0002 330 6/7/2024
14.1.1 9,547 5/23/2024
14.1.1-beta0004 353 5/23/2024
14.1.1-beta0002 282 5/14/2024
14.1.0 359 5/13/2024
14.1.0-beta0007 249 5/13/2024
14.1.0-beta0005 312 5/9/2024
14.0.1-beta0003 328 5/1/2024
14.0.1-beta0001 389 4/15/2024
14.0.0 714 4/9/2024
13.0.1 30,137 1/9/2024
13.0.0 1,658 12/8/2023
12.0.1 54,472 5/26/2023
12.0.0 25,784 2/15/2023
11.0.1 1,843 1/27/2023
11.0.0 7,896 1/21/2023
10.1.0 21,424 8/26/2022
10.0.0 24,630 8/4/2022
9.0.0 5,939 6/3/2022
8.0.0 41,085 3/4/2021
7.0.0 73,746 8/29/2019
4.1.0 1,687 3/23/2018

Changes since version 15.0.0

Added:
- [SIL.WritingSystems] Added public DownloadLanguageTags method for updating the cached langtags.json from the SLDR repository.
- [SIL.Core] Add environment variable to disable `GlobalMutex` across processes. Helpful for snap packages in Linux.
- [SIL.Core] Added string extension method SplitLines.
- [SIL.Windows.Forms] Added ContributorsListControl.Initialize method to allow the model to be set later when using the (existing) parameterless constructor in Designer.

Changed:
- [SIL.TestUtilities] Made FluentAssertXml classes use "Assert.That" so they can work in clients that use NUnit 4.
- [SIL.Windows.Forms] Removed protected members from FadingMessageWindow: MsgThread, MsgForm, Text, MsgPoint, and ShowForm. (The underlying implementation needed to be changed, and the existing implementation was such that these members would be unlikely to have been meaningful or helpful in a derived class anyway.)
- [SIL.Windows.Forms] Added the stated requirement that FadingMessageWindow.Show be called on the UI thread.
- [SIL.WritingSystems] Changed optional parameter of SLDR's Initialize from offlineMode to offlineTestMode (technically a breaking change).
- [SIL.WritingSystems] Added optional parameter to InitializeLanguageTags: bool downloadLanguageTags (default true).
- [SIL.WritingSystems] Download of langtags.json handled with ETag and If-None-Match headers instead of If-Modified-Since.
- [SIL.WritingSystems] Added version number to the UserAgent string used for LDML and langtags.json requests.
- [SIL.DictionaryServices] In class LiftLexEntryRepository, renamed private method GetTrimmedElementsSeperatedBySemiColon to GetTrimmedElementsSeparatedBySemiColon and private method CheckIfTokenHasAlreadyBeenReturnedForThisSemanticDomain parameter fieldsandValuesForRecordTokens to fieldsAndValuesForRecordTokens.
- [SIL.DictionaryServices.Tests] Renamed test class LiftLexEntryRepositoryStateUnitializedTests to LiftLexEntryRepositoryStateUninitializedTests.
- [SIL.DictionaryServices.Tests.Lift] Renamed test class LiftRepositoryStateUnitializedTests to LiftRepositoryStateUninitializedTests.
- [SIL.Tests.Data] Renamed test interface IRepositoryStateUnitializedTests to IRepositoryStateUninitializedTests and test class MemoryRepositoryStateUnitializedTests to MemoryRepositoryStateUninitializedTests.
- [SIL.Tests.Spelling] Renamed test class SpellingwordTokenizerTests to SpellingWordTokenizerTests.
- [SIL.Tests.Text] In test class MultiTextBaseTests, renamed method AnnotationOfMisssingAlternative to AnnotationOfMissingAlternative.
- [SIL.Windows.Forms.Keyboarding.Tests] In test class XkbKeyboardAdapterTests, renamed method Errorkeyboards to ErrorKeyboards.
- [SIL.Windows.Forms.Keyboarding.Windows] In internal interface ITfInputProcessorProfileMgr, renamed method RegisterProfile parameter hklsubstitute to hklSubstitute.
- [SIL.Windows.Forms.Reporting] In class ProblemNotificationDialog, renamed internal property \_reoccurenceMessage to \_reoccurrenceMessage.
- [SIL.Windows.Forms.Widgets] Fix loss of precision in drawing arrows within HorizontalSpinner.OnPaint.
- [SIL.WritingSystems] In class LanguageLookup changed private method AddLanguage parameter threelettercode to threeLetterCode.
- [SIL.WritingSystems] Updated langtags.json and ianaSubtagRegistry.txt in Resources.
- [SIL.Xml] BREAKING CHANGE: In class XmlUtils, renamed method GetIndendentedXml to GetIndentedXml.
- [SIL.UsbDrive.Linux] BREAKING CHANGE: In interface IUDiskDevice renamed method DriveAtaSmartInitiateSelftest to DriveAtaSmartInitiateSelfTest and property DevicePresentationNopolicy to DevicePresentationNoPolicy.
- [SIL.DictionaryServices.Model] BREAKING CHANGE: In class LexEntry, renamed WellKnownProperties.FlagSkipBaseform to WellKnownProperties.FlagSkipBaseForm and GetSomeMeaningToUseInAbsenseOfHeadWord to GetSomeMeaningToUseInAbsenceOfHeadWord.
- [SIL.DictionaryServices.Model] BREAKING CHANGE: In classes LexEntry and LexSense, renamed method CleanUpAfterEditting to CleanUpAfterEditing.
- [SIL.Lift] BREAKING CHANGE: In abstract class PalasoDataObject, renamed method CleanUpAfterEditting to CleanUpAfterEditing.
- [SIL.Reporting] BREAKING CHANGE: In classes ErrorReport and ExceptionHelper, renamed methed GetHiearchicalExceptionInfo to GetHierarchicalExceptionInfo.
- [SIL.Reporting] BREAKING CHANGE: In interface IRepeatNoticePolicy and classes ShowAlwaysPolicy and ShowOncePerSessionBasedOnExactMessagePolicy, renamed property ReoccurenceMessage to ReoccurrenceMessage.
- [SIL.Reporting] BREAKING CHANGE: In class FontAnalytics, renamed property MinumumInterval to MinimumInterval.
- [SIL.Scripture] BREAKING CHANGE: In class BCVRef method MakeReferenceString, renamed parameter supressChapterForIntroMatter to suppressChapterForIntroMatter.
- [SIL.Windows.Forms.ImageToolbox] BREAKING CHANGE: Changed class PalsoImageNotDisposed to PalasoImageNotDisposed.
- [SIL.Windows.Forms.Reporting] BREAKING CHANGE: In class ProblemNotificationDialog, renamed method ReoccurenceMessage to ReoccurrenceMessage.
- [SIL.WritingSystems] BREAKING CHANGE: A new FontDefinition now has .Role default to FontRoles.None rather than FontRoles.Default. Likewise, the method LdmlDataMapper.Read now reads in a font with no type as FontRoles.None instead of FontRoles.Default.
- [SIL.WritingSystems] Added UI to enum FontRoles; the methods LdmlDataMapper.Read and LdmlDataMapper.Write now support fonts with type "ui". Also, if the ldml file has a font type not covered in FontRoles, LdmlDataMapper.Read will add it as FontRoles.Default.

Fixed:
- [SIL.Windows.Forms] Changed build date in SILAboutBox to be computed using the last write time instead of creation time.
- [SIL.Windows.Forms] Made FadingMessageWindow implement all UI logic on the main UI thread in a thread-safe way. Fixes crashes like SP-2340.
- [SIL.Windows.Forms] Made ContributorsListControl more threadsafe. Possibly fixes crashes like SP-2353 or at least makes them less likely.
- [SIL.WritingSystems] Added check to Subtag.Equals to ensure two subtags being compared are of same derived type. This could potentially be a subtle breaking change in the unlikely event that someone was intentionally relying on the previous errant behavior.

See full changelog at https://github.com/sillsdev/libpalaso/blob/master/CHANGELOG.md