• Какие версии CoreCLR совместимы друг с другом?

    @ATauenis Автор вопроса
    NewDevLab, хочу ради самообразования продолжить вышеуказанную таблицу версиями .NET Core и корочными CLR.

    а дальше, будет / не будет работать зависит от окружающей среды. и зависит от многих факторов.

    Например? С framework было всё просто. Подходит версия CLR (1.1/2.0/4.0) и разрядность - exe/dll будет работать. Всякие подвохи про прямые вызовы WinAPI и прочее не рассматриваем. Речь про абстрактный Hello world.
  • Какие версии CoreCLR совместимы друг с другом?

    @ATauenis Автор вопроса
    Вопрос не про API. А про то, запустится реальный бинарник в другой среде без установки родной, или нет? .NET 4.8 тоже совместим по API с .NET 2.0, но по факту для запуска программ надо доустанавливать .NET 2.0/3.0/3.5.
  • Почему не удается скачать с git?

    @ATauenis
    Попробуйте заменить https:// на http://. Или на git://.
    Прокси выделывается, HTTPS не для них.
  • Как в git вернуться к состоянию как на сервере?

    @ATauenis Автор вопроса
    Чистый pull ругался на незакоммиченые изменения. Ну, и надо сбросить указатель head с того что я наделал, на реальный head из GitHub.
  • Как в git вернуться к состоянию как на сервере?

    @ATauenis Автор вопроса
    Евгений Самсонов, задача привести состояние локальной копии в идентичное с тем, что на GitHub. Т.е. по всем веткам сразу, как если бы вообще всё выкинул и сделал git clone заново. Но с оговоркой, что не надо трогать файлы из списка .gitignore. Из-за них и весь сыр-бор, так бы не думая снёс всё и заново склонировал бы.
  • Как в git вернуться к состоянию как на сервере?

    @ATauenis Автор вопроса
    Надо не master, а сразу две ветки, одна из которых даже не улетела на сервер ещё. Она не нужна, на сервере всё из неё всё ещё в master, но локально там фиг знает что уже.
  • Как в git вернуться к состоянию как на сервере?

    @ATauenis Автор вопроса
    Ну, а суть в том, что что-то напутал в этих делах:
    paratapok.ru/developer-tools/2593_kak-v-git-perene...
    И надо вернуться к тому, что было пока не начал с уставшей бошки переносить кучу коммитов в другую ветку, делая опечатки и потеряв внимательность. Благо, ничего не запушил за время этих манёвров. Т.е. весь кавардак в локальной копии репозитория.
  • Как восстановить работу win10?

    @ATauenis
    Самое страшное Вы сделали. Надо было сразу сделать полный образ диска, посекторно. Полетела файловая система, это распространённое явление для NTFS/Windows, и проблема именно софтовая. Если сразу, не допуская никакой записи на диск (не говоря про всякие Chkdsk /f, это приговор), запустить утилиты для восстановления ФС типа GetDataBackNTFS, то можно всё восстановить. Правда, могут полететь симлинки, но на загружаемость голой винды это мало влияет. Максимум слетит ntdvm, имена папок и возможность автоматического обновления. Сложный софт может выпендрится, хотя тоже вряд ли.
  • Как скомпилировать проект .NET Core в режиме Any CPU?

    @ATauenis Автор вопроса
    Бывают редкие случаи, когда WOW64 отключена. :) Но, вообще, с чистой 64-биткой спокойнее. И плюс можно будет в будущем использовать внешние dll правильной разрядности. Некоторые уже трудно достать в 32 битах.
  • Как скомпилировать проект .NET Core в режиме Any CPU?

    @ATauenis Автор вопроса
    Тогда используется последняя использованная платформа.
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    #, ресурсы вроде Q&A как раз и созданы для тех, у кого проблемы с соображалкой. Претензий ни к кому нет, только вопросы на основании того, что в статьях у MS про отличия Framework от Core не указали отличий по формату бинарников и числу необходимых DLL. Ответы уже получил, спасибо firedragon за разъяснения.
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    #, проблемы такие: "классика" в виде Mono до сих пор довольно глючная на Linux. Поэтому и пришлось перейти на Core, по которому из документации толком не понятно, чем отличается от Framework с точки зрения зависимостей по DLL. С FW было всё просто, BCL (т.е. всё из System.*, Microsoft.*) есть абсолютно у всех, у кого стоит Framework. Тут же без 0,5л не разберёшь, что из System.* относится к новой кастрированной BCL у Core, а что к внешним библиотекам. И плюс сам Core Runtime стало можно опционально распространять вместе с приложениями (дожили!). Еле врубился что к чему. Вроде. :)
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    Сделал проще:
    <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
        <SelfContained>False</SelfContained>
      </PropertyGroup>

    Даже с core 3.1, который dotnet-packaging плохо признаёт (отсюда ключ --no-restore), все равно собирается компактный пакет только с необходимым (12 файлов).

    Спасибо!
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    twobomb, а они не будет каждый раз добавляться сами? Это ж всё прилетело через NuGet вместе с System.Text.Encoding.CodePages и System.Diagnostics.PerformanceCounter, которые, похоже, в .NET Core всё-таки не в базовой поставке с CLR и System.dll.
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    twobomb, нет, работает.
    Error:
    An assembly specified in the application dependencies manifest (WebOne.deps.js
    on) was not found:
    package: 'System.Drawing.Common', version: '4.7.0'
    path: 'runtimes/win/lib/netcoreapp3.0/System.Drawing.Common.dll'

    WebOne.deps.json
    {
      "runtimeTarget": {
        "name": ".NETCoreApp,Version=v3.1/win-x64",
        "signature": ""
      },
      "compilationOptions": {},
      "targets": {
        ".NETCoreApp,Version=v3.1": {},
        ".NETCoreApp,Version=v3.1/win-x64": {
          "WebOne/0.10.0": {
            "dependencies": {
              "Packaging.Targets": "0.1.155",
              "System.Diagnostics.PerformanceCounter": "4.7.0",
              "System.Text.Encoding.CodePages": "4.7.0"
            },
            "runtime": {
              "WebOne.dll": {}
            }
          },
          "Microsoft.NETCore.Platforms/3.1.0": {},
          "Microsoft.Win32.Registry/4.7.0": {
            "dependencies": {
              "System.Security.AccessControl": "4.7.0",
              "System.Security.Principal.Windows": "4.7.0"
            }
          },
          "Microsoft.Win32.SystemEvents/4.7.0": {
            "dependencies": {
              "Microsoft.NETCore.Platforms": "3.1.0"
            },
            "runtime": {
              "runtimes/win/lib/netcoreapp3.0/Microsoft.Win32.SystemEvents.dll": {
                "assemblyVersion": "4.0.2.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          },
          "Packaging.Targets/0.1.155": {
            "dependencies": {
              "System.Buffers": "4.5.0"
            }
          },
          "System.Buffers/4.5.0": {},
          "System.Configuration.ConfigurationManager/4.7.0": {
            "dependencies": {
              "System.Security.Cryptography.ProtectedData": "4.7.0",
              "System.Security.Permissions": "4.7.0"
            },
            "runtime": {
              "lib/netstandard2.0/System.Configuration.ConfigurationManager.dll": {
                "assemblyVersion": "4.0.3.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          },
          "System.Diagnostics.PerformanceCounter/4.7.0": {
            "dependencies": {
              "Microsoft.NETCore.Platforms": "3.1.0",
              "Microsoft.Win32.Registry": "4.7.0",
              "System.Configuration.ConfigurationManager": "4.7.0",
              "System.Security.Principal.Windows": "4.7.0"
            },
            "runtime": {
              "runtimes/win/lib/netcoreapp2.0/System.Diagnostics.PerformanceCounter.dll": {
                "assemblyVersion": "4.0.2.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          },
          "System.Drawing.Common/4.7.0": {
            "dependencies": {
              "Microsoft.NETCore.Platforms": "3.1.0",
              "Microsoft.Win32.SystemEvents": "4.7.0"
            },
            "runtime": {
              "runtimes/win/lib/netcoreapp3.0/System.Drawing.Common.dll": {
                "assemblyVersion": "4.0.2.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          },
          "System.Security.AccessControl/4.7.0": {
            "dependencies": {
              "Microsoft.NETCore.Platforms": "3.1.0",
              "System.Security.Principal.Windows": "4.7.0"
            }
          },
          "System.Security.Cryptography.ProtectedData/4.7.0": {
            "runtime": {
              "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll": {
                "assemblyVersion": "4.0.5.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          },
          "System.Security.Permissions/4.7.0": {
            "dependencies": {
              "System.Security.AccessControl": "4.7.0",
              "System.Windows.Extensions": "4.7.0"
            },
            "runtime": {
              "lib/netcoreapp3.0/System.Security.Permissions.dll": {
                "assemblyVersion": "4.0.3.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          },
          "System.Security.Principal.Windows/4.7.0": {},
          "System.Text.Encoding.CodePages/4.7.0": {
            "dependencies": {
              "Microsoft.NETCore.Platforms": "3.1.0"
            }
          },
          "System.Windows.Extensions/4.7.0": {
            "dependencies": {
              "System.Drawing.Common": "4.7.0"
            },
            "runtime": {
              "runtimes/win/lib/netcoreapp3.0/System.Windows.Extensions.dll": {
                "assemblyVersion": "4.0.1.0",
                "fileVersion": "4.700.19.56404"
              }
            }
          }
        }
      },
      "libraries": {
        "WebOne/0.10.0": {
          "type": "project",
          "serviceable": false,
          "sha512": ""
        },
        "Microsoft.NETCore.Platforms/3.1.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-z7aeg8oHln2CuNulfhiLYxCVMPEwBl3rzicjvIX+4sUuCwvXw5oXQEtbiU2c0z4qYL5L3Kmx0mMA/+t/SbY67w==",
          "path": "microsoft.netcore.platforms/3.1.0",
          "hashPath": "microsoft.netcore.platforms.3.1.0.nupkg.sha512"
        },
        "Microsoft.Win32.Registry/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-KSrRMb5vNi0CWSGG1++id2ZOs/1QhRqROt+qgbEAdQuGjGrFcl4AOl4/exGPUYz2wUnU42nvJqon1T3U0kPXLA==",
          "path": "microsoft.win32.registry/4.7.0",
          "hashPath": "microsoft.win32.registry.4.7.0.nupkg.sha512"
        },
        "Microsoft.Win32.SystemEvents/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-mtVirZr++rq+XCDITMUdnETD59XoeMxSpLRIII7JRI6Yj0LEDiO1pPn0ktlnIj12Ix8bfvQqQDMMIF9wC98oCA==",
          "path": "microsoft.win32.systemevents/4.7.0",
          "hashPath": "microsoft.win32.systemevents.4.7.0.nupkg.sha512"
        },
        "Packaging.Targets/0.1.155": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-T6BQBZ08ILQ6wCuj3CzKQTpLCgyK9KhMhwheDgOaDFV2ox9a/QYCXPyFEPr2eNLZcmaZizSBXeC8WqPOobq28Q==",
          "path": "packaging.targets/0.1.155",
          "hashPath": "packaging.targets.0.1.155.nupkg.sha512"
        },
        "System.Buffers/4.5.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-pL2ChpaRRWI/p4LXyy4RgeWlYF2sgfj/pnVMvBqwNFr5cXg7CXNnWZWxrOONLg8VGdFB8oB+EG2Qw4MLgTOe+A==",
          "path": "system.buffers/4.5.0",
          "hashPath": "system.buffers.4.5.0.nupkg.sha512"
        },
        "System.Configuration.ConfigurationManager/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-/anOTeSZCNNI2zDilogWrZ8pNqCmYbzGNexUnNhjW8k0sHqEZ2nHJBp147jBV3hGYswu5lINpNg1vxR7bnqvVA==",
          "path": "system.configuration.configurationmanager/4.7.0",
          "hashPath": "system.configuration.configurationmanager.4.7.0.nupkg.sha512"
        },
        "System.Diagnostics.PerformanceCounter/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-kE9szT4i3TYT9bDE/BPfzg9/BL6enMiZlcUmnUEBrhRtxWvurKoa8qhXkLTRhrxMzBqaDleWlRfIPE02tulU+w==",
          "path": "system.diagnostics.performancecounter/4.7.0",
          "hashPath": "system.diagnostics.performancecounter.4.7.0.nupkg.sha512"
        },
        "System.Drawing.Common/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-v+XbyYHaZjDfn0ENmJEV1VYLgGgCTx1gnfOBcppowbpOAriglYgGCvFCPr2EEZyBvXlpxbEsTwkOlInl107ahA==",
          "path": "system.drawing.common/4.7.0",
          "hashPath": "system.drawing.common.4.7.0.nupkg.sha512"
        },
        "System.Security.AccessControl/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-JECvTt5aFF3WT3gHpfofL2MNNP6v84sxtXxpqhLBCcDRzqsPBmHhQ6shv4DwwN2tRlzsUxtb3G9M3763rbXKDg==",
          "path": "system.security.accesscontrol/4.7.0",
          "hashPath": "system.security.accesscontrol.4.7.0.nupkg.sha512"
        },
        "System.Security.Cryptography.ProtectedData/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-ehYW0m9ptxpGWvE4zgqongBVWpSDU/JCFD4K7krxkQwSz/sFQjEXCUqpvencjy6DYDbn7Ig09R8GFffu8TtneQ==",
          "path": "system.security.cryptography.protecteddata/4.7.0",
          "hashPath": "system.security.cryptography.protecteddata.4.7.0.nupkg.sha512"
        },
        "System.Security.Permissions/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-dkOV6YYVBnYRa15/yv004eCGRBVADXw8qRbbNiCn/XpdJSUXkkUeIvdvFHkvnko4CdKMqG8yRHC4ox83LSlMsQ==",
          "path": "system.security.permissions/4.7.0",
          "hashPath": "system.security.permissions.4.7.0.nupkg.sha512"
        },
        "System.Security.Principal.Windows/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-ojD0PX0XhneCsUbAZVKdb7h/70vyYMDYs85lwEI+LngEONe/17A0cFaRFqZU+sOEidcVswYWikYOQ9PPfjlbtQ==",
          "path": "system.security.principal.windows/4.7.0",
          "hashPath": "system.security.principal.windows.4.7.0.nupkg.sha512"
        },
        "System.Text.Encoding.CodePages/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-aeu4FlaUTemuT1qOd1MyU4T516QR4Fy+9yDbwWMPHOHy7U8FD6SgTzdZFO7gHcfAPHtECqInbwklVvUK4RHcNg==",
          "path": "system.text.encoding.codepages/4.7.0",
          "hashPath": "system.text.encoding.codepages.4.7.0.nupkg.sha512"
        },
        "System.Windows.Extensions/4.7.0": {
          "type": "package",
          "serviceable": true,
          "sha512": "sha512-CeWTdRNfRaSh0pm2gDTJFwVaXfTq6Xwv/sA887iwPTneW7oMtMlpvDIO+U60+3GWTB7Aom6oQwv5VZVUhQRdPQ==",
          "path": "system.windows.extensions/4.7.0",
          "hashPath": "system.windows.extensions.4.7.0.nupkg.sha512"
        }
      }
    }

    Но стоит грохнуть WebOne.deps.json, как (по крайней мере на ПК, где разрабатываю) начинает работать вообще без внешних dll файлов.
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    profesor08, на что тогда .NET Core Runtime?
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    twobomb, вот как раз конвертер и лежит, чтобы не завязываться на System.Drawing. Там вообще у меня используется по минимуму. System.IO, System.Net, System.Text, System.Diagnostics.PerfomanceCounter и прочая ерунда, которая все равно лежит у всех в System.dll. Программа консольная, полнейший примитив. По названию гуглится на GitHub.
  • Как собрать лёгкую сборку приложения .NET Core?

    @ATauenis Автор вопроса
    Нашёл. Основной дистрибутив делать с --self-contained false.
    dotnet publish -r платформа*разрядность -c Release --self-contained false

    А можно как-то сделать этот --self-contained false параметром по умолчанию? Дело в том, что дальше собираю пакет через dotnet-packaging:
    dotnet zip --no-restore -c Release -r win-x64
    dotnet deb --no-restore -c Release -r linux-x64

    И эта шняга не понимает аргумента "--self-contained false", все равно гонит полный набор из 204 файла (всякие System.*.dll).