diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index f5827b7..2dd9e88 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -3,7 +3,7 @@ "isRoot": true, "tools": { "fantomas": { - "version": "5.2.0-alpha-010", + "version": "6.3.10", "commands": [ "fantomas" ] diff --git a/.editorconfig b/.editorconfig index 48c07e5..e207c42 100644 --- a/.editorconfig +++ b/.editorconfig @@ -2,7 +2,6 @@ root=true [*] charset=utf-8 -end_of_line=crlf trim_trailing_whitespace=true insert_final_newline=true indent_style=space @@ -24,7 +23,7 @@ fsharp_space_before_class_constructor=true fsharp_space_before_member=true fsharp_space_before_colon=true fsharp_space_before_semicolon=true -fsharp_multiline_block_brackets_on_same_column=true +fsharp_multiline_bracket_style=aligned fsharp_newline_between_type_definition_and_members=true fsharp_align_function_signature_to_indentation=true fsharp_alternative_long_member_definitions=true diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 966cafc..6f3cac9 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,7 +1,4 @@ -# To get started with Dependabot version updates, you'll need to specify which -# package ecosystems to update and where the package manifests are located. -# Please see the documentation for all configuration options: -# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates +# yaml-language-server: $schema=https://json.schemastore.org/dependabot-2.0.json version: 2 updates: diff --git a/.github/workflows/dotnet.yaml b/.github/workflows/dotnet.yaml index aed42f1..44f1539 100644 --- a/.github/workflows/dotnet.yaml +++ b/.github/workflows/dotnet.yaml @@ -91,7 +91,10 @@ jobs: run: nix develop --command markdown-link-check README.md all-required-checks-complete: + if: ${{ always() }} needs: [check-dotnet-format, check-nix-format, build, build-nix, linkcheck] runs-on: ubuntu-latest steps: - - run: echo "All required checks complete." + - uses: Smaug123/all-required-checks-complete-action@05b40a8c47ef0b175ea326e9abb09802cb67b44e + with: + needs-context: ${{ toJSON(needs) }} diff --git a/Reactivation.Test/Reactivation.Test.fsproj b/Reactivation.Test/Reactivation.Test.fsproj index 8f3ad12..dba970d 100644 --- a/Reactivation.Test/Reactivation.Test.fsproj +++ b/Reactivation.Test/Reactivation.Test.fsproj @@ -1,10 +1,8 @@ - net7.0 - + net8.0 false - Reactivation.Test @@ -12,13 +10,11 @@ - - - - - - - + + + + + diff --git a/Reactivation/Program.fs b/Reactivation/Program.fs index 84ca748..02308a0 100644 --- a/Reactivation/Program.fs +++ b/Reactivation/Program.fs @@ -1,4 +1,4 @@ -namespace Reactivation +namespace Reactivation open System.Collections.Generic open System.Collections.Immutable diff --git a/flake.lock b/flake.lock index cb83bee..b7878fa 100644 --- a/flake.lock +++ b/flake.lock @@ -1,12 +1,15 @@ { "nodes": { "flake-utils": { + "inputs": { + "systems": "systems" + }, "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -17,11 +20,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1673631141, - "narHash": "sha256-AprpYQ5JvLS4wQG/ghm2UriZ9QZXvAwh1HlgA/6ZEVQ=", + "lastModified": 1720768451, + "narHash": "sha256-EYekUHJE2gxeo2pM/zM9Wlqw1Uw2XTJXOSAO79ksc4Y=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "befc83905c965adfd33e5cae49acb0351f6e0404", + "rev": "7e7c39ea35c5cdd002cd4588b03a3fb9ece6fad9", "type": "github" }, "original": { @@ -35,6 +38,21 @@ "flake-utils": "flake-utils", "nixpkgs": "nixpkgs" } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 4c046cc..b75659c 100644 --- a/flake.nix +++ b/flake.nix @@ -18,10 +18,10 @@ projectFile = "./Reactivation/Reactivation.fsproj"; testProjectFile = "./Reactivation.Test/Reactivation.Test.fsproj"; pname = "reactivation"; - dotnet-sdk = pkgs.dotnet-sdk_7; - dotnet-runtime = pkgs.dotnetCorePackages.runtime_7_0; + dotnet-sdk = pkgs.dotnet-sdk_8; + dotnet-runtime = pkgs.dotnetCorePackages.runtime_8_0; version = "0.0.1"; - dotnetTool = toolName: toolVersion: sha256: + dotnetTool = toolName: toolVersion: hash: pkgs.stdenvNoCC.mkDerivation rec { name = toolName; version = toolVersion; @@ -29,7 +29,7 @@ src = pkgs.fetchNuGet { pname = name; version = version; - sha256 = sha256; + hash = hash; installPhase = ''mkdir -p $out/bin && cp -r tools/net6.0/any/* $out/bin''; }; installPhase = '' @@ -42,31 +42,14 @@ }; in { packages = { - fantomas = dotnetTool "fantomas" "5.2.0-alpha-010" "sha256-CuoROZBBhaK0IFjbKNLvzgX4GXwuIybqIvCtuqROBMk="; - fetchDeps = let - flags = []; - runtimeIds = map (system: pkgs.dotnetCorePackages.systemToDotnetRid system) dotnet-sdk.meta.platforms; - in - pkgs.writeShellScriptBin "fetch-${pname}-deps" (builtins.readFile (pkgs.substituteAll { - src = ./nix/fetchDeps.sh; - pname = pname; - binPath = pkgs.lib.makeBinPath [pkgs.coreutils dotnet-sdk (pkgs.nuget-to-nix.override {inherit dotnet-sdk;})]; - projectFiles = toString (pkgs.lib.toList projectFile); - testProjectFiles = toString (pkgs.lib.toList testProjectFile); - rids = pkgs.lib.concatStringsSep "\" \"" runtimeIds; - packages = dotnet-sdk.packages; - storeSrc = pkgs.srcOnly { - src = ./.; - pname = pname; - version = version; - }; - })); + fantomas = dotnetTool "fantomas" (builtins.fromJSON (builtins.readFile ./.config/dotnet-tools.json)).tools.fantomas.version (builtins.head (builtins.filter (elem: elem.pname == "fantomas") ((import ./nix/deps.nix) {fetchNuGet = x: x;}))).hash; default = pkgs.buildDotnetModule { pname = pname; version = version; src = ./.; projectFile = projectFile; - nugetDeps = ./nix/deps.nix; + testProjectFile = testProjectFile; + nugetDeps = ./nix/deps.nix; # `nix build .#default.passthru.fetch-deps && ./result` and put the result here doCheck = true; dotnet-sdk = dotnet-sdk; dotnet-runtime = dotnet-runtime; @@ -80,7 +63,7 @@ }; devShells = { default = pkgs.mkShell { - buildInputs = [pkgs.dotnet-sdk_7 pkgs.git pkgs.alejandra pkgs.nodePackages.markdown-link-check]; + buildInputs = [dotnet-sdk pkgs.git pkgs.alejandra pkgs.nodePackages.markdown-link-check]; }; }; } diff --git a/nix/deps.nix b/nix/deps.nix index f5ec642..0a75857 100644 --- a/nix/deps.nix +++ b/nix/deps.nix @@ -1,364 +1,129 @@ # This file was automatically generated by passthru.fetch-deps. -# Please don't edit it manually, your changes might get overwritten! +# Please dont edit it manually, your changes might get overwritten! {fetchNuGet}: [ (fetchNuGet { - pname = "coverlet.collector"; - version = "3.1.2"; - sha256 = "0gsk2q93qw7pqxwd4pdyq5364wz0lvldcqqnf4amz13jaq86idmz"; + pname = "fantomas"; + version = "6.3.10"; + hash = "sha256-2m4YevDp9CRm/Ci2hguDXd6DUMElRg3hNAne9LHntWM="; }) (fetchNuGet { pname = "FsCheck"; - version = "2.16.5"; - sha256 = "0h0k91myra1ricvmlvn27wp3kdr7ib3q55yg5isk6206wh9yhigr"; - }) - (fetchNuGet { - pname = "FSharp.Core"; - version = "7.0.0"; - sha256 = "1pgk3qk9p1s53wvja17744x4bf7zs3a3wf0dmxi66w1w06z7i85x"; + version = "3.0.0-rc3"; + hash = "sha256-4Z9Qv+vccrXWh2Fjdwdmjc1YgW+Dcx73ESkdAnHqxOY="; }) (fetchNuGet { pname = "FsUnit"; - version = "5.2.0"; - sha256 = "0l4n453slnynp8x372618yx6gjwywfai1dyl4m5iyw87d0iam7q3"; + version = "6.0.0"; + hash = "sha256-q87WQf6MqGhzvaQ7WkkUlCdoE94DY0CD5PaXEj64A6M="; + }) + (fetchNuGet { + pname = "Microsoft.AspNetCore.App.Ref"; + version = "7.0.20"; + hash = "sha256-OEDXXjQ1HDRPiA4Y1zPr1xUeH6wlzTCJpts+DZL61wI="; + }) + (fetchNuGet { + pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; + version = "7.0.20"; + hash = "sha256-ewal9R6o20GV0R02ylSijVFdWZAbdN8TK1PCc/ltHBQ="; + }) + (fetchNuGet { + pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; + version = "7.0.20"; + hash = "sha256-vq59xMfrET8InzUhkAsbs2xp3ML+SO9POsbwAiYKzkA="; + }) + (fetchNuGet { + pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; + version = "7.0.20"; + hash = "sha256-PHBb0AuRpB8kkQvQJIJSLu5Ub/U2pYA0wMGBarUkS8o="; + }) + (fetchNuGet { + pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; + version = "7.0.20"; + hash = "sha256-+MQMRFzfG2CbNJnfw0buP4VorL2yR+T4UeEBSbKSmPY="; }) (fetchNuGet { pname = "Microsoft.CodeCoverage"; - version = "17.3.2"; - sha256 = "1f05l2vm8inlwhk36lfbyszjlcnvdd2qw2832npaah0dldn6dz00"; - }) - (fetchNuGet { - pname = "Microsoft.CSharp"; - version = "4.0.1"; - sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; + version = "17.10.0"; + hash = "sha256-yQFwqVChRtIRpbtkJr92JH2i+O7xn91NGbYgnKs8G2g="; }) (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; - version = "17.3.2"; - sha256 = "0pm06nxqi8aw04lciqy7iz8ln1qm5mx06cpwgqa2dfwvnjp7zxnm"; + version = "17.10.0"; + hash = "sha256-rkHIqB2mquNXF89XBTFpUL2z5msjTBsOcyjSBCh36I0="; }) (fetchNuGet { - pname = "Microsoft.NETCore.Platforms"; - version = "1.0.1"; - sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; + pname = "Microsoft.NETCore.App.Host.linux-arm64"; + version = "7.0.20"; + hash = "sha256-/20dMbO1Ft0WVhl+Lv1916Thvr4kPP9LuuX4bKE+czE="; }) (fetchNuGet { - pname = "Microsoft.NETCore.Platforms"; - version = "1.1.0"; - sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; + pname = "Microsoft.NETCore.App.Host.linux-x64"; + version = "7.0.20"; + hash = "sha256-Y1Dg8Sqhya86xD+9aJOuznT4mJUyFmoF/YZc0+5LBdc="; }) (fetchNuGet { - pname = "Microsoft.NETCore.Targets"; - version = "1.0.1"; - sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; + pname = "Microsoft.NETCore.App.Host.osx-arm64"; + version = "7.0.20"; + hash = "sha256-MTyRTWhDmMaCsNorju/tLb0w+ssKydDX/NBFzSfqB0Q="; + }) + (fetchNuGet { + pname = "Microsoft.NETCore.App.Host.osx-x64"; + version = "7.0.20"; + hash = "sha256-DdumMpP5QN0rPDsB8sjxACM13mT7Wbb0w3LaCe96twc="; + }) + (fetchNuGet { + pname = "Microsoft.NETCore.App.Ref"; + version = "7.0.20"; + hash = "sha256-W9RU3bja4BQLAbsaIhANQPJJh6DycDiBR+WZ3mK6Zrs="; + }) + (fetchNuGet { + pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; + version = "7.0.20"; + hash = "sha256-TemMvbNrDzJVHWwxVgnNN2CnTyI6TcvvZDpF4ts6IAw="; + }) + (fetchNuGet { + pname = "Microsoft.NETCore.App.Runtime.linux-x64"; + version = "7.0.20"; + hash = "sha256-L+WaGvoXVMT3tZ7R5xFE06zaLcC3SI7LEf4ATBkUAGQ="; + }) + (fetchNuGet { + pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; + version = "7.0.20"; + hash = "sha256-VHmF1/ObK5hxGYvm5/+pTdketHnxxcnAGK5RaTQpVqE="; + }) + (fetchNuGet { + pname = "Microsoft.NETCore.App.Runtime.osx-x64"; + version = "7.0.20"; + hash = "sha256-yktNSySitxWbO6LjcxUuewWFMF2EbcoM2w18CqxmVlc="; }) (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; - version = "17.3.2"; - sha256 = "0bs38r5kdw1xpbjbi5l82xbhfnfbzr5xhg5520lk05pg914d1ln1"; + version = "17.10.0"; + hash = "sha256-3YjVGK2zEObksBGYg8b/CqoJgLQ1jUv4GCWNjDhLRh4="; }) (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; - version = "17.3.2"; - sha256 = "089nmaxzvm5xcf20pm4iiavz2k6lwh69r51xlbqg0ry605mnl869"; - }) - (fetchNuGet { - pname = "NETStandard.Library"; - version = "2.0.0"; - sha256 = "1bc4ba8ahgk15m8k4nd7x406nhi0kwqzbgjk2dmw52ss553xz7iy"; + version = "17.10.0"; + hash = "sha256-+yzP3FY6WoOosSpYnB7duZLhOPUZMQYy8zJ1d3Q4hK4="; }) (fetchNuGet { pname = "Newtonsoft.Json"; - version = "9.0.1"; - sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r"; - }) - (fetchNuGet { - pname = "NuGet.Frameworks"; - version = "5.11.0"; - sha256 = "0wv26gq39hfqw9md32amr5771s73f5zn1z9vs4y77cgynxr73s4z"; + version = "13.0.1"; + hash = "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo="; }) (fetchNuGet { pname = "NUnit"; - version = "3.13.3"; - sha256 = "0wdzfkygqnr73s6lpxg5b1pwaqz9f414fxpvpdmf72bvh4jaqzv6"; - }) - (fetchNuGet { - pname = "NUnit.Analyzers"; - version = "3.3.0"; - sha256 = "00wp5q361f845aywrhhfbrpwd2srgygiam30pvn846b5dbl41vy0"; + version = "4.1.0"; + hash = "sha256-srzj0lf2ReKw41TnigZwf8rqKKNzGRRVrgN3hR/vRjo="; }) (fetchNuGet { pname = "NUnit3TestAdapter"; - version = "4.2.1"; - sha256 = "0gildh4xcb6gkxcrrgh5a1j7lq0a7l670jpbs71akl5b5bgy5gc3"; - }) - (fetchNuGet { - pname = "runtime.any.System.Collections"; - version = "4.0.11"; - sha256 = "1x44bm1cgv28zmrp095wf9mn8a6a0ivnzp9v14dcbhx06igxzgg0"; - }) - (fetchNuGet { - pname = "runtime.any.System.Diagnostics.Tools"; - version = "4.0.1"; - sha256 = "0qcpm90hrm9gx9pmxlvfml65jm0bwpr5dg3r7l7xm9nvmibvc7n7"; - }) - (fetchNuGet { - pname = "runtime.any.System.Globalization"; - version = "4.0.11"; - sha256 = "0240rp66pi5bw1xklmh421hj7arwcdmjmgfkiq1cbc6nrm8ah286"; - }) - (fetchNuGet { - pname = "runtime.any.System.IO"; - version = "4.1.0"; - sha256 = "0kasfkjiml2kk8prnyn1990nhsahnjggvqwszqjdsfwfl43vpcb5"; - }) - (fetchNuGet { - pname = "runtime.any.System.Reflection"; - version = "4.1.0"; - sha256 = "06kcs059d5czyakx75rvlwa2mr86156w18fs7chd03f7084l7mq6"; - }) - (fetchNuGet { - pname = "runtime.any.System.Reflection.Extensions"; - version = "4.0.1"; - sha256 = "05k34ijz9g9csh0vbbv3g3lrxl163izwcfncmbcl7k073h32rzkr"; - }) - (fetchNuGet { - pname = "runtime.any.System.Reflection.Primitives"; - version = "4.0.1"; - sha256 = "1zxrpvixr5fqzkxpnin6g6gjq6xajy1snghz99ds2dwbhm276rhz"; - }) - (fetchNuGet { - pname = "runtime.any.System.Resources.ResourceManager"; - version = "4.0.1"; - sha256 = "1jmgs7hynb2rff48623wnyb37558bbh1q28k9c249j5r5sgsr5kr"; - }) - (fetchNuGet { - pname = "runtime.any.System.Runtime"; - version = "4.1.0"; - sha256 = "0mjr2bi7wvnkphfjqgkyf8vfyvy15a829jz6mivl6jmksh2bx40m"; - }) - (fetchNuGet { - pname = "runtime.any.System.Runtime.Handles"; - version = "4.0.1"; - sha256 = "1kswgqhy34qvc49i981fk711s7knd6z13bp0rin8ms6axkh98nas"; - }) - (fetchNuGet { - pname = "runtime.any.System.Runtime.InteropServices"; - version = "4.1.0"; - sha256 = "0gm8if0hcmp1qys1wmx4970k2x62pqvldgljsyzbjhiy5644vl8z"; - }) - (fetchNuGet { - pname = "runtime.any.System.Text.Encoding"; - version = "4.0.11"; - sha256 = "0m4vgmzi1ky8xlj0r7xcyazxln3j9dlialnk6d2gmgrfnzf8f9m7"; - }) - (fetchNuGet { - pname = "runtime.any.System.Text.Encoding.Extensions"; - version = "4.0.11"; - sha256 = "0d1rxxpvg9v7wlibsfgz0r4hwigpadas822qf8m8fs1gma9gs877"; - }) - (fetchNuGet { - pname = "runtime.any.System.Threading.Tasks"; - version = "4.0.11"; - sha256 = "1qzdp09qs8br5qxzlm1lgbjn4n57fk8vr1lzrmli2ysdg6x1xzvk"; - }) - (fetchNuGet { - pname = "runtime.native.System"; - version = "4.0.0"; - sha256 = "1ppk69xk59ggacj9n7g6fyxvzmk1g5p4fkijm0d7xqfkig98qrkf"; - }) - (fetchNuGet { - pname = "runtime.native.System.Security.Cryptography"; - version = "4.0.0"; - sha256 = "0k57aa2c3b10wl3hfqbgrl7xq7g8hh3a3ir44b31dn5p61iiw3z9"; - }) - (fetchNuGet { - pname = "runtime.unix.System.Diagnostics.Debug"; - version = "4.0.11"; - sha256 = "05ndbai4vpqrry0ghbfgqc8xblmplwjgndxmdn1zklqimczwjg2d"; - }) - (fetchNuGet { - pname = "runtime.unix.System.IO.FileSystem"; - version = "4.0.1"; - sha256 = "02wnlydnbhai0zy7c3kihg0cis0l1b2z78kyi1ci47c5v0jklwha"; - }) - (fetchNuGet { - pname = "runtime.unix.System.Private.Uri"; - version = "4.0.1"; - sha256 = "0ic5dgc45jkhcr1g9xmmzjm7ffiw4cymm0fprczlx4fnww4783nm"; - }) - (fetchNuGet { - pname = "runtime.unix.System.Runtime.Extensions"; - version = "4.1.0"; - sha256 = "0x1cwd7cvifzmn5x1wafvj75zdxlk3mxy860igh3x1wx0s8167y4"; - }) - (fetchNuGet { - pname = "System.Collections"; - version = "4.0.11"; - sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; - }) - (fetchNuGet { - pname = "System.Diagnostics.Debug"; - version = "4.0.11"; - sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; - }) - (fetchNuGet { - pname = "System.Diagnostics.Tools"; - version = "4.0.1"; - sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; - }) - (fetchNuGet { - pname = "System.Dynamic.Runtime"; - version = "4.0.11"; - sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; - }) - (fetchNuGet { - pname = "System.Globalization"; - version = "4.0.11"; - sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; - }) - (fetchNuGet { - pname = "System.IO"; - version = "4.1.0"; - sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; - }) - (fetchNuGet { - pname = "System.IO.FileSystem"; - version = "4.0.1"; - sha256 = "0kgfpw6w4djqra3w5crrg8xivbanh1w9dh3qapb28q060wb9flp1"; - }) - (fetchNuGet { - pname = "System.IO.FileSystem.Primitives"; - version = "4.0.1"; - sha256 = "1s0mniajj3lvbyf7vfb5shp4ink5yibsx945k6lvxa96r8la1612"; - }) - (fetchNuGet { - pname = "System.Linq"; - version = "4.1.0"; - sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; - }) - (fetchNuGet { - pname = "System.Linq.Expressions"; - version = "4.1.0"; - sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; - }) - (fetchNuGet { - pname = "System.ObjectModel"; - version = "4.0.12"; - sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; - }) - (fetchNuGet { - pname = "System.Private.Uri"; - version = "4.0.1"; - sha256 = "0k57qhawjysm4cpbfpc49kl4av7lji310kjcamkl23bwgij5ld9j"; - }) - (fetchNuGet { - pname = "System.Reflection"; - version = "4.1.0"; - sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; - }) - (fetchNuGet { - pname = "System.Reflection.Emit"; - version = "4.0.1"; - sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; - }) - (fetchNuGet { - pname = "System.Reflection.Emit.ILGeneration"; - version = "4.0.1"; - sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0"; - }) - (fetchNuGet { - pname = "System.Reflection.Emit.Lightweight"; - version = "4.0.1"; - sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr"; - }) - (fetchNuGet { - pname = "System.Reflection.Extensions"; - version = "4.0.1"; - sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn"; + version = "4.5.0"; + hash = "sha256-ER3ogl0L5FYyc6pVVPY1ch+AQxG/WgFcnWECnYQJPes="; }) (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.6.0"; - sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4"; - }) - (fetchNuGet { - pname = "System.Reflection.Primitives"; - version = "4.0.1"; - sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28"; - }) - (fetchNuGet { - pname = "System.Reflection.TypeExtensions"; - version = "4.1.0"; - sha256 = "1bjli8a7sc7jlxqgcagl9nh8axzfl11f4ld3rjqsyxc516iijij7"; - }) - (fetchNuGet { - pname = "System.Resources.ResourceManager"; - version = "4.0.1"; - sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi"; - }) - (fetchNuGet { - pname = "System.Runtime"; - version = "4.1.0"; - sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m"; - }) - (fetchNuGet { - pname = "System.Runtime.Extensions"; - version = "4.1.0"; - sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z"; - }) - (fetchNuGet { - pname = "System.Runtime.Handles"; - version = "4.0.1"; - sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g"; - }) - (fetchNuGet { - pname = "System.Runtime.InteropServices"; - version = "4.1.0"; - sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; - }) - (fetchNuGet { - pname = "System.Runtime.Serialization.Primitives"; - version = "4.1.1"; - sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; - }) - (fetchNuGet { - pname = "System.Text.Encoding"; - version = "4.0.11"; - sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; - }) - (fetchNuGet { - pname = "System.Text.Encoding.Extensions"; - version = "4.0.11"; - sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs"; - }) - (fetchNuGet { - pname = "System.Text.RegularExpressions"; - version = "4.1.0"; - sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7"; - }) - (fetchNuGet { - pname = "System.Threading"; - version = "4.0.11"; - sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; - }) - (fetchNuGet { - pname = "System.Threading.Tasks"; - version = "4.0.11"; - sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; - }) - (fetchNuGet { - pname = "System.Threading.Tasks.Extensions"; - version = "4.0.0"; - sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; - }) - (fetchNuGet { - pname = "System.Xml.ReaderWriter"; - version = "4.0.11"; - sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; - }) - (fetchNuGet { - pname = "System.Xml.XDocument"; - version = "4.0.11"; - sha256 = "0n4lvpqzy9kc7qy1a4acwwd7b7pnvygv895az5640idl2y9zbz18"; + hash = "sha256-JJfgaPav7UfEh4yRAQdGhLZF1brr0tUWPl6qmfNWq/E="; }) ] diff --git a/nix/fetchDeps.sh b/nix/fetchDeps.sh deleted file mode 100644 index e15b822..0000000 --- a/nix/fetchDeps.sh +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash - -# This file was adapted from -# https://github.com/NixOS/nixpkgs/blob/b981d811453ab84fb3ea593a9b33b960f1ab9147/pkgs/build-support/dotnet/build-dotnet-module/default.nix#L173 -set -euo pipefail -export PATH="@binPath@" -for arg in "$@"; do - case "$arg" in - --keep-sources|-k) - keepSources=1 - shift - ;; - --help|-h) - echo "usage: $0 [--keep-sources] [--help] " - echo " The path to write the lockfile to. A temporary file is used if this is not set" - echo " --keep-sources Don't remove temporary directories upon exit, useful for debugging" - echo " --help Show this help message" - exit - ;; - esac -done -tmp=$(mktemp -td "@pname@-tmp-XXXXXX") -export tmp -HOME=$tmp/home -exitTrap() { - test -n "${ranTrap-}" && return - ranTrap=1 - if test -n "${keepSources-}"; then - echo -e "Path to the source: $tmp/src\nPath to the fake home: $tmp/home" - else - rm -rf "$tmp" - fi - # Since mktemp is used this will be empty if the script didnt succesfully complete - if ! test -s "$depsFile"; then - rm -rf "$depsFile" - fi -} -trap exitTrap EXIT INT TERM -dotnetRestore() { - local -r project="${1-}" - local -r rid="$2" - dotnet restore "${project-}" \ - -p:ContinuousIntegrationBuild=true \ - -p:Deterministic=true \ - --packages "$tmp/nuget_pkgs" \ - --runtime "$rid" \ - --no-cache \ - --force -} -declare -a projectFiles=( @projectFiles@ ) -declare -a testProjectFiles=( @testProjectFiles@ ) -export DOTNET_NOLOGO=1 -export DOTNET_CLI_TELEMETRY_OPTOUT=1 -depsFile=$(realpath "${1:-$(mktemp -t "@pname@-deps-XXXXXX.nix")}") -mkdir -p "$tmp/nuget_pkgs" -storeSrc="@storeSrc@" -src="$tmp/src" -cp -rT "$storeSrc" "$src" -chmod -R +w "$src" -cd "$src" -echo "Restoring project..." -rids=("@rids@") -for rid in "${rids[@]}"; do - (( ${#projectFiles[@]} == 0 )) && dotnetRestore "" "$rid" - for project in "${projectFiles[@]-}" "${testProjectFiles[@]-}"; do - dotnetRestore "$project" "$rid" - done -done -echo "Successfully restored project" -echo "Writing lockfile..." -echo -e "# This file was automatically generated by passthru.fetch-deps.\n# Please don't edit it manually, your changes might get overwritten!\n" > "$depsFile" -nuget-to-nix "$tmp/nuget_pkgs" "@packages@" >> "$depsFile" -echo "Successfully wrote lockfile to $depsFile"