Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .docfx/BuildDocfxImage.ps1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
$version = minver -i -t v -v w
docfx metadata docfx.json
docker buildx build -t yourbranding/classlibrary1:$version --platform linux/arm64,linux/amd64 --load -f Dockerfile.docfx .
docker buildx build -t jcr.codebelt.net/geekle/globalization-docfx:$version --platform linux/arm64,linux/amd64 --load -f Dockerfile.docfx .
get-childItem -recurse -path api -include *.yml, .manifest | remove-item
Comment on lines 1 to 4
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Consider adding error handling and logging to the script.

While the script covers all necessary steps for building and tagging the Docker image, it could benefit from some additional robustness:

  1. Error handling: Add checks after each critical operation to ensure they completed successfully.
  2. Logging: Include logging statements to track the progress of the script and aid in troubleshooting.

Here's an example of how you could enhance the script:

# Function for logging
function Log-Message {
    param([string]$message)
    Write-Host "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss') - $message"
}

try {
    Log-Message "Starting build process"
    
    $version = minver -i -t v -v w
    if (-not $version) { throw "Failed to generate version number" }
    Log-Message "Generated version: $version"
    
    docfx metadata docfx.json
    if ($LASTEXITCODE -ne 0) { throw "docfx metadata generation failed" }
    Log-Message "Metadata generated successfully"
    
    docker buildx build -t jcr.codebelt.net/geekle/globalization-docfx:$version --platform linux/arm64,linux/amd64 --load -f Dockerfile.docfx .
    if ($LASTEXITCODE -ne 0) { throw "Docker build failed" }
    Log-Message "Docker image built successfully"
    
    get-childItem -recurse -path api -include *.yml, .manifest | remove-item
    Log-Message "Cleanup completed"
    
    Log-Message "Build process completed successfully"
} catch {
    Log-Message "Error: $_"
    exit 1
}

This enhanced version includes error checking, logging, and a try-catch block to handle any unexpected errors.

