Megosztás:


NuGet 1.4 kibocsátási megjegyzések

NuGet 1.3 kibocsátási megjegyzések | NuGet 1.5 kibocsátási megjegyzések

A NuGet 1.4 2011. június 17-én jelent meg.

Features

Update-Package fejlesztések

A NuGet 1.4 számos fejlesztést vezet be a Update-Package parancsban, így egyszerűbben tarthatja a csomagokat ugyanazon a verzión több projekten belül egy megoldásban. Ha például egy csomagot a legújabb verzióra frissít, gyakran előfordul, hogy az adott csomaggal rendelkező összes projektet ugyanarra a verzióra szeretné frissíteni.

A Update-Package parancs mostantól egyszerűbbé teszi a következőt:

Egyetlen projekt összes csomagjainak frissítése

Update-Package -Project MvcApplication1

A csomag frissítése minden projektben

Update-Package PackageId

Az összes projekt összes csomagjainak frissítése

Update-Package

"Biztonságos" frissítés végrehajtása minden csomagon

A -Safe jelölő csak az azonos fő- és alverzióösszetevővel rendelkező verziókra korlátozza a frissítéseket. Ha például egy csomag 1.0.0-s verziója telepítve van, és az 1.0.1-es, az 1.0.2-es és az 1.1-es verzió elérhető a hírcsatornában, a -Safe jelölő az 1.0.2-es verzióra frissíti a csomagot. A jelölő nélküli -Safe frissítés a csomagot a legújabb, 1.1-es verzióra frissítené.

Update-Package -Safe

Csomagok kezelése megoldásszinten

A NuGet 1.4 előtt a párbeszédpanel használatával nehézkes volt egy csomag telepítése több projektbe. Projektenként egyszer kellett elindítani a párbeszédpanelt.

A NuGet 1.4 támogatja a csomagok egyszerre több projektben történő telepítését,eltávolítását/frissítését. Egyszerűen indítsa el a megoldást a jobb gombbal a Megoldásra kattintva, és válassza a NuGet-csomagok kezelése menüt.

A NuGet-csomagok megoldásszint-kezelése párbeszédpanel

Figyelje meg, hogy a párbeszédpanel címsorában a megoldás neve jelenik meg, nem egy projekt neve. A csomagműveletek mostantól megadják a jelölőnégyzetek listáját azoknak a projekteknek a listájával, amelyekre a műveletnek vonatkoznia kell.

A NuGet-csomagok projektkijelölésének kezelése

További részletekért tekintse meg a Megoldás csomagjainak kezelésével foglalkozó témakört.

A frissítések korlátozása engedélyezett verziókra

Alapértelmezés szerint a parancs egy csomagon való futtatásakor Update-Package (vagy a csomag párbeszédpanelen történő frissítésekor) a hírcsatorna legújabb verziójára lesz frissítve. Az összes csomag frissítésének új támogatása esetén előfordulhatnak olyan esetek, amikor egy csomagot egy adott verziótartományba szeretne zárolni. Előfordulhat például, hogy előre tudja, hogy az alkalmazás csak a csomag 2.* verziójával fog működni, de a 3.0-s vagy újabb verzióval nem. Annak érdekében, hogy megakadályozza a csomag véletlen 3-ra való frissítését, a NuGet 1.4 támogatja, hogy korlátozza azon verziók körét, amelyekre a csomagok frissíthetők, ha kézzel szerkeszti a packages.config fájlt az új allowedVersions attribútummal.

Az alábbi példa például bemutatja, hogyan zárolhatja a csomagot a SomePackage 2.0 és 3.0 közötti verziótartományban (kizárólagos). Az allowedVersions attribútum a verziótartomány formátumával fogadja el az értékeket.

<?xml version="1.0" encoding="utf-8"?>
<packages>
    <package id="SomePackage" version="2.1.0" allowedVersions="[2.0, 3.0)" />
</packages>

Vegye figyelembe, hogy az 1.4-es verzióban a csomag egy adott verziótartományhoz való zárolását kézzel kell szerkeszteni. A NuGet 1.5-ben azt tervezzük, hogy a parancson keresztül támogatást adunk a Install-Package tartomány elhelyezéséhez.

Csomagvizualizáló

Az Eszközök –>Könyvtár csomagkezelő –>Csomagábrázoló menüvel indított új csomagábrázoló lehetővé teszi, hogy egyszerűen megjelenítse az összes projektet és azok csomagfüggőségeit egy megoldáson belül.

Fontos megjegyzés: Ez a funkció a Visual Studióban a DGML-támogatás előnyeit használja ki. A vizualizáció létrehozása csak a Visual Studio Ultimateben támogatott. A DGML-diagramok megtekintése csak a Visual Studio Premium vagy a Magasabb verzióban támogatott.

Csomagvizualizáló

A NuGet párbeszédpanel automatikus frissítésének ellenőrzése

A NuGet egyes verziói olyan új funkciókat vezetnek be a .nuspec fájlon keresztül, amelyeket a NuGet párbeszédpanel régebbi verziói nem értelmeznek. Ilyen például a NuGet 1.4 bevezetése a keretrendszer-szerelvények megadásához. Emiatt fontos, hogy a NuGet legújabb verzióját használja annak érdekében, hogy a legújabb funkciókat kihasználó csomagokat használhasson. A NuGet frissítéseinek láthatóbbá tétele érdekében a NuGet párbeszédpanel logikát tartalmaz, amely kiemeli, ha egy újabb verzió érhető el.

Megjegyzés: Az ellenőrzés csak akkor történik meg, ha az Online lap ki van jelölve az aktuális munkamenetben.

A NuGet-csomagok kezelése párbeszédpanel új elérhető verzióval

