Nunit: Mengakhiri dukungan untuk .NET Framework 2.0 (dirilis pada 2005)

Dibuat pada 18 Okt 2018  ·  27Komentar  ·  Sumber: nunit/nunit

Mendukung minimum net20 alih-alih net35 meningkatkan kompleksitas pengembangan kami. Kami memiliki NUnit.System.Linq dan mendefinisikan System.Action kami sendiri dan menulis NET35 || NET20 mana kami dapat memiliki NET35 . Kami mengambil waktu ekstra untuk menunggu tes. Dan kami memiliki lebih banyak pekerjaan yang harus dilakukan hanya di net20: https://github.com/nunit/NUnit.System.Linq/issues/12

Mengutip @NN--- dari https://github.com/nunit/NUnit.System.Linq/issues/12#issuecomment -430979252:

Jika saya memiliki perpustakaan untuk .NET 2.0 , maka tes harus .NET 2.0 .
Saya tidak berpikir ada orang yang masih menggunakan 2.0.
Satu-satunya masalah adalah bahwa banyak perpustakaan memiliki dukungan untuk semua versi .NET mulai dari 2.0.

Mungkin jika NUnit berhenti mendukung net20, itu bisa memberi dorongan kepada perpustakaan lain yang mereka butuhkan untuk menjatuhkan net20 juga. Jika proyek net20 masih dalam pengembangan, itu harus ditingkatkan ke .NET Framework yang lebih baru dan memperbaiki bug apa pun. Saya berharap bug dalam praktiknya sangat jarang. Jika proyek net20 tidak masih dalam pengembangan, seharusnya tidak ada alasan untuk memutakhirkan ke kerangka kerja atau pelari NUnit yang lebih baru.

Saya masih mendukung mendukung net35 (dirilis pada 2008) karena saya tahu proyek dunia nyata yang berjalan menggunakan CLR v2 (mendukung hingga net35) dan saya tidak akan percaya diri menjalankan tes untuk itu pada mesin CLR v4. Juga, VSTest masih dikirimkan dengan pelari net35. Namun, saya bertanya-tanya apakah menjatuhkan dukungan ini dapat memiliki efek riak yang menguntungkan.

Terakhir, produk .NET Framework 2.0 tidak lagi didukung oleh pabrikannya sendiri:

Dukungan untuk .NET Framework 2.0 berakhir pada 12 Juli 2011. .NET 3.5 SP1 adalah satu-satunya tingkat paket layanan yang didukung setelah tanggal ini. Kami sangat menganjurkan pelanggan untuk bermigrasi ke .NET Framework 3.5 SP1. Untuk informasi lebih lanjut, silakan kunjungi FAQ Kebijakan Siklus Hidup Dukungan .NET Framework

https://support.microsoft.com/lifecycle/search?alpha=.NET Framework 2.0

done

Komentar yang paling membantu

Saya tidak ingin kami menghentikan dukungan .NET 4.0. Sebagian besar barang desktop kami masih .NET 4. Kami telah memperbaikinya untuk waktu yang lama karena ini adalah versi terakhir yang tersedia di XP. Ini utang teknis sekarang, tentu saja - tetapi peningkatan memiliki biaya. Pikiran Anda, saya jengkel ketika NUnit 3.0 menjatuhkan dukungan untuk profil klien .NET 4.0. 😉

Jika kita menghapus build .NET 4.0, maka pengujian .NET 4.0 akan secara otomatis mengambil build .NET 3.5, yang menurut saya memiliki API yang berkurang di beberapa tempat. Melanggar banyak perubahan...


Pada .NET 2.0 - Saya cukup apatis. Kekhawatiran saya adalah perpustakaan yang mendukung banyak platform. Saya tidak setuju bahwa NUnit harus 'mendorong' perpustakaan lain untuk menghentikan dukungan, saya pribadi berpikir bahwa perpustakaan pengujian harus menjadi orang _terakhir_ untuk menghentikan dukungan - selama ada perpustakaan di luar sana, mereka perlu pengujian! Saya juga tidak berpikir pilihan XUnit/MSTest harus memperhitungkan - kompatibilitas mundur adalah kekuatan NUnit, dan celah dalam ekosistem yang kami isi. Itu hal yang bagus!

Semua yang mengatakan, .NET 2.0 adalah _old_ sekarang, dan saya tidak akan menolak kami menjatuhkannya - pengelola perpustakaan seperti itu dapat mengunci tes .NET 2.0 mereka untuk berjalan di NUnit 3.11. Saya pikir dukungan 7 tahun yang lalu ketika Microsoft EOL sudah cukup!

Saya akan secara aktif mendukung penghapusan .NET 2.0 dari mesin, yang secara aktif menyebabkan masalah bagi kami, misalnya penggantian Mono dan Remoting. Saya hanya tidak secara aktif melihat hambatan yang sama dalam kerangka kerja.

Semua 27 komentar

