Moment: Webpack - Ketergantungan kritis: permintaan ketergantungan adalah ekspresi dengan 2.25.0

Dibuat pada 1 Mei 2020  ·  35Komentar  ·  Sumber: moment/moment

Pagi ini saya memutakhirkan momen dari 2.24.0 ke 2.25.0 dan mulai mendapatkan peringatan ini dari build Webpack saya:
Critical dependency: the request of a dependency is an expression

Versi yang saya gunakan:
teguk - 4.0.2
paket web - 4.43.0
babel - 7.9.6

Tidak ada pembaruan lain yang terjadi di antaranya. Hanya moment.js yang diperbarui dan peringatan muncul.

Komentar yang paling membantu

Sama di sini, mengunci versi paket ke 2.24.0 membantu untuk saat ini...

Semua 35 komentar

masalah yang sama

masalah yang sama
setelah menginstal momen di aplikasi laravel vue.
WARNING in ./node_modules/moment/src/lib/locale/locales.js 78:12-82:13 Critical dependency: the request of a dependency is an expression @ ./node_modules/moment/src/lib/locale/locale.js @ ./node_modules/moment/src/moment.js @ ./resources/js/app.js @ multi ./resources/js/app.js ./resources/sass/app.scss

Sama di sini, mengunci versi paket ke 2.24.0 membantu untuk saat ini...

Masalah yang sama di sini! Kritis!

Saya memiliki masalah yang sama! Mengunci milik saya ke 2.24.0 dan memperbaiki bangunan saya

Diperbantukan

Sama disini. 2.25.0 memberikan masalah ini tetapi tidak 2.24.0. Perubahan pada 2092:16-2096:17 di moment.js adalah akarnya.

Masalah yang sama, tetapi anehnya hanya ketika dijalankan sebagai dev (ini adalah proyek nuxt) Masalah tampaknya ada di src/lib/locale/locales.js baris 78 - 82,

