Informacje o wersji narzędzia NuGet 1.4
Informacje o wersji | narzędzia NuGet 1.3 NuGet 1.5
NuGet 1.4 został wydany 17 czerwca 2011 r.
NuGet 1.4 wprowadza wiele ulepszeń polecenia Update-Package, co ułatwia przechowywanie pakietów w tej samej wersji w wielu projektach w rozwiązaniu. Na przykład podczas uaktualniania pakietu do najnowszej wersji bardzo często zaleca się zaktualizowanie wszystkich projektów z zainstalowanym pakietem do tej samej weryfikacji.
Polecenie Update-Package
ułatwia teraz:
Update-Package -Project MvcApplication1
Update-Package PackageId
Update-Package
Flaga -Safe
ogranicza uaktualnienia tylko do wersji z tym samym składnikiem wersji głównej i pomocniczej. Jeśli na przykład jest zainstalowana wersja 1.0.0 pakietu, a wersje 1.0.1, 1.0.2 i 1.1 są dostępne w kanale informacyjnym, -Safe
flaga aktualizuje pakiet do wersji 1.0.2. Uaktualnienie bez -Safe
flagi spowoduje uaktualnienie pakietu do najnowszej wersji 1.1.
Update-Package -Safe
Przed nuGet 1.4 instalowanie pakietu w wielu projektach było kłopotliwe przy użyciu okna dialogowego. Wymagane jest uruchomienie okna dialogowego raz na projekt.
NuGet 1.4 dodaje obsługę instalowania/odinstalowywania/aktualizowania pakietów w wielu projektach jednocześnie. Po prostu uruchom polecenie, klikając prawym przyciskiem myszy pozycję Rozwiązanie i wybierając opcję menu Zarządzaj pakietami NuGet.
Zwróć uwagę, że na pasku tytułu okna dialogowego wyświetlana jest nazwa rozwiązania, a nie nazwa projektu. Operacje na pakietach udostępniają teraz listę pól wyboru z listą projektów, do których powinna zostać zastosowana operacja.
Aby uzyskać więcej informacji, zobacz temat Zarządzanie pakietami dla rozwiązania.
Domyślnie podczas uruchamiania Update-Package
polecenia w pakiecie (lub aktualizowaniu pakietu przy użyciu okna dialogowego) zostanie on zaktualizowany do najnowszej wersji w kanale informacyjnym. Dzięki nowej obsłudze aktualizowania wszystkich pakietów mogą istnieć przypadki, w których chcesz zablokować pakiet do określonego zakresu wersji. Na przykład możesz wiedzieć z wyprzedzeniem, że aplikacja będzie działać tylko z wersją 2.* pakietu, ale nie w wersji 3.0 lub nowszej. Aby zapobiec przypadkowemu zaktualizowaniu pakietu do wersji 3, pakiet NuGet 1.4 dodaje obsługę ograniczania zakresu wersji, do których można uaktualnić pakiety, ręcznie edytując packages.config
plik przy użyciu nowego allowedVersions
atrybutu.
Na przykład w poniższym przykładzie pokazano, jak zablokować SomePackage
pakiet w zakresie wersji 2.0 –3.0 (wyłączność).
Atrybut allowedVersions
akceptuje wartości przy użyciu formatu zakresu wersji.
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="SomePackage" version="2.1.0" allowedVersions="[2.0, 3.0)" />
</packages>
Należy pamiętać, że w wersji 1.4 blokowanie pakietu do określonego zakresu wersji musi być ręcznie edytowane. W programie NuGet 1.5 planujemy dodać obsługę umieszczania tego zakresu za pomocą Install-Package
polecenia .
Nowy wizualizator pakietów uruchomiony za pośrednictwem opcji menu Narzędzia ->Biblioteka Menedżer pakietów ->Package Visualizer umożliwia łatwe wizualizowanie wszystkich projektów i ich zależności pakietów w ramach rozwiązania.
Ważna uwaga: ta funkcja korzysta z obsługi DGML w programie Visual Studio. Tworzenie wizualizacji jest obsługiwane tylko w programie Visual Studio Ultimate. Wyświetlanie diagramu DGML jest obsługiwane tylko w programie Visual Studio Premium lub nowszym.
Niektóre wersje narzędzia NuGet wprowadzają nowe funkcje wyrażone za pośrednictwem .nuspec
pliku, które nie są zrozumiałe dla starszych wersji okna dialogowego NuGet.
Jednym z przykładów jest wprowadzenie w programie NuGet 1.4 do określania zestawów struktury.
W związku z tym ważne jest użycie najnowszej wersji pakietu NuGet, aby upewnić się, że możesz korzystać z pakietów korzystających z najnowszych funkcji.
Aby zwiększyć widoczność aktualizacji pakietu NuGet, okno dialogowe NuGet zawiera logikę wyróżniania, gdy jest dostępna nowsza wersja.
Uwaga: sprawdzanie jest wykonywane tylko wtedy, gdy karta Online została wybrana w bieżącej sesji.
Aby wyłączyć automatyczne sprawdzanie dostępności aktualizacji, przejdź do okna dialogowego Ustawienia NuGet i usuń zaznaczenie pola wyboru Automatycznie sprawdź dostępność aktualizacji.
Ta funkcja została rzeczywiście dodana w programie NuGet 1.3, ale nie będzie widoczna, oczywiście do momentu udostępnienia aktualizacji do wersji 1.3, takiej jak NuGet 1.4.
- Ulepszono nazwy menu: opcje menu umożliwiające uruchomienie okna dialogowego zostały zmienione w celu zapewnienia przejrzystości. Opcja menu to teraz Zarządzanie pakietami NuGet.
- Okienko Szczegółów zawiera najnowszą datę aktualizacji: okno dialogowe NuGet wyświetla datę najnowszej aktualizacji w okienku szczegółów pakietu po wybraniu karty Online lub Aktualizacje.
- Wyświetlona lista tagów: w oknie dialogowym Nuget są wyświetlane tagi.
- Podpisane skrypty programu PowerShell: Pakiet NuGet zawiera podpisane skrypty programu PowerShell umożliwiające użycie w bardziej restrykcyjnych środowiskach.
- Obsługa monitowania: konsola Menedżer pakietów obsługuje teraz monity za pośrednictwem
$host.ui.Prompt
poleceń i$host.ui.PromptForChoice
. - Nazwy źródłowych pakietów: podanie nazwy źródła pakietu jest obsługiwane podczas określania źródła pakietu przy użyciu flagi
-Source
.
- Polecenia niestandardowe Narzędzia NuGet: nuget.exe można rozszerzać za pomocą poleceń niestandardowych przy użyciu narzędzia MEF.
- Prostszy przepływ pracy tworzenia pakietów symboli: flaga
-Symbols
może być stosowana do normalnej struktury folderów opartych na konwencji, tworząc pakiet symboli tylko przez dołączenie źródła i.pdb
plików w folderze. - Określanie wielu źródeł:
NuGet install
polecenie obsługuje określanie wielu źródeł przy użyciu średników jako ogranicznika lub przez wielokrotne określanie-Source
. - Obsługa uwierzytelniania serwera proxy: pakiet NuGet 1.4 dodaje obsługę monitowania o poświadczenia użytkownika podczas korzystania z narzędzia NuGet za serwerem proxy, który wymaga uwierzytelniania.
- nuget.exe zmiana powodująca niezgodność aktualizacji: flaga jest teraz wymagana
-Self
, aby nuget.exe się zaktualizować.nuget.exe Update
teraz znajduje się w ścieżce dopackages.config
pliku i podejmie próbę zaktualizowania pakietów. Należy pamiętać, że ta aktualizacja jest ograniczona, ponieważ nie będzie: ** Aktualizuj, dodaj, usuń zawartość w pliku projektu. ** Uruchom skrypty programu PowerShell w pakiecie.
Pakiet NuGet zawiera prosty sposób hostowania uproszczonego internetowego repozytorium NuGet za pośrednictwem NuGet.Server
pakietu NuGet. W przypadku programu NuGet 1.4 lekki serwer obsługuje wypychanie i usuwanie pakietów przy użyciu nuget.exe.
Najnowsza wersja programu NuGet.Server
dodaje nowy appSetting
element o nazwie apiKey
. Gdy klucz zostanie pominięty lub pozostawiony pusty, wypychanie pakietów do kanału informacyjnego jest wyłączone. Ustawienie wartości apiKey na wartość (najlepiej silne hasło) umożliwia wypychanie pakietów przy użyciu nuget.exe.
<appSettings>
<!-- Set the value here to allow people to push/delete packages from the server.
NOTE: This is a shared key (password) for all users. -->
<add key="apiKey" value="" />
</appSettings>
Pakiet NuGet jest teraz obsługiwany w wersji wersji kandydata systemu Windows Telefon Tools for Mango. Obecnie narzędzia Windows Telefon Tools nie obsługują menedżera rozszerzeń programu Visual Studio, dlatego w celu zainstalowania narzędzia NuGet for Windows Telefon Tools może być konieczne pobranie i uruchomienie programu VSIX ręcznie.
Aby odinstalować program NuGet for Windows Telefon Tools, uruchom następujące polecenie.
vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5
Program NuGet 1.4 miał w sumie 88 elementów roboczych stałych. 71 z nich zostało oznaczonych jako usterki.
Aby uzyskać pełną listę elementów roboczych stałych w programie NuGet 1.4, wyświetl element [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=All&type=All&priority=All&release=NuGet%201.4&assignedTo=All&component=All&sortField=LastUpdatedDate&sortDirection=Descending&page=0)
.
[Issue 603](http://nuget.codeplex.com/workitem/603)
: Zależności pakietów w różnych repozytoriach są rozpoznawane prawidłowo podczas określania określonego źródła pakietu.[Issue 1036](http://nuget.codeplex.com/workitem/1036)
: DodanieNuGet Pack SomeProject.csproj
do zdarzenia po kompilacji nie powoduje już nieskończonej pętli.[Issue 961](http://nuget.codeplex.com/workitem/961)
:-Source
flaga obsługuje ścieżki względne.
Wkrótce po wydaniu pakietu NuGet 1.4 znaleźliśmy kilka problemów, które były ważne do rozwiązania. Określony numer wersji tej aktualizacji do wersji 1.4 to 1.4.20615.9020.
[Issue 1220](http://nuget.codeplex.com/workitem/1220)
: Update-Package nie jest wykonywanyinstall.ps1
/uninstall.ps1
we wszystkich projektach, gdy istnieje więcej niż jeden projekt[Issue 1156](http://nuget.codeplex.com/workitem/1156)
: Menedżer pakietów Consol zablokowane na W2K3/XP (gdy program PowerShell 2 nie jest zainstalowany)