Skip to content

Commit

Permalink
Update the repository from fork laget.se/ical net (#595)
Browse files Browse the repository at this point in the history
* Update the repository from fork `laget.se/ical net` 

**Apply the following change after the update:**

* Remove net5.0 as target framework from all lprojects
* Update nuget-specific settings
  * Update icon.png file used in Ical.Net.nuspec
  * Update package metadata
  * Remove net5.0 package target framework
  * Update README.md to reflect the current project state with ical-org
* Fix: Update publish.yml to create deterministic builds for packages,
update action versions
* Update GitHub actions to reflect the changed main branch name
* Update `readme.md`
* Update CI workflows `publish.yml` and `tests.yml`
  - Changed `runs-on` to `ubuntu-latest`.
  - Added `fetch-depth: 0` to `actions/checkout@v4` in both workflows.
  - Added `Get version tag` step in `publish.yml`.
  - Included `-p:nowarn=1591` in `Build` steps to suppress warnings.
  - Changed `Test` verbosity to `quiet` in both workflows.
- Updated `Build and pack for publishing` in `publish.yml` to use
`VERSION`.
- Updated `Store artifacts` step in `publish.yml` for new naming
convention.
- Updated `Push package to NuGet` step in `publish.yml` to use
`VERSION`.
* Update ProdId constant and NodaTime package version
* Add back assembly signing to projects and include strong name key
* Update `Ical.Net.Tests.csproj` and `Ical.Net.csproj` to include
assembly signing by adding `SignAssembly` and
`AssemblyOriginatorKeyFile` properties.
* Replace `InternalsVisibleTo` with `AssemblyAttribute` including a
public key in `Ical.Net.csproj`.
  * Add `IcalNetStrongnameKey.snk` for strong name key.
  * Move InternalsVisibleTo from AssemblyInfo.cs to project file
* Add class `RegexDefaults` and update all Regex with
`RegexDefaults.Timeout` which is set to 200 milliseconds

**This PR closes the following PRs which have previously been merged
into `laget.se/ical net`**
Closes #491
Closes #443
Closes #525
Closes #528
Closes #571 
Closes #579
Closes #584
Closes #595
  • Loading branch information
axunonb authored Oct 13, 2024
2 parents 1ad17e5 + ae4bd4f commit 0b90779
Show file tree
Hide file tree
Showing 358 changed files with 1,512 additions and 2,184 deletions.
10 changes: 10 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
root = true

[*]
charset = utf-8-bom
end_of_line = crlf
indent_style = space
trim_trailing_whitespace = true

[*.cs]
indent_size = 4
63 changes: 3 additions & 60 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,63 +1,6 @@
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
# Auto detect text files and perform LF normalization
# http://davidlaing.com/2012/09/19/customise-your-gitattributes-to-become-a-git-ninja/
* text=auto

###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs diff=csharp
*.cs diff=csharp

###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln merge=binary
#*.csproj merge=binary
#*.vbproj merge=binary
#*.vcxproj merge=binary
#*.vcproj merge=binary
#*.dbproj merge=binary
#*.fsproj merge=binary
#*.lsproj merge=binary
#*.wixproj merge=binary
#*.modelproj merge=binary
#*.sqlproj merge=binary
#*.wwaproj merge=binary

###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg binary
#*.png binary
#*.gif binary

###############################################################################
# diff behavior for common document formats
#
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the
# entries below.
###############################################################################
#*.doc diff=astextplain
#*.DOC diff=astextplain
#*.docx diff=astextplain
#*.DOCX diff=astextplain
#*.dot diff=astextplain
#*.DOT diff=astextplain
#*.pdf diff=astextplain
#*.PDF diff=astextplain
#*.rtf diff=astextplain
#*.RTF diff=astextplain
70 changes: 0 additions & 70 deletions .github/workflows/codeql-analysis.yml

This file was deleted.

62 changes: 62 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Publish
# This job builds and and publishes the package to NuGet.
# It depends on the included tests job to complete successfully.
# The version number is determined by the latest tag for the 'main' branch selected with workflow dispatch.
on:
workflow_dispatch: {}

jobs:
tests:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
8.0.x
6.0.x
3.1.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --no-restore --configuration Release -p:nowarn=1591
- name: Test
run: dotnet test --no-build --configuration Release --verbosity quiet

publish:
runs-on: ubuntu-latest
needs: tests

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Get version tag
# The latest tag for the selected branch.
# Get it and strip off any leading 'v' from the version tag
run: |
Version=$(git describe --tags --abbrev=0 | sed 's/^v//')
echo "VERSION=$Version" >> $GITHUB_ENV
echo "Version: $Version"
- name: Build and pack for publishing
run: |
dotnet restore
dotnet build --configuration Release Ical.Net/Ical.Net.csproj -p:Version=${{env.VERSION}} -p:FileVersion=${{env.VERSION}}.${{github.run_number}} -p:IncludeSymbols=true -p:SymbolPackageFormat=snupkg -p:ContinuousIntegrationBuild=true
dotnet pack --configuration Release Ical.Net/Ical.Net.csproj -p:Version=${{env.VERSION}} -p:IncludeSymbols=true -p:SymbolPackageFormat=snupkg --no-build -p:PackageVersion=${{env.VERSION}}.${{github.run_number}} -p:NuspecFile=Ical.Net.nuspec
- name: Store artifacts
uses: actions/upload-artifact@v4
with:
name: ICal.Net_pkg_${{env.VERSION}}.${{github.run_number}}
path: |
Ical.Net/bin/Release/**/*.nupkg
Ical.Net/bin/Release/**/*.snupkg
- name: Push package to NuGet
# Does not fail, if the package already exists
run: dotnet nuget push Ical.Net/bin/Release/Ical.Net.${{env.VERSION}}.nupkg --api-key ${{secrets.NUGET_API_KEY}} --source https://api.nuget.org/v3/index.json --skip-duplicate
34 changes: 34 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Tests

on:
# Trigger the workflow on push or pull request,
# but only for the main branch
pull_request:
branches:
- main
push:
branches:
- main

jobs:
tests:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all tags and branches
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
8.0.x
6.0.x
3.1.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --no-restore --configuration Release -p:nowarn=1591
- name: Test
run: dotnet test --no-build --configuration Release --verbosity quiet
Loading

0 comments on commit 0b90779

Please sign in to comment.