MvsSln Versions Save

🧩 Customizable VisualStudio .sln parser with project support (.vcxproj, .csproj., …). Pluggable lightweight r/w handlers at runtime, and more …

CI-build-47

4 years ago

? Nightly build of 0b5323b85463b19aa697ba3e1b0b30d5ac1d6fca ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-47

Only for tests ? Commit message:

IXProjectEnv improvements, fixes, and other relevant changes due to vsSolutionBuildEvent:

https://github.com/3F/vsSolutionBuildEvent/pull/53 https://github.com/3F/MvsSln/pull/17

IConfPlatform changes:

+bool IsEqualByRule(string config, string platform, bool icase = false);

Checking an config/platform by using {Rule} instance.

IXProjectEnv changes:

+IXProject XProjectByFile(...);

Find project by full path to file.

+IEnumerable<IXProject> Assign(IEnumerable<Project> projects = null);

Assign an existing `Microsoft.Build.Evaluation.Project` instances for local collection.

+IXProject AddOrGet(Project project);

Adds `Microsoft.Build.Evaluation.Project` instance into IXProject collection if it does not exist.

+ProjectItemCfg ExtractItemCfg(Project project);

Prepares data from `Microsoft.Build.Evaluation.Project` instance.

+void UnloadAll(bool throwIfErr = true);

Unloads all evaluated projects at current time.

+bool Unload(IXProject xp);

Unloads specified project.

+IEnumerable<Project> ValidProjects

List of valid projects such as something except `.user` but contains FirstChild / LastChild XML node.

ISlnResult changes:

+string SolutionFile

Full path to an solution file.

New extension methods:

+TVal GetOrDefault<TKey, TVal>(this IDictionary<TKey, TVal> data, TKey key, TVal def)
+bool IsEqual(this Project a, Project b)
+string GetSolutionDir(this Project eProject)
+string GetProjectRelativePath(this Project eProject)
+string GetConfig(this Project eProject)
+string GetPlatform(this Project eProject)
+string GetSolutionExt(this Project eProject)

Other

  • Removed pGuid checking from IXProjectEnv.GetOrLoadProject()
  • Added FileExt type for work with ProjectType via its file only.

CI-build-46

4 years ago

? Nightly build of 406b50074237caea9275800a7248fdac5e729b7a ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-46

Only for tests ? Commit message:

Fixed loading of projects via IsolatedEnv.LoadProjects() and

Fixed possible NullReferenceException in ProjectItem constructors.

CI-build-45

4 years ago

? Nightly build of 684cdb4f512006882e480225934916ccae21bd66 ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-45

Only for tests ? Commit message:

Introduces XProjectEnv (spitted IsolatedEnv as the base but without IDisposable)

  • Also adds an regular MSBuild Properties and other related changes for convenient work with this properties like extension method GetFileProperties, AddOrUpdate etc.

Part of https://github.com/3F/vsSolutionBuildEvent/pull/53 WIP

v2.3

4 years ago

CI-build-43

4 years ago

🎲 Nightly build of c68e79c0e83401ffd9c468b47a93b3b832b199e7 ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-43

Only for tests 🗨 Commit message:

Fixes #13. Adds support of . in LProjectConfigurationPlatforms + tests:

Possible symbols for Solution/Project pair includes `.` and `=`:
https://github.com/3F/MvsSln/issues/13

-_- awesome format as follow:
{A7BF1F9C-F18D-423E-9354-859DC3CFAFD4}.Debug.x64.x86|Any.CPU.etc.Build.0 = Debug.x64.x86|Any.CPU.etc
\___________________________________/  \___________/ \_________/ \_____/ ^ \___________/ \_________/

For `=` we will not support this due to errors by VS itself (VS bug from VS2010 to modern VS2019)
https://github.com/3F/MvsSln/issues/13#issuecomment-501346079

CI-build-42

4 years ago

? Nightly build of 95194f6e6f33979f4fbe1b1ed1e036ddd23eaef2 ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-42

Only for tests ? Commit message:

Updated license header: +MvsSln contributors

$(APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED)

CI-build-41

4 years ago

? Nightly build of 7ededdbd1fed84bcabee7584202456b48ace6303 ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-41

Only for tests ? Commit message:

added missing project types (#15)

  • added missing project types

  • format spaces

  • included equal signs

  • fixed lookup for unknown project types

  • fixed formatting

CI-build-40

4 years ago

? Nightly build of 802c91e100d50b470b58ce7d1869c5c59e3e778e ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-40

Only for tests ? Commit message:

Add deploy flag support (#16)

  • added support for deploy flags

  • fixed formatting

  • fixed indents

  • fixed indents (again)

  • reformat

  • reformat using vscode

v2.2

5 years ago

CI-build-38

5 years ago

🎲 Nightly build of 2767d846adb4614dd6dd9d5537ec7377635725fb ➾ Worker image: Visual Studio 2017; Console: ci.appveyor.com/.../build-38

Only for tests 🗨 Commit message:

Implemented new r/w handlers for ExtensibilityGlobals section.

Use ExtItems = 0x0400 flag to activate it.

See updated tests.