2 changes: 1 addition & 1 deletion .docfx/Dockerfile.docfx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM nginx:1.27.0-alpine AS base
FROM nginx:1.27.1-alpine AS base
RUN rm -rf /usr/share/nginx/html/*

FROM codebeltnet/docfx:2.77.0 AS build
Expand Down
4 changes: 2 additions & 2 deletions .docfx/PublishDocfxImage.ps1
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
$version = minver -i -t v -v w
docker tag classlibrary1-docfx:$version yourbranding/classlibrary1:$version
docker push yourbranding/classlibrary1:$version
docker tag globalization-docfx:$version jcr.codebelt.net/geekle/globalization-docfx:$version
docker push jcr.codebelt.net/geekle/globalization-docfx:$version
15 changes: 0 additions & 15 deletions .docfx/api/namespaces/ClassLibrary1.md

This file was deleted.

25 changes: 25 additions & 0 deletions .docfx/api/namespaces/Codebelt.Extensions.Globalization.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
uid: Codebelt.Extensions.Globalization
summary: *content
---
The `Codebelt.Extensions.Globalization` namespace contains extension methods that is an addition to the `System.Globalization` namespace.

[!INCLUDE [availability-default](../../includes/availability-default.md)]

Complements: [System.Globalization namespace](https://docs.microsoft.com/en-us/dotnet/api/system.globalization) 🔗

### Extension Methods

|Type|Ext|Methods|
|--:|:-:|---|
|CultureInfo|⬇️|`UseNationalLanguageSupport`|

### CSharp Example

```csharp
var danishCultureIcu = new CultureInfo("da-dk", false);
var danishCultureNls = new CultureInfo("da-dk", false).UseNationalLanguageSupport();

// danishCultureIcu outputs dd.MM.yyyy from danishCultureIcu.DateTimeFormat.ShortDatePattern
// danishCultureNls outputs dd-MM-yyyy from danishCultureNls.DateTimeFormat.ShortDatePattern
```
10 changes: 4 additions & 6 deletions .docfx/docfx.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"src": [
{
"files": [
"ClassLibrary1/**.csproj"
"Codebelt.Extensions.Globalization/**.csproj"
],
"src": "../src"
}
Expand All @@ -19,8 +19,6 @@
"build": {
"xref": [
"https://docs.cuemon.net/xrefmap.yml",
"https://docs.savvyio.net/xrefmap.yml",
"https://sharedkernel.codebelt.net/xrefmap.yml",
"https://github.com/dotnet/docfx/raw/main/.xrefmap.json"
],
"content": [
Expand All @@ -46,15 +44,15 @@
}
],
"globalMetadata": {
"_appTitle": "Shared Kernel (DDD) for .NET",
"_appTitle": "Extensions for Globalization by Codebelt",
"_appFooter": "<span>Generated by <strong>DocFX</strong>. Copyright 2024 ClassLibrary1. All rights reserved.</span>",
"_appLogoPath": "images/50x50.png",
"_appFaviconPath": "images/favicon.ico",
"_googleAnalyticsTagId": "G-X000000000",
"_googleAnalyticsTagId": "G-R07CSX4Z91",
"_enableSearch": false,
"_disableContribution": false,
"_gitContribute": {
"repo": "https://github.com/classlibrary1/ClassLibrary1",
"repo": "https://github.com/codebeltnet/globalization",
"branch": "main"
},
"_gitUrlPattern": "github"
Expand Down
Binary file added .docfx/images/128x128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified .docfx/images/32x32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified .docfx/images/50x50.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified .docfx/images/favicon.ico
Binary file not shown.
14 changes: 11 additions & 3 deletions .docfx/index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
---
uid: frontpage-md
title: ClassLibrary1
title: Extensions for Globalization by Codebelt
---
# ClassLibrary1
![Extensions for Globalization API by Codebelt](/images/128x128.png)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Issue: Image file not found

The specified image images/128x128.png does not exist in the repository. Please ensure the image is added to the correct directory or update the path in the .docfx/index.md file accordingly.

🔗 Analysis chain

LGTM: Image added for visual representation.

The addition of an image enhances the visual appeal of the documentation. This is a good improvement.

Please verify that the image file exists at the specified path:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the existence of the project logo image.

# Test: Check if the image file exists
if fd -p "images/128x128.png" > /dev/null; then
    echo "Image file found."
else
    echo "Image file not found. Please ensure it's placed in the correct location."
fi

Length of output: 119


Script:

#!/bin/bash
# Description: Verify the existence of the project logo image.

# Test: Check if the image file exists using fd
fd "128x128.png" ./images --type f --max-depth 1 > /dev/null
if [ $? -eq 0 ]; then
    echo "Image file found."
else
    echo "Image file not found. Please ensure it's placed in the correct location."
fi

Length of output: 320


Script:

#!/bin/bash
# Description: Check for the 'images' directory and locate '128x128.png' if necessary.

# Check if the 'images' directory exists
if [ -d "./images" ]; then
    echo "Directory './images' exists."
    
    # Check if the image file exists within the 'images' directory
    if [ -f "./images/128x128.png" ]; then
        echo "Image file '128x128.png' found in './images/'."
    else
        echo "Image file '128x128.png' not found in './images/'."
    fi
else
    echo "Directory './images' does not exist. Searching for '128x128.png' in the repository."
    
    # Search for the image file in the repository
    image_path=$(fd "128x128.png" . --type f --max-depth 10)
    
    if [ -n "$image_path" ]; then
        echo "Image file found at: $image_path"
    else
        echo "Image file '128x128.png' not found in the repository."
    fi
fi

Length of output: 407


Landing page for ClassLibrary1.
# Extensions for Globalization by Codebelt

Originally, this project was part of **Cuemon for .NET**, but with the forthcoming release of .NET 9 (and what resembled circular reference dependencies), it was split into its own project.

This project is now part of [Extensions for Globalization API by Codebelt](https://github.com/codebeltnet/globalization).

[Cuemon for .NET](https://www.cuemon.net/) will pursue its original purpose; providing an addition/complement/sidecar to Microsoft .NET platform.

Proceed to the [docs](/api/Codebelt.Extensions.Globalization.html) to learn more about the capabilities of this project.
16 changes: 4 additions & 12 deletions .docfx/packages/index.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,11 @@
# NuGet Packages

This is a list of all NuGet packages from **ClassLibrary1** that is publicly available on [NuGet.org](https://www.nuget.org/packages?q=ClassLibrary1); the packages here are listed alphabetically and are available in preview-, rc- and production-ready versions.
This is a list of all NuGet packages from **Extensions for Globalization API by Codebelt** that is publicly available on [NuGet.org](https://www.nuget.org/packages?q=Codebelt.Extensions); the packages here are listed alphabetically and are available in preview-, rc- and production-ready versions.

## 📦 Standalone Packages
### 📦 Standalone Packages

Provides a focused API for ...
Provides a focused API for RESTful versioning.

|Package|vNext|Stable|Downloads|
|:--|:-:|:-:|:-:|
| [ClassLibrary1](https://www.nuget.org/packages/ClassLibrary1/) | ![vNext](https://img.shields.io/nuget/vpre/ClassLibrary1?logo=nuget) | ![Stable](https://img.shields.io/nuget/v/ClassLibrary1?logo=nuget) | ![Downloads](https://img.shields.io/nuget/dt/ClassLibrary1?color=blueviolet&logo=nuget) |

## 🏭 Productivity Packages

Provides a convenient set of default API additions for ...

|Package|vNext|Stable|Downloads|
|:--|:-:|:-:|:-:|
| [ClassLibrary1.App](https://www.nuget.org/packages/ClassLibrary1.App/) | ![vNext](https://img.shields.io/nuget/vpre/ClassLibrary1.App?logo=nuget) | ![Stable](https://img.shields.io/nuget/v/ClassLibrary1.App?logo=nuget) | ![Downloads](https://img.shields.io/nuget/dt/ClassLibrary1.App?color=blueviolet&logo=nuget) |
| [Codebelt.Extensions.Globalization](https://www.nuget.org/packages/Codebelt.Extensions.Globalization/) | ![vNext](https://img.shields.io/nuget/vpre/Codebelt.Extensions.Globalization?logo=nuget) | ![Stable](https://img.shields.io/nuget/v/Codebelt.Extensions.Globalization?logo=nuget) | ![Downloads](https://img.shields.io/nuget/dt/Codebelt.Extensions.Globalization?color=blueviolet&logo=nuget) |
4 changes: 2 additions & 2 deletions .docfx/toc.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
- name: ClassLibrary1 API
href: api/ClassLibrary1.html
- name: Globalization API
href: api/Codebelt.Extensions.Globalization.html
Comment on lines +1 to +2
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

⚠️ Missing API Documentation File

The new API documentation file api/Codebelt.Extensions.Globalization.html is missing. Please add the updated documentation to ensure consistency with the rebranding effort.

  • api/Codebelt.Extensions.Globalization.html
🔗 Analysis chain

LGTM! The TOC changes align with the rebranding effort.

The updates to the table of contents accurately reflect the migration from "ClassLibrary1" to "Codebelt.Extensions.Globalization". This change is consistent with the PR objectives and the overall rebranding effort.

To ensure consistency across the documentation, let's verify that all references to the old name have been updated:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for any remaining references to ClassLibrary1 in documentation files

# Test: Search for "ClassLibrary1" in all documentation files
# Expect: No occurrences of "ClassLibrary1" in .md, .html, or .yml files
rg --type md --type html --type yaml "ClassLibrary1" .

# Test: Verify that the new API documentation file exists
# Expect: File should exist
test -f "api/Codebelt.Extensions.Globalization.html" && echo "New API doc exists" || echo "New API doc missing"

Length of output: 156

- name: NuGet
href: packages
14 changes: 7 additions & 7 deletions .github/workflows/pipelines.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
name: ClassLibrary1 CI/CD Pipeline
name: Globalization Ext. CI/CD Pipeline
on:
pull_request:
branches: [main]
paths-ignore:
- .codecov
- .docfx
- .github
- .nuget
- '**.md'
workflow_dispatch:
inputs:
configuration:
Expand All @@ -26,7 +26,7 @@ jobs:
strategy:
matrix:
configuration: [Debug, Release]
framework: [net8.0]
framework: [net8.0,net6.0,netstandard2.0]
outputs:
version: ${{ steps.minver-calculate.outputs.version }}
steps:
Expand All @@ -45,12 +45,12 @@ jobs:
name: Calculate Version
uses: codebeltnet/minver-calculate@v2

- name: Download classlibrary1.snk file
- name: Download globalization.snk file
uses: codebeltnet/gcp-download-file@v1
with:
serviceAccountKey: ${{ secrets.GCP_TOKEN }}
bucketName: ${{ secrets.GCP_BUCKETNAME }}
objectName: classlibrary1.snk
objectName: globalization.snk

- name: Restore Dependencies
uses: codebeltnet/dotnet-restore@v2
Expand Down Expand Up @@ -135,7 +135,7 @@ jobs:
with:
token: ${{ secrets.SONAR_TOKEN }}
organization: geekle
projectKey: classlibrary1
projectKey: globalization
version: ${{ needs.build.outputs.version }}

- name: Build
Expand All @@ -162,7 +162,7 @@ jobs:
uses: codebeltnet/codecov-scan@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
repository: organization/classlibrary1
repository: codebeltnet/globalization

codeql:
name: 🛡️ Security Analysis
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -374,4 +374,7 @@ FodyWeavers.xsd
*.code-workspace

# Strong-Name Key
*.snk
*.snk
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codebase verification

Action Required: Missing Documentation for SNK Files

While .snk files are correctly ignored in the repository, the README.md does not provide any instructions on obtaining or generating SNK files for the build process. This omission may lead to build issues for developers.

  • Update Documentation: Add clear instructions in README.md on how to obtain or generate the necessary SNK files for local development and the build system.
🔗 Analysis chain

Approved: Ignoring Strong Name Key files.

Adding *.snk to .gitignore is a good security practice as it prevents sensitive cryptographic information from being committed to the repository.

To ensure this doesn't affect the build process, please verify that:

  1. The build system has access to the required SNK file.
  2. There are clear instructions in the project documentation on how to obtain or generate the SNK file for local development.
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Verify if there are any remaining .snk files in the repository
snk_files=$(fd -e snk)
if [ -n "$snk_files" ]; then
    echo "Warning: Found .snk files that are not ignored:"
    echo "$snk_files"
else
    echo "No .snk files found in the repository."
fi

# Check if there are instructions for handling SNK files
readme_content=$(cat README.md 2>/dev/null || echo "README.md not found")
if echo "$readme_content" | grep -qi "snk\|strong name key"; then
    echo "README.md contains information about SNK files."
else
    echo "Warning: README.md does not mention SNK files or Strong Name Keys."
fi

Length of output: 478


Script:

#!/bin/bash
# Verify if there are any remaining .snk files in the repository
snk_files=$(fd -e snk)
if [ -n "$snk_files" ]; then
    echo "Warning: Found .snk files that are not ignored:"
    echo "$snk_files"
else
    echo "No .snk files found in the repository."
fi

# Check if there are instructions for handling SNK files
readme_content=$(cat README.md 2>/dev/null || echo "README.md not found")
if echo "$readme_content" | grep -qi "snk\|strong name key"; then
    echo "README.md contains information about SNK files."
else
    echo "Warning: README.md does not mention SNK files or Strong Name Keys."
fi

Length of output: 5014


# Tooling
/tooling/gse/Surrogates
6 changes: 0 additions & 6 deletions .nuget/ClassLibrary1/PackageReleaseNotes.txt

This file was deleted.

5 changes: 0 additions & 5 deletions .nuget/ClassLibrary1/README.md

This file was deleted.

Binary file removed .nuget/ClassLibrary1/icon.png
Binary file not shown.
52 changes: 52 additions & 0 deletions .nuget/Codebelt.Extensions.Globalization/PackageReleaseNotes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
Version 8.4.0
Availability: .NET 8, .NET 6 and .NET Standard 2.0

# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs

# Breaking Changes
- CHANGED CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Codebelt.Extensions.YamlDotNet assembly instead of YAML support from Cuemon.Extensions.YamlDotNet assembly

Version 8.3.2
Availability: .NET 8, .NET 6 and .NET Standard 2.0

# ALM
- REMOVED Support for TFM .NET 7 (STS)

Version 8.3.0
Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0

# Improvements
- CHANGED CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
- CHANGED CultureInfoSurrogate class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
- CHANGED tooling/gse to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly

Version 8.2.0
Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0

# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs

Version: 8.1.0
Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0

# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs

Version: 8.0.1
Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0

# ALM
- CHANGED Dependencies to latest and greatest with respect to TFMs

Version: 8.0.0
Availability: .NET 8, .NET 7, .NET 6 and .NET Standard 2.0

# ALM
- ADDED TFM for net8.0
- CHANGED Dependencies to latest and greatest with respect to TFMs

# Improvements
- ADDED tooling/gse to the solution folder that is used for extracting NLS surrogates; this was done to mitigate the original design decision that was most [unfortunate](https://github.com/gimlichael/Cuemon/commit/71ff4f9ecb95897170aab1e6ba894c320ae095bd)
- gse stands for globalization surrogates extractor

23 changes: 23 additions & 0 deletions .nuget/Codebelt.Extensions.Globalization/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
## About

An open-source project (MIT license) that targets and complements the [System.Globalization](https://github.com/dotnet/runtime/tree/main/src/libraries/System.Private.CoreLib/src/System/Globalization) namespace. It aims to provide a way to favor National Language Support (NLS) over International Components for Unicode (ICU).

It is, by heart, free, flexible and built to extend and boost your agile codebelt.

## **Codebelt.Extensions.Globalization** for .NET

The `Codebelt.Extensions.Globalization` namespace contains extension methods that is an addition to the `System.Globalization` namespace.

More documentation available at our documentation site:

- [Codebelt.Extensions.Globalization](https://globalization.codebelt.net/api/Codebelt.Extensions.Globalization.html) 🔗

### CSharp Example

```csharp
var danishCultureIcu = new CultureInfo("da-dk", false);
var danishCultureNls = new CultureInfo("da-dk", false).UseNationalLanguageSupport();

// danishCultureIcu outputs dd.MM.yyyy from danishCultureIcu.DateTimeFormat.ShortDatePattern
// danishCultureNls outputs dd-MM-yyyy from danishCultureNls.DateTimeFormat.ShortDatePattern
```
Binary file added .nuget/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
28 changes: 27 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,32 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),

For more details, please refer to `PackageReleaseNotes.txt` on a per assembly basis in the `.nuget` folder.

## [Unreleased] - TBD
## [8.4.0] - 2024-09-28

### Changed

- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Codebelt.Extensions.YamlDotNet assembly instead of YAML support from Cuemon.Extensions.YamlDotNet assembly

## [8.3.0] - 2024-04-09

### Changed

- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
- CultureInfoSurrogate class in the Codebelt.Extensions.Globalization namespace to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly
- tooling/gse to use Cuemon.Extensions.YamlDotNet assembly instead of legacy YAML support in Cuemon.Core assembly 

## [8.0.0] - 2023-11-14

### Added

- Tool for extracting NLS surrogates `tooling/gse` (Globalization Surrogates Extractor); this was done to mitigate the original design decision that was most [unfortunate](https://github.com/gimlichael/Cuemon/commit/71ff4f9ecb95897170aab1e6ba894c320ae095bd)

### Fixed

- National Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Globalization assembly
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Fix grammatical error in NLS surrogates update.

There's a subject-verb agreement issue in the sentence about NLS surrogates.

Please apply the following change:

- National Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Globalization assembly
+ National Language Support (NLS) surrogates were updated in the Codebelt.Extensions.Globalization assembly
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- National Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Globalization assembly
- National Language Support (NLS) surrogates were updated in the Codebelt.Extensions.Globalization assembly
🧰 Tools
🪛 LanguageTool

[uncategorized] ~29-~29: The verb “was” doesn’t seem to fit in this context, “were” is probably more formally correct.
Context: ...ional Language Support (NLS) surrogates was updated in the Codebelt.Extensions.Glob...

(AI_HYDRA_LEO_CPT_WAS_WERE)


## [7.0.0] 2022-11-09

### Added

- CultureInfoExtensions class in the Codebelt.Extensions.Globalization namespace that consist of extension methods for the CultureInfo class: UseNationalLanguageSupport
46 changes: 0 additions & 46 deletions ClassLibrary1.sln

This file was deleted.

Loading