Meskipun saya sepenuhnya setuju, saya pikir kita perlu mengambil ini perlahan untuk memastikan masyarakat sadar bahwa perubahan akan datang dan dapat memberikan umpan balik. Kami terakhir mensurvei komunitas beberapa tahun yang lalu, tetapi saya berharap lanskap telah berubah sejak saat itu. Saya juga ingin melihat konsol dan mesin diperbarui ke 3,5 untuk alasan yang sama.

Baik MSTest dan xUnit saat ini minimal .NET 4.5 dan saya belum melihat adanya penolakan serius untuk itu. Kami juga dapat mempertimbangkan untuk menghentikan dukungan 4.0 dan semua solusi Async yang kami miliki di dalamnya dan memerlukan 4,5 untuk pengujian. Seperti 2.0/3.5, ini adalah CLR yang sama. Saya kurang cenderung melakukan ini, tetapi saya meletakkannya di atas meja untuk diskusi.

Beberapa tahun yang lalu kami memiliki bug dengan NUnit yang tidak mendukung .NET 3.5. Butuh beberapa bulan sebelum dilaporkan yang merupakan indikasi seberapa banyak digunakan. Saya berharap 2.0 semakin kecil.

Saya mengusulkan agar saya mengirimkan email ke milis Diskusi NUnit meminta umpan balik dari siapa pun yang menggunakan NUnit untuk .NET 2.0 dengan rencana untuk menghentikan dukungan di rilis berikutnya jika tidak ada alasan kuat yang kembali.

Pertanyaan - Apakah ini perubahan besar yang menjamin rilis 4.0? Kami telah mengubah rilis PCL dan .NET Standard kami tanpa beralih ke 4.0.

Saya suka proposal Anda.

xUnit 3.0 akan membutuhkan minimal .NET Framework 4.7.2. https://github.com/xunit/xunit/issues/1732

Menjatuhkan dukungan untuk net40 pada saat yang sama akan masuk akal dan meringankan beban kami dengan hal-hal async. Mungkin kita harus mempertimbangkan untuk memindahkan net45 ke net452:

Dukungan untuk .NET Framework 4, 4.5, dan 4.5.1 berakhir pada 12 Januari 2016. Microsoft menyarankan pelanggan meningkatkan ke .NET Framework 4.5.2 untuk terus menerima dukungan teknis dan pembaruan keamanan. Untuk informasi selengkapnya, kunjungi FAQ Kebijakan Siklus Hidup Dukungan .NET Framework https://support.microsoft.com/help/17455.

https://support.microsoft.com/en-us/lifecycle/search?alpha=.NET Framework 4

Apakah ini perubahan besar yang akan menjamin rilis 4.0? Kami telah mengubah rilis PCL dan .NET Standard kami tanpa beralih ke 4.0.

Kami pikir hampir tidak ada orang yang akan terpengaruh. Saya lebih suka tidak menggunakan nomor versi 4.0 untuk ini kecuali kami mengambil kesempatan untuk membuat perubahan yang melanggar lainnya juga.

/cc @ChrisMaddock yang baru-baru ini bekerja dengan proyek net40.

Saya tidak ingin kami menghentikan dukungan .NET 4.0. Sebagian besar barang desktop kami masih .NET 4. Kami telah memperbaikinya untuk waktu yang lama karena ini adalah versi terakhir yang tersedia di XP. Ini utang teknis sekarang, tentu saja - tetapi peningkatan memiliki biaya. Pikiran Anda, saya jengkel ketika NUnit 3.0 menjatuhkan dukungan untuk profil klien .NET 4.0. 😉

Jika kita menghapus build .NET 4.0, maka pengujian .NET 4.0 akan secara otomatis mengambil build .NET 3.5, yang menurut saya memiliki API yang berkurang di beberapa tempat. Melanggar banyak perubahan...


Pada .NET 2.0 - Saya cukup apatis. Kekhawatiran saya adalah perpustakaan yang mendukung banyak platform. Saya tidak setuju bahwa NUnit harus 'mendorong' perpustakaan lain untuk menghentikan dukungan, saya pribadi berpikir bahwa perpustakaan pengujian harus menjadi orang _terakhir_ untuk menghentikan dukungan - selama ada perpustakaan di luar sana, mereka perlu pengujian! Saya juga tidak berpikir pilihan XUnit/MSTest harus memperhitungkan - kompatibilitas mundur adalah kekuatan NUnit, dan celah dalam ekosistem yang kami isi. Itu hal yang bagus!

Semua yang mengatakan, .NET 2.0 adalah _old_ sekarang, dan saya tidak akan menolak kami menjatuhkannya - pengelola perpustakaan seperti itu dapat mengunci tes .NET 2.0 mereka untuk berjalan di NUnit 3.11. Saya pikir dukungan 7 tahun yang lalu ketika Microsoft EOL sudah cukup!

Saya akan secara aktif mendukung penghapusan .NET 2.0 dari mesin, yang secara aktif menyebabkan masalah bagi kami, misalnya penggantian Mono dan Remoting. Saya hanya tidak secara aktif melihat hambatan yang sama dalam kerangka kerja.

@ChrisMaddock itu adalah analisis yang adil dari dukungan .NET 4.0 dan berapa biayanya, terima kasih. Saya kira memperbarui semua suite pengujian itu ke target 4,5 juga akan menjadi masalah?