Mengubah:
```javascript
alias membutuhkan(
(typeof __dirname !== undefined ? __dirname : '.') +
'/lokal/' +
nama
);
to: javascript
aliasedRequire('../locale/' + nama);
````
Memperbaiki masalah untuk saya

Saya mendapatkannya di dev dan prod build dengan pengaturan saya.

Sama di sini, mengunci versi paket ke 2.24.0 membantu untuk saat ini...

Ya, itu solusi yang jelas, tetapi sebenarnya bukan solusi :-).

Saya juga mendapatkan peringatan yang sama dan mendapatkan kesalahan konsol berikut, di browser web untuk aplikasi sudut saat memanggil moment.format() .

ERROR TypeError: __WEBPACK_IMPORTED_MODULE_2_moment__ is not a function
(main.bundle.js:11539)
Show 102 more frames

sama disini

Dikonfirmasi juga

Tunggu sebentar -- ini peringatan, bukan kesalahan. Apakah masih menghasilkan bundel?

Dengan momen 2.25.0:

% ./node_modules/.bin/webpack
Hash: 42b60d02778538c038dc
Version: webpack 4.43.0
Time: 497ms
Built at: 05/01/2020 4:56:43 PM
    Asset      Size  Chunks             Chunk Names
bundle.js  72.2 KiB       0  [emitted]  main
Entrypoint main = bundle.js
[13] ./node_modules/moment/src/lib/units/month.js + 1 modules 9.92 KiB {0} [built]
     |    2 modules
[26] ./node_modules/moment/src/lib/create/valid.js + 1 modules 1.88 KiB {0} [built]
     |    2 modules
[36] ./node_modules/moment/src/lib/create/from-anything.js + 8 modules 25.1 KiB {0} [built]
     |    9 modules
[46] (webpack)/buildin/harmony-module.js 573 bytes {0} [built]
[47] ./node_modules/moment/src/lib/locale sync 160 bytes {0} [optional] [built]
[48] ./src/index.js + 54 modules 84.6 KiB {0} [built]
     | ./src/index.js 62 bytes [built]
     |     + 54 hidden modules
    + 43 hidden modules

WARNING in ./node_modules/moment/src/lib/locale/locales.js 78:12-82:13
Critical dependency: the request of a dependency is an expression
 @ ./node_modules/moment/src/lib/locale/locale.js
 @ ./node_modules/moment/src/moment.js
 @ ./src/index.js

WARNING in configuration
The 'mode' option has not been set, webpack will fallback to 'production' for this value. Set 'mode' option to 'development' or 'production' to enable defaults for each environment.
You can also set it to 'none' to disable any default behavior. Learn more: https://webpack.js.org/configuration/mode/

Dan itu berhasil.

Dengan [email protected] :

% ./node_modules/.bin/webpack
Hash: c16dbd62d51ed42203b2
Version: webpack 4.43.0
Time: 559ms
Built at: 05/01/2020 4:58:27 PM
    Asset     Size  Chunks                    Chunk Names
bundle.js  263 KiB       0  [emitted]  [big]  main
Entrypoint main [big] = bundle.js
[128] ./src/index.js 62 bytes {0} [built]
[129] (webpack)/buildin/module.js 497 bytes {0} [built]
[130] ./node_modules/moment/locale sync ^\.\/.*$ 3 KiB {0} [optional] [built]
    + 128 hidden modules

WARNING in configuration
The 'mode' option has not been set, webpack will fallback to 'production' for this value. Set 'mode' option to 'development' or 'production' to enable defaults for each environment.
You can also set it to 'none' to disable any default behavior. Learn more: https://webpack.js.org/configuration/mode/

WARNING in asset size limit: The following asset(s) exceed the recommended size limit (244 KiB).
This can impact web performance.
Assets: 
  bundle.js (263 KiB)

WARNING in entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB). This can impact web performance.
Entrypoints:
  main (263 KiB)
      bundle.js


WARNING in webpack performance recommendations: 
You can limit the size of your bundles by using import() or require.ensure to lazy load some parts of your application.
For more info visit https://webpack.js.org/guides/code-splitting/

Dan itu masih berfungsi.

Tunggu sebentar -- ini peringatan, bukan kesalahan. Apakah masih menghasilkan bundel?

Ya, memang. Tetap saja - menjengkelkan, salah, dan membuat keluaran build penuh dengan jejak jelek.

Saya juga melihat ini, tetapi hanya di build produksi melalui CI kami.

@jontybrook Saya melihat perilaku yang sama tetapi setelah nuking folder node_modules, saya dapat mereproduksi ini secara lokal.

Kode dengan __dirname yang memperbaiki masalah untuk reaksi asli harus dikembalikan sehingga Anda (pengguna webpack) dapat melihat keluaran konsol yang lebih baik.

Diperbaiki di 2.25.1

Ini tidak ada hubungannya dengan keluaran konsol yang lebih baik...tetapi kurang dari build pemecah kode yang diuji secara ideal untuk BANYAK BANYAK orang!

Senang mendengarnya telah diperbaiki dan diterbitkan beberapa menit yang lalu - menghabiskan berjam-jam terakhir menggali di pihak kami mencoba menemukan penyebabnya

Ini tidak ada hubungannya dengan keluaran konsol yang lebih baik...tetapi kurang dari build pemecah kode yang diuji secara ideal untuk BANYAK BANYAK orang!

Tepat ! Peringatan hari ini adalah potensi kesalahan besok.

Itu jauh lebih buruk daripada peringatan ... jika Anda secara kebetulan menjalankan zona waktu momen yang secara dinamis menarik momen versi terbaru, ini menyebabkan pemecahan kode sepenuhnya!

Tunggu sebentar -- ini peringatan, bukan kesalahan. Apakah masih menghasilkan bundel?

Jika hanya menghasilkan bundel adalah satu-satunya hasil yang diinginkan ...

Kode dengan __dirname yang memperbaiki masalah untuk reaksi asli harus dikembalikan sehingga Anda (pengguna webpack) dapat melihat keluaran konsol yang lebih baik.

Diperbaiki di 2.25.1

Kenapa sarkasme?! Keluaran bersih itu penting. Dalam pengaturan saya, saya telah menempatkan statistik dan metrik yang penting bagi saya dan membanjirinya dengan hal-hal yang tidak perlu membuatnya melelahkan untuk membaca dan setidaknya memperlambat pekerjaan saya. Kemudian muncul fakta bahwa peringatan selalu menjadi sesuatu yang tidak boleh diabaikan dalam jangka panjang. Terakhir, tetapi sebenarnya yang pertama - ternyata sangat mengganggu untuk beberapa pengaturan seperti yang dilaporkan

Senang melihat ini diperbaiki. Akan melanjutkan dengan 2.24.0 hingga versi yang lebih baru atau mungkin mempertahankannya... terlalu lama untuk mencari tahu mengapa aplikasi web kami rusak pagi ini setelah penerapan.

Pengguna webpack "Anda"... alias sebagian besar pengembang aplikasi web. Saat ini kami tidak memiliki data tambahan yang berasal dari proses webpack kami, jadi saya tidak ingin melihat keluaran konsol yang lebih baik, saya hanya ingin itu berfungsi.

Kode dengan __dirname yang memperbaiki masalah untuk reaksi asli harus dikembalikan sehingga Anda (pengguna webpack) dapat melihat keluaran konsol yang lebih baik.

Diperbaiki di 2.25.1

Selain sarkasme, v2.25.1 sebenarnya tidak memperbaiki apa pun (peringatan Module not found masih ada). Saya biasanya menahan diri untuk tidak bersikap kritis terhadap kontributor open source yang merelakan waktu mereka, tetapi tolong jangan bersikap terhadap pengguna yang hanya melaporkan masalah. Dan ya, peringatan ada karena suatu alasan. Mengabaikannya mengaburkan segala macam info lain dan biasanya mengarah ke sesuatu yang rusak di jalan.

Masalah ini tidak boleh ditutup...ini adalah perubahan besar bagi pengguna zona waktu-saat yang menggunakan webpack, bukan hanya masalah menampilkan peringatan (dan memengaruhi sejumlah besar orang)

permasalahan yang sama
tidak memperbaiki 2.25.0
tidak memperbaiki 2.25.1
tidak memperbaiki 2.25.2

Saya ingin Anda kembali ke versi aslinya.

Lingkungan pemeriksaan operasi
https://github.com/standard-software/partsjs/tree/v5.0.0
package.json

Teman ini tidak tetap! Bisakah kita tidak menutup cacat sampai mereka diselesaikan terutama ketika mereka merusak build yang ada seperti Webpack?! @ichernev tolong buka kembali ini karena belum terselesaikan! Ini akan menghancurkan banyak orang yang mengandalkan MomentJS dan menggunakannya dengan Vanilla Webpack.

Hai, BUMP!, ini juga merusak build saya, tidak diperbaiki!.

Saya baru saja memperbarui momen dengan npm i moment dan itu menyelesaikannya

Apakah halaman ini membantu?
0 / 5 - 0 peringkat