Skip to content

Commit

Permalink
Added .NET Standard support
Browse files Browse the repository at this point in the history
Changes made in this release:
- Updated the projects to support .NET Standard 2.0.  The assemblies now target .NET 4.0 and later and .NET Standard 2.0.  Closes #7.
- Updated the PDIDatesTest, PDIParserTest, and RFC2445RecurTest demo console applications to be .NET Core 2.1 applications.
- Updated all Windows Forms and web applications to use .NET 4.7.2 and enabled high DPI support in the Windows Forms applications.
- Added EWSoftware.PDI.WinForms.Design.csproj to allow updating the Windows Forms controls in the designer.  EWSoftware.PDI.WinForms.csproj is used to build the NuGet package.
- Breaking Change: Removed the VTimeZoneCollection.Lock property.  Use the new AcquireReaderLock, ReleaseReaderLock, AcquireWriterLock, and ReleaseWriterLock methods instead.
- Fixed up some code analysis issues.
  • Loading branch information
EWSoftware committed Nov 22, 2018
1 parent 1bd265f commit 5428909
Show file tree
Hide file tree
Showing 133 changed files with 2,605 additions and 3,582 deletions.
15 changes: 3 additions & 12 deletions Doc/EWSoftwarePDI.shfbproj
Original file line number Diff line number Diff line change
Expand Up @@ -26,24 +26,14 @@
</HtmlHelp1xCompilerPath>
<WorkingPath>
</WorkingPath>
<FrameworkVersion>.NET Framework 4.0</FrameworkVersion>
<FrameworkVersion>Cross-platform (.NET Core/.NET Standard)</FrameworkVersion>
<HelpTitle>EWSoftware.PDI Namespace Documentation</HelpTitle>
<CopyrightHref>https://github.com/EWSoftware/PDI</CopyrightHref>
<CopyrightText>[v{%40HelpFileVersion}] Copyright \xA9 2003-2018, Eric Woodruff, All Rights Reserved</CopyrightText>
<FeedbackEMailAddress>Eric%40EWoodruff.us</FeedbackEMailAddress>
<PresentationStyle>VS2013</PresentationStyle>
<SyntaxFilters>Standard</SyntaxFilters>
<ComponentConfigurations>
<ComponentConfig id="IntelliSense Component" enabled="True">
<component id="IntelliSense Component">
<!-- Output options (optional)
Attributes:
Include namespaces (false by default)
Namespaces comments filename ("Namespaces" if not specified or empty)
Output folder (current folder if not specified or empty) -->
<output includeNamespaces="false" namespacesFile="Namespaces" folder="{@ProjectFolder}..\Deployment" />
</component>
</ComponentConfig>
</ComponentConfigurations>
<DocumentationSources>
<DocumentationSource sourceFile="..\Source\EWSPDI.sln" />
Expand All @@ -59,7 +49,7 @@
<NamespaceSummaryItem name="EWSoftware.PDI.Web.Design" isDocumented="True">Personal Data Interchange ASP.NET web server control designers developed by Eric Woodruff.</NamespaceSummaryItem>
<NamespaceSummaryItem name="EWSoftware.PDI.Windows.Forms" isDocumented="True">Personal Data Interchange Windows Forms controls developed by Eric Woodruff.</NamespaceSummaryItem>
</NamespaceSummaries>
<HelpFileVersion>2015.1.19.0</HelpFileVersion>
<HelpFileVersion>2018.11.17.0</HelpFileVersion>
<ApiFilter />
<PlugInConfigurations>
<PlugInConfig id="Output Deployment" enabled="True">
Expand Down Expand Up @@ -160,6 +150,7 @@
<AppendMarkdownFileExtensionsToUrls>False</AppendMarkdownFileExtensionsToUrls>
<SourceCodeBasePath>..\Source\</SourceCodeBasePath>
<WarnOnMissingSourceContext>True</WarnOnMissingSourceContext>
<SaveComponentCacheCapacity>100</SaveComponentCacheCapacity>
</PropertyGroup>
<!-- There are no properties for these groups. AnyCPU needs to appear in
order for Visual Studio to perform the build. The others are optional
Expand Down
File renamed without changes
21 changes: 4 additions & 17 deletions MasterBuild.bat
Original file line number Diff line number Diff line change
@@ -1,30 +1,17 @@
@ECHO OFF
CLS