Lebih sedikit masalah, karena kami tidak perlu khawatir tentang instalasi .NET pada mesin pengguna. Tapi itu berarti kami tidak dapat menguji pada platform yang kami 'dukung', yang tidak ideal - kami telah mencapai beberapa perbedaan halus antara 4.0 dan 4.5 selama bertahun-tahun.

Bawa .NET Core dan penerapan mandiri!

Saya telah mengirimkan email ke nunit-discuss meminta siapa saja yang menggunakan .NET 2.0 dan siapa yang tidak ingin menargetkan .NET 3.5 dalam pengujian mereka untuk mengomentari masalah ini.

@rprouse Mungkin juga menyiarkan pertanyaan itu melalui akun twitter nunit (saya kira / berharap "kita" yang mengendalikannya?)

Ide bagus @mikkelbu , terima kasih. Tolong retweet semuanya, https://twitter.com/nunit/status/1055845383400767490

1.911 tayangan twitter untuk tweet tersebut dan sejauh ini tidak ada tanggapan...

Anda secara khusus mengatakan bahwa orang-orang yang ingin kami dengar adalah orang-orang yang keduanya memiliki pengujian net20 dalam pengembangan aktif dan tidak ingin memindahkan proyek pengujian ke net35, jadi mungkin angka 1.911 adalah pernyataan kuat bahwa setiap orang baik tidak terpengaruh atau senang pindah ke net35?

Menjatuhkan dukungan untuk 2.0-4.5 terdengar sangat masuk akal; kami saat ini menggunakan 4.5.2+ dan perlahan-lahan bermigrasi ke 4.6.

:+1: Hanya untuk memperjelas, saya pikir kami hanya mempertimbangkan untuk menjatuhkan .NET Framework 2.0 pada saat ini dan mempertahankan versi 3.5–4.5 .NET Framework kami.

Jika orang menggunakan .net 2.0 dan tidak memperbarui kerangka kerja, saya sangat ragu mereka akan mempertimbangkan untuk memperbarui ke versi NUnit yang lebih baru. Versi yang lebih lama akan tetap berfungsi, jadi saya tidak melihat alasan kuat untuk tetap menggunakan 2.0, bahkan 3.5. Mungkin, mungkin 4.0, tetapi bahkan tidak yakin tentang itu.

Kami tidak mendapat umpan balik negatif di sini, di daftar diskusi atau di twitter. @nunit/framework-and-engine-team akankah kita maju dengan ini? Seperti yang disebutkan @ChrisMaddock , saya juga mendukung melakukan hal yang sama di mesin, tetapi kita bisa mendiskusikannya di sana.

Sudah sebulan; Terdengar bagus untukku. Haruskah saya melakukan PR https://github.com/nunit/nunit/compare/master...jnm2 :drop_net20?

Silakan dan kirimkan PR Anda. Mari kita tunggu beberapa hari untuk komentar sebelum kita bergabung.

cc @JamesNK untuk kesadaran, Newtonsoft adalah salah satu perpustakaan yang saya tahu masih menggunakan .NET 2.0 NUnit.

Saya memeriksa proyek uji NewtonSoft.JSON dan menggunakan NUnit dan memiliki target net20 . https://github.com/JamesNK/Newtonsoft.Json/blob/master/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.csproj

😢

Jika Anda pikir itu yang terbaik untuk nunit. Saya selalu bisa menjalankan net20 DLL pada target 3,5

Kami tidak ingin membuat orang sedih. Apakah Anda memperkirakan memiliki pengguna yang secara khusus membutuhkan net20 selama bertahun-tahun lagi?

(Catatan umum) Saya baru saja menemukan ini ketika menjalankan tes net35 dengan vstest.console.exe 15.9:

Framework35 tidak didukung. Untuk proyek yang menargetkan .Net Framework 3.5, harap gunakan Framework40 untuk menjalankan pengujian dalam "mode kompatibilitas" CLR 4.0.

Aduh!

Saya mendengar bahwa VS menjatuhkan dukungan untuk pelari 3.5, tetapi saya memeriksa beberapa pembaruan yang lalu dan itu masih ada. Saya kira itu akhirnya terjadi. Aneh, saya pikir itu akan datang di VS 2019 daripada di pembaruan.

Saya pikir itu diperkenalkan di PR ini - Microsoft/vstest#1723, tetapi tidak disebutkan dalam catatan rilis - https://github.com/Microsoft/vstest-docs/blob/master/docs/releases.md

Ini adalah VSTest.Console dikemas dalam .NET Core SDK 2.1.500, didorong melalui dotnet test . Saya pikir itu diinstal oleh VS 15.9.

Apakah Anda memperkirakan memiliki pengguna yang secara khusus membutuhkan net20 selama bertahun-tahun lagi?

Saya tidak tahu. Tidak ada statistik tentang target yang digunakan. Dari sudut pandang saya, tidak banyak upaya dalam menjaga target net20. Rencana saya adalah membiarkannya sampai menjadi sakit untuk dipertahankan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat