NuGet 2.0 منتشر شد
نسخه جدید برنامه مدیریت بستههای دات نت هم آماده شد. میتونین از اینجا دانلودش کنین. (2.5MB)
طبق آمار خود سایت نوگت تا حالا بیش از 14.6 میلیون بار بستههای اون توسط کاربران دانلود شدن و بیش از 7000 بسته متمایز در این گالری موجوده!
یکی از مشکلاتی که تو این نسخه رفع شده موردی بود که در ارتباطات کند اینترنت بوجود میومد (^). تو کنسول این افزونه پس از وارد کردن قسمتی از نام یک بسته با فشردن کلید TAB نام تمام بستههایی که اول اسمشون اون عبارت تایپ شده باشه، لیست میشه (Tab Completion).
این عملیات در نسخههای قبلی با استفاده از یک درخواست HTML به OData (^) انجام میشد که دادههایی بیش از حد نیاز رو برمیگردوند. اما تو این نسخه این عملیات با استفاده از یک درخواست سریع JSON انجام میشه. (^)
من خودم این ویژگی رو تست کردم و افزایش سرعتش قابل ملاحظه بود!
یکی دیگه بهبودهای حاصله در دریافت بستههای وابسته نسبت به نسخه دات نت فریمورک در پروژه هدف هستش. یعنی میشه تنظیماتی روی بستههای نوگت اعمال کرد تا به صورت هوشمندانه نسخه متناسب با دات نت فریمورک مورد استفاده رو دانلود و نصب کنه.
اگه به صفحه مربوط به مشکلات و درخواستهای کاربران برای این افزونه (^) مراجعه کنین میبینید این دو موردکه تو این نسخه برطرف شدن بیشترین تقاضا رو داشتن. مورد اول با توجه به سرعت پایین اینترنت برای خود من خیلی کاربردیه.
نکته: اگر از VS 2010 SP1 استفاده میکنین هنگام به روز رسانی نوگت با استفاده از Extension Manager خود VS ممکنه با خطا مواجه بشین. اصولا بهترین روش نصب نوگت ابتدا unistall کردن نسخه قدیمی این افزونه از طریق appwiz.cpl و سپس نصب نسخه جدید با اجرای فایل vsix. هست (در هر دو قسمت نیاز به دسترسی administrator دارین).
و در نهایت:
You can develop your own package and share it via the NuGet Gallery. (^)
ویرایش:
متاسفانه دیروز وقت نکردم نتایج آزمایش با Fiddler رو اینجا بزارم.
مورد اول (Tab Completion) رو با سه نسخه از نوگت (1.6 و 1.8 و 2.0) برای دو عبارت jque و signa تست کردم و نتایج بدست اومده به شرح زیره. در زیر url درخواست مربوطه به همراه حجم دیتای دریافتی آورده شده:
نوگت 1.6:
nuget ver 1.6 jque: GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'jque')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1 53691 bytes signa: GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'signa')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1 11536 bytes
نوگت 1.8:
nuget ver 1.8 jque: GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'jque')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1 53694 bytes signa: GET https://nuget.org/api/v2/Packages()?$orderby=DownloadCount%20desc,Id&$filter=startswith(tolower(Id),'signa')%20and%20IsLatestVersion&$skip=0&$top=90 HTTP/1.1 11536 bytes
نوگت 2.0:
nuget ver 2.0 jque: GET https://nuget.org/api/v2/package-ids?partialId=jque HTTP/1.0 598 bytes signa: GET https://nuget.org/api/v2/package-ids?partialId=signa HTTP/1.0 457 bytes
پاسخ سرور به عبارت signa در نسخه 2.0:
HTTP/1.1 200 OK Cache-Control: private Content-Type: application/json; charset=utf-8 Server: Microsoft-IIS/7.0 X-AspNetMvc-Version: 3.0 X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET Date: Thu, 28 Jun 2012 07:23:06 GMT Connection: close Content-Length: 457 ["SignalR","SignalR.Client","SignalR.Client.Silverlight","SignalR.Client.Silverlight5","SignalR.Client.WP7","SignalR.EventStream","SignalR.Hosting.AspNet","SignalR.Hosting.Common","SignalR.Hosting.Owin","SignalR.Hosting.Self","SignalR.Js","SignalR.MicroSliver","SignalR.Ninject","SignalR.RabbitMq","SignalR.Reactive","SignalR.Redis","SignalR.Sample","SignalR.Server","SignalR.StructureMap","SignalR.WebSockets","SignalR.WindowsAzureServiceBus","Signals.js"]
میبینید که غیرقابل مقایسه هستن! و همونوطور که آقای هنسلمن (^) در مورد نسخههای قدیمی گفتن: «دادههای بیش از حد نیاز رو برمیگردونن»
نسخههای قبل از 2.0 همگی از odata استفاده میکردن و دادههای برگشتی تماما encrypt شدهاند. اما در نسخه 2.0 دادههای برگشتی از نوع JSON هست (به Fiddler مراجعه کنین تا تفاوت واقعی رو ببینین. البته برای اینکه دادههای encrypt شده رو در fiddler ببینین باید طبق راهنمایی خودش از تنظیمات مربوط به decrypt ترافیک https استفاده کنین)
npm uninstall -g @angular/cli npm cache verify # if npm version is < 5 then use `npm cache clean` npm install -g @angular/cli@latest
npm i -g npm
2-حذف کردن ویژگیهای منسوخ شده از RxJS 6 با اجرای دستور زیر:
npm install -g rxjs-tslint rxjs-5-to-6-migrate -p src/tsconfig.app.json
npm update -g
برای بهروز رسانی به نسخه 7 (core framework و CLI)، دستورات زیر را اجرا کنید:
ng update @angular/cli ng update @angular/core ng update rxjs
ng update @angular/material
ng update --all --force
npm install npm-check-updates -g ncu -u npm install
کتابخانه HTML5 Scratch Card
Scratch.js is a standalone library with no external dependencies which brings interactivity to your website by allowing you to generate scratch cards for your visitors.
Based on HTML5, scratch.js generate canvas on the fly and is optimized for all modern browsers and has touch support for mobile devices. You can use it to make scratch cards, coupons, promotionnal game and even advertisement.
لیستی از C# Source Generators
C# Source Generators
A list of C# Source Generators (not necessarily awesome), because I haven't found a good list yet.
C# Source Generators is a Roslyn compiler feature introduced in C#9/.NET 5. It lets C# developers inspect user code and generate new C# source files that can be added to a compilation.
معرفی SQL Server 2016 Query Store
NET 6 Preview 1. منتشر شد
You can download .NET 6 Preview 1, for Windows, macOS, and Linux.
- Installers and binaries
- Container images
- Linux packages
- Release notes
- Known issues
- GitHub issue tracker
.NET 6 has been tested with Visual Studio 16.9 Preview 4 and Visual Studio for Mac 8.9. We recommend you use those builds if you want to try .NET 6.