A frissítések automatikus ellenőrzésének kikapcsolásához nyissa meg a NuGet beállításai párbeszédpanelt, és törölje a jelet a Frissítések automatikus ellenőrzése jelölőnégyzetből.

NuGet-beállítások

Ez a funkció valójában a NuGet 1.3-as verziójában lett hozzáadva, de természetesen nem látható, amíg el nemérhetővé nem tette az 1.3-as verzióra (például a NuGet 1.4-re) vonatkozó frissítést.

A Package Manager párbeszédpanel fejlesztései

  • A menünevek javítva lettek: A párbeszédpanel indítására szolgáló menübeállítások az egyértelműség érdekében át lettek nevezve. A menüpont neve most már NuGet-csomagok kezelése.
  • A Részletek panelen a legújabb frissítés dátuma látható: A NuGet párbeszédpanelen a legújabb frissítés dátuma jelenik meg a csomag részletek ablaktábláján, amikor az Online vagy a Frissítések lap ki van jelölve.
  • A megjelenített címkék listája: A Nuget párbeszédpanelen címkék jelennek meg.

A PowerShell fejlesztései

  • Aláírt PowerShell-szkriptek: A NuGet aláírt PowerShell-szkripteket tartalmaz, amelyek szigorúbb környezetekben teszik lehetővé a használatot.
  • Támogatás kérése: A Package Manager-konzol mostantól támogatja a kérést a $host.ui.Prompt parancsokkal.$host.ui.PromptForChoice
  • Csomagforrás nevei: A csomagforrás nevének megadása akkor támogatott, ha egy csomagforrást a -Source jelölő használatával ad meg.

nuget.exe parancssori fejlesztések

  • NuGet egyéni parancsok: nuget.exe bővíthető egyéni parancsokkal a MEF használatával.
  • Egyszerűbb a munkafolyamat a szimbólumcsomagok létrehozásához: A -Symbols jelölő normál konvenciókon alapuló mappastruktúrára alkalmazható, és csak a mappában lévő forrást és .pdb fájlokat tartalmazza.
  • Több forrás megadása: A NuGet install parancs támogatja több forrás megadását pontosvesszővel elválasztóként vagy többszöri megadásával -Source .
  • Proxyhitelesítés támogatása: A NuGet 1.4 támogatja a felhasználói hitelesítő adatok kérését, ha a NuGetet hitelesítést igénylő proxy mögött használja.
  • nuget.exe Frissítési kompatibilitás módosítása: A -Self jelölőre most már szükség van ahhoz, hogy nuget.exe frissítse magát. nuget.exe Update most megnyitja a packages.config fájl elérési útját, és megpróbálja frissíteni a csomagokat. Vegye figyelembe, hogy ez a frissítés korlátozott, mivel nem fogja: ** frissíteni, hozzáadni, eltávolítani a projektfájl tartalmát. ** Futtassa a PowerShell-szkripteket a csomagon belül.

A NuGet Server szolgáltatása csomagok feltöltéséhez a nuget.exe használatával

A NuGet egyszerű módot nyújt egy egyszerűsített webes NuGet-adattár üzemeltetésére a NuGet.Server NuGet-csomagon keresztül. A NuGet 1.4-ben az egyszerűsített kiszolgáló támogatja a csomagok nuget.exehasználatával történő leküldését és törlését. A legújabb verzió NuGet.Server hozzáad egy új appSetting, amit apiKey névvel illettek. Ha a kulcs ki van hagyva, vagy üresen marad, a csomagok a hírcsatornába való leküldése le lesz tiltva. Az apiKey értékre állítása (ideális esetben erős jelszó) lehetővé teszi a csomagok nuget.exehasználatával történő leküldését.

<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>

A Windows Phone Tools Mango Edition támogatása

A NuGet mostantól támogatott a Windows Phone Tools for Mango kiadásra jelölt verziójában. A Windows Phone Tools jelenleg nem támogatja a Visual Studio Bővítménykezelőt, ezért a Windows Phone Toolshoz készült NuGet telepítéséhez előfordulhat, hogy manuálisan kell letöltenie és futtatnia a VSIX-et.

A NuGet for Windows Phone Tools eltávolításához futtassa a következő parancsot.

vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5

Hibajavítások

A NuGet 1.4-ben összesen 88 munkaelem lett javítva. Ezek közül 71-et hibaként jelöltek meg.

A NuGet 1.4-ben rögzített munkaelemek teljes listájáért tekintse meg a [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).

Érdemes megjegyezni a hibajavításokat:

  • [Issue 603](http://nuget.codeplex.com/workitem/603): A különböző adattárak csomagfüggőségei egy adott csomagforrás megadásakor helyesen oldódnak fel.
  • [Issue 1036](http://nuget.codeplex.com/workitem/1036): Az építés utáni eseményhez NuGet Pack SomeProject.csproj való hozzáadás már nem okoz végtelen ciklust.
  • [Issue 961](http://nuget.codeplex.com/workitem/961): -Source a jelző támogatja a relatív útvonalakat.

NuGet 1.4-frissítés

Röviddel a NuGet 1.4 kiadása után találtunk néhány problémát, amelyeket fontos kijavítani. A frissítés 1.4-es verziószáma 1.4.20615.9020.

Hibajavítások

  • [Issue 1220](http://nuget.codeplex.com/workitem/1220): Update-Package nem hajt végre install.ps1/uninstall.ps1 minden projektben, ha egynél több projekt van
  • [Issue 1156](http://nuget.codeplex.com/workitem/1156): A Package Manager Consol elakadt a W2K3/XP rendszeren (ha a PowerShell 2 nincs telepítve)