REM Use the earliest version of MSBuild available
IF EXIST "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Community\MSBuild\15.0" SET "MSBUILD=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Community\MSBuild\15.0\bin\MSBuild.exe"
IF EXIST "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\MSBuild\15.0" SET "MSBUILD=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\bin\MSBuild.exe"
IF EXIST "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0" SET "MSBUILD=%ProgramFiles(x86)%\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin\MSBuild.exe"
IF EXIST "%ProgramFiles(x86)%\MSBuild\14.0" SET "MSBUILD=%ProgramFiles(x86)%\MSBuild\14.0\bin\MSBuild.exe"
IF EXIST "%ProgramFiles(x86)%\MSBuild\12.0" SET "MSBUILD=%ProgramFiles(x86)%\MSBuild\12.0\bin\MSBuild.exe"

"%MSBUILD%" /nologo /v:m /m Source\EWSPDI.sln /t:Clean;Build "/p:Configuration=Release;Platform=Any CPU"

"%MSBUILD%" /nologo /v:m /m Source\CSharpDemos.sln /t:Clean;Build "/p:Configuration=Release;Platform=Any CPU"

"%MSBUILD%" /nologo /v:m /m Source\VBNetDemos.sln /t:Clean;Build "/p:Configuration=Release;Platform=Any CPU"

"%MSBUILD%" /nologo /v:m /m Source\PDIWebDemo.sln /t:Clean;Build
COPY Source\EWSPDI\bin\Release\*.nupkg .\Deployment
COPY Source\EWSPDIData\bin\Release\*.nupkg .\Deployment
COPY Source\EWSPDIWeb\bin\Release\*.nupkg .\Deployment
COPY Source\EWSPDIWinForms\bin\Release\*.nupkg .\Deployment

IF NOT "%SHFBROOT%"=="" "%MSBUILD%" /nologo /v:m Doc\EWSoftwarePDI.sln /t:Clean;Build "/p:Configuration=Release;Platform=Any CPU"

IF "%SHFBROOT%"=="" ECHO **** Sandcastle help file builder not installed. Skipping help build. ****

CD .\NuGet

..\Source\packages\NuGet.CommandLine.4.7.1\tools\NuGet.exe Pack EWSoftware.PDI.nuspec -NoPackageAnalysis -OutputDirectory ..\Deployment
..\Source\packages\NuGet.CommandLine.4.7.1\tools\NuGet.exe Pack EWSoftware.PDI.Data.nuspec -NoPackageAnalysis -OutputDirectory ..\Deployment
..\Source\packages\NuGet.CommandLine.4.7.1\tools\NuGet.exe Pack EWSoftware.PDI.Web.Controls.nuspec -NoPackageAnalysis -OutputDirectory ..\Deployment
..\Source\packages\NuGet.CommandLine.4.7.1\tools\NuGet.exe Pack EWSoftware.PDI.Windows.Forms.nuspec -NoPackageAnalysis -OutputDirectory ..\Deployment

CD ..
25 changes: 0 additions & 25 deletions NuGet/EWSoftware.PDI.Data.nuspec

This file was deleted.

25 changes: 0 additions & 25 deletions NuGet/EWSoftware.PDI.Web.Controls.nuspec

This file was deleted.

29 changes: 0 additions & 29 deletions NuGet/EWSoftware.PDI.Windows.Forms.nuspec

This file was deleted.

26 changes: 0 additions & 26 deletions NuGet/EWSoftware.PDI.nuspec

This file was deleted.

3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# EWSoftware.PDI Library
_**NOTE: The master branch is for Visual Studio 2017 15.5 and later. For Visual Studio 2017 15.4 and earlier,
use the Legacy branch.**_

The EWSoftware Personal Data Interchange (PDI) Library presents you with a complete set of classes that let you
have access to all objects, properties, parameter types, and data types as defined by the vCard (RFC 2426),
vCalendar, and iCalendar (RFC 2445) specifications. Using these classes, you can read and write data files in a
Expand Down
70 changes: 38 additions & 32 deletions Source/.editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ end_of_line = crlf
# (Please don't specify an indent_size here; that has too many unintended consequences.)

# XML files of various types
[*.{xml,aml,csproj,.shfbproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj,props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct}]
[*.{aml,asax,ascx,asmx,asp,aspx,axml,config,content,cshtml,csproj,database,datasource,dbml,disco,discomap,dtsx,edmx,exclude,fxcop,htm,html,items,layout,maml,manifest,master,msha,myapp,nunit,nuspec,proj,projitems,props,publishproj,pubxml,rdl,rdlc,resx,ruleset,settings,shfbproj,shproj,sitemap,snippets,soap,svc,svcinfo,svcmap,targets,tasks,tokens,vbhtml,vbproj,vcxproj,vcxproj.filters,vsct,vsixmanifest,vstemplate,webinfo,wsdl,xaml,xamlcfg,xml,xsd,xsl,xslt,xsx}]
indent_style = tab

# C#/VB settings
Expand All @@ -19,46 +19,46 @@ dotnet_sort_system_directives_first = true

