<p>يوزع عفريت الخرافة ويجمع المصدر الكامل للتغييرات</p>

تم إنشاؤها على ٢١ نوفمبر ٢٠١٧  ·  49تعليقات  ·  مصدر: fable-compiler/Fable

وصف

يوزع dotnet fable yarn-start ويجمع المصدر بالكامل عند كل تغيير في ملف المصدر

رمز Repro

خذ أي مشروع خرافة وابدأ dotnet fable yarn-start.
قم بتعديل ملف واحد وحفظه.

النتائج المتوقعة والفعلية

متوقع: يتم إعادة ترجمة الملف الذي تم تغييره (وربما الملفات التابعة) فقط.
الفعلي: يتم تجميع كل شيء مرة أخرى.

معلومات ذات صله

  • نسخة Fable ( dotnet fable --version ): 1.3.0 ، 1.3.1

التعليق الأكثر فائدة

حسنًا ، هذه هي النتائج التي توصلت إليها: يبدو أن المشكلة تكمن في كيفية قيام Webpack بحل التبعيات. في هذا الأمر البسيط الذي أظهره SCullman قبل أن يتم src/Home/View.fs على أنه تبعية src App.fs . لذلك في كل مرة يتم فيها تحديث View.fs ، تتم إعادة ترجمة App.fs أيضًا بواسطة Webpack للتأكد من عدم وجود أخطاء في وقت التشغيل (والذي يمكن أن يحدث مع الوظائف المضمنة ، والتغييرات في أسماء الطرق العامة لـ View.fs ، إلخ).

نظرًا لأنه الملف الأخير للمشروع ، فمن الواضح أن App.fs به العديد من التبعيات. ويقوم Webpack بإعادة تجميعها جميعًا ولكن على ما يبدو فقط على Windows . يجب أن أبلغ فريق Webpack بهذا الأمر لمعرفة ما يحدث.

