Auf Englisch lesen

Freigeben über


Versionshinweise zu NuGet 1.8

NuGet 1.7 Versionshinweise | NuGet 2.0 Versionshinweise

NuGet 1.8 wurde am 23. Mai 2012 veröffentlicht.

Bekannte Probleme bei der Installation

Wenn Sie VS 2010 SP1 ausführen, wird Ihnen möglicherweise eine Fehlermeldung angezeigt, wenn Sie versuchen, ein Upgrade für NuGet durchzuführen und eine ältere Version installiert ist.

Alternativ können Sie das Problem einfach umgehen, indem Sie NuGet zuerst deinstallieren und dann über den Erweiterungskatalog von Visual Studio erneut installieren. Weitere Informationen finden Sie unter https://support.microsoft.com/kb/2581019, oder wechseln Sie direkt zum VS-Hotfix.

Hinweis: Wenn Visual Studio die Erweiterung nicht deinstallieren kann (die Schaltfläche Deinstallieren ist deaktiviert), müssen Sie Visual Studio wahrscheinlich mit „Als Administrator ausführen neu starten“.

NuGet 1.8 nicht kompatibel mit Windows XP – Hotfix veröffentlicht

Kurz nach der Veröffentlichung von NuGet 1.8 erfuhren wir, dass eine Kryptographie-Änderung in 1.8 Benutzer unter Windows XP in Schwierigkeiten brachte.

Wir haben seitdem einen Hotfix veröffentlicht, der dieses Problem behebt. Wenn Sie NuGet über die Visual Studio-Erweiterungsgallerie aktualisieren, erhalten Sie diesen Hotfix.

Features

Satellitenpakete für lokalisierte Ressourcen

NuGet 1.8 unterstützt jetzt die Möglichkeit, separate Pakete für lokalisierte Ressourcen zu erstellen, ähnlich wie die Satellitenassemblyfunktionen von .NET Framework. Ein Satellitenpaket wird auf die gleiche Weise wie jedes andere NuGet-Paket erstellt, wobei einige Konventionen hinzugefügt werden:

  • Die Satellitenpaket-ID und der Dateiname sollten ein Suffix enthalten, das mit einer der standardmäßigen Kulturzeichenfolge übereinstimmt, die vom .NET Framework verwendet werden.
  • In der .nuspec-Datei sollte das Satellitenpaket ein Sprachelement mit derselben Kulturzeichenfolge definieren, die in der ID verwendet wird.
  • Das Satellitenpaket sollte eine Abhängigkeit in der .nuspec-Datei zu seinem Kernpaket definieren, was einfach dem Paket mit derselben ID minus dem Sprachsuffix entspricht. Das Kernpaket muss für eine erfolgreiche Installation im Repository verfügbar sein.

Um ein Paket mit lokalisierten Ressourcen zu installieren, wählt ein Entwickler explizit das lokalisierte Paket aus dem Repository aus. Derzeit gibt der NuGet-Galerie keine spezielle Behandlung für Satellitenpakete.

Package manager dialog with localized pacakges

Da das Satellitenpaket eine Abhängigkeit von seinem Kernpaket auflistet, werden sowohl die Satelliten- als auch die Kernpakete in den Ordner NuGet-Pakete abgerufen und installiert.

Packages folder with localized packages

Außerdem erkennt NuGet beim Installieren des Satellitenpakets auch die Benennungskonvention für Kulturzeichenfolgen und kopiert dann die lokalisierte Ressourcen-Assembly in den richtigen Unterordner innerhalb des Kernpakets, sodass es vom .NET Framework ausgewählt werden kann.

Core package folder with copied resource folder

Ein bekannter Fehler bei Satellitenpaketen ist, dass NuGet lokalisierte Ressourcen nicht in den bin-Ordner für Websiteprojekte kopiert. Dieses Problem wird im nächsten Release von NuGet behoben.

Ein vollständiges Beispiel zum Erstellen und Verwenden von Satellitenpaketen finden Sie unter https://github.com/NuGet/SatellitePackageSample.

In NuGet 1.8 haben wir die Grundlagen für die Unterstützung einer wichtigen Einschränkung für die Paketwiederherstellung gelegt, um die Privatsphäre der Benutzer zu schützen. Diese Einschränkung erfordert, dass Entwickler, die Projekte und Lösungen erstellen, die die Paketwiederherstellung verwenden, ausdrücklich zustimmen, dass die Paketwiederherstellung online geht, um Pakete aus konfigurierten Paketquellen herunterzuladen.

Es gibt 2 Möglichkeiten, diese Zustimmung zu erteilen: Der erste befindet sich im Konfigurationsdialogfeld des Paket-Managers, wie unten dargestellt. Diese Methode ist in erster Linie für Entwicklercomputer vorgesehen.

Package manager configuration dialog

Die zweite Methode besteht darin, die Umgebungsvariable „EnableNuGetPackageRestore“ auf den Wert „true“ festzulegen. Diese Methode ist für unbeaufsichtigte Computer wie CI oder Buildserver vorgesehen.

Wie oben erwähnt, haben wir nur die Grundlagen für dieses Feature in NuGet 1.8 gelegt. Dies bedeutet praktisch, dass wir zwar all die Logik zum Aktivieren des Features hinzugefügt haben, diese aber in dieser Version noch nicht erzwungen wird. Sie wird jedoch in der nächsten Version von NuGet aktiviert werden. Daher wollten wir Sie so früh wie möglich darauf aufmerksam machen, damit Sie Ihre Umgebungen entsprechend konfigurieren können und somit nicht betroffen sind, wenn wir mit der Durchsetzung der Zustimmungsbeschränkung beginnen.

Weitere Informationen finden Sie im Teamblogbeitrag zu diesem Feature.

nuget.exe-Leistungsverbesserungen

Durch die Änderung des Installationsbefehls zum parallelen Herunterladen und Installieren von Paketen verspricht NuGet 1.8 dramatische Leistungsverbesserungen für nuget.exe – und damit auch für die Paketwiederherstellung. Allgemeine Tests zeigen, dass die Leistung beim Installieren von 6 Paketen in einem Projekt in NuGet 1.8 um etwa 35 % besser läuft. Das Erhöhen der Anzahl der Paketen auf 25 bringt einen Leistungsgewinn von ca. 60 %.

Fehlerkorrekturen

NuGet 1.8 enthält eine ganze Reihe von Fehlerkorrekturen, wobei der Schwerpunkt auf der Konsole des Paketmanagers und dem Arbeitsablauf bei der Wiederherstellung von Paketen liegt, insbesondere in Bezug auf die Zustimmung zur Wiederherstellung von Paketen und die Integration von Windows 8 Express. Eine vollständige Liste der Arbeitselemente, die in NuGet 1.8 behoben wurden, sehen Sie hier [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0).