AlexandrNikulin / AnimationNavigationPage

AnimationNavigationPage is a NavigationPage with custom transitions animation effects.
Apache License 2.0
236 stars 37 forks source link

Migrate to PackageReference and clean up projects #50

Closed kimbirkelund closed 5 years ago

kimbirkelund commented 5 years ago

This PR solves issue #48 by 1) Migrating to PackageReference approach for remaining projects and 2) Remove unnecessary dependencies.

There may be more clean up that can be performed, but this appears to make the consuming project able to build whild still performing the animations.

LeoJHarris commented 5 years ago

@kimbirkelund the nuspec file is also pulling all the packages within each platforms respective ../bin/release folders. This is incorrect and should only be pulling the plugin package itself i.e. FormsControls.Base, FormsControls.Base and FormsControls.Base.

<!-- Cross-platform .net standard reference assemblies -->
<file src="..\SourceCode\Lib\FormsControls.Base\bin\Release\netstandard2.0\*.dll" target="lib\netstandard2.0"/>

<!-- Android reference assemblies -->
<file src="..\SourceCode\Lib\FormsControls.Base\bin\Release\netstandard2.0\*.dll" target="lib\MonoAndroid10"/>
<file src="..\SourceCode\Lib\FormsControls.Droid\bin\Release\*.dll" target="lib\MonoAndroid10"/>

<!-- iOS reference assemblies -->
<file src="..\SourceCode\Lib\FormsControls.Base\bin\Release\netstandard2.0\*.dll" target="lib\Xamarin.iOS10" />
<file src="..\SourceCode\Lib\FormsControls.Touch\bin\Release\*.dll" target="lib\Xamarin.iOS10" />

generates:

capture

replaced as:

<!-- Cross-platform .net standard reference assemblies -->
<file src="..\SourceCode\Lib\FormsControls.Base\bin\Release\netstandard2.0\FormsControls.Base.dll" target="lib\netstandard2.0"/>

<!-- Android reference assemblies -->
<file src="..\SourceCode\Lib\FormsControls.Droid\bin\Release\FormsControls.Base.dll" target="lib\MonoAndroid10"/>
<file src="..\SourceCode\Lib\FormsControls.Droid\bin\Release\FormsControls.Droid.dll" target="lib\MonoAndroid10"/>

<!-- iOS reference assemblies -->
<file src="..\SourceCode\Lib\FormsControls.Touch\bin\Release\FormsControls.Base.dll" target="lib\Xamarin.iOS10" />
<file src="..\SourceCode\Lib\FormsControls.Touch\bin\Release\FormsControls.Touch.dll" target="lib\Xamarin.iOS10" />

generates:

capture2

The below handles the dependencies:

<dependencies>
        <dependency id="Xamarin.Forms" version="3.4.0.1008975" />
</dependencies>
kimbirkelund commented 5 years ago

I've updated the nuspec, but because PackageReferences are used instead of packages.config, the files from the dependencies aren't actually copied to the output directory at build time.

It is however cleaner this way. Personally I'd add the pdbs too, but I guess that is up to @AlexandrNikulin .

AlexandrNikulin commented 5 years ago

@kimbirkelund Thanks! I will check it today and update nuget package

kimbirkelund commented 5 years ago

Great. Let me know if you need more input.

AlexandrNikulin commented 5 years ago

@kimbirkelund Sure, thanks