في غضون ذلك ، قمت بنشر fable-loader 1.1.5 حتى تتمكن من إلغاء الاشتراك في التبعيات باستخدام الخيار extra.ignoreDependencies . العيب هو أنه سيتعين عليك إجراء تغيير يدوي (مثل إضافة مسافة) في ملف تابع إذا كان يحتاج إلى إعادة تجميع حتى نتمكن من إيجاد حل مناسب ، ولكن على الأقل يجب أن يكون المراقب أسرع بكثير. مثال:

    module: {
        rules: [
            {
                test: /\.fs(x|proj)?$/,
                use: {
                    loader: "fable-loader",
                    options: {
                        babel: babelOptions,
                        define: isProduction ? [] : ["DEBUG"],
                        extra: { ignoreDependencies: true }
                    }
                }
            },

ال 49 كومينتر

مرحبًا @ SCullman! عذرًا ، لا يمكنني إعادة إنتاج هذا ، في حالتي فقط يتم إعادة تجميع الملفات المحررة والتابعة. هل لديك مستودع أو مشروع مضغوط لاختبار ذلك؟

alfonsogarciacaro Strange ، كما كان آخرون يبلغون عن نفس المشكلة في gitter هذا الصباح. سوف أتحقق مما إذا كان بإمكاني إعادة إنتاجه باستخدام نموذج مشروع.

خطوات التكاثر:

dotnet new fable-elmish-react
.paket\paket update 
yarn
cd src
dotnet restore
dotnet fable yarn-start

وبعد ذلك ، عندما ألمس home / view.fs:
image

شكرًا جزيلاً على خطوات repro ، SCullman : +1: تحتاج إلى تحديث مُحمل الخرافة أيضًا ، هل يمكنك إضافة yarn upgrade fable-loader (أو yarn upgrade لتحديث جميع حزم npm) إلى الخطوات أعلاه وحاول مرة أخرى؟

محاولة جديدة على كمبيوتر آخر:

dotnet new fable-elmish-react
.paket\paket update 
yarn install
yarn upgrade
cd src
dotnet restore
dotnet fable yarn-start

نفس النتائج.

أرى نفس المشكلة.

غريب ، لا أستطيع أن أعود ... 😕 أي شخص آخر مع هذه المشكلة؟ تضمين التغريدة

لا يمكنني إعادة إنتاج أي منهما ، لقد اتبعت خطوات SCullman وقمت بتحرير الملف Home\View.fs .

حصلت على هذه النتيجة:

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
16:15-19 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
172:15-25 "export 'defaultArg' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
185:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
188:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj
webpack: Compiled with warnings.
webpack: Compiling...
fable: Compiled src\Home\View.fs
Hash: 64fb89640a7e19c1f870
Version: webpack 3.8.1
Time: 2227ms
                                   Asset      Size  Chunks                    Chunk Names
                               bundle.js      2 MB       0  [emitted]  [big]  main
    0.b7f14501e6aa67373323.hot-update.js   1.77 kB       0  [emitted]         main
    b7f14501e6aa67373323.hot-update.json  43 bytes          [emitted]
                           bundle.js.map   2.19 MB       0  [emitted]         main
0.b7f14501e6aa67373323.hot-update.js.map   1.01 kB       0  [emitted]         main
[./node_modules/webpack/hot ^\.\/log$] (webpack)/hot nonrecursive ^\.\/log$ 170 bytes {0} [built]
[./src/Home/View.fs] ./src/Home/View.fs 632 bytes {0} [built]
    + 390 hidden modules

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
16:15-19 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/prelude.fs
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
172:15-25 "export 'defaultArg' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
185:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj

WARNING in C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
188:27-31 "export 'some' was not found in '../../../fable.core/1.3.1/fable-core/Util'
 @ C:/Users/mange/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs
 @ ./src/App.fs
 @ ./src/testDaemon.fsproj
 @ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/testDaemon.fsproj
webpack: Compiled with warnings.

الجزء المهم هو:

webpack: Compiling...
fable: Compiled src\Home\View.fs

أظن أن التحذير ، حول: export 'some' was not found in ناتج عن الطريقة الجديدة لـ Fable للتعامل مع option النوع. alfonsogarciacaro هل أنا على حق إذا كانت الإجابة بنعم ، فإن مجرد تحديث مستودعات elmish يجب أن يكون كافيًا لجعلها تختفي.

نفس المشكلة هنا. يستغرق الأمر الآن وقتًا طويلاً لتجميع مشاريع أكبر.

حاولت نفس SCullman أعلاه واحصل على

webpack: Compiled with warnings.
webpack: Compiling...
Parsing ./Home/View.fs...
Parsing ./App.fs...
fable: Compiled src\App.fs
Parsing ./Counter/View.fs...
Parsing ./Types.fs...
Parsing ./Info/View.fs...
Parsing ./Navbar/View.fs...
fable: Compiled src\Types.fs
fable: Compiled src\Counter\View.fs
fable: Compiled src\Info\View.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish/1.0.0/fable/program.fs...
fable: Compiled src\Navbar\View.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs...
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.react\1.0.0\fable\react.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish\1.0.0\fable\program.fs
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.debugger\1.0.0\fable\debugger.fs
Parsing ./State.fs...
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.browser\1.0.0\fable\navigation.fs
Parsing ./Home/View.fs...
Parsing ../../../Users/rsachse/.nuget/packages/fable.elmish.react/1.0.0/fable/common.fs...
fable: Compiled src\State.fs
fable: Compiled src\Home\View.fs
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.react\1.0.0\fable\common.fs
fable: Compiled ..\..\Users\rsachse\.nuget\packages\fable.elmish.browser\1.0.0\fable\parser.fs

عندما أقوم بتغيير الصفحة الرئيسية / View.fs

yarn info fable-loader يعطيني version: '1.1.4',

ما هو إصدار دوت نت الخاص بك؟

2.0.2 على النوافذ

لقد جربته للتو على جهاز linux box الخاص بي (مع dotnet 2.0.0) وهناك يعمل

أنا تحت Windows مع 2.0.3.

لقد بدأ هذا بالجنون لدي الكثير من السلوكيات المختلفة بين 2.0.0 و 2.0.1 و 2.0.2 و 2.0.3 في اليومين الماضيين ...

هل يمكنك المحاولة مع 2.0.3 تحت Windows؟

تحرير: للتحقق مما إذا كان هذا مرتبطًا بإصدار dotnet ...

تمت الترقية إلى 2.0.3 على Windows 10 (1709)
غزل 1.3.2
العقدة 8.6.0 / 9.2.0

ما زال كما هو...

بالعودة إلى المنزل ، تمت ترقية هذا الجهاز أيضًا إلى dotnet2.0.3 ، ولا يزال نفس السلوك

كذلك هنا. نفس المشاكل مع dotnet 2.0.3

أرى هذه المشكلة أيضًا. دوت نت 2.0.3

للمراجع هنا هي النتيجة التي أحصل عليها في نظام Linux مع dotnet 2.0.3:

webpack: Compiling...
Parsing ./Home/View.fs...
Parsing ./App.fs...
fable: Compiled src/App.fs
Parsing ./Home/View.fs...
fable: Compiled src/Home/View.fs

يوجد خط أكثر قليلاً من ذي قبل تحت النوافذ ولكن هذا يبدو جيدًا.

هل تستخدمون global.json مكان ما على نظامك؟

هل تستخدمون global.json في مكان ما على نظامكم؟

نعم

{
    "sdk": {
        "version": "2.0.3"
    }
}

هل تستخدمون global.json في مكان ما على نظامكم؟

لا

أنا على macOS مع dotnet SDK 2.0.0 ولا أرى المشكلة. يقول # 1246 أيضًا أن المشكلة تحدث من 1.3.0 بيتا إلى 1.3.1 لكنني لم ألمس الكود لاكتشاف الملفات القذرة بين تلك الإصدارات. أرغ!

Hmm، Fable 1.3 يستخدم System.IO.File.GetLastWriteTime لاكتشاف الملفات القذرة ( المصدر ). ربما يعطي هذا نتائج مختلفة اعتمادًا على إصدار / منصة netcore؟ @ vasily- kirichenkoenricosada

أبلغforki أن Fable توقف عن العمل مع dotnet SDK 2.0.3 (على نظام Windows على ما أعتقد) والعودة إلى الإصدار 2.0.2 جعلها تعمل.

أبلغforki أن Fable توقف عن العمل مع dotnet SDK 2.0.3 (على نظام Windows على ما أعتقد) والعودة إلى الإصدار 2.0.2 جعلها تعمل.

ماذا تقصد ب "توقف عن العمل"؟ لدي 2.0.3 ويعمل كل شيء (باستثناء تحسين إعادة الترجمة). هل يجب علي الرجوع إلى الإصدار 2.0.2؟

image

في الأساس على الالتزام الذي كان يعمل بشكل محدد توقف عن العمل اليوم.

يستخدم Hmm ، Fable 1.3 System.IO.File.GetLastWriteTime لاكتشاف الملفات القذرة (المصدر).

تحولت FCS إلى الطوابع الزمنية UTC في كل مكان مؤخرًا ، فهل هذا يسبب المشكلة؟

mhm غير متأكد ، لأن تبديل إصدارات dotnet حلها

لكنني أفترض أنني سأرى نفس المشكلة في 2.0.2 في النهاية. أعتقد أنها مجرد ذاكرة تخزين مؤقت "جديدة" لشيء ما

alfonsogarciacaro ، هل يمكنك إضافة تسجيل الدخول إلى https://github.com/fable-compiler/Fable/blob/cda3ae8a97c538b783c961ccb7aa168d695b7b3c/src/dotnet/dotnet-fable/StateUtil.fs#L137 مثل "xxx.fs" = xxxxx أكبر من الطابع الزمني للمشروع = xxxxx "؟ (ومع ذلك ، لست متأكدًا من فهمي لما هو project.TimeStamp )

يمكنني التكاثر في Windows (كلاهما مع dotnet 2.0.0 و 2.0.3). لقد أضفت السجل كما اقترحت @ vasily-kirichenko وفي اختباراتي المحلية أظهر هذا أن المشكلة ليست في هذا السطر لذا يجب أن تكون في مكان آخر. التحقق الآن 👍

alfonsogarciacaro عظيم! نحن في انتظار الإصلاح ، الألم ضخم :)

حسنًا ، هذه هي النتائج التي توصلت إليها: يبدو أن المشكلة تكمن في كيفية قيام Webpack بحل التبعيات. في هذا الأمر البسيط الذي أظهره SCullman قبل أن يتم src/Home/View.fs على أنه تبعية src App.fs . لذلك في كل مرة يتم فيها تحديث View.fs ، تتم إعادة ترجمة App.fs أيضًا بواسطة Webpack للتأكد من عدم وجود أخطاء في وقت التشغيل (والذي يمكن أن يحدث مع الوظائف المضمنة ، والتغييرات في أسماء الطرق العامة لـ View.fs ، إلخ).

نظرًا لأنه الملف الأخير للمشروع ، فمن الواضح أن App.fs به العديد من التبعيات. ويقوم Webpack بإعادة تجميعها جميعًا ولكن على ما يبدو فقط على Windows . يجب أن أبلغ فريق Webpack بهذا الأمر لمعرفة ما يحدث.

في غضون ذلك ، قمت بنشر fable-loader 1.1.5 حتى تتمكن من إلغاء الاشتراك في التبعيات باستخدام الخيار extra.ignoreDependencies . العيب هو أنه سيتعين عليك إجراء تغيير يدوي (مثل إضافة مسافة) في ملف تابع إذا كان يحتاج إلى إعادة تجميع حتى نتمكن من إيجاد حل مناسب ، ولكن على الأقل يجب أن يكون المراقب أسرع بكثير. مثال:

    module: {
        rules: [
            {
                test: /\.fs(x|proj)?$/,
                use: {
                    loader: "fable-loader",
                    options: {
                        babel: babelOptions,
                        define: isProduction ? [] : ["DEBUG"],
                        extra: { ignoreDependencies: true }
                    }
                }
            },

alfonsogarciacaro شكرًا جزيلاً لك ، لقد عدت إلى 2 ثانية من التعليقات :)

لقد قمت بنشر dotnet-fable 1.3.2 ، هل يمكنك تحديثه وتجربته من فضلك؟ لا يرسل هذا الإصدار التبعيات إلى عميل JS (لذلك لا تحتاج حتى إلى الخيار extra.ignoreDependencies ) ولكن البرنامج الخفي سيحتفظ بها وسيظل يعيد ترجمة الملفات التابعة في تجميع الساعات. بهذه الطريقة إذا تسبب التغيير في حدوث خطأ في ملف آخر ، فسيتم الإبلاغ عن الخطأ بواسطة Webpack.

كمكافأة ، يجب أن يستفيد هذا أيضًا من fable-splitter لأنه لا يعتمد على العميل في التبعيات (pun unintended) forki

راجع للشغل ، أيضًا إلى forki ، تم إنشاء 1.3.2 باستخدام dotnet SDK 2.0.3 على Windows ، فربما يعمل ذلك على حل مشكلتك؟ 🤔

لقد اختبرت ضمن مشروع أكبر وقمت ببعض التغييرات في ملفات مختلفة مع تبعيات أكثر أو أقل.
عمل رائع. شكرا لك!

يعمل مع 2.0.3 على جهاز واحد. سوف نتحقق من الآخر في وقت لاحق اليوم

صباح 24.11.2017 08:10 شريب "ستيفان كولمان" [email protected] :

لقد اختبرت ضمن مشروع أكبر وقمت ببعض التغييرات في ملفات مختلفة
مع تبعيات أكثر أو أقل.
عمل رائع. شكرا لك!

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/fable-compiler/Fable/issues/1241#issuecomment-346757401 ،
أو كتم الخيط
https://github.com/notifications/unsubscribe-auth/AADgNMohglCrLNRcXVtu0d_YfzfGc3dZks5s5mvSgaJpZM4Ql5zA
.

لست متأكدًا من أنه يعمل بشكل جيد بالنسبة لي.

ملف المشروع:

<ItemGroup>
    <Compile Include="Global.fs" />
    <Compile Include="ElasticSearch\Common.fs" />
    <Compile Include="EsScratchPad\View.fs" />
    <Compile Include="Errors\Types.fs" />
    <Compile Include="Errors\Es.fs" />
    <Compile Include="Errors\State.fs" />
    <Compile Include="Errors\View.fs" />
    <Compile Include="Apps\Types.fs" />
    <Compile Include="Apps\State.fs" />
    <Compile Include="Apps\View.fs" />
    <Compile Include="Types.fs" />
    <Compile Include="State.fs" />
    <Compile Include="App.fs" />
  </ItemGroup>

بعد تغيير Apps\View.fs أحصل على هذا الناتج:

webpack: Compiling...
Parsing ./Apps/View.fs...
Parsing ./App.fs...
fable: Compiled src\App.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Navbar.fs...
Parsing ./EsScratchPad/View.fs...
Parsing ./Types.fs...
Parsing ./Errors/View.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish/1.0.0/fable/program.fs...
fable: Compiled src\Types.fs
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs...
fable: Compiled src\EsScratchPad\View.fs
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs...
Parsing ./State.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish\1.0.0\fable\program.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.react\1.0.0\fable\react.fs
Parsing ./Apps/View.fs...
Parsing ./ElasticSearch/Common.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Section.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Navbar.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Columns.fs...
fable: Compiled src\State.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Column.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.browser\1.0.0\fable\navigation.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Form.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.debugger\1.0.0\fable\debugger.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Button.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Common.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Columns.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Extra/FontAwesome.fs...
fable: Compiled src\Errors\View.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Icon.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Notification.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Section.fs
fable: Compiled src\ElasticSearch\Common.fs
Parsing C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/common.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Common.fs
Parsing ./Apps/State.fs...
Parsing ./Errors/State.fs...
fable: Compiled src\Apps\View.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Panel.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.react\1.0.0\fable\common.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Box.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Message.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Table.fs...
Parsing ./Errors/Es.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Pagination.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Extra\FontAwesome.fs
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Content.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fable.powerpack/1.3.1/fable/src/Fetch.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Menu.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Layouts/Level.fs...
Parsing C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Tag.fs...
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Column.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Notification.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Button.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Icon.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Layouts\Level.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Tag.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Menu.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.powerpack\1.3.1\fable\src\Fetch.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Pagination.fs
fable: Compiled src\Errors\Es.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Content.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Form.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Table.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Message.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Components\Panel.fs
fable: Compiled src\Errors\State.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fulma\1.0.0-beta-005\fable\Elements\Box.fs
fable: Compiled src\Apps\State.fs
fable: Compiled C:\Users\kirichenko\.nuget\packages\fable.elmish.browser\1.0.0\fable\parser.fs
Hash: 3311826e924a74e32344
Version: webpack 3.8.1
Time: 3656ms
                                   Asset      Size  Chunks                    Chunk Names
                               bundle.js    2.7 MB       0  [emitted]  [big]  main
    0.42dbebdd1d8a29329817.hot-update.js   33.4 kB       0  [emitted]         main
    42dbebdd1d8a29329817.hot-update.json  43 bytes          [emitted]
                           bundle.js.map   2.55 MB       0  [emitted]         main
0.42dbebdd1d8a29329817.hot-update.js.map   9.24 kB       0  [emitted]         main
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/navigation.fs 4.73 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.browser/1.0.0/fable/parser.fs 8.33 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.debugger/1.0.0/fable/debugger.fs 8.99 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish.react/1.0.0/fable/react.fs 871 bytes {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fable.elmish/1.0.0/fable/program.fs] C:/Users/kirichenko/.nuget/packages/fable.elmish/1.0.0/fable/program.fs 8.33 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Navbar.fs] C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Navbar.fs 24.2 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Panel.fs] C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Components/Panel.fs 10.3 kB {0} [built]
[./C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Box.fs] C:/Users/kirichenko/.nuget/packages/fulma/1.0.0-beta-005/fable/Elements/Box.fs 787 bytes {0} [built]
[./node_modules/webpack/hot ^\.\/log$] (webpack)/hot nonrecursive ^\.\/log$ 170 bytes {0} [built]
[./src/App.fs] ./src/App.fs 6.51 kB {0} [built]
[./src/Apps/View.fs] ./src/Apps/View.fs 9.28 kB {0} [built]
[./src/Errors/View.fs] ./src/Errors/View.fs 15.5 kB {0} [built]
[./src/EsScratchPad/View.fs] ./src/EsScratchPad/View.fs 8.99 kB {0} [built]
[./src/State.fs] ./src/State.fs 3.04 kB {0} [built]
[./src/Types.fs] ./src/Types.fs 2.72 kB {0} [built]
    + 400 hidden modules
