Export Problem: Gamma 3.2 and anything Skia

I had a problem exporting my own patch so I tried with the the Spray Example patch. I recently installed Gamma 3.2 and Gamma Preview 4.0 -0064.
Win 81 pro

SkiaExportError.log (1.2 KB)

Happy to include any other info if required

H

Just exported the Spray patch successfully with 2021.3.2 and 2021.4.0-0064 - did you try deleting the src folder (if you go Explore Output in the export dialog)?

Just tried with 3.1 and 3.2: deleting the src folder and it stopped immediately with the error below. It might be worth mentioning that the only file created in the source folder is the ‘nuget.config’ file. In there it says

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="vvvv-public-feed" value="http://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc/" />
  </packageSources>
</configuration>

The error:

Generating project files (this may take up to a few minutes)
System.InvalidOperationException: Could not restore NuGet package VL.Skia
   at VL.Lang.Roslyn.Export.SolutionBuilder.<GetPackageAssemblyMap>d__32.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at VL.Lang.Roslyn.Export.SolutionBuilder.<Generate>d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at VL.Lang.Roslyn.Export.SolutionBuilder.<Export>d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at VL.HDE.Forms.AppExporterForm.<ExportButton_Click>d__15.MoveNext()
----

Sorry for not replying earlier.

So yes, the exporter first creates that nuget.config file which gets used to do an initial package restore in order to figure out what assemblies are already referenced by packages. For some reason this restore works on my machine but not on yours. So I wonder whether it has anything to do with http vs https. http://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc seems to be redirecting to https://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc maybe your machine doesn’t like that?

What you could try is adding the https source by starting vvvv with

vvvv.exe --export-package-sources https://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc

You should see that the nuget.config file will now have a second entry.

Also worth trying is an export with 2021.3.0 since those packages are uploaded on nuget.org as well (see for example https://www.nuget.org/packages/VL.Skia/) - so if the export works here this could also be a solution that we upload those packages. Which we probably should do anyways.

Thanks Elias, I’ll try this out soon

No luck, other than a change to the NuGet.config file:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="vvvv-public-feed" value="http://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc/" />
    <add key="local_1" value="https://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc" />
  </packageSources>
</configuration>

Same error as before

Generating project files (this may take up to a few minutes)
System.InvalidOperationException: Could not restore NuGet package VL.Skia
   at ...

I’m beginning to wonder if I have a firewall issue.

Does it work with 2021.3.0?

Same here with GammaPreview I get the same Error, but I can Export with GammaStable3.2 Firewall is open for both and it also didn’t work when I start it with “https:” for the nuget.config file
Greets

I had to reinstall it, but it doesn’t work with 2021.3.0 either

I just uploaded version 2021.3.2 of VL.Skia, VL.Core etc. to nuget.org as well - does it make any difference for you now?

If any of you have Visual Studio installed you could attach it as a debugger to the vvvv.exe process (Debug -> Attach to process) before pressing export, open the Output windows (Debug -> Windows -> Output) and press export. The Output window should show more details on what actually is going wrong.

This information should be logged to our output window as well - will prepare a build which does that.

Tried installing the Nuget with Gamma 3.2 but got the following error:

Attempting to gather dependency information for package 'VL.Skia.2021.3.2' with
respect to project 'C:\Users\X\AppData\Local\vvvv\gamma\nugets', targeting 'Any,
Version=v0.0'
Gathering dependency information took 17.72 sec
Attempting to resolve dependencies for package 'VL.Skia.2021.3.2' with Dependenc
yBehavior 'Lowest'
Unable to find a version of 'AudioSwitcher.AudioApi' that is compatible with 'VL
.CoreLib 2021.3.2 constraint: AudioSwitcher.AudioApi (>= 4.0.0-alpha5)'.

So I think the Gamma version you uploaded is linked to some 2021.4 preview dependencies

Can you try with this build please? It logs the erros to the output window.

Sorry man, battery just died just when i finished installing and was loading the Spray example. I’ll have to test it a bit later but thanks for your help so far

[Elias]
Can you try with this build please? It logs the erros to the output window.

I could export Spray example with this build - yes, there is more text when exporting and “VL.Skia.2021.3.3-0123-gc9d3acf856” in packs (is this the actual Skia (SkiaSharp to 2.80), which is also in Preview2021.4.0?)

I also had problems to install the Nuget - also the ‘AudioSwitcher.AudioApi’

Greets

Huh, thought it was going to be alright
2021.3.3PreviewSprayExportFail.log (33.3 KB)

The gist of it:

System.InvalidOperationException: Could not restore NuGet package VL.Skia
   at VL.Lang.Roslyn.Export.SolutionBuilder.<GetPackageAssemblyMap>d__32.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at VL.Lang.Roslyn.Export.SolutionBuilder.<Generate>d__26.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at VL.Lang.Roslyn.Export.SolutionBuilder.<Export>d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at VL.HDE.Forms.AppExporterForm.<ExportButton_Click>d__15.MoveNext()

From the log it looks like that it can’t read from nuget.org - like it is accessing an outdated url. How does your %AppData%\NuGet\NuGet.config file look like?

For reference here’s mine:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>

From a quick google about your error messages maybe https://devblogs.microsoft.com/nuget/deprecating-tls-1-0-and-1-1-on-nuget-org/ could be relevant?

Like this (‘www.nuget.org/api/v2/’) :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <add key="vvvv package source" value="http://vvvv.org:8111/guestAuth/app/nuget/v1/FeedService.svc/" />
    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
    <add key="H Downloaded" value="C:\Users\H\.nuget\packages" />
    <add key="Stride" value="https://packages.stride3d.net/nuget" />
  </packageSources>
  <disabledPackageSources>
    <add key="vvvv package source" value="true" />
  </disabledPackageSources>
  <activePackageSource>
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
  </activePackageSource>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <bindingRedirects>
    <add key="skip" value="False" />
  </bindingRedirects>
  <packageManagement>
    <add key="format" value="0" />
    <add key="disabled" value="False" />
  </packageManagement>
</configuration>

@Hadasi I think the vvvv package source url is outdated. The correct one is:
http://teamcity.vvvv.org/guestAuth/app/nuget/v1/FeedService.svc/

Had a problem with this myself, for reference:
https://matrix.to/#/!wujnTyabvItCIgnlFd:matrix.org/$1611838866115506lBWKE:matrix.org?via=matrix.org&via=server.matrix4ulm.de&via=perthchat.org