# "This." and "Me." qualification. Use is preferred where true but the lightbulbs tend to show up in places
# they aren't wanted (within static methods and nameof parameters etc.) so no suggestions are enabled.
dotnet_style_qualification_for_event = true:none
dotnet_style_qualification_for_field = false:none
dotnet_style_qualification_for_method = true:none
dotnet_style_qualification_for_property = true:none
dotnet_style_qualification_for_event = true : none
dotnet_style_qualification_for_field = false : none
dotnet_style_qualification_for_method = true : none
dotnet_style_qualification_for_property = true : none

# Language keywords vs framework type names
dotnet_style_predefined_type_for_locals_parameters_members = true:none
dotnet_style_predefined_type_for_member_access = false:error
dotnet_style_predefined_type_for_locals_parameters_members = true : none
dotnet_style_predefined_type_for_member_access = false : error

# Modern language feature settings
dotnet_style_coalesce_expression = true:suggestion
dotnet_style_collection_initializer = true:suggestion
dotnet_style_object_initializer = true:suggestion
# Prefer true:error but must support VS 2013/2015
dotnet_style_explicit_tuple_names = false:none
# Prefer true:suggestion but must support VS 2013/2015
dotnet_style_null_propagation = false:none
dotnet_style_coalesce_expression = true : suggestion
dotnet_style_collection_initializer = true : suggestion
dotnet_style_explicit_tuple_names = true : error
dotnet_style_null_propagation = true : suggestion
dotnet_style_object_initializer = true : suggestion

# CSharp code style settings
[*.cs]
csharp_style_var_elsewhere = false:none
csharp_style_var_for_built_in_types = false:none
csharp_style_var_when_type_is_apparent = false:none
csharp_style_var_elsewhere = false : none
csharp_style_var_for_built_in_types = false : none
csharp_style_var_when_type_is_apparent = false : none

# Prefer true:suggestion but must support VS 2013/2015
csharp_style_expression_bodied_accessors = false:none
csharp_style_expression_bodied_constructors = false:none
# Prefer true:suggestion but must support VS 2013/2015
csharp_style_expression_bodied_indexers = false:none
csharp_style_expression_bodied_methods = false:none
csharp_style_expression_bodied_operators = false:none
# Prefer true:suggestion but must support VS 2013/2015
csharp_style_expression_bodied_properties = false:none
csharp_style_expression_bodied_accessors = true : suggestion
csharp_style_expression_bodied_constructors = false : none
csharp_style_expression_bodied_indexers = true : suggestion
csharp_style_expression_bodied_methods = false : none
csharp_style_expression_bodied_operators = false : none
csharp_style_expression_bodied_properties = true : suggestion

# Prefer true:suggestion on all of these but must support VS 2013/2015
csharp_style_conditional_delegate_call = false:none
csharp_style_inlined_variable_declaration = false:none
csharp_style_pattern_matching_over_as_with_null_check = false:none
csharp_style_pattern_matching_over_is_with_cast_check = false:none
csharp_style_throw_expression = false:none
csharp_style_conditional_delegate_call = true : suggestion
csharp_style_deconstructed_variable_declaration = false : none
csharp_style_inlined_variable_declaration = true : suggestion
csharp_style_pattern_local_over_anonymous_function = true : suggestion
csharp_style_pattern_matching_over_as_with_null_check = true : suggestion
csharp_style_pattern_matching_over_is_with_cast_check = true : suggestion
csharp_style_throw_expression = true : suggestion

csharp_prefer_simple_default_expression = true : suggestion

csharp_preserve_single_line_blocks = true

# Indentation options
csharp_indent_block_contents = true
Expand All @@ -76,14 +76,20 @@ csharp_new_line_between_query_expression_clauses = true

# Spacing options
csharp_space_after_cast = false
csharp_space_after_colon_in_inheritance_clause = true
csharp_space_after_comma = true
csharp_space_after_dot = false
csharp_space_after_keywords_in_control_flow_statements = false
csharp_space_after_semicolon_in_for_statement = true
csharp_space_around_binary_operators = before_and_after
csharp_space_before_colon_in_inheritance_clause = true
csharp_space_before_comma = false
csharp_space_before_dot = false
csharp_space_before_open_square_brackets = false
csharp_space_before_semicolon_in_for_statement = false
csharp_space_between_method_call_empty_parameter_list_parentheses = false
csharp_space_between_method_call_name_and_opening_parenthesis = false
csharp_space_between_method_call_parameter_list_parentheses = false
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
csharp_space_between_method_declaration_name_and_open_parenthesis = false
csharp_space_between_method_declaration_parameter_list_parentheses = false
Loading

0 comments on commit 5428909

Please sign in to comment.