From 4469cdab4db70e7ee35e17a8683d955a2f8a4482 Mon Sep 17 00:00:00 2001 From: David Piepgrass Date: Tue, 10 Jan 2017 12:15:10 +0800 Subject: [PATCH] Create "symbol packages" so NuGet clients can hopefully step through source code. Nuspecs: target="readme.txt" doesn't work, it creates a folder. Tweak Core readme. --- Core/Loyc.Collections.nuspec | 6 ++++-- Core/Loyc.Essentials.nuspec | 4 +++- Core/Loyc.Math.nuspec | 5 ++++- Core/Loyc.Syntax.nuspec | 5 ++++- Core/Loyc.Utilities.nuspec | 4 +++- Core/Readme.md | 21 +++++++++++++-------- Main/LLLPG.nuspec | 2 ++ Main/LeMP.nuspec | 10 +++++++++- Main/Loyc.Ecs.nuspec | 5 ++++- appveyor.yml | 22 +++++++++++----------- 10 files changed, 57 insertions(+), 27 deletions(-) diff --git a/Core/Loyc.Collections.nuspec b/Core/Loyc.Collections.nuspec index a6023a77f..c8cacce58 100644 --- a/Core/Loyc.Collections.nuspec +++ b/Core/Loyc.Collections.nuspec @@ -18,10 +18,12 @@ - - + + + + diff --git a/Core/Loyc.Essentials.nuspec b/Core/Loyc.Essentials.nuspec index 623156ce6..d6dd29fb1 100644 --- a/Core/Loyc.Essentials.nuspec +++ b/Core/Loyc.Essentials.nuspec @@ -20,12 +20,14 @@ - + + + diff --git a/Core/Loyc.Math.nuspec b/Core/Loyc.Math.nuspec index 6b0905f29..61030b787 100644 --- a/Core/Loyc.Math.nuspec +++ b/Core/Loyc.Math.nuspec @@ -18,10 +18,13 @@ - + + + + diff --git a/Core/Loyc.Syntax.nuspec b/Core/Loyc.Syntax.nuspec index a6bb9353a..01ec7184d 100644 --- a/Core/Loyc.Syntax.nuspec +++ b/Core/Loyc.Syntax.nuspec @@ -19,10 +19,13 @@ - + + + + diff --git a/Core/Loyc.Utilities.nuspec b/Core/Loyc.Utilities.nuspec index fa7b5b60d..7f44dd06e 100644 --- a/Core/Loyc.Utilities.nuspec +++ b/Core/Loyc.Utilities.nuspec @@ -21,10 +21,12 @@ - + + + diff --git a/Core/Readme.md b/Core/Readme.md index a76804297..572115326 100644 --- a/Core/Readme.md +++ b/Core/Readme.md @@ -3,26 +3,31 @@ README The Loyc Core project is a set of general-purpose .NET libraries. LoycCore is especially focused on collections - classes, interfaces, adapters, and extension methods - but also has code in other areas, most notably parsing and syntax trees. -**IMPORTANT**: Development occurs primarily in the [Enhanced C# repository](https://github.com/loycnet/ecsharp), which contains this repo as a "git subtree". However, `git subtree push` mysteriously stopped working which means that synchronization with this repo has become a manual process. As a result I would ask you **not to use this repo anymore**. We'll just do everything in ecsharp. - Contributors are welcome: more unit tests, code reviews, and new features are desired, anything relatively small (under about 3000 lines of code) that fits the theme "things that should have been built into the .NET framework, but aren't". Please visit http://core.loyc.net for documentation. +**NOTE**: Development occurs primarily in the [Enhanced C# repository](https://github.com/loycnet/ecsharp), which contains the LoycCore repo as a "git subtree". However, `git subtree push` mysteriously stopped working which means that synchronization with this repo has become a manual process. As a result I would ask you **not to use that repo anymore**. We'll just do everything in ecsharp. + Dependency tree --------------- Low-level libraries on top: Loyc.Essentials - | - Loyc.Collections - ^ ^ - | | + ^ ^ + | | | +----------------+ - | | | | - Loyc.Utilities Loyc.Syntax + Loyc.Collections Loyc.Math + ^ ^ + | | + Loyc.Syntax | + ^ | + | | + +---------+----------+ + | + Loyc.Utilities These projects use couple of tricks to support .NET 3.5, .NET 4 and .NET 4.5 in a single solution file. The tricks are documented here: http://stackoverflow.com/questions/5006397/targetting-multiple-net-framework-versions-by-using-different-project-configura/23705790#23705790 diff --git a/Main/LLLPG.nuspec b/Main/LLLPG.nuspec index 5b24e0289..e5db49105 100644 --- a/Main/LLLPG.nuspec +++ b/Main/LLLPG.nuspec @@ -31,5 +31,7 @@ + + diff --git a/Main/LeMP.nuspec b/Main/LeMP.nuspec index dc228aac0..55c88e57f 100644 --- a/Main/LeMP.nuspec +++ b/Main/LeMP.nuspec @@ -26,9 +26,17 @@ - + + + + + + + + + diff --git a/Main/Loyc.Ecs.nuspec b/Main/Loyc.Ecs.nuspec index d1e5fa9e6..5db463e5d 100644 --- a/Main/Loyc.Ecs.nuspec +++ b/Main/Loyc.Ecs.nuspec @@ -25,9 +25,12 @@ - + + + + diff --git a/appveyor.yml b/appveyor.yml index aa6b169ee..8c7ab82df 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -25,20 +25,20 @@ after_build: # - Loyc.Syntax.dll (Loyc.Syntax.$PKG_VERSION.nupkg) # - Loyc.Utilities.dll (Loyc.Utilities.$PKG_VERSION.nupkg) # - All 5 together (LoycCore.$PKG_VERSION.nupkg) - - nuget pack -Version %PKG_VERSION% Core\Loyc.Essentials.nuspec - - nuget pack -Version %PKG_VERSION% Core\Loyc.Collections.nuspec - - nuget pack -Version %PKG_VERSION% Core\Loyc.Math.nuspec - - nuget pack -Version %PKG_VERSION% Core\Loyc.Syntax.nuspec - - nuget pack -Version %PKG_VERSION% Core\Loyc.Utilities.nuspec - - nuget pack -Version %PKG_VERSION% Core\LoycCore.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Core\Loyc.Essentials.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Core\Loyc.Collections.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Core\Loyc.Math.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Core\Loyc.Syntax.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Core\Loyc.Utilities.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Core\LoycCore.nuspec # Package the Main libraries: # - Loyc.Ecs.dll (Loyc.Ecs.$PKG_VERSION.nupkg) # - LeMP.exe (LeMP.$PKG_VERSION.nupkg) # - LLLPG.exe (LLLPG.$PKG_VERSION.nupkg) - - nuget pack -Version %PKG_VERSION% Main\Loyc.Ecs.nuspec - - nuget pack -Version %PKG_VERSION% Main\LeMP.nuspec - - nuget pack -Version %PKG_VERSION% Main\LLLPG.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Main\Loyc.Ecs.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Main\LeMP.nuspec + - nuget pack -Version %PKG_VERSION% -symbols Main\LLLPG.nuspec test_script: # Unfortunately, test set 8 (LLLPG) sometimes fails due to nondeterminism. @@ -63,8 +63,8 @@ deploy: server: api_key: secure: DHTp3wMjKqyca2PWftol2wq7DxE9KdL8AizHVIS14T4DSSMXgc0bIiCGvvA8SkTH - skip_symbols: true + skip_symbols: false # Whether to not publish symbol pkgs (src/pdb) artifact: /.*\.nupkg/ on: - branch: master # Release from master branch only. + branch: master # Release from master branch only. appveyor_repo_tag: true # Deploy on tag push only.