webpack: Compiled successfully.

3.6 ثانية جيدة جدًا (لكنها أطول مما كانت عليه مع extra.ignoreDependencies - 1.7 ثانية).

@ vasily-kirichenko لقد حصلت على نفس الشيء في البداية. بعد إعادة تثبيت Paket deps من الصفر كل شيء على ما يرام الآن.

الآن 10 ثوانٍ ... :(

irium آه! paket install --force ؟

لم يساعد ، في نفس الوقت :(

@ vasily-kirichenko من فضلك تأكد من أن لديك 1.3.2 في paket.lock وعند تشغيل dotnet fable --version . إذا لزم الأمر ، فاحذف المجلد obj قبل تشغيل dotnet restore .

هل webpack.config.js موافق؟

var path = require("path");
var webpack = require("webpack");
var fableUtils = require("fable-utils");

function resolve(filePath) {
    return path.join(__dirname, filePath)
}

var babelOptions = fableUtils.resolveBabelOptions({
    presets: [["es2015", {"modules": false}]],
    plugins: [["transform-runtime", {
        "helpers": true,
        // We don't need the polyfills as we're already calling
        // cdn.polyfill.io/v2/polyfill.js in index.html
        "polyfill": false,
        "regenerator": false
    }]]
});

var isProduction = process.argv.indexOf("-p") >= 0;
console.log("Bundling for " + (isProduction ? "production" : "development") + "...");

module.exports = {
    devtool: "source-map",
    entry: resolve('./src/EsExplorer.fsproj'),
    output: {
        filename: 'bundle.js',
        path: resolve('./public'),
    },
    resolve: {
        modules: [
            "node_modules", resolve("./node_modules/")
        ]
    },
    devServer: {
        contentBase: resolve('./public'),
        port: 8080,
        hot: true,
        inline: true
    },
    module: {
        rules: [
            {
                test: /\.fs(x|proj)?$/,
                use: {
                    loader: "fable-loader",
                    options: {
                        babel: babelOptions,
                        define: isProduction ? [] : ["DEBUG"]
                    }
                }
            },
            {
                test: /\.js$/,
                exclude: /node_modules/,
                use: {
                    loader: 'babel-loader',
                    options: babelOptions
                },
            },
            {
                test: /\.sass$/,
                use: [
                    "style-loader",
                    "css-loader",
                    "sass-loader"
                ]
            }
        ]
    },
    plugins : isProduction ? [] : [
        new webpack.HotModuleReplacementPlugin(),
        new webpack.NamedModulesPlugin()
    ]
};

تبدو جيدة بالنسبة لي.

يؤدي حذف obj و dotnet restore حل المشكلة - 1.5 ثانية الآن. شكرا جزيلا!

obj obj - إنه مثل هذا اللعنة الآن. دائما القضية

forki هل هي dotnet أم باكيت أم ...؟

دوت نت

سؤال آخر: هل يمكنني إزالة كل prerelease s من packet.dependencies ؟

نعم ، باستثناء Fulma إذا كنت تستخدمه :) @ vasily-kirichenko

حسنا، شكرا. لا أستطيع تخيل حياتي بدون فولما :)

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات