Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
NuGet 2.5 kibocsátási megjegyzések | NuGet 2.6.1 for WebMatrix kibocsátási megjegyzések
A NuGet 2.6 2013. június 26-án jelent meg.
A kiadás figyelemre méltó funkciói
A Visual Studio 2013 támogatása
A NuGet 2.6 az első kiadás, amely támogatja a Visual Studio 2013-at. A Visual Studio 2012-hez hasonlóan a NuGet Package Manager bővítmény is megtalálható a Visual Studio minden kiadásában.
Annak érdekében, hogy a Visual Studio 2013 a lehető legjobb támogatást nyújtsa, miközben a Visual Studio 2010-et és a Visual Studio 2012-et is támogatja, és hogy a bővítmények mérete a lehető legkisebb legyen, külön bővítményt készítünk a Visual Studio 2013-hoz, míg az eredeti bővítmény továbbra is a Visual Studio 2010-et és a 2012-et célozza.
A NuGet 2.6-tól kezdve két bővítményt teszünk közzé az alábbiak szerint:
- NuGet Package Manager (a Visual Studio 2010-re és 2012-re vonatkozik)
- NuGet Package Manager for Visual Studio 2013
Ezzel a felosztással a nuget.org kezdőlap "A NuGet telepítése" gombja a NuGet telepítésére szolgáló lapra viszi, ahol további információt talál a különböző NuGet-ügyfelek telepítéséről.
XDT Web.config átalakítási támogatás
A leginkább keresett funkció a NuGet ügyfél számára az, hogy támogassa a hatékonyabb XML-transzformációkat az XDT transzformációs motor használatával, amelyet a Visual Studio buildkonfiguráció-transzformációiban alkalmaznak.
2013 áprilisában két nagy bejelentést tettünk az XDT NuGet-támogatásával kapcsolatban. Az első az volt, hogy maga az XDT-kódtár NuGet-csomagként kiadott, és [open sourced on CodePlex](http://xdt.codeplex.com/). Ez a lépés lehetővé tette, hogy az XDT-motort más nyílt forráskódú szoftverek szabadon használják, beleértve a NuGet-ügyfelet is. A második bejelentés egy terv volt az XDT-motor átalakításokhoz való használatának támogatására a NuGet kliensben. A NuGet 2.6 tartalmazza ezt az integrációt.
Hogyan működik?
A NuGet XDT-támogatásának kihasználásához a mechanika a jelenlegi konfigurációátalakítási funkcióhoz hasonló. Átalakító fájlok kerülnek a csomag tartalommappájába. Bár a konfigurációátalakítások egyetlen fájlt használnak mind a telepítéshez, mind az eltávolításhoz, az XDT-átalakítások lehetővé teszik mindkét folyamat részletes vezérlését a következő fájlok használatával:
- Web.config.install.xdt
- Web.config.uninstall.xdt
Emellett a NuGet a fájl utótagjával határozza meg, hogy melyik motor fusson átalakításokhoz, így a meglévő web.config.transforms-eket használó csomagok továbbra is működni fognak. Az XDT-átalakítások bármilyen XML-fájlra alkalmazhatók (nem csak web.config), így ezt a projekt más alkalmazásaihoz is felhasználhatja.
Az XDT-vel elvégezhető műveletek
Az XDT egyik legnagyobb erőssége az XML DOM szerkezetének manipulálására szolgáló egyszerű, de hatékony szintaxisa . Az XDT ahelyett, hogy egyszerűen átfedne egy rögzített dokumentumstruktúrát egy másik struktúrára, az egyszerű attribútumnevektől kezdve a teljes XPath-támogatásig számos különböző módon biztosít vezérlőket az egyező elemekhez. Miután megtalálta az egyező elemet vagy elemkészletet, az XDT számos függvényt biztosít az elemek módosításához, legyen szó attribútumok hozzáadásáról, frissítéséről vagy eltávolításáról, egy új elem adott helyen való elhelyezéséről, vagy az egész elem és gyermekeinek cseréjéről vagy eltávolításáról.
Gépszintű konfiguráció
A NuGet egyik nagy erőssége, hogy egy egyébként nagy végrehajtható vagy kódtárat egy olyan moduláris összetevőkre bont, amelyek integrálhatók, és ami a legfontosabb, függetlenül karbantarthatók és verziószámozhatók. Ennek egyik mellékhatása azonban az, hogy egy termék vagy termékcsalád hagyományos elképzelése esetleg töredezettebbé válik. A NuGet egyéni csomagforrás-funkciója lehetővé teszi a csomagok rendszerezését; azonban az egyéni csomagforrások önmagukban nem felderíthetők.
A NuGet 2.6 kibővíti a NuGet konfigurálásának logikáját a /NuGet/Config elérési út %ProgramData%alatti mappahierarchiában való kereséssel. A terméktelepítők egyéni NuGet-konfigurációs fájlokat adhatnak a mappához, hogy regisztráljanak egy egyéni csomagforrást a termékeikhez. Emellett a mappastruktúra támogatja a termék, a verzió és az IDE termékváltozatának szemantikáját is. Ezekből a könyvtárakból származó beállításokat a rendszer a következő sorrendben alkalmazza az "utolsóként beérkező érvényesül" elsőbbségi stratégiával.
- %ProgramData%\NuGet\Config*.config
- %ProgramData%\NuGet\Config{IDE}*.config
- %ProgramData%\NuGet\Config{IDE}{Version}*.config
- %ProgramData%\NuGet\Config{IDE}{Version}{SKU}*.config
Ebben a listában az {IDE} helyőrzője arra az IDE-ra vonatkozik, amelyben a NuGet fut, ezért a Visual Studio esetében a "VisualStudio" lesz. A (z) {Version} és {SKU} helyőrzőket az IDE biztosítja (pl. "11.0" és "WDExpress", "VWDExpress" és "Pro"). A mappa ezután számos különböző *.config fájlt tartalmazhat. Ezért az ACME összetevő-vállalat a terméktelepítő részeként hozzáadhat egy egyéni csomagforrást, amely csak a Visual Studio 2012 Professional és Ultimate verzióiban lesz látható a következő fájl elérési útjának létrehozásával:
%ProgramData%\NuGet\Config\VisualStudio\11.0\Pro\acme.config
Bár a mappastruktúra megkönnyíti az olyan programok számára, mint a szoftvertelepítők, hogy gépszintű csomagforrásokat vegyenek fel a NuGet konfigurációjába, a NuGet konfigurációs párbeszédpanele is frissült, hogy lehetővé tegye a csomagforrások felhasználóspecifikusként (például a %AppData%/NuGet/NuGet.Config-ban regisztrált) vagy a gépi szintű regisztrációt.
Ezt a funkciót a Visual Studio 2013 használja, ahol egy fájl a következő helyen van telepítve:
%ProgramData%\NuGet\Config\VisualStudio\12.0\Microsoft.VisualStudio.config
Ebben a fájlban egy ".NET-keretrendszercsomagok" nevű új csomagforrás van konfigurálva.
A keresés kontextusba iktatása
Mivel a NuGet-katalógus által kiszolgált csomagok száma továbbra is exponenciális ütemben növekszik, a keresés javítása mindig a NuGet prioritási listájának tetején marad. A NuGet egyik tervezett funkciója a környezetfüggő keresés, ami azt jelenti, hogy a NuGet a Visual Studio ön által használt verziójára és termékváltozatára, valamint a potenciális keresési eredmények relevanciájának meghatározására szolgáló kritériumként létrehozott projekttípusra vonatkozó információkat fogja használni.
A NuGet 2.6-tól kezdve minden csomag telepítésekor a rendszer a telepítési művelet adatainak részeként rögzíti a telepítés környezetét. A keresések ugyanazokat a környezeti információkat is elküldik, amelyek lehetővé teszik, hogy a NuGet-katalógus környezeti telepítési trendek alapján növelje a keresési eredményeket. A NuGet-katalógus jövőbeli frissítése lehetővé teszi ezt a környezetérzékeny relevancia növelését.
Közvetlen telepítések és függőségi telepítések nyomon követése
A csomagkészítők egyre inkább a NuGet-katalógusban megadott csomagstatisztikákra támaszkodnak. Az egyik jelentős hiányzó adatpont, amelyet a szerzők kértek, a közvetlen csomagtelepítések és a függőségi telepítések közötti különbség. Eddig a NuGet-ügyfél nem küldött kontextust a telepítési művelet körül, hogy a fejlesztő közvetlenül telepítette-e a csomagot, vagy egy függőség kielégítése érdekében lett-e telepítve. A NuGet 2.6-tól kezdve a rendszer elküldi az adatokat a telepítési művelethez. A NuGet-katalógus csomagstatisztikái külön telepítési műveletként, "-Dependency" utótaggal teszik elérhetővé az adatokat.
- Install
- Függőség telepítése
- Update
- Frissítési-függőség
- Reinstall
- Reinstall-Dependency
A rendszer a különböző műveletnév mellett a függő csomagazonosítót is rögzíti a telepítéshez. A NuGet-katalógus jövőbeli frissítése elérhetővé teszi az adatokat a jelentésekben, így a csomagkészítők teljes mértékben megérthetik, hogy a fejlesztők hogyan telepítik a csomagjaikat.
Hibajavítások
A NuGet 2.6 számos hibajavítást is tartalmaz. A NuGet 2.6-ban rögzített munkaelemek teljes listájáért tekintse meg a [NuGet Issue Tracker for this release](https://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%202.6&assignedTo=All&component=All&sortField=LastUpdatedDate&sortDirection=Descending&page=0&reasonClosed=All).