Fable: Langkah-langkah untuk mendukung penargetan file proyek kerangka .net lengkap?

Dibuat pada 26 Mei 2017  ·  6Komentar  ·  Sumber: fable-compiler/Fable

.NET Core keren dan semuanya, tetapi memulai dengan Fable membutuhkan kurva pembelajaran yang bertahap dan menginstal banyak hal (dotnet sdk, runtime). Saya yakin banyak orang masih menggunakan VS 2015 (atau 2013, 2010) dan senang dengan itu.

Apa tantangan untuk mewujudkannya?

  • Parsing file proyek lama (sudah selesai di v0.7.x)
  • Gunakan paket (AFAIK, paket sudah bekerja dengan file proyek "lama", dan VS 2015 juga mendukung paket)
  • Publikasikan Fable.Tools sebagai paket nuget di mana daemon adalah aplikasi konsol di direktori tools yang, menurut nuget, "jalur direktori alat akan ditambahkan ke PATH"
question

Komentar yang paling membantu

Maaf, tetapi saya tidak dapat mendedikasikan waktu untuk ini, jika ada yang tertarik dengan Fable 1.0 yang mendukung format proyek lama, mereka harus mengerjakan fitur itu sendiri. Sudah sulit untuk membuat Fable bekerja dengan seperangkat alat saat ini dan kami terlalu kecil untuk menangani terlalu banyak skenario. Saat ini, VS untuk Windows adalah satu-satunya editor yang belum mendukung .fsproj baru, dan akan segera. Saya tidak berpikir mendedikasikan sumber daya pengembangan untuk mendukung format lama sepadan dengan usaha

Parsing file proyek lama (sudah selesai di v0.7.x)

Harap dicatat ini hanya bekerja dengan file sumber dan referensi non-kondisional , ini memaksa pengguna untuk secara manual menambahkan referensi ke perpustakaan.

Gunakan Paket

AFAIK, Paket dengan proyek lama bekerja dengan menyuntikkan banyak item kondisional di .fsproj, bukan dengan file .fsproj.references kita gunakan sekarang. Kita harus berinteraksi dengan Paket dengan cara yang sama sekali berbeda.

Publikasikan Fable.Tools sebagai paket nuget di mana daemon adalah aplikasi konsol di direktori alat

Saya belum pernah menggunakan ini jadi saya tidak yakin bagaimana cara kerjanya.

Semua 6 komentar

Maaf, tetapi saya tidak dapat mendedikasikan waktu untuk ini, jika ada yang tertarik dengan Fable 1.0 yang mendukung format proyek lama, mereka harus mengerjakan fitur itu sendiri. Sudah sulit untuk membuat Fable bekerja dengan seperangkat alat saat ini dan kami terlalu kecil untuk menangani terlalu banyak skenario. Saat ini, VS untuk Windows adalah satu-satunya editor yang belum mendukung .fsproj baru, dan akan segera. Saya tidak berpikir mendedikasikan sumber daya pengembangan untuk mendukung format lama sepadan dengan usaha

Parsing file proyek lama (sudah selesai di v0.7.x)

Harap dicatat ini hanya bekerja dengan file sumber dan referensi non-kondisional , ini memaksa pengguna untuk secara manual menambahkan referensi ke perpustakaan.

Gunakan Paket

AFAIK, Paket dengan proyek lama bekerja dengan menyuntikkan banyak item kondisional di .fsproj, bukan dengan file .fsproj.references kita gunakan sekarang. Kita harus berinteraksi dengan Paket dengan cara yang sama sekali berbeda.

Publikasikan Fable.Tools sebagai paket nuget di mana daemon adalah aplikasi konsol di direktori alat

Saya belum pernah menggunakan ini jadi saya tidak yakin bagaimana cara kerjanya.

Saya pikir saya membuat "masalah" yang salah di sini, ini seharusnya menjadi pertanyaan :senyum:

Saya memiliki beberapa pemikiran tentang alur kerja yang berbeda dan saya ingin mencobanya sendiri tetapi saya tidak yakin apa yang diperlukan agar ini berfungsi secara teori.

Apakah benar paket nuget yang diterbitkan dengan dotnet pack tidak dapat digunakan di net45?

Apakah benar paket nuget yang diterbitkan dengan paket dotnet tidak dapat digunakan di net45?

Tidak, Anda dapat menargetkan net45 sebagai salah satu target Anda.

@ctaggart Bagus, itu bagus untuk diketahui. Terima kasih!

@Zaid-Ajaj sementara sdk baru (fsproj baru digunakan dalam fabel) bekerja sama di mono/msbuild.exe/dotnet cli (dari fsharp.net.sdk >= 1.0.3 , belum mendukung di VS 2017.
Jadi Anda dapat menargetkan net45 (dapat menargetkan beberapa target di fsproj yang sama, dengan SDK baru btw), tetapi tetap tidak berfungsi di VS. Bukankah inti .net, masalahnya, adalah SDK dan format proyek baru.
SDK lama karena lebih banyak masalah dalam dukungan lintas platform dan pemelihara (cukup baca info proyek itu menyakitkan dan memiliki masalah, seperti yang dikatakan

Dalam peta jalan VF#, tanggal yang diharapkan adalah pembaruan Juli, ketika VS 2017 akan mendukung SDK baru di Visual F#.

Jadi daripada melakukan banyak pekerjaan untuk mendukung SDK lama (susah untuk mempertahankan dua implementasi) yang akan segera usang, lebih baik menunggu sebentar (atm dukungan lintas platform dengan fabel dan editor seperti vscode/vsonmac luar biasa) hingga Juli dan tingkatkan saja VS dengan net4* nanti, menggunakan SDK baru

Jadi akhirnya runtime msbuild .net (mono/vs/netcore) tidak akan terlalu berarti (thx to new sdk), mungkin akan transparan bagi pengguna (pasti untuk pengguna windows), tetapi atm tanpa dukungan VS, tidak ada gunanya menghabiskan waktu ihmo , karena pengalaman (untuk pengguna) perlu dipoles dan pemeliharaan (untuk tim fabel) perlu diminimalkan.
SDK baru akan membantu, tetapi membutuhkan lebih banyak waktu. SDK lama adalah penyerap waktu, yang semakin usang di dunia .net.

@enricosada Alasan utama saya berpikir untuk melakukan ini, adalah untuk merampingkan pengalaman memulai bagi pendatang baru. Memudahkan orang untuk menggunakan apa yang mereka miliki sekarang (vs2015 atau lebih rendah) untuk bermain-main dengan dongeng. Saya menggunakan kode vs sekarang dengan inti dotnet dan itu berfungsi dengan baik. Tapi ini setelah serangkaian usaha yang membuat frustrasi untuk membuatnya bekerja di tempat pertama di mesin saya. Saya bahkan tidak dapat menginstal VS2017 di mesin saya yang merupakan alasan lain yang membuat saya memikirkan hal ini.

Namun, setelah membaca tanggapan Anda, saya harus setuju bahwa memfokuskan sumber daya dev pada SDK baru adalah lebih baik dan menunggu sedikit akan sia-sia.

Sekali lagi terima kasih atas waktu Anda untuk ini.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat