diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index a6be162cda..2946ef28c1 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -13,7 +13,7 @@ on: - 'v**' env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 448943a949..3e38d2d98e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ on: - 'v**' env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index f7be868fdf..d4babec2d7 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -13,7 +13,7 @@ on: - 'v**' env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} diff --git a/.github/workflows/compatibility-check-template.yml b/.github/workflows/compatibility-check-template.yml index af979a1224..0bb57d5a58 100644 --- a/.github/workflows/compatibility-check-template.yml +++ b/.github/workflows/compatibility-check-template.yml @@ -21,7 +21,7 @@ on: required: true env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ inputs.base-branch || github.run_id }}-${{ inputs.chain }} diff --git a/.github/workflows/compatibility-check.yml b/.github/workflows/compatibility-check.yml index fd7b6a12c1..2be88025c5 100644 --- a/.github/workflows/compatibility-check.yml +++ b/.github/workflows/compatibility-check.yml @@ -23,7 +23,7 @@ on: - 'v**' env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ inputs.base || github.run_id }} diff --git a/.github/workflows/downstream.yml b/.github/workflows/downstream.yml index 060acbbf47..d7fe718e91 100644 --- a/.github/workflows/downstream.yml +++ b/.github/workflows/downstream.yml @@ -13,7 +13,7 @@ on: - 'v**' env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d79b11148c..e7182cc4aa 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,7 +20,7 @@ on: default: 'master' env: - GO_VERSION: '1.20' + GO_VERSION: '1.22' concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} diff --git a/Makefile b/Makefile index c8e88cd637..f9234e7304 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # # Cadence - The resource-oriented smart contract programming language # -# Copyright Dapper Labs, Inc. +# Copyright Flow Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/NOTICE b/NOTICE index 7000ce2753..8694e491da 100644 --- a/NOTICE +++ b/NOTICE @@ -1,4 +1,4 @@ Cadence -Copyright 2019-2023 Dapper Labs, Inc. +Copyright 2019-2024 Flow Foundation -This product includes software developed at Dapper Labs, Inc. (https://www.dapperlabs.com/). +This product includes software developed at the Flow Foundation (https://flow.com/flow-foundation). diff --git a/encoding/ccf/bench_test.go b/encoding/ccf/bench_test.go index 37a81dc72f..3b30cef5e3 100644 --- a/encoding/ccf/bench_test.go +++ b/encoding/ccf/bench_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/ccf.go b/encoding/ccf/ccf.go index 2f0f54d177..8fcc83c697 100644 --- a/encoding/ccf/ccf.go +++ b/encoding/ccf/ccf.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/ccf_test.go b/encoding/ccf/ccf_test.go index 8b060bd803..d3e4d2062d 100644 --- a/encoding/ccf/ccf_test.go +++ b/encoding/ccf/ccf_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/ccf_type_id.go b/encoding/ccf/ccf_type_id.go index 6222b693df..91f52bc73d 100644 --- a/encoding/ccf/ccf_type_id.go +++ b/encoding/ccf/ccf_type_id.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/ccf_type_id_test.go b/encoding/ccf/ccf_type_id_test.go index 5a94ff4539..1e84004e8f 100644 --- a/encoding/ccf/ccf_type_id_test.go +++ b/encoding/ccf/ccf_type_id_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/consts.go b/encoding/ccf/consts.go index 5512f37d2b..a3d642b7c0 100644 --- a/encoding/ccf/consts.go +++ b/encoding/ccf/consts.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/decode.go b/encoding/ccf/decode.go index da42ea7df3..e0f4b60fe2 100644 --- a/encoding/ccf/decode.go +++ b/encoding/ccf/decode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/decode_type.go b/encoding/ccf/decode_type.go index 9e5d041857..97ca958718 100644 --- a/encoding/ccf/decode_type.go +++ b/encoding/ccf/decode_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/decode_typedef.go b/encoding/ccf/decode_typedef.go index 424dc58766..5221211b5c 100644 --- a/encoding/ccf/decode_typedef.go +++ b/encoding/ccf/decode_typedef.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/encode.go b/encoding/ccf/encode.go index 854ccae024..8feb208515 100644 --- a/encoding/ccf/encode.go +++ b/encoding/ccf/encode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/encode_type.go b/encoding/ccf/encode_type.go index 16f405a977..6cec19e9bc 100644 --- a/encoding/ccf/encode_type.go +++ b/encoding/ccf/encode_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/encode_typedef.go b/encoding/ccf/encode_typedef.go index d34d9148cb..50897e5731 100644 --- a/encoding/ccf/encode_typedef.go +++ b/encoding/ccf/encode_typedef.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/service_events_test.go b/encoding/ccf/service_events_test.go index e57e5671c4..b5244db5fb 100644 --- a/encoding/ccf/service_events_test.go +++ b/encoding/ccf/service_events_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/simpletype.go b/encoding/ccf/simpletype.go index 6cccd03e03..ec80866428 100644 --- a/encoding/ccf/simpletype.go +++ b/encoding/ccf/simpletype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/simpletype_test.go b/encoding/ccf/simpletype_test.go index 3259b37601..ea4e2d0b0d 100644 --- a/encoding/ccf/simpletype_test.go +++ b/encoding/ccf/simpletype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/sort.go b/encoding/ccf/sort.go index 215f361df3..78e22dc2f3 100644 --- a/encoding/ccf/sort.go +++ b/encoding/ccf/sort.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/ccf/traverse_value.go b/encoding/ccf/traverse_value.go index f9776eb816..3b1208b601 100644 --- a/encoding/ccf/traverse_value.go +++ b/encoding/ccf/traverse_value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/json/decode.go b/encoding/json/decode.go index 54a4207fe7..9e71309baa 100644 --- a/encoding/json/decode.go +++ b/encoding/json/decode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/json/encode.go b/encoding/json/encode.go index 895fe5b614..ebe13a029b 100644 --- a/encoding/json/encode.go +++ b/encoding/json/encode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/json/encoding_test.go b/encoding/json/encoding_test.go index 8f674c4970..8981f1abab 100644 --- a/encoding/json/encoding_test.go +++ b/encoding/json/encoding_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/encoding/json/json.go b/encoding/json/json.go index e53688cd3c..dcd735be1e 100644 --- a/encoding/json/json.go +++ b/encoding/json/json.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/fixedpoint/check.go b/fixedpoint/check.go index 7de388b61e..eda083d3d4 100644 --- a/fixedpoint/check.go +++ b/fixedpoint/check.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/fixedpoint/convert.go b/fixedpoint/convert.go index aa6f73e9ac..2364d465cc 100644 --- a/fixedpoint/convert.go +++ b/fixedpoint/convert.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/fixedpoint/fixedpoint.go b/fixedpoint/fixedpoint.go index b226f1f402..6b7f4f6f40 100644 --- a/fixedpoint/fixedpoint.go +++ b/fixedpoint/fixedpoint.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/fixedpoint/parse.go b/fixedpoint/parse.go index 4fd399ad4c..ffa9964e69 100644 --- a/fixedpoint/parse.go +++ b/fixedpoint/parse.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/fixedpoint/parse_test.go b/fixedpoint/parse_test.go index db963b183b..b860ce2975 100644 --- a/fixedpoint/parse_test.go +++ b/fixedpoint/parse_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/fuzz.go b/fuzz.go index 20a8bc9ffb..f8506c96ea 100644 --- a/fuzz.go +++ b/fuzz.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/go.mod b/go.mod index f1704e1e63..2356f4b502 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/onflow/cadence -go 1.20 +go 1.22 require ( github.com/bits-and-blooms/bitset v1.5.0 diff --git a/go.sum b/go.sum index 61f7813240..dbed9669ce 100644 --- a/go.sum +++ b/go.sum @@ -13,6 +13,7 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/dave/dst v0.27.2 h1:4Y5VFTkhGLC1oddtNwuxxe36pnyLxMFXT51FOzH8Ekc= github.com/dave/dst v0.27.2/go.mod h1:jHh6EOibnHgcUW3WjKHisiooEkYwqpHLBSX1iOBhEyc= github.com/dave/jennifer v1.5.0 h1:HmgPN93bVDpkQyYbqhCHj5QlgvUkvEOzMyEvKLgCRrg= +github.com/dave/jennifer v1.5.0/go.mod h1:4MnyiFIlZS3l5tSDn8VnzE6ffAhYBMB2SZntBsZGUok= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -23,6 +24,7 @@ github.com/fxamacker/circlehash v0.3.0 h1:XKdvTtIJV9t7DDUtsf0RIpC1OcxZtPbmgIH7ek github.com/fxamacker/circlehash v0.3.0/go.mod h1:3aq3OfVvsWtkWMb6A1owjOQFA+TLsD5FgJflnaQwtMM= github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= +github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/itchyny/gojq v0.12.14 h1:6k8vVtsrhQSYgSGg827AD+PVVaB1NLXEdX+dda2oZCc= github.com/itchyny/gojq v0.12.14/go.mod h1:y1G7oO7XkcR1LPZO59KyoCRy08T3j9vDYRV0GgYSS+s= github.com/itchyny/timefmt-go v0.1.5 h1:G0INE2la8S6ru/ZI5JecgyzbbJNs5lG1RcBqa7Jm6GE= @@ -72,6 +74,7 @@ github.com/mattn/go-tty v0.0.3/go.mod h1:ihxohKRERHTVzN+aSVRwACLCeqIoZAWpoICkkvr github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db h1:62I3jR2EmQ4l5rM/4FEfDWcRD+abF5XlKShorW5LRoQ= github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db/go.mod h1:l0dey0ia/Uv7NcFFVbCLtqEBQbrT4OCwCSKTEv6enCw= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/onflow/atree v0.8.0-rc.3 h1:BHVkJLrBHhHo7ET8gkuS1+lyQGNekYYOyoICGK3RFNM= github.com/onflow/atree v0.8.0-rc.3/go.mod h1:7YNAyCd5JENq+NzH+fR1ABUZVzbSq9dkt0+5fZH3L2A= github.com/onflow/crypto v0.25.0 h1:BeWbLsh3ZD13Ej+Uky6kg1PL1ZIVBDVX+2MVBNwqddg= @@ -89,8 +92,10 @@ github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/f github.com/schollz/progressbar/v3 v3.13.1 h1:o8rySDYiQ59Mwzy2FELeHY5ZARXZTVJC7iHD6PEFUiE= github.com/schollz/progressbar/v3 v3.13.1/go.mod h1:xvrbki8kfT1fzWzBT/UZd9L6GA+jdL7HAgq2RFnO6fQ= github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= +github.com/sergi/go-diff v1.2.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= @@ -139,6 +144,7 @@ golang.org/x/net v0.0.0-20191109021931-daa7c04131f5/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= +golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -178,9 +184,11 @@ gonum.org/v1/plot v0.0.0-20190515093506-e2840ee46a6b/go.mod h1:Wt8AAjI+ypCyYX3nZ gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b h1:QRR6H1YWRnHb4Y/HeNFCTJLFVxaq6wH4YuVdsUOr75U= +gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= lukechampine.com/blake3 v1.2.1 h1:YuqqRuaqsGV71BV/nm9xlI0MKUv4QC54jQnBChWbGnI= +lukechampine.com/blake3 v1.2.1/go.mod h1:0OFRp7fBtAylGVCO40o87sbupkyIGgbpv1+M1k1LM6k= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= diff --git a/migrations/account_storage.go b/migrations/account_storage.go index e8ba1cab01..b4abb282a6 100644 --- a/migrations/account_storage.go +++ b/migrations/account_storage.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/broken_dictionary.go b/migrations/broken_dictionary.go index a342920770..c1153435f9 100644 --- a/migrations/broken_dictionary.go +++ b/migrations/broken_dictionary.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/cache.go b/migrations/cache.go new file mode 100644 index 0000000000..e36d610edc --- /dev/null +++ b/migrations/cache.go @@ -0,0 +1,79 @@ +/* + * Cadence - The resource-oriented smart contract programming language + * + * Copyright Dapper Labs, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package migrations + +import ( + "sync" + + "github.com/onflow/cadence/runtime/interpreter" +) + +type CachedStaticType struct { + StaticType interpreter.StaticType + Error error +} + +type StaticTypeKey string + +func NewStaticTypeKey(staticType interpreter.StaticType) (StaticTypeKey, error) { + raw, err := interpreter.StaticTypeToBytes(staticType) + if err != nil { + return "", err + } + return StaticTypeKey(raw), nil +} + +type StaticTypeCache interface { + Get(key StaticTypeKey) (CachedStaticType, bool) + Set( + key StaticTypeKey, + staticType interpreter.StaticType, + err error, + ) +} + +type DefaultStaticTypeCache struct { + entries sync.Map +} + +func NewDefaultStaticTypeCache() *DefaultStaticTypeCache { + return &DefaultStaticTypeCache{} +} + +func (c *DefaultStaticTypeCache) Get(key StaticTypeKey) (CachedStaticType, bool) { + v, ok := c.entries.Load(key) + if !ok { + return CachedStaticType{}, false + } + return v.(CachedStaticType), true +} + +func (c *DefaultStaticTypeCache) Set( + key StaticTypeKey, + staticType interpreter.StaticType, + err error, +) { + c.entries.Store( + key, + CachedStaticType{ + StaticType: staticType, + Error: err, + }, + ) +} diff --git a/migrations/capcons/capabilitymigration.go b/migrations/capcons/capabilitymigration.go index 048e8eb6e5..79fa88fd9f 100644 --- a/migrations/capcons/capabilitymigration.go +++ b/migrations/capcons/capabilitymigration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/capcons/error.go b/migrations/capcons/error.go index 4589ebb2ed..e4790c87f2 100644 --- a/migrations/capcons/error.go +++ b/migrations/capcons/error.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/capcons/linkmigration.go b/migrations/capcons/linkmigration.go index 922ef82c5a..7f78c75b3d 100644 --- a/migrations/capcons/linkmigration.go +++ b/migrations/capcons/linkmigration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/capcons/mapping.go b/migrations/capcons/mapping.go index b07386b408..571f024acc 100644 --- a/migrations/capcons/mapping.go +++ b/migrations/capcons/mapping.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/capcons/migration_test.go b/migrations/capcons/migration_test.go index 1cfab46eb0..df674b7674 100644 --- a/migrations/capcons/migration_test.go +++ b/migrations/capcons/migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/capcons/target.go b/migrations/capcons/target.go index fa2f57de38..58350f7900 100644 --- a/migrations/capcons/target.go +++ b/migrations/capcons/target.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/entitlements/migration.go b/migrations/entitlements/migration.go index b58136d05f..94f6b19eeb 100644 --- a/migrations/entitlements/migration.go +++ b/migrations/entitlements/migration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,14 +28,23 @@ import ( ) type EntitlementsMigration struct { - Interpreter *interpreter.Interpreter + Interpreter *interpreter.Interpreter + migratedTypeCache migrations.StaticTypeCache } var _ migrations.ValueMigration = EntitlementsMigration{} func NewEntitlementsMigration(inter *interpreter.Interpreter) EntitlementsMigration { + return NewEntitlementsMigrationWithCache(inter, nil) +} + +func NewEntitlementsMigrationWithCache( + inter *interpreter.Interpreter, + migratedTypeCache migrations.StaticTypeCache, +) EntitlementsMigration { return EntitlementsMigration{ - Interpreter: inter, + Interpreter: inter, + migratedTypeCache: migratedTypeCache, } } @@ -74,6 +83,21 @@ func (m EntitlementsMigration) ConvertToEntitledType( } inter := m.Interpreter + migratedTypeCache := m.migratedTypeCache + + if migratedTypeCache != nil { + // Only cache if cache key generation succeeds. + // Some static types, like function types, are not encodable. + if key, keyErr := migrations.NewStaticTypeKey(staticType); keyErr == nil { + if migratedType, exists := migratedTypeCache.Get(key); exists { + return migratedType.StaticType, migratedType.Error + } + + defer func() { + migratedTypeCache.Set(key, resultType, err) + }() + } + } switch t := staticType.(type) { case *interpreter.ReferenceStaticType: diff --git a/migrations/entitlements/migration_test.go b/migrations/entitlements/migration_test.go index cf2f32223c..a5d4cef6cb 100644 --- a/migrations/entitlements/migration_test.go +++ b/migrations/entitlements/migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_character_value.go b/migrations/legacy_character_value.go index f33c8d8124..b21e5ac481 100644 --- a/migrations/legacy_character_value.go +++ b/migrations/legacy_character_value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_intersection_type.go b/migrations/legacy_intersection_type.go index f89e5075fe..40bc63f08e 100644 --- a/migrations/legacy_intersection_type.go +++ b/migrations/legacy_intersection_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_optional_type.go b/migrations/legacy_optional_type.go index 325be6bcd1..3f1eab1873 100644 --- a/migrations/legacy_optional_type.go +++ b/migrations/legacy_optional_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_primitivestatic_type.go b/migrations/legacy_primitivestatic_type.go index 5cd62a6748..295a996185 100644 --- a/migrations/legacy_primitivestatic_type.go +++ b/migrations/legacy_primitivestatic_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_reference_type.go b/migrations/legacy_reference_type.go index 7d873a4db3..3a150006c3 100644 --- a/migrations/legacy_reference_type.go +++ b/migrations/legacy_reference_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_string_value.go b/migrations/legacy_string_value.go index 9a91ce84e0..ba5b142580 100644 --- a/migrations/legacy_string_value.go +++ b/migrations/legacy_string_value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/legacy_test.go b/migrations/legacy_test.go index 0d1fceadfd..54756aaf0c 100644 --- a/migrations/legacy_test.go +++ b/migrations/legacy_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/migration.go b/migrations/migration.go index c780cb188b..f085fd9d34 100644 --- a/migrations/migration.go +++ b/migrations/migration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -127,6 +127,18 @@ func (m *StorageMigration) Migrate(migrator StorageMapKeyMigrator) { stdlib.CapabilityControllerStorageDomain, migrator, ) + + accountStorage.MigrateStringKeys( + m.interpreter, + stdlib.PathCapabilityStorageDomain, + migrator, + ) + + accountStorage.MigrateUint64Keys( + m.interpreter, + stdlib.AccountCapabilityStorageDomain, + migrator, + ) } func (m *StorageMigration) NewValueMigrationsPathMigrator( diff --git a/migrations/migration_reporter.go b/migrations/migration_reporter.go index dc92311a98..bf070e6c39 100644 --- a/migrations/migration_reporter.go +++ b/migrations/migration_reporter.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/migration_test.go b/migrations/migration_test.go index b3804a826b..1193a6200a 100644 --- a/migrations/migration_test.go +++ b/migrations/migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -244,6 +244,12 @@ func (testCapConMigration) Migrate( value.BorrowType, value.CapabilityID+10, ), nil + + case interpreter.UInt64Value: + return value + 10, nil + + case interpreter.NilValue: + return value, nil } return nil, nil @@ -802,28 +808,49 @@ func TestCapConMigration(t *testing.T) { }) require.NoError(t, err) - storageMap := storage.GetStorageMap( + capConStorageMap := storage.GetStorageMap( testAddress, stdlib.CapabilityControllerStorageDomain, false, ) - assert.Equal(t, uint64(2), storageMap.Count()) + assert.Equal(t, uint64(2), capConStorageMap.Count()) - controller1 := storageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(1)) + controller1 := capConStorageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(1)) require.IsType(t, &interpreter.StorageCapabilityControllerValue{}, controller1) assert.Equal(t, interpreter.UInt64Value(1), controller1.(*interpreter.StorageCapabilityControllerValue).CapabilityID, ) - controller2 := storageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(2)) + controller2 := capConStorageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(2)) require.IsType(t, &interpreter.AccountCapabilityControllerValue{}, controller2) assert.Equal(t, interpreter.UInt64Value(2), controller2.(*interpreter.AccountCapabilityControllerValue).CapabilityID, ) + pathCapStorageMap := storage.GetStorageMap( + testAddress, + stdlib.PathCapabilityStorageDomain, + false, + ) + + pathCapSet := pathCapStorageMap.ReadValue(nil, interpreter.StringStorageMapKey("foo")) + require.IsType(t, &interpreter.DictionaryValue{}, pathCapSet) + capSetDict := pathCapSet.(*interpreter.DictionaryValue) + assert.Equal(t, 1, capSetDict.Count()) + assert.True(t, bool(capSetDict.ContainsKey(inter, emptyLocationRange, interpreter.UInt64Value(1)))) + + accountCapStorageMap := storage.GetStorageMap( + testAddress, + stdlib.AccountCapabilityStorageDomain, + false, + ) + + accountCapEntry := accountCapStorageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(2)) + assert.NotNil(t, accountCapEntry) + // Migrate migration, err := NewStorageMigration(inter, storage, "test", testAddress) @@ -843,34 +870,89 @@ func TestCapConMigration(t *testing.T) { // Assert - assert.Len(t, reporter.migrated, 2) - require.Empty(t, reporter.errors) + assert.Equal(t, + map[struct { + interpreter.StorageKey + interpreter.StorageMapKey + }][]string{ + { + StorageKey: interpreter.StorageKey{ + Address: testAddress, + Key: stdlib.CapabilityControllerStorageDomain, + }, + StorageMapKey: interpreter.Uint64StorageMapKey(1), + }: {"testCapConMigration"}, + { + StorageKey: interpreter.StorageKey{ + Address: testAddress, + Key: stdlib.CapabilityControllerStorageDomain, + }, + StorageMapKey: interpreter.Uint64StorageMapKey(2), + }: {"testCapConMigration"}, + { + StorageKey: interpreter.StorageKey{ + Address: testAddress, + Key: stdlib.PathCapabilityStorageDomain, + }, + StorageMapKey: interpreter.StringStorageMapKey("foo"), + }: {"testCapConMigration", "testCapConMigration"}, + { + StorageKey: interpreter.StorageKey{ + Address: testAddress, + Key: stdlib.AccountCapabilityStorageDomain, + }, + StorageMapKey: interpreter.Uint64StorageMapKey(2), + }: {"testCapConMigration"}, + }, + reporter.migrated, + ) err = storage.CheckHealth() require.NoError(t, err) - storageMap = storage.GetStorageMap( + capConStorageMap = storage.GetStorageMap( testAddress, stdlib.CapabilityControllerStorageDomain, false, ) - assert.Equal(t, uint64(2), storageMap.Count()) + assert.Equal(t, uint64(2), capConStorageMap.Count()) - controller1 = storageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(1)) + controller1 = capConStorageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(1)) require.IsType(t, &interpreter.StorageCapabilityControllerValue{}, controller1) assert.Equal(t, interpreter.UInt64Value(11), controller1.(*interpreter.StorageCapabilityControllerValue).CapabilityID, ) - controller2 = storageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(2)) + controller2 = capConStorageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(2)) require.IsType(t, &interpreter.AccountCapabilityControllerValue{}, controller2) assert.Equal(t, interpreter.UInt64Value(12), controller2.(*interpreter.AccountCapabilityControllerValue).CapabilityID, ) + + pathCapStorageMap = storage.GetStorageMap( + testAddress, + stdlib.PathCapabilityStorageDomain, + false, + ) + + pathCapSet = pathCapStorageMap.ReadValue(nil, interpreter.StringStorageMapKey("foo")) + require.IsType(t, &interpreter.DictionaryValue{}, pathCapSet) + capSetDict = pathCapSet.(*interpreter.DictionaryValue) + assert.Equal(t, 1, capSetDict.Count()) + assert.True(t, bool(capSetDict.ContainsKey(inter, emptyLocationRange, interpreter.UInt64Value(11)))) + + accountCapStorageMap = storage.GetStorageMap( + testAddress, + stdlib.AccountCapabilityStorageDomain, + false, + ) + + accountCapEntry = accountCapStorageMap.ReadValue(nil, interpreter.Uint64StorageMapKey(2)) + assert.NotNil(t, accountCapEntry) } func TestContractMigration(t *testing.T) { diff --git a/migrations/statictypes/account_type_migration_test.go b/migrations/statictypes/account_type_migration_test.go index cc8e8c5b6a..a60e1942f3 100644 --- a/migrations/statictypes/account_type_migration_test.go +++ b/migrations/statictypes/account_type_migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/statictypes/composite_type_migration_test.go b/migrations/statictypes/composite_type_migration_test.go index 3eea9497ad..8dc53cf695 100644 --- a/migrations/statictypes/composite_type_migration_test.go +++ b/migrations/statictypes/composite_type_migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/statictypes/dummy_statictype.go b/migrations/statictypes/dummy_statictype.go index 287f1301fb..ccedb12a9d 100644 --- a/migrations/statictypes/dummy_statictype.go +++ b/migrations/statictypes/dummy_statictype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/statictypes/intersection_type_migration_test.go b/migrations/statictypes/intersection_type_migration_test.go index 70e3c4e413..13d31abea5 100644 --- a/migrations/statictypes/intersection_type_migration_test.go +++ b/migrations/statictypes/intersection_type_migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/statictypes/statictype_migration.go b/migrations/statictypes/statictype_migration.go index 3522c154a3..ccaee42f64 100644 --- a/migrations/statictypes/statictype_migration.go +++ b/migrations/statictypes/statictype_migration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ import ( type StaticTypeMigration struct { compositeTypeConverter CompositeTypeConverterFunc interfaceTypeConverter InterfaceTypeConverterFunc + migratedTypeCache migrations.StaticTypeCache } type CompositeTypeConverterFunc func(*interpreter.CompositeStaticType) interpreter.StaticType @@ -39,7 +40,13 @@ type InterfaceTypeConverterFunc func(*interpreter.InterfaceStaticType) interpret var _ migrations.ValueMigration = &StaticTypeMigration{} func NewStaticTypeMigration() *StaticTypeMigration { - return &StaticTypeMigration{} + return NewStaticTypeMigrationWithCache(nil) +} + +func NewStaticTypeMigrationWithCache(migratedTypeCache migrations.StaticTypeCache) *StaticTypeMigration { + return &StaticTypeMigration{ + migratedTypeCache: migratedTypeCache, + } } func (m *StaticTypeMigration) WithCompositeTypeConverter(converterFunc CompositeTypeConverterFunc) *StaticTypeMigration { @@ -164,6 +171,29 @@ func (m *StaticTypeMigration) maybeConvertStaticType( ) ( resultType interpreter.StaticType, ) { + // Consult the cache and cache the result at the root of the migration, + // i.e. when the parent type is nil. + // + // Parse of the migration, e.g. the intersection type migration depends on the parent type. + // For example, `{Ts}` in `&{Ts}` is migrated differently from `{Ts}`. + + if parentType == nil { + migratedTypeCache := m.migratedTypeCache + if migratedTypeCache != nil { + // Only cache if cache key generation succeeds. + // Some static types, like function types, are not encodable. + if key, keyErr := migrations.NewStaticTypeKey(staticType); keyErr == nil { + if cachedType, exists := migratedTypeCache.Get(key); exists { + return cachedType.StaticType + } + + defer func() { + migratedTypeCache.Set(key, resultType, nil) + }() + } + } + } + switch staticType := staticType.(type) { case *interpreter.ConstantSizedStaticType: convertedType := m.maybeConvertStaticType(staticType.Type, staticType) diff --git a/migrations/statictypes/statictype_migration_test.go b/migrations/statictypes/statictype_migration_test.go index 49fcee95b1..c0ca6617ba 100644 --- a/migrations/statictypes/statictype_migration_test.go +++ b/migrations/statictypes/statictype_migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/string_normalization/migration.go b/migrations/string_normalization/migration.go index 96a0b22789..18e4b8381e 100644 --- a/migrations/string_normalization/migration.go +++ b/migrations/string_normalization/migration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/string_normalization/migration_test.go b/migrations/string_normalization/migration_test.go index 3426d867e8..b9ada232bf 100644 --- a/migrations/string_normalization/migration_test.go +++ b/migrations/string_normalization/migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/type_keys/migration.go b/migrations/type_keys/migration.go index 01bc3bfaef..a222a864fd 100644 --- a/migrations/type_keys/migration.go +++ b/migrations/type_keys/migration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations/type_keys/migration_test.go b/migrations/type_keys/migration_test.go index 086d54355c..0264e2e4e2 100644 --- a/migrations/type_keys/migration_test.go +++ b/migrations/type_keys/migration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/migrations_data/staged-contracts-report-2024-06-05T10-00-00Z-testnet.json b/migrations_data/staged-contracts-report-2024-06-05T10-00-00Z-testnet.json new file mode 100644 index 0000000000..8df2739f46 --- /dev/null +++ b/migrations_data/staged-contracts-report-2024-06-05T10-00-00Z-testnet.json @@ -0,0 +1 @@ +[{"kind":"contract-update-success","account_address":"0x4dfd62c88d1b6462","contract_name":"AllDay"},{"kind":"contract-update-success","account_address":"0x4dfd62c88d1b6462","contract_name":"PackNFT"},{"kind":"contract-update-success","account_address":"0x2d0d952e760d1770","contract_name":"CricketMoments"},{"kind":"contract-update-success","account_address":"0x2d0d952e760d1770","contract_name":"FazeUtilityCoin"},{"kind":"contract-update-success","account_address":"0x6b7930acbcd12877","contract_name":"Cryptoys"},{"kind":"contract-update-success","account_address":"0x6b7930acbcd12877","contract_name":"CryptoysMetadataView2"},{"kind":"contract-update-success","account_address":"0x34f3140b7f54c743","contract_name":"CricketMoments"},{"kind":"contract-update-success","account_address":"0x34f3140b7f54c743","contract_name":"FazeUtilityCoin"},{"kind":"contract-update-success","account_address":"0x6b7930acbcd12877","contract_name":"ICryptoys"},{"kind":"contract-update-success","account_address":"0x6b2e1b9d3c5ac5db","contract_name":"ValueLink_NFTMarketplace_v1"},{"kind":"contract-update-success","account_address":"0x6b2e1b9d3c5ac5db","contract_name":"ValueLink_NFT_v1"},{"kind":"contract-update-success","account_address":"0x2a9b59c3e2b72ee0","contract_name":"OracleConfig"},{"kind":"contract-update-success","account_address":"0x2a9b59c3e2b72ee0","contract_name":"OracleInterface"},{"kind":"contract-update-failure","account_address":"0x250e0b90c1b7711b","contract_name":"A","error":"error: cannot find declaration `B` in `250e0b90c1b7711b.B`\n --\u003e 250e0b90c1b7711b.A:1:7\n |\n1 | import B from 0x250e0b90c1b7711b\n | ^ available exported declarations are:\n - `Bad`\n\n"},{"kind":"contract-update-success","account_address":"0x250e0b90c1b7711b","contract_name":"B"},{"kind":"contract-update-success","account_address":"0x250e0b90c1b7711b","contract_name":"Bar"},{"kind":"contract-update-success","account_address":"0x250e0b90c1b7711b","contract_name":"F"},{"kind":"contract-update-success","account_address":"0x250e0b90c1b7711b","contract_name":"Foo"},{"kind":"contract-update-success","account_address":"0x250e0b90c1b7711b","contract_name":"L"},{"kind":"contract-update-success","account_address":"0x250e0b90c1b7711b","contract_name":"O"},{"kind":"contract-update-failure","account_address":"0x250e0b90c1b7711b","contract_name":"W","error":"error: mismatching field `foo` in `W`\n --\u003e 250e0b90c1b7711b.W:3:25\n |\n3 | access(all) let foo: String\n | ^^^^^^ incompatible type annotations. expected `Int`, found `String`\n"},{"kind":"contract-update-success","account_address":"0xdad0aaa285a25413","contract_name":"PriceOracle"},{"kind":"contract-update-success","account_address":"0x2ceae959ed1a7e7a","contract_name":"MigrationContractStaging"},{"kind":"contract-update-failure","account_address":"0x1f38da7a93c61f28","contract_name":"ExampleNFT","error":"error: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 1f38da7a93c61f28.ExampleNFT:161:43\n |\n161 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 1f38da7a93c61f28.ExampleNFT:183:60\n |\n183 | let authTokenRef = (\u0026self.ownedNFTs[id] as auth(NonFungibleToken.Owner) \u0026{NonFungibleToken.NFT}?)!\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: mismatched types\n --\u003e 1f38da7a93c61f28.ExampleNFT:185:38\n |\n185 | ExampleNFT.emitNFTUpdated(authTokenRef)\n | ^^^^^^^^^^^^ expected `auth(NonFungibleToken.Update) \u0026{NonFungibleToken.NFT}`, got `auth(NonFungibleToken) \u0026{NonFungibleToken.NFT}`\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 1f38da7a93c61f28.ExampleNFT:134:25\n |\n134 | access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {\n | ^\n ... \n |\n137 | access(contract) var ownedNFTs: @{UInt64: {NonFungibleToken.NFT}}\n | --------- mismatch here\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 1f38da7a93c61f28.ExampleNFT:134:25\n |\n134 | access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {\n | ^\n ... \n |\n161 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | -------- mismatch here\n"},{"kind":"contract-update-success","account_address":"0xf8ba321af4bd37bb","contract_name":"aiSportsMinter"},{"kind":"contract-update-failure","account_address":"0xf8e0eab3a87cbf49","contract_name":"ExampleNFT","error":"error: error getting program f8e0eab3a87cbf49.ExampleDependency: failed to derive value: load program failed: Parsing failed:\nerror: `pub` is no longer a valid access keyword\n --\u003e :1:0\n |\n1 | pub contract ExampleDependency {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :2:4\n |\n2 | pub let test: Int\n | ^^^\n\n--\u003e f8e0eab3a87cbf49.ExampleDependency\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e f8e0eab3a87cbf49.ExampleNFT:161:43\n |\n161 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e f8e0eab3a87cbf49.ExampleNFT:128:25\n |\n128 | access(all) resource Collection: NonFungibleToken.Collection {\n | ^\n ... \n |\n131 | access(contract) var ownedNFTs: @{UInt64: ExampleNFT.NFT}\n | --------- mismatch here\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e f8e0eab3a87cbf49.ExampleNFT:128:25\n |\n128 | access(all) resource Collection: NonFungibleToken.Collection {\n | ^\n ... \n |\n161 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | -------- mismatch here\n"},{"kind":"contract-update-success","account_address":"0x06f1e5cde6db0e70","contract_name":"DropFactory"},{"kind":"contract-update-success","account_address":"0x06f1e5cde6db0e70","contract_name":"FlowtyAddressVerifiers"},{"kind":"contract-update-success","account_address":"0x06f1e5cde6db0e70","contract_name":"FlowtyDrops"},{"kind":"contract-update-success","account_address":"0x06f1e5cde6db0e70","contract_name":"FlowtyPricers"},{"kind":"contract-update-success","account_address":"0x06f1e5cde6db0e70","contract_name":"FlowtySwitchers"},{"kind":"contract-update-success","account_address":"0x8a5f647e58dde1ee","contract_name":"DapperOffersV2"},{"kind":"contract-update-success","account_address":"0x8a5f647e58dde1ee","contract_name":"OffersV2"},{"kind":"contract-update-success","account_address":"0x8a5f647e58dde1ee","contract_name":"Resolver"},{"kind":"contract-update-success","account_address":"0xcbed4c301441ded2","contract_name":"StableSwapFactory"},{"kind":"contract-update-success","account_address":"0xcbed4c301441ded2","contract_name":"SwapFactory"},{"kind":"contract-update-success","account_address":"0x99ca04281098b33d","contract_name":"Art"},{"kind":"contract-update-success","account_address":"0x99ca04281098b33d","contract_name":"Auction"},{"kind":"contract-update-success","account_address":"0x99ca04281098b33d","contract_name":"Content"},{"kind":"contract-update-success","account_address":"0x99ca04281098b33d","contract_name":"Marketplace"},{"kind":"contract-update-success","account_address":"0x99ca04281098b33d","contract_name":"Profile"},{"kind":"contract-update-success","account_address":"0x99ca04281098b33d","contract_name":"Versus"},{"kind":"contract-update-success","account_address":"0xa47a2d3a3b7e9133","contract_name":"FanTopMarket"},{"kind":"contract-update-success","account_address":"0xa47a2d3a3b7e9133","contract_name":"FanTopPermission"},{"kind":"contract-update-success","account_address":"0xa47a2d3a3b7e9133","contract_name":"FanTopPermissionV2a"},{"kind":"contract-update-success","account_address":"0xa47a2d3a3b7e9133","contract_name":"FanTopSerial"},{"kind":"contract-update-success","account_address":"0xa47a2d3a3b7e9133","contract_name":"FanTopToken"},{"kind":"contract-update-success","account_address":"0xa47a2d3a3b7e9133","contract_name":"Signature"},{"kind":"contract-update-success","account_address":"0x723a1b50e1d67e8e","contract_name":"TuneGONFT"},{"kind":"contract-update-success","account_address":"0xb668e8c9726ef26b","contract_name":"FanTopMarket"},{"kind":"contract-update-success","account_address":"0xb668e8c9726ef26b","contract_name":"FanTopPermission"},{"kind":"contract-update-success","account_address":"0xb668e8c9726ef26b","contract_name":"FanTopPermissionV2a"},{"kind":"contract-update-success","account_address":"0xb668e8c9726ef26b","contract_name":"FanTopSerial"},{"kind":"contract-update-success","account_address":"0xb668e8c9726ef26b","contract_name":"FanTopToken"},{"kind":"contract-update-success","account_address":"0xb668e8c9726ef26b","contract_name":"Signature"},{"kind":"contract-update-success","account_address":"0xf9dad0d4c14a92b5","contract_name":"BUSD"},{"kind":"contract-update-success","account_address":"0xf9dad0d4c14a92b5","contract_name":"USDC"},{"kind":"contract-update-success","account_address":"0xf9dad0d4c14a92b5","contract_name":"USDT"},{"kind":"contract-update-success","account_address":"0xf9dad0d4c14a92b5","contract_name":"wFlow"},{"kind":"contract-update-success","account_address":"0x7745157792470296","contract_name":"LendingOracle"},{"kind":"contract-update-failure","account_address":"0xd35bad52c7e1ab65","contract_name":"ZeedzINO","error":"error: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e d35bad52c7e1ab65.ZeedzINO:207:43\n |\n207 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun burn(burnID: UInt64)\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e d35bad52c7e1ab65.ZeedzINO:208:43\n |\n208 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun redeem(redeemID: UInt64, message: String)\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e d35bad52c7e1ab65.ZeedzINO:218:43\n |\n218 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e d35bad52c7e1ab65.ZeedzINO:224:43\n |\n224 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun burn(burnID: UInt64){\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e d35bad52c7e1ab65.ZeedzINO:234:43\n |\n234 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun redeem(redeemID: UInt64, message: String){\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: resource `ZeedzINO.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e d35bad52c7e1ab65.ZeedzINO:214:25\n |\n214 | access(all) resource Collection: NonFungibleToken.Collection, ZeedzCollectionPublic, ZeedzCollectionPrivate {\n | ^\n ... \n |\n218 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | -------- mismatch here\n\nerror: resource `ZeedzINO.Collection` does not conform to resource interface `ZeedzINO.ZeedzCollectionPrivate`\n --\u003e d35bad52c7e1ab65.ZeedzINO:214:25\n |\n214 | access(all) resource Collection: NonFungibleToken.Collection, ZeedzCollectionPublic, ZeedzCollectionPrivate {\n | ^\n ... \n |\n224 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun burn(burnID: UInt64){\n | ---- mismatch here\n ... \n |\n234 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun redeem(redeemID: UInt64, message: String){\n | ------ mismatch here\n"},{"kind":"contract-update-success","account_address":"0x877931736ee77cff","contract_name":"PackNFT"},{"kind":"contract-update-success","account_address":"0x877931736ee77cff","contract_name":"TopShot"},{"kind":"contract-update-success","account_address":"0x877931736ee77cff","contract_name":"TopShotLocking"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGarageCard"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGarageCardV2"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGaragePM"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGaragePMV2"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGaragePack"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGaragePackV2"},{"kind":"contract-update-success","account_address":"0x6f6702697b205c18","contract_name":"HWGarageTokenV2"},{"kind":"contract-update-success","account_address":"0x58b60c5240d3f39b","contract_name":"PackNFT"},{"kind":"contract-update-success","account_address":"0x58b60c5240d3f39b","contract_name":"TicalUniverse"},{"kind":"contract-update-success","account_address":"0x58b60c5240d3f39b","contract_name":"TuneGO"},{"kind":"contract-update-success","account_address":"0x58b60c5240d3f39b","contract_name":"TuneGONFTV5"},{"kind":"contract-update-success","account_address":"0x324c34e1c517e4db","contract_name":"NFTCatalog"},{"kind":"contract-update-success","account_address":"0x324c34e1c517e4db","contract_name":"NFTCatalogAdmin"},{"kind":"contract-update-success","account_address":"0x324c34e1c517e4db","contract_name":"NFTRetrieval"},{"kind":"contract-update-success","account_address":"0x8bc9e24c307d249b","contract_name":"LendingConfig"},{"kind":"contract-update-success","account_address":"0x8bc9e24c307d249b","contract_name":"LendingError"},{"kind":"contract-update-success","account_address":"0x8bc9e24c307d249b","contract_name":"LendingInterfaces"},{"kind":"contract-update-success","account_address":"0x628992a07cb07272","contract_name":"MatrixWorldVoucher"},{"kind":"contract-update-success","account_address":"0xa2526e2d9cc7f0d2","contract_name":"PackNFT"},{"kind":"contract-update-success","account_address":"0xa2526e2d9cc7f0d2","contract_name":"Pinnacle"},{"kind":"contract-update-success","account_address":"0x0d3dc5ad70be03d1","contract_name":"Filter"},{"kind":"contract-update-success","account_address":"0x0d3dc5ad70be03d1","contract_name":"Offers"},{"kind":"contract-update-success","account_address":"0x0d3dc5ad70be03d1","contract_name":"ScopedFTProviders"},{"kind":"contract-update-success","account_address":"0x2bd8210db3a8fe8a","contract_name":"NFTLocking"},{"kind":"contract-update-success","account_address":"0x2bd8210db3a8fe8a","contract_name":"Swap"},{"kind":"contract-update-success","account_address":"0x2bd8210db3a8fe8a","contract_name":"SwapArchive"},{"kind":"contract-update-success","account_address":"0x2bd8210db3a8fe8a","contract_name":"SwapStats"},{"kind":"contract-update-success","account_address":"0x2bd8210db3a8fe8a","contract_name":"SwapStatsRegistry"},{"kind":"contract-update-success","account_address":"0x2bd8210db3a8fe8a","contract_name":"Utils"},{"kind":"contract-update-success","account_address":"0x9d96fa5f60093c18","contract_name":"A"},{"kind":"contract-update-success","account_address":"0x9d96fa5f60093c18","contract_name":"B"},{"kind":"contract-update-success","account_address":"0x195caada038c5806","contract_name":"BarterYardClubWerewolf"},{"kind":"contract-update-success","account_address":"0x195caada038c5806","contract_name":"BarterYardStats"},{"kind":"contract-update-success","account_address":"0x683564e46977788a","contract_name":"MFLAdmin"},{"kind":"contract-update-success","account_address":"0x683564e46977788a","contract_name":"MFLClub"},{"kind":"contract-update-success","account_address":"0x683564e46977788a","contract_name":"MFLPack"},{"kind":"contract-update-success","account_address":"0x683564e46977788a","contract_name":"MFLPackTemplate"},{"kind":"contract-update-success","account_address":"0x683564e46977788a","contract_name":"MFLPlayer"},{"kind":"contract-update-success","account_address":"0x683564e46977788a","contract_name":"MFLViews"},{"kind":"contract-update-failure","account_address":"0xc7c122b5b811de8e","contract_name":"BulkPurchase","error":"error: missing structure declaration `Order`\n --\u003e c7c122b5b811de8e.BulkPurchase:20:21\n |\n20 | access(all) contract BulkPurchase {\n | ^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowversePass"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowversePassPrimarySaleMinter"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowversePrimarySale"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowversePrimarySaleV2"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowverseShirt"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowverseSocks"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowverseTreasures"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"FlowverseTreasuresPrimarySaleMinter"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"Ordinal"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"OrdinalVendor"},{"kind":"contract-update-success","account_address":"0xc7c122b5b811de8e","contract_name":"Royalties"},{"kind":"contract-update-failure","account_address":"0x3e5b4c627064625d","contract_name":"Flomies","error":"error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:\nerror: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:\nerror: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\n--\u003e 857dc34d5e1631d3.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:38:24\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:81:24\n\n--\u003e 35717efbbce11c74.FindVerifier\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:164:26\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:164:25\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:156:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:156:37\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:211:123\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:211:122\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:208:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:208:37\n\n--\u003e 35717efbbce11c74.FindPack\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.Flomies:78:17\n |\n78 | Type\u003cFindPack.PackRevealData\u003e(), \n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 3e5b4c627064625d.Flomies:78:12\n |\n78 | Type\u003cFindPack.PackRevealData\u003e(), \n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.Flomies:138:22\n |\n138 | case Type\u003cFindPack.PackRevealData\u003e():\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 3e5b4c627064625d.Flomies:138:17\n |\n138 | case Type\u003cFindPack.PackRevealData\u003e():\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.Flomies:144:23\n |\n144 | return FindPack.PackRevealData(data)\n | ^^^^^^^^ not found in this scope\n"},{"kind":"contract-update-failure","account_address":"0x3e5b4c627064625d","contract_name":"GeneratedExperiences","error":"error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:\nerror: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:\nerror: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\n--\u003e 857dc34d5e1631d3.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:38:24\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:81:24\n\n--\u003e 35717efbbce11c74.FindVerifier\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:164:26\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:164:25\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:156:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:156:37\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:211:123\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:211:122\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:208:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:208:37\n\n--\u003e 35717efbbce11c74.FindPack\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:41:29\n |\n41 | royaltiesInput: [FindPack.Royalty],\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:31:41\n |\n31 | access(all) let royaltiesInput: [FindPack.Royalty]\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:118:17\n |\n118 | Type\u003cFindPack.PackRevealData\u003e()\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:118:12\n |\n118 | Type\u003cFindPack.PackRevealData\u003e()\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:128:22\n |\n128 | case Type\u003cFindPack.PackRevealData\u003e():\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:128:17\n |\n128 | case Type\u003cFindPack.PackRevealData\u003e():\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.GeneratedExperiences:134:23\n |\n134 | return FindPack.PackRevealData(data)\n | ^^^^^^^^ not found in this scope\n"},{"kind":"contract-update-success","account_address":"0x3e5b4c627064625d","contract_name":"NFGv3"},{"kind":"contract-update-failure","account_address":"0x3e5b4c627064625d","contract_name":"PartyFavorz","error":"error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:\nerror: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:\nerror: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\n--\u003e 857dc34d5e1631d3.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:38:24\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:81:24\n\n--\u003e 35717efbbce11c74.FindVerifier\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:164:26\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:164:25\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:156:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:156:37\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:211:123\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:211:122\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:208:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:208:37\n\n--\u003e 35717efbbce11c74.FindPack\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.PartyFavorz:77:17\n |\n77 | Type\u003cFindPack.PackRevealData\u003e()\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 3e5b4c627064625d.PartyFavorz:77:12\n |\n77 | Type\u003cFindPack.PackRevealData\u003e()\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.PartyFavorz:86:22\n |\n86 | case Type\u003cFindPack.PackRevealData\u003e():\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 3e5b4c627064625d.PartyFavorz:86:17\n |\n86 | case Type\u003cFindPack.PackRevealData\u003e():\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 3e5b4c627064625d.PartyFavorz:92:23\n |\n92 | return FindPack.PackRevealData(data)\n | ^^^^^^^^ not found in this scope\n"},{"kind":"contract-update-success","account_address":"0x3e5b4c627064625d","contract_name":"PartyFavorzExtraData"},{"kind":"contract-update-success","account_address":"0x51ea0e37c27a1f1a","contract_name":"TokenForwarding"},{"kind":"contract-update-success","account_address":"0x2d59ec5158e3adae","contract_name":"HeroesOfTheFlow"},{"kind":"contract-update-success","account_address":"0xc20df20fabe06457","contract_name":"SwapPair"},{"kind":"contract-update-success","account_address":"0x24650d6246d4176c","contract_name":"PriceOracle"},{"kind":"contract-update-success","account_address":"0x886d5599b3bfc873","contract_name":"A"},{"kind":"contract-update-success","account_address":"0x886d5599b3bfc873","contract_name":"B"},{"kind":"contract-update-failure","account_address":"0x857dc34d5e1631d3","contract_name":"FLOAT","error":"error: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n |\n326 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\r\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n |\n350 | access(NonFungibleToken.Owner) fun delete(id: UInt64) {\r\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n |\n270 | self.eventsCap = getAccount(_eventHost).capabilities.get\u003c\u0026FLOATEvents\u003e(FLOAT.FLOATEventsPublicPath)\r\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `optional`, got `Capability\u003c\u0026FLOAT.FLOATEvents\u003e`\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n |\n198 | \t\t\t\t\t\t\treceiver: getAccount(0x5643fd47a29770e7).capabilities.get\u003c\u0026{FungibleToken.Receiver}\u003e(/public/flowTokenReceiver) ?? panic(\"Beneficiary does not have receiver.\"),\r\n | \t\t\t\t\t\t\t ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `optional`, got `Capability\u003c\u0026{FungibleToken.Receiver}\u003e`\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n |\n298 | access(all) resource Collection: NonFungibleToken.Collection {\r\n | ^\n ... \n |\n300 | access(self) var ownedNFTs: @{UInt64: {NonFungibleToken.NFT}}\r\n | --------- mismatch here\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n |\n298 | access(all) resource Collection: NonFungibleToken.Collection {\r\n | ^\n ... \n |\n326 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\r\n | -------- mismatch here\n"},{"kind":"contract-update-failure","account_address":"0x857dc34d5e1631d3","contract_name":"FLOATVerifiers","error":"error: error getting program 4d47bf3ce5e4393f.FLOAT: failed to derive value: load program failed: Parsing failed:\nerror: `pub` is no longer a valid access keyword\n --\u003e :28:0\n |\n28 | pub contract FLOAT: NonFungibleToken, ViewResolver {\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :34:4\n |\n34 | pub let FLOATCollectionStoragePath: StoragePath\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :35:4\n |\n35 | pub let FLOATCollectionPublicPath: PublicPath\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :36:4\n |\n36 | pub let FLOATEventsStoragePath: StoragePath\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :37:4\n |\n37 | pub let FLOATEventsPublicPath: PublicPath\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :38:4\n |\n38 | pub let FLOATEventsPrivatePath: PrivatePath\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :44:4\n |\n44 | pub event ContractInitialized()\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :45:4\n |\n45 | pub event FLOATMinted(id: UInt64, eventHost: Address, eventId: UInt64, eventImage: String, recipient: Address, serial: UInt64)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :46:4\n |\n46 | pub event FLOATClaimed(id: UInt64, eventHost: Address, eventId: UInt64, eventImage: String, eventName: String, recipient: Address, serial: UInt64)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :47:4\n |\n47 | pub event FLOATDestroyed(id: UInt64, eventHost: Address, eventId: UInt64, eventImage: String, serial: UInt64)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :48:4\n |\n48 | pub event FLOATTransferred(id: UInt64, eventHost: Address, eventId: UInt64, newOwner: Address?, serial: UInt64)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :49:4\n |\n49 | pub event FLOATPurchased(id: UInt64, eventHost: Address, eventId: UInt64, recipient: Address, serial: UInt64)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :50:4\n |\n50 | pub event FLOATEventCreated(eventId: UInt64, description: String, host: Address, image: String, name: String, url: String)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :51:4\n |\n51 | pub event FLOATEventDestroyed(eventId: UInt64, host: Address, name: String)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :53:4\n |\n53 | pub event Deposit(id: UInt64, to: Address?)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :54:4\n |\n54 | pub event Withdraw(id: UInt64, from: Address?)\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :62:4\n |\n62 | pub var totalSupply: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :65:4\n |\n65 | pub var totalFLOATEvents: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :73:4\n |\n73 | pub struct TokenIdentifier {\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :74:8\n |\n74 | pub let id: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :75:8\n |\n75 | pub let address: Address\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :76:8\n |\n76 | pub let serial: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :85:4\n |\n85 | pub struct TokenInfo {\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :86:8\n |\n86 | pub let path: PublicPath\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :87:8\n |\n87 | pub let price: UFix64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :96:4\n |\n96 | pub resource NFT: NonFungibleToken.INFT, MetadataViews.Resolver {\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :98:8\n |\n98 | pub let id: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :103:8\n |\n103 | pub let dateReceived: UFix64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :104:8\n |\n104 | pub let eventDescription: String\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :105:8\n |\n105 | pub let eventHost: Address\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :106:8\n |\n106 | pub let eventId: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :107:8\n |\n107 | pub let eventImage: String\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :108:8\n |\n108 | pub let eventName: String\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :109:8\n |\n109 | pub let originalRecipient: Address\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :110:8\n |\n110 | pub let serial: UInt64\r\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :117:8\n |\n117 | pub let eventsCap: Capability\u003c\u0026FLOATEvents{FLOATEventsPublic, MetadataViews.ResolverCollection}\u003e\r\n | ^^^\n\nerror: restricted types have been removed; replace with the concrete type or an equivalent intersection type\n --\u003e :117:51\n |\n117 | pub let eventsCap: Capability\u003c\u0026FLOATEvents{FLOATEventsPublic, MetadataViews.ResolverCollection}\u003e\r\n | ^^^^^^^^^^^^^^^^^\n\n--\u003e 4d47bf3ce5e4393f.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:38:33\n |\n38 | access(all) struct Timelock: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:66:31\n |\n66 | access(all) struct Secret: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:90:32\n |\n90 | access(all) struct Limited: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:113:39\n |\n113 | access(all) struct MultipleSecret: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:137:33\n |\n137 | access(all) struct SecretV2: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:162:39\n |\n162 | access(all) struct MinimumBalance: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:226:30\n |\n226 | access(all) struct Email: FLOAT.IVerifier {\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:94:51\n |\n94 | let floatEvent = params[\"event\"]! as! \u0026FLOAT.FLOATEvent\n | ^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 857dc34d5e1631d3.FLOATVerifiers:230:51\n |\n230 | let floatEvent = params[\"event\"]! as! \u0026FLOAT.FLOATEvent\n | ^^^^^ not found in this scope\n"},{"kind":"contract-update-success","account_address":"0x4ed4b8e5cd0dd15e","contract_name":"PackNFT"},{"kind":"contract-update-success","account_address":"0x74daa6f9c7ef24b1","contract_name":"FCLCrypto"},{"kind":"contract-update-success","account_address":"0x94b84d0c11a22404","contract_name":"TopShotShardedCollection"},{"kind":"contract-update-success","account_address":"0xb86f928a1fa7798e","contract_name":"FTViewUtils"},{"kind":"contract-update-success","account_address":"0xb86f928a1fa7798e","contract_name":"TokenList"},{"kind":"contract-update-success","account_address":"0xb86f928a1fa7798e","contract_name":"ViewResolvers"},{"kind":"contract-update-failure","account_address":"0xe3faea00c5bb8d7d","contract_name":"MetadataViews","error":"error: cannot find declaration `FungibleToken` in `631e88ae7f1d7c20.FungibleToken`\n --\u003e e3faea00c5bb8d7d.MetadataViews:3:7\n |\n3 | import FungibleToken from 0x631e88ae7f1d7c20\n | ^^^^^^^^^^^^^ available exported declarations are:\n\n\nerror: ambiguous intersection type\n --\u003e e3faea00c5bb8d7d.MetadataViews:280:40\n |\n280 | view init(receiver: Capability\u003c\u0026{FungibleToken.Receiver}\u003e, cut: UFix64, description: String) {\n | ^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: ambiguous intersection type\n --\u003e e3faea00c5bb8d7d.MetadataViews:262:46\n |\n262 | access(all) let receiver: Capability\u003c\u0026{FungibleToken.Receiver}\u003e\n | ^^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0xe3faea00c5bb8d7d","contract_name":"TrmAssetV2_2"},{"kind":"contract-update-success","account_address":"0xe3faea00c5bb8d7d","contract_name":"TrmMarketV2_2"},{"kind":"contract-update-success","account_address":"0xe3faea00c5bb8d7d","contract_name":"TrmRentV2_2"},{"kind":"contract-update-success","account_address":"0xe1d43e0cfc237807","contract_name":"Flowty"},{"kind":"contract-update-success","account_address":"0xe1d43e0cfc237807","contract_name":"FlowtyRentals"},{"kind":"contract-update-success","account_address":"0xe1d43e0cfc237807","contract_name":"RoyaltiesLedger"},{"kind":"contract-update-success","account_address":"0x2a9011074c827145","contract_name":"FungibleTokenCatalog"},{"kind":"contract-update-success","account_address":"0xcbdb5a7b89c3c844","contract_name":"PriceOracle"},{"kind":"contract-update-success","account_address":"0x2299f74679d9c88a","contract_name":"A"},{"kind":"contract-update-success","account_address":"0xad26718c4b6b921b","contract_name":"BlackHole"},{"kind":"contract-update-failure","account_address":"0xf28310b45fc6b319","contract_name":"ExampleNFT","error":"error: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e f28310b45fc6b319.ExampleNFT:161:43\n |\n161 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e f28310b45fc6b319.ExampleNFT:183:60\n |\n183 | let authTokenRef = (\u0026self.ownedNFTs[id] as auth(NonFungibleToken.Owner) \u0026{NonFungibleToken.NFT}?)!\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: mismatched types\n --\u003e f28310b45fc6b319.ExampleNFT:185:38\n |\n185 | ExampleNFT.emitNFTUpdated(authTokenRef)\n | ^^^^^^^^^^^^ expected `auth(NonFungibleToken.Update) \u0026{NonFungibleToken.NFT}`, got `auth(NonFungibleToken) \u0026{NonFungibleToken.NFT}`\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e f28310b45fc6b319.ExampleNFT:134:25\n |\n134 | access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {\n | ^\n ... \n |\n137 | access(contract) var ownedNFTs: @{UInt64: {NonFungibleToken.NFT}}\n | --------- mismatch here\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e f28310b45fc6b319.ExampleNFT:134:25\n |\n134 | access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {\n | ^\n ... \n |\n161 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | -------- mismatch here\n"},{"kind":"contract-update-success","account_address":"0x97d2f3b55c6a6a75","contract_name":"LendingPool"},{"kind":"contract-update-success","account_address":"0xbe4635353f55bbd4","contract_name":"FeeEstimator"},{"kind":"contract-update-success","account_address":"0xbe4635353f55bbd4","contract_name":"LostAndFound"},{"kind":"contract-update-success","account_address":"0xbe4635353f55bbd4","contract_name":"LostAndFoundHelper"},{"kind":"contract-update-failure","account_address":"0xfa2a6615db587be5","contract_name":"ExampleNFT","error":"error: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e fa2a6615db587be5.ExampleNFT:160:43\n |\n160 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e fa2a6615db587be5.ExampleNFT:127:25\n |\n127 | access(all) resource Collection: NonFungibleToken.Collection {\n | ^\n ... \n |\n130 | access(contract) var ownedNFTs: @{UInt64: ExampleNFT.NFT}\n | --------- mismatch here\n\nerror: resource `ExampleNFT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e fa2a6615db587be5.ExampleNFT:127:25\n |\n127 | access(all) resource Collection: NonFungibleToken.Collection {\n | ^\n ... \n |\n160 | access(NonFungibleToken.Withdraw | NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {\n | -------- mismatch here\n"},{"kind":"contract-update-success","account_address":"0x8d5aac1da9c370bc","contract_name":"A"},{"kind":"contract-update-success","account_address":"0x8d5aac1da9c370bc","contract_name":"B"},{"kind":"contract-update-success","account_address":"0x8d5aac1da9c370bc","contract_name":"Contract"},{"kind":"contract-update-success","account_address":"0x82ec283f88a62e65","contract_name":"DapperUtilityCoin"},{"kind":"contract-update-success","account_address":"0x82ec283f88a62e65","contract_name":"FlowUtilityToken"},{"kind":"contract-update-success","account_address":"0x94b06cfca1d8a476","contract_name":"NFTStorefront"},{"kind":"contract-update-success","account_address":"0x8c55fba7d7090fee","contract_name":"Magnetiq"},{"kind":"contract-update-success","account_address":"0x8c55fba7d7090fee","contract_name":"MagnetiqLocking"},{"kind":"contract-update-success","account_address":"0x9e324d8ae3cbd0f0","contract_name":"LendingPool"},{"kind":"contract-update-failure","account_address":"0xab2d22248a619d77","contract_name":"MetadataViews","error":"error: missing resource interface declaration `Resolver`\n --\u003e ab2d22248a619d77.MetadataViews:15:21\n |\n15 | access(all) contract MetadataViews {\n | ^^^^^^^^^^^^^\n\nerror: missing resource interface declaration `ResolverCollection`\n --\u003e ab2d22248a619d77.MetadataViews:15:21\n |\n15 | access(all) contract MetadataViews {\n | ^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0xab2d22248a619d77","contract_name":"TrmAssetMSV1_0"},{"kind":"contract-update-success","account_address":"0xab2d22248a619d77","contract_name":"TrmAssetMSV2_0"},{"kind":"contract-update-failure","account_address":"0xb39a42479c1c2c77","contract_name":"AFLAdmin","error":"error: error getting program b39a42479c1c2c77.AFLPack: failed to derive value: load program failed: Checking failed:\nerror: error getting program a983fecbed621163.FiatToken: failed to derive value: load program failed: Parsing failed:\nerror: `pub` is no longer a valid access keyword\n --\u003e :5:0\n |\n5 | pub contract FiatToken: FungibleToken {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :10:4\n |\n10 | pub event AdminCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :11:4\n |\n11 | pub event AdminChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :14:4\n |\n14 | pub event OwnerCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :15:4\n |\n15 | pub event OwnerChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :18:4\n |\n18 | pub event MasterMinterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :19:4\n |\n19 | pub event MasterMinterChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :22:4\n |\n22 | pub event Paused()\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :23:4\n |\n23 | pub event Unpaused()\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :24:4\n |\n24 | pub event PauserCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :25:4\n |\n25 | pub event PauserChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :28:4\n |\n28 | pub event Blocklisted(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :29:4\n |\n29 | pub event Unblocklisted(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :30:4\n |\n30 | pub event BlocklisterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :31:4\n |\n31 | pub event BlocklisterChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :34:4\n |\n34 | pub event NewVault(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :35:4\n |\n35 | pub event DestroyVault(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :36:4\n |\n36 | pub event FiatTokenWithdrawn(amount: UFix64, from: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :37:4\n |\n37 | pub event FiatTokenDeposited(amount: UFix64, to: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :40:4\n |\n40 | pub event MinterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :41:4\n |\n41 | pub event MinterControllerCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :42:4\n |\n42 | pub event Mint(minter: UInt64, amount: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :43:4\n |\n43 | pub event Burn(minter: UInt64, amount: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :44:4\n |\n44 | pub event MinterConfigured(controller: UInt64, minter: UInt64, allowance: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :45:4\n |\n45 | pub event MinterRemoved(controller: UInt64, minter: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :46:4\n |\n46 | pub event ControllerConfigured(controller: UInt64, minter: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :47:4\n |\n47 | pub event ControllerRemoved(controller: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :52:4\n |\n52 | pub event TokensInitialized(initialSupply: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :53:4\n |\n53 | pub event TokensWithdrawn(amount: UFix64, from: Address?)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :54:4\n |\n54 | pub event TokensDeposited(amount: UFix64, to: Address?)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :59:4\n |\n59 | pub let VaultStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :60:4\n |\n60 | pub let VaultBalancePubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :61:4\n |\n61 | pub let VaultUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :62:4\n |\n62 | pub let VaultReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :64:4\n |\n64 | pub let BlocklistExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :66:4\n |\n66 | pub let BlocklisterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :67:4\n |\n67 | pub let BlocklisterCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :68:4\n |\n68 | pub let BlocklisterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :69:4\n |\n69 | pub let BlocklisterPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :71:4\n |\n71 | pub let PauseExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :73:4\n |\n73 | pub let PauserStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :74:4\n |\n74 | pub let PauserCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :75:4\n |\n75 | pub let PauserUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :76:4\n |\n76 | pub let PauserPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :78:4\n |\n78 | pub let AdminExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :80:4\n |\n80 | pub let AdminStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :81:4\n |\n81 | pub let AdminCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :82:4\n |\n82 | pub let AdminUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :83:4\n |\n83 | pub let AdminPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :85:4\n |\n85 | pub let OwnerExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :87:4\n |\n87 | pub let OwnerStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :88:4\n |\n88 | pub let OwnerCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :89:4\n |\n89 | pub let OwnerUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :90:4\n |\n90 | pub let OwnerPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :92:4\n |\n92 | pub let MasterMinterExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :94:4\n |\n94 | pub let MasterMinterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :95:4\n |\n95 | pub let MasterMinterCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :96:4\n |\n96 | pub let MasterMinterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :97:4\n |\n97 | pub let MasterMinterPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :99:4\n |\n99 | pub let MinterControllerStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :100:4\n |\n100 | pub let MinterControllerUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :101:4\n |\n101 | pub let MinterControllerPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :103:4\n |\n103 | pub let MinterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :104:4\n |\n104 | pub let MinterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :109:4\n |\n109 | pub let name: String\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :110:4\n |\n110 | pub var version: String\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :112:4\n |\n112 | pub var paused: Bool\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :114:4\n |\n114 | pub var totalSupply: UFix64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :125:4\n |\n125 | pub resource interface ResourceId {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :126:8\n |\n126 | pub fun UUID(): UInt64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :129:4\n |\n129 | pub resource interface AdminCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :130:8\n |\n130 | pub fun setAdminCap(cap: Capability\u003c\u0026AdminExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :133:4\n |\n133 | pub resource interface OwnerCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :134:8\n |\n134 | pub fun setOwnerCap(cap: Capability\u003c\u0026OwnerExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :137:4\n |\n137 | pub resource interface MasterMinterCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :138:8\n |\n138 | pub fun setMasterMinterCap(cap: Capability\u003c\u0026MasterMinterExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :141:4\n |\n141 | pub resource interface BlocklisterCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :142:8\n |\n142 | pub fun setBlocklistCap(cap: Capability\u003c\u0026BlocklistExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :145:4\n |\n145 | pub resource interface PauseCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :146:8\n |\n146 | pub fun setPauseCap(cap: Capability\u003c\u0026PauseExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :186:4\n |\n186 | pub resource Vault:\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :192:8\n |\n192 | pub var balance: UFix64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :194:8\n |\n194 | pub fun withdraw(amount: UFix64): @FungibleToken.Vault {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :205:8\n |\n205 | pub fun deposit(from: @FungibleToken.Vault) {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :219:8\n |\n219 | pub fun UUID(): UInt64 {\n | ^^^\n\nerror: custom destructor definitions are no longer permitted\n --\u003e :231:8\n |\n231 | destroy() {\n | ^ remove the destructor definition\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :244:4\n |\n244 | pub resource AdminExecutor {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :248:8\n |\n248 | pub fun upgradeContract(name: String, code: [UInt8], version: String) {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :252:8\n |\n252 | pub fun changeAdmin(to: Address, newPath: PrivatePath) {\n | ^^^\n\nerror: restricted types have been removed; replace with the concrete type or an equivalent intersection type\n --\u003e :255:38\n |\n255 | .getCapability\u003c\u0026Admin{AdminCapReceiver}\u003e(FiatToken.AdminCapReceiverPubPath)\n | ^^^^^^^^^^^^^^^^\n\n--\u003e a983fecbed621163.FiatToken\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:23:48\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:165:55\n\nerror: cannot find variable in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:165:72\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLPack:165:24\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:111:38\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:112:35\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLPack:111:56\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLPack:111:56\n\n--\u003e b39a42479c1c2c77.AFLPack\n"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"AFLBadges"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"AFLBurnExchange"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"AFLBurnRegistry"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"AFLIndex"},{"kind":"contract-update-failure","account_address":"0xb39a42479c1c2c77","contract_name":"AFLMarketplace","error":"error: error getting program a983fecbed621163.FiatToken: failed to derive value: load program failed: Parsing failed:\nerror: `pub` is no longer a valid access keyword\n --\u003e :5:0\n |\n5 | pub contract FiatToken: FungibleToken {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :10:4\n |\n10 | pub event AdminCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :11:4\n |\n11 | pub event AdminChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :14:4\n |\n14 | pub event OwnerCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :15:4\n |\n15 | pub event OwnerChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :18:4\n |\n18 | pub event MasterMinterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :19:4\n |\n19 | pub event MasterMinterChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :22:4\n |\n22 | pub event Paused()\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :23:4\n |\n23 | pub event Unpaused()\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :24:4\n |\n24 | pub event PauserCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :25:4\n |\n25 | pub event PauserChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :28:4\n |\n28 | pub event Blocklisted(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :29:4\n |\n29 | pub event Unblocklisted(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :30:4\n |\n30 | pub event BlocklisterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :31:4\n |\n31 | pub event BlocklisterChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :34:4\n |\n34 | pub event NewVault(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :35:4\n |\n35 | pub event DestroyVault(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :36:4\n |\n36 | pub event FiatTokenWithdrawn(amount: UFix64, from: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :37:4\n |\n37 | pub event FiatTokenDeposited(amount: UFix64, to: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :40:4\n |\n40 | pub event MinterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :41:4\n |\n41 | pub event MinterControllerCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :42:4\n |\n42 | pub event Mint(minter: UInt64, amount: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :43:4\n |\n43 | pub event Burn(minter: UInt64, amount: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :44:4\n |\n44 | pub event MinterConfigured(controller: UInt64, minter: UInt64, allowance: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :45:4\n |\n45 | pub event MinterRemoved(controller: UInt64, minter: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :46:4\n |\n46 | pub event ControllerConfigured(controller: UInt64, minter: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :47:4\n |\n47 | pub event ControllerRemoved(controller: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :52:4\n |\n52 | pub event TokensInitialized(initialSupply: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :53:4\n |\n53 | pub event TokensWithdrawn(amount: UFix64, from: Address?)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :54:4\n |\n54 | pub event TokensDeposited(amount: UFix64, to: Address?)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :59:4\n |\n59 | pub let VaultStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :60:4\n |\n60 | pub let VaultBalancePubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :61:4\n |\n61 | pub let VaultUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :62:4\n |\n62 | pub let VaultReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :64:4\n |\n64 | pub let BlocklistExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :66:4\n |\n66 | pub let BlocklisterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :67:4\n |\n67 | pub let BlocklisterCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :68:4\n |\n68 | pub let BlocklisterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :69:4\n |\n69 | pub let BlocklisterPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :71:4\n |\n71 | pub let PauseExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :73:4\n |\n73 | pub let PauserStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :74:4\n |\n74 | pub let PauserCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :75:4\n |\n75 | pub let PauserUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :76:4\n |\n76 | pub let PauserPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :78:4\n |\n78 | pub let AdminExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :80:4\n |\n80 | pub let AdminStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :81:4\n |\n81 | pub let AdminCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :82:4\n |\n82 | pub let AdminUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :83:4\n |\n83 | pub let AdminPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :85:4\n |\n85 | pub let OwnerExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :87:4\n |\n87 | pub let OwnerStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :88:4\n |\n88 | pub let OwnerCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :89:4\n |\n89 | pub let OwnerUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :90:4\n |\n90 | pub let OwnerPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :92:4\n |\n92 | pub let MasterMinterExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :94:4\n |\n94 | pub let MasterMinterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :95:4\n |\n95 | pub let MasterMinterCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :96:4\n |\n96 | pub let MasterMinterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :97:4\n |\n97 | pub let MasterMinterPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :99:4\n |\n99 | pub let MinterControllerStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :100:4\n |\n100 | pub let MinterControllerUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :101:4\n |\n101 | pub let MinterControllerPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :103:4\n |\n103 | pub let MinterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :104:4\n |\n104 | pub let MinterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :109:4\n |\n109 | pub let name: String\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :110:4\n |\n110 | pub var version: String\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :112:4\n |\n112 | pub var paused: Bool\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :114:4\n |\n114 | pub var totalSupply: UFix64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :125:4\n |\n125 | pub resource interface ResourceId {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :126:8\n |\n126 | pub fun UUID(): UInt64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :129:4\n |\n129 | pub resource interface AdminCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :130:8\n |\n130 | pub fun setAdminCap(cap: Capability\u003c\u0026AdminExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :133:4\n |\n133 | pub resource interface OwnerCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :134:8\n |\n134 | pub fun setOwnerCap(cap: Capability\u003c\u0026OwnerExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :137:4\n |\n137 | pub resource interface MasterMinterCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :138:8\n |\n138 | pub fun setMasterMinterCap(cap: Capability\u003c\u0026MasterMinterExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :141:4\n |\n141 | pub resource interface BlocklisterCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :142:8\n |\n142 | pub fun setBlocklistCap(cap: Capability\u003c\u0026BlocklistExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :145:4\n |\n145 | pub resource interface PauseCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :146:8\n |\n146 | pub fun setPauseCap(cap: Capability\u003c\u0026PauseExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :186:4\n |\n186 | pub resource Vault:\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :192:8\n |\n192 | pub var balance: UFix64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :194:8\n |\n194 | pub fun withdraw(amount: UFix64): @FungibleToken.Vault {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :205:8\n |\n205 | pub fun deposit(from: @FungibleToken.Vault) {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :219:8\n |\n219 | pub fun UUID(): UInt64 {\n | ^^^\n\nerror: custom destructor definitions are no longer permitted\n --\u003e :231:8\n |\n231 | destroy() {\n | ^ remove the destructor definition\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :244:4\n |\n244 | pub resource AdminExecutor {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :248:8\n |\n248 | pub fun upgradeContract(name: String, code: [UInt8], version: String) {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :252:8\n |\n252 | pub fun changeAdmin(to: Address, newPath: PrivatePath) {\n | ^^^\n\nerror: restricted types have been removed; replace with the concrete type or an equivalent intersection type\n --\u003e :255:38\n |\n255 | .getCapability\u003c\u0026Admin{AdminCapReceiver}\u003e(FiatToken.AdminCapReceiverPubPath)\n | ^^^^^^^^^^^^^^^^\n\n--\u003e a983fecbed621163.FiatToken\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:79:33\n |\n79 | init (vault: Capability\u003c\u0026FiatToken.Vault\u003e) {\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:77:49\n |\n77 | access(self) let ownerVault: Capability\u003c\u0026FiatToken.Vault\u003e\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:259:70\n |\n259 | access(all) fun changeMarketplaceWallet(_ newCap: Capability\u003c\u0026FiatToken.Vault\u003e) {\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:12:56\n |\n12 | access(contract) var marketplaceWallet: Capability\u003c\u0026FiatToken.Vault\u003e\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:242:65\n |\n242 | access(all) fun createSaleCollection(ownerVault: Capability\u003c\u0026FiatToken.Vault\u003e): @SaleCollection {\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:277:64\n |\n277 | self.marketplaceWallet = self.account.capabilities.get\u003c\u0026FiatToken.Vault\u003e(/public/FiatTokenVaultReceiver)\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLMarketplace:277:33\n |\n277 | self.marketplaceWallet = self.account.capabilities.get\u003c\u0026FiatToken.Vault\u003e(/public/FiatTokenVaultReceiver)\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:119:36\n |\n119 | let saleOwnerVaultRef: \u0026FiatToken.Vault = self.ownerVault.borrow() ?? panic(\"could not borrow reference to the owner vault\")\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLMarketplace:126:36\n |\n126 | let marketplaceWallet: \u0026FiatToken.Vault = AFLMarketplace.marketplaceWallet.borrow() ?? panic(\"Couldn't borrow Vault reference\")\n | ^^^^^^^^^ not found in this scope\n"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"AFLMetadataHelper"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"AFLNFT"},{"kind":"contract-update-failure","account_address":"0xb39a42479c1c2c77","contract_name":"AFLPack","error":"error: error getting program a983fecbed621163.FiatToken: failed to derive value: load program failed: Parsing failed:\nerror: `pub` is no longer a valid access keyword\n --\u003e :5:0\n |\n5 | pub contract FiatToken: FungibleToken {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :10:4\n |\n10 | pub event AdminCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :11:4\n |\n11 | pub event AdminChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :14:4\n |\n14 | pub event OwnerCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :15:4\n |\n15 | pub event OwnerChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :18:4\n |\n18 | pub event MasterMinterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :19:4\n |\n19 | pub event MasterMinterChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :22:4\n |\n22 | pub event Paused()\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :23:4\n |\n23 | pub event Unpaused()\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :24:4\n |\n24 | pub event PauserCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :25:4\n |\n25 | pub event PauserChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :28:4\n |\n28 | pub event Blocklisted(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :29:4\n |\n29 | pub event Unblocklisted(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :30:4\n |\n30 | pub event BlocklisterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :31:4\n |\n31 | pub event BlocklisterChanged(address: Address, resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :34:4\n |\n34 | pub event NewVault(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :35:4\n |\n35 | pub event DestroyVault(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :36:4\n |\n36 | pub event FiatTokenWithdrawn(amount: UFix64, from: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :37:4\n |\n37 | pub event FiatTokenDeposited(amount: UFix64, to: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :40:4\n |\n40 | pub event MinterCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :41:4\n |\n41 | pub event MinterControllerCreated(resourceId: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :42:4\n |\n42 | pub event Mint(minter: UInt64, amount: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :43:4\n |\n43 | pub event Burn(minter: UInt64, amount: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :44:4\n |\n44 | pub event MinterConfigured(controller: UInt64, minter: UInt64, allowance: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :45:4\n |\n45 | pub event MinterRemoved(controller: UInt64, minter: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :46:4\n |\n46 | pub event ControllerConfigured(controller: UInt64, minter: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :47:4\n |\n47 | pub event ControllerRemoved(controller: UInt64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :52:4\n |\n52 | pub event TokensInitialized(initialSupply: UFix64)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :53:4\n |\n53 | pub event TokensWithdrawn(amount: UFix64, from: Address?)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :54:4\n |\n54 | pub event TokensDeposited(amount: UFix64, to: Address?)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :59:4\n |\n59 | pub let VaultStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :60:4\n |\n60 | pub let VaultBalancePubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :61:4\n |\n61 | pub let VaultUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :62:4\n |\n62 | pub let VaultReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :64:4\n |\n64 | pub let BlocklistExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :66:4\n |\n66 | pub let BlocklisterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :67:4\n |\n67 | pub let BlocklisterCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :68:4\n |\n68 | pub let BlocklisterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :69:4\n |\n69 | pub let BlocklisterPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :71:4\n |\n71 | pub let PauseExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :73:4\n |\n73 | pub let PauserStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :74:4\n |\n74 | pub let PauserCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :75:4\n |\n75 | pub let PauserUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :76:4\n |\n76 | pub let PauserPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :78:4\n |\n78 | pub let AdminExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :80:4\n |\n80 | pub let AdminStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :81:4\n |\n81 | pub let AdminCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :82:4\n |\n82 | pub let AdminUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :83:4\n |\n83 | pub let AdminPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :85:4\n |\n85 | pub let OwnerExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :87:4\n |\n87 | pub let OwnerStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :88:4\n |\n88 | pub let OwnerCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :89:4\n |\n89 | pub let OwnerUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :90:4\n |\n90 | pub let OwnerPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :92:4\n |\n92 | pub let MasterMinterExecutorStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :94:4\n |\n94 | pub let MasterMinterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :95:4\n |\n95 | pub let MasterMinterCapReceiverPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :96:4\n |\n96 | pub let MasterMinterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :97:4\n |\n97 | pub let MasterMinterPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :99:4\n |\n99 | pub let MinterControllerStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :100:4\n |\n100 | pub let MinterControllerUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :101:4\n |\n101 | pub let MinterControllerPubSigner: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :103:4\n |\n103 | pub let MinterStoragePath: StoragePath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :104:4\n |\n104 | pub let MinterUUIDPubPath: PublicPath\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :109:4\n |\n109 | pub let name: String\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :110:4\n |\n110 | pub var version: String\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :112:4\n |\n112 | pub var paused: Bool\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :114:4\n |\n114 | pub var totalSupply: UFix64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :125:4\n |\n125 | pub resource interface ResourceId {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :126:8\n |\n126 | pub fun UUID(): UInt64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :129:4\n |\n129 | pub resource interface AdminCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :130:8\n |\n130 | pub fun setAdminCap(cap: Capability\u003c\u0026AdminExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :133:4\n |\n133 | pub resource interface OwnerCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :134:8\n |\n134 | pub fun setOwnerCap(cap: Capability\u003c\u0026OwnerExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :137:4\n |\n137 | pub resource interface MasterMinterCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :138:8\n |\n138 | pub fun setMasterMinterCap(cap: Capability\u003c\u0026MasterMinterExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :141:4\n |\n141 | pub resource interface BlocklisterCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :142:8\n |\n142 | pub fun setBlocklistCap(cap: Capability\u003c\u0026BlocklistExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :145:4\n |\n145 | pub resource interface PauseCapReceiver {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :146:8\n |\n146 | pub fun setPauseCap(cap: Capability\u003c\u0026PauseExecutor\u003e)\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :186:4\n |\n186 | pub resource Vault:\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :192:8\n |\n192 | pub var balance: UFix64\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :194:8\n |\n194 | pub fun withdraw(amount: UFix64): @FungibleToken.Vault {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :205:8\n |\n205 | pub fun deposit(from: @FungibleToken.Vault) {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :219:8\n |\n219 | pub fun UUID(): UInt64 {\n | ^^^\n\nerror: custom destructor definitions are no longer permitted\n --\u003e :231:8\n |\n231 | destroy() {\n | ^ remove the destructor definition\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :244:4\n |\n244 | pub resource AdminExecutor {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :248:8\n |\n248 | pub fun upgradeContract(name: String, code: [UInt8], version: String) {\n | ^^^\n\nerror: `pub` is no longer a valid access keyword\n --\u003e :252:8\n |\n252 | pub fun changeAdmin(to: Address, newPath: PrivatePath) {\n | ^^^\n\nerror: restricted types have been removed; replace with the concrete type or an equivalent intersection type\n --\u003e :255:38\n |\n255 | .getCapability\u003c\u0026Admin{AdminCapReceiver}\u003e(FiatToken.AdminCapReceiverPubPath)\n | ^^^^^^^^^^^^^^^^\n\n--\u003e a983fecbed621163.FiatToken\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:23:48\n |\n23 | access(contract) let adminRef : Capability\u003c\u0026FiatToken.Vault\u003e\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:165:55\n |\n165 | self.adminRef = self.account.capabilities.get\u003c\u0026FiatToken.Vault\u003e(FiatToken.VaultReceiverPubPath)\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find variable in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:165:72\n |\n165 | self.adminRef = self.account.capabilities.get\u003c\u0026FiatToken.Vault\u003e(FiatToken.VaultReceiverPubPath)\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLPack:165:24\n |\n165 | self.adminRef = self.account.capabilities.get\u003c\u0026FiatToken.Vault\u003e(FiatToken.VaultReceiverPubPath)\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:111:38\n |\n111 | let recipientCollection: \u0026FiatToken.Vault = receiptAccount\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FiatToken`\n --\u003e b39a42479c1c2c77.AFLPack:112:35\n |\n112 | .capabilities.get\u003c\u0026FiatToken.Vault\u003e(/public/FiatTokenVaultReceiver)\n | ^^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLPack:111:56\n |\n111 | let recipientCollection: \u0026FiatToken.Vault = receiptAccount\n112 | .capabilities.get\u003c\u0026FiatToken.Vault\u003e(/public/FiatTokenVaultReceiver)\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot infer type parameter: `T`\n --\u003e b39a42479c1c2c77.AFLPack:111:56\n |\n111 | let recipientCollection: \u0026FiatToken.Vault = receiptAccount\n112 | .capabilities.get\u003c\u0026FiatToken.Vault\u003e(/public/FiatTokenVaultReceiver)\n113 | .borrow()\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"PackRestrictions"},{"kind":"contract-update-success","account_address":"0xb39a42479c1c2c77","contract_name":"StorageHelper"},{"kind":"contract-update-success","account_address":"0x86d1c2159a5d9eca","contract_name":"TransactionTypes"},{"kind":"contract-update-success","account_address":"0x668b91e2995c2eba","contract_name":"PrivateReceiverForwarder"},{"kind":"contract-update-failure","account_address":"0x8b47f4dd22afee8d","contract_name":"MetadataViews","error":"error: missing resource interface declaration `Resolver`\n --\u003e 8b47f4dd22afee8d.MetadataViews:15:21\n |\n15 | access(all) contract MetadataViews {\n | ^^^^^^^^^^^^^\n\nerror: missing resource interface declaration `ResolverCollection`\n --\u003e 8b47f4dd22afee8d.MetadataViews:15:21\n |\n15 | access(all) contract MetadataViews {\n | ^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0x8b47f4dd22afee8d","contract_name":"TrmAssetMSV1_0"},{"kind":"contract-update-success","account_address":"0x08b1f9c0bc04f36f","contract_name":"IconoGraphika"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Admin"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Clock"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Debug"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"DoodleNames"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"DoodlePackTypes"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"DoodlePacks"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Doodles"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"GenesisBoxRegistry"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"OpenDoodlePacks"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Random"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Redeemables"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Teleport"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Templates"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"TransactionsRegistry"},{"kind":"contract-update-success","account_address":"0x1c5033ad60821c97","contract_name":"Wearables"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"DNAHandler"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"FlowtyListingCallback"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"FlowtyUtils"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"FlowtyViews"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"NFTStorefrontV2"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"Permitted"},{"kind":"contract-update-success","account_address":"0xb051bdaddb672a33","contract_name":"RoyaltiesOverride"},{"kind":"contract-update-success","account_address":"0xd9c02cdacccb25ab","contract_name":"FlowtyTestNFT"},{"kind":"contract-update-success","account_address":"0x3b220a3372190656","contract_name":"PriceOracle"},{"kind":"contract-update-failure","account_address":"0x8770564d92180608","contract_name":"MetadataViews","error":"error: cannot find declaration `FungibleToken` in `631e88ae7f1d7c20.FungibleToken`\n --\u003e 8770564d92180608.MetadataViews:3:7\n |\n3 | import FungibleToken from 0x631e88ae7f1d7c20\n | ^^^^^^^^^^^^^ available exported declarations are:\n\n\nerror: ambiguous intersection type\n --\u003e 8770564d92180608.MetadataViews:280:40\n |\n280 | view init(receiver: Capability\u003c\u0026{FungibleToken.Receiver}\u003e, cut: UFix64, description: String) {\n | ^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: ambiguous intersection type\n --\u003e 8770564d92180608.MetadataViews:262:46\n |\n262 | access(all) let receiver: Capability\u003c\u0026{FungibleToken.Receiver}\u003e\n | ^^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0x8770564d92180608","contract_name":"TrmAssetV2_2"},{"kind":"contract-update-success","account_address":"0x8770564d92180608","contract_name":"TrmMarketV2_2"},{"kind":"contract-update-success","account_address":"0x8770564d92180608","contract_name":"TrmRentV2_2"},{"kind":"contract-update-success","account_address":"0x26a1e94319e81a3c","contract_name":"Staking"},{"kind":"contract-update-success","account_address":"0x26a1e94319e81a3c","contract_name":"StakingError"},{"kind":"contract-update-success","account_address":"0x547f177b243b4d80","contract_name":"Market"},{"kind":"contract-update-success","account_address":"0x547f177b243b4d80","contract_name":"TopShotMarketV3"},{"kind":"contract-update-success","account_address":"0x3286bb76e4e115fe","contract_name":"Boneyard"},{"kind":"contract-update-success","account_address":"0x5d45c655fcde5037","contract_name":"TicalUniverse"},{"kind":"contract-update-success","account_address":"0x5d45c655fcde5037","contract_name":"TuneGO"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"Gamisodes"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"Lufthaus"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"MUMGJ"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"MintStoreItem"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"OpenLockerInc"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"OpenLockerIncBoneYardHuskyzClub"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"Pickem"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"RTLStoreItem"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"YBees"},{"kind":"contract-update-success","account_address":"0x985d410b577fd4a1","contract_name":"YoungBoysBern"},{"kind":"contract-update-success","account_address":"0x92362a384f409a52","contract_name":"TrmAssetV2_2"},{"kind":"contract-update-success","account_address":"0x92362a384f409a52","contract_name":"TrmMarketV2_2"},{"kind":"contract-update-success","account_address":"0x92362a384f409a52","contract_name":"TrmRentV2_2"},{"kind":"contract-update-success","account_address":"0x3870b3d38f83ae4c","contract_name":"FiatToken"},{"kind":"contract-update-success","account_address":"0x3870b3d38f83ae4c","contract_name":"FlowEVMBridgeHandlerInterfaces"},{"kind":"contract-update-success","account_address":"0x8aaca41f09eb1e3d","contract_name":"LendingPool"},{"kind":"contract-update-success","account_address":"0x2f8af5ed05bbde0d","contract_name":"SwapRouter"},{"kind":"contract-update-failure","account_address":"0x35717efbbce11c74","contract_name":"Admin","error":"error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:\nerror: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:\nerror: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\n--\u003e 857dc34d5e1631d3.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:38:24\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:81:24\n\n--\u003e 35717efbbce11c74.FindVerifier\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:164:26\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:164:25\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:156:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:156:37\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:211:123\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:211:122\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:208:38\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:208:37\n\n--\u003e 35717efbbce11c74.FindPack\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:292:33\n |\n292 | let pathIdentifier = FindPack.getPacksCollectionPath(packTypeName: packTypeName, packTypeId: typeId)\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:295:31\n |\n295 | let mintPackData = FindPack.MintPackData(packTypeName: packTypeName, typeId: typeId, hash: hash, verifierRef: FindForge.borrowVerifier())\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:296:70\n |\n296 | FindForge.adminMint(lease: packTypeName, forgeType: Type\u003c@FindPack.Forge\u003e() , data: mintPackData, receiver: receiver)\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.Admin:296:64\n |\n296 | FindForge.adminMint(lease: packTypeName, forgeType: Type\u003c@FindPack.Forge\u003e() , data: mintPackData, receiver: receiver)\n | ^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:303:12\n |\n303 | FindPack.fulfill(packId:packId, types:types, rewardIds:rewardIds, salt:salt)\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:311:55\n |\n311 | let cap= Admin.account.storage.borrow\u003cauth(FindPack.Owner) \u0026FindPack.Collection\u003e(from: FindPack.DLQCollectionStoragePath)!\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find type in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:311:72\n |\n311 | let cap= Admin.account.storage.borrow\u003cauth(FindPack.Owner) \u0026FindPack.Collection\u003e(from: FindPack.DLQCollectionStoragePath)!\n | ^^^^^^^^ not found in this scope\n\nerror: cannot find variable in this scope: `FindPack`\n --\u003e 35717efbbce11c74.Admin:311:99\n |\n311 | let cap= Admin.account.storage.borrow\u003cauth(FindPack.Owner) \u0026FindPack.Collection\u003e(from: FindPack.DLQCollectionStoragePath)!\n | ^^^^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.Admin:311:21\n |\n311 | let cap= Admin.account.storage.borrow\u003cauth(FindPack.Owner) \u0026FindPack.Collection\u003e(from: FindPack.DLQCollectionStoragePath)!\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"CharityNFT"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"Clock"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"Dandy"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"Debug"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FIND"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FINDNFTCatalog"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FINDNFTCatalogAdmin"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FTRegistry"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindAirdropper"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindForge"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindForgeOrder"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindForgeStruct"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindFurnace"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindLeaseMarket"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindLeaseMarketAuctionSoft"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindLeaseMarketDirectOfferSoft"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindLeaseMarketSale"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindLostAndFoundWrapper"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarket"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketAdmin"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketAuctionEscrow"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketAuctionSoft"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketCut"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketCutInterface"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketCutStruct"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketDirectOfferEscrow"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketDirectOfferSoft"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketInfrastructureCut"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindMarketSale"},{"kind":"contract-update-failure","account_address":"0x35717efbbce11c74","contract_name":"FindPack","error":"error: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:\nerror: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\n--\u003e 857dc34d5e1631d3.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:38:24\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:62\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:80\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:81:24\n\n--\u003e 35717efbbce11c74.FindVerifier\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:164:26\n |\n164 | verifiers : [{FindVerifier.Verifier}],\n | ^^^^^^^^^^^^ not found in this scope\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:164:25\n |\n164 | verifiers : [{FindVerifier.Verifier}],\n | ^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:156:38\n |\n156 | access(all) let verifiers : [{FindVerifier.Verifier}]\n | ^^^^^^^^^^^^ not found in this scope\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:156:37\n |\n156 | access(all) let verifiers : [{FindVerifier.Verifier}]\n | ^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:211:123\n |\n211 | init(name : String, startTime : UFix64 , endTime : UFix64? , price : UFix64, purchaseLimit : UInt64?, verifiers: [{FindVerifier.Verifier}], verifyAll : Bool ) {\n | ^^^^^^^^^^^^ not found in this scope\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:211:122\n |\n211 | init(name : String, startTime : UFix64 , endTime : UFix64? , price : UFix64, purchaseLimit : UInt64?, verifiers: [{FindVerifier.Verifier}], verifyAll : Bool ) {\n | ^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FindVerifier`\n --\u003e 35717efbbce11c74.FindPack:208:38\n |\n208 | access(all) let verifiers : [{FindVerifier.Verifier}]\n | ^^^^^^^^^^^^ not found in this scope\n\nerror: ambiguous intersection type\n --\u003e 35717efbbce11c74.FindPack:208:37\n |\n208 | access(all) let verifiers : [{FindVerifier.Verifier}]\n | ^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindRelatedAccounts"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindRulesCache"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindThoughts"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindUtils"},{"kind":"contract-update-failure","account_address":"0x35717efbbce11c74","contract_name":"FindVerifier","error":"error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:326:43\n\nerror: cannot find type in this scope: `NonFungibleToken.Owner`\n --\u003e 857dc34d5e1631d3.FLOAT:350:15\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:270:29\n\nerror: cannot apply binary operation ?? to left-hand type\n --\u003e 857dc34d5e1631d3.FLOAT:198:17\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\nerror: resource `FLOAT.Collection` does not conform to resource interface `NonFungibleToken.Collection`\n --\u003e 857dc34d5e1631d3.FLOAT:298:25\n\n--\u003e 857dc34d5e1631d3.FLOAT\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:62\n |\n38 | let float = getAccount(user).capabilities.borrow\u003c\u0026FLOAT.Collection\u003e(FLOAT.FLOATCollectionPublicPath)\n | ^^^^^ not found in this scope\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:38:80\n |\n38 | let float = getAccount(user).capabilities.borrow\u003c\u0026FLOAT.Collection\u003e(FLOAT.FLOATCollectionPublicPath)\n | ^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:38:24\n |\n38 | let float = getAccount(user).capabilities.borrow\u003c\u0026FLOAT.Collection\u003e(FLOAT.FLOATCollectionPublicPath)\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nerror: cannot find type in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:62\n |\n81 | let float = getAccount(user).capabilities.borrow\u003c\u0026FLOAT.Collection\u003e(FLOAT.FLOATCollectionPublicPath)\n | ^^^^^ not found in this scope\n\nerror: cannot find variable in this scope: `FLOAT`\n --\u003e 35717efbbce11c74.FindVerifier:81:80\n |\n81 | let float = getAccount(user).capabilities.borrow\u003c\u0026FLOAT.Collection\u003e(FLOAT.FLOATCollectionPublicPath)\n | ^^^^^ not found in this scope\n\nerror: cannot infer type parameter: `T`\n --\u003e 35717efbbce11c74.FindVerifier:81:24\n |\n81 | let float = getAccount(user).capabilities.borrow\u003c\u0026FLOAT.Collection\u003e(FLOAT.FLOATCollectionPublicPath)\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"FindViews"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"NameVoucher"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"Profile"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"ProfileCache"},{"kind":"contract-update-success","account_address":"0x35717efbbce11c74","contract_name":"Sender"},{"kind":"contract-update-success","account_address":"0x917db7072ed7160b","contract_name":"Cryptoys"},{"kind":"contract-update-success","account_address":"0x917db7072ed7160b","contract_name":"CryptoysMetadataView2"},{"kind":"contract-update-success","account_address":"0x917db7072ed7160b","contract_name":"ICryptoys"},{"kind":"contract-update-success","account_address":"0xcc4e949596cf8ced","contract_name":"TwoSegmentsInterestRateModel"},{"kind":"contract-update-success","account_address":"0xc911d6ddfae70ce8","contract_name":"PriceOracle"},{"kind":"contract-update-success","account_address":"0x6d0f55821f6b2dbe","contract_name":"BBxBarbieCard"},{"kind":"contract-update-success","account_address":"0x6d0f55821f6b2dbe","contract_name":"BBxBarbiePM"},{"kind":"contract-update-success","account_address":"0x6d0f55821f6b2dbe","contract_name":"BBxBarbiePack"},{"kind":"contract-update-success","account_address":"0x6d0f55821f6b2dbe","contract_name":"BBxBarbieToken"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"CapabilityDelegator"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"CapabilityFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"CapabilityFilter"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"FTAllFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"FTBalanceFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"FTProviderFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"FTReceiverBalanceFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"FTReceiverFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"HybridCustody"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"NFTCollectionPublicFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"NFTProviderAndCollectionFactory"},{"kind":"contract-update-success","account_address":"0x294e44e1ec6993c6","contract_name":"NFTProviderFactory"},{"kind":"contract-update-success","account_address":"0x31ad40c07a2a9788","contract_name":"AddressUtils"},{"kind":"contract-update-success","account_address":"0x31ad40c07a2a9788","contract_name":"ArrayUtils"},{"kind":"contract-update-success","account_address":"0x31ad40c07a2a9788","contract_name":"ScopedFTProviders"},{"kind":"contract-update-success","account_address":"0x31ad40c07a2a9788","contract_name":"ScopedNFTProviders"},{"kind":"contract-update-success","account_address":"0x31ad40c07a2a9788","contract_name":"StringUtils"},{"kind":"contract-update-success","account_address":"0xddb929038d45d4b3","contract_name":"SwapConfig"},{"kind":"contract-update-success","account_address":"0xddb929038d45d4b3","contract_name":"SwapError"},{"kind":"contract-update-success","account_address":"0xddb929038d45d4b3","contract_name":"SwapInterfaces"},{"kind":"contract-update-success","account_address":"0x43ee8c22fcf94ea3","contract_name":"DapperStorageRent"},{"kind":"contract-update-success","account_address":"0xef4cd3d07a7b43ce","contract_name":"IPackNFT"},{"kind":"contract-update-success","account_address":"0xef4cd3d07a7b43ce","contract_name":"PDS"},{"kind":"contract-update-success","account_address":"0x6d692450d591524c","contract_name":"PriceOracle"},{"kind":"contract-update-success","account_address":"0x072127280188a611","contract_name":"TestRootContract"},{"kind":"contract-update-success","account_address":"0x2d766f00eb1d0c37","contract_name":"PriceOracle"},{"kind":"contract-update-success","account_address":"0x44ef9309713e2061","contract_name":"StakingError"},{"kind":"contract-update-success","account_address":"0x44ef9309713e2061","contract_name":"StakingNFT"},{"kind":"contract-update-success","account_address":"0xe8124d8428980aa6","contract_name":"Bl0x"},{"kind":"contract-update-success","account_address":"0xc15e75b5f6b95e54","contract_name":"LendingComptroller"},{"kind":"contract-update-failure","account_address":"0xbd327ae7428784b5","contract_name":"FlowEVMBridgeHandlerInterfaces","error":"error: trying to convert contract interface `FlowEVMBridgeHandlerInterfaces` to a contract\n --\u003e bd327ae7428784b5.FlowEVMBridgeHandlerInterfaces:12:21\n |\n12 | access(all) contract FlowEVMBridgeHandlerInterfaces {\n | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n"},{"kind":"contract-update-success","account_address":"0xe223d8a629e49c68","contract_name":"FUSD"},{"kind":"contract-update-success","account_address":"0xe45c64ecfe31e465","contract_name":"DelegatorManager"},{"kind":"contract-update-success","account_address":"0xe45c64ecfe31e465","contract_name":"LiquidStaking"},{"kind":"contract-update-success","account_address":"0xe45c64ecfe31e465","contract_name":"LiquidStakingConfig"},{"kind":"contract-update-success","account_address":"0xe45c64ecfe31e465","contract_name":"LiquidStakingError"},{"kind":"contract-update-success","account_address":"0xe45c64ecfe31e465","contract_name":"stFlowToken"},{"kind":"contract-update-success","account_address":"0xdfc20aee650fcbdf","contract_name":"FlowEVMBridgeHandlerInterfaces"},{"kind":"contract-update-success","account_address":"0x23031fd14bb0f21b","contract_name":"TwoSegmentsInterestRateModel"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"ETHUtils"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"EVMAgent"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FGameLottery"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FGameLotteryFactory"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FGameLotteryRegistry"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FGameRugRoyale"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20AccountsPool"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Agents"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Converter"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20FTShared"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20FungibleToken"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Indexer"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20MarketManager"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Marketplace"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20NFTWrapper"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20SemiNFT"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Staking"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20StakingForwarder"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20StakingManager"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20StakingVesting"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Storefront"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20TradingRecord"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20VoteCommands"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FRC20Votes"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"Fixes"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesAssetMeta"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesAvatar"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesBondingCurve"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesFungibleToken"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesFungibleTokenInterface"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesHeartbeat"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesInscriptionFactory"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesTokenAirDrops"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesTokenLockDrops"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesTradablePool"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesTraits"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FixesWrappedNFT"},{"kind":"contract-update-success","account_address":"0x74ad08095d92192a","contract_name":"FungibleTokenManager"},{"kind":"contract-update-success","account_address":"0x3a52faafb43951c0","contract_name":"LNVCT"},{"kind":"contract-update-success","account_address":"0x3a52faafb43951c0","contract_name":"MLS"},{"kind":"contract-update-success","account_address":"0x3a52faafb43951c0","contract_name":"NFL"},{"kind":"contract-update-success","account_address":"0x3a52faafb43951c0","contract_name":"Stanz"},{"kind":"contract-update-success","account_address":"0x3a52faafb43951c0","contract_name":"TMNFT"},{"kind":"contract-update-success","account_address":"0xb45e7992680a0f7f","contract_name":"CricketMoments"},{"kind":"contract-update-success","account_address":"0xb45e7992680a0f7f","contract_name":"FazeUtilityCoin"},{"kind":"contract-update-success","account_address":"0xd704ee8202a0d82d","contract_name":"ExampleNFT"},{"kind":"contract-update-success","account_address":"0xa1296b1e2e90ca5b","contract_name":"HelloWorld"},{"kind":"contract-update-success","account_address":"0x6c35f966375845a6","contract_name":"TixologiTickets"},{"kind":"contract-update-success","account_address":"0x520a7157e1b964ed","contract_name":"ShebaHopeGrows"},{"kind":"contract-update-success","account_address":"0xd8f6346999b983f5","contract_name":"IPackNFT"},{"kind":"contract-update-success","account_address":"0x8232ce4a3aff4e94","contract_name":"PublicPriceOracle"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"ACCO_SOLEIL"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"AIICOSMPLG"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"AUGUSTUS1"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"BFD"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"BTC"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"BYPRODUCT"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"DOGETKN"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"DUNK"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"DWLC"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"EBISU"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"ECO"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"EDGE"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"ELEMENT"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"ExampleNFT"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"H442T04"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"H442T05"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"HowardNFT"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"IAT"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"JOSHIN"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"KOZO"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"Karat"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"KaratNFT"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"Karatv2"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MARK"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MARKIE"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MARKIE2"},{"kind":"contract-update-success","account_address":"0x9680721e43087f43","contract_name":"DropTypes"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MARKIE3"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MEDI"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MEGAMI"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"MRFRIENDLY"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"SCARETKN"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"SNAKE"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"SUGOI"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"SUNTORY"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"Sorachi"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"Story"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"TNP"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"TOM"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"TS"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"TSTCON"},{"kind":"contract-update-success","account_address":"0x566c813b3632783e","contract_name":"WE_PIN"}] \ No newline at end of file diff --git a/migrations_data/staged-contracts-report-2024-06-05T10-00-00Z-testnet.md b/migrations_data/staged-contracts-report-2024-06-05T10-00-00Z-testnet.md new file mode 100644 index 0000000000..9600b40658 --- /dev/null +++ b/migrations_data/staged-contracts-report-2024-06-05T10-00-00Z-testnet.md @@ -0,0 +1,437 @@ +## Cadence 1.0 staged contracts migration results +Date: 06 June, 2024 + +> [!CAUTION] +> **IMPORTANT SECURITY NOTICE** +> +> Some staged contracts might be insecure due to incorrect access modifiers usage. +> Please make sure you have carefully reviewed and understood the section of [Cadence Migration Guide on Access Modifiers](https://cadence-lang.org/docs/cadence-migration-guide/nft-guide#update-all-pub-access-modfiers) + +* Stats: 413 contracts staged, 389 successfully upgraded, 24 failed to upgrade +* Testnet State Snapshot: devnet50-execution-snapshot-for-migration-10-jun-5 +* Flow-go build: v0.35.11-crescendo-preview.26-atree-inlining + +> [!NOTE] +> Developers can use Crescendo migration environment to test your migrated dapp! We notify the community in [Discord Developer UPdates channel](https://discord.com/channels/613813861610684416/811693600403357706) when the environment is available for testing after migration. The Access node endpoint for the migration environment is: `access-001.migrationtestnet1.nodes.onflow.org:9000`. + +**Useful Tools / Links** +* [View contracts staged on Testnet](https://f.dnz.dev/0x2ceae959ed1a7e7a/) +* [Great community tool to view up-to-date staging status](https://staging.dnz.dev/) + +### Migration Report + +|Account Address | Contract Name | Status | +| --- | --- | --- | +| 0x4dfd62c88d1b6462 | AllDay | ✅ | +| 0x4dfd62c88d1b6462 | PackNFT | ✅ | +| 0x2d0d952e760d1770 | CricketMoments | ✅ | +| 0x2d0d952e760d1770 | FazeUtilityCoin | ✅ | +| 0x6b7930acbcd12877 | Cryptoys | ✅ | +| 0x6b7930acbcd12877 | CryptoysMetadataView2 | ✅ | +| 0x34f3140b7f54c743 | CricketMoments | ✅ | +| 0x34f3140b7f54c743 | FazeUtilityCoin | ✅ | +| 0x6b7930acbcd12877 | ICryptoys | ✅ | +| 0x6b2e1b9d3c5ac5db | ValueLink_NFTMarketplace_v1 | ✅ | +| 0x6b2e1b9d3c5ac5db | ValueLink_NFT_v1 | ✅ | +| 0x2a9b59c3e2b72ee0 | OracleConfig | ✅ | +| 0x2a9b59c3e2b72ee0 | OracleInterface | ✅ | +| 0x250e0b90c1b7711b | A | ❌

Error:
error: cannot find declaration \`B\` in \`250e0b90c1b7711b.B\`
--\> 250e0b90c1b7711b.A:1:7
\|
1 \| import B from 0x250e0b90c1b7711b
\| ^ available exported declarations are:
\- \`Bad\`

| +| 0x250e0b90c1b7711b | B | ✅ | +| 0x250e0b90c1b7711b | Bar | ✅ | +| 0x250e0b90c1b7711b | F | ✅ | +| 0x250e0b90c1b7711b | Foo | ✅ | +| 0x250e0b90c1b7711b | L | ✅ | +| 0x250e0b90c1b7711b | O | ✅ | +| 0x250e0b90c1b7711b | W | ❌

Error:
error: mismatching field \`foo\` in \`W\`
--\> 250e0b90c1b7711b.W:3:25
\|
3 \| access(all) let foo: String
\| ^^^^^^ incompatible type annotations. expected \`Int\`, found \`String\`
| +| 0xdad0aaa285a25413 | PriceOracle | ✅ | +| 0x2ceae959ed1a7e7a | MigrationContractStaging | ✅ | +| 0x1f38da7a93c61f28 | ExampleNFT | ❌

Error:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 1f38da7a93c61f28.ExampleNFT:161:43
\|
161 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 1f38da7a93c61f28.ExampleNFT:183:60
\|
183 \| let authTokenRef = (&self.ownedNFTs\$&id\$& as auth(NonFungibleToken.Owner) &{NonFungibleToken.NFT}?)!
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: mismatched types
--\> 1f38da7a93c61f28.ExampleNFT:185:38
\|
185 \| ExampleNFT.emitNFTUpdated(authTokenRef)
\| ^^^^^^^^^^^^ expected \`auth(NonFungibleToken.Update) &{NonFungibleToken.NFT}\`, got \`auth(NonFungibleToken) &{NonFungibleToken.NFT}\`

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 1f38da7a93c61f28.ExampleNFT:134:25
\|
134 \| access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {
\| ^
...
\|
137 \| access(contract) var ownedNFTs: @{UInt64: {NonFungibleToken.NFT}}
\| \-\-\-\-\-\-\-\-\- mismatch here

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 1f38da7a93c61f28.ExampleNFT:134:25
\|
134 \| access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {
\| ^
...
\|
161 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| \-\-\-\-\-\-\-\- mismatch here
| +| 0xf8ba321af4bd37bb | aiSportsMinter | ✅ | +| 0xf8e0eab3a87cbf49 | ExampleNFT | ❌

Error:
error: error getting program f8e0eab3a87cbf49.ExampleDependency: failed to derive value: load program failed: Parsing failed:
error: \`pub\` is no longer a valid access keyword
--\> :1:0
\|
1 \| pub contract ExampleDependency {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :2:4
\|
2 \| pub let test: Int
\| ^^^

--\> f8e0eab3a87cbf49.ExampleDependency

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> f8e0eab3a87cbf49.ExampleNFT:161:43
\|
161 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> f8e0eab3a87cbf49.ExampleNFT:128:25
\|
128 \| access(all) resource Collection: NonFungibleToken.Collection {
\| ^
...
\|
131 \| access(contract) var ownedNFTs: @{UInt64: ExampleNFT.NFT}
\| \-\-\-\-\-\-\-\-\- mismatch here

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> f8e0eab3a87cbf49.ExampleNFT:128:25
\|
128 \| access(all) resource Collection: NonFungibleToken.Collection {
\| ^
...
\|
161 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| \-\-\-\-\-\-\-\- mismatch here
| +| 0x06f1e5cde6db0e70 | DropFactory | ✅ | +| 0x06f1e5cde6db0e70 | FlowtyAddressVerifiers | ✅ | +| 0x06f1e5cde6db0e70 | FlowtyDrops | ✅ | +| 0x06f1e5cde6db0e70 | FlowtyPricers | ✅ | +| 0x06f1e5cde6db0e70 | FlowtySwitchers | ✅ | +| 0x8a5f647e58dde1ee | DapperOffersV2 | ✅ | +| 0x8a5f647e58dde1ee | OffersV2 | ✅ | +| 0x8a5f647e58dde1ee | Resolver | ✅ | +| 0xcbed4c301441ded2 | StableSwapFactory | ✅ | +| 0xcbed4c301441ded2 | SwapFactory | ✅ | +| 0x99ca04281098b33d | Art | ✅ | +| 0x99ca04281098b33d | Auction | ✅ | +| 0x99ca04281098b33d | Content | ✅ | +| 0x99ca04281098b33d | Marketplace | ✅ | +| 0x99ca04281098b33d | Profile | ✅ | +| 0x99ca04281098b33d | Versus | ✅ | +| 0xa47a2d3a3b7e9133 | FanTopMarket | ✅ | +| 0xa47a2d3a3b7e9133 | FanTopPermission | ✅ | +| 0xa47a2d3a3b7e9133 | FanTopPermissionV2a | ✅ | +| 0xa47a2d3a3b7e9133 | FanTopSerial | ✅ | +| 0xa47a2d3a3b7e9133 | FanTopToken | ✅ | +| 0xa47a2d3a3b7e9133 | Signature | ✅ | +| 0x723a1b50e1d67e8e | TuneGONFT | ✅ | +| 0xb668e8c9726ef26b | FanTopMarket | ✅ | +| 0xb668e8c9726ef26b | FanTopPermission | ✅ | +| 0xb668e8c9726ef26b | FanTopPermissionV2a | ✅ | +| 0xb668e8c9726ef26b | FanTopSerial | ✅ | +| 0xb668e8c9726ef26b | FanTopToken | ✅ | +| 0xb668e8c9726ef26b | Signature | ✅ | +| 0xf9dad0d4c14a92b5 | BUSD | ✅ | +| 0xf9dad0d4c14a92b5 | USDC | ✅ | +| 0xf9dad0d4c14a92b5 | USDT | ✅ | +| 0xf9dad0d4c14a92b5 | wFlow | ✅ | +| 0x7745157792470296 | LendingOracle | ✅ | +| 0xd35bad52c7e1ab65 | ZeedzINO | ❌

Error:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> d35bad52c7e1ab65.ZeedzINO:207:43
\|
207 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun burn(burnID: UInt64)
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> d35bad52c7e1ab65.ZeedzINO:208:43
\|
208 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun redeem(redeemID: UInt64, message: String)
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> d35bad52c7e1ab65.ZeedzINO:218:43
\|
218 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> d35bad52c7e1ab65.ZeedzINO:224:43
\|
224 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun burn(burnID: UInt64){
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> d35bad52c7e1ab65.ZeedzINO:234:43
\|
234 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun redeem(redeemID: UInt64, message: String){
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: resource \`ZeedzINO.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> d35bad52c7e1ab65.ZeedzINO:214:25
\|
214 \| access(all) resource Collection: NonFungibleToken.Collection, ZeedzCollectionPublic, ZeedzCollectionPrivate {
\| ^
...
\|
218 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| \-\-\-\-\-\-\-\- mismatch here

error: resource \`ZeedzINO.Collection\` does not conform to resource interface \`ZeedzINO.ZeedzCollectionPrivate\`
--\> d35bad52c7e1ab65.ZeedzINO:214:25
\|
214 \| access(all) resource Collection: NonFungibleToken.Collection, ZeedzCollectionPublic, ZeedzCollectionPrivate {
\| ^
...
\|
224 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun burn(burnID: UInt64){
\| \-\-\-\- mismatch here
...
\|
234 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun redeem(redeemID: UInt64, message: String){
\| \-\-\-\-\-\- mismatch here
| +| 0x877931736ee77cff | PackNFT | ✅ | +| 0x877931736ee77cff | TopShot | ✅ | +| 0x877931736ee77cff | TopShotLocking | ✅ | +| 0x6f6702697b205c18 | HWGarageCard | ✅ | +| 0x6f6702697b205c18 | HWGarageCardV2 | ✅ | +| 0x6f6702697b205c18 | HWGaragePM | ✅ | +| 0x6f6702697b205c18 | HWGaragePMV2 | ✅ | +| 0x6f6702697b205c18 | HWGaragePack | ✅ | +| 0x6f6702697b205c18 | HWGaragePackV2 | ✅ | +| 0x6f6702697b205c18 | HWGarageTokenV2 | ✅ | +| 0x58b60c5240d3f39b | PackNFT | ✅ | +| 0x58b60c5240d3f39b | TicalUniverse | ✅ | +| 0x58b60c5240d3f39b | TuneGO | ✅ | +| 0x58b60c5240d3f39b | TuneGONFTV5 | ✅ | +| 0x324c34e1c517e4db | NFTCatalog | ✅ | +| 0x324c34e1c517e4db | NFTCatalogAdmin | ✅ | +| 0x324c34e1c517e4db | NFTRetrieval | ✅ | +| 0x8bc9e24c307d249b | LendingConfig | ✅ | +| 0x8bc9e24c307d249b | LendingError | ✅ | +| 0x8bc9e24c307d249b | LendingInterfaces | ✅ | +| 0x628992a07cb07272 | MatrixWorldVoucher | ✅ | +| 0xa2526e2d9cc7f0d2 | PackNFT | ✅ | +| 0xa2526e2d9cc7f0d2 | Pinnacle | ✅ | +| 0x0d3dc5ad70be03d1 | Filter | ✅ | +| 0x0d3dc5ad70be03d1 | Offers | ✅ | +| 0x0d3dc5ad70be03d1 | ScopedFTProviders | ✅ | +| 0x2bd8210db3a8fe8a | NFTLocking | ✅ | +| 0x2bd8210db3a8fe8a | Swap | ✅ | +| 0x2bd8210db3a8fe8a | SwapArchive | ✅ | +| 0x2bd8210db3a8fe8a | SwapStats | ✅ | +| 0x2bd8210db3a8fe8a | SwapStatsRegistry | ✅ | +| 0x2bd8210db3a8fe8a | Utils | ✅ | +| 0x9d96fa5f60093c18 | A | ✅ | +| 0x9d96fa5f60093c18 | B | ✅ | +| 0x195caada038c5806 | BarterYardClubWerewolf | ✅ | +| 0x195caada038c5806 | BarterYardStats | ✅ | +| 0x683564e46977788a | MFLAdmin | ✅ | +| 0x683564e46977788a | MFLClub | ✅ | +| 0x683564e46977788a | MFLPack | ✅ | +| 0x683564e46977788a | MFLPackTemplate | ✅ | +| 0x683564e46977788a | MFLPlayer | ✅ | +| 0x683564e46977788a | MFLViews | ✅ | +| 0xc7c122b5b811de8e | BulkPurchase | ❌

Error:
error: missing structure declaration \`Order\`
--\> c7c122b5b811de8e.BulkPurchase:20:21
\|
20 \| access(all) contract BulkPurchase {
\| ^^^^^^^^^^^^
| +| 0xc7c122b5b811de8e | FlowversePass | ✅ | +| 0xc7c122b5b811de8e | FlowversePassPrimarySaleMinter | ✅ | +| 0xc7c122b5b811de8e | FlowversePrimarySale | ✅ | +| 0xc7c122b5b811de8e | FlowversePrimarySaleV2 | ✅ | +| 0xc7c122b5b811de8e | FlowverseShirt | ✅ | +| 0xc7c122b5b811de8e | FlowverseSocks | ✅ | +| 0xc7c122b5b811de8e | FlowverseTreasures | ✅ | +| 0xc7c122b5b811de8e | FlowverseTreasuresPrimarySaleMinter | ✅ | +| 0xc7c122b5b811de8e | Ordinal | ✅ | +| 0xc7c122b5b811de8e | OrdinalVendor | ✅ | +| 0xc7c122b5b811de8e | Royalties | ✅ | +| 0x3e5b4c627064625d | Flomies | ❌

Error:
error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:
error: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:
error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

--\> 857dc34d5e1631d3.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:38:24

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:81:24

--\> 35717efbbce11c74.FindVerifier

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:164:26

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:164:25

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:156:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:156:37

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:211:123

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:211:122

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:208:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:208:37

--\> 35717efbbce11c74.FindPack

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.Flomies:78:17
\|
78 \| Type(),
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 3e5b4c627064625d.Flomies:78:12
\|
78 \| Type(),
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.Flomies:138:22
\|
138 \| case Type():
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 3e5b4c627064625d.Flomies:138:17
\|
138 \| case Type():
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find variable in this scope: \`FindPack\`
--\> 3e5b4c627064625d.Flomies:144:23
\|
144 \| return FindPack.PackRevealData(data)
\| ^^^^^^^^ not found in this scope
| +| 0x3e5b4c627064625d | GeneratedExperiences | ❌

Error:
error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:
error: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:
error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

--\> 857dc34d5e1631d3.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:38:24

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:81:24

--\> 35717efbbce11c74.FindVerifier

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:164:26

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:164:25

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:156:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:156:37

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:211:123

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:211:122

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:208:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:208:37

--\> 35717efbbce11c74.FindPack

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.GeneratedExperiences:41:29
\|
41 \| royaltiesInput: \$&FindPack.Royalty\$&,
\| ^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.GeneratedExperiences:31:41
\|
31 \| access(all) let royaltiesInput: \$&FindPack.Royalty\$&
\| ^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.GeneratedExperiences:118:17
\|
118 \| Type()
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 3e5b4c627064625d.GeneratedExperiences:118:12
\|
118 \| Type()
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.GeneratedExperiences:128:22
\|
128 \| case Type():
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 3e5b4c627064625d.GeneratedExperiences:128:17
\|
128 \| case Type():
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find variable in this scope: \`FindPack\`
--\> 3e5b4c627064625d.GeneratedExperiences:134:23
\|
134 \| return FindPack.PackRevealData(data)
\| ^^^^^^^^ not found in this scope
| +| 0x3e5b4c627064625d | NFGv3 | ✅ | +| 0x3e5b4c627064625d | PartyFavorz | ❌

Error:
error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:
error: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:
error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

--\> 857dc34d5e1631d3.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:38:24

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:81:24

--\> 35717efbbce11c74.FindVerifier

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:164:26

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:164:25

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:156:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:156:37

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:211:123

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:211:122

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:208:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:208:37

--\> 35717efbbce11c74.FindPack

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.PartyFavorz:77:17
\|
77 \| Type()
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 3e5b4c627064625d.PartyFavorz:77:12
\|
77 \| Type()
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FindPack\`
--\> 3e5b4c627064625d.PartyFavorz:86:22
\|
86 \| case Type():
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 3e5b4c627064625d.PartyFavorz:86:17
\|
86 \| case Type():
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find variable in this scope: \`FindPack\`
--\> 3e5b4c627064625d.PartyFavorz:92:23
\|
92 \| return FindPack.PackRevealData(data)
\| ^^^^^^^^ not found in this scope
| +| 0x3e5b4c627064625d | PartyFavorzExtraData | ✅ | +| 0x51ea0e37c27a1f1a | TokenForwarding | ✅ | +| 0x2d59ec5158e3adae | HeroesOfTheFlow | ✅ | +| 0xc20df20fabe06457 | SwapPair | ✅ | +| 0x24650d6246d4176c | PriceOracle | ✅ | +| 0x886d5599b3bfc873 | A | ✅ | +| 0x886d5599b3bfc873 | B | ✅ | +| 0x857dc34d5e1631d3 | FLOAT | ❌

Error:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43
\|
326 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15
\|
350 \| access(NonFungibleToken.Owner) fun delete(id: UInt64) {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29
\|
270 \| self.eventsCap = getAccount(\_eventHost).capabilities.get<&FLOATEvents>(FLOAT.FLOATEventsPublicPath)
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected \`optional\`, got \`Capability<&FLOAT.FLOATEvents>\`

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17
\|
198 \| receiver: getAccount(0x5643fd47a29770e7).capabilities.get<&{FungibleToken.Receiver}>(/public/flowTokenReceiver) ?? panic("Beneficiary does not have receiver."),
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected \`optional\`, got \`Capability<&{FungibleToken.Receiver}>\`

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25
\|
298 \| access(all) resource Collection: NonFungibleToken.Collection {
\| ^
...
\|
300 \| access(self) var ownedNFTs: @{UInt64: {NonFungibleToken.NFT}}
\| \-\-\-\-\-\-\-\-\- mismatch here

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25
\|
298 \| access(all) resource Collection: NonFungibleToken.Collection {
\| ^
...
\|
326 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| \-\-\-\-\-\-\-\- mismatch here
| +| 0x857dc34d5e1631d3 | FLOATVerifiers | ❌

Error:
error: error getting program 4d47bf3ce5e4393f.FLOAT: failed to derive value: load program failed: Parsing failed:
error: \`pub\` is no longer a valid access keyword
--\> :28:0
\|
28 \| pub contract FLOAT: NonFungibleToken, ViewResolver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :34:4
\|
34 \| pub let FLOATCollectionStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :35:4
\|
35 \| pub let FLOATCollectionPublicPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :36:4
\|
36 \| pub let FLOATEventsStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :37:4
\|
37 \| pub let FLOATEventsPublicPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :38:4
\|
38 \| pub let FLOATEventsPrivatePath: PrivatePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :44:4
\|
44 \| pub event ContractInitialized()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :45:4
\|
45 \| pub event FLOATMinted(id: UInt64, eventHost: Address, eventId: UInt64, eventImage: String, recipient: Address, serial: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :46:4
\|
46 \| pub event FLOATClaimed(id: UInt64, eventHost: Address, eventId: UInt64, eventImage: String, eventName: String, recipient: Address, serial: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :47:4
\|
47 \| pub event FLOATDestroyed(id: UInt64, eventHost: Address, eventId: UInt64, eventImage: String, serial: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :48:4
\|
48 \| pub event FLOATTransferred(id: UInt64, eventHost: Address, eventId: UInt64, newOwner: Address?, serial: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :49:4
\|
49 \| pub event FLOATPurchased(id: UInt64, eventHost: Address, eventId: UInt64, recipient: Address, serial: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :50:4
\|
50 \| pub event FLOATEventCreated(eventId: UInt64, description: String, host: Address, image: String, name: String, url: String)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :51:4
\|
51 \| pub event FLOATEventDestroyed(eventId: UInt64, host: Address, name: String)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :53:4
\|
53 \| pub event Deposit(id: UInt64, to: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :54:4
\|
54 \| pub event Withdraw(id: UInt64, from: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :62:4
\|
62 \| pub var totalSupply: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :65:4
\|
65 \| pub var totalFLOATEvents: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :73:4
\|
73 \| pub struct TokenIdentifier {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :74:8
\|
74 \| pub let id: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :75:8
\|
75 \| pub let address: Address
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :76:8
\|
76 \| pub let serial: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :85:4
\|
85 \| pub struct TokenInfo {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :86:8
\|
86 \| pub let path: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :87:8
\|
87 \| pub let price: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :96:4
\|
96 \| pub resource NFT: NonFungibleToken.INFT, MetadataViews.Resolver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :98:8
\|
98 \| pub let id: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :103:8
\|
103 \| pub let dateReceived: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :104:8
\|
104 \| pub let eventDescription: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :105:8
\|
105 \| pub let eventHost: Address
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :106:8
\|
106 \| pub let eventId: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :107:8
\|
107 \| pub let eventImage: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :108:8
\|
108 \| pub let eventName: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :109:8
\|
109 \| pub let originalRecipient: Address
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :110:8
\|
110 \| pub let serial: UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :117:8
\|
117 \| pub let eventsCap: Capability<&FLOATEvents{FLOATEventsPublic, MetadataViews.ResolverCollection}>
\| ^^^

error: restricted types have been removed; replace with the concrete type or an equivalent intersection type
--\> :117:51
\|
117 \| pub let eventsCap: Capability<&FLOATEvents{FLOATEventsPublic, MetadataViews.ResolverCollection}>
\| ^^^^^^^^^^^^^^^^^

--\> 4d47bf3ce5e4393f.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:38:33
\|
38 \| access(all) struct Timelock: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:66:31
\|
66 \| access(all) struct Secret: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:90:32
\|
90 \| access(all) struct Limited: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:113:39
\|
113 \| access(all) struct MultipleSecret: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:137:33
\|
137 \| access(all) struct SecretV2: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:162:39
\|
162 \| access(all) struct MinimumBalance: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:226:30
\|
226 \| access(all) struct Email: FLOAT.IVerifier {
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:94:51
\|
94 \| let floatEvent = params\$&"event"\$&! as! &FLOAT.FLOATEvent
\| ^^^^^ not found in this scope

error: cannot find type in this scope: \`FLOAT\`
--\> 857dc34d5e1631d3.FLOATVerifiers:230:51
\|
230 \| let floatEvent = params\$&"event"\$&! as! &FLOAT.FLOATEvent
\| ^^^^^ not found in this scope
| +| 0x4ed4b8e5cd0dd15e | PackNFT | ✅ | +| 0x74daa6f9c7ef24b1 | FCLCrypto | ✅ | +| 0x94b84d0c11a22404 | TopShotShardedCollection | ✅ | +| 0xb86f928a1fa7798e | FTViewUtils | ✅ | +| 0xb86f928a1fa7798e | TokenList | ✅ | +| 0xb86f928a1fa7798e | ViewResolvers | ✅ | +| 0xe3faea00c5bb8d7d | MetadataViews | ❌

Error:
error: cannot find declaration \`FungibleToken\` in \`631e88ae7f1d7c20.FungibleToken\`
--\> e3faea00c5bb8d7d.MetadataViews:3:7
\|
3 \| import FungibleToken from 0x631e88ae7f1d7c20
\| ^^^^^^^^^^^^^ available exported declarations are:


error: ambiguous intersection type
--\> e3faea00c5bb8d7d.MetadataViews:280:40
\|
280 \| view init(receiver: Capability<&{FungibleToken.Receiver}>, cut: UFix64, description: String) {
\| ^^^^^^^^^^^^^^^^^^^^^^^^

error: ambiguous intersection type
--\> e3faea00c5bb8d7d.MetadataViews:262:46
\|
262 \| access(all) let receiver: Capability<&{FungibleToken.Receiver}>
\| ^^^^^^^^^^^^^^^^^^^^^^^^
| +| 0xe3faea00c5bb8d7d | TrmAssetV2_2 | ✅ | +| 0xe3faea00c5bb8d7d | TrmMarketV2_2 | ✅ | +| 0xe3faea00c5bb8d7d | TrmRentV2_2 | ✅ | +| 0xe1d43e0cfc237807 | Flowty | ✅ | +| 0xe1d43e0cfc237807 | FlowtyRentals | ✅ | +| 0xe1d43e0cfc237807 | RoyaltiesLedger | ✅ | +| 0x2a9011074c827145 | FungibleTokenCatalog | ✅ | +| 0xcbdb5a7b89c3c844 | PriceOracle | ✅ | +| 0x2299f74679d9c88a | A | ✅ | +| 0xad26718c4b6b921b | BlackHole | ✅ | +| 0xf28310b45fc6b319 | ExampleNFT | ❌

Error:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> f28310b45fc6b319.ExampleNFT:161:43
\|
161 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> f28310b45fc6b319.ExampleNFT:183:60
\|
183 \| let authTokenRef = (&self.ownedNFTs\$&id\$& as auth(NonFungibleToken.Owner) &{NonFungibleToken.NFT}?)!
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: mismatched types
--\> f28310b45fc6b319.ExampleNFT:185:38
\|
185 \| ExampleNFT.emitNFTUpdated(authTokenRef)
\| ^^^^^^^^^^^^ expected \`auth(NonFungibleToken.Update) &{NonFungibleToken.NFT}\`, got \`auth(NonFungibleToken) &{NonFungibleToken.NFT}\`

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> f28310b45fc6b319.ExampleNFT:134:25
\|
134 \| access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {
\| ^
...
\|
137 \| access(contract) var ownedNFTs: @{UInt64: {NonFungibleToken.NFT}}
\| \-\-\-\-\-\-\-\-\- mismatch here

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> f28310b45fc6b319.ExampleNFT:134:25
\|
134 \| access(all) resource Collection: NonFungibleToken.Collection, ExampleNFTCollectionPublic {
\| ^
...
\|
161 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| \-\-\-\-\-\-\-\- mismatch here
| +| 0x97d2f3b55c6a6a75 | LendingPool | ✅ | +| 0xbe4635353f55bbd4 | FeeEstimator | ✅ | +| 0xbe4635353f55bbd4 | LostAndFound | ✅ | +| 0xbe4635353f55bbd4 | LostAndFoundHelper | ✅ | +| 0xfa2a6615db587be5 | ExampleNFT | ❌

Error:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> fa2a6615db587be5.ExampleNFT:160:43
\|
160 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> fa2a6615db587be5.ExampleNFT:127:25
\|
127 \| access(all) resource Collection: NonFungibleToken.Collection {
\| ^
...
\|
130 \| access(contract) var ownedNFTs: @{UInt64: ExampleNFT.NFT}
\| \-\-\-\-\-\-\-\-\- mismatch here

error: resource \`ExampleNFT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> fa2a6615db587be5.ExampleNFT:127:25
\|
127 \| access(all) resource Collection: NonFungibleToken.Collection {
\| ^
...
\|
160 \| access(NonFungibleToken.Withdraw \| NonFungibleToken.Owner) fun withdraw(withdrawID: UInt64): @{NonFungibleToken.NFT} {
\| \-\-\-\-\-\-\-\- mismatch here
| +| 0x8d5aac1da9c370bc | A | ✅ | +| 0x8d5aac1da9c370bc | B | ✅ | +| 0x8d5aac1da9c370bc | Contract | ✅ | +| 0x82ec283f88a62e65 | DapperUtilityCoin | ✅ | +| 0x82ec283f88a62e65 | FlowUtilityToken | ✅ | +| 0x94b06cfca1d8a476 | NFTStorefront | ✅ | +| 0x8c55fba7d7090fee | Magnetiq | ✅ | +| 0x8c55fba7d7090fee | MagnetiqLocking | ✅ | +| 0x9e324d8ae3cbd0f0 | LendingPool | ✅ | +| 0xab2d22248a619d77 | MetadataViews | ❌

Error:
error: missing resource interface declaration \`Resolver\`
--\> ab2d22248a619d77.MetadataViews:15:21
\|
15 \| access(all) contract MetadataViews {
\| ^^^^^^^^^^^^^

error: missing resource interface declaration \`ResolverCollection\`
--\> ab2d22248a619d77.MetadataViews:15:21
\|
15 \| access(all) contract MetadataViews {
\| ^^^^^^^^^^^^^
| +| 0xab2d22248a619d77 | TrmAssetMSV1_0 | ✅ | +| 0xab2d22248a619d77 | TrmAssetMSV2_0 | ✅ | +| 0xb39a42479c1c2c77 | AFLAdmin | ❌

Error:
error: error getting program b39a42479c1c2c77.AFLPack: failed to derive value: load program failed: Checking failed:
error: error getting program a983fecbed621163.FiatToken: failed to derive value: load program failed: Parsing failed:
error: \`pub\` is no longer a valid access keyword
--\> :5:0
\|
5 \| pub contract FiatToken: FungibleToken {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :10:4
\|
10 \| pub event AdminCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :11:4
\|
11 \| pub event AdminChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :14:4
\|
14 \| pub event OwnerCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :15:4
\|
15 \| pub event OwnerChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :18:4
\|
18 \| pub event MasterMinterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :19:4
\|
19 \| pub event MasterMinterChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :22:4
\|
22 \| pub event Paused()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :23:4
\|
23 \| pub event Unpaused()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :24:4
\|
24 \| pub event PauserCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :25:4
\|
25 \| pub event PauserChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :28:4
\|
28 \| pub event Blocklisted(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :29:4
\|
29 \| pub event Unblocklisted(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :30:4
\|
30 \| pub event BlocklisterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :31:4
\|
31 \| pub event BlocklisterChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :34:4
\|
34 \| pub event NewVault(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :35:4
\|
35 \| pub event DestroyVault(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :36:4
\|
36 \| pub event FiatTokenWithdrawn(amount: UFix64, from: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :37:4
\|
37 \| pub event FiatTokenDeposited(amount: UFix64, to: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :40:4
\|
40 \| pub event MinterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :41:4
\|
41 \| pub event MinterControllerCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :42:4
\|
42 \| pub event Mint(minter: UInt64, amount: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :43:4
\|
43 \| pub event Burn(minter: UInt64, amount: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :44:4
\|
44 \| pub event MinterConfigured(controller: UInt64, minter: UInt64, allowance: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :45:4
\|
45 \| pub event MinterRemoved(controller: UInt64, minter: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :46:4
\|
46 \| pub event ControllerConfigured(controller: UInt64, minter: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :47:4
\|
47 \| pub event ControllerRemoved(controller: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :52:4
\|
52 \| pub event TokensInitialized(initialSupply: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :53:4
\|
53 \| pub event TokensWithdrawn(amount: UFix64, from: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :54:4
\|
54 \| pub event TokensDeposited(amount: UFix64, to: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :59:4
\|
59 \| pub let VaultStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :60:4
\|
60 \| pub let VaultBalancePubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :61:4
\|
61 \| pub let VaultUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :62:4
\|
62 \| pub let VaultReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :64:4
\|
64 \| pub let BlocklistExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :66:4
\|
66 \| pub let BlocklisterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :67:4
\|
67 \| pub let BlocklisterCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :68:4
\|
68 \| pub let BlocklisterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :69:4
\|
69 \| pub let BlocklisterPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :71:4
\|
71 \| pub let PauseExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :73:4
\|
73 \| pub let PauserStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :74:4
\|
74 \| pub let PauserCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :75:4
\|
75 \| pub let PauserUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :76:4
\|
76 \| pub let PauserPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :78:4
\|
78 \| pub let AdminExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :80:4
\|
80 \| pub let AdminStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :81:4
\|
81 \| pub let AdminCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :82:4
\|
82 \| pub let AdminUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :83:4
\|
83 \| pub let AdminPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :85:4
\|
85 \| pub let OwnerExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :87:4
\|
87 \| pub let OwnerStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :88:4
\|
88 \| pub let OwnerCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :89:4
\|
89 \| pub let OwnerUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :90:4
\|
90 \| pub let OwnerPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :92:4
\|
92 \| pub let MasterMinterExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :94:4
\|
94 \| pub let MasterMinterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :95:4
\|
95 \| pub let MasterMinterCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :96:4
\|
96 \| pub let MasterMinterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :97:4
\|
97 \| pub let MasterMinterPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :99:4
\|
99 \| pub let MinterControllerStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :100:4
\|
100 \| pub let MinterControllerUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :101:4
\|
101 \| pub let MinterControllerPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :103:4
\|
103 \| pub let MinterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :104:4
\|
104 \| pub let MinterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :109:4
\|
109 \| pub let name: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :110:4
\|
110 \| pub var version: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :112:4
\|
112 \| pub var paused: Bool
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :114:4
\|
114 \| pub var totalSupply: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :125:4
\|
125 \| pub resource interface ResourceId {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :126:8
\|
126 \| pub fun UUID(): UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :129:4
\|
129 \| pub resource interface AdminCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :130:8
\|
130 \| pub fun setAdminCap(cap: Capability<&AdminExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :133:4
\|
133 \| pub resource interface OwnerCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :134:8
\|
134 \| pub fun setOwnerCap(cap: Capability<&OwnerExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :137:4
\|
137 \| pub resource interface MasterMinterCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :138:8
\|
138 \| pub fun setMasterMinterCap(cap: Capability<&MasterMinterExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :141:4
\|
141 \| pub resource interface BlocklisterCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :142:8
\|
142 \| pub fun setBlocklistCap(cap: Capability<&BlocklistExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :145:4
\|
145 \| pub resource interface PauseCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :146:8
\|
146 \| pub fun setPauseCap(cap: Capability<&PauseExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :186:4
\|
186 \| pub resource Vault:
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :192:8
\|
192 \| pub var balance: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :194:8
\|
194 \| pub fun withdraw(amount: UFix64): @FungibleToken.Vault {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :205:8
\|
205 \| pub fun deposit(from: @FungibleToken.Vault) {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :219:8
\|
219 \| pub fun UUID(): UInt64 {
\| ^^^

error: custom destructor definitions are no longer permitted
--\> :231:8
\|
231 \| destroy() {
\| ^ remove the destructor definition

error: \`pub\` is no longer a valid access keyword
--\> :244:4
\|
244 \| pub resource AdminExecutor {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :248:8
\|
248 \| pub fun upgradeContract(name: String, code: \$&UInt8\$&, version: String) {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :252:8
\|
252 \| pub fun changeAdmin(to: Address, newPath: PrivatePath) {
\| ^^^

error: restricted types have been removed; replace with the concrete type or an equivalent intersection type
--\> :255:38
\|
255 \| .getCapability<&Admin{AdminCapReceiver}>(FiatToken.AdminCapReceiverPubPath)
\| ^^^^^^^^^^^^^^^^

--\> a983fecbed621163.FiatToken

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:23:48

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:165:55

error: cannot find variable in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:165:72

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLPack:165:24

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:111:38

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:112:35

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLPack:111:56

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLPack:111:56

--\> b39a42479c1c2c77.AFLPack
| +| 0xb39a42479c1c2c77 | AFLBadges | ✅ | +| 0xb39a42479c1c2c77 | AFLBurnExchange | ✅ | +| 0xb39a42479c1c2c77 | AFLBurnRegistry | ✅ | +| 0xb39a42479c1c2c77 | AFLIndex | ✅ | +| 0xb39a42479c1c2c77 | AFLMarketplace | ❌

Error:
error: error getting program a983fecbed621163.FiatToken: failed to derive value: load program failed: Parsing failed:
error: \`pub\` is no longer a valid access keyword
--\> :5:0
\|
5 \| pub contract FiatToken: FungibleToken {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :10:4
\|
10 \| pub event AdminCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :11:4
\|
11 \| pub event AdminChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :14:4
\|
14 \| pub event OwnerCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :15:4
\|
15 \| pub event OwnerChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :18:4
\|
18 \| pub event MasterMinterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :19:4
\|
19 \| pub event MasterMinterChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :22:4
\|
22 \| pub event Paused()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :23:4
\|
23 \| pub event Unpaused()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :24:4
\|
24 \| pub event PauserCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :25:4
\|
25 \| pub event PauserChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :28:4
\|
28 \| pub event Blocklisted(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :29:4
\|
29 \| pub event Unblocklisted(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :30:4
\|
30 \| pub event BlocklisterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :31:4
\|
31 \| pub event BlocklisterChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :34:4
\|
34 \| pub event NewVault(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :35:4
\|
35 \| pub event DestroyVault(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :36:4
\|
36 \| pub event FiatTokenWithdrawn(amount: UFix64, from: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :37:4
\|
37 \| pub event FiatTokenDeposited(amount: UFix64, to: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :40:4
\|
40 \| pub event MinterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :41:4
\|
41 \| pub event MinterControllerCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :42:4
\|
42 \| pub event Mint(minter: UInt64, amount: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :43:4
\|
43 \| pub event Burn(minter: UInt64, amount: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :44:4
\|
44 \| pub event MinterConfigured(controller: UInt64, minter: UInt64, allowance: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :45:4
\|
45 \| pub event MinterRemoved(controller: UInt64, minter: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :46:4
\|
46 \| pub event ControllerConfigured(controller: UInt64, minter: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :47:4
\|
47 \| pub event ControllerRemoved(controller: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :52:4
\|
52 \| pub event TokensInitialized(initialSupply: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :53:4
\|
53 \| pub event TokensWithdrawn(amount: UFix64, from: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :54:4
\|
54 \| pub event TokensDeposited(amount: UFix64, to: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :59:4
\|
59 \| pub let VaultStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :60:4
\|
60 \| pub let VaultBalancePubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :61:4
\|
61 \| pub let VaultUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :62:4
\|
62 \| pub let VaultReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :64:4
\|
64 \| pub let BlocklistExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :66:4
\|
66 \| pub let BlocklisterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :67:4
\|
67 \| pub let BlocklisterCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :68:4
\|
68 \| pub let BlocklisterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :69:4
\|
69 \| pub let BlocklisterPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :71:4
\|
71 \| pub let PauseExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :73:4
\|
73 \| pub let PauserStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :74:4
\|
74 \| pub let PauserCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :75:4
\|
75 \| pub let PauserUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :76:4
\|
76 \| pub let PauserPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :78:4
\|
78 \| pub let AdminExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :80:4
\|
80 \| pub let AdminStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :81:4
\|
81 \| pub let AdminCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :82:4
\|
82 \| pub let AdminUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :83:4
\|
83 \| pub let AdminPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :85:4
\|
85 \| pub let OwnerExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :87:4
\|
87 \| pub let OwnerStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :88:4
\|
88 \| pub let OwnerCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :89:4
\|
89 \| pub let OwnerUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :90:4
\|
90 \| pub let OwnerPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :92:4
\|
92 \| pub let MasterMinterExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :94:4
\|
94 \| pub let MasterMinterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :95:4
\|
95 \| pub let MasterMinterCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :96:4
\|
96 \| pub let MasterMinterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :97:4
\|
97 \| pub let MasterMinterPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :99:4
\|
99 \| pub let MinterControllerStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :100:4
\|
100 \| pub let MinterControllerUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :101:4
\|
101 \| pub let MinterControllerPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :103:4
\|
103 \| pub let MinterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :104:4
\|
104 \| pub let MinterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :109:4
\|
109 \| pub let name: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :110:4
\|
110 \| pub var version: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :112:4
\|
112 \| pub var paused: Bool
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :114:4
\|
114 \| pub var totalSupply: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :125:4
\|
125 \| pub resource interface ResourceId {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :126:8
\|
126 \| pub fun UUID(): UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :129:4
\|
129 \| pub resource interface AdminCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :130:8
\|
130 \| pub fun setAdminCap(cap: Capability<&AdminExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :133:4
\|
133 \| pub resource interface OwnerCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :134:8
\|
134 \| pub fun setOwnerCap(cap: Capability<&OwnerExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :137:4
\|
137 \| pub resource interface MasterMinterCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :138:8
\|
138 \| pub fun setMasterMinterCap(cap: Capability<&MasterMinterExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :141:4
\|
141 \| pub resource interface BlocklisterCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :142:8
\|
142 \| pub fun setBlocklistCap(cap: Capability<&BlocklistExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :145:4
\|
145 \| pub resource interface PauseCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :146:8
\|
146 \| pub fun setPauseCap(cap: Capability<&PauseExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :186:4
\|
186 \| pub resource Vault:
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :192:8
\|
192 \| pub var balance: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :194:8
\|
194 \| pub fun withdraw(amount: UFix64): @FungibleToken.Vault {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :205:8
\|
205 \| pub fun deposit(from: @FungibleToken.Vault) {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :219:8
\|
219 \| pub fun UUID(): UInt64 {
\| ^^^

error: custom destructor definitions are no longer permitted
--\> :231:8
\|
231 \| destroy() {
\| ^ remove the destructor definition

error: \`pub\` is no longer a valid access keyword
--\> :244:4
\|
244 \| pub resource AdminExecutor {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :248:8
\|
248 \| pub fun upgradeContract(name: String, code: \$&UInt8\$&, version: String) {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :252:8
\|
252 \| pub fun changeAdmin(to: Address, newPath: PrivatePath) {
\| ^^^

error: restricted types have been removed; replace with the concrete type or an equivalent intersection type
--\> :255:38
\|
255 \| .getCapability<&Admin{AdminCapReceiver}>(FiatToken.AdminCapReceiverPubPath)
\| ^^^^^^^^^^^^^^^^

--\> a983fecbed621163.FiatToken

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:79:33
\|
79 \| init (vault: Capability<&FiatToken.Vault>) {
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:77:49
\|
77 \| access(self) let ownerVault: Capability<&FiatToken.Vault>
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:259:70
\|
259 \| access(all) fun changeMarketplaceWallet(\_ newCap: Capability<&FiatToken.Vault>) {
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:12:56
\|
12 \| access(contract) var marketplaceWallet: Capability<&FiatToken.Vault>
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:242:65
\|
242 \| access(all) fun createSaleCollection(ownerVault: Capability<&FiatToken.Vault>): @SaleCollection {
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:277:64
\|
277 \| self.marketplaceWallet = self.account.capabilities.get<&FiatToken.Vault>(/public/FiatTokenVaultReceiver)
\| ^^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLMarketplace:277:33
\|
277 \| self.marketplaceWallet = self.account.capabilities.get<&FiatToken.Vault>(/public/FiatTokenVaultReceiver)
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:119:36
\|
119 \| let saleOwnerVaultRef: &FiatToken.Vault = self.ownerVault.borrow() ?? panic("could not borrow reference to the owner vault")
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLMarketplace:126:36
\|
126 \| let marketplaceWallet: &FiatToken.Vault = AFLMarketplace.marketplaceWallet.borrow() ?? panic("Couldn't borrow Vault reference")
\| ^^^^^^^^^ not found in this scope
| +| 0xb39a42479c1c2c77 | AFLMetadataHelper | ✅ | +| 0xb39a42479c1c2c77 | AFLNFT | ✅ | +| 0xb39a42479c1c2c77 | AFLPack | ❌

Error:
error: error getting program a983fecbed621163.FiatToken: failed to derive value: load program failed: Parsing failed:
error: \`pub\` is no longer a valid access keyword
--\> :5:0
\|
5 \| pub contract FiatToken: FungibleToken {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :10:4
\|
10 \| pub event AdminCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :11:4
\|
11 \| pub event AdminChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :14:4
\|
14 \| pub event OwnerCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :15:4
\|
15 \| pub event OwnerChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :18:4
\|
18 \| pub event MasterMinterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :19:4
\|
19 \| pub event MasterMinterChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :22:4
\|
22 \| pub event Paused()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :23:4
\|
23 \| pub event Unpaused()
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :24:4
\|
24 \| pub event PauserCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :25:4
\|
25 \| pub event PauserChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :28:4
\|
28 \| pub event Blocklisted(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :29:4
\|
29 \| pub event Unblocklisted(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :30:4
\|
30 \| pub event BlocklisterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :31:4
\|
31 \| pub event BlocklisterChanged(address: Address, resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :34:4
\|
34 \| pub event NewVault(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :35:4
\|
35 \| pub event DestroyVault(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :36:4
\|
36 \| pub event FiatTokenWithdrawn(amount: UFix64, from: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :37:4
\|
37 \| pub event FiatTokenDeposited(amount: UFix64, to: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :40:4
\|
40 \| pub event MinterCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :41:4
\|
41 \| pub event MinterControllerCreated(resourceId: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :42:4
\|
42 \| pub event Mint(minter: UInt64, amount: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :43:4
\|
43 \| pub event Burn(minter: UInt64, amount: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :44:4
\|
44 \| pub event MinterConfigured(controller: UInt64, minter: UInt64, allowance: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :45:4
\|
45 \| pub event MinterRemoved(controller: UInt64, minter: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :46:4
\|
46 \| pub event ControllerConfigured(controller: UInt64, minter: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :47:4
\|
47 \| pub event ControllerRemoved(controller: UInt64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :52:4
\|
52 \| pub event TokensInitialized(initialSupply: UFix64)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :53:4
\|
53 \| pub event TokensWithdrawn(amount: UFix64, from: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :54:4
\|
54 \| pub event TokensDeposited(amount: UFix64, to: Address?)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :59:4
\|
59 \| pub let VaultStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :60:4
\|
60 \| pub let VaultBalancePubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :61:4
\|
61 \| pub let VaultUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :62:4
\|
62 \| pub let VaultReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :64:4
\|
64 \| pub let BlocklistExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :66:4
\|
66 \| pub let BlocklisterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :67:4
\|
67 \| pub let BlocklisterCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :68:4
\|
68 \| pub let BlocklisterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :69:4
\|
69 \| pub let BlocklisterPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :71:4
\|
71 \| pub let PauseExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :73:4
\|
73 \| pub let PauserStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :74:4
\|
74 \| pub let PauserCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :75:4
\|
75 \| pub let PauserUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :76:4
\|
76 \| pub let PauserPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :78:4
\|
78 \| pub let AdminExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :80:4
\|
80 \| pub let AdminStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :81:4
\|
81 \| pub let AdminCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :82:4
\|
82 \| pub let AdminUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :83:4
\|
83 \| pub let AdminPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :85:4
\|
85 \| pub let OwnerExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :87:4
\|
87 \| pub let OwnerStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :88:4
\|
88 \| pub let OwnerCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :89:4
\|
89 \| pub let OwnerUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :90:4
\|
90 \| pub let OwnerPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :92:4
\|
92 \| pub let MasterMinterExecutorStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :94:4
\|
94 \| pub let MasterMinterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :95:4
\|
95 \| pub let MasterMinterCapReceiverPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :96:4
\|
96 \| pub let MasterMinterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :97:4
\|
97 \| pub let MasterMinterPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :99:4
\|
99 \| pub let MinterControllerStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :100:4
\|
100 \| pub let MinterControllerUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :101:4
\|
101 \| pub let MinterControllerPubSigner: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :103:4
\|
103 \| pub let MinterStoragePath: StoragePath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :104:4
\|
104 \| pub let MinterUUIDPubPath: PublicPath
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :109:4
\|
109 \| pub let name: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :110:4
\|
110 \| pub var version: String
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :112:4
\|
112 \| pub var paused: Bool
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :114:4
\|
114 \| pub var totalSupply: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :125:4
\|
125 \| pub resource interface ResourceId {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :126:8
\|
126 \| pub fun UUID(): UInt64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :129:4
\|
129 \| pub resource interface AdminCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :130:8
\|
130 \| pub fun setAdminCap(cap: Capability<&AdminExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :133:4
\|
133 \| pub resource interface OwnerCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :134:8
\|
134 \| pub fun setOwnerCap(cap: Capability<&OwnerExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :137:4
\|
137 \| pub resource interface MasterMinterCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :138:8
\|
138 \| pub fun setMasterMinterCap(cap: Capability<&MasterMinterExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :141:4
\|
141 \| pub resource interface BlocklisterCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :142:8
\|
142 \| pub fun setBlocklistCap(cap: Capability<&BlocklistExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :145:4
\|
145 \| pub resource interface PauseCapReceiver {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :146:8
\|
146 \| pub fun setPauseCap(cap: Capability<&PauseExecutor>)
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :186:4
\|
186 \| pub resource Vault:
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :192:8
\|
192 \| pub var balance: UFix64
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :194:8
\|
194 \| pub fun withdraw(amount: UFix64): @FungibleToken.Vault {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :205:8
\|
205 \| pub fun deposit(from: @FungibleToken.Vault) {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :219:8
\|
219 \| pub fun UUID(): UInt64 {
\| ^^^

error: custom destructor definitions are no longer permitted
--\> :231:8
\|
231 \| destroy() {
\| ^ remove the destructor definition

error: \`pub\` is no longer a valid access keyword
--\> :244:4
\|
244 \| pub resource AdminExecutor {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :248:8
\|
248 \| pub fun upgradeContract(name: String, code: \$&UInt8\$&, version: String) {
\| ^^^

error: \`pub\` is no longer a valid access keyword
--\> :252:8
\|
252 \| pub fun changeAdmin(to: Address, newPath: PrivatePath) {
\| ^^^

error: restricted types have been removed; replace with the concrete type or an equivalent intersection type
--\> :255:38
\|
255 \| .getCapability<&Admin{AdminCapReceiver}>(FiatToken.AdminCapReceiverPubPath)
\| ^^^^^^^^^^^^^^^^

--\> a983fecbed621163.FiatToken

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:23:48
\|
23 \| access(contract) let adminRef : Capability<&FiatToken.Vault>
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:165:55
\|
165 \| self.adminRef = self.account.capabilities.get<&FiatToken.Vault>(FiatToken.VaultReceiverPubPath)
\| ^^^^^^^^^ not found in this scope

error: cannot find variable in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:165:72
\|
165 \| self.adminRef = self.account.capabilities.get<&FiatToken.Vault>(FiatToken.VaultReceiverPubPath)
\| ^^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLPack:165:24
\|
165 \| self.adminRef = self.account.capabilities.get<&FiatToken.Vault>(FiatToken.VaultReceiverPubPath)
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:111:38
\|
111 \| let recipientCollection: &FiatToken.Vault = receiptAccount
\| ^^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FiatToken\`
--\> b39a42479c1c2c77.AFLPack:112:35
\|
112 \| .capabilities.get<&FiatToken.Vault>(/public/FiatTokenVaultReceiver)
\| ^^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLPack:111:56
\|
111 \| let recipientCollection: &FiatToken.Vault = receiptAccount
112 \| .capabilities.get<&FiatToken.Vault>(/public/FiatTokenVaultReceiver)
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot infer type parameter: \`T\`
--\> b39a42479c1c2c77.AFLPack:111:56
\|
111 \| let recipientCollection: &FiatToken.Vault = receiptAccount
112 \| .capabilities.get<&FiatToken.Vault>(/public/FiatTokenVaultReceiver)
113 \| .borrow()
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| +| 0xb39a42479c1c2c77 | PackRestrictions | ✅ | +| 0xb39a42479c1c2c77 | StorageHelper | ✅ | +| 0x86d1c2159a5d9eca | TransactionTypes | ✅ | +| 0x668b91e2995c2eba | PrivateReceiverForwarder | ✅ | +| 0x8b47f4dd22afee8d | MetadataViews | ❌

Error:
error: missing resource interface declaration \`Resolver\`
--\> 8b47f4dd22afee8d.MetadataViews:15:21
\|
15 \| access(all) contract MetadataViews {
\| ^^^^^^^^^^^^^

error: missing resource interface declaration \`ResolverCollection\`
--\> 8b47f4dd22afee8d.MetadataViews:15:21
\|
15 \| access(all) contract MetadataViews {
\| ^^^^^^^^^^^^^
| +| 0x8b47f4dd22afee8d | TrmAssetMSV1_0 | ✅ | +| 0x08b1f9c0bc04f36f | IconoGraphika | ✅ | +| 0x1c5033ad60821c97 | Admin | ✅ | +| 0x1c5033ad60821c97 | Clock | ✅ | +| 0x1c5033ad60821c97 | Debug | ✅ | +| 0x1c5033ad60821c97 | DoodleNames | ✅ | +| 0x1c5033ad60821c97 | DoodlePackTypes | ✅ | +| 0x1c5033ad60821c97 | DoodlePacks | ✅ | +| 0x1c5033ad60821c97 | Doodles | ✅ | +| 0x1c5033ad60821c97 | GenesisBoxRegistry | ✅ | +| 0x1c5033ad60821c97 | OpenDoodlePacks | ✅ | +| 0x1c5033ad60821c97 | Random | ✅ | +| 0x1c5033ad60821c97 | Redeemables | ✅ | +| 0x1c5033ad60821c97 | Teleport | ✅ | +| 0x1c5033ad60821c97 | Templates | ✅ | +| 0x1c5033ad60821c97 | TransactionsRegistry | ✅ | +| 0x1c5033ad60821c97 | Wearables | ✅ | +| 0xb051bdaddb672a33 | DNAHandler | ✅ | +| 0xb051bdaddb672a33 | FlowtyListingCallback | ✅ | +| 0xb051bdaddb672a33 | FlowtyUtils | ✅ | +| 0xb051bdaddb672a33 | FlowtyViews | ✅ | +| 0xb051bdaddb672a33 | NFTStorefrontV2 | ✅ | +| 0xb051bdaddb672a33 | Permitted | ✅ | +| 0xb051bdaddb672a33 | RoyaltiesOverride | ✅ | +| 0xd9c02cdacccb25ab | FlowtyTestNFT | ✅ | +| 0x3b220a3372190656 | PriceOracle | ✅ | +| 0x8770564d92180608 | MetadataViews | ❌

Error:
error: cannot find declaration \`FungibleToken\` in \`631e88ae7f1d7c20.FungibleToken\`
--\> 8770564d92180608.MetadataViews:3:7
\|
3 \| import FungibleToken from 0x631e88ae7f1d7c20
\| ^^^^^^^^^^^^^ available exported declarations are:


error: ambiguous intersection type
--\> 8770564d92180608.MetadataViews:280:40
\|
280 \| view init(receiver: Capability<&{FungibleToken.Receiver}>, cut: UFix64, description: String) {
\| ^^^^^^^^^^^^^^^^^^^^^^^^

error: ambiguous intersection type
--\> 8770564d92180608.MetadataViews:262:46
\|
262 \| access(all) let receiver: Capability<&{FungibleToken.Receiver}>
\| ^^^^^^^^^^^^^^^^^^^^^^^^
| +| 0x8770564d92180608 | TrmAssetV2_2 | ✅ | +| 0x8770564d92180608 | TrmMarketV2_2 | ✅ | +| 0x8770564d92180608 | TrmRentV2_2 | ✅ | +| 0x26a1e94319e81a3c | Staking | ✅ | +| 0x26a1e94319e81a3c | StakingError | ✅ | +| 0x547f177b243b4d80 | Market | ✅ | +| 0x547f177b243b4d80 | TopShotMarketV3 | ✅ | +| 0x3286bb76e4e115fe | Boneyard | ✅ | +| 0x5d45c655fcde5037 | TicalUniverse | ✅ | +| 0x5d45c655fcde5037 | TuneGO | ✅ | +| 0x985d410b577fd4a1 | Gamisodes | ✅ | +| 0x985d410b577fd4a1 | Lufthaus | ✅ | +| 0x985d410b577fd4a1 | MUMGJ | ✅ | +| 0x985d410b577fd4a1 | MintStoreItem | ✅ | +| 0x985d410b577fd4a1 | OpenLockerInc | ✅ | +| 0x985d410b577fd4a1 | OpenLockerIncBoneYardHuskyzClub | ✅ | +| 0x985d410b577fd4a1 | Pickem | ✅ | +| 0x985d410b577fd4a1 | RTLStoreItem | ✅ | +| 0x985d410b577fd4a1 | YBees | ✅ | +| 0x985d410b577fd4a1 | YoungBoysBern | ✅ | +| 0x92362a384f409a52 | TrmAssetV2_2 | ✅ | +| 0x92362a384f409a52 | TrmMarketV2_2 | ✅ | +| 0x92362a384f409a52 | TrmRentV2_2 | ✅ | +| 0x3870b3d38f83ae4c | FiatToken | ✅ | +| 0x3870b3d38f83ae4c | FlowEVMBridgeHandlerInterfaces | ✅ | +| 0x8aaca41f09eb1e3d | LendingPool | ✅ | +| 0x2f8af5ed05bbde0d | SwapRouter | ✅ | +| 0x35717efbbce11c74 | Admin | ❌

Error:
error: error getting program 35717efbbce11c74.FindPack: failed to derive value: load program failed: Checking failed:
error: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:
error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

--\> 857dc34d5e1631d3.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:38:24

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:81:24

--\> 35717efbbce11c74.FindVerifier

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:164:26

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:164:25

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:156:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:156:37

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:211:123

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:211:122

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:208:38

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:208:37

--\> 35717efbbce11c74.FindPack

error: cannot find variable in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:292:33
\|
292 \| let pathIdentifier = FindPack.getPacksCollectionPath(packTypeName: packTypeName, packTypeId: typeId)
\| ^^^^^^^^ not found in this scope

error: cannot find variable in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:295:31
\|
295 \| let mintPackData = FindPack.MintPackData(packTypeName: packTypeName, typeId: typeId, hash: hash, verifierRef: FindForge.borrowVerifier())
\| ^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:296:70
\|
296 \| FindForge.adminMint(lease: packTypeName, forgeType: Type<@FindPack.Forge>() , data: mintPackData, receiver: receiver)
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.Admin:296:64
\|
296 \| FindForge.adminMint(lease: packTypeName, forgeType: Type<@FindPack.Forge>() , data: mintPackData, receiver: receiver)
\| ^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find variable in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:303:12
\|
303 \| FindPack.fulfill(packId:packId, types:types, rewardIds:rewardIds, salt:salt)
\| ^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:311:55
\|
311 \| let cap= Admin.account.storage.borrow(from: FindPack.DLQCollectionStoragePath)!
\| ^^^^^^^^ not found in this scope

error: cannot find type in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:311:72
\|
311 \| let cap= Admin.account.storage.borrow(from: FindPack.DLQCollectionStoragePath)!
\| ^^^^^^^^ not found in this scope

error: cannot find variable in this scope: \`FindPack\`
--\> 35717efbbce11c74.Admin:311:99
\|
311 \| let cap= Admin.account.storage.borrow(from: FindPack.DLQCollectionStoragePath)!
\| ^^^^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.Admin:311:21
\|
311 \| let cap= Admin.account.storage.borrow(from: FindPack.DLQCollectionStoragePath)!
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| +| 0x35717efbbce11c74 | CharityNFT | ✅ | +| 0x35717efbbce11c74 | Clock | ✅ | +| 0x35717efbbce11c74 | Dandy | ✅ | +| 0x35717efbbce11c74 | Debug | ✅ | +| 0x35717efbbce11c74 | FIND | ✅ | +| 0x35717efbbce11c74 | FINDNFTCatalog | ✅ | +| 0x35717efbbce11c74 | FINDNFTCatalogAdmin | ✅ | +| 0x35717efbbce11c74 | FTRegistry | ✅ | +| 0x35717efbbce11c74 | FindAirdropper | ✅ | +| 0x35717efbbce11c74 | FindForge | ✅ | +| 0x35717efbbce11c74 | FindForgeOrder | ✅ | +| 0x35717efbbce11c74 | FindForgeStruct | ✅ | +| 0x35717efbbce11c74 | FindFurnace | ✅ | +| 0x35717efbbce11c74 | FindLeaseMarket | ✅ | +| 0x35717efbbce11c74 | FindLeaseMarketAuctionSoft | ✅ | +| 0x35717efbbce11c74 | FindLeaseMarketDirectOfferSoft | ✅ | +| 0x35717efbbce11c74 | FindLeaseMarketSale | ✅ | +| 0x35717efbbce11c74 | FindLostAndFoundWrapper | ✅ | +| 0x35717efbbce11c74 | FindMarket | ✅ | +| 0x35717efbbce11c74 | FindMarketAdmin | ✅ | +| 0x35717efbbce11c74 | FindMarketAuctionEscrow | ✅ | +| 0x35717efbbce11c74 | FindMarketAuctionSoft | ✅ | +| 0x35717efbbce11c74 | FindMarketCut | ✅ | +| 0x35717efbbce11c74 | FindMarketCutInterface | ✅ | +| 0x35717efbbce11c74 | FindMarketCutStruct | ✅ | +| 0x35717efbbce11c74 | FindMarketDirectOfferEscrow | ✅ | +| 0x35717efbbce11c74 | FindMarketDirectOfferSoft | ✅ | +| 0x35717efbbce11c74 | FindMarketInfrastructureCut | ✅ | +| 0x35717efbbce11c74 | FindMarketSale | ✅ | +| 0x35717efbbce11c74 | FindPack | ❌

Error:
error: error getting program 35717efbbce11c74.FindVerifier: failed to derive value: load program failed: Checking failed:
error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

--\> 857dc34d5e1631d3.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:38:24

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:62

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:80

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:81:24

--\> 35717efbbce11c74.FindVerifier

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:164:26
\|
164 \| verifiers : \$&{FindVerifier.Verifier}\$&,
\| ^^^^^^^^^^^^ not found in this scope

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:164:25
\|
164 \| verifiers : \$&{FindVerifier.Verifier}\$&,
\| ^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:156:38
\|
156 \| access(all) let verifiers : \$&{FindVerifier.Verifier}\$&
\| ^^^^^^^^^^^^ not found in this scope

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:156:37
\|
156 \| access(all) let verifiers : \$&{FindVerifier.Verifier}\$&
\| ^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:211:123
\|
211 \| init(name : String, startTime : UFix64 , endTime : UFix64? , price : UFix64, purchaseLimit : UInt64?, verifiers: \$&{FindVerifier.Verifier}\$&, verifyAll : Bool ) {
\| ^^^^^^^^^^^^ not found in this scope

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:211:122
\|
211 \| init(name : String, startTime : UFix64 , endTime : UFix64? , price : UFix64, purchaseLimit : UInt64?, verifiers: \$&{FindVerifier.Verifier}\$&, verifyAll : Bool ) {
\| ^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FindVerifier\`
--\> 35717efbbce11c74.FindPack:208:38
\|
208 \| access(all) let verifiers : \$&{FindVerifier.Verifier}\$&
\| ^^^^^^^^^^^^ not found in this scope

error: ambiguous intersection type
--\> 35717efbbce11c74.FindPack:208:37
\|
208 \| access(all) let verifiers : \$&{FindVerifier.Verifier}\$&
\| ^^^^^^^^^^^^^^^^^^^^^^^
| +| 0x35717efbbce11c74 | FindRelatedAccounts | ✅ | +| 0x35717efbbce11c74 | FindRulesCache | ✅ | +| 0x35717efbbce11c74 | FindThoughts | ✅ | +| 0x35717efbbce11c74 | FindUtils | ✅ | +| 0x35717efbbce11c74 | FindVerifier | ❌

Error:
error: error getting program 857dc34d5e1631d3.FLOAT: failed to derive value: load program failed: Checking failed:
error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:326:43

error: cannot find type in this scope: \`NonFungibleToken.Owner\`
--\> 857dc34d5e1631d3.FLOAT:350:15

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:270:29

error: cannot apply binary operation ?? to left-hand type
--\> 857dc34d5e1631d3.FLOAT:198:17

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

error: resource \`FLOAT.Collection\` does not conform to resource interface \`NonFungibleToken.Collection\`
--\> 857dc34d5e1631d3.FLOAT:298:25

--\> 857dc34d5e1631d3.FLOAT

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:62
\|
38 \| let float = getAccount(user).capabilities.borrow<&FLOAT.Collection>(FLOAT.FLOATCollectionPublicPath)
\| ^^^^^ not found in this scope

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:38:80
\|
38 \| let float = getAccount(user).capabilities.borrow<&FLOAT.Collection>(FLOAT.FLOATCollectionPublicPath)
\| ^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:38:24
\|
38 \| let float = getAccount(user).capabilities.borrow<&FLOAT.Collection>(FLOAT.FLOATCollectionPublicPath)
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: cannot find type in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:62
\|
81 \| let float = getAccount(user).capabilities.borrow<&FLOAT.Collection>(FLOAT.FLOATCollectionPublicPath)
\| ^^^^^ not found in this scope

error: cannot find variable in this scope: \`FLOAT\`
--\> 35717efbbce11c74.FindVerifier:81:80
\|
81 \| let float = getAccount(user).capabilities.borrow<&FLOAT.Collection>(FLOAT.FLOATCollectionPublicPath)
\| ^^^^^ not found in this scope

error: cannot infer type parameter: \`T\`
--\> 35717efbbce11c74.FindVerifier:81:24
\|
81 \| let float = getAccount(user).capabilities.borrow<&FLOAT.Collection>(FLOAT.FLOATCollectionPublicPath)
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| +| 0x35717efbbce11c74 | FindViews | ✅ | +| 0x35717efbbce11c74 | NameVoucher | ✅ | +| 0x35717efbbce11c74 | Profile | ✅ | +| 0x35717efbbce11c74 | ProfileCache | ✅ | +| 0x35717efbbce11c74 | Sender | ✅ | +| 0x917db7072ed7160b | Cryptoys | ✅ | +| 0x917db7072ed7160b | CryptoysMetadataView2 | ✅ | +| 0x917db7072ed7160b | ICryptoys | ✅ | +| 0xcc4e949596cf8ced | TwoSegmentsInterestRateModel | ✅ | +| 0xc911d6ddfae70ce8 | PriceOracle | ✅ | +| 0x6d0f55821f6b2dbe | BBxBarbieCard | ✅ | +| 0x6d0f55821f6b2dbe | BBxBarbiePM | ✅ | +| 0x6d0f55821f6b2dbe | BBxBarbiePack | ✅ | +| 0x6d0f55821f6b2dbe | BBxBarbieToken | ✅ | +| 0x294e44e1ec6993c6 | CapabilityDelegator | ✅ | +| 0x294e44e1ec6993c6 | CapabilityFactory | ✅ | +| 0x294e44e1ec6993c6 | CapabilityFilter | ✅ | +| 0x294e44e1ec6993c6 | FTAllFactory | ✅ | +| 0x294e44e1ec6993c6 | FTBalanceFactory | ✅ | +| 0x294e44e1ec6993c6 | FTProviderFactory | ✅ | +| 0x294e44e1ec6993c6 | FTReceiverBalanceFactory | ✅ | +| 0x294e44e1ec6993c6 | FTReceiverFactory | ✅ | +| 0x294e44e1ec6993c6 | HybridCustody | ✅ | +| 0x294e44e1ec6993c6 | NFTCollectionPublicFactory | ✅ | +| 0x294e44e1ec6993c6 | NFTProviderAndCollectionFactory | ✅ | +| 0x294e44e1ec6993c6 | NFTProviderFactory | ✅ | +| 0x31ad40c07a2a9788 | AddressUtils | ✅ | +| 0x31ad40c07a2a9788 | ArrayUtils | ✅ | +| 0x31ad40c07a2a9788 | ScopedFTProviders | ✅ | +| 0x31ad40c07a2a9788 | ScopedNFTProviders | ✅ | +| 0x31ad40c07a2a9788 | StringUtils | ✅ | +| 0xddb929038d45d4b3 | SwapConfig | ✅ | +| 0xddb929038d45d4b3 | SwapError | ✅ | +| 0xddb929038d45d4b3 | SwapInterfaces | ✅ | +| 0x43ee8c22fcf94ea3 | DapperStorageRent | ✅ | +| 0xef4cd3d07a7b43ce | IPackNFT | ✅ | +| 0xef4cd3d07a7b43ce | PDS | ✅ | +| 0x6d692450d591524c | PriceOracle | ✅ | +| 0x072127280188a611 | TestRootContract | ✅ | +| 0x2d766f00eb1d0c37 | PriceOracle | ✅ | +| 0x44ef9309713e2061 | StakingError | ✅ | +| 0x44ef9309713e2061 | StakingNFT | ✅ | +| 0xe8124d8428980aa6 | Bl0x | ✅ | +| 0xc15e75b5f6b95e54 | LendingComptroller | ✅ | +| 0xbd327ae7428784b5 | FlowEVMBridgeHandlerInterfaces | ❌

Error:
error: trying to convert contract interface \`FlowEVMBridgeHandlerInterfaces\` to a contract
--\> bd327ae7428784b5.FlowEVMBridgeHandlerInterfaces:12:21
\|
12 \| access(all) contract FlowEVMBridgeHandlerInterfaces {
\| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| +| 0xe223d8a629e49c68 | FUSD | ✅ | +| 0xe45c64ecfe31e465 | DelegatorManager | ✅ | +| 0xe45c64ecfe31e465 | LiquidStaking | ✅ | +| 0xe45c64ecfe31e465 | LiquidStakingConfig | ✅ | +| 0xe45c64ecfe31e465 | LiquidStakingError | ✅ | +| 0xe45c64ecfe31e465 | stFlowToken | ✅ | +| 0xdfc20aee650fcbdf | FlowEVMBridgeHandlerInterfaces | ✅ | +| 0x23031fd14bb0f21b | TwoSegmentsInterestRateModel | ✅ | +| 0x74ad08095d92192a | ETHUtils | ✅ | +| 0x74ad08095d92192a | EVMAgent | ✅ | +| 0x74ad08095d92192a | FGameLottery | ✅ | +| 0x74ad08095d92192a | FGameLotteryFactory | ✅ | +| 0x74ad08095d92192a | FGameLotteryRegistry | ✅ | +| 0x74ad08095d92192a | FGameRugRoyale | ✅ | +| 0x74ad08095d92192a | FRC20AccountsPool | ✅ | +| 0x74ad08095d92192a | FRC20Agents | ✅ | +| 0x74ad08095d92192a | FRC20Converter | ✅ | +| 0x74ad08095d92192a | FRC20FTShared | ✅ | +| 0x74ad08095d92192a | FRC20FungibleToken | ✅ | +| 0x74ad08095d92192a | FRC20Indexer | ✅ | +| 0x74ad08095d92192a | FRC20MarketManager | ✅ | +| 0x74ad08095d92192a | FRC20Marketplace | ✅ | +| 0x74ad08095d92192a | FRC20NFTWrapper | ✅ | +| 0x74ad08095d92192a | FRC20SemiNFT | ✅ | +| 0x74ad08095d92192a | FRC20Staking | ✅ | +| 0x74ad08095d92192a | FRC20StakingForwarder | ✅ | +| 0x74ad08095d92192a | FRC20StakingManager | ✅ | +| 0x74ad08095d92192a | FRC20StakingVesting | ✅ | +| 0x74ad08095d92192a | FRC20Storefront | ✅ | +| 0x74ad08095d92192a | FRC20TradingRecord | ✅ | +| 0x74ad08095d92192a | FRC20VoteCommands | ✅ | +| 0x74ad08095d92192a | FRC20Votes | ✅ | +| 0x74ad08095d92192a | Fixes | ✅ | +| 0x74ad08095d92192a | FixesAssetMeta | ✅ | +| 0x74ad08095d92192a | FixesAvatar | ✅ | +| 0x74ad08095d92192a | FixesBondingCurve | ✅ | +| 0x74ad08095d92192a | FixesFungibleToken | ✅ | +| 0x74ad08095d92192a | FixesFungibleTokenInterface | ✅ | +| 0x74ad08095d92192a | FixesHeartbeat | ✅ | +| 0x74ad08095d92192a | FixesInscriptionFactory | ✅ | +| 0x74ad08095d92192a | FixesTokenAirDrops | ✅ | +| 0x74ad08095d92192a | FixesTokenLockDrops | ✅ | +| 0x74ad08095d92192a | FixesTradablePool | ✅ | +| 0x74ad08095d92192a | FixesTraits | ✅ | +| 0x74ad08095d92192a | FixesWrappedNFT | ✅ | +| 0x74ad08095d92192a | FungibleTokenManager | ✅ | +| 0x3a52faafb43951c0 | LNVCT | ✅ | +| 0x3a52faafb43951c0 | MLS | ✅ | +| 0x3a52faafb43951c0 | NFL | ✅ | +| 0x3a52faafb43951c0 | Stanz | ✅ | +| 0x3a52faafb43951c0 | TMNFT | ✅ | +| 0xb45e7992680a0f7f | CricketMoments | ✅ | +| 0xb45e7992680a0f7f | FazeUtilityCoin | ✅ | +| 0xd704ee8202a0d82d | ExampleNFT | ✅ | +| 0xa1296b1e2e90ca5b | HelloWorld | ✅ | +| 0x6c35f966375845a6 | TixologiTickets | ✅ | +| 0x520a7157e1b964ed | ShebaHopeGrows | ✅ | +| 0xd8f6346999b983f5 | IPackNFT | ✅ | +| 0x8232ce4a3aff4e94 | PublicPriceOracle | ✅ | +| 0x566c813b3632783e | ACCO_SOLEIL | ✅ | +| 0x566c813b3632783e | AIICOSMPLG | ✅ | +| 0x566c813b3632783e | AUGUSTUS1 | ✅ | +| 0x566c813b3632783e | BFD | ✅ | +| 0x566c813b3632783e | BTC | ✅ | +| 0x566c813b3632783e | BYPRODUCT | ✅ | +| 0x566c813b3632783e | DOGETKN | ✅ | +| 0x566c813b3632783e | DUNK | ✅ | +| 0x566c813b3632783e | DWLC | ✅ | +| 0x566c813b3632783e | EBISU | ✅ | +| 0x566c813b3632783e | ECO | ✅ | +| 0x566c813b3632783e | EDGE | ✅ | +| 0x566c813b3632783e | ELEMENT | ✅ | +| 0x566c813b3632783e | ExampleNFT | ✅ | +| 0x566c813b3632783e | H442T04 | ✅ | +| 0x566c813b3632783e | H442T05 | ✅ | +| 0x566c813b3632783e | HowardNFT | ✅ | +| 0x566c813b3632783e | IAT | ✅ | +| 0x566c813b3632783e | JOSHIN | ✅ | +| 0x566c813b3632783e | KOZO | ✅ | +| 0x566c813b3632783e | Karat | ✅ | +| 0x566c813b3632783e | KaratNFT | ✅ | +| 0x566c813b3632783e | Karatv2 | ✅ | +| 0x566c813b3632783e | MARK | ✅ | +| 0x566c813b3632783e | MARKIE | ✅ | +| 0x566c813b3632783e | MARKIE2 | ✅ | +| 0x9680721e43087f43 | DropTypes | ✅ | +| 0x566c813b3632783e | MARKIE3 | ✅ | +| 0x566c813b3632783e | MEDI | ✅ | +| 0x566c813b3632783e | MEGAMI | ✅ | +| 0x566c813b3632783e | MRFRIENDLY | ✅ | +| 0x566c813b3632783e | SCARETKN | ✅ | +| 0x566c813b3632783e | SNAKE | ✅ | +| 0x566c813b3632783e | SUGOI | ✅ | +| 0x566c813b3632783e | SUNTORY | ✅ | +| 0x566c813b3632783e | Sorachi | ✅ | +| 0x566c813b3632783e | Story | ✅ | +| 0x566c813b3632783e | TNP | ✅ | +| 0x566c813b3632783e | TOM | ✅ | +| 0x566c813b3632783e | TS | ✅ | +| 0x566c813b3632783e | TSTCON | ✅ | +| 0x566c813b3632783e | WE_PIN | ✅ | diff --git a/npm-packages/cadence-parser/package.json b/npm-packages/cadence-parser/package.json index 40f24d2759..b5804d85d9 100644 --- a/npm-packages/cadence-parser/package.json +++ b/npm-packages/cadence-parser/package.json @@ -1,6 +1,6 @@ { "name": "@onflow/cadence-parser", - "version": "1.0.0-preview.32", + "version": "1.0.0-preview.33", "description": "The Cadence parser", "homepage": "https://github.com/onflow/cadence", "repository": { diff --git a/npm-packages/cadence-parser/src/index.ts b/npm-packages/cadence-parser/src/index.ts index ed0ffb8545..ad5fe8bf63 100644 --- a/npm-packages/cadence-parser/src/index.ts +++ b/npm-packages/cadence-parser/src/index.ts @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/npm-packages/monaco-languageclient-cadence/src/index.ts b/npm-packages/monaco-languageclient-cadence/src/index.ts index 535e9f77e5..32b1edf13f 100644 --- a/npm-packages/monaco-languageclient-cadence/src/index.ts +++ b/npm-packages/monaco-languageclient-cadence/src/index.ts @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/account_test.go b/runtime/account_test.go index 80f0aa5787..916d1df29f 100644 --- a/runtime/account_test.go +++ b/runtime/account_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/activations/activations.go b/runtime/activations/activations.go index 83584d23ec..44f2b54cdc 100644 --- a/runtime/activations/activations.go +++ b/runtime/activations/activations.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/activations/activations_test.go b/runtime/activations/activations_test.go index d43413470f..a35d1a5055 100644 --- a/runtime/activations/activations_test.go +++ b/runtime/activations/activations_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/access.go b/runtime/ast/access.go index eefdb920eb..136ba24351 100644 --- a/runtime/ast/access.go +++ b/runtime/ast/access.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -211,6 +211,7 @@ type PrimitiveAccess uint8 const ( AccessNotSpecified PrimitiveAccess = iota + AccessNone // "top" access, only used for mapping operations, not actually expressible in the language AccessSelf AccessContract AccessAccount @@ -256,6 +257,8 @@ func (a PrimitiveAccess) Keyword() string { return "access(contract)" case AccessPubSettableLegacy: return "pub(set)" + case AccessNone: + return "inaccessible" } panic(errors.NewUnreachableError()) @@ -275,6 +278,8 @@ func (a PrimitiveAccess) Description() string { return "contract" case AccessPubSettableLegacy: return "legacy public settable" + case AccessNone: + return "inaccessible" } panic(errors.NewUnreachableError()) diff --git a/runtime/ast/access_test.go b/runtime/ast/access_test.go index 77e8fb2f44..cd706b04f3 100644 --- a/runtime/ast/access_test.go +++ b/runtime/ast/access_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/argument.go b/runtime/ast/argument.go index cbf018f278..539355bbea 100644 --- a/runtime/ast/argument.go +++ b/runtime/ast/argument.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/argument_test.go b/runtime/ast/argument_test.go index cbd0c124f7..d1577f477b 100644 --- a/runtime/ast/argument_test.go +++ b/runtime/ast/argument_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/ast.go b/runtime/ast/ast.go index de9ecfce4a..5c1f0d3083 100644 --- a/runtime/ast/ast.go +++ b/runtime/ast/ast.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/attachment.go b/runtime/ast/attachment.go index b0cbe2b67b..32cd047473 100644 --- a/runtime/ast/attachment.go +++ b/runtime/ast/attachment.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/attachment_test.go b/runtime/ast/attachment_test.go index 35d27e119a..d57c61e365 100644 --- a/runtime/ast/attachment_test.go +++ b/runtime/ast/attachment_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/block.go b/runtime/ast/block.go index 6ffb34c524..1f1b70a596 100644 --- a/runtime/ast/block.go +++ b/runtime/ast/block.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/block_test.go b/runtime/ast/block_test.go index 2c3880c353..c8be0ab493 100644 --- a/runtime/ast/block_test.go +++ b/runtime/ast/block_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/composite.go b/runtime/ast/composite.go index 66681bf42d..dae942b6af 100644 --- a/runtime/ast/composite.go +++ b/runtime/ast/composite.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/composite_test.go b/runtime/ast/composite_test.go index ce8d243de8..104e0cfa4e 100644 --- a/runtime/ast/composite_test.go +++ b/runtime/ast/composite_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/conditionkind.go b/runtime/ast/conditionkind.go index da4d7d841a..c0112eec6f 100644 --- a/runtime/ast/conditionkind.go +++ b/runtime/ast/conditionkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/conditionkind_test.go b/runtime/ast/conditionkind_test.go index 5a62ac2a0c..82441f1146 100644 --- a/runtime/ast/conditionkind_test.go +++ b/runtime/ast/conditionkind_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/declaration.go b/runtime/ast/declaration.go index 965203d3b1..ce509fbb45 100644 --- a/runtime/ast/declaration.go +++ b/runtime/ast/declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/elementtype.go b/runtime/ast/elementtype.go index d71588f5b8..1ceee39f3e 100644 --- a/runtime/ast/elementtype.go +++ b/runtime/ast/elementtype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/entitlement_declaration.go b/runtime/ast/entitlement_declaration.go index d48909311f..6a53e4e445 100644 --- a/runtime/ast/entitlement_declaration.go +++ b/runtime/ast/entitlement_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/entitlement_declaration_test.go b/runtime/ast/entitlement_declaration_test.go index 7cbd0b85b1..b1801abfe4 100644 --- a/runtime/ast/entitlement_declaration_test.go +++ b/runtime/ast/entitlement_declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/expression.go b/runtime/ast/expression.go index de050d3928..0142b92b20 100644 --- a/runtime/ast/expression.go +++ b/runtime/ast/expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/expression_as_type.go b/runtime/ast/expression_as_type.go index 9f4416e3e2..d5192585d6 100644 --- a/runtime/ast/expression_as_type.go +++ b/runtime/ast/expression_as_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/expression_extractor.go b/runtime/ast/expression_extractor.go index 9e4c3335bd..777dc8e4d3 100644 --- a/runtime/ast/expression_extractor.go +++ b/runtime/ast/expression_extractor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/expression_extractor_test.go b/runtime/ast/expression_extractor_test.go index e9ca89ab5c..f20fa24ab3 100644 --- a/runtime/ast/expression_extractor_test.go +++ b/runtime/ast/expression_extractor_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/expression_test.go b/runtime/ast/expression_test.go index 90ff268f73..c37dbfda38 100644 --- a/runtime/ast/expression_test.go +++ b/runtime/ast/expression_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/function_declaration.go b/runtime/ast/function_declaration.go index 7b77fddcbc..f86f6be670 100644 --- a/runtime/ast/function_declaration.go +++ b/runtime/ast/function_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/function_declaration_test.go b/runtime/ast/function_declaration_test.go index acfe9dd3e1..c164a67da4 100644 --- a/runtime/ast/function_declaration_test.go +++ b/runtime/ast/function_declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/identifier.go b/runtime/ast/identifier.go index d7576ccf01..515ea7699b 100644 --- a/runtime/ast/identifier.go +++ b/runtime/ast/identifier.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/import.go b/runtime/ast/import.go index 01f4196c27..312cc9903f 100644 --- a/runtime/ast/import.go +++ b/runtime/ast/import.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/import_test.go b/runtime/ast/import_test.go index cae24ff9c8..462dd63313 100644 --- a/runtime/ast/import_test.go +++ b/runtime/ast/import_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/inspect.go b/runtime/ast/inspect.go index 0bd0d97408..2acf193b10 100644 --- a/runtime/ast/inspect.go +++ b/runtime/ast/inspect.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/inspector.go b/runtime/ast/inspector.go index 0b9a1a130b..0ed8c75cc0 100644 --- a/runtime/ast/inspector.go +++ b/runtime/ast/inspector.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/inspector_test.go b/runtime/ast/inspector_test.go index dc2ba6a026..dd1beb653a 100644 --- a/runtime/ast/inspector_test.go +++ b/runtime/ast/inspector_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/interface.go b/runtime/ast/interface.go index cf19d4a03b..8fa4c622f1 100644 --- a/runtime/ast/interface.go +++ b/runtime/ast/interface.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/interface_test.go b/runtime/ast/interface_test.go index e850fb1c16..24819d9c35 100644 --- a/runtime/ast/interface_test.go +++ b/runtime/ast/interface_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/memberindices.go b/runtime/ast/memberindices.go index ca21bdba01..5c9c421cc4 100644 --- a/runtime/ast/memberindices.go +++ b/runtime/ast/memberindices.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/memberindices_test.go b/runtime/ast/memberindices_test.go index 978e27b495..b05ab02e80 100644 --- a/runtime/ast/memberindices_test.go +++ b/runtime/ast/memberindices_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/members.go b/runtime/ast/members.go index 30ebfd4773..5ad8354540 100644 --- a/runtime/ast/members.go +++ b/runtime/ast/members.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/members_test.go b/runtime/ast/members_test.go index e9ecebcccc..488c24310d 100644 --- a/runtime/ast/members_test.go +++ b/runtime/ast/members_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/operation.go b/runtime/ast/operation.go index 55528f2857..160512ed5e 100644 --- a/runtime/ast/operation.go +++ b/runtime/ast/operation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/operation_test.go b/runtime/ast/operation_test.go index e0095016fe..acf92bb2f0 100644 --- a/runtime/ast/operation_test.go +++ b/runtime/ast/operation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/parameter.go b/runtime/ast/parameter.go index ee0d3f6cc8..937ae2a3aa 100644 --- a/runtime/ast/parameter.go +++ b/runtime/ast/parameter.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/parameterlist.go b/runtime/ast/parameterlist.go index 02df007230..97eef6a0f0 100644 --- a/runtime/ast/parameterlist.go +++ b/runtime/ast/parameterlist.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/parameterlist_test.go b/runtime/ast/parameterlist_test.go index 6c42f2c9e0..0963de6cde 100644 --- a/runtime/ast/parameterlist_test.go +++ b/runtime/ast/parameterlist_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/position.go b/runtime/ast/position.go index cd21358ac1..3a7dc42f89 100644 --- a/runtime/ast/position.go +++ b/runtime/ast/position.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/pragma.go b/runtime/ast/pragma.go index f989d7b08e..5ade93660e 100644 --- a/runtime/ast/pragma.go +++ b/runtime/ast/pragma.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/pragma_test.go b/runtime/ast/pragma_test.go index b075196a24..e63d90ce53 100644 --- a/runtime/ast/pragma_test.go +++ b/runtime/ast/pragma_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/precedence.go b/runtime/ast/precedence.go index 1f1d857050..3e42f6a8f1 100644 --- a/runtime/ast/precedence.go +++ b/runtime/ast/precedence.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/prettier.go b/runtime/ast/prettier.go index 833c760e5d..00dacfe814 100644 --- a/runtime/ast/prettier.go +++ b/runtime/ast/prettier.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/primitiveaccess_string.go b/runtime/ast/primitiveaccess_string.go index 03b4adf583..a9219506d1 100644 --- a/runtime/ast/primitiveaccess_string.go +++ b/runtime/ast/primitiveaccess_string.go @@ -9,16 +9,17 @@ func _() { // Re-run the stringer command to generate them again. var x [1]struct{} _ = x[AccessNotSpecified-0] - _ = x[AccessSelf-1] - _ = x[AccessContract-2] - _ = x[AccessAccount-3] - _ = x[AccessAll-4] - _ = x[AccessPubSettableLegacy-5] + _ = x[AccessNone-1] + _ = x[AccessSelf-2] + _ = x[AccessContract-3] + _ = x[AccessAccount-4] + _ = x[AccessAll-5] + _ = x[AccessPubSettableLegacy-6] } -const _PrimitiveAccess_name = "AccessNotSpecifiedAccessSelfAccessContractAccessAccountAccessAllAccessPubSettableLegacy" +const _PrimitiveAccess_name = "AccessNotSpecifiedAccessNoneAccessSelfAccessContractAccessAccountAccessAllAccessPubSettableLegacy" -var _PrimitiveAccess_index = [...]uint8{0, 18, 28, 42, 55, 64, 87} +var _PrimitiveAccess_index = [...]uint8{0, 18, 28, 38, 52, 65, 74, 97} func (i PrimitiveAccess) String() string { if i >= PrimitiveAccess(len(_PrimitiveAccess_index)-1) { diff --git a/runtime/ast/program.go b/runtime/ast/program.go index 669d34fad0..743aa86ddb 100644 --- a/runtime/ast/program.go +++ b/runtime/ast/program.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/program_test.go b/runtime/ast/program_test.go index b6cf2f5416..ffe1d13779 100644 --- a/runtime/ast/program_test.go +++ b/runtime/ast/program_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/programindices.go b/runtime/ast/programindices.go index d6f137ebd4..36e37e58df 100644 --- a/runtime/ast/programindices.go +++ b/runtime/ast/programindices.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/programindices_test.go b/runtime/ast/programindices_test.go index df09c115a2..019b27175e 100644 --- a/runtime/ast/programindices_test.go +++ b/runtime/ast/programindices_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/statement.go b/runtime/ast/statement.go index f822d56f1f..e1e3b6c519 100644 --- a/runtime/ast/statement.go +++ b/runtime/ast/statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/statement_test.go b/runtime/ast/statement_test.go index dc624e0e32..e6c91f82b8 100644 --- a/runtime/ast/statement_test.go +++ b/runtime/ast/statement_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/string.go b/runtime/ast/string.go index 2d00eebe80..6dab5def14 100644 --- a/runtime/ast/string.go +++ b/runtime/ast/string.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/string_test.go b/runtime/ast/string_test.go index 5a945b0854..f3d76503e2 100644 --- a/runtime/ast/string_test.go +++ b/runtime/ast/string_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/transaction_declaration.go b/runtime/ast/transaction_declaration.go index 73f8911f92..a9b6d91b23 100644 --- a/runtime/ast/transaction_declaration.go +++ b/runtime/ast/transaction_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/transaction_declaration_test.go b/runtime/ast/transaction_declaration_test.go index 41fbcabc5f..44f4afd39c 100644 --- a/runtime/ast/transaction_declaration_test.go +++ b/runtime/ast/transaction_declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/transfer.go b/runtime/ast/transfer.go index b19ceb899b..90ab2f5a79 100644 --- a/runtime/ast/transfer.go +++ b/runtime/ast/transfer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/transfer_test.go b/runtime/ast/transfer_test.go index daa8eebf87..37e8d48342 100644 --- a/runtime/ast/transfer_test.go +++ b/runtime/ast/transfer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/transferoperation.go b/runtime/ast/transferoperation.go index 9fab5f8789..c4e7925c2e 100644 --- a/runtime/ast/transferoperation.go +++ b/runtime/ast/transferoperation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/transferoperation_test.go b/runtime/ast/transferoperation_test.go index b912c83a72..3922ee5527 100644 --- a/runtime/ast/transferoperation_test.go +++ b/runtime/ast/transferoperation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/type.go b/runtime/ast/type.go index 4d9f48c893..095653afd4 100644 --- a/runtime/ast/type.go +++ b/runtime/ast/type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/type_test.go b/runtime/ast/type_test.go index df94807b22..5a8ae73c8a 100644 --- a/runtime/ast/type_test.go +++ b/runtime/ast/type_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/typeparameter.go b/runtime/ast/typeparameter.go index a7edff3d5e..55b26958b9 100644 --- a/runtime/ast/typeparameter.go +++ b/runtime/ast/typeparameter.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/typeparameterlist.go b/runtime/ast/typeparameterlist.go index fb695a64e5..5abed2e88f 100644 --- a/runtime/ast/typeparameterlist.go +++ b/runtime/ast/typeparameterlist.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/variable_declaration.go b/runtime/ast/variable_declaration.go index 11daa75c40..bc82b55a5a 100644 --- a/runtime/ast/variable_declaration.go +++ b/runtime/ast/variable_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/variable_declaration_test.go b/runtime/ast/variable_declaration_test.go index 0ea4d9e558..c34430f631 100644 --- a/runtime/ast/variable_declaration_test.go +++ b/runtime/ast/variable_declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/variablekind.go b/runtime/ast/variablekind.go index 76909b4e2b..d3a8ff683c 100644 --- a/runtime/ast/variablekind.go +++ b/runtime/ast/variablekind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/variablekind_test.go b/runtime/ast/variablekind_test.go index f3cd7d17df..5d3d541be2 100644 --- a/runtime/ast/variablekind_test.go +++ b/runtime/ast/variablekind_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/visitor.go b/runtime/ast/visitor.go index 54da199a4e..c18fdd797f 100644 --- a/runtime/ast/visitor.go +++ b/runtime/ast/visitor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ast/walk.go b/runtime/ast/walk.go index 8e4dd07b97..9b272b97ef 100644 --- a/runtime/ast/walk.go +++ b/runtime/ast/walk.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/attachments_test.go b/runtime/attachments_test.go index 9864dcb705..259b5f1cb9 100644 --- a/runtime/attachments_test.go +++ b/runtime/attachments_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/capabilities_test.go b/runtime/capabilities_test.go index 1a54e8a6b4..a76aa07ac9 100644 --- a/runtime/capabilities_test.go +++ b/runtime/capabilities_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/capabilitycontrollers_test.go b/runtime/capabilitycontrollers_test.go index b8bd18f82b..8bdc01b220 100644 --- a/runtime/capabilitycontrollers_test.go +++ b/runtime/capabilitycontrollers_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/check/main.go b/runtime/cmd/check/main.go index 75b2789517..69112b4aa4 100644 --- a/runtime/cmd/check/main.go +++ b/runtime/cmd/check/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/cmd.go b/runtime/cmd/cmd.go index 293b59aa8a..4192c23fc9 100644 --- a/runtime/cmd/cmd.go +++ b/runtime/cmd/cmd.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/compile/main.go b/runtime/cmd/compile/main.go index 44e85545df..192dfc5d62 100644 --- a/runtime/cmd/compile/main.go +++ b/runtime/cmd/compile/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/decode-state-values/main.go b/runtime/cmd/decode-state-values/main.go index 2b2bce6765..4f89a1c6b1 100644 --- a/runtime/cmd/decode-state-values/main.go +++ b/runtime/cmd/decode-state-values/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/execute/colors.go b/runtime/cmd/execute/colors.go index 72abe92b5d..1b26be954a 100644 --- a/runtime/cmd/execute/colors.go +++ b/runtime/cmd/execute/colors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/execute/debugger.go b/runtime/cmd/execute/debugger.go index 07f42edbd9..43c26caf9e 100644 --- a/runtime/cmd/execute/debugger.go +++ b/runtime/cmd/execute/debugger.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/execute/execute.go b/runtime/cmd/execute/execute.go index e05e634423..6b2000170d 100644 --- a/runtime/cmd/execute/execute.go +++ b/runtime/cmd/execute/execute.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/execute/repl.go b/runtime/cmd/execute/repl.go index be767e9cae..5532ba4eab 100644 --- a/runtime/cmd/execute/repl.go +++ b/runtime/cmd/execute/repl.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/info/main.go b/runtime/cmd/info/main.go index 757e433f7f..2f4cdeb9e7 100644 --- a/runtime/cmd/info/main.go +++ b/runtime/cmd/info/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/json-cdc/main.go b/runtime/cmd/json-cdc/main.go index 784909165c..5121560124 100644 --- a/runtime/cmd/json-cdc/main.go +++ b/runtime/cmd/json-cdc/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/main/main.go b/runtime/cmd/main/main.go index 3e86df7c06..790ccc9c03 100644 --- a/runtime/cmd/main/main.go +++ b/runtime/cmd/main/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/minifier/minifier.go b/runtime/cmd/minifier/minifier.go index 735280393c..2c4db97cda 100644 --- a/runtime/cmd/minifier/minifier.go +++ b/runtime/cmd/minifier/minifier.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/minifier/minifier_test.go b/runtime/cmd/minifier/minifier_test.go index a7fcbe924c..4ab87e2708 100644 --- a/runtime/cmd/minifier/minifier_test.go +++ b/runtime/cmd/minifier/minifier_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/parse/main.go b/runtime/cmd/parse/main.go index 13b5041fae..3237026dda 100644 --- a/runtime/cmd/parse/main.go +++ b/runtime/cmd/parse/main.go @@ -4,7 +4,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/cmd/parse/main_wasm.go b/runtime/cmd/parse/main_wasm.go index 23e7f789c1..dcd089a91a 100644 --- a/runtime/cmd/parse/main_wasm.go +++ b/runtime/cmd/parse/main_wasm.go @@ -2,7 +2,7 @@ // +build wasm /* - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/address.go b/runtime/common/address.go index d3caddc964..5c1a354f59 100644 --- a/runtime/common/address.go +++ b/runtime/common/address.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/address_test.go b/runtime/common/address_test.go index 71e4202887..b2fe182fac 100644 --- a/runtime/common/address_test.go +++ b/runtime/common/address_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/addresslocation.go b/runtime/common/addresslocation.go index f283f87078..ec296e7c31 100644 --- a/runtime/common/addresslocation.go +++ b/runtime/common/addresslocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/addresslocation_test.go b/runtime/common/addresslocation_test.go index fdea7c4087..cc2e8db82c 100644 --- a/runtime/common/addresslocation_test.go +++ b/runtime/common/addresslocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/bigint.go b/runtime/common/bigint.go index 22515cf6a7..63d58ce0e4 100644 --- a/runtime/common/bigint.go +++ b/runtime/common/bigint.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/bigint_test.go b/runtime/common/bigint_test.go index d1b5a89455..881143d63f 100644 --- a/runtime/common/bigint_test.go +++ b/runtime/common/bigint_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/bimap/bimap.go b/runtime/common/bimap/bimap.go index c3621bdb66..9758645412 100644 --- a/runtime/common/bimap/bimap.go +++ b/runtime/common/bimap/bimap.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/bimap/bimap_test.go b/runtime/common/bimap/bimap_test.go index a0fc129c2f..2b2ce08d8e 100644 --- a/runtime/common/bimap/bimap_test.go +++ b/runtime/common/bimap/bimap_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/compositekind.go b/runtime/common/compositekind.go index 457f18c2e2..c5f0198400 100644 --- a/runtime/common/compositekind.go +++ b/runtime/common/compositekind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/compositekind_test.go b/runtime/common/compositekind_test.go index 4f3d25a32c..9666d1ae61 100644 --- a/runtime/common/compositekind_test.go +++ b/runtime/common/compositekind_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/computationkind.go b/runtime/common/computationkind.go index 68be5b6f9b..3ec0e44698 100644 --- a/runtime/common/computationkind.go +++ b/runtime/common/computationkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/concat.go b/runtime/common/concat.go index 40034c3025..7e30ac9da1 100644 --- a/runtime/common/concat.go +++ b/runtime/common/concat.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/controlstatement.go b/runtime/common/controlstatement.go index 88dae29366..b04ecfe8e5 100644 --- a/runtime/common/controlstatement.go +++ b/runtime/common/controlstatement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/declarationkind.go b/runtime/common/declarationkind.go index a7d7942a28..002b2b13f7 100644 --- a/runtime/common/declarationkind.go +++ b/runtime/common/declarationkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/declarationkind_test.go b/runtime/common/declarationkind_test.go index 5fa7d88739..3304851a61 100644 --- a/runtime/common/declarationkind_test.go +++ b/runtime/common/declarationkind_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/deps/node.go b/runtime/common/deps/node.go index 3ca6158376..bf779c6ff1 100644 --- a/runtime/common/deps/node.go +++ b/runtime/common/deps/node.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/deps/node_test.go b/runtime/common/deps/node_test.go index 1a968987bb..3d96b1c807 100644 --- a/runtime/common/deps/node_test.go +++ b/runtime/common/deps/node_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/deps/set.go b/runtime/common/deps/set.go index aed4197f42..b638e827e0 100644 --- a/runtime/common/deps/set.go +++ b/runtime/common/deps/set.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/enumerate.go b/runtime/common/enumerate.go index 46798c684b..bcb13f0c64 100644 --- a/runtime/common/enumerate.go +++ b/runtime/common/enumerate.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/identifierlocation.go b/runtime/common/identifierlocation.go index ce07bdf579..d7e7ad794c 100644 --- a/runtime/common/identifierlocation.go +++ b/runtime/common/identifierlocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/identifierlocation_test.go b/runtime/common/identifierlocation_test.go index 35a5d833cb..9c730171cd 100644 --- a/runtime/common/identifierlocation_test.go +++ b/runtime/common/identifierlocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/incomparable.go b/runtime/common/incomparable.go index f83d555555..7f1b3d4d55 100644 --- a/runtime/common/incomparable.go +++ b/runtime/common/incomparable.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/integerliteralkind.go b/runtime/common/integerliteralkind.go index e3ab9cb8c2..4275fa4955 100644 --- a/runtime/common/integerliteralkind.go +++ b/runtime/common/integerliteralkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/intervalst/interval.go b/runtime/common/intervalst/interval.go index 127eb0d5c9..a2a3f4a98b 100644 --- a/runtime/common/intervalst/interval.go +++ b/runtime/common/intervalst/interval.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/intervalst/intervalst.go b/runtime/common/intervalst/intervalst.go index fb495eb8eb..0aa2a025f7 100644 --- a/runtime/common/intervalst/intervalst.go +++ b/runtime/common/intervalst/intervalst.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/intervalst/intervalst_test.go b/runtime/common/intervalst/intervalst_test.go index ecea000590..97f1b189bd 100644 --- a/runtime/common/intervalst/intervalst_test.go +++ b/runtime/common/intervalst/intervalst_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/intervalst/node.go b/runtime/common/intervalst/node.go index 82514376e8..459da1642d 100644 --- a/runtime/common/intervalst/node.go +++ b/runtime/common/intervalst/node.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/location.go b/runtime/common/location.go index bb22061874..239c669f8a 100644 --- a/runtime/common/location.go +++ b/runtime/common/location.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/location_test.go b/runtime/common/location_test.go index f4004d0597..95790c8016 100644 --- a/runtime/common/location_test.go +++ b/runtime/common/location_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/memorykind.go b/runtime/common/memorykind.go index cce0adde11..06e6748e9a 100644 --- a/runtime/common/memorykind.go +++ b/runtime/common/memorykind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/metering.go b/runtime/common/metering.go index 930dc872a4..a4b4afc2dd 100644 --- a/runtime/common/metering.go +++ b/runtime/common/metering.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/operandside.go b/runtime/common/operandside.go index 2cc125ba64..403d3bc29b 100644 --- a/runtime/common/operandside.go +++ b/runtime/common/operandside.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/operationkind.go b/runtime/common/operationkind.go index c5708db6b1..4a3279f54e 100644 --- a/runtime/common/operationkind.go +++ b/runtime/common/operationkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/orderedmap/orderedmap.go b/runtime/common/orderedmap/orderedmap.go index 1f584ff886..341721a0d8 100644 --- a/runtime/common/orderedmap/orderedmap.go +++ b/runtime/common/orderedmap/orderedmap.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/orderedmap/orderedmap_test.go b/runtime/common/orderedmap/orderedmap_test.go index 3fa35e1e8d..9e09c9a90a 100644 --- a/runtime/common/orderedmap/orderedmap_test.go +++ b/runtime/common/orderedmap/orderedmap_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/pathdomain.go b/runtime/common/pathdomain.go index c0fa30fd61..61dab3009b 100644 --- a/runtime/common/pathdomain.go +++ b/runtime/common/pathdomain.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/persistent/orderedset.go b/runtime/common/persistent/orderedset.go index 3006807df7..86ef92f68e 100644 --- a/runtime/common/persistent/orderedset.go +++ b/runtime/common/persistent/orderedset.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/persistent/orderedset_test.go b/runtime/common/persistent/orderedset_test.go index be627a0b5d..1b3f1682d5 100644 --- a/runtime/common/persistent/orderedset_test.go +++ b/runtime/common/persistent/orderedset_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/repllocation.go b/runtime/common/repllocation.go index fd626bc28a..a8dc95d353 100644 --- a/runtime/common/repllocation.go +++ b/runtime/common/repllocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/repllocation_test.go b/runtime/common/repllocation_test.go index a153610ee1..b07c72ea54 100644 --- a/runtime/common/repllocation_test.go +++ b/runtime/common/repllocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/scriptlocation.go b/runtime/common/scriptlocation.go index 2942d9d101..24729706e1 100644 --- a/runtime/common/scriptlocation.go +++ b/runtime/common/scriptlocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/scriptlocation_test.go b/runtime/common/scriptlocation_test.go index 82a4f21d30..bd50df256d 100644 --- a/runtime/common/scriptlocation_test.go +++ b/runtime/common/scriptlocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/slice_utils.go b/runtime/common/slice_utils.go index 6e9e5026f8..e0987413e6 100644 --- a/runtime/common/slice_utils.go +++ b/runtime/common/slice_utils.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * -* Copyright Dapper Labs, Inc. +* Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/slice_utils_test.go b/runtime/common/slice_utils_test.go index 929f2ff59c..3981b0ea9e 100644 --- a/runtime/common/slice_utils_test.go +++ b/runtime/common/slice_utils_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * -* Copyright Dapper Labs, Inc. +* Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/stringlocation.go b/runtime/common/stringlocation.go index 17532f665e..304ebb44d1 100644 --- a/runtime/common/stringlocation.go +++ b/runtime/common/stringlocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/stringlocation_test.go b/runtime/common/stringlocation_test.go index d2c9ffd93d..f1e9f3458a 100644 --- a/runtime/common/stringlocation_test.go +++ b/runtime/common/stringlocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/transactionlocation.go b/runtime/common/transactionlocation.go index 29ed8d230e..53647270d5 100644 --- a/runtime/common/transactionlocation.go +++ b/runtime/common/transactionlocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/common/transactionlocation_test.go b/runtime/common/transactionlocation_test.go index 77e41b6980..d14bd9ffa9 100644 --- a/runtime/common/transactionlocation_test.go +++ b/runtime/common/transactionlocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/codegen.go b/runtime/compiler/codegen.go index 3fa80adfa3..b8ccfcafe4 100644 --- a/runtime/compiler/codegen.go +++ b/runtime/compiler/codegen.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/codegen_test.go b/runtime/compiler/codegen_test.go index 9a93d63058..25be5ac816 100644 --- a/runtime/compiler/codegen_test.go +++ b/runtime/compiler/codegen_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/compiler.go b/runtime/compiler/compiler.go index 7e46382ce8..342333adaa 100644 --- a/runtime/compiler/compiler.go +++ b/runtime/compiler/compiler.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/compiler_test.go b/runtime/compiler/compiler_test.go index 580fe48636..95061f2104 100644 --- a/runtime/compiler/compiler_test.go +++ b/runtime/compiler/compiler_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/binop.go b/runtime/compiler/ir/binop.go index 2b2e4f65b3..361101b31a 100644 --- a/runtime/compiler/ir/binop.go +++ b/runtime/compiler/ir/binop.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/constant.go b/runtime/compiler/ir/constant.go index 3fef65c082..f4ebe49dc0 100644 --- a/runtime/compiler/ir/constant.go +++ b/runtime/compiler/ir/constant.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/expr.go b/runtime/compiler/ir/expr.go index f221066f00..094003957b 100644 --- a/runtime/compiler/ir/expr.go +++ b/runtime/compiler/ir/expr.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/func.go b/runtime/compiler/ir/func.go index 095c48b8d2..532190e4c5 100644 --- a/runtime/compiler/ir/func.go +++ b/runtime/compiler/ir/func.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/local.go b/runtime/compiler/ir/local.go index a0fb3452f5..1c95b03df0 100644 --- a/runtime/compiler/ir/local.go +++ b/runtime/compiler/ir/local.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/stmt.go b/runtime/compiler/ir/stmt.go index 742ce9d13d..f2ac1d453b 100644 --- a/runtime/compiler/ir/stmt.go +++ b/runtime/compiler/ir/stmt.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/unop.go b/runtime/compiler/ir/unop.go index 99837b905e..405a1af023 100644 --- a/runtime/compiler/ir/unop.go +++ b/runtime/compiler/ir/unop.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/valtype.go b/runtime/compiler/ir/valtype.go index 5c883eb9e7..35b0916a2d 100644 --- a/runtime/compiler/ir/valtype.go +++ b/runtime/compiler/ir/valtype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/ir/visitor.go b/runtime/compiler/ir/visitor.go index 7497635fde..61b24de0a3 100644 --- a/runtime/compiler/ir/visitor.go +++ b/runtime/compiler/ir/visitor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/local.go b/runtime/compiler/local.go index 14d2cc4bd4..8ba8f7030d 100644 --- a/runtime/compiler/local.go +++ b/runtime/compiler/local.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/block.go b/runtime/compiler/wasm/block.go index b626a5fa42..127be91a29 100644 --- a/runtime/compiler/wasm/block.go +++ b/runtime/compiler/wasm/block.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/blocktype.go b/runtime/compiler/wasm/blocktype.go index f666607201..d62a36d4ad 100644 --- a/runtime/compiler/wasm/blocktype.go +++ b/runtime/compiler/wasm/blocktype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/buf.go b/runtime/compiler/wasm/buf.go index 6efe6cc157..d0483d165b 100644 --- a/runtime/compiler/wasm/buf.go +++ b/runtime/compiler/wasm/buf.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/data.go b/runtime/compiler/wasm/data.go index c2a8b587a8..f5a051d452 100644 --- a/runtime/compiler/wasm/data.go +++ b/runtime/compiler/wasm/data.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/errors.go b/runtime/compiler/wasm/errors.go index 5638c1b430..9317b89d7b 100644 --- a/runtime/compiler/wasm/errors.go +++ b/runtime/compiler/wasm/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/export.go b/runtime/compiler/wasm/export.go index 700f3a3930..1f2e3e04ad 100644 --- a/runtime/compiler/wasm/export.go +++ b/runtime/compiler/wasm/export.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/function.go b/runtime/compiler/wasm/function.go index eca18ef91a..0f22ff75d8 100644 --- a/runtime/compiler/wasm/function.go +++ b/runtime/compiler/wasm/function.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/functiontype.go b/runtime/compiler/wasm/functiontype.go index 8ca533f51d..86287073bd 100644 --- a/runtime/compiler/wasm/functiontype.go +++ b/runtime/compiler/wasm/functiontype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/gen/main.go b/runtime/compiler/wasm/gen/main.go index 2d2a10378d..f052c85f8e 100644 --- a/runtime/compiler/wasm/gen/main.go +++ b/runtime/compiler/wasm/gen/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,7 +30,7 @@ const fileTemplate = `// Code generated by utils/version. DO NOT EDIT. /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/import.go b/runtime/compiler/wasm/import.go index edb56cad81..095f7dc0d6 100644 --- a/runtime/compiler/wasm/import.go +++ b/runtime/compiler/wasm/import.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/instruction.go b/runtime/compiler/wasm/instruction.go index 1a7b838f20..57d44c7132 100644 --- a/runtime/compiler/wasm/instruction.go +++ b/runtime/compiler/wasm/instruction.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/instructions.go b/runtime/compiler/wasm/instructions.go index 436d16f96b..e4cad104dc 100644 --- a/runtime/compiler/wasm/instructions.go +++ b/runtime/compiler/wasm/instructions.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/leb128.go b/runtime/compiler/wasm/leb128.go index d96b044f42..cbba8d7f74 100644 --- a/runtime/compiler/wasm/leb128.go +++ b/runtime/compiler/wasm/leb128.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/leb128_test.go b/runtime/compiler/wasm/leb128_test.go index 1f66b3e332..6b21ae86a1 100644 --- a/runtime/compiler/wasm/leb128_test.go +++ b/runtime/compiler/wasm/leb128_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/magic.go b/runtime/compiler/wasm/magic.go index 24baff180c..2fa2b82aba 100644 --- a/runtime/compiler/wasm/magic.go +++ b/runtime/compiler/wasm/magic.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/memory.go b/runtime/compiler/wasm/memory.go index 6fd71249ec..c8fa322286 100644 --- a/runtime/compiler/wasm/memory.go +++ b/runtime/compiler/wasm/memory.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/module.go b/runtime/compiler/wasm/module.go index eaf4d533a0..fb818ad9c3 100644 --- a/runtime/compiler/wasm/module.go +++ b/runtime/compiler/wasm/module.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/modulebuilder.go b/runtime/compiler/wasm/modulebuilder.go index e7f7ed0806..d0b4d0f11f 100644 --- a/runtime/compiler/wasm/modulebuilder.go +++ b/runtime/compiler/wasm/modulebuilder.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/opcode.go b/runtime/compiler/wasm/opcode.go index 207c2ade7a..9a0766597d 100644 --- a/runtime/compiler/wasm/opcode.go +++ b/runtime/compiler/wasm/opcode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/reader.go b/runtime/compiler/wasm/reader.go index 96e0042ec3..a9163d4bb8 100644 --- a/runtime/compiler/wasm/reader.go +++ b/runtime/compiler/wasm/reader.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/reader_test.go b/runtime/compiler/wasm/reader_test.go index 32d6ea8ca5..65485b59ee 100644 --- a/runtime/compiler/wasm/reader_test.go +++ b/runtime/compiler/wasm/reader_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/section.go b/runtime/compiler/wasm/section.go index 79c77d4a05..e6609d33a1 100644 --- a/runtime/compiler/wasm/section.go +++ b/runtime/compiler/wasm/section.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/valuetype.go b/runtime/compiler/wasm/valuetype.go index 9f780e214c..f80b21c788 100644 --- a/runtime/compiler/wasm/valuetype.go +++ b/runtime/compiler/wasm/valuetype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/wasm.go b/runtime/compiler/wasm/wasm.go index 40ec90558c..295f38da5b 100644 --- a/runtime/compiler/wasm/wasm.go +++ b/runtime/compiler/wasm/wasm.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/wasm2wat.go b/runtime/compiler/wasm/wasm2wat.go index 7ab639d0c8..517cb217f4 100644 --- a/runtime/compiler/wasm/wasm2wat.go +++ b/runtime/compiler/wasm/wasm2wat.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/writer.go b/runtime/compiler/wasm/writer.go index ee2694e138..2ae17dd6ec 100644 --- a/runtime/compiler/wasm/writer.go +++ b/runtime/compiler/wasm/writer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/compiler/wasm/writer_test.go b/runtime/compiler/wasm/writer_test.go index 7912bc84c7..2b79997d25 100644 --- a/runtime/compiler/wasm/writer_test.go +++ b/runtime/compiler/wasm/writer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/config.go b/runtime/config.go index 2915c70e30..3e3a273ff1 100644 --- a/runtime/config.go +++ b/runtime/config.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,4 +39,6 @@ type Config struct { AttachmentsEnabled bool // LegacyContractUpgradeEnabled enabled specifies whether to use the old parser when parsing an old contract LegacyContractUpgradeEnabled bool + // ContractUpdateTypeRemovalEnabled specifies if type removal is enabled in contract updates + ContractUpdateTypeRemovalEnabled bool } diff --git a/runtime/context.go b/runtime/context.go index c1344856ba..4df6e0cf62 100644 --- a/runtime/context.go +++ b/runtime/context.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/contract_function_executor.go b/runtime/contract_function_executor.go index 968d3890ac..6d443b0ad6 100644 --- a/runtime/contract_function_executor.go +++ b/runtime/contract_function_executor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/contract_test.go b/runtime/contract_test.go index 0c4d5476e4..9351480bd8 100644 --- a/runtime/contract_test.go +++ b/runtime/contract_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/contract_update_test.go b/runtime/contract_update_test.go index cd11e2d436..8a920dafe4 100644 --- a/runtime/contract_update_test.go +++ b/runtime/contract_update_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/contract_update_validation_test.go b/runtime/contract_update_validation_test.go index f490cfe12f..24cee33329 100644 --- a/runtime/contract_update_validation_test.go +++ b/runtime/contract_update_validation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -82,10 +82,8 @@ func newContractRemovalTransaction(contractName string) string { ) } -func newContractDeploymentTransactor(t *testing.T, withC1Upgrade bool) func(code string) error { - config := DefaultTestInterpreterConfig - config.AttachmentsEnabled = true - config.LegacyContractUpgradeEnabled = withC1Upgrade +func newContractDeploymentTransactor(t *testing.T, config Config) func(code string) error { + rt := NewTestInterpreterRuntimeWithConfig(config) accountCodes := map[Location][]byte{} @@ -133,8 +131,8 @@ func newContractDeploymentTransactor(t *testing.T, withC1Upgrade bool) func(code // testDeployAndUpdate deploys a contract in one transaction, // then updates the contract in another transaction -func testDeployAndUpdate(t *testing.T, name string, oldCode string, newCode string, withC1Upgrade bool) error { - executeTransaction := newContractDeploymentTransactor(t, withC1Upgrade) +func testDeployAndUpdate(t *testing.T, name string, oldCode string, newCode string, config Config) error { + executeTransaction := newContractDeploymentTransactor(t, config) err := executeTransaction(newContractAddTransaction(name, oldCode)) require.NoError(t, err) @@ -143,36 +141,75 @@ func testDeployAndUpdate(t *testing.T, name string, oldCode string, newCode stri // testDeployAndRemove deploys a contract in one transaction, // then removes the contract in another transaction -func testDeployAndRemove(t *testing.T, name string, code string, withC1Upgrade bool) error { - executeTransaction := newContractDeploymentTransactor(t, withC1Upgrade) +func testDeployAndRemove(t *testing.T, name string, code string, config Config) error { + executeTransaction := newContractDeploymentTransactor(t, config) err := executeTransaction(newContractAddTransaction(name, code)) require.NoError(t, err) return executeTransaction(newContractRemovalTransaction(name)) } -func testWithValidators(t *testing.T, name string, testFunc func(t *testing.T, withC1Upgrade bool)) { +func testWithValidators(t *testing.T, name string, testFunc func(t *testing.T, config Config)) { for _, withC1Upgrade := range []bool{true, false} { withC1Upgrade := withC1Upgrade name := name if withC1Upgrade { - name = fmt.Sprintf("%s (with c1 validator)", name) + name = fmt.Sprintf("%s (with C1 validator)", name) } t.Run(name, func(t *testing.T) { t.Parallel() - testFunc(t, withC1Upgrade) + config := DefaultTestInterpreterConfig + config.LegacyContractUpgradeEnabled = withC1Upgrade + testFunc(t, config) }) } } +func testWithValidatorsAndTypeRemovalEnabled( + t *testing.T, + name string, + testFunc func(t *testing.T, config Config), +) { + for _, withC1Upgrade := range []bool{true, false} { + withC1Upgrade := withC1Upgrade + name := name + + for _, withTypeRemovalEnabled := range []bool{true, false} { + withTypeRemovalEnabled := withTypeRemovalEnabled + name := name + + switch { + case withC1Upgrade && withTypeRemovalEnabled: + name = fmt.Sprintf("%s (with C1 validator and type removal enabled)", name) + + case withC1Upgrade: + name = fmt.Sprintf("%s (with C1 validator)", name) + + case withTypeRemovalEnabled: + name = fmt.Sprintf("%s (with type removal enabled)", name) + } + + t.Run(name, func(t *testing.T) { + t.Parallel() + + config := DefaultTestInterpreterConfig + config.LegacyContractUpgradeEnabled = withC1Upgrade + config.ContractUpdateTypeRemovalEnabled = withTypeRemovalEnabled + + testFunc(t, config) + }) + } + } +} + func TestRuntimeContractUpdateValidation(t *testing.T) { t.Parallel() - testWithValidators(t, "change field type", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change field type", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -192,14 +229,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertFieldTypeMismatchError(t, cause, "Test", "a", "String", "Int") }) - testWithValidators(t, "add field", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "add field", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -223,14 +260,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertExtraneousFieldError(t, cause, "Test", "b") }) - testWithValidators(t, "remove field", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "remove field", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -254,11 +291,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "change nested decl field type", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change nested decl field type", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -300,14 +337,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertFieldTypeMismatchError(t, cause, "TestResource", "b", "Int", "String") }) - testWithValidators(t, "add field to nested decl", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "add field to nested decl", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -351,14 +388,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertExtraneousFieldError(t, cause, "TestResource", "c") }) - testWithValidators(t, "change indirect field type", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change indirect field type", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -402,14 +439,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertFieldTypeMismatchError(t, cause, "TestStruct", "b", "Int", "String") }) - testWithValidators(t, "circular types refs", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "circular types refs", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -477,14 +514,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertFieldTypeMismatchError(t, cause, "Bar", "d", "Bar?", "String") }) - testWithValidators(t, "qualified vs unqualified nominal type", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "qualified vs unqualified nominal type", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -528,11 +565,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "change imported nominal type to local", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change imported nominal type to local", func(t *testing.T, config Config) { const importCode = ` access(all) contract TestImport { @@ -549,7 +586,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - executeTransaction := newContractDeploymentTransactor(t, withC1Upgrade) + executeTransaction := newContractDeploymentTransactor(t, config) err := executeTransaction(newContractAddTransaction("TestImport", importCode)) require.NoError(t, err) @@ -598,7 +635,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { assertFieldTypeMismatchError(t, cause, "Test", "x", "TestImport.TestStruct", "TestStruct") }) - testWithValidators(t, "change imported field nominal type location", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change imported field nominal type location", func(t *testing.T, config Config) { runtime := NewTestInterpreterRuntime() @@ -762,7 +799,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { assertFieldTypeMismatchError(t, cause, "Test", "x", "TestImport.TestStruct", "TestImport.TestStruct") }) - testWithValidators(t, "change imported non-field nominal type location", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change imported non-field nominal type location", func(t *testing.T, config Config) { runtime := NewTestInterpreterRuntime() @@ -918,7 +955,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { require.NoError(t, err) }) - testWithValidators(t, "change imported field nominal type location implicitly", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change imported field nominal type location implicitly", func(t *testing.T, config Config) { runtime := NewTestInterpreterRuntime() @@ -1105,7 +1142,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { assertFieldTypeMismatchError(t, cause, "Test", "x", "TestImport.TestStruct", "TestImport.TestStruct") }) - testWithValidators(t, "contract interface update", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "contract interface update", func(t *testing.T, config Config) { const oldCode = ` access(all) contract interface Test { @@ -1121,14 +1158,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertFieldTypeMismatchError(t, cause, "Test", "a", "String", "Int") }) - testWithValidators(t, "convert interface to contract", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "convert interface to contract", func(t *testing.T, config Config) { const oldCode = ` access(all) contract interface Test { @@ -1152,7 +1189,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") @@ -1165,7 +1202,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { ) }) - testWithValidators(t, "convert contract to interface", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "convert contract to interface", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1189,7 +1226,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") @@ -1202,7 +1239,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { ) }) - testWithValidators(t, "change non stored", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change non stored", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1278,7 +1315,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) // Changing unused public composite types should also fail, since those could be // referred by anyone in the chain, and may cause data inconsistency. @@ -1288,7 +1325,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { assertFieldTypeMismatchError(t, cause, "UnusedStruct", "a", "Int", "String") }) - testWithValidators(t, "change enum type", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change enum type", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1322,14 +1359,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertConformanceMismatchError(t, cause, "Foo", "UInt8") }) - testWithValidators(t, "change nested interface", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change nested interface", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1363,14 +1400,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertFieldTypeMismatchError(t, cause, "TestStruct", "a", "String", "Int") }) - testWithValidators(t, "change nested interface to struct", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "change nested interface to struct", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1392,7 +1429,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") @@ -1405,7 +1442,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { ) }) - testWithValidators(t, "adding a nested struct", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "adding a nested struct", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1424,11 +1461,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "removing a nested struct", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "removing a nested struct", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1447,14 +1484,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertMissingDeclarationError(t, cause, "TestStruct") }) - testWithValidators(t, "add and remove field", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "add and remove field", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1474,14 +1511,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertExtraneousFieldError(t, cause, "Test", "b") }) - testWithValidators(t, "multiple errors", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "multiple errors", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1517,7 +1554,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) updateErr := getContractUpdateError(t, err, "Test") @@ -1537,7 +1574,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { ) }) - testWithValidators(t, "check error messages", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "check error messages", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1573,7 +1610,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) const expectedError = "error: mismatching field `a` in `Test`\n" + @@ -1597,7 +1634,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { require.Contains(t, err.Error(), expectedError) }) - testWithValidators(t, "Test reference types", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Test reference types", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1637,11 +1674,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "Test function type", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Test function type", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -1677,13 +1714,13 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) assert.Contains(t, err.Error(), "error: field add has non-storable type: fun(Int, Int): Int") }) - testWithValidators(t, "Test conformance", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Test conformance", func(t *testing.T, config Config) { const importCode = ` access(all) contract TestImport { @@ -1693,7 +1730,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - executeTransaction := newContractDeploymentTransactor(t, withC1Upgrade) + executeTransaction := newContractDeploymentTransactor(t, config) err := executeTransaction(newContractAddTransaction("TestImport", importCode)) require.NoError(t, err) @@ -1862,7 +1899,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, false) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, DefaultTestInterpreterConfig) require.NoError(t, err) }) @@ -1976,11 +2013,13 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, true) + config := DefaultTestInterpreterConfig + config.LegacyContractUpgradeEnabled = true + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "Test intersection types", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Test intersection types", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2040,11 +2079,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "Test invalid intersection types change", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Test invalid intersection types change", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2096,7 +2135,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) assert.Contains(t, err.Error(), "access(all) var a: {TestInterface}"+ @@ -2108,7 +2147,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { "incompatible type annotations. expected `{TestInterface}`, found `TestStruct`") }) - testWithValidators(t, "enum valid", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "enum valid", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2128,11 +2167,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "enum remove case", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "enum remove case", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2151,14 +2190,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertMissingEnumCasesError(t, cause, "Foo", 2, 1) }) - testWithValidators(t, "enum add case", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "enum add case", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2179,11 +2218,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "enum swap cases", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "enum swap cases", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2205,7 +2244,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) updateErr := getContractUpdateError(t, err, "Test") @@ -2219,7 +2258,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { assertEnumCaseMismatchError(t, childErrors[2], "left", "up") }) - testWithValidators(t, "Remove and add struct", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Remove and add struct", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2241,7 +2280,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - executeTransaction := newContractDeploymentTransactor(t, withC1Upgrade) + executeTransaction := newContractDeploymentTransactor(t, config) err := executeTransaction(newContractAddTransaction("Test", oldCode)) require.NoError(t, err) @@ -2272,7 +2311,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { assertFieldTypeMismatchError(t, cause, "TestStruct", "a", "Int", "String") }) - testWithValidators(t, "Rename struct", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Rename struct", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2304,14 +2343,14 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") assertMissingDeclarationError(t, cause, "TestStruct") }) - testWithValidators(t, "Remove contract with enum", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Remove contract with enum", func(t *testing.T, config Config) { const code = ` access(all) contract Test { @@ -2320,13 +2359,13 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndRemove(t, "Test", code, withC1Upgrade) + err := testDeployAndRemove(t, "Test", code, config) RequireError(t, err) assertContractRemovalError(t, err, "Test") }) - testWithValidators(t, "Remove contract without enum", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Remove contract without enum", func(t *testing.T, config Config) { const code = ` access(all) contract Test { @@ -2340,11 +2379,11 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndRemove(t, "Test", code, withC1Upgrade) + err := testDeployAndRemove(t, "Test", code, config) require.NoError(t, err) }) - testWithValidators(t, "removing multiple nested structs", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "removing multiple nested structs", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2362,7 +2401,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { for i := 0; i < 1000; i++ { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) updateErr := getContractUpdateError(t, err, "Test") @@ -2377,7 +2416,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } }) - testWithValidators(t, "Remove event", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Remove event", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2392,7 +2431,7 @@ func TestRuntimeContractUpdateValidation(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) } @@ -2510,7 +2549,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { t.Parallel() - testWithValidators(t, "Adding conformance", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Adding conformance", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2547,11 +2586,11 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "Adding conformance with new fields", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Adding conformance with new fields", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2587,7 +2626,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") @@ -2595,7 +2634,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { assertExtraneousFieldError(t, cause, "Foo", "name") }) - testWithValidators(t, "Removing conformance, one", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Removing conformance, one", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2629,7 +2668,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") @@ -2637,7 +2676,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { assertConformanceMismatchError(t, cause, "Foo", "Bar") }) - testWithValidators(t, "Removing conformance, multiple", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Removing conformance, multiple", func(t *testing.T, config Config) { const oldCode = ` access(all) @@ -2687,7 +2726,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) RequireError(t, err) cause := getSingleContractUpdateErrorCause(t, err, "Test") @@ -2695,7 +2734,7 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { assertConformanceMismatchError(t, cause, "Foo", "Baz") }) - testWithValidators(t, "Change conformance order", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "Change conformance order", func(t *testing.T, config Config) { const oldCode = ` access(all) contract Test { @@ -2735,11 +2774,11 @@ func TestRuntimeContractUpdateConformanceChanges(t *testing.T) { } ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) require.NoError(t, err) }) - testWithValidators(t, "missing comma in parameter list of old contract", func(t *testing.T, withC1Upgrade bool) { + testWithValidators(t, "missing comma in parameter list of old contract", func(t *testing.T, config Config) { address := common.MustBytesToAddress([]byte{0x42}) @@ -3061,360 +3100,482 @@ func TestRuntimeContractUpdateProgramCaching(t *testing.T) { }) } -func TestPragmaUpdates(t *testing.T) { +func TestTypeRemovalPragmaUpdates(t *testing.T) { t.Parallel() - testWithValidators(t, "Remove pragma", func(t *testing.T, withC1Upgrade bool) { + testWithValidatorsAndTypeRemovalEnabled(t, + "Remove pragma", + func(t *testing.T, config Config) { - const oldCode = ` - access(all) contract Test { - #foo(bar) - #baz - } - ` + const oldCode = ` + access(all) contract Test { + #foo(bar) + #baz + } + ` - const newCode = ` - access(all) contract Test { - #baz - } - ` + const newCode = ` + access(all) contract Test { + #baz + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - require.NoError(t, err) - }) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + require.NoError(t, err) + }, + ) - testWithValidators(t, "Remove removedType pragma", func(t *testing.T, withC1Upgrade bool) { + testWithValidatorsAndTypeRemovalEnabled(t, + "Remove removedType pragma", + func(t *testing.T, config Config) { - const oldCode = ` - access(all) contract Test { - #removedType(bar) - #baz - } - ` + const oldCode = ` + access(all) contract Test { + #removedType(bar) + #baz + } + ` - const newCode = ` - access(all) contract Test { - #baz - } - ` + const newCode = ` + access(all) contract Test { + #baz + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.TypeRemovalPragmaRemovalError - require.ErrorAs(t, err, &expectedErr) - }) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - testWithValidators(t, "removedType pragma moved into subdeclaration", func(t *testing.T, withC1Upgrade bool) { + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.TypeRemovalPragmaRemovalError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) - const oldCode = ` - access(all) contract Test { - #removedType(bar) - access(all) struct S { + testWithValidatorsAndTypeRemovalEnabled(t, + "removedType pragma moved into sub-declaration", + func(t *testing.T, config Config) { - } - } - ` + const oldCode = ` + access(all) contract Test { + #removedType(bar) + access(all) struct S { - const newCode = ` - access(all) contract Test { - access(all) struct S { - #removedType(bar) - } - } - ` + } + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.TypeRemovalPragmaRemovalError - require.ErrorAs(t, err, &expectedErr) - }) + const newCode = ` + access(all) contract Test { + access(all) struct S { + #removedType(bar) + } + } + ` - testWithValidators(t, "reorder removedType pragmas", func(t *testing.T, withC1Upgrade bool) { + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - const oldCode = ` - access(all) contract Test { - #removedType(bar) - #removedType(foo) - } - ` + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.TypeRemovalPragmaRemovalError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) - const newCode = ` - access(all) contract Test { - #removedType(foo) - #removedType(bar) - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "reorder removedType pragmas", + func(t *testing.T, config Config) { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - require.NoError(t, err) - }) + const oldCode = ` + access(all) contract Test { + #removedType(bar) + #removedType(foo) + } + ` - testWithValidators(t, "malformed removedType pragma integer", func(t *testing.T, withC1Upgrade bool) { + const newCode = ` + access(all) contract Test { + #removedType(foo) + #removedType(bar) + } + ` - const oldCode = ` - access(all) contract Test { - #baz - } - ` + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + require.NoError(t, err) + }, + ) - const newCode = ` - access(all) contract Test { - #removedType(3) - #baz - } - ` - - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.InvalidTypeRemovalPragmaError - require.ErrorAs(t, err, &expectedErr) - }) + testWithValidatorsAndTypeRemovalEnabled(t, + "malformed removedType pragma integer", + func(t *testing.T, config Config) { - testWithValidators(t, "malformed removedType qualified name", func(t *testing.T, withC1Upgrade bool) { + const oldCode = ` + access(all) contract Test { + #baz + } + ` - const oldCode = ` - access(all) contract Test { - #baz - } - ` + const newCode = ` + access(all) contract Test { + #removedType(3) + #baz + } + ` - const newCode = ` - access(all) contract Test { - #removedType(X.Y) - #baz - } - ` - - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.InvalidTypeRemovalPragmaError - require.ErrorAs(t, err, &expectedErr) - }) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - testWithValidators(t, "removedType with zero args", func(t *testing.T, withC1Upgrade bool) { + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.InvalidTypeRemovalPragmaError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) - const oldCode = ` - access(all) contract Test { - } - ` + testWithValidatorsAndTypeRemovalEnabled( + t, + "malformed removedType qualified name", + func(t *testing.T, config Config) { - const newCode = ` - access(all) contract Test { - #removedType() - } - ` + const oldCode = ` + access(all) contract Test { + #baz + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.InvalidTypeRemovalPragmaError - require.ErrorAs(t, err, &expectedErr) - }) + const newCode = ` + access(all) contract Test { + #removedType(X.Y) + #baz + } + ` - testWithValidators(t, "removedType with two args", func(t *testing.T, withC1Upgrade bool) { + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - const oldCode = ` - access(all) contract Test { - } - ` + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.InvalidTypeRemovalPragmaError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) - const newCode = ` - access(all) contract Test { - #removedType(x, y) - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "removedType with zero args", + func(t *testing.T, config Config) { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.InvalidTypeRemovalPragmaError - require.ErrorAs(t, err, &expectedErr) - }) + const oldCode = ` + access(all) contract Test { + } + ` - testWithValidators(t, "#removedType allows type removal", func(t *testing.T, withC1Upgrade bool) { + const newCode = ` + access(all) contract Test { + #removedType() + } + ` - const oldCode = ` - access(all) contract Test { - access(all) resource R {} - } - ` + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - const newCode = ` - access(all) contract Test { - #removedType(R) - } - ` + if config.ContractUpdateTypeRemovalEnabled { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - require.NoError(t, err) - }) + var expectedErr *stdlib.InvalidTypeRemovalPragmaError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) - testWithValidators(t, "#removedType allows two type removals", func(t *testing.T, withC1Upgrade bool) { + testWithValidatorsAndTypeRemovalEnabled(t, + "removedType with two args", + func(t *testing.T, config Config) { - const oldCode = ` - access(all) contract Test { - access(all) resource R {} - access(all) struct S {} - } - ` + const oldCode = ` + access(all) contract Test { + } + ` - const newCode = ` - access(all) contract Test { - #removedType(R) - #removedType(S) - } - ` + const newCode = ` + access(all) contract Test { + #removedType(x, y) + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - require.NoError(t, err) - }) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - testWithValidators(t, "#removedType does not allow resource interface type removal", func(t *testing.T, withC1Upgrade bool) { + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.InvalidTypeRemovalPragmaError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) - const oldCode = ` - access(all) contract Test { - access(all) resource interface R {} - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType allows type removal", + func(t *testing.T, config Config) { - const newCode = ` - access(all) contract Test { - #removedType(R) - } - ` + const oldCode = ` + access(all) contract Test { + access(all) resource R {} + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.MissingDeclarationError - require.ErrorAs(t, err, &expectedErr) - }) + const newCode = ` + access(all) contract Test { + #removedType(R) + } + ` - testWithValidators(t, "#removedType does not allow struct interface type removal", func(t *testing.T, withC1Upgrade bool) { + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - const oldCode = ` - access(all) contract Test { - access(all) struct interface S {} - } - ` + if config.ContractUpdateTypeRemovalEnabled { + require.NoError(t, err) + } else { + var expectedErr *stdlib.MissingDeclarationError + require.ErrorAs(t, err, &expectedErr) + } + }, + ) - const newCode = ` - access(all) contract Test { - #removedType(S) - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType allows two type removals", + func(t *testing.T, config Config) { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.MissingDeclarationError - require.ErrorAs(t, err, &expectedErr) - }) + const oldCode = ` + access(all) contract Test { + access(all) resource R {} + access(all) struct S {} + } + ` - testWithValidators(t, "#removedType can be added", func(t *testing.T, withC1Upgrade bool) { + const newCode = ` + access(all) contract Test { + #removedType(R) + #removedType(S) + } + ` - const oldCode = ` - access(all) contract Test { - #removedType(I) - access(all) resource R {} - } - ` + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - const newCode = ` - access(all) contract Test { - #removedType(R) - #removedType(I) - } - ` + if config.ContractUpdateTypeRemovalEnabled { + require.NoError(t, err) + } else { + var expectedErr *stdlib.MissingDeclarationError + require.ErrorAs(t, err, &expectedErr) + } + }, + ) - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - require.NoError(t, err) - }) + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType does not allow resource interface type removal", + func(t *testing.T, config Config) { - testWithValidators(t, "#removedType can be added without removing a type", func(t *testing.T, withC1Upgrade bool) { + const oldCode = ` + access(all) contract Test { + access(all) resource interface R {} + } + ` - const oldCode = ` - access(all) contract Test { - } - ` + const newCode = ` + access(all) contract Test { + #removedType(R) + } + ` - const newCode = ` - access(all) contract Test { - #removedType(X) - } - ` + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - require.NoError(t, err) - }) + var expectedErr *stdlib.MissingDeclarationError + require.ErrorAs(t, err, &expectedErr) + }, + ) - testWithValidators(t, "declarations cannot co-exist with removed type of the same name, composite", func(t *testing.T, withC1Upgrade bool) { + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType does not allow struct interface type removal", + func(t *testing.T, config Config) { - const oldCode = ` - access(all) contract Test { - access(all) resource R {} - } - ` + const oldCode = ` + access(all) contract Test { + access(all) struct interface S {} + } + ` - const newCode = ` - access(all) contract Test { - #removedType(R) - access(all) resource R {} - } - ` + const newCode = ` + access(all) contract Test { + #removedType(S) + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.UseOfRemovedTypeError - require.ErrorAs(t, err, &expectedErr) - }) + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - testWithValidators(t, "declarations cannot co-exist with removed type of the same name, interface", func(t *testing.T, withC1Upgrade bool) { + var expectedErr *stdlib.MissingDeclarationError + require.ErrorAs(t, err, &expectedErr) + }, + ) - const oldCode = ` - access(all) contract Test { - access(all) resource interface R {} - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType can be added", + func(t *testing.T, config Config) { - const newCode = ` - access(all) contract Test { - #removedType(R) - access(all) resource interface R {} - } - ` + const oldCode = ` + access(all) contract Test { + #removedType(I) + access(all) resource R {} + } + ` - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.UseOfRemovedTypeError - require.ErrorAs(t, err, &expectedErr) - }) + const newCode = ` + access(all) contract Test { + #removedType(R) + #removedType(I) + } + ` - testWithValidators(t, "declarations cannot co-exist with removed type of the same name, attachment", func(t *testing.T, withC1Upgrade bool) { + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) - const oldCode = ` - access(all) contract Test { - access(all) attachment R for AnyResource {} - } - ` + if config.ContractUpdateTypeRemovalEnabled { + require.NoError(t, err) + } else { + var expectedErr *stdlib.MissingDeclarationError + require.ErrorAs(t, err, &expectedErr) + } + }, + ) - const newCode = ` - access(all) contract Test { - #removedType(R) - access(all) attachment R for AnyResource {} - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType can be added without removing a type", + func(t *testing.T, config Config) { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.UseOfRemovedTypeError - require.ErrorAs(t, err, &expectedErr) - }) + const oldCode = ` + access(all) contract Test { + } + ` - testWithValidators(t, "#removedType is only scoped to the current declaration, inner", func(t *testing.T, withC1Upgrade bool) { + const newCode = ` + access(all) contract Test { + #removedType(X) + } + ` - const oldCode = ` - access(all) contract Test { - access(all) resource R {} - access(all) struct S {} - } - ` + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + require.NoError(t, err) + }, + ) - const newCode = ` - access(all) contract Test { - access(all) struct S { - #removedType(R) - } - } - ` + testWithValidatorsAndTypeRemovalEnabled(t, + "declarations cannot co-exist with removed type of the same name, composite", + func(t *testing.T, config Config) { - err := testDeployAndUpdate(t, "Test", oldCode, newCode, withC1Upgrade) - var expectedErr *stdlib.MissingDeclarationError - require.ErrorAs(t, err, &expectedErr) - }) + const oldCode = ` + access(all) contract Test { + access(all) resource R {} + } + ` + + const newCode = ` + access(all) contract Test { + #removedType(R) + access(all) resource R {} + } + ` + + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.UseOfRemovedTypeError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) + + testWithValidatorsAndTypeRemovalEnabled(t, + "declarations cannot co-exist with removed type of the same name, interface", + func(t *testing.T, config Config) { + + const oldCode = ` + access(all) contract Test { + access(all) resource interface R {} + } + ` + + const newCode = ` + access(all) contract Test { + #removedType(R) + access(all) resource interface R {} + } + ` + + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.UseOfRemovedTypeError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) + + testWithValidatorsAndTypeRemovalEnabled(t, + "declarations cannot co-exist with removed type of the same name, attachment", + func(t *testing.T, config Config) { + + const oldCode = ` + access(all) contract Test { + access(all) attachment R for AnyResource {} + } + ` + + const newCode = ` + access(all) contract Test { + #removedType(R) + access(all) attachment R for AnyResource {} + } + ` + + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + + if config.ContractUpdateTypeRemovalEnabled { + var expectedErr *stdlib.UseOfRemovedTypeError + require.ErrorAs(t, err, &expectedErr) + } else { + require.NoError(t, err) + } + }, + ) + + testWithValidatorsAndTypeRemovalEnabled(t, + "#removedType is only scoped to the current declaration, inner", + func(t *testing.T, config Config) { + + const oldCode = ` + access(all) contract Test { + access(all) resource R {} + access(all) struct S {} + } + ` + + const newCode = ` + access(all) contract Test { + access(all) struct S { + #removedType(R) + } + } + ` + + err := testDeployAndUpdate(t, "Test", oldCode, newCode, config) + + var expectedErr *stdlib.MissingDeclarationError + require.ErrorAs(t, err, &expectedErr) + }, + ) } diff --git a/runtime/convertTypes.go b/runtime/convertTypes.go index 1fe6fab455..427964e468 100644 --- a/runtime/convertTypes.go +++ b/runtime/convertTypes.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/convertTypes_test.go b/runtime/convertTypes_test.go index 88f51f3ffd..0dcc08970e 100644 --- a/runtime/convertTypes_test.go +++ b/runtime/convertTypes_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/convertValues.go b/runtime/convertValues.go index 6b2370127c..488f32755e 100644 --- a/runtime/convertValues.go +++ b/runtime/convertValues.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/convertValues_test.go b/runtime/convertValues_test.go index 9ca8b69a20..f4460bf9ae 100644 --- a/runtime/convertValues_test.go +++ b/runtime/convertValues_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/coverage.go b/runtime/coverage.go index 1e37040d35..6be14155e1 100644 --- a/runtime/coverage.go +++ b/runtime/coverage.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/coverage_test.go b/runtime/coverage_test.go index 7d9b3c71a7..2ec8aa643e 100644 --- a/runtime/coverage_test.go +++ b/runtime/coverage_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/crypto_test.go b/runtime/crypto_test.go index c869e54239..ce98dabd60 100644 --- a/runtime/crypto_test.go +++ b/runtime/crypto_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/debugger_test.go b/runtime/debugger_test.go index 3291731249..62a44a5659 100644 --- a/runtime/debugger_test.go +++ b/runtime/debugger_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/deployedcontract_test.go b/runtime/deployedcontract_test.go index 4fbdd7a6d8..47acbe0d36 100644 --- a/runtime/deployedcontract_test.go +++ b/runtime/deployedcontract_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/deployment_test.go b/runtime/deployment_test.go index be963f97cd..68678dface 100644 --- a/runtime/deployment_test.go +++ b/runtime/deployment_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/entitlements_test.go b/runtime/entitlements_test.go index ab33609987..52e592683e 100644 --- a/runtime/entitlements_test.go +++ b/runtime/entitlements_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/environment.go b/runtime/environment.go index 19e7c3815a..d38f8f76e1 100644 --- a/runtime/environment.go +++ b/runtime/environment.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -184,15 +184,16 @@ func (e *interpreterEnvironment) newInterpreterConfig() *interpreter.Config { // and disable storage validation after each value modification. // Instead, storage is validated after commits (if validation is enabled), // see interpreterEnvironment.CommitStorage - AtreeStorageValidationEnabled: false, - Debugger: e.config.Debugger, - OnStatement: e.newOnStatementHandler(), - OnMeterComputation: e.newOnMeterComputation(), - OnFunctionInvocation: e.newOnFunctionInvocationHandler(), - OnInvokedFunctionReturn: e.newOnInvokedFunctionReturnHandler(), - CapabilityBorrowHandler: stdlib.BorrowCapabilityController, - CapabilityCheckHandler: stdlib.CheckCapabilityController, - LegacyContractUpgradeEnabled: e.config.LegacyContractUpgradeEnabled, + AtreeStorageValidationEnabled: false, + Debugger: e.config.Debugger, + OnStatement: e.newOnStatementHandler(), + OnMeterComputation: e.newOnMeterComputation(), + OnFunctionInvocation: e.newOnFunctionInvocationHandler(), + OnInvokedFunctionReturn: e.newOnInvokedFunctionReturnHandler(), + CapabilityBorrowHandler: stdlib.BorrowCapabilityController, + CapabilityCheckHandler: stdlib.CheckCapabilityController, + LegacyContractUpgradeEnabled: e.config.LegacyContractUpgradeEnabled, + ContractUpdateTypeRemovalEnabled: e.config.ContractUpdateTypeRemovalEnabled, } } diff --git a/runtime/error_test.go b/runtime/error_test.go index 42cb9f3df9..9ad623e625 100644 --- a/runtime/error_test.go +++ b/runtime/error_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/errors.go b/runtime/errors.go index 183642b259..df00e11ff8 100644 --- a/runtime/errors.go +++ b/runtime/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/errors/errors.go b/runtime/errors/errors.go index 0a298a88dc..949f4896d9 100644 --- a/runtime/errors/errors.go +++ b/runtime/errors/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,7 +20,6 @@ package errors import ( "fmt" - "runtime/debug" "golang.org/x/xerrors" ) @@ -142,8 +141,7 @@ func (e MemoryError) Error() string { // // NOTE: This error is not used for errors occur due to bugs in a user-provided program. type UnexpectedError struct { - Err error - Stack []byte + Err error } var _ InternalError = UnexpectedError{} @@ -152,15 +150,13 @@ func (UnexpectedError) IsInternalError() {} func NewUnexpectedError(message string, arg ...any) UnexpectedError { return UnexpectedError{ - Err: fmt.Errorf(message, arg...), - Stack: debug.Stack(), + Err: fmt.Errorf(message, arg...), } } func NewUnexpectedErrorFromCause(err error) UnexpectedError { return UnexpectedError{ - Err: err, - Stack: debug.Stack(), + Err: err, } } @@ -169,7 +165,7 @@ func (e UnexpectedError) Unwrap() error { } func (e UnexpectedError) Error() string { - return fmt.Sprintf("internal error: %s\n%s", e.Err.Error(), e.Stack) + return fmt.Sprintf("internal error: %s", e.Err.Error()) } // DefaultUserError is the default implementation of UserError interface. diff --git a/runtime/errors/wrappanic.go b/runtime/errors/wrappanic.go index 81bbffb855..06c493cd8b 100644 --- a/runtime/errors/wrappanic.go +++ b/runtime/errors/wrappanic.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/events.go b/runtime/events.go index 4738902bc8..b6badb393f 100644 --- a/runtime/events.go +++ b/runtime/events.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/address.go b/runtime/format/address.go index 8a292a057b..ac21faafc9 100644 --- a/runtime/format/address.go +++ b/runtime/format/address.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/array.go b/runtime/format/array.go index bda4ec2830..7a7d2ac4b6 100644 --- a/runtime/format/array.go +++ b/runtime/format/array.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/bool.go b/runtime/format/bool.go index 1d0c7cea72..ea2149f14a 100644 --- a/runtime/format/bool.go +++ b/runtime/format/bool.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/bytes.go b/runtime/format/bytes.go index 81b71844c3..6cdf413dcd 100644 --- a/runtime/format/bytes.go +++ b/runtime/format/bytes.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/bytes_test.go b/runtime/format/bytes_test.go index 6087624c21..ad18728573 100644 --- a/runtime/format/bytes_test.go +++ b/runtime/format/bytes_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/capability.go b/runtime/format/capability.go index 70e681fe4b..ca2ab7bfff 100644 --- a/runtime/format/capability.go +++ b/runtime/format/capability.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/composite.go b/runtime/format/composite.go index 5af9132902..b3d2f843e4 100644 --- a/runtime/format/composite.go +++ b/runtime/format/composite.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/dictionary.go b/runtime/format/dictionary.go index 30af2f2197..194697a018 100644 --- a/runtime/format/dictionary.go +++ b/runtime/format/dictionary.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/fix.go b/runtime/format/fix.go index 7e42a638bb..4f2c2d6f3f 100644 --- a/runtime/format/fix.go +++ b/runtime/format/fix.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/fix_test.go b/runtime/format/fix_test.go index d6ea209a58..7b3ad9c5fd 100644 --- a/runtime/format/fix_test.go +++ b/runtime/format/fix_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/int.go b/runtime/format/int.go index 1f57bc0e11..98c42a2051 100644 --- a/runtime/format/int.go +++ b/runtime/format/int.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/nil.go b/runtime/format/nil.go index abfacba842..59df92cce1 100644 --- a/runtime/format/nil.go +++ b/runtime/format/nil.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/pad.go b/runtime/format/pad.go index 9af487296a..b56a31246c 100644 --- a/runtime/format/pad.go +++ b/runtime/format/pad.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/path.go b/runtime/format/path.go index aec55a59db..d17149dcb3 100644 --- a/runtime/format/path.go +++ b/runtime/format/path.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/reference.go b/runtime/format/reference.go index 16bc271807..7b1030c23a 100644 --- a/runtime/format/reference.go +++ b/runtime/format/reference.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/string.go b/runtime/format/string.go index 4090eefd4e..2bea75f9b3 100644 --- a/runtime/format/string.go +++ b/runtime/format/string.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/type.go b/runtime/format/type.go index 5d61d7013a..9171bd4989 100644 --- a/runtime/format/type.go +++ b/runtime/format/type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/format/void.go b/runtime/format/void.go index fa2525c628..b8d98427a2 100644 --- a/runtime/format/void.go +++ b/runtime/format/void.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/ft_test.go b/runtime/ft_test.go index 1606fc4ea7..d9c47330c5 100644 --- a/runtime/ft_test.go +++ b/runtime/ft_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/import_test.go b/runtime/import_test.go index 5b1c0e874d..077d6ae56e 100644 --- a/runtime/import_test.go +++ b/runtime/import_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/imported_values_memory_metering_test.go b/runtime/imported_values_memory_metering_test.go index eaad5f0d4b..d26059e51a 100644 --- a/runtime/imported_values_memory_metering_test.go +++ b/runtime/imported_values_memory_metering_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/inbox_test.go b/runtime/inbox_test.go index 8be68cfd06..3360d4f812 100644 --- a/runtime/inbox_test.go +++ b/runtime/inbox_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interface.go b/runtime/interface.go index 10664578e6..4f96982594 100644 --- a/runtime/interface.go +++ b/runtime/interface.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/big.go b/runtime/interpreter/big.go index efb359d500..5a503a2a14 100644 --- a/runtime/interpreter/big.go +++ b/runtime/interpreter/big.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/config.go b/runtime/interpreter/config.go index d660b6e225..f9d322bd7f 100644 --- a/runtime/interpreter/config.go +++ b/runtime/interpreter/config.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -72,4 +72,6 @@ type Config struct { CapabilityBorrowHandler CapabilityBorrowHandlerFunc // LegacyContractUpgradeEnabled specifies whether to fall back to the old parser when attempting a contract upgrade LegacyContractUpgradeEnabled bool + // ContractUpdateTypeRemovalEnabled specifies if type removal is enabled in contract updates + ContractUpdateTypeRemovalEnabled bool } diff --git a/runtime/interpreter/conversion.go b/runtime/interpreter/conversion.go index ab51b9a948..4e43b56c04 100644 --- a/runtime/interpreter/conversion.go +++ b/runtime/interpreter/conversion.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/conversion_test.go b/runtime/interpreter/conversion_test.go index b9d63b7e9b..35de4bc0e9 100644 --- a/runtime/interpreter/conversion_test.go +++ b/runtime/interpreter/conversion_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/debugger.go b/runtime/interpreter/debugger.go index 73eda09ccd..541a5cefaa 100644 --- a/runtime/interpreter/debugger.go +++ b/runtime/interpreter/debugger.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/decode.go b/runtime/interpreter/decode.go index 718320fbe5..ec0940667b 100644 --- a/runtime/interpreter/decode.go +++ b/runtime/interpreter/decode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -1754,6 +1754,12 @@ func (d TypeDecoder) decodeStaticAuthorization() (Authorization, error) { return nil, err } return UnauthorizedAccess, nil + case CBORTagInaccessibleStaticAuthorization: + err := d.decoder.DecodeNil() + if err != nil { + return nil, err + } + return InaccessibleAccess, nil case CBORTagEntitlementMapStaticAuthorization: typeID, err := d.decoder.DecodeString() if err != nil { diff --git a/runtime/interpreter/deepcopyremove_test.go b/runtime/interpreter/deepcopyremove_test.go index aed50c32d0..3f855e1784 100644 --- a/runtime/interpreter/deepcopyremove_test.go +++ b/runtime/interpreter/deepcopyremove_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/div_mod_test.go b/runtime/interpreter/div_mod_test.go index eeb2ca6d38..9b84104fdf 100644 --- a/runtime/interpreter/div_mod_test.go +++ b/runtime/interpreter/div_mod_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/encode.go b/runtime/interpreter/encode.go index bd58d61dc5..418c3318bf 100644 --- a/runtime/interpreter/encode.go +++ b/runtime/interpreter/encode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -224,6 +224,13 @@ const ( CBORTagUnauthorizedStaticAuthorization CBORTagEntitlementMapStaticAuthorization CBORTagEntitlementSetStaticAuthorization + CBORTagInaccessibleStaticAuthorization + + _ + _ + _ + _ + CBORTagInclusiveRangeStaticType // !!! *WARNING* !!! @@ -1362,6 +1369,17 @@ func (t Unauthorized) Encode(e *cbor.StreamEncoder) error { return e.EncodeNil() } +func (t Inaccessible) Encode(e *cbor.StreamEncoder) error { + err := e.EncodeRawBytes([]byte{ + // tag number + 0xd8, CBORTagInaccessibleStaticAuthorization, + }) + if err != nil { + return err + } + return e.EncodeNil() +} + func (a EntitlementMapAuthorization) Encode(e *cbor.StreamEncoder) error { err := e.EncodeRawBytes([]byte{ // tag number diff --git a/runtime/interpreter/encoding_benchmark_test.go b/runtime/interpreter/encoding_benchmark_test.go index 85dcc84f4c..3c00608d65 100644 --- a/runtime/interpreter/encoding_benchmark_test.go +++ b/runtime/interpreter/encoding_benchmark_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/encoding_test.go b/runtime/interpreter/encoding_test.go index 1d5805b8f0..ff43bb8663 100644 --- a/runtime/interpreter/encoding_test.go +++ b/runtime/interpreter/encoding_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -4118,7 +4118,7 @@ func TestCBORTagValue(t *testing.T) { t.Parallel() t.Run("No new types added in between", func(t *testing.T) { - require.Equal(t, byte(226), byte(CBORTag_Count)) + require.Equal(t, byte(231), byte(CBORTag_Count)) }) } diff --git a/runtime/interpreter/errors.go b/runtime/interpreter/errors.go index e3514b464f..0e568b1f3f 100644 --- a/runtime/interpreter/errors.go +++ b/runtime/interpreter/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/errors_test.go b/runtime/interpreter/errors_test.go index 6e97e8f1a1..7ade010b1d 100644 --- a/runtime/interpreter/errors_test.go +++ b/runtime/interpreter/errors_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/globalvariables.go b/runtime/interpreter/globalvariables.go index f58da52e95..4bc326ccab 100644 --- a/runtime/interpreter/globalvariables.go +++ b/runtime/interpreter/globalvariables.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/hashablevalue.go b/runtime/interpreter/hashablevalue.go index 05983e2b8f..1040a052a0 100644 --- a/runtime/interpreter/hashablevalue.go +++ b/runtime/interpreter/hashablevalue.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/hashablevalue_test.go b/runtime/interpreter/hashablevalue_test.go index 3140216067..f60b06e201 100644 --- a/runtime/interpreter/hashablevalue_test.go +++ b/runtime/interpreter/hashablevalue_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/import.go b/runtime/interpreter/import.go index 0d98f1d30a..6ae7582d85 100644 --- a/runtime/interpreter/import.go +++ b/runtime/interpreter/import.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/inspect.go b/runtime/interpreter/inspect.go index 8fdc726154..5922f3d550 100644 --- a/runtime/interpreter/inspect.go +++ b/runtime/interpreter/inspect.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/inspect_test.go b/runtime/interpreter/inspect_test.go index 0af2d719b6..afb4862f2c 100644 --- a/runtime/interpreter/inspect_test.go +++ b/runtime/interpreter/inspect_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/integer.go b/runtime/interpreter/integer.go index 3b32a694ad..873b8c0028 100644 --- a/runtime/interpreter/integer.go +++ b/runtime/interpreter/integer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter.go b/runtime/interpreter/interpreter.go index a051f6ea59..adf8729bd8 100644 --- a/runtime/interpreter/interpreter.go +++ b/runtime/interpreter/interpreter.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -4995,7 +4995,7 @@ func (interpreter *Interpreter) mapMemberValueAuthorization( default: var access sema.Access - if mappedAccess.Type == sema.IdentityType { + if mappedAccess.Type.IncludesIdentity { access = sema.AllSupportedEntitlements(resultingType) } diff --git a/runtime/interpreter/interpreter_expression.go b/runtime/interpreter/interpreter_expression.go index 949fef296c..a38b29634c 100644 --- a/runtime/interpreter/interpreter_expression.go +++ b/runtime/interpreter/interpreter_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_import.go b/runtime/interpreter/interpreter_import.go index f92cdde743..62323435d4 100644 --- a/runtime/interpreter/interpreter_import.go +++ b/runtime/interpreter/interpreter_import.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_invocation.go b/runtime/interpreter/interpreter_invocation.go index 68c7b0f404..885fe91980 100644 --- a/runtime/interpreter/interpreter_invocation.go +++ b/runtime/interpreter/interpreter_invocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_statement.go b/runtime/interpreter/interpreter_statement.go index 5fa183b1e3..9170eaa0ce 100644 --- a/runtime/interpreter/interpreter_statement.go +++ b/runtime/interpreter/interpreter_statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_test.go b/runtime/interpreter/interpreter_test.go index 395e0dd91a..bf79b8b9ba 100644 --- a/runtime/interpreter/interpreter_test.go +++ b/runtime/interpreter/interpreter_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_tracing.go b/runtime/interpreter/interpreter_tracing.go index 554fc82bbf..365eebed42 100644 --- a/runtime/interpreter/interpreter_tracing.go +++ b/runtime/interpreter/interpreter_tracing.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_tracing_test.go b/runtime/interpreter/interpreter_tracing_test.go index d11c318f03..99b0f682d2 100644 --- a/runtime/interpreter/interpreter_tracing_test.go +++ b/runtime/interpreter/interpreter_tracing_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/interpreter_transaction.go b/runtime/interpreter/interpreter_transaction.go index 9a2ba99eb3..6a5f0f932d 100644 --- a/runtime/interpreter/interpreter_transaction.go +++ b/runtime/interpreter/interpreter_transaction.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/invocation.go b/runtime/interpreter/invocation.go index f9c76fb1ed..7fde502b71 100644 --- a/runtime/interpreter/invocation.go +++ b/runtime/interpreter/invocation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/location.go b/runtime/interpreter/location.go index 4186c84c3e..674ebb8842 100644 --- a/runtime/interpreter/location.go +++ b/runtime/interpreter/location.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/location_test.go b/runtime/interpreter/location_test.go index 50a85d4ee7..35eac77d2e 100644 --- a/runtime/interpreter/location_test.go +++ b/runtime/interpreter/location_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/minus_test.go b/runtime/interpreter/minus_test.go index 8047ef36f1..541b269740 100644 --- a/runtime/interpreter/minus_test.go +++ b/runtime/interpreter/minus_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/mul_test.go b/runtime/interpreter/mul_test.go index faf357aa99..172b21fdb9 100644 --- a/runtime/interpreter/mul_test.go +++ b/runtime/interpreter/mul_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/negate_test.go b/runtime/interpreter/negate_test.go index f6b285b5b8..668a66b4b9 100644 --- a/runtime/interpreter/negate_test.go +++ b/runtime/interpreter/negate_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/number.go b/runtime/interpreter/number.go index b16bce2e3c..c0149567c6 100644 --- a/runtime/interpreter/number.go +++ b/runtime/interpreter/number.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/number_test.go b/runtime/interpreter/number_test.go index c375ed6144..effb6573bf 100644 --- a/runtime/interpreter/number_test.go +++ b/runtime/interpreter/number_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/plus_test.go b/runtime/interpreter/plus_test.go index 20cd88e620..61d72f25d9 100644 --- a/runtime/interpreter/plus_test.go +++ b/runtime/interpreter/plus_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/primitivestatictype.go b/runtime/interpreter/primitivestatictype.go index b30c160eaf..1bb5234b24 100644 --- a/runtime/interpreter/primitivestatictype.go +++ b/runtime/interpreter/primitivestatictype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/primitivestatictype_test.go b/runtime/interpreter/primitivestatictype_test.go index 976f7e6d73..5af6000727 100644 --- a/runtime/interpreter/primitivestatictype_test.go +++ b/runtime/interpreter/primitivestatictype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/program.go b/runtime/interpreter/program.go index 3072c3ee7d..3ec1b59583 100644 --- a/runtime/interpreter/program.go +++ b/runtime/interpreter/program.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/sharedstate.go b/runtime/interpreter/sharedstate.go index 61a071f9c7..eca51c9a32 100644 --- a/runtime/interpreter/sharedstate.go +++ b/runtime/interpreter/sharedstate.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/simplecompositevalue.go b/runtime/interpreter/simplecompositevalue.go index 546e95283f..526847c28c 100644 --- a/runtime/interpreter/simplecompositevalue.go +++ b/runtime/interpreter/simplecompositevalue.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/statementresult.go b/runtime/interpreter/statementresult.go index 8a59c19919..0d6322fa5a 100644 --- a/runtime/interpreter/statementresult.go +++ b/runtime/interpreter/statementresult.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/statictype.go b/runtime/interpreter/statictype.go index 2df70120f9..c97cf0e6e2 100644 --- a/runtime/interpreter/statictype.go +++ b/runtime/interpreter/statictype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -682,11 +682,11 @@ var FullyEntitledAccountAccess = ConvertSemaAccessToStaticAuthorization(nil, sem func (Unauthorized) isAuthorization() {} func (Unauthorized) String() string { - return "" + return "Unauthorized" } -func (Unauthorized) MeteredString(_ common.MemoryGauge) string { - return "" +func (a Unauthorized) MeteredString(_ common.MemoryGauge) string { + return "Unauthorized" } func (Unauthorized) ID() TypeID { @@ -698,6 +698,29 @@ func (Unauthorized) Equal(auth Authorization) bool { return ok } +type Inaccessible struct{} + +var InaccessibleAccess Authorization = Inaccessible{} + +func (Inaccessible) isAuthorization() {} + +func (Inaccessible) String() string { + return "Inaccessible" +} + +func (Inaccessible) MeteredString(_ common.MemoryGauge) string { + return "Inaccessible" +} + +func (Inaccessible) ID() TypeID { + panic(errors.NewUnreachableError()) +} + +func (Inaccessible) Equal(auth Authorization) bool { + _, ok := auth.(Inaccessible) + return ok +} + type EntitlementSetAuthorization struct { Entitlements *sema.TypeIDOrderedSet SetKind sema.EntitlementSetKind @@ -870,7 +893,10 @@ func (t *ReferenceStaticType) String() string { func (t *ReferenceStaticType) MeteredString(memoryGauge common.MemoryGauge) string { typeStr := t.ReferencedType.MeteredString(memoryGauge) - authString := t.Authorization.MeteredString(memoryGauge) + authString := "" + if !t.Authorization.Equal(InaccessibleAccess) && !t.Authorization.Equal(UnauthorizedAccess) { + authString = t.Authorization.MeteredString(memoryGauge) + } common.UseMemory(memoryGauge, common.NewRawStringMemoryUsage(len(typeStr)+1+len(authString))) return fmt.Sprintf("%s&%s", authString, typeStr) @@ -1090,6 +1116,9 @@ func ConvertSemaAccessToStaticAuthorization( if access.Equal(sema.UnauthorizedAccess) { return UnauthorizedAccess } + if access.Equal(sema.InaccessibleAccess) { + return InaccessibleAccess + } case sema.EntitlementSetAccess: var entitlements []common.TypeID @@ -1165,6 +1194,9 @@ func ConvertStaticAuthorizationToSemaAccess( case Unauthorized: return sema.UnauthorizedAccess, nil + case Inaccessible: + return sema.InaccessibleAccess, nil + case EntitlementMapAuthorization: entitlement, err := handler.GetEntitlementMapType(auth.TypeID) if err != nil { diff --git a/runtime/interpreter/statictype_test.go b/runtime/interpreter/statictype_test.go index 6397347ce1..9a2517c99f 100644 --- a/runtime/interpreter/statictype_test.go +++ b/runtime/interpreter/statictype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/storage.go b/runtime/interpreter/storage.go index 3d07194aea..4276f975de 100644 --- a/runtime/interpreter/storage.go +++ b/runtime/interpreter/storage.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/storage_test.go b/runtime/interpreter/storage_test.go index 721449c0a7..7dc2a13356 100644 --- a/runtime/interpreter/storage_test.go +++ b/runtime/interpreter/storage_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/storagemap.go b/runtime/interpreter/storagemap.go index 3449d5c820..e681c0e9f4 100644 --- a/runtime/interpreter/storagemap.go +++ b/runtime/interpreter/storagemap.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/storagemapkey.go b/runtime/interpreter/storagemapkey.go index 7be319789f..291fbf3774 100644 --- a/runtime/interpreter/storagemapkey.go +++ b/runtime/interpreter/storagemapkey.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/stringatreevalue.go b/runtime/interpreter/stringatreevalue.go index cf7d3dbc91..94ecc51bec 100644 --- a/runtime/interpreter/stringatreevalue.go +++ b/runtime/interpreter/stringatreevalue.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/stringatreevalue_test.go b/runtime/interpreter/stringatreevalue_test.go index 4d0d574390..ddcc53878b 100644 --- a/runtime/interpreter/stringatreevalue_test.go +++ b/runtime/interpreter/stringatreevalue_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/uint64atreevalue.go b/runtime/interpreter/uint64atreevalue.go index 785122428f..904fa09623 100644 --- a/runtime/interpreter/uint64atreevalue.go +++ b/runtime/interpreter/uint64atreevalue.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value.go b/runtime/interpreter/value.go index 1c3102d5d6..cf4f91e307 100644 --- a/runtime/interpreter/value.go +++ b/runtime/interpreter/value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20944,6 +20944,13 @@ func (v *StorageReferenceValue) dereference(interpreter *Interpreter, locationRa return nil, nil } + if reference, isReference := referenced.(ReferenceValue); isReference { + panic(NestedReferenceError{ + Value: reference, + LocationRange: locationRange, + }) + } + if v.BorrowedType != nil { staticType := referenced.StaticType(interpreter) diff --git a/runtime/interpreter/value_account.go b/runtime/interpreter/value_account.go index 4a361be048..63c5383960 100644 --- a/runtime/interpreter/value_account.go +++ b/runtime/interpreter/value_account.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_account_accountcapabilities.go b/runtime/interpreter/value_account_accountcapabilities.go index df38ffba5c..0e55715774 100644 --- a/runtime/interpreter/value_account_accountcapabilities.go +++ b/runtime/interpreter/value_account_accountcapabilities.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_account_capabilities.go b/runtime/interpreter/value_account_capabilities.go index 2e12574d61..99f3909114 100644 --- a/runtime/interpreter/value_account_capabilities.go +++ b/runtime/interpreter/value_account_capabilities.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_account_contracts.go b/runtime/interpreter/value_account_contracts.go index dd0427fc73..f13112f18d 100644 --- a/runtime/interpreter/value_account_contracts.go +++ b/runtime/interpreter/value_account_contracts.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_account_inbox.go b/runtime/interpreter/value_account_inbox.go index d4add1b3b7..05800b64a8 100644 --- a/runtime/interpreter/value_account_inbox.go +++ b/runtime/interpreter/value_account_inbox.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_account_storage.go b/runtime/interpreter/value_account_storage.go index 7ef41e737d..c9c12ce462 100644 --- a/runtime/interpreter/value_account_storage.go +++ b/runtime/interpreter/value_account_storage.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_account_storagecapabilities.go b/runtime/interpreter/value_account_storagecapabilities.go index 083f918b41..ba779cd5ad 100644 --- a/runtime/interpreter/value_account_storagecapabilities.go +++ b/runtime/interpreter/value_account_storagecapabilities.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_accountcapabilitycontroller.go b/runtime/interpreter/value_accountcapabilitycontroller.go index fdddfcafd7..d2a7c98769 100644 --- a/runtime/interpreter/value_accountcapabilitycontroller.go +++ b/runtime/interpreter/value_accountcapabilitycontroller.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_accountkey.go b/runtime/interpreter/value_accountkey.go index 05013dbbf8..015bb2f0d4 100644 --- a/runtime/interpreter/value_accountkey.go +++ b/runtime/interpreter/value_accountkey.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_authaccount_keys.go b/runtime/interpreter/value_authaccount_keys.go index eedf97f35d..964cf063be 100644 --- a/runtime/interpreter/value_authaccount_keys.go +++ b/runtime/interpreter/value_authaccount_keys.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_block.go b/runtime/interpreter/value_block.go index 39f7e9201c..0d717b89e0 100644 --- a/runtime/interpreter/value_block.go +++ b/runtime/interpreter/value_block.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_capability.go b/runtime/interpreter/value_capability.go index 82a1c1cf36..95eed239b1 100644 --- a/runtime/interpreter/value_capability.go +++ b/runtime/interpreter/value_capability.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_deployedcontract.go b/runtime/interpreter/value_deployedcontract.go index 4e7a78e69a..4f93ad5eac 100644 --- a/runtime/interpreter/value_deployedcontract.go +++ b/runtime/interpreter/value_deployedcontract.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_deployment_result.go b/runtime/interpreter/value_deployment_result.go index c39f2a25ed..e7adffe538 100644 --- a/runtime/interpreter/value_deployment_result.go +++ b/runtime/interpreter/value_deployment_result.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_function.go b/runtime/interpreter/value_function.go index ffc8c178e3..61021a6ab9 100644 --- a/runtime/interpreter/value_function.go +++ b/runtime/interpreter/value_function.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_function_test.go b/runtime/interpreter/value_function_test.go index 9e7625f595..f4b36d1c4b 100644 --- a/runtime/interpreter/value_function_test.go +++ b/runtime/interpreter/value_function_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_link.go b/runtime/interpreter/value_link.go index e2325fea94..a5e053d3bb 100644 --- a/runtime/interpreter/value_link.go +++ b/runtime/interpreter/value_link.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_pathcapability.go b/runtime/interpreter/value_pathcapability.go index cce56c6dd0..b6480f85b8 100644 --- a/runtime/interpreter/value_pathcapability.go +++ b/runtime/interpreter/value_pathcapability.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_placeholder.go b/runtime/interpreter/value_placeholder.go index 59a33f60bd..1396f38458 100644 --- a/runtime/interpreter/value_placeholder.go +++ b/runtime/interpreter/value_placeholder.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_publickey.go b/runtime/interpreter/value_publickey.go index e842feec82..da1ed1d40d 100644 --- a/runtime/interpreter/value_publickey.go +++ b/runtime/interpreter/value_publickey.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_range.go b/runtime/interpreter/value_range.go index 276e495fce..267766cfc9 100644 --- a/runtime/interpreter/value_range.go +++ b/runtime/interpreter/value_range.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_storagecapabilitycontroller.go b/runtime/interpreter/value_storagecapabilitycontroller.go index 2b42578c4e..2960493260 100644 --- a/runtime/interpreter/value_storagecapabilitycontroller.go +++ b/runtime/interpreter/value_storagecapabilitycontroller.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_string.go b/runtime/interpreter/value_string.go index 35851f6a17..5262730bb5 100644 --- a/runtime/interpreter/value_string.go +++ b/runtime/interpreter/value_string.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/value_test.go b/runtime/interpreter/value_test.go index cad4529f93..961a311606 100644 --- a/runtime/interpreter/value_test.go +++ b/runtime/interpreter/value_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/valuedeclaration.go b/runtime/interpreter/valuedeclaration.go index 2349a89bac..c80c1579c7 100644 --- a/runtime/interpreter/valuedeclaration.go +++ b/runtime/interpreter/valuedeclaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/variable.go b/runtime/interpreter/variable.go index f278efdbaa..bf94d82a1d 100644 --- a/runtime/interpreter/variable.go +++ b/runtime/interpreter/variable.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/variable_activations.go b/runtime/interpreter/variable_activations.go index d9fcd6e7a5..45ce2ecd6c 100644 --- a/runtime/interpreter/variable_activations.go +++ b/runtime/interpreter/variable_activations.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/visitor.go b/runtime/interpreter/visitor.go index cf396015f0..821eecf8c5 100644 --- a/runtime/interpreter/visitor.go +++ b/runtime/interpreter/visitor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/interpreter/walk.go b/runtime/interpreter/walk.go index 72271a228b..cb04262f38 100644 --- a/runtime/interpreter/walk.go +++ b/runtime/interpreter/walk.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/literal.go b/runtime/literal.go index 8e320e1ac3..ad1ad9b3a4 100644 --- a/runtime/literal.go +++ b/runtime/literal.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/literal_test.go b/runtime/literal_test.go index 1fe6450373..c0b727b9a8 100644 --- a/runtime/literal_test.go +++ b/runtime/literal_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/nft_test.go b/runtime/nft_test.go index bd25cb8d60..fcaebdc473 100644 --- a/runtime/nft_test.go +++ b/runtime/nft_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/benchmark_test.go b/runtime/old_parser/benchmark_test.go index 6abcfe4bb7..3f7129a5ba 100644 --- a/runtime/old_parser/benchmark_test.go +++ b/runtime/old_parser/benchmark_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/comment.go b/runtime/old_parser/comment.go index 33a3d4230b..766abdd135 100644 --- a/runtime/old_parser/comment.go +++ b/runtime/old_parser/comment.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/declaration.go b/runtime/old_parser/declaration.go index 34981591b1..05f92e5d7d 100644 --- a/runtime/old_parser/declaration.go +++ b/runtime/old_parser/declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/declaration_test.go b/runtime/old_parser/declaration_test.go index 69fdea99a5..1ecbc1e9bb 100644 --- a/runtime/old_parser/declaration_test.go +++ b/runtime/old_parser/declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/docstring.go b/runtime/old_parser/docstring.go index 67559b286c..42f700a422 100644 --- a/runtime/old_parser/docstring.go +++ b/runtime/old_parser/docstring.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/docstring_test.go b/runtime/old_parser/docstring_test.go index 5a7624cce3..dd46ee23fa 100644 --- a/runtime/old_parser/docstring_test.go +++ b/runtime/old_parser/docstring_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/errors.go b/runtime/old_parser/errors.go index 724dbfdcf7..9c0d1deb6a 100644 --- a/runtime/old_parser/errors.go +++ b/runtime/old_parser/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/expression.go b/runtime/old_parser/expression.go index 7ed3543351..b4fd4c2a12 100644 --- a/runtime/old_parser/expression.go +++ b/runtime/old_parser/expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/expression_test.go b/runtime/old_parser/expression_test.go index 79fa2c9b48..f1fb98ea73 100644 --- a/runtime/old_parser/expression_test.go +++ b/runtime/old_parser/expression_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/function.go b/runtime/old_parser/function.go index ae3bb1ee99..7d0054faaf 100644 --- a/runtime/old_parser/function.go +++ b/runtime/old_parser/function.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/invalidnumberliteralkind.go b/runtime/old_parser/invalidnumberliteralkind.go index 7cd7d6064e..0016f892b3 100644 --- a/runtime/old_parser/invalidnumberliteralkind.go +++ b/runtime/old_parser/invalidnumberliteralkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/keyword.go b/runtime/old_parser/keyword.go index d4e5b33af2..862ae66d0f 100644 --- a/runtime/old_parser/keyword.go +++ b/runtime/old_parser/keyword.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/lexer/lexer.go b/runtime/old_parser/lexer/lexer.go index a2b10ca306..cf0a2e0e44 100644 --- a/runtime/old_parser/lexer/lexer.go +++ b/runtime/old_parser/lexer/lexer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/lexer/lexer_test.go b/runtime/old_parser/lexer/lexer_test.go index 926271756e..3102656402 100644 --- a/runtime/old_parser/lexer/lexer_test.go +++ b/runtime/old_parser/lexer/lexer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/lexer/state.go b/runtime/old_parser/lexer/state.go index 0978df343d..9848a1be34 100644 --- a/runtime/old_parser/lexer/state.go +++ b/runtime/old_parser/lexer/state.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/lexer/token.go b/runtime/old_parser/lexer/token.go index 71e37e5190..cfda861bdf 100644 --- a/runtime/old_parser/lexer/token.go +++ b/runtime/old_parser/lexer/token.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/lexer/tokenstream.go b/runtime/old_parser/lexer/tokenstream.go index 8e3f3e680a..676e80016d 100644 --- a/runtime/old_parser/lexer/tokenstream.go +++ b/runtime/old_parser/lexer/tokenstream.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/lexer/tokentype.go b/runtime/old_parser/lexer/tokentype.go index b82a1fa408..25e32c9ea2 100644 --- a/runtime/old_parser/lexer/tokentype.go +++ b/runtime/old_parser/lexer/tokentype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/parser.go b/runtime/old_parser/parser.go index c7af7e7796..05b0d5bf84 100644 --- a/runtime/old_parser/parser.go +++ b/runtime/old_parser/parser.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/parser_test.go b/runtime/old_parser/parser_test.go index 4537bf6118..0f67b05747 100644 --- a/runtime/old_parser/parser_test.go +++ b/runtime/old_parser/parser_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/statement.go b/runtime/old_parser/statement.go index acd9f79485..dfa73bb617 100644 --- a/runtime/old_parser/statement.go +++ b/runtime/old_parser/statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/statement_test.go b/runtime/old_parser/statement_test.go index 1c86eb3765..ad4843bb4b 100644 --- a/runtime/old_parser/statement_test.go +++ b/runtime/old_parser/statement_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/transaction.go b/runtime/old_parser/transaction.go index d2cb79d62d..a6c72419aa 100644 --- a/runtime/old_parser/transaction.go +++ b/runtime/old_parser/transaction.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/type.go b/runtime/old_parser/type.go index 2623d4a10b..3723445708 100644 --- a/runtime/old_parser/type.go +++ b/runtime/old_parser/type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/old_parser/type_test.go b/runtime/old_parser/type_test.go index 490d1ed35f..5b656fca3e 100644 --- a/runtime/old_parser/type_test.go +++ b/runtime/old_parser/type_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/benchmark_test.go b/runtime/parser/benchmark_test.go index 13ee5d8689..1828ca6886 100644 --- a/runtime/parser/benchmark_test.go +++ b/runtime/parser/benchmark_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/comment.go b/runtime/parser/comment.go index 5dc763e1f4..1ca171889e 100644 --- a/runtime/parser/comment.go +++ b/runtime/parser/comment.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/declaration.go b/runtime/parser/declaration.go index ea268267de..4a9345b584 100644 --- a/runtime/parser/declaration.go +++ b/runtime/parser/declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/declaration_test.go b/runtime/parser/declaration_test.go index 6a9b892f7d..9c34532c43 100644 --- a/runtime/parser/declaration_test.go +++ b/runtime/parser/declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/docstring.go b/runtime/parser/docstring.go index 395609041e..ab8235d0bf 100644 --- a/runtime/parser/docstring.go +++ b/runtime/parser/docstring.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/docstring_test.go b/runtime/parser/docstring_test.go index 80005f9e39..b73edf4aa9 100644 --- a/runtime/parser/docstring_test.go +++ b/runtime/parser/docstring_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/errors.go b/runtime/parser/errors.go index 6ed78a0ca4..5d9ce97cc0 100644 --- a/runtime/parser/errors.go +++ b/runtime/parser/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/expression.go b/runtime/parser/expression.go index 40dd4b3734..60911b45c8 100644 --- a/runtime/parser/expression.go +++ b/runtime/parser/expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/expression_test.go b/runtime/parser/expression_test.go index 53a8e58c14..d82cc21ec8 100644 --- a/runtime/parser/expression_test.go +++ b/runtime/parser/expression_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/function.go b/runtime/parser/function.go index 69b202b1b4..a6028be802 100644 --- a/runtime/parser/function.go +++ b/runtime/parser/function.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/invalidnumberliteralkind.go b/runtime/parser/invalidnumberliteralkind.go index 1c788b52ae..de7199bb1e 100644 --- a/runtime/parser/invalidnumberliteralkind.go +++ b/runtime/parser/invalidnumberliteralkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/keyword.go b/runtime/parser/keyword.go index e9239db841..401c351c70 100644 --- a/runtime/parser/keyword.go +++ b/runtime/parser/keyword.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/lexer/lexer.go b/runtime/parser/lexer/lexer.go index 743e13426e..7b69245ce2 100644 --- a/runtime/parser/lexer/lexer.go +++ b/runtime/parser/lexer/lexer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/lexer/lexer_test.go b/runtime/parser/lexer/lexer_test.go index 9c05281f67..51f8f53f34 100644 --- a/runtime/parser/lexer/lexer_test.go +++ b/runtime/parser/lexer/lexer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/lexer/state.go b/runtime/parser/lexer/state.go index ce52ebba74..4b252d6f09 100644 --- a/runtime/parser/lexer/state.go +++ b/runtime/parser/lexer/state.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/lexer/token.go b/runtime/parser/lexer/token.go index 71e37e5190..cfda861bdf 100644 --- a/runtime/parser/lexer/token.go +++ b/runtime/parser/lexer/token.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/lexer/tokenstream.go b/runtime/parser/lexer/tokenstream.go index 8e3f3e680a..676e80016d 100644 --- a/runtime/parser/lexer/tokenstream.go +++ b/runtime/parser/lexer/tokenstream.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/lexer/tokentype.go b/runtime/parser/lexer/tokentype.go index c9fff21a24..0a15c19b6f 100644 --- a/runtime/parser/lexer/tokentype.go +++ b/runtime/parser/lexer/tokentype.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/parser.go b/runtime/parser/parser.go index 38271992e4..497d1f54e4 100644 --- a/runtime/parser/parser.go +++ b/runtime/parser/parser.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/parser_test.go b/runtime/parser/parser_test.go index 029dc465b6..ff816dd4c5 100644 --- a/runtime/parser/parser_test.go +++ b/runtime/parser/parser_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/statement.go b/runtime/parser/statement.go index d6bbfe70a6..cd5c9b93e4 100644 --- a/runtime/parser/statement.go +++ b/runtime/parser/statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/statement_test.go b/runtime/parser/statement_test.go index 4036bd6d07..996cec1c3b 100644 --- a/runtime/parser/statement_test.go +++ b/runtime/parser/statement_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/transaction.go b/runtime/parser/transaction.go index 1ccff2a7a6..22b2b46184 100644 --- a/runtime/parser/transaction.go +++ b/runtime/parser/transaction.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/type.go b/runtime/parser/type.go index ea61780627..a9df066c64 100644 --- a/runtime/parser/type.go +++ b/runtime/parser/type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/parser/type_test.go b/runtime/parser/type_test.go index 6bbbe17062..0f8d5fb129 100644 --- a/runtime/parser/type_test.go +++ b/runtime/parser/type_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/predeclaredvalues_test.go b/runtime/predeclaredvalues_test.go index fe4fb54dc9..14d1914790 100644 --- a/runtime/predeclaredvalues_test.go +++ b/runtime/predeclaredvalues_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/pretty/print.go b/runtime/pretty/print.go index 2836a92d5a..dac7e07281 100644 --- a/runtime/pretty/print.go +++ b/runtime/pretty/print.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/pretty/print_test.go b/runtime/pretty/print_test.go index 256ff77c75..c680f3281f 100644 --- a/runtime/pretty/print_test.go +++ b/runtime/pretty/print_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/program_params_validation_test.go b/runtime/program_params_validation_test.go index 9fb66a85a0..4d3d041672 100644 --- a/runtime/program_params_validation_test.go +++ b/runtime/program_params_validation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/repl.go b/runtime/repl.go index 9d1c213aac..37ce1421bf 100644 --- a/runtime/repl.go +++ b/runtime/repl.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/resource_duplicate_test.go b/runtime/resource_duplicate_test.go index 4fbd33be2e..9de1e0fc28 100644 --- a/runtime/resource_duplicate_test.go +++ b/runtime/resource_duplicate_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/resourcedictionary_test.go b/runtime/resourcedictionary_test.go index 238a656718..5d4f50f281 100644 --- a/runtime/resourcedictionary_test.go +++ b/runtime/resourcedictionary_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/rlp_test.go b/runtime/rlp_test.go index 53e4725e66..6784b84c35 100644 --- a/runtime/rlp_test.go +++ b/runtime/rlp_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/runtime.go b/runtime/runtime.go index 23a9b60729..25dc1704e9 100644 --- a/runtime/runtime.go +++ b/runtime/runtime.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/runtime_memory_metering_test.go b/runtime/runtime_memory_metering_test.go index 0ec089d403..eddbbb0529 100644 --- a/runtime/runtime_memory_metering_test.go +++ b/runtime/runtime_memory_metering_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/runtime_test.go b/runtime/runtime_test.go index 7322c19792..2a4f4c86ac 100644 --- a/runtime/runtime_test.go +++ b/runtime/runtime_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -10847,3 +10847,71 @@ func TestRuntimeAccountEntitlementEscalation(t *testing.T) { }) require.ErrorAs(t, err, &interpreter.InvalidMemberReferenceError{}) } + +func TestRuntimeAccountStorageBorrowEphemeralReferenceValue(t *testing.T) { + + t.Parallel() + + addressValue := Address{ + 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, + } + + runtime := NewTestInterpreterRuntime() + + contract := []byte(` + access(all) contract C { + + init() { + let pubAccount = getAccount(0x01) + self.account.storage.save(pubAccount as AnyStruct, to: /storage/account) + let authAccount = self.account.storage.borrow(from: /storage/account)! + } + } + `) + + deploy := DeploymentTransaction("C", contract) + + accountCodes := map[Location][]byte{} + var events []cadence.Event + + runtimeInterface := &TestRuntimeInterface{ + OnGetCode: func(location Location) (bytes []byte, err error) { + return accountCodes[location], nil + }, + Storage: NewTestLedger(nil, nil), + OnGetSigningAccounts: func() ([]Address, error) { + return []Address{addressValue}, nil + }, + OnResolveLocation: NewSingleIdentifierLocationResolver(t), + OnGetAccountContractCode: func(location common.AddressLocation) (code []byte, err error) { + return accountCodes[location], nil + }, + OnUpdateAccountContractCode: func(location common.AddressLocation, code []byte) error { + accountCodes[location] = code + return nil + }, + OnCreateAccount: func(payer Address) (address Address, err error) { + return addressValue, nil + }, + OnEmitEvent: func(event cadence.Event) error { + events = append(events, event) + return nil + }, + } + + nextTransactionLocation := NewTransactionLocationGenerator() + + err := runtime.ExecuteTransaction( + Script{ + Source: deploy, + }, + Context{ + Interface: runtimeInterface, + Location: nextTransactionLocation(), + }, + ) + RequireError(t, err) + + var nestedReferenceErr interpreter.NestedReferenceError + require.ErrorAs(t, err, &nestedReferenceErr) +} diff --git a/runtime/script_executor.go b/runtime/script_executor.go index b7da51835d..61212a30da 100644 --- a/runtime/script_executor.go +++ b/runtime/script_executor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/access.go b/runtime/sema/access.go index 89530e7934..fcad025d94 100644 --- a/runtime/sema/access.go +++ b/runtime/sema/access.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -326,7 +326,13 @@ func (e *EntitlementMapAccess) PermitsAccess(other Access) bool { // the input entitlement. It is only safe for `R` to give out these entitlements if it actually // possesses them, so we require the initializing value to have every possible entitlement that may // be produced by the map + // + // However, if the map is or includes the `Identity`, there is no possible set that is permitted by + // this map, since the theoretical codomain of the Identity map is infinite case EntitlementSetAccess: + if e.Type.IncludesIdentity { + return false + } return e.Codomain().PermitsAccess(otherAccess) default: return false @@ -346,7 +352,7 @@ func (e *EntitlementMapAccess) Domain() EntitlementSetAccess { return e.domain } -func (e *EntitlementMapAccess) Codomain() EntitlementSetAccess { +func (e *EntitlementMapAccess) Codomain() Access { e.codomainOnce.Do(func() { codomain := common.MappedSliceWithNoDuplicates( e.Type.Relations, @@ -458,6 +464,9 @@ func (a PrimitiveAccess) Equal(other Access) bool { } func (a PrimitiveAccess) PermitsAccess(otherAccess Access) bool { + if a == InaccessibleAccess { + return otherAccess == InaccessibleAccess + } if otherPrimitive, ok := otherAccess.(PrimitiveAccess); ok { return ast.PrimitiveAccess(a) >= ast.PrimitiveAccess(otherPrimitive) } diff --git a/runtime/sema/access_test.go b/runtime/sema/access_test.go index 63e3418214..eecba8a9d2 100644 --- a/runtime/sema/access_test.go +++ b/runtime/sema/access_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/accesscheckmode.go b/runtime/sema/accesscheckmode.go index a0bb313b6f..1c8b2ff47e 100644 --- a/runtime/sema/accesscheckmode.go +++ b/runtime/sema/accesscheckmode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/account.gen.go b/runtime/sema/account.gen.go index f7935b2086..89d05b2917 100644 --- a/runtime/sema/account.gen.go +++ b/runtime/sema/account.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/account.go b/runtime/sema/account.go index 18d71a56c3..0e08584423 100644 --- a/runtime/sema/account.go +++ b/runtime/sema/account.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/account_capability_controller.gen.go b/runtime/sema/account_capability_controller.gen.go index 710ec457b6..894c436b54 100644 --- a/runtime/sema/account_capability_controller.gen.go +++ b/runtime/sema/account_capability_controller.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/account_capability_controller.go b/runtime/sema/account_capability_controller.go index fd0357ecc1..1d2abaaabc 100644 --- a/runtime/sema/account_capability_controller.go +++ b/runtime/sema/account_capability_controller.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/any_type.go b/runtime/sema/any_type.go index a95a74bf46..eb06753c37 100644 --- a/runtime/sema/any_type.go +++ b/runtime/sema/any_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/anyattachment_types.go b/runtime/sema/anyattachment_types.go index aff86b40ae..f4566e137d 100644 --- a/runtime/sema/anyattachment_types.go +++ b/runtime/sema/anyattachment_types.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/anyresource_type.go b/runtime/sema/anyresource_type.go index 9c255dfcc8..36aa0fede0 100644 --- a/runtime/sema/anyresource_type.go +++ b/runtime/sema/anyresource_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/anystruct_type.go b/runtime/sema/anystruct_type.go index a9d5c9c0e9..950b75ffea 100644 --- a/runtime/sema/anystruct_type.go +++ b/runtime/sema/anystruct_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/before_extractor.go b/runtime/sema/before_extractor.go index e20e3363a5..e7e0ab0c75 100644 --- a/runtime/sema/before_extractor.go +++ b/runtime/sema/before_extractor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/before_extractor_test.go b/runtime/sema/before_extractor_test.go index 0286d4b308..b82b748b19 100644 --- a/runtime/sema/before_extractor_test.go +++ b/runtime/sema/before_extractor_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/binaryoperationkind.go b/runtime/sema/binaryoperationkind.go index baffb61939..796f9aba1a 100644 --- a/runtime/sema/binaryoperationkind.go +++ b/runtime/sema/binaryoperationkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/block.gen.go b/runtime/sema/block.gen.go index f28e6f2d77..8f059af05d 100644 --- a/runtime/sema/block.gen.go +++ b/runtime/sema/block.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/block.go b/runtime/sema/block.go index 320f2f9853..b44b3c5200 100644 --- a/runtime/sema/block.go +++ b/runtime/sema/block.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/bool_type.go b/runtime/sema/bool_type.go index 0ca7d61b8c..36f1db3e70 100644 --- a/runtime/sema/bool_type.go +++ b/runtime/sema/bool_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/character.gen.go b/runtime/sema/character.gen.go index 3ba8c946b0..3938f01bb8 100644 --- a/runtime/sema/character.gen.go +++ b/runtime/sema/character.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/character.go b/runtime/sema/character.go index 7e8475cb25..12f8ead9a5 100644 --- a/runtime/sema/character.go +++ b/runtime/sema/character.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_array_expression.go b/runtime/sema/check_array_expression.go index a10a2940ae..2da9858d0c 100644 --- a/runtime/sema/check_array_expression.go +++ b/runtime/sema/check_array_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_assignment.go b/runtime/sema/check_assignment.go index 56f03290b3..b22bc84054 100644 --- a/runtime/sema/check_assignment.go +++ b/runtime/sema/check_assignment.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_attach_expression.go b/runtime/sema/check_attach_expression.go index d06681ed98..c8bebb7d33 100644 --- a/runtime/sema/check_attach_expression.go +++ b/runtime/sema/check_attach_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_binary_expression.go b/runtime/sema/check_binary_expression.go index f290291f4a..933d88c994 100644 --- a/runtime/sema/check_binary_expression.go +++ b/runtime/sema/check_binary_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_block.go b/runtime/sema/check_block.go index f45510d094..a260b40858 100644 --- a/runtime/sema/check_block.go +++ b/runtime/sema/check_block.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_casting_expression.go b/runtime/sema/check_casting_expression.go index 3e3b3ef948..71097cbccb 100644 --- a/runtime/sema/check_casting_expression.go +++ b/runtime/sema/check_casting_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_composite_declaration.go b/runtime/sema/check_composite_declaration.go index 299849ad92..e6a42aa358 100644 --- a/runtime/sema/check_composite_declaration.go +++ b/runtime/sema/check_composite_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_conditional.go b/runtime/sema/check_conditional.go index 9a923b9555..152c489e46 100644 --- a/runtime/sema/check_conditional.go +++ b/runtime/sema/check_conditional.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_conditions.go b/runtime/sema/check_conditions.go index 77cc47c6b1..c404a6585f 100644 --- a/runtime/sema/check_conditions.go +++ b/runtime/sema/check_conditions.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_create_expression.go b/runtime/sema/check_create_expression.go index c91432007c..2704232c75 100644 --- a/runtime/sema/check_create_expression.go +++ b/runtime/sema/check_create_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_destroy_expression.go b/runtime/sema/check_destroy_expression.go index ac1e24d291..0bc2b6dfdc 100644 --- a/runtime/sema/check_destroy_expression.go +++ b/runtime/sema/check_destroy_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_dictionary_expression.go b/runtime/sema/check_dictionary_expression.go index bcbb92eb7f..94a4758913 100644 --- a/runtime/sema/check_dictionary_expression.go +++ b/runtime/sema/check_dictionary_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_emit_statement.go b/runtime/sema/check_emit_statement.go index 4d15fc8d5a..f50a8af4c7 100644 --- a/runtime/sema/check_emit_statement.go +++ b/runtime/sema/check_emit_statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_event_declaration.go b/runtime/sema/check_event_declaration.go index 5250b94bf3..d568fa568f 100644 --- a/runtime/sema/check_event_declaration.go +++ b/runtime/sema/check_event_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_event_declaration_test.go b/runtime/sema/check_event_declaration_test.go index a07ebe0bbb..ba1b489f1e 100644 --- a/runtime/sema/check_event_declaration_test.go +++ b/runtime/sema/check_event_declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_expression.go b/runtime/sema/check_expression.go index 007301fd5e..876c540c05 100644 --- a/runtime/sema/check_expression.go +++ b/runtime/sema/check_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_for.go b/runtime/sema/check_for.go index ad4466374e..dfc04057e4 100644 --- a/runtime/sema/check_for.go +++ b/runtime/sema/check_for.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_force_expression.go b/runtime/sema/check_force_expression.go index e7265a99f0..d8e7dc14b5 100644 --- a/runtime/sema/check_force_expression.go +++ b/runtime/sema/check_force_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_function.go b/runtime/sema/check_function.go index 2de49767b6..4a716a204a 100644 --- a/runtime/sema/check_function.go +++ b/runtime/sema/check_function.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_import_declaration.go b/runtime/sema/check_import_declaration.go index b237f951e0..3e323a9d67 100644 --- a/runtime/sema/check_import_declaration.go +++ b/runtime/sema/check_import_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_interface_declaration.go b/runtime/sema/check_interface_declaration.go index 70a1bff111..bfef6c7420 100644 --- a/runtime/sema/check_interface_declaration.go +++ b/runtime/sema/check_interface_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_invocation_expression.go b/runtime/sema/check_invocation_expression.go index c118850336..dc8a2ac634 100644 --- a/runtime/sema/check_invocation_expression.go +++ b/runtime/sema/check_invocation_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_member_expression.go b/runtime/sema/check_member_expression.go index d2bc65e9da..27f57d2ed1 100644 --- a/runtime/sema/check_member_expression.go +++ b/runtime/sema/check_member_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -483,7 +483,12 @@ func (checker *Checker) mapAccess( // we could use this to then extract a `auth(Insert, Remove) &[T]` reference to that array by accessing `member` // on an owned copy of `S`. As such, when in an assignment, we return the full codomain here as the "granted authorization" // of the access expression, since the checker will later enforce that the incoming reference value is a subtype of that full codomain. + // However, if the map is or includes the `Identity` map, the theoretical codomain of that map is infinite, and so no reference can + // possibly be authorized enough to write to it if checker.inAssignment { + if mappedAccess.Type.IncludesIdentity { + return true, InaccessibleAccess + } return true, mappedAccess.Codomain() } return true, grantedAccess @@ -492,7 +497,10 @@ func (checker *Checker) mapAccess( return checker.mapAccess(mappedAccess, ty.Type, resultingType, accessRange) default: - if mappedAccess.Type == IdentityType { + if mappedAccess.Type.IncludesIdentity { + if checker.inAssignment { + return true, InaccessibleAccess + } access := AllSupportedEntitlements(resultingType) if access != nil { return true, access diff --git a/runtime/sema/check_path_expression.go b/runtime/sema/check_path_expression.go index 7cfaf5c396..5accc8ef43 100644 --- a/runtime/sema/check_path_expression.go +++ b/runtime/sema/check_path_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_path_expression_test.go b/runtime/sema/check_path_expression_test.go index b4bef47f55..d771f27093 100644 --- a/runtime/sema/check_path_expression_test.go +++ b/runtime/sema/check_path_expression_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_pragma.go b/runtime/sema/check_pragma.go index 7d5e7864d7..2da88147c4 100644 --- a/runtime/sema/check_pragma.go +++ b/runtime/sema/check_pragma.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_reference_expression.go b/runtime/sema/check_reference_expression.go index 0c930da082..f5d2681b9f 100644 --- a/runtime/sema/check_reference_expression.go +++ b/runtime/sema/check_reference_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_remove_statement.go b/runtime/sema/check_remove_statement.go index c6801325e3..1e3ff17890 100644 --- a/runtime/sema/check_remove_statement.go +++ b/runtime/sema/check_remove_statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_return_statement.go b/runtime/sema/check_return_statement.go index ad98d274fd..43799f4e58 100644 --- a/runtime/sema/check_return_statement.go +++ b/runtime/sema/check_return_statement.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_swap.go b/runtime/sema/check_swap.go index 6fc049e5ce..2ae2125691 100644 --- a/runtime/sema/check_swap.go +++ b/runtime/sema/check_swap.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_switch.go b/runtime/sema/check_switch.go index e2a9a87081..84d6670f25 100644 --- a/runtime/sema/check_switch.go +++ b/runtime/sema/check_switch.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_transaction_declaration.go b/runtime/sema/check_transaction_declaration.go index 345300cdcd..bc86ffc347 100644 --- a/runtime/sema/check_transaction_declaration.go +++ b/runtime/sema/check_transaction_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_unary_expression.go b/runtime/sema/check_unary_expression.go index 4f6137c1c1..cf1b01af69 100644 --- a/runtime/sema/check_unary_expression.go +++ b/runtime/sema/check_unary_expression.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_variable_declaration.go b/runtime/sema/check_variable_declaration.go index cc9a642fa0..b451416262 100644 --- a/runtime/sema/check_variable_declaration.go +++ b/runtime/sema/check_variable_declaration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/check_while.go b/runtime/sema/check_while.go index 519ce5821c..f874e6b267 100644 --- a/runtime/sema/check_while.go +++ b/runtime/sema/check_while.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/checker.go b/runtime/sema/checker.go index 7846ed8c38..e44c8c5603 100644 --- a/runtime/sema/checker.go +++ b/runtime/sema/checker.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/checker_test.go b/runtime/sema/checker_test.go index a56c67c0f6..5824f4010d 100644 --- a/runtime/sema/checker_test.go +++ b/runtime/sema/checker_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/config.go b/runtime/sema/config.go index 5bd7e6eb9b..06f6e9ce95 100644 --- a/runtime/sema/config.go +++ b/runtime/sema/config.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/containerkind.go b/runtime/sema/containerkind.go index ea93ff106f..b768fea2b2 100644 --- a/runtime/sema/containerkind.go +++ b/runtime/sema/containerkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/crypto_algorithm_types.go b/runtime/sema/crypto_algorithm_types.go index b74d326bff..1d34e85542 100644 --- a/runtime/sema/crypto_algorithm_types.go +++ b/runtime/sema/crypto_algorithm_types.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/crypto_algorithm_types_test.go b/runtime/sema/crypto_algorithm_types_test.go index d05f6f5202..bf0f054385 100644 --- a/runtime/sema/crypto_algorithm_types_test.go +++ b/runtime/sema/crypto_algorithm_types_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/declarations.go b/runtime/sema/declarations.go index 4fe1b474f9..1bd85266db 100644 --- a/runtime/sema/declarations.go +++ b/runtime/sema/declarations.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/deployedcontract.gen.go b/runtime/sema/deployedcontract.gen.go index 1fed899bef..7574a6588b 100644 --- a/runtime/sema/deployedcontract.gen.go +++ b/runtime/sema/deployedcontract.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/deployedcontract.go b/runtime/sema/deployedcontract.go index 2581d4298f..f4c0cb1b58 100644 --- a/runtime/sema/deployedcontract.go +++ b/runtime/sema/deployedcontract.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/deployment_result.gen.go b/runtime/sema/deployment_result.gen.go index 0829352a90..b3784a7108 100644 --- a/runtime/sema/deployment_result.gen.go +++ b/runtime/sema/deployment_result.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/deployment_result.go b/runtime/sema/deployment_result.go index d360f76a71..b8c8c0d7bd 100644 --- a/runtime/sema/deployment_result.go +++ b/runtime/sema/deployment_result.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/elaboration.go b/runtime/sema/elaboration.go index 749a9bbbf2..ecac487040 100644 --- a/runtime/sema/elaboration.go +++ b/runtime/sema/elaboration.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/entitlements.gen.go b/runtime/sema/entitlements.gen.go index 5ae0d1b995..07431a2deb 100644 --- a/runtime/sema/entitlements.gen.go +++ b/runtime/sema/entitlements.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/entitlements.go b/runtime/sema/entitlements.go index 3870c6e5cf..57b262fbea 100644 --- a/runtime/sema/entitlements.go +++ b/runtime/sema/entitlements.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/entitlementset.go b/runtime/sema/entitlementset.go index 964c86df4c..5871021ef1 100644 --- a/runtime/sema/entitlementset.go +++ b/runtime/sema/entitlementset.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/entitlementset_test.go b/runtime/sema/entitlementset_test.go index 19692a0ff9..9ca36405cf 100644 --- a/runtime/sema/entitlementset_test.go +++ b/runtime/sema/entitlementset_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/entrypoint.go b/runtime/sema/entrypoint.go index f8d081e95f..362bfba470 100644 --- a/runtime/sema/entrypoint.go +++ b/runtime/sema/entrypoint.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/errors.go b/runtime/sema/errors.go index 68a95eb2d7..29bbd1e412 100644 --- a/runtime/sema/errors.go +++ b/runtime/sema/errors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/errors_test.go b/runtime/sema/errors_test.go index 3212d7a0b5..d30d99e9a0 100644 --- a/runtime/sema/errors_test.go +++ b/runtime/sema/errors_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/function_activations.go b/runtime/sema/function_activations.go index 473007147a..f052cda4b2 100644 --- a/runtime/sema/function_activations.go +++ b/runtime/sema/function_activations.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/function_invocations.go b/runtime/sema/function_invocations.go index 72ae913655..1336344c82 100644 --- a/runtime/sema/function_invocations.go +++ b/runtime/sema/function_invocations.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/golden_test.go b/runtime/sema/gen/golden_test.go index 27dd86b5db..298004b3c4 100644 --- a/runtime/sema/gen/golden_test.go +++ b/runtime/sema/gen/golden_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/main.go b/runtime/sema/gen/main.go index b69133a6f2..d06e081257 100644 --- a/runtime/sema/gen/main.go +++ b/runtime/sema/gen/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -50,7 +50,7 @@ const headerTemplate = `// Code generated from {{ . }}. DO NOT EDIT. /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/main_test.go b/runtime/sema/gen/main_test.go index e1862abb96..8e391a07a6 100644 --- a/runtime/sema/gen/main_test.go +++ b/runtime/sema/gen/main_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/comparable/helper.go b/runtime/sema/gen/testdata/comparable/helper.go index efc83f3b98..0051a97d30 100644 --- a/runtime/sema/gen/testdata/comparable/helper.go +++ b/runtime/sema/gen/testdata/comparable/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/comparable/test.golden.go b/runtime/sema/gen/testdata/comparable/test.golden.go index 1814db508e..dbdf47ffaa 100644 --- a/runtime/sema/gen/testdata/comparable/test.golden.go +++ b/runtime/sema/gen/testdata/comparable/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/composite_type_pragma/test.golden.go b/runtime/sema/gen/testdata/composite_type_pragma/test.golden.go index 0ce3c47a03..3188c90e8b 100644 --- a/runtime/sema/gen/testdata/composite_type_pragma/test.golden.go +++ b/runtime/sema/gen/testdata/composite_type_pragma/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/constructor/test.golden.go b/runtime/sema/gen/testdata/constructor/test.golden.go index 3b2809675a..724875e182 100644 --- a/runtime/sema/gen/testdata/constructor/test.golden.go +++ b/runtime/sema/gen/testdata/constructor/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/contract/test.golden.go b/runtime/sema/gen/testdata/contract/test.golden.go index 1efdaeff66..03994b48cb 100644 --- a/runtime/sema/gen/testdata/contract/test.golden.go +++ b/runtime/sema/gen/testdata/contract/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/docstrings/helper.go b/runtime/sema/gen/testdata/docstrings/helper.go index 89877cfac0..81cec52907 100644 --- a/runtime/sema/gen/testdata/docstrings/helper.go +++ b/runtime/sema/gen/testdata/docstrings/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/docstrings/test.golden.go b/runtime/sema/gen/testdata/docstrings/test.golden.go index 93ba66c503..9ba25de09b 100644 --- a/runtime/sema/gen/testdata/docstrings/test.golden.go +++ b/runtime/sema/gen/testdata/docstrings/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/entitlement/test.golden.go b/runtime/sema/gen/testdata/entitlement/test.golden.go index 1d44250ceb..0b82fc1e2e 100644 --- a/runtime/sema/gen/testdata/entitlement/test.golden.go +++ b/runtime/sema/gen/testdata/entitlement/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/equatable/helper.go b/runtime/sema/gen/testdata/equatable/helper.go index 1fe9bc6a2a..324b4d7f7a 100644 --- a/runtime/sema/gen/testdata/equatable/helper.go +++ b/runtime/sema/gen/testdata/equatable/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/equatable/test.golden.go b/runtime/sema/gen/testdata/equatable/test.golden.go index 8f1a2b9d96..cd7da729a4 100644 --- a/runtime/sema/gen/testdata/equatable/test.golden.go +++ b/runtime/sema/gen/testdata/equatable/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/exportable/helper.go b/runtime/sema/gen/testdata/exportable/helper.go index 92baaf371c..992c0d97df 100644 --- a/runtime/sema/gen/testdata/exportable/helper.go +++ b/runtime/sema/gen/testdata/exportable/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/exportable/test.golden.go b/runtime/sema/gen/testdata/exportable/test.golden.go index 215b830574..60f7c0da47 100644 --- a/runtime/sema/gen/testdata/exportable/test.golden.go +++ b/runtime/sema/gen/testdata/exportable/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/fields/helper.go b/runtime/sema/gen/testdata/fields/helper.go index 0fbaa3f0f8..999ab93580 100644 --- a/runtime/sema/gen/testdata/fields/helper.go +++ b/runtime/sema/gen/testdata/fields/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/fields/test.golden.go b/runtime/sema/gen/testdata/fields/test.golden.go index eb4a381f7f..8902339801 100644 --- a/runtime/sema/gen/testdata/fields/test.golden.go +++ b/runtime/sema/gen/testdata/fields/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/functions/helper.go b/runtime/sema/gen/testdata/functions/helper.go index eb10cbad92..b7804656e2 100644 --- a/runtime/sema/gen/testdata/functions/helper.go +++ b/runtime/sema/gen/testdata/functions/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/functions/test.golden.go b/runtime/sema/gen/testdata/functions/test.golden.go index 8a1baee350..ed97a62f6f 100644 --- a/runtime/sema/gen/testdata/functions/test.golden.go +++ b/runtime/sema/gen/testdata/functions/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/importable/helper.go b/runtime/sema/gen/testdata/importable/helper.go index 6a02e2c7c5..cd13b57d0a 100644 --- a/runtime/sema/gen/testdata/importable/helper.go +++ b/runtime/sema/gen/testdata/importable/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/importable/test.golden.go b/runtime/sema/gen/testdata/importable/test.golden.go index 1a464895a5..f3b73527c3 100644 --- a/runtime/sema/gen/testdata/importable/test.golden.go +++ b/runtime/sema/gen/testdata/importable/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/member_accessible/helper.go b/runtime/sema/gen/testdata/member_accessible/helper.go index 2632d04b5c..7c8486cdb8 100644 --- a/runtime/sema/gen/testdata/member_accessible/helper.go +++ b/runtime/sema/gen/testdata/member_accessible/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/member_accessible/test.golden.go b/runtime/sema/gen/testdata/member_accessible/test.golden.go index 7c807a9fa0..15cee9f5cf 100644 --- a/runtime/sema/gen/testdata/member_accessible/test.golden.go +++ b/runtime/sema/gen/testdata/member_accessible/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/nested/test.golden.go b/runtime/sema/gen/testdata/nested/test.golden.go index d5a1058aa0..5b43f3d347 100644 --- a/runtime/sema/gen/testdata/nested/test.golden.go +++ b/runtime/sema/gen/testdata/nested/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/primitive/helper.go b/runtime/sema/gen/testdata/primitive/helper.go index f9fe69a546..cb064c8164 100644 --- a/runtime/sema/gen/testdata/primitive/helper.go +++ b/runtime/sema/gen/testdata/primitive/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/primitive/test.golden.go b/runtime/sema/gen/testdata/primitive/test.golden.go index d4d63f223a..1d24d81299 100644 --- a/runtime/sema/gen/testdata/primitive/test.golden.go +++ b/runtime/sema/gen/testdata/primitive/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/simple_resource/helper.go b/runtime/sema/gen/testdata/simple_resource/helper.go index 16de616169..a86804e5d1 100644 --- a/runtime/sema/gen/testdata/simple_resource/helper.go +++ b/runtime/sema/gen/testdata/simple_resource/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/simple_resource/test.golden.go b/runtime/sema/gen/testdata/simple_resource/test.golden.go index fd5f4a640b..551f26428f 100644 --- a/runtime/sema/gen/testdata/simple_resource/test.golden.go +++ b/runtime/sema/gen/testdata/simple_resource/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/simple_struct/helper.go b/runtime/sema/gen/testdata/simple_struct/helper.go index b9cf6dd4da..efead53986 100644 --- a/runtime/sema/gen/testdata/simple_struct/helper.go +++ b/runtime/sema/gen/testdata/simple_struct/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/simple_struct/test.golden.go b/runtime/sema/gen/testdata/simple_struct/test.golden.go index 78f5af724d..5631f80ade 100644 --- a/runtime/sema/gen/testdata/simple_struct/test.golden.go +++ b/runtime/sema/gen/testdata/simple_struct/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/storable/helper.go b/runtime/sema/gen/testdata/storable/helper.go index cd8334e96c..72235b3b8f 100644 --- a/runtime/sema/gen/testdata/storable/helper.go +++ b/runtime/sema/gen/testdata/storable/helper.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/gen/testdata/storable/test.golden.go b/runtime/sema/gen/testdata/storable/test.golden.go index e49e481d20..a7602e4047 100644 --- a/runtime/sema/gen/testdata/storable/test.golden.go +++ b/runtime/sema/gen/testdata/storable/test.golden.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/hashable_struct.gen.go b/runtime/sema/hashable_struct.gen.go index 27b7daf1b8..4570d25e48 100644 --- a/runtime/sema/hashable_struct.gen.go +++ b/runtime/sema/hashable_struct.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/hashable_struct.go b/runtime/sema/hashable_struct.go index bdb7b05ebe..e923da1d65 100644 --- a/runtime/sema/hashable_struct.go +++ b/runtime/sema/hashable_struct.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/import.go b/runtime/sema/import.go index 8757c7e6c9..d43d478fc6 100644 --- a/runtime/sema/import.go +++ b/runtime/sema/import.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/initialization_info.go b/runtime/sema/initialization_info.go index 31146ad31a..06002ce980 100644 --- a/runtime/sema/initialization_info.go +++ b/runtime/sema/initialization_info.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/interfaceset.go b/runtime/sema/interfaceset.go index 5bd8bd7ccf..2013659151 100644 --- a/runtime/sema/interfaceset.go +++ b/runtime/sema/interfaceset.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/invalid_type.go b/runtime/sema/invalid_type.go index 789d0512d9..e314bc207a 100644 --- a/runtime/sema/invalid_type.go +++ b/runtime/sema/invalid_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/member_accesses.go b/runtime/sema/member_accesses.go index 4dfbd3a17c..07fc6d378e 100644 --- a/runtime/sema/member_accesses.go +++ b/runtime/sema/member_accesses.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/meta_type.go b/runtime/sema/meta_type.go index ce41f51e93..87f5831a93 100644 --- a/runtime/sema/meta_type.go +++ b/runtime/sema/meta_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/never_type.go b/runtime/sema/never_type.go index e8a39ac087..22e8bc35e3 100644 --- a/runtime/sema/never_type.go +++ b/runtime/sema/never_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/occurrences.go b/runtime/sema/occurrences.go index a7ecbde505..f1d3a134e2 100644 --- a/runtime/sema/occurrences.go +++ b/runtime/sema/occurrences.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/orderdmaps.go b/runtime/sema/orderdmaps.go index ab80a7412f..cc4ac852e9 100644 --- a/runtime/sema/orderdmaps.go +++ b/runtime/sema/orderdmaps.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/path_type.go b/runtime/sema/path_type.go index 636f9ff2a7..4334054f60 100644 --- a/runtime/sema/path_type.go +++ b/runtime/sema/path_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/positioninfo.go b/runtime/sema/positioninfo.go index eea7b2d760..8c4b19dc5e 100644 --- a/runtime/sema/positioninfo.go +++ b/runtime/sema/positioninfo.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/post_conditions_rewrite.go b/runtime/sema/post_conditions_rewrite.go index 922a0e5384..963d2dd99f 100644 --- a/runtime/sema/post_conditions_rewrite.go +++ b/runtime/sema/post_conditions_rewrite.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/ranges.go b/runtime/sema/ranges.go index a970552a12..232ccbf5b9 100644 --- a/runtime/sema/ranges.go +++ b/runtime/sema/ranges.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/resolve.go b/runtime/sema/resolve.go index 24cf1f8165..4c35f91500 100644 --- a/runtime/sema/resolve.go +++ b/runtime/sema/resolve.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/resource_invalidation.go b/runtime/sema/resource_invalidation.go index e49661ba4d..48bcc697ff 100644 --- a/runtime/sema/resource_invalidation.go +++ b/runtime/sema/resource_invalidation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/resourceinfo.go b/runtime/sema/resourceinfo.go index c88a2cdbe6..d6fec762bd 100644 --- a/runtime/sema/resourceinfo.go +++ b/runtime/sema/resourceinfo.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/resourceinvalidationkind.go b/runtime/sema/resourceinvalidationkind.go index 982eaab6a5..40b0501ab3 100644 --- a/runtime/sema/resourceinvalidationkind.go +++ b/runtime/sema/resourceinvalidationkind.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/resources.go b/runtime/sema/resources.go index 5c28541dc3..5d9ff04e8f 100644 --- a/runtime/sema/resources.go +++ b/runtime/sema/resources.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/resources_test.go b/runtime/sema/resources_test.go index 747f5a2da1..68a7ea8e84 100644 --- a/runtime/sema/resources_test.go +++ b/runtime/sema/resources_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/return_info.go b/runtime/sema/return_info.go index 9622df0411..df76324836 100644 --- a/runtime/sema/return_info.go +++ b/runtime/sema/return_info.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/runtime_type_constructors.go b/runtime/sema/runtime_type_constructors.go index 893f5d6f5a..61ee817871 100644 --- a/runtime/sema/runtime_type_constructors.go +++ b/runtime/sema/runtime_type_constructors.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/simple_type.go b/runtime/sema/simple_type.go index 8d06ce31dc..7f2d7e362a 100644 --- a/runtime/sema/simple_type.go +++ b/runtime/sema/simple_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/storable_type.go b/runtime/sema/storable_type.go index 5e394806fe..234653e9de 100644 --- a/runtime/sema/storable_type.go +++ b/runtime/sema/storable_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/storage_capability_controller.gen.go b/runtime/sema/storage_capability_controller.gen.go index 199aae6971..585b815dbf 100644 --- a/runtime/sema/storage_capability_controller.gen.go +++ b/runtime/sema/storage_capability_controller.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/storage_capability_controller.go b/runtime/sema/storage_capability_controller.go index 8123053a17..ab1b594461 100644 --- a/runtime/sema/storage_capability_controller.go +++ b/runtime/sema/storage_capability_controller.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/string_type.go b/runtime/sema/string_type.go index c54325579c..70bb4122fd 100644 --- a/runtime/sema/string_type.go +++ b/runtime/sema/string_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/type.go b/runtime/sema/type.go index f8d59565a6..d13947f8f2 100644 --- a/runtime/sema/type.go +++ b/runtime/sema/type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -6946,6 +6946,7 @@ var _ ValueIndexableType = &ReferenceType{} var _ TypeIndexableType = &ReferenceType{} var UnauthorizedAccess Access = PrimitiveAccess(ast.AccessAll) +var InaccessibleAccess Access = PrimitiveAccess(ast.AccessNone) func NewReferenceType( memoryGauge common.MemoryGauge, @@ -9263,10 +9264,14 @@ func NewEntitlementRelation( } type EntitlementMapType struct { - Location common.Location - containerType Type - Identifier string - Relations []EntitlementRelation + Location common.Location + containerType Type + Identifier string + Relations []EntitlementRelation + + // Whether this map type includes the special identity relation, + // which maps every input to itself. The `Identity` mapping itself + // is defined as the empty map type that includes the identity relation IncludesIdentity bool resolveInclusions sync.Once } diff --git a/runtime/sema/type_names.go b/runtime/sema/type_names.go index f1581c5c03..4acce459a9 100644 --- a/runtime/sema/type_names.go +++ b/runtime/sema/type_names.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/type_tags.go b/runtime/sema/type_tags.go index 1cd45718fa..1990b0b9c9 100644 --- a/runtime/sema/type_tags.go +++ b/runtime/sema/type_tags.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/type_test.go b/runtime/sema/type_test.go index 3252a63e34..0f0bcf40cf 100644 --- a/runtime/sema/type_test.go +++ b/runtime/sema/type_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/typeannotationstate.go b/runtime/sema/typeannotationstate.go index a3e99464e5..2741fac6f7 100644 --- a/runtime/sema/typeannotationstate.go +++ b/runtime/sema/typeannotationstate.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/typecheckfunc.go b/runtime/sema/typecheckfunc.go index 5b50db9663..550d43f021 100644 --- a/runtime/sema/typecheckfunc.go +++ b/runtime/sema/typecheckfunc.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/variable.go b/runtime/sema/variable.go index 4314ba65f6..08bc1e328d 100644 --- a/runtime/sema/variable.go +++ b/runtime/sema/variable.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/variable_activations.go b/runtime/sema/variable_activations.go index 938d551f95..1f17a81f0a 100644 --- a/runtime/sema/variable_activations.go +++ b/runtime/sema/variable_activations.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/variable_activations_test.go b/runtime/sema/variable_activations_test.go index 4b57c14c5d..6494da2dcb 100644 --- a/runtime/sema/variable_activations_test.go +++ b/runtime/sema/variable_activations_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sema/void_type.go b/runtime/sema/void_type.go index 6594640738..f7311df94f 100644 --- a/runtime/sema/void_type.go +++ b/runtime/sema/void_type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/sharedstate_test.go b/runtime/sharedstate_test.go index 05dbe3ef65..243543432a 100644 --- a/runtime/sharedstate_test.go +++ b/runtime/sharedstate_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stackdepth.go b/runtime/stackdepth.go index ed62a781b0..f9e60c9880 100644 --- a/runtime/stackdepth.go +++ b/runtime/stackdepth.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/account.go b/runtime/stdlib/account.go index 546f005542..985a1aed06 100644 --- a/runtime/stdlib/account.go +++ b/runtime/stdlib/account.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -1642,6 +1642,7 @@ func changeAccountContracts( memoryGauge := invocation.Interpreter.SharedState.Config.MemoryGauge legacyUpgradeEnabled := invocation.Interpreter.SharedState.Config.LegacyContractUpgradeEnabled + contractUpdateTypeRemovalEnabled := invocation.Interpreter.SharedState.Config.ContractUpdateTypeRemovalEnabled var oldProgram *ast.Program @@ -1687,6 +1688,9 @@ func changeAccountContracts( program.Program, ) } + + validator = validator.WithTypeRemovalEnabled(contractUpdateTypeRemovalEnabled) + err = validator.Validate() handleContractUpdateError(err) } diff --git a/runtime/stdlib/account_test.go b/runtime/stdlib/account_test.go index cbff8ee3a0..0096b48133 100644 --- a/runtime/stdlib/account_test.go +++ b/runtime/stdlib/account_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/assert.go b/runtime/stdlib/assert.go index 9d2520a02b..f93ed0c294 100644 --- a/runtime/stdlib/assert.go +++ b/runtime/stdlib/assert.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/block.go b/runtime/stdlib/block.go index 6ce1999d23..cbe98ee234 100644 --- a/runtime/stdlib/block.go +++ b/runtime/stdlib/block.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/bls.gen.go b/runtime/stdlib/bls.gen.go index cde94eb341..610b74fd56 100644 --- a/runtime/stdlib/bls.gen.go +++ b/runtime/stdlib/bls.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/bls.go b/runtime/stdlib/bls.go index 2e70c1e140..8a9169da02 100644 --- a/runtime/stdlib/bls.go +++ b/runtime/stdlib/bls.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/builtin.go b/runtime/stdlib/builtin.go index 21df4a94e1..afc9662f24 100644 --- a/runtime/stdlib/builtin.go +++ b/runtime/stdlib/builtin.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/builtin_test.go b/runtime/stdlib/builtin_test.go index 827783c62c..3c92b1e385 100644 --- a/runtime/stdlib/builtin_test.go +++ b/runtime/stdlib/builtin_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validation_test.go b/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validation_test.go index d858f1e826..e1d1b1ee15 100644 --- a/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validation_test.go +++ b/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validator.go b/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validator.go index 867026a8d6..ee5706967b 100644 --- a/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validator.go +++ b/runtime/stdlib/cadence_v0.42_to_v1_contract_upgrade_validator.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -71,6 +71,10 @@ func NewCadenceV042ToV1ContractUpdateValidator( var _ UpdateValidator = &CadenceV042ToV1ContractUpdateValidator{} +func (validator *CadenceV042ToV1ContractUpdateValidator) isTypeRemovalEnabled() bool { + return validator.underlyingUpdateValidator.isTypeRemovalEnabled() +} + func (validator *CadenceV042ToV1ContractUpdateValidator) WithUserDefinedTypeChangeChecker( typeChangeCheckFunc func(oldTypeID common.TypeID, newTypeID common.TypeID) (checked, valid bool), ) *CadenceV042ToV1ContractUpdateValidator { @@ -78,6 +82,13 @@ func (validator *CadenceV042ToV1ContractUpdateValidator) WithUserDefinedTypeChan return validator } +func (validator *CadenceV042ToV1ContractUpdateValidator) WithTypeRemovalEnabled( + enabled bool, +) UpdateValidator { + validator.underlyingUpdateValidator.WithTypeRemovalEnabled(enabled) + return validator +} + func (validator *CadenceV042ToV1ContractUpdateValidator) getCurrentDeclaration() ast.Declaration { return validator.underlyingUpdateValidator.getCurrentDeclaration() } diff --git a/runtime/stdlib/contract_update_validation.go b/runtime/stdlib/contract_update_validation.go index a11df15f79..cce723d63a 100644 --- a/runtime/stdlib/contract_update_validation.go +++ b/runtime/stdlib/contract_update_validation.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -50,6 +50,9 @@ type UpdateValidator interface { oldDeclaration ast.Declaration, newDeclaration ast.Declaration, ) bool + + isTypeRemovalEnabled() bool + WithTypeRemovalEnabled(enabled bool) UpdateValidator } type checkConformanceFunc func( @@ -68,6 +71,7 @@ type ContractUpdateValidator struct { importLocations map[ast.Identifier]common.Location accountContractNamesProvider AccountContractNamesProvider errors []error + typeRemovalEnabled bool } // ContractUpdateValidator should implement ast.TypeEqualityChecker @@ -95,6 +99,15 @@ func NewContractUpdateValidator( } } +func (validator *ContractUpdateValidator) isTypeRemovalEnabled() bool { + return validator.typeRemovalEnabled +} + +func (validator *ContractUpdateValidator) WithTypeRemovalEnabled(enabled bool) UpdateValidator { + validator.typeRemovalEnabled = enabled + return validator +} + func (validator *ContractUpdateValidator) getCurrentDeclaration() ast.Declaration { return validator.currentDecl } @@ -354,10 +367,12 @@ func (validator *ContractUpdateValidator) checkNestedDeclarationRemoval( return } - // OK to remove a type if it is included in a #removedType pragma, and it is not an interface - if removedTypes.Contains(nestedDeclaration.DeclarationIdentifier().Identifier) && - !declarationKind.IsInterfaceDeclaration() { - return + if validator.typeRemovalEnabled { + // OK to remove a type if it is included in a #removedType pragma, and it is not an interface + if removedTypes.Contains(nestedDeclaration.DeclarationIdentifier().Identifier) && + !declarationKind.IsInterfaceDeclaration() { + return + } } validator.report(&MissingDeclarationError{ @@ -383,6 +398,10 @@ func checkTypeNotRemoved( newDeclaration ast.Declaration, removedTypes *orderedmap.OrderedMap[string, struct{}], ) { + if !validator.isTypeRemovalEnabled() { + return + } + if removedTypes.Contains(newDeclaration.DeclarationIdentifier().Identifier) { validator.report(&UseOfRemovedTypeError{ Declaration: newDeclaration, @@ -398,19 +417,22 @@ func checkNestedDeclarations( checkConformance checkConformanceFunc, ) { - // process pragmas first, as they determine whether types can later be removed - oldRemovedTypes := collectRemovedTypePragmas(validator, oldDeclaration.DeclarationMembers().Pragmas()) - removedTypes := collectRemovedTypePragmas(validator, newDeclaration.DeclarationMembers().Pragmas()) - - // #typeRemoval pragmas cannot be removed, so any that appear in the old program must appear in the new program - // they can however, be added, so use the new program's type removals for the purposes of checking the upgrade - oldRemovedTypes.Foreach(func(oldRemovedType string, _ struct{}) { - if !removedTypes.Contains(oldRemovedType) { - validator.report(&TypeRemovalPragmaRemovalError{ - RemovedType: oldRemovedType, - }) - } - }) + var removedTypes *orderedmap.OrderedMap[string, struct{}] + if validator.isTypeRemovalEnabled() { + // process pragmas first, as they determine whether types can later be removed + oldRemovedTypes := collectRemovedTypePragmas(validator, oldDeclaration.DeclarationMembers().Pragmas()) + removedTypes = collectRemovedTypePragmas(validator, newDeclaration.DeclarationMembers().Pragmas()) + + // #typeRemoval pragmas cannot be removed, so any that appear in the old program must appear in the new program + // they can however, be added, so use the new program's type removals for the purposes of checking the upgrade + oldRemovedTypes.Foreach(func(oldRemovedType string, _ struct{}) { + if !removedTypes.Contains(oldRemovedType) { + validator.report(&TypeRemovalPragmaRemovalError{ + RemovedType: oldRemovedType, + }) + } + }) + } oldNominalTypeDecls := getNestedNominalTypeDecls(oldDeclaration) diff --git a/runtime/stdlib/contracts/crypto.go b/runtime/stdlib/contracts/crypto.go index 7d16f8b25f..a64180f160 100644 --- a/runtime/stdlib/contracts/crypto.go +++ b/runtime/stdlib/contracts/crypto.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/contracts/test.go b/runtime/stdlib/contracts/test.go index 74b6b0446d..1e2c4dcdc8 100644 --- a/runtime/stdlib/contracts/test.go +++ b/runtime/stdlib/contracts/test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/crypto.go b/runtime/stdlib/crypto.go index 6be9f99631..49d68c4984 100644 --- a/runtime/stdlib/crypto.go +++ b/runtime/stdlib/crypto.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/crypto_test.go b/runtime/stdlib/crypto_test.go index 2e74ce5b4f..ff2dca5cf4 100644 --- a/runtime/stdlib/crypto_test.go +++ b/runtime/stdlib/crypto_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/flow.go b/runtime/stdlib/flow.go index 6799dd50f9..b7d34e42d1 100644 --- a/runtime/stdlib/flow.go +++ b/runtime/stdlib/flow.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/flow_test.go b/runtime/stdlib/flow_test.go index e57c8737dc..7075178e89 100644 --- a/runtime/stdlib/flow_test.go +++ b/runtime/stdlib/flow_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/functions.go b/runtime/stdlib/functions.go index c4f16700f4..c9e1f5295d 100644 --- a/runtime/stdlib/functions.go +++ b/runtime/stdlib/functions.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/hashalgorithm.go b/runtime/stdlib/hashalgorithm.go index df4a0c2177..57679df65e 100644 --- a/runtime/stdlib/hashalgorithm.go +++ b/runtime/stdlib/hashalgorithm.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/log.go b/runtime/stdlib/log.go index f41c64eb78..50294e8091 100644 --- a/runtime/stdlib/log.go +++ b/runtime/stdlib/log.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/panic.go b/runtime/stdlib/panic.go index 9d67cb5c55..7ad7aa2168 100644 --- a/runtime/stdlib/panic.go +++ b/runtime/stdlib/panic.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/publickey.go b/runtime/stdlib/publickey.go index 6e814f87df..584e5c11bb 100644 --- a/runtime/stdlib/publickey.go +++ b/runtime/stdlib/publickey.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/random.go b/runtime/stdlib/random.go index bbc52fb14e..6375384c7e 100644 --- a/runtime/stdlib/random.go +++ b/runtime/stdlib/random.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/random_test.go b/runtime/stdlib/random_test.go index 1f2c0af529..efa6078e9d 100644 --- a/runtime/stdlib/random_test.go +++ b/runtime/stdlib/random_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/range.go b/runtime/stdlib/range.go index 8a97b41818..fe548f0c5e 100644 --- a/runtime/stdlib/range.go +++ b/runtime/stdlib/range.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/rlp.gen.go b/runtime/stdlib/rlp.gen.go index 1fdf0f7895..f14f28b159 100644 --- a/runtime/stdlib/rlp.gen.go +++ b/runtime/stdlib/rlp.gen.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/rlp.go b/runtime/stdlib/rlp.go index a8d8195f62..5157a7ee42 100644 --- a/runtime/stdlib/rlp.go +++ b/runtime/stdlib/rlp.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/rlp/rlp.go b/runtime/stdlib/rlp/rlp.go index bbdfc16880..976cc640fb 100644 --- a/runtime/stdlib/rlp/rlp.go +++ b/runtime/stdlib/rlp/rlp.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/rlp/rlp_test.go b/runtime/stdlib/rlp/rlp_test.go index dbd0442ca5..fbc90556ad 100644 --- a/runtime/stdlib/rlp/rlp_test.go +++ b/runtime/stdlib/rlp/rlp_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/signaturealgorithm.go b/runtime/stdlib/signaturealgorithm.go index fa475433ce..23426a1ad1 100644 --- a/runtime/stdlib/signaturealgorithm.go +++ b/runtime/stdlib/signaturealgorithm.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/test-framework.go b/runtime/stdlib/test-framework.go index 8fc3db0753..07e88a766d 100644 --- a/runtime/stdlib/test-framework.go +++ b/runtime/stdlib/test-framework.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/test.go b/runtime/stdlib/test.go index ac2978c6bf..eb65c13985 100644 --- a/runtime/stdlib/test.go +++ b/runtime/stdlib/test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/test_contract.go b/runtime/stdlib/test_contract.go index 8ecc148847..8499b45bb9 100644 --- a/runtime/stdlib/test_contract.go +++ b/runtime/stdlib/test_contract.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/test_emulatorbackend.go b/runtime/stdlib/test_emulatorbackend.go index a1b681d885..4a6199fb80 100644 --- a/runtime/stdlib/test_emulatorbackend.go +++ b/runtime/stdlib/test_emulatorbackend.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/test_test.go b/runtime/stdlib/test_test.go index ce51d534e1..c34232df05 100644 --- a/runtime/stdlib/test_test.go +++ b/runtime/stdlib/test_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/type-comparator.go b/runtime/stdlib/type-comparator.go index 4e482e4fd3..53cf16e746 100644 --- a/runtime/stdlib/type-comparator.go +++ b/runtime/stdlib/type-comparator.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/types.go b/runtime/stdlib/types.go index 0664c76275..7687e240b8 100644 --- a/runtime/stdlib/types.go +++ b/runtime/stdlib/types.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/stdlib/value.go b/runtime/stdlib/value.go index ca31a3748f..507dbbbe97 100644 --- a/runtime/stdlib/value.go +++ b/runtime/stdlib/value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/storage.go b/runtime/storage.go index b334e0d02e..a76c5f0417 100644 --- a/runtime/storage.go +++ b/runtime/storage.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/storage_test.go b/runtime/storage_test.go index 17fb476a52..d89bbdac99 100644 --- a/runtime/storage_test.go +++ b/runtime/storage_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/access_test.go b/runtime/tests/checker/access_test.go index e91c640d3b..12205133e3 100644 --- a/runtime/tests/checker/access_test.go +++ b/runtime/tests/checker/access_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/account_test.go b/runtime/tests/checker/account_test.go index bb2c43dfb0..870e9f6731 100644 --- a/runtime/tests/checker/account_test.go +++ b/runtime/tests/checker/account_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/any_test.go b/runtime/tests/checker/any_test.go index fe23535774..e7d44fac46 100644 --- a/runtime/tests/checker/any_test.go +++ b/runtime/tests/checker/any_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/arrays_dictionaries_test.go b/runtime/tests/checker/arrays_dictionaries_test.go index 504c7b5fad..ce98e677f7 100644 --- a/runtime/tests/checker/arrays_dictionaries_test.go +++ b/runtime/tests/checker/arrays_dictionaries_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/assert_test.go b/runtime/tests/checker/assert_test.go index 4cc699cb05..664ff49ced 100644 --- a/runtime/tests/checker/assert_test.go +++ b/runtime/tests/checker/assert_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/assignment_test.go b/runtime/tests/checker/assignment_test.go index 5d3b93b2da..c26f4556a0 100644 --- a/runtime/tests/checker/assignment_test.go +++ b/runtime/tests/checker/assignment_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/attachments_test.go b/runtime/tests/checker/attachments_test.go index c49b7e839f..766e075e1d 100644 --- a/runtime/tests/checker/attachments_test.go +++ b/runtime/tests/checker/attachments_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/boolean_test.go b/runtime/tests/checker/boolean_test.go index 6714d4c0db..a6118fc174 100644 --- a/runtime/tests/checker/boolean_test.go +++ b/runtime/tests/checker/boolean_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/builtinfunctions_test.go b/runtime/tests/checker/builtinfunctions_test.go index 895e023fdb..c2ca8e39c6 100644 --- a/runtime/tests/checker/builtinfunctions_test.go +++ b/runtime/tests/checker/builtinfunctions_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/capability_controller_test.go b/runtime/tests/checker/capability_controller_test.go index ee018bdeed..69418f7cdb 100644 --- a/runtime/tests/checker/capability_controller_test.go +++ b/runtime/tests/checker/capability_controller_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/capability_test.go b/runtime/tests/checker/capability_test.go index 35b6fc5b73..a8899d567d 100644 --- a/runtime/tests/checker/capability_test.go +++ b/runtime/tests/checker/capability_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/casting_test.go b/runtime/tests/checker/casting_test.go index ac38c74f1b..dfdea7f7f7 100644 --- a/runtime/tests/checker/casting_test.go +++ b/runtime/tests/checker/casting_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/character_test.go b/runtime/tests/checker/character_test.go index 8ede86e0c6..66bf35eb30 100644 --- a/runtime/tests/checker/character_test.go +++ b/runtime/tests/checker/character_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/composite_test.go b/runtime/tests/checker/composite_test.go index af440e83e9..fe4d0c5e5a 100644 --- a/runtime/tests/checker/composite_test.go +++ b/runtime/tests/checker/composite_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/conditional_test.go b/runtime/tests/checker/conditional_test.go index e44b880188..6078d12fd0 100644 --- a/runtime/tests/checker/conditional_test.go +++ b/runtime/tests/checker/conditional_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/conditions_test.go b/runtime/tests/checker/conditions_test.go index 7316d84d53..74979ccc91 100644 --- a/runtime/tests/checker/conditions_test.go +++ b/runtime/tests/checker/conditions_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/conformance_test.go b/runtime/tests/checker/conformance_test.go index ea591c5379..74a395ec33 100644 --- a/runtime/tests/checker/conformance_test.go +++ b/runtime/tests/checker/conformance_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/contract_test.go b/runtime/tests/checker/contract_test.go index c56026e0fc..0a2edbcb0d 100644 --- a/runtime/tests/checker/contract_test.go +++ b/runtime/tests/checker/contract_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/crypto_test.go b/runtime/tests/checker/crypto_test.go index f512362247..1e3764c060 100644 --- a/runtime/tests/checker/crypto_test.go +++ b/runtime/tests/checker/crypto_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/declaration_test.go b/runtime/tests/checker/declaration_test.go index ba6995e3c4..6cc48e17f1 100644 --- a/runtime/tests/checker/declaration_test.go +++ b/runtime/tests/checker/declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/dictionary_test.go b/runtime/tests/checker/dictionary_test.go index 5b8637e958..086315d76c 100644 --- a/runtime/tests/checker/dictionary_test.go +++ b/runtime/tests/checker/dictionary_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/dynamic_casting_test.go b/runtime/tests/checker/dynamic_casting_test.go index 1d15204a9f..14d0cd9f4c 100644 --- a/runtime/tests/checker/dynamic_casting_test.go +++ b/runtime/tests/checker/dynamic_casting_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/entitlements_test.go b/runtime/tests/checker/entitlements_test.go index d53685633e..fb2a5f18dd 100644 --- a/runtime/tests/checker/entitlements_test.go +++ b/runtime/tests/checker/entitlements_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -6080,7 +6080,7 @@ func TestCheckIdentityMapping(t *testing.T) { init() { let x = X() - self.x1 = &x as auth(A, B, C) &X + self.x1 = &x self.x2 = nil } } @@ -6101,6 +6101,68 @@ func TestCheckIdentityMapping(t *testing.T) { assert.NoError(t, err) }) + t.Run("owned value, with insufficient entitlements", func(t *testing.T) { + t.Parallel() + + _, err := ParseAndCheck(t, ` + entitlement A + entitlement B + entitlement C + + struct X { + access(A | B) var s: String + + init() { + self.s = "hello" + } + + access(C) fun foo() {} + } + + struct Y { + + // Reference + access(mapping Identity) var x1: auth(mapping Identity) &X + + // Optional reference + access(mapping Identity) var x2: auth(mapping Identity) &X? + + // Function returning a reference + access(mapping Identity) fun getX(): auth(mapping Identity) &X { + let x = X() + return &x as auth(mapping Identity) &X + } + + // Function returning an optional reference + access(mapping Identity) fun getOptionalX(): auth(mapping Identity) &X? { + let x: X? = X() + return &x as auth(mapping Identity) &X? + } + + init() { + let x = X() + self.x1 = &x as auth(A, B, C) &X + self.x2 = nil + } + } + + fun main() { + let y = Y() + + let ref1: auth(A, B, C) &X = y.x1 + + let ref2: auth(A, B, C) &X? = y.x2 + + let ref3: auth(A, B, C) &X = y.getX() + + let ref4: auth(A, B, C) &X? = y.getOptionalX() + } + `) + + errors := RequireCheckerErrors(t, err, 1) + require.IsType(t, &sema.TypeMismatchError{}, errors[0]) + }) + t.Run("owned value, with entitlements, function typed field", func(t *testing.T) { t.Parallel() @@ -6191,6 +6253,83 @@ func TestCheckIdentityMapping(t *testing.T) { // available for the reference typed field. require.Equal(t, 0, auth.Entitlements.Len()) }) + + t.Run("initializer", func(t *testing.T) { + t.Parallel() + + _, err := ParseAndCheck(t, ` + entitlement X + + struct S { + access(mapping Identity) let x: auth(mapping Identity) &String + init(_ str: auth(X) &String) { + self.x = str // this should not be possible, as Identity may grant any entitlement, not just X + } + } + `) + + errors := RequireCheckerErrors(t, err, 1) + var typeMismatchError *sema.TypeMismatchError + require.ErrorAs(t, errors[0], &typeMismatchError) + }) + + t.Run("initializer with owned value", func(t *testing.T) { + t.Parallel() + + _, err := ParseAndCheck(t, ` + entitlement X + + struct S { + access(mapping Identity) let x: [String] + init(_ str: [String]) { + self.x = str // this should be possible, as the string array is owned here + } + } + `) + + require.NoError(t, err) + }) + + t.Run("initializer with inferred reference type", func(t *testing.T) { + t.Parallel() + + _, err := ParseAndCheck(t, ` + entitlement X + + struct S { + access(mapping Identity) let x: auth(mapping Identity) &String + init(_ str: String) { + self.x = &str // this should be possible, as we own the string and thus inference is able to give the &str + // reference the appropriate type + } + } + `) + + require.NoError(t, err) + }) + + t.Run("initializer with included Identity", func(t *testing.T) { + t.Parallel() + + _, err := ParseAndCheck(t, ` + entitlement X + + entitlement mapping M { + include Identity + } + + struct S { + access(mapping M) let x: auth(mapping M) &String + init(_ str: auth(X) &String) { + self.x = str // this should not be possible, as Identity may grant any entitlement, not just X + } + } + `) + + errors := RequireCheckerErrors(t, err, 1) + var typeMismatchError *sema.TypeMismatchError + require.ErrorAs(t, errors[0], &typeMismatchError) + }) } func TestCheckMappingDefinitionWithInclude(t *testing.T) { @@ -7172,6 +7311,54 @@ func TestInterpretMappingEscalation(t *testing.T) { require.IsType(t, &sema.TypeMismatchError{}, errors[0]) }) + t.Run("escalate", func(t *testing.T) { + t.Parallel() + + _, err := ParseAndCheck(t, ` + entitlement X + entitlement Y + entitlement Z + + entitlement mapping M { + X -> Z + X -> Y + } + + access(all) struct Attacker { + access(mapping Identity) var s: auth(mapping Identity) &AnyStruct + + init(_ a: auth(Z) &AnyStruct){ + self.s = a + } + } + + struct Nested { + access(X | Y) fun foo() {} + access(X | Z) fun bar() {} + } + + struct Attackee { + access(mapping M) let nested: Nested + init() { + self.nested = Nested() + } + } + + fun main(): Void { + let attackee = Attackee() + let attackeeRef = &attackee as auth(Z) &Attackee + let attacker = Attacker(attackeeRef) + let attackerRef = &attacker as auth(X) &Attacker + let exploit: auth(X) &Attackee = attackerRef.s as! auth(X) &Attackee + exploit.nested.foo() + } + `) + + errors := RequireCheckerErrors(t, err, 1) + require.IsType(t, &sema.TypeMismatchError{}, errors[0]) + + }) + t.Run("field assign", func(t *testing.T) { t.Parallel() diff --git a/runtime/tests/checker/entrypoint_test.go b/runtime/tests/checker/entrypoint_test.go index 9fb5798b27..08f76c8f19 100644 --- a/runtime/tests/checker/entrypoint_test.go +++ b/runtime/tests/checker/entrypoint_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/enum_test.go b/runtime/tests/checker/enum_test.go index 6c8bab19cf..fd1ee6b896 100644 --- a/runtime/tests/checker/enum_test.go +++ b/runtime/tests/checker/enum_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/errors_test.go b/runtime/tests/checker/errors_test.go index 8615f5b110..968a42a91d 100644 --- a/runtime/tests/checker/errors_test.go +++ b/runtime/tests/checker/errors_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/events_test.go b/runtime/tests/checker/events_test.go index 076da567e8..d4e34f3e99 100644 --- a/runtime/tests/checker/events_test.go +++ b/runtime/tests/checker/events_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/external_mutation_test.go b/runtime/tests/checker/external_mutation_test.go index 71ea9fe869..201dfd9f94 100644 --- a/runtime/tests/checker/external_mutation_test.go +++ b/runtime/tests/checker/external_mutation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/fixedpoint_test.go b/runtime/tests/checker/fixedpoint_test.go index 18d1be7708..99b0ed5cf0 100644 --- a/runtime/tests/checker/fixedpoint_test.go +++ b/runtime/tests/checker/fixedpoint_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/for_test.go b/runtime/tests/checker/for_test.go index 63db43bf2e..0806412ada 100644 --- a/runtime/tests/checker/for_test.go +++ b/runtime/tests/checker/for_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/force_test.go b/runtime/tests/checker/force_test.go index 96a147f351..fa562cd9b1 100644 --- a/runtime/tests/checker/force_test.go +++ b/runtime/tests/checker/force_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/function_expression_test.go b/runtime/tests/checker/function_expression_test.go index a8aeccb45c..285746c532 100644 --- a/runtime/tests/checker/function_expression_test.go +++ b/runtime/tests/checker/function_expression_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/function_test.go b/runtime/tests/checker/function_test.go index 5e1facb8cb..568c20c87f 100644 --- a/runtime/tests/checker/function_test.go +++ b/runtime/tests/checker/function_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/genericfunction_test.go b/runtime/tests/checker/genericfunction_test.go index 22559c9acf..ce52b291da 100644 --- a/runtime/tests/checker/genericfunction_test.go +++ b/runtime/tests/checker/genericfunction_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/hashable_struct_test.go b/runtime/tests/checker/hashable_struct_test.go index 954997a4b4..4d5d69e999 100644 --- a/runtime/tests/checker/hashable_struct_test.go +++ b/runtime/tests/checker/hashable_struct_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/if_test.go b/runtime/tests/checker/if_test.go index b399aa51bb..a231e71fbb 100644 --- a/runtime/tests/checker/if_test.go +++ b/runtime/tests/checker/if_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/import_test.go b/runtime/tests/checker/import_test.go index b012968957..c98c3bec1c 100644 --- a/runtime/tests/checker/import_test.go +++ b/runtime/tests/checker/import_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/indexing_test.go b/runtime/tests/checker/indexing_test.go index 8552054395..e2501629e2 100644 --- a/runtime/tests/checker/indexing_test.go +++ b/runtime/tests/checker/indexing_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/initialization_test.go b/runtime/tests/checker/initialization_test.go index d62ef838e1..e660f7ef86 100644 --- a/runtime/tests/checker/initialization_test.go +++ b/runtime/tests/checker/initialization_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/integer_test.go b/runtime/tests/checker/integer_test.go index 7051db107b..ea5063a93f 100644 --- a/runtime/tests/checker/integer_test.go +++ b/runtime/tests/checker/integer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/interface_test.go b/runtime/tests/checker/interface_test.go index a1c729f599..36d99a24e6 100644 --- a/runtime/tests/checker/interface_test.go +++ b/runtime/tests/checker/interface_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/intersection_test.go b/runtime/tests/checker/intersection_test.go index 7086af4ae3..df007b5b4d 100644 --- a/runtime/tests/checker/intersection_test.go +++ b/runtime/tests/checker/intersection_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/invalid_test.go b/runtime/tests/checker/invalid_test.go index 5d1616ca4b..42fd6953f8 100644 --- a/runtime/tests/checker/invalid_test.go +++ b/runtime/tests/checker/invalid_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/invocation_test.go b/runtime/tests/checker/invocation_test.go index dd433d3462..b55d20d668 100644 --- a/runtime/tests/checker/invocation_test.go +++ b/runtime/tests/checker/invocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/member_test.go b/runtime/tests/checker/member_test.go index 2452876459..f5211a7cc5 100644 --- a/runtime/tests/checker/member_test.go +++ b/runtime/tests/checker/member_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/metatype_test.go b/runtime/tests/checker/metatype_test.go index 44f65b4b6d..53e176d9ae 100644 --- a/runtime/tests/checker/metatype_test.go +++ b/runtime/tests/checker/metatype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/move_test.go b/runtime/tests/checker/move_test.go index bb2391cdd3..29aa214ce4 100644 --- a/runtime/tests/checker/move_test.go +++ b/runtime/tests/checker/move_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/nesting_test.go b/runtime/tests/checker/nesting_test.go index c56279b7e8..fda0d70f50 100644 --- a/runtime/tests/checker/nesting_test.go +++ b/runtime/tests/checker/nesting_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/never_test.go b/runtime/tests/checker/never_test.go index 3216389d7b..bdc417e902 100644 --- a/runtime/tests/checker/never_test.go +++ b/runtime/tests/checker/never_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/nft_test.go b/runtime/tests/checker/nft_test.go index da06b753ca..41374e7903 100644 --- a/runtime/tests/checker/nft_test.go +++ b/runtime/tests/checker/nft_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/nil_coalescing_test.go b/runtime/tests/checker/nil_coalescing_test.go index 98105b74fe..ef942125f3 100644 --- a/runtime/tests/checker/nil_coalescing_test.go +++ b/runtime/tests/checker/nil_coalescing_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/occurrences_test.go b/runtime/tests/checker/occurrences_test.go index e034f774ee..f01f96ebd3 100644 --- a/runtime/tests/checker/occurrences_test.go +++ b/runtime/tests/checker/occurrences_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/operations_test.go b/runtime/tests/checker/operations_test.go index 3781d18d4b..d9255bbcc9 100644 --- a/runtime/tests/checker/operations_test.go +++ b/runtime/tests/checker/operations_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/optional_test.go b/runtime/tests/checker/optional_test.go index 91d3bb9688..db377c8120 100644 --- a/runtime/tests/checker/optional_test.go +++ b/runtime/tests/checker/optional_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/overloading_test.go b/runtime/tests/checker/overloading_test.go index d7172edfc2..70b0ebe481 100644 --- a/runtime/tests/checker/overloading_test.go +++ b/runtime/tests/checker/overloading_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/path_test.go b/runtime/tests/checker/path_test.go index b17a6296f1..197daeb008 100644 --- a/runtime/tests/checker/path_test.go +++ b/runtime/tests/checker/path_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/pragma_test.go b/runtime/tests/checker/pragma_test.go index 169927f819..00200cb652 100644 --- a/runtime/tests/checker/pragma_test.go +++ b/runtime/tests/checker/pragma_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/predeclaredvalues_test.go b/runtime/tests/checker/predeclaredvalues_test.go index 324a2bf997..bd1691f16a 100644 --- a/runtime/tests/checker/predeclaredvalues_test.go +++ b/runtime/tests/checker/predeclaredvalues_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/purity_test.go b/runtime/tests/checker/purity_test.go index 3cb43d7214..517ed0c1d8 100644 --- a/runtime/tests/checker/purity_test.go +++ b/runtime/tests/checker/purity_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/range_test.go b/runtime/tests/checker/range_test.go index 44db25575c..59d346d7e8 100644 --- a/runtime/tests/checker/range_test.go +++ b/runtime/tests/checker/range_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/range_value_test.go b/runtime/tests/checker/range_value_test.go index b7a9aaa526..b80be3b453 100644 --- a/runtime/tests/checker/range_value_test.go +++ b/runtime/tests/checker/range_value_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/reference_test.go b/runtime/tests/checker/reference_test.go index b0b42a09fe..446a966403 100644 --- a/runtime/tests/checker/reference_test.go +++ b/runtime/tests/checker/reference_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/resources_test.go b/runtime/tests/checker/resources_test.go index b548475ab7..5fa41d352d 100644 --- a/runtime/tests/checker/resources_test.go +++ b/runtime/tests/checker/resources_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/return_test.go b/runtime/tests/checker/return_test.go index 8feb204fbb..61607904e4 100644 --- a/runtime/tests/checker/return_test.go +++ b/runtime/tests/checker/return_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/rlp_test.go b/runtime/tests/checker/rlp_test.go index 9b2c3950ac..0790fb577e 100644 --- a/runtime/tests/checker/rlp_test.go +++ b/runtime/tests/checker/rlp_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/runtimetype_test.go b/runtime/tests/checker/runtimetype_test.go index 4b5b78e605..10ec8aaf1a 100644 --- a/runtime/tests/checker/runtimetype_test.go +++ b/runtime/tests/checker/runtimetype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/storable_test.go b/runtime/tests/checker/storable_test.go index 58b0f5cfc1..d7a283217c 100644 --- a/runtime/tests/checker/storable_test.go +++ b/runtime/tests/checker/storable_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/string_test.go b/runtime/tests/checker/string_test.go index 828cb73276..1291a66441 100644 --- a/runtime/tests/checker/string_test.go +++ b/runtime/tests/checker/string_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/swap_test.go b/runtime/tests/checker/swap_test.go index 41ce4c0b38..0bf6a73215 100644 --- a/runtime/tests/checker/swap_test.go +++ b/runtime/tests/checker/swap_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/switch_test.go b/runtime/tests/checker/switch_test.go index d265f2d76a..7300beecf0 100644 --- a/runtime/tests/checker/switch_test.go +++ b/runtime/tests/checker/switch_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/transactions_test.go b/runtime/tests/checker/transactions_test.go index c36b1a560d..7bd8642e05 100644 --- a/runtime/tests/checker/transactions_test.go +++ b/runtime/tests/checker/transactions_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/type_inference_test.go b/runtime/tests/checker/type_inference_test.go index d8b2298cb7..cf191c2879 100644 --- a/runtime/tests/checker/type_inference_test.go +++ b/runtime/tests/checker/type_inference_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/typeargument_test.go b/runtime/tests/checker/typeargument_test.go index 060c983961..c76d58eade 100644 --- a/runtime/tests/checker/typeargument_test.go +++ b/runtime/tests/checker/typeargument_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/utils.go b/runtime/tests/checker/utils.go index 7d12072002..9849a13d66 100644 --- a/runtime/tests/checker/utils.go +++ b/runtime/tests/checker/utils.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/utils_test.go b/runtime/tests/checker/utils_test.go index 1c7a63804b..d6ce4398d8 100644 --- a/runtime/tests/checker/utils_test.go +++ b/runtime/tests/checker/utils_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/checker/while_test.go b/runtime/tests/checker/while_test.go index af7e2c3e47..cf3864ce6f 100644 --- a/runtime/tests/checker/while_test.go +++ b/runtime/tests/checker/while_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/errors_test.go b/runtime/tests/errors_test.go index 8539db090e..3fd9a588c7 100644 --- a/runtime/tests/errors_test.go +++ b/runtime/tests/errors_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/examples/examples.go b/runtime/tests/examples/examples.go index 855b9e5ccb..7a96b68337 100644 --- a/runtime/tests/examples/examples.go +++ b/runtime/tests/examples/examples.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/fuzz/crashers_test.go b/runtime/tests/fuzz/crashers_test.go index c24a5cff48..b52a889d73 100644 --- a/runtime/tests/fuzz/crashers_test.go +++ b/runtime/tests/fuzz/crashers_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/account_test.go b/runtime/tests/interpreter/account_test.go index 9ac04576c8..163dee590b 100644 --- a/runtime/tests/interpreter/account_test.go +++ b/runtime/tests/interpreter/account_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/arithmetic_test.go b/runtime/tests/interpreter/arithmetic_test.go index b9cbed3470..c863831c59 100644 --- a/runtime/tests/interpreter/arithmetic_test.go +++ b/runtime/tests/interpreter/arithmetic_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/array_test.go b/runtime/tests/interpreter/array_test.go index 72f3a871ad..2617403b0f 100644 --- a/runtime/tests/interpreter/array_test.go +++ b/runtime/tests/interpreter/array_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/attachments_test.go b/runtime/tests/interpreter/attachments_test.go index d4d905e0e6..500699266b 100644 --- a/runtime/tests/interpreter/attachments_test.go +++ b/runtime/tests/interpreter/attachments_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright 2019-2022 Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/bitwise_test.go b/runtime/tests/interpreter/bitwise_test.go index 97352f35a1..8c71f7fda5 100644 --- a/runtime/tests/interpreter/bitwise_test.go +++ b/runtime/tests/interpreter/bitwise_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/builtinfunctions_test.go b/runtime/tests/interpreter/builtinfunctions_test.go index 0dd4b1592c..00baa3364b 100644 --- a/runtime/tests/interpreter/builtinfunctions_test.go +++ b/runtime/tests/interpreter/builtinfunctions_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/character_test.go b/runtime/tests/interpreter/character_test.go index e291629417..08eed89630 100644 --- a/runtime/tests/interpreter/character_test.go +++ b/runtime/tests/interpreter/character_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/composite_value_test.go b/runtime/tests/interpreter/composite_value_test.go index 21ed849bb9..4a4bc949db 100644 --- a/runtime/tests/interpreter/composite_value_test.go +++ b/runtime/tests/interpreter/composite_value_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/condition_test.go b/runtime/tests/interpreter/condition_test.go index 0e9329697d..0d17d9d275 100644 --- a/runtime/tests/interpreter/condition_test.go +++ b/runtime/tests/interpreter/condition_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/container_mutation_test.go b/runtime/tests/interpreter/container_mutation_test.go index 2e5711fdaa..cb3d6d42c1 100644 --- a/runtime/tests/interpreter/container_mutation_test.go +++ b/runtime/tests/interpreter/container_mutation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/contract_test.go b/runtime/tests/interpreter/contract_test.go index 720ce3e12a..f22f3ae89d 100644 --- a/runtime/tests/interpreter/contract_test.go +++ b/runtime/tests/interpreter/contract_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/declaration_test.go b/runtime/tests/interpreter/declaration_test.go index 3587912e75..3bc3cac4c4 100644 --- a/runtime/tests/interpreter/declaration_test.go +++ b/runtime/tests/interpreter/declaration_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/dictionary_test.go b/runtime/tests/interpreter/dictionary_test.go index 8186aae9ec..553844fdc8 100644 --- a/runtime/tests/interpreter/dictionary_test.go +++ b/runtime/tests/interpreter/dictionary_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/dynamic_casting_test.go b/runtime/tests/interpreter/dynamic_casting_test.go index 3b1a0ea55b..933e4f12f8 100644 --- a/runtime/tests/interpreter/dynamic_casting_test.go +++ b/runtime/tests/interpreter/dynamic_casting_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/entitlements_test.go b/runtime/tests/interpreter/entitlements_test.go index 4e5ef427c6..a7a88d0aba 100644 --- a/runtime/tests/interpreter/entitlements_test.go +++ b/runtime/tests/interpreter/entitlements_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -3024,7 +3024,7 @@ func TestInterpretIdentityMapping(t *testing.T) { init() { let x = X() - self.x1 = &x as auth(A, B, C) &X + self.x1 = &x self.x2 = nil } } diff --git a/runtime/tests/interpreter/enum_test.go b/runtime/tests/interpreter/enum_test.go index 15f97b585b..09e1bbc9bf 100644 --- a/runtime/tests/interpreter/enum_test.go +++ b/runtime/tests/interpreter/enum_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/equality_test.go b/runtime/tests/interpreter/equality_test.go index e9e0ee7730..a76a49152a 100644 --- a/runtime/tests/interpreter/equality_test.go +++ b/runtime/tests/interpreter/equality_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/fixedpoint_test.go b/runtime/tests/interpreter/fixedpoint_test.go index 171da5803b..86ff3b70ba 100644 --- a/runtime/tests/interpreter/fixedpoint_test.go +++ b/runtime/tests/interpreter/fixedpoint_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/for_test.go b/runtime/tests/interpreter/for_test.go index 3d9b94d185..2ee6c3145c 100644 --- a/runtime/tests/interpreter/for_test.go +++ b/runtime/tests/interpreter/for_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/function_test.go b/runtime/tests/interpreter/function_test.go index 5b04cc21bc..5e05d7e577 100644 --- a/runtime/tests/interpreter/function_test.go +++ b/runtime/tests/interpreter/function_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/if_test.go b/runtime/tests/interpreter/if_test.go index 1a0e264693..e689067ccb 100644 --- a/runtime/tests/interpreter/if_test.go +++ b/runtime/tests/interpreter/if_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/import_test.go b/runtime/tests/interpreter/import_test.go index 85a7ee0706..b7cfc4681e 100644 --- a/runtime/tests/interpreter/import_test.go +++ b/runtime/tests/interpreter/import_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/indexing_test.go b/runtime/tests/interpreter/indexing_test.go index c5f76d7ce2..a28ed6cd85 100644 --- a/runtime/tests/interpreter/indexing_test.go +++ b/runtime/tests/interpreter/indexing_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/integers_test.go b/runtime/tests/interpreter/integers_test.go index dacfd49772..497e4c4a1a 100644 --- a/runtime/tests/interpreter/integers_test.go +++ b/runtime/tests/interpreter/integers_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/interface_test.go b/runtime/tests/interpreter/interface_test.go index 21c2e5e7db..d17c5d305d 100644 --- a/runtime/tests/interpreter/interface_test.go +++ b/runtime/tests/interpreter/interface_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/interpreter_test.go b/runtime/tests/interpreter/interpreter_test.go index 7476d16b0a..a00bd1c4e4 100644 --- a/runtime/tests/interpreter/interpreter_test.go +++ b/runtime/tests/interpreter/interpreter_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/invocation_test.go b/runtime/tests/interpreter/invocation_test.go index f42ef1c73b..3c04c90667 100644 --- a/runtime/tests/interpreter/invocation_test.go +++ b/runtime/tests/interpreter/invocation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/member_test.go b/runtime/tests/interpreter/member_test.go index fd472c0f01..d5b1abac58 100644 --- a/runtime/tests/interpreter/member_test.go +++ b/runtime/tests/interpreter/member_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/memory_metering_test.go b/runtime/tests/interpreter/memory_metering_test.go index fad4329891..43a2f77887 100644 --- a/runtime/tests/interpreter/memory_metering_test.go +++ b/runtime/tests/interpreter/memory_metering_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/metatype_test.go b/runtime/tests/interpreter/metatype_test.go index ade3c66968..522765d4be 100644 --- a/runtime/tests/interpreter/metatype_test.go +++ b/runtime/tests/interpreter/metatype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/metering_test.go b/runtime/tests/interpreter/metering_test.go index 40fbd09e16..9ca2d40026 100644 --- a/runtime/tests/interpreter/metering_test.go +++ b/runtime/tests/interpreter/metering_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/nesting_test.go b/runtime/tests/interpreter/nesting_test.go index fd7a6b7b01..c82353b34d 100644 --- a/runtime/tests/interpreter/nesting_test.go +++ b/runtime/tests/interpreter/nesting_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/path_test.go b/runtime/tests/interpreter/path_test.go index d1a05ac507..b67379821a 100644 --- a/runtime/tests/interpreter/path_test.go +++ b/runtime/tests/interpreter/path_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/range_value_test.go b/runtime/tests/interpreter/range_value_test.go index 2c5ab74871..4396be49ac 100644 --- a/runtime/tests/interpreter/range_value_test.go +++ b/runtime/tests/interpreter/range_value_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/reference_test.go b/runtime/tests/interpreter/reference_test.go index 897043e1ec..5517052b81 100644 --- a/runtime/tests/interpreter/reference_test.go +++ b/runtime/tests/interpreter/reference_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/resources_test.go b/runtime/tests/interpreter/resources_test.go index 333a87547f..aa62f8914b 100644 --- a/runtime/tests/interpreter/resources_test.go +++ b/runtime/tests/interpreter/resources_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/runtimetype_test.go b/runtime/tests/interpreter/runtimetype_test.go index b92479ca3f..59e01554b9 100644 --- a/runtime/tests/interpreter/runtimetype_test.go +++ b/runtime/tests/interpreter/runtimetype_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/string_test.go b/runtime/tests/interpreter/string_test.go index 213f3c97b3..5a770cb674 100644 --- a/runtime/tests/interpreter/string_test.go +++ b/runtime/tests/interpreter/string_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/switch_test.go b/runtime/tests/interpreter/switch_test.go index 8527818f83..b4b4b96afe 100644 --- a/runtime/tests/interpreter/switch_test.go +++ b/runtime/tests/interpreter/switch_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/transactions_test.go b/runtime/tests/interpreter/transactions_test.go index 5ac7c6ef36..a5b518fedf 100644 --- a/runtime/tests/interpreter/transactions_test.go +++ b/runtime/tests/interpreter/transactions_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/transfer_test.go b/runtime/tests/interpreter/transfer_test.go index ca91259d5a..50c8a98cf5 100644 --- a/runtime/tests/interpreter/transfer_test.go +++ b/runtime/tests/interpreter/transfer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/uuid_test.go b/runtime/tests/interpreter/uuid_test.go index 09b3d93ea9..efb16aabee 100644 --- a/runtime/tests/interpreter/uuid_test.go +++ b/runtime/tests/interpreter/uuid_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/values_test.go b/runtime/tests/interpreter/values_test.go index 90254906a6..27e2f3342c 100644 --- a/runtime/tests/interpreter/values_test.go +++ b/runtime/tests/interpreter/values_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/interpreter/while_test.go b/runtime/tests/interpreter/while_test.go index 86dd92e96b..c4e7b6ac76 100644 --- a/runtime/tests/interpreter/while_test.go +++ b/runtime/tests/interpreter/while_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/runtime_utils/interpreter.go b/runtime/tests/runtime_utils/interpreter.go index 14abe001fd..1068a2242f 100644 --- a/runtime/tests/runtime_utils/interpreter.go +++ b/runtime/tests/runtime_utils/interpreter.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/runtime_utils/location.go b/runtime/tests/runtime_utils/location.go index 70bcc3cc1d..cc04a398f9 100644 --- a/runtime/tests/runtime_utils/location.go +++ b/runtime/tests/runtime_utils/location.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/runtime_utils/testinterface.go b/runtime/tests/runtime_utils/testinterface.go index 42595210f9..d11b22525d 100644 --- a/runtime/tests/runtime_utils/testinterface.go +++ b/runtime/tests/runtime_utils/testinterface.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/runtime_utils/testledger.go b/runtime/tests/runtime_utils/testledger.go index a2c8f93eec..4d4c846172 100644 --- a/runtime/tests/runtime_utils/testledger.go +++ b/runtime/tests/runtime_utils/testledger.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/runtime_utils/testruntime.go b/runtime/tests/runtime_utils/testruntime.go index e490ceb784..5ea11f137d 100644 --- a/runtime/tests/runtime_utils/testruntime.go +++ b/runtime/tests/runtime_utils/testruntime.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,6 +38,7 @@ func NewTestInterpreterRuntimeWithConfig(config runtime.Config) TestInterpreterR var DefaultTestInterpreterConfig = runtime.Config{ AtreeValidationEnabled: true, + AttachmentsEnabled: true, } func NewTestInterpreterRuntime() TestInterpreterRuntime { diff --git a/runtime/tests/utils/occurrence_matcher.go b/runtime/tests/utils/occurrence_matcher.go index 0340568c7e..3d93ca8781 100644 --- a/runtime/tests/utils/occurrence_matcher.go +++ b/runtime/tests/utils/occurrence_matcher.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/tests/utils/utils.go b/runtime/tests/utils/utils.go index 2b8c43fea9..fec7938dd6 100644 --- a/runtime/tests/utils/utils.go +++ b/runtime/tests/utils/utils.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/transaction_executor.go b/runtime/transaction_executor.go index 569196df40..5ac6ee08a1 100644 --- a/runtime/transaction_executor.go +++ b/runtime/transaction_executor.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/type_test.go b/runtime/type_test.go index 8bfbf32299..cfabeafec1 100644 --- a/runtime/type_test.go +++ b/runtime/type_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/types.go b/runtime/types.go index 0278bcb618..fce7de6778 100644 --- a/runtime/types.go +++ b/runtime/types.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/validation_test.go b/runtime/validation_test.go index 5b958df3f9..bb38c9d5c7 100644 --- a/runtime/validation_test.go +++ b/runtime/validation_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/runtime/value.go b/runtime/value.go index 8f085a79c8..7ef95fb61f 100644 --- a/runtime/value.go +++ b/runtime/value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/analysis.go b/tools/analysis/analysis.go index 85cc1cc604..4c5513a95a 100644 --- a/tools/analysis/analysis.go +++ b/tools/analysis/analysis.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/analysis_test.go b/tools/analysis/analysis_test.go index fb5d885d05..d1321debf5 100644 --- a/tools/analysis/analysis_test.go +++ b/tools/analysis/analysis_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/analyzer.go b/tools/analysis/analyzer.go index 67db0461e3..517241dd71 100644 --- a/tools/analysis/analyzer.go +++ b/tools/analysis/analyzer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/config.go b/tools/analysis/config.go index ffaafd7c93..3bf637f9f3 100644 --- a/tools/analysis/config.go +++ b/tools/analysis/config.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/diagnostic.go b/tools/analysis/diagnostic.go index 8d1bee9ef0..11e0ff44e0 100644 --- a/tools/analysis/diagnostic.go +++ b/tools/analysis/diagnostic.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/error.go b/tools/analysis/error.go index 857c7730d5..a1ecf2c603 100644 --- a/tools/analysis/error.go +++ b/tools/analysis/error.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/inspector.go b/tools/analysis/inspector.go index e6483cc07f..547d47b777 100644 --- a/tools/analysis/inspector.go +++ b/tools/analysis/inspector.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/loadmode.go b/tools/analysis/loadmode.go index c7fae395be..ac2ce41a46 100644 --- a/tools/analysis/loadmode.go +++ b/tools/analysis/loadmode.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/pass.go b/tools/analysis/pass.go index 9151c1977f..8cb27552c8 100644 --- a/tools/analysis/pass.go +++ b/tools/analysis/pass.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/program.go b/tools/analysis/program.go index d234adf74c..789c279af1 100644 --- a/tools/analysis/program.go +++ b/tools/analysis/program.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/analysis/programs.go b/tools/analysis/programs.go index 767dea6465..08ae11ae49 100644 --- a/tools/analysis/programs.go +++ b/tools/analysis/programs.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/ast-explorer/main.go b/tools/ast-explorer/main.go index 9a3aee4892..cd83dbc648 100644 --- a/tools/ast-explorer/main.go +++ b/tools/ast-explorer/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/ast-explorer/src/cadence.ts b/tools/ast-explorer/src/cadence.ts index 7ccd7d5aa0..55ca3558a9 100644 --- a/tools/ast-explorer/src/cadence.ts +++ b/tools/ast-explorer/src/cadence.ts @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/ast-explorer/src/index.tsx b/tools/ast-explorer/src/index.tsx index c7d798ae39..265465b82d 100644 --- a/tools/ast-explorer/src/index.tsx +++ b/tools/ast-explorer/src/index.tsx @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/ast-explorer/src/tree.tsx b/tools/ast-explorer/src/tree.tsx index d6f6de60d1..acfa9d7c75 100644 --- a/tools/ast-explorer/src/tree.tsx +++ b/tools/ast-explorer/src/tree.tsx @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/compare-parsing/main.go b/tools/compare-parsing/main.go index 36ea0cfab5..7300522659 100644 --- a/tools/compare-parsing/main.go +++ b/tools/compare-parsing/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/compatibility-check/cmd/check_contracts/main.go b/tools/compatibility-check/cmd/check_contracts/main.go index dc5aebff53..4e472c2e00 100644 --- a/tools/compatibility-check/cmd/check_contracts/main.go +++ b/tools/compatibility-check/cmd/check_contracts/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/compatibility-check/contracts_checker.go b/tools/compatibility-check/contracts_checker.go index f83a7c3d8e..db66be90ea 100644 --- a/tools/compatibility-check/contracts_checker.go +++ b/tools/compatibility-check/contracts_checker.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/compatibility-check/contracts_checker_test.go b/tools/compatibility-check/contracts_checker_test.go index 150f045251..55d25d844a 100644 --- a/tools/compatibility-check/contracts_checker_test.go +++ b/tools/compatibility-check/contracts_checker_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/compatibility-check/go.mod b/tools/compatibility-check/go.mod index baed296863..00ce331115 100644 --- a/tools/compatibility-check/go.mod +++ b/tools/compatibility-check/go.mod @@ -1,6 +1,6 @@ module github.com/onflow/cadence/tools/compatibility_check -go 1.20 +go 1.22 require ( github.com/onflow/cadence v0.31.2-0.20230207221811-9eb6e7fe4121 diff --git a/tools/constructorcheck/Makefile b/tools/constructorcheck/Makefile index 24c52ef2dc..a6c5aea644 100644 --- a/tools/constructorcheck/Makefile +++ b/tools/constructorcheck/Makefile @@ -1,2 +1,2 @@ -constructorcheck.so: go.mod +constructorcheck.so: go.mod *.go go build -buildmode=plugin . diff --git a/tools/constructorcheck/analyzer.go b/tools/constructorcheck/analyzer.go index c008724ba3..ab11c22a32 100644 --- a/tools/constructorcheck/analyzer.go +++ b/tools/constructorcheck/analyzer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/constructorcheck/analyzer_test.go b/tools/constructorcheck/analyzer_test.go index c9341a7091..e1807b9231 100644 --- a/tools/constructorcheck/analyzer_test.go +++ b/tools/constructorcheck/analyzer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/constructorcheck/go.mod b/tools/constructorcheck/go.mod index 92a60226b2..57adcbf9a7 100644 --- a/tools/constructorcheck/go.mod +++ b/tools/constructorcheck/go.mod @@ -1,10 +1,10 @@ module github.com/onflow/cadence/tools/constructorcheck -go 1.20 +go 1.22 -require golang.org/x/tools v0.6.0 +require golang.org/x/tools v0.21.0 require ( - golang.org/x/mod v0.8.0 // indirect - golang.org/x/sys v0.5.0 // indirect + golang.org/x/mod v0.17.0 // indirect + golang.org/x/sync v0.7.0 // indirect ) diff --git a/tools/constructorcheck/go.sum b/tools/constructorcheck/go.sum index 44d387ef3f..05680b3128 100644 --- a/tools/constructorcheck/go.sum +++ b/tools/constructorcheck/go.sum @@ -1,7 +1,6 @@ -golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= +golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw= +golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= diff --git a/tools/constructorcheck/main.go b/tools/constructorcheck/main.go index c58204b26f..5d8fd711cb 100644 --- a/tools/constructorcheck/main.go +++ b/tools/constructorcheck/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,14 +27,10 @@ func main() { singlechecker.Main(Analyzer) } -type analyzerPlugin struct{} - -func (*analyzerPlugin) GetAnalyzers() []*analysis.Analyzer { +// This must be defined and named 'New' for golangci-lint, +// see https://golangci-lint.run/plugins/go-plugins/#create-a-plugin +func New(_ any) ([]*analysis.Analyzer, error) { return []*analysis.Analyzer{ Analyzer, - } + }, nil } - -// This must be defined and named 'AnalyzerPlugin' for golangci-lint, -// see https://golangci-lint.run/contributing/new-linters/#how-to-write-a-custom-linter -var AnalyzerPlugin analyzerPlugin diff --git a/tools/constructorcheck/testdata/test.go b/tools/constructorcheck/testdata/test.go index 29381b811e..6b849e049b 100644 --- a/tools/constructorcheck/testdata/test.go +++ b/tools/constructorcheck/testdata/test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/get-contracts/go.mod b/tools/get-contracts/go.mod index 2fddb5443c..94a8db16a0 100644 --- a/tools/get-contracts/go.mod +++ b/tools/get-contracts/go.mod @@ -1,6 +1,6 @@ module github.com/onflow/cadence/tools/get-contracts -go 1.20 +go 1.22 require github.com/hasura/go-graphql-client v0.10.2 diff --git a/tools/get-contracts/main.go b/tools/get-contracts/main.go index 641fe4d8b7..3519d24f27 100644 --- a/tools/get-contracts/main.go +++ b/tools/get-contracts/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -85,7 +85,7 @@ func main() { client := graphql.NewClient(apiURL, nil). WithRequestModifier(func(r *http.Request) { r.Header.Set("Authorization", fmt.Sprintf("Bearer %s", apiKey)) - // NOTE: important, default is forbidden by API's bot prevention + // NOTE: important, default is forbidden by API's bot prevention // (https://github.com/Kong/kong/blob/master/kong/plugins/bot-detection/rules.lua) r.Header.Set("User-Agent", "Flow Foundation Cadence Tool") }) diff --git a/tools/golangci-lint/go.mod b/tools/golangci-lint/go.mod index cd92d2b227..ce7784304a 100644 --- a/tools/golangci-lint/go.mod +++ b/tools/golangci-lint/go.mod @@ -1,179 +1,190 @@ module github.com/onflow/cadence/tools/golangci-lint -go 1.20 +go 1.22 -require github.com/golangci/golangci-lint v1.51.2 +require github.com/golangci/golangci-lint v1.59.0 require ( 4d63.com/gocheckcompilerdirectives v1.2.1 // indirect 4d63.com/gochecknoglobals v0.2.1 // indirect - github.com/Abirdcfly/dupword v0.0.9 // indirect - github.com/Antonboom/errname v0.1.7 // indirect - github.com/Antonboom/nilnil v0.1.1 // indirect - github.com/BurntSushi/toml v1.2.1 // indirect + github.com/4meepo/tagalign v1.3.4 // indirect + github.com/Abirdcfly/dupword v0.0.14 // indirect + github.com/Antonboom/errname v0.1.13 // indirect + github.com/Antonboom/nilnil v0.1.9 // indirect + github.com/Antonboom/testifylint v1.3.0 // indirect + github.com/BurntSushi/toml v1.4.0 // indirect + github.com/Crocmagnon/fatcontext v0.2.2 // indirect github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 // indirect - github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0 // indirect - github.com/Masterminds/semver v1.5.0 // indirect - github.com/OpenPeeDeeP/depguard v1.1.1 // indirect + github.com/GaijinEntertainment/go-exhaustruct/v3 v3.2.0 // indirect + github.com/Masterminds/semver/v3 v3.2.1 // indirect + github.com/OpenPeeDeeP/depguard/v2 v2.2.0 // indirect + github.com/alecthomas/go-check-sumtype v0.1.4 // indirect + github.com/alexkohler/nakedret/v2 v2.0.4 // indirect github.com/alexkohler/prealloc v1.0.0 // indirect github.com/alingse/asasalint v0.0.11 // indirect - github.com/ashanbrown/forbidigo v1.4.0 // indirect + github.com/ashanbrown/forbidigo v1.6.0 // indirect github.com/ashanbrown/makezero v1.1.1 // indirect github.com/beorn7/perks v1.0.1 // indirect - github.com/bkielbasa/cyclop v1.2.0 // indirect + github.com/bkielbasa/cyclop v1.2.1 // indirect github.com/blizzy78/varnamelen v0.8.0 // indirect - github.com/bombsimon/wsl/v3 v3.4.0 // indirect - github.com/breml/bidichk v0.2.3 // indirect - github.com/breml/errchkjson v0.3.0 // indirect - github.com/butuzov/ireturn v0.1.1 // indirect + github.com/bombsimon/wsl/v4 v4.2.1 // indirect + github.com/breml/bidichk v0.2.7 // indirect + github.com/breml/errchkjson v0.3.6 // indirect + github.com/butuzov/ireturn v0.3.0 // indirect + github.com/butuzov/mirror v1.2.0 // indirect + github.com/catenacyber/perfsprint v0.7.1 // indirect + github.com/ccojocar/zxcvbn-go v1.0.2 // indirect github.com/cespare/xxhash/v2 v2.1.2 // indirect - github.com/charithe/durationcheck v0.0.9 // indirect - github.com/chavacava/garif v0.0.0-20221024190013-b3ef35877348 // indirect + github.com/charithe/durationcheck v0.0.10 // indirect + github.com/chavacava/garif v0.1.0 // indirect + github.com/ckaznocha/intrange v0.1.2 // indirect github.com/curioswitch/go-reassign v0.2.0 // indirect - github.com/daixiang0/gci v0.9.1 // indirect + github.com/daixiang0/gci v0.13.4 // indirect github.com/davecgh/go-spew v1.1.1 // indirect - github.com/denis-tingaikin/go-header v0.4.3 // indirect - github.com/esimonov/ifshort v1.0.4 // indirect - github.com/ettle/strcase v0.1.1 // indirect - github.com/fatih/color v1.14.1 // indirect + github.com/denis-tingaikin/go-header v0.5.0 // indirect + github.com/ettle/strcase v0.2.0 // indirect + github.com/fatih/color v1.17.0 // indirect github.com/fatih/structtag v1.2.0 // indirect - github.com/firefart/nonamedreturns v1.0.4 // indirect + github.com/firefart/nonamedreturns v1.0.5 // indirect github.com/fsnotify/fsnotify v1.5.4 // indirect github.com/fzipp/gocyclo v0.6.0 // indirect - github.com/go-critic/go-critic v0.6.7 // indirect + github.com/ghostiam/protogetter v0.3.6 // indirect + github.com/go-critic/go-critic v0.11.4 // indirect github.com/go-toolsmith/astcast v1.1.0 // indirect - github.com/go-toolsmith/astcopy v1.0.3 // indirect - github.com/go-toolsmith/astequal v1.1.0 // indirect + github.com/go-toolsmith/astcopy v1.1.0 // indirect + github.com/go-toolsmith/astequal v1.2.0 // indirect github.com/go-toolsmith/astfmt v1.1.0 // indirect github.com/go-toolsmith/astp v1.1.0 // indirect github.com/go-toolsmith/strparse v1.1.0 // indirect github.com/go-toolsmith/typep v1.1.0 // indirect + github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1 // indirect github.com/go-xmlfmt/xmlfmt v1.1.2 // indirect github.com/gobwas/glob v0.2.3 // indirect github.com/gofrs/flock v0.8.1 // indirect - github.com/golang/protobuf v1.5.2 // indirect - github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 // indirect + github.com/golang/protobuf v1.5.3 // indirect github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a // indirect - github.com/golangci/go-misc v0.0.0-20220329215616-d24fe342adfe // indirect - github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2 // indirect - github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0 // indirect - github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca // indirect - github.com/golangci/misspell v0.4.0 // indirect - github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6 // indirect - github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 // indirect - github.com/google/go-cmp v0.5.9 // indirect - github.com/gordonklaus/ineffassign v0.0.0-20230107090616-13ace0543b28 // indirect + github.com/golangci/gofmt v0.0.0-20231018234816-f50ced29576e // indirect + github.com/golangci/misspell v0.5.1 // indirect + github.com/golangci/modinfo v0.3.4 // indirect + github.com/golangci/plugin-module-register v0.1.1 // indirect + github.com/golangci/revgrep v0.5.3 // indirect + github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed // indirect + github.com/google/go-cmp v0.6.0 // indirect + github.com/gordonklaus/ineffassign v0.1.0 // indirect github.com/gostaticanalysis/analysisutil v0.7.1 // indirect github.com/gostaticanalysis/comment v1.4.2 // indirect github.com/gostaticanalysis/forcetypeassert v0.1.0 // indirect github.com/gostaticanalysis/nilerr v0.1.1 // indirect - github.com/hashicorp/errwrap v1.0.0 // indirect - github.com/hashicorp/go-multierror v1.1.1 // indirect - github.com/hashicorp/go-version v1.6.0 // indirect + github.com/hashicorp/go-version v1.7.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/hexops/gotextdiff v1.0.3 // indirect - github.com/inconshreveable/mousetrap v1.0.1 // indirect - github.com/jgautheron/goconst v1.5.1 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/jgautheron/goconst v1.7.1 // indirect github.com/jingyugao/rowserrcheck v1.1.1 // indirect github.com/jirfag/go-printf-func-name v0.0.0-20200119135958-7558a9eaa5af // indirect + github.com/jjti/go-spancheck v0.6.1 // indirect github.com/julz/importas v0.1.0 // indirect - github.com/junk1tm/musttag v0.4.5 // indirect - github.com/kisielk/errcheck v1.6.3 // indirect - github.com/kisielk/gotool v1.0.0 // indirect - github.com/kkHAIKE/contextcheck v1.1.3 // indirect + github.com/karamaru-alpha/copyloopvar v1.1.0 // indirect + github.com/kisielk/errcheck v1.7.0 // indirect + github.com/kkHAIKE/contextcheck v1.1.5 // indirect github.com/kulti/thelper v0.6.3 // indirect - github.com/kunwardeep/paralleltest v1.0.6 // indirect + github.com/kunwardeep/paralleltest v1.0.10 // indirect github.com/kyoh86/exportloopref v0.1.11 // indirect - github.com/ldez/gomoddirectives v0.2.3 // indirect - github.com/ldez/tagliatelle v0.4.0 // indirect - github.com/leonklingele/grouper v1.1.1 // indirect + github.com/lasiar/canonicalheader v1.1.1 // indirect + github.com/ldez/gomoddirectives v0.2.4 // indirect + github.com/ldez/tagliatelle v0.5.0 // indirect + github.com/leonklingele/grouper v1.1.2 // indirect github.com/lufeee/execinquery v1.2.1 // indirect + github.com/macabu/inamedparam v0.1.3 // indirect github.com/magiconair/properties v1.8.6 // indirect github.com/maratori/testableexamples v1.0.0 // indirect - github.com/maratori/testpackage v1.1.0 // indirect - github.com/matoous/godox v0.0.0-20210227103229-6504466cf951 // indirect + github.com/maratori/testpackage v1.1.1 // indirect + github.com/matoous/godox v0.0.0-20230222163458-006bad1f9d26 // indirect github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.17 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-runewidth v0.0.9 // indirect github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect - github.com/mbilski/exhaustivestruct v1.2.0 // indirect - github.com/mgechev/revive v1.2.5 // indirect + github.com/mgechev/revive v1.3.7 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect - github.com/moricho/tparallel v0.2.1 // indirect + github.com/moricho/tparallel v0.3.1 // indirect github.com/nakabonne/nestif v0.3.1 // indirect - github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 // indirect - github.com/nishanths/exhaustive v0.9.5 // indirect + github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e // indirect + github.com/nishanths/exhaustive v0.12.0 // indirect github.com/nishanths/predeclared v0.2.2 // indirect - github.com/nunnatsa/ginkgolinter v0.8.1 // indirect + github.com/nunnatsa/ginkgolinter v0.16.2 // indirect github.com/olekukonko/tablewriter v0.0.5 // indirect github.com/pelletier/go-toml v1.9.5 // indirect - github.com/pelletier/go-toml/v2 v2.0.5 // indirect - github.com/pkg/errors v0.9.1 // indirect + github.com/pelletier/go-toml/v2 v2.2.2 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/polyfloyd/go-errorlint v1.1.0 // indirect + github.com/polyfloyd/go-errorlint v1.5.1 // indirect github.com/prometheus/client_golang v1.12.1 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect github.com/prometheus/procfs v0.7.3 // indirect - github.com/quasilyte/go-ruleguard v0.3.19 // indirect + github.com/quasilyte/go-ruleguard v0.4.2 // indirect + github.com/quasilyte/go-ruleguard/dsl v0.3.22 // indirect github.com/quasilyte/gogrep v0.5.0 // indirect - github.com/quasilyte/regex/syntax v0.0.0-20200407221936-30656e2c4a95 // indirect + github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 // indirect github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect - github.com/ryancurrah/gomodguard v1.3.0 // indirect - github.com/ryanrolds/sqlclosecheck v0.4.0 // indirect + github.com/ryancurrah/gomodguard v1.3.2 // indirect + github.com/ryanrolds/sqlclosecheck v0.5.1 // indirect github.com/sanposhiho/wastedassign/v2 v2.0.7 // indirect + github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect github.com/sashamelentyev/interfacebloat v1.1.0 // indirect - github.com/sashamelentyev/usestdlibvars v1.23.0 // indirect - github.com/securego/gosec/v2 v2.15.0 // indirect + github.com/sashamelentyev/usestdlibvars v1.25.0 // indirect + github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9 // indirect github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c // indirect - github.com/sirupsen/logrus v1.9.0 // indirect - github.com/sivchari/containedctx v1.0.2 // indirect - github.com/sivchari/nosnakecase v1.7.0 // indirect + github.com/sirupsen/logrus v1.9.3 // indirect + github.com/sivchari/containedctx v1.0.3 // indirect github.com/sivchari/tenv v1.7.1 // indirect - github.com/sonatard/noctx v0.0.1 // indirect + github.com/sonatard/noctx v0.0.2 // indirect github.com/sourcegraph/go-diff v0.7.0 // indirect - github.com/spf13/afero v1.8.2 // indirect + github.com/spf13/afero v1.11.0 // indirect github.com/spf13/cast v1.5.0 // indirect - github.com/spf13/cobra v1.6.1 // indirect + github.com/spf13/cobra v1.7.0 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/spf13/viper v1.12.0 // indirect github.com/ssgreg/nlreturn/v2 v2.2.1 // indirect github.com/stbenjam/no-sprintf-host-port v0.1.1 // indirect - github.com/stretchr/objx v0.5.0 // indirect - github.com/stretchr/testify v1.8.1 // indirect + github.com/stretchr/objx v0.5.2 // indirect + github.com/stretchr/testify v1.9.0 // indirect github.com/subosito/gotenv v1.4.1 // indirect github.com/t-yuki/gocover-cobertura v0.0.0-20180217150009-aaee18c8195c // indirect - github.com/tdakkota/asciicheck v0.1.1 // indirect - github.com/tetafro/godot v1.4.11 // indirect - github.com/timakin/bodyclose v0.0.0-20221125081123-e39cf3fc478e // indirect - github.com/timonwong/loggercheck v0.9.3 // indirect - github.com/tomarrell/wrapcheck/v2 v2.8.0 // indirect + github.com/tdakkota/asciicheck v0.2.0 // indirect + github.com/tetafro/godot v1.4.16 // indirect + github.com/timakin/bodyclose v0.0.0-20230421092635-574207250966 // indirect + github.com/timonwong/loggercheck v0.9.4 // indirect + github.com/tomarrell/wrapcheck/v2 v2.8.3 // indirect github.com/tommy-muehle/go-mnd/v2 v2.5.1 // indirect - github.com/ultraware/funlen v0.0.3 // indirect - github.com/ultraware/whitespace v0.0.5 // indirect - github.com/uudashr/gocognit v1.0.6 // indirect + github.com/ultraware/funlen v0.1.0 // indirect + github.com/ultraware/whitespace v0.1.1 // indirect + github.com/uudashr/gocognit v1.1.2 // indirect + github.com/xen0n/gosmopolitan v1.2.2 // indirect github.com/yagipy/maintidx v1.0.0 // indirect - github.com/yeya24/promlinter v0.2.0 // indirect - gitlab.com/bosi/decorder v0.2.3 // indirect + github.com/yeya24/promlinter v0.3.0 // indirect + github.com/ykadowak/zerologlint v0.1.5 // indirect + gitlab.com/bosi/decorder v0.4.2 // indirect + go-simpler.org/musttag v0.12.2 // indirect + go-simpler.org/sloglint v0.7.0 // indirect go.uber.org/atomic v1.7.0 // indirect + go.uber.org/automaxprocs v1.5.3 // indirect go.uber.org/multierr v1.6.0 // indirect - go.uber.org/zap v1.17.0 // indirect - golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e // indirect - golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9 // indirect - golang.org/x/mod v0.8.0 // indirect - golang.org/x/sync v0.1.0 // indirect - golang.org/x/sys v0.5.0 // indirect - golang.org/x/text v0.6.0 // indirect - golang.org/x/tools v0.6.0 // indirect - google.golang.org/protobuf v1.28.0 // indirect + go.uber.org/zap v1.24.0 // indirect + golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc // indirect + golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f // indirect + golang.org/x/mod v0.17.0 // indirect + golang.org/x/sync v0.7.0 // indirect + golang.org/x/sys v0.20.0 // indirect + golang.org/x/text v0.15.0 // indirect + golang.org/x/tools v0.21.0 // indirect + google.golang.org/protobuf v1.33.0 // indirect + gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f // indirect gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - honnef.co/go/tools v0.4.2 // indirect - mvdan.cc/gofumpt v0.4.0 // indirect - mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed // indirect - mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b // indirect - mvdan.cc/unparam v0.0.0-20221223090309-7455f1af531d // indirect + honnef.co/go/tools v0.4.7 // indirect + mvdan.cc/gofumpt v0.6.0 // indirect + mvdan.cc/unparam v0.0.0-20240427195214-063aff900ca1 // indirect ) diff --git a/tools/golangci-lint/go.sum b/tools/golangci-lint/go.sum index d721114bbb..be04ca737e 100644 --- a/tools/golangci-lint/go.sum +++ b/tools/golangci-lint/go.sum @@ -7,7 +7,6 @@ cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= -cloud.google.com/go v0.44.3/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= @@ -18,9 +17,6 @@ cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKV cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= -cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= -cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= -cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= @@ -38,103 +34,123 @@ cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0Zeo cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= -cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= -github.com/Abirdcfly/dupword v0.0.9 h1:MxprGjKq3yDBICXDgEEsyGirIXfMYXkLNT/agPsE1tk= -github.com/Abirdcfly/dupword v0.0.9/go.mod h1:PzmHVLLZ27MvHSzV7eFmMXSFArWXZPZmfuuziuUrf2g= -github.com/Antonboom/errname v0.1.7 h1:mBBDKvEYwPl4WFFNwec1CZO096G6vzK9vvDQzAwkako= -github.com/Antonboom/errname v0.1.7/go.mod h1:g0ONh16msHIPgJSGsecu1G/dcF2hlYR/0SddnIAGavU= -github.com/Antonboom/nilnil v0.1.1 h1:PHhrh5ANKFWRBh7TdYmyyq2gyT2lotnvFvvFbylF81Q= -github.com/Antonboom/nilnil v0.1.1/go.mod h1:L1jBqoWM7AOeTD+tSquifKSesRHs4ZdaxvZR+xdJEaI= +github.com/4meepo/tagalign v1.3.4 h1:P51VcvBnf04YkHzjfclN6BbsopfJR5rxs1n+5zHt+w8= +github.com/4meepo/tagalign v1.3.4/go.mod h1:M+pnkHH2vG8+qhE5bVc/zeP7HS/j910Fwa9TUSyZVI0= +github.com/Abirdcfly/dupword v0.0.14 h1:3U4ulkc8EUo+CaT105/GJ1BQwtgyj6+VaBVbAX11Ba8= +github.com/Abirdcfly/dupword v0.0.14/go.mod h1:VKDAbxdY8YbKUByLGg8EETzYSuC4crm9WwI6Y3S0cLI= +github.com/Antonboom/errname v0.1.13 h1:JHICqsewj/fNckzrfVSe+T33svwQxmjC+1ntDsHOVvM= +github.com/Antonboom/errname v0.1.13/go.mod h1:uWyefRYRN54lBg6HseYCFhs6Qjcy41Y3Jl/dVhA87Ns= +github.com/Antonboom/nilnil v0.1.9 h1:eKFMejSxPSA9eLSensFmjW2XTgTwJMjZ8hUHtV4s/SQ= +github.com/Antonboom/nilnil v0.1.9/go.mod h1:iGe2rYwCq5/Me1khrysB4nwI7swQvjclR8/YRPl5ihQ= +github.com/Antonboom/testifylint v1.3.0 h1:UiqrddKs1W3YK8R0TUuWwrVKlVAnS07DTUVWWs9c+y4= +github.com/Antonboom/testifylint v1.3.0/go.mod h1:NV0hTlteCkViPW9mSR4wEMfwp+Hs1T3dY60bkvSfhpM= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak= -github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/Crocmagnon/fatcontext v0.2.2 h1:OrFlsDdOj9hW/oBEJBNSuH7QWf+E9WPVHw+x52bXVbk= +github.com/Crocmagnon/fatcontext v0.2.2/go.mod h1:WSn/c/+MMNiD8Pri0ahRj0o9jVpeowzavOQplBJw6u0= github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 h1:sHglBQTwgx+rWPdisA5ynNEsoARbiCBOyGcJM4/OzsM= github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24/go.mod h1:4UJr5HIiMZrwgkSPdsjy2uOQExX/WEILpIrO9UPGuXs= -github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0 h1:+r1rSv4gvYn0wmRjC8X7IAzX8QezqtFV9m0MUHFJgts= -github.com/GaijinEntertainment/go-exhaustruct/v2 v2.3.0/go.mod h1:b3g59n2Y+T5xmcxJL+UEG2f8cQploZm1mR/v6BW0mU0= -github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= -github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= -github.com/OpenPeeDeeP/depguard v1.1.1 h1:TSUznLjvp/4IUP+OQ0t/4jF4QUyxIcVX8YnghZdunyA= -github.com/OpenPeeDeeP/depguard v1.1.1/go.mod h1:JtAMzWkmFEzDPyAd+W0NHl1lvpQKTvT9jnRVsohBKpc= +github.com/GaijinEntertainment/go-exhaustruct/v3 v3.2.0 h1:sATXp1x6/axKxz2Gjxv8MALP0bXaNRfQinEwyfMcx8c= +github.com/GaijinEntertainment/go-exhaustruct/v3 v3.2.0/go.mod h1:Nl76DrGNJTA1KJ0LePKBw/vznBX1EHbAZX8mwjR82nI= +github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= +github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= +github.com/OpenPeeDeeP/depguard/v2 v2.2.0 h1:vDfG60vDtIuf0MEOhmLlLLSzqaRM8EMcgJPdp74zmpA= +github.com/OpenPeeDeeP/depguard/v2 v2.2.0/go.mod h1:CIzddKRvLBC4Au5aYP/i3nyaWQ+ClszLIuVocRiCYFQ= +github.com/alecthomas/assert/v2 v2.2.2 h1:Z/iVC0xZfWTaFNE6bA3z07T86hd45Xe2eLt6WVy2bbk= +github.com/alecthomas/assert/v2 v2.2.2/go.mod h1:pXcQ2Asjp247dahGEmsZ6ru0UVwnkhktn7S0bBDLxvQ= +github.com/alecthomas/go-check-sumtype v0.1.4 h1:WCvlB3l5Vq5dZQTFmodqL2g68uHiSwwlWcT5a2FGK0c= +github.com/alecthomas/go-check-sumtype v0.1.4/go.mod h1:WyYPfhfkdhyrdaligV6svFopZV8Lqdzn5pyVBaV6jhQ= +github.com/alecthomas/repr v0.2.0 h1:HAzS41CIzNW5syS8Mf9UwXhNH1J9aix/BvDRf1Ml2Yk= +github.com/alecthomas/repr v0.2.0/go.mod h1:Fr0507jx4eOXV7AlPV6AVZLYrLIuIeSOWtW57eE/O/4= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/alexkohler/nakedret/v2 v2.0.4 h1:yZuKmjqGi0pSmjGpOC016LtPJysIL0WEUiaXW5SUnNg= +github.com/alexkohler/nakedret/v2 v2.0.4/go.mod h1:bF5i0zF2Wo2o4X4USt9ntUWve6JbFv02Ff4vlkmS/VU= github.com/alexkohler/prealloc v1.0.0 h1:Hbq0/3fJPQhNkN0dR95AVrr6R7tou91y0uHG5pOcUuw= github.com/alexkohler/prealloc v1.0.0/go.mod h1:VetnK3dIgFBBKmg0YnD9F9x6Icjd+9cvfHR56wJVlKE= github.com/alingse/asasalint v0.0.11 h1:SFwnQXJ49Kx/1GghOFz1XGqHYKp21Kq1nHad/0WQRnw= github.com/alingse/asasalint v0.0.11/go.mod h1:nCaoMhw7a9kSJObvQyVzNTPBDbNpdocqrSP7t/cW5+I= -github.com/ashanbrown/forbidigo v1.4.0 h1:spdPbupaSqtWORq1Q4eHBoPBmHtwVyLKwaedbSLc5Sw= -github.com/ashanbrown/forbidigo v1.4.0/go.mod h1:IvgwB5Y4fzqSAj/WVXKWigoTkB0dzI2FBbpKWuh7ph8= +github.com/ashanbrown/forbidigo v1.6.0 h1:D3aewfM37Yb3pxHujIPSpTf6oQk9sc9WZi8gerOIVIY= +github.com/ashanbrown/forbidigo v1.6.0/go.mod h1:Y8j9jy9ZYAEHXdu723cUlraTqbzjKF1MUyfOKL+AjcU= github.com/ashanbrown/makezero v1.1.1 h1:iCQ87C0V0vSyO+M9E/FZYbu65auqH0lnsOkf5FcB28s= github.com/ashanbrown/makezero v1.1.1/go.mod h1:i1bJLCRSCHOcOa9Y6MyF2FTfMZMFdHvxKHxgO5Z1axI= +github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8= +github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/bkielbasa/cyclop v1.2.0 h1:7Jmnh0yL2DjKfw28p86YTd/B4lRGcNuu12sKE35sM7A= -github.com/bkielbasa/cyclop v1.2.0/go.mod h1:qOI0yy6A7dYC4Zgsa72Ppm9kONl0RoIlPbzot9mhmeI= +github.com/bkielbasa/cyclop v1.2.1 h1:AeF71HZDob1P2/pRm1so9cd1alZnrpyc4q2uP2l0gJY= +github.com/bkielbasa/cyclop v1.2.1/go.mod h1:K/dT/M0FPAiYjBgQGau7tz+3TMh4FWAEqlMhzFWCrgM= github.com/blizzy78/varnamelen v0.8.0 h1:oqSblyuQvFsW1hbBHh1zfwrKe3kcSj0rnXkKzsQ089M= github.com/blizzy78/varnamelen v0.8.0/go.mod h1:V9TzQZ4fLJ1DSrjVDfl89H7aMnTvKkApdHeyESmyR7k= -github.com/bombsimon/wsl/v3 v3.4.0 h1:RkSxjT3tmlptwfgEgTgU+KYKLI35p/tviNXNXiL2aNU= -github.com/bombsimon/wsl/v3 v3.4.0/go.mod h1:KkIB+TXkqy6MvK9BDZVbZxKNYsE1/oLRJbIFtf14qqo= -github.com/breml/bidichk v0.2.3 h1:qe6ggxpTfA8E75hdjWPZ581sY3a2lnl0IRxLQFelECI= -github.com/breml/bidichk v0.2.3/go.mod h1:8u2C6DnAy0g2cEq+k/A2+tr9O1s+vHGxWn0LTc70T2A= -github.com/breml/errchkjson v0.3.0 h1:YdDqhfqMT+I1vIxPSas44P+9Z9HzJwCeAzjB8PxP1xw= -github.com/breml/errchkjson v0.3.0/go.mod h1:9Cogkyv9gcT8HREpzi3TiqBxCqDzo8awa92zSDFcofU= -github.com/butuzov/ireturn v0.1.1 h1:QvrO2QF2+/Cx1WA/vETCIYBKtRjc30vesdoPUNo1EbY= -github.com/butuzov/ireturn v0.1.1/go.mod h1:Wh6Zl3IMtTpaIKbmwzqi6olnM9ptYQxxVacMsOEFPoc= +github.com/bombsimon/wsl/v4 v4.2.1 h1:Cxg6u+XDWff75SIFFmNsqnIOgob+Q9hG6y/ioKbRFiM= +github.com/bombsimon/wsl/v4 v4.2.1/go.mod h1:Xu/kDxGZTofQcDGCtQe9KCzhHphIe0fDuyWTxER9Feo= +github.com/breml/bidichk v0.2.7 h1:dAkKQPLl/Qrk7hnP6P+E0xOodrq8Us7+U0o4UBOAlQY= +github.com/breml/bidichk v0.2.7/go.mod h1:YodjipAGI9fGcYM7II6wFvGhdMYsC5pHDlGzqvEW3tQ= +github.com/breml/errchkjson v0.3.6 h1:VLhVkqSBH96AvXEyclMR37rZslRrY2kcyq+31HCsVrA= +github.com/breml/errchkjson v0.3.6/go.mod h1:jhSDoFheAF2RSDOlCfhHO9KqhZgAYLyvHe7bRCX8f/U= +github.com/butuzov/ireturn v0.3.0 h1:hTjMqWw3y5JC3kpnC5vXmFJAWI/m31jaCYQqzkS6PL0= +github.com/butuzov/ireturn v0.3.0/go.mod h1:A09nIiwiqzN/IoVo9ogpa0Hzi9fex1kd9PSD6edP5ZA= +github.com/butuzov/mirror v1.2.0 h1:9YVK1qIjNspaqWutSv8gsge2e/Xpq1eqEkslEUHy5cs= +github.com/butuzov/mirror v1.2.0/go.mod h1:DqZZDtzm42wIAIyHXeN8W/qb1EPlb9Qn/if9icBOpdQ= +github.com/catenacyber/perfsprint v0.7.1 h1:PGW5G/Kxn+YrN04cRAZKC+ZuvlVwolYMrIyyTJ/rMmc= +github.com/catenacyber/perfsprint v0.7.1/go.mod h1:/wclWYompEyjUD2FuIIDVKNkqz7IgBIWXIH3V0Zol50= +github.com/ccojocar/zxcvbn-go v1.0.2 h1:na/czXU8RrhXO4EZme6eQJLR4PzcGsahsBOAwU6I3Vg= +github.com/ccojocar/zxcvbn-go v1.0.2/go.mod h1:g1qkXtUSvHP8lhHp5GrSmTz6uWALGRMQdw6Qnz/hi60= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cbYE= github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/charithe/durationcheck v0.0.9 h1:mPP4ucLrf/rKZiIG/a9IPXHGlh8p4CzgpyTy6EEutYk= -github.com/charithe/durationcheck v0.0.9/go.mod h1:SSbRIBVfMjCi/kEB6K65XEA83D6prSM8ap1UCpNKtgg= -github.com/chavacava/garif v0.0.0-20221024190013-b3ef35877348 h1:cy5GCEZLUCshCGCRRUjxHrDUqkB4l5cuUt3ShEckQEo= -github.com/chavacava/garif v0.0.0-20221024190013-b3ef35877348/go.mod h1:f/miWtG3SSuTxKsNK3o58H1xl+XV6ZIfbC6p7lPPB8U= +github.com/charithe/durationcheck v0.0.10 h1:wgw73BiocdBDQPik+zcEoBG/ob8uyBHf2iyoHGPf5w4= +github.com/charithe/durationcheck v0.0.10/go.mod h1:bCWXb7gYRysD1CU3C+u4ceO49LoGOY1C1L6uouGNreQ= +github.com/chavacava/garif v0.1.0 h1:2JHa3hbYf5D9dsgseMKAmc/MZ109otzgNFk5s87H9Pc= +github.com/chavacava/garif v0.1.0/go.mod h1:XMyYCkEL58DF0oyW4qDjjnPWONs2HBqYKI+UIPD+Gww= github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/ckaznocha/intrange v0.1.2 h1:3Y4JAxcMntgb/wABQ6e8Q8leMd26JbX2790lIss9MTI= +github.com/ckaznocha/intrange v0.1.2/go.mod h1:RWffCw/vKBwHeOEwWdCikAtY0q4gGt8VhJZEEA5n+RE= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= -github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= -github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/curioswitch/go-reassign v0.2.0 h1:G9UZyOcpk/d7Gd6mqYgd8XYWFMw/znxwGDUstnC9DIo= github.com/curioswitch/go-reassign v0.2.0/go.mod h1:x6OpXuWvgfQaMGks2BZybTngWjT84hqJfKoO8Tt/Roc= -github.com/daixiang0/gci v0.9.1 h1:jBrwBmBZTDsGsXiaCTLIe9diotp1X4X64zodFrh7l+c= -github.com/daixiang0/gci v0.9.1/go.mod h1:EpVfrztufwVgQRXjnX4zuNinEpLj5OmMjtu/+MB0V0c= +github.com/daixiang0/gci v0.13.4 h1:61UGkmpoAcxHM2hhNkZEf5SzwQtWJXTSws7jaPyqwlw= +github.com/daixiang0/gci v0.13.4/go.mod h1:12etP2OniiIdP4q+kjUGrC/rUagga7ODbqsom5Eo5Yk= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/denis-tingaikin/go-header v0.4.3 h1:tEaZKAlqql6SKCY++utLmkPLd6K8IBM20Ha7UVm+mtU= -github.com/denis-tingaikin/go-header v0.4.3/go.mod h1:0wOCWuN71D5qIgE2nz9KrKmuYBAC2Mra5RassOIQ2/c= +github.com/denis-tingaikin/go-header v0.5.0 h1:SRdnP5ZKvcO9KKRP1KJrhFR3RrlGuD+42t4429eC9k8= +github.com/denis-tingaikin/go-header v0.5.0/go.mod h1:mMenU5bWrok6Wl2UsZjy+1okegmwQ3UgWl4V1D8gjlY= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= -github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= -github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/esimonov/ifshort v1.0.4 h1:6SID4yGWfRae/M7hkVDVVyppy8q/v9OuxNdmjLQStBA= -github.com/esimonov/ifshort v1.0.4/go.mod h1:Pe8zjlRrJ80+q2CxHLfEOfTwxCZ4O+MuhcHcfgNWTk0= -github.com/ettle/strcase v0.1.1 h1:htFueZyVeE1XNnMEfbqp5r67qAN/4r6ya1ysq8Q+Zcw= -github.com/ettle/strcase v0.1.1/go.mod h1:hzDLsPC7/lwKyBOywSHEP89nt2pDgdy+No1NBA9o9VY= -github.com/fatih/color v1.14.1 h1:qfhVLaG5s+nCROl1zJsZRxFeYrHLqWroPOQ8BWiNb4w= -github.com/fatih/color v1.14.1/go.mod h1:2oHN61fhTpgcxD3TSWCgKDiH1+x4OiDVVGH8WlgGZGg= +github.com/ettle/strcase v0.2.0 h1:fGNiVF21fHXpX1niBgk0aROov1LagYsOwV/xqKDKR/Q= +github.com/ettle/strcase v0.2.0/go.mod h1:DajmHElDSaX76ITe3/VHVyMin4LWSJN5Z909Wp+ED1A= +github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= +github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= github.com/fatih/structtag v1.2.0 h1:/OdNE99OxoI/PqaW/SuSK9uxxT3f/tcSZgon/ssNSx4= github.com/fatih/structtag v1.2.0/go.mod h1:mBJUNpUnHmRKrKlQQlmCrh5PuhftFbNv8Ys4/aAZl94= -github.com/firefart/nonamedreturns v1.0.4 h1:abzI1p7mAEPYuR4A+VLKn4eNDOycjYo2phmY9sfv40Y= -github.com/firefart/nonamedreturns v1.0.4/go.mod h1:TDhe/tjI1BXo48CmYbUduTV7BdIga8MAO/xbKdcVsGI= -github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= +github.com/firefart/nonamedreturns v1.0.5 h1:tM+Me2ZaXs8tfdDw3X6DOX++wMCOqzYUho6tUTYIdRA= +github.com/firefart/nonamedreturns v1.0.5/go.mod h1:gHJjDqhGM4WyPt639SOZs+G89Ko7QKH5R5BhnO6xJhw= +github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= +github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.5.4 h1:jRbGcIw6P2Meqdwuo0H1p6JVLbL5DHKAKlYndzMwVZI= github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmVXmkdnm1bU= github.com/fzipp/gocyclo v0.6.0 h1:lsblElZG7d3ALtGMx9fmxeTKZaLLpU8mET09yN4BBLo= github.com/fzipp/gocyclo v0.6.0/go.mod h1:rXPyn8fnlpa0R2csP/31uerbiVBugk5whMdlyaLkLoA= -github.com/go-critic/go-critic v0.6.7 h1:1evPrElnLQ2LZtJfmNDzlieDhjnq36SLgNzisx06oPM= -github.com/go-critic/go-critic v0.6.7/go.mod h1:fYZUijFdcnxgx6wPjQA2QEjIRaNCT0gO8bhexy6/QmE= +github.com/ghostiam/protogetter v0.3.6 h1:R7qEWaSgFCsy20yYHNIJsU9ZOb8TziSRRxuAOTVKeOk= +github.com/ghostiam/protogetter v0.3.6/go.mod h1:7lpeDnEJ1ZjL/YtyoN99ljO4z0pd3H0d18/t2dPBxHw= +github.com/go-critic/go-critic v0.11.4 h1:O7kGOCx0NDIni4czrkRIXTnit0mkyKOCePh3My6OyEU= +github.com/go-critic/go-critic v0.11.4/go.mod h1:2QAdo4iuLik5S9YG0rT4wcZ8QxwHYkrr6/2MWAiv/vc= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= @@ -144,26 +160,32 @@ github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vb github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= -github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= +github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= +github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= +github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= github.com/go-toolsmith/astcast v1.1.0 h1:+JN9xZV1A+Re+95pgnMgDboWNVnIMMQXwfBwLRPgSC8= github.com/go-toolsmith/astcast v1.1.0/go.mod h1:qdcuFWeGGS2xX5bLM/c3U9lewg7+Zu4mr+xPwZIB4ZU= -github.com/go-toolsmith/astcopy v1.0.3 h1:r0bgSRlMOAgO+BdQnVAcpMSMkrQCnV6ZJmIkrJgcJj0= -github.com/go-toolsmith/astcopy v1.0.3/go.mod h1:4TcEdbElGc9twQEYpVo/aieIXfHhiuLh4aLAck6dO7Y= -github.com/go-toolsmith/astequal v1.0.2/go.mod h1:9Ai4UglvtR+4up+bAD4+hCj7iTo4m/OXVTSLnCyTAx4= +github.com/go-toolsmith/astcopy v1.1.0 h1:YGwBN0WM+ekI/6SS6+52zLDEf8Yvp3n2seZITCUBt5s= +github.com/go-toolsmith/astcopy v1.1.0/go.mod h1:hXM6gan18VA1T/daUEHCFcYiW8Ai1tIwIzHY6srfEAw= github.com/go-toolsmith/astequal v1.0.3/go.mod h1:9Ai4UglvtR+4up+bAD4+hCj7iTo4m/OXVTSLnCyTAx4= -github.com/go-toolsmith/astequal v1.1.0 h1:kHKm1AWqClYn15R0K1KKE4RG614D46n+nqUQ06E1dTw= github.com/go-toolsmith/astequal v1.1.0/go.mod h1:sedf7VIdCL22LD8qIvv7Nn9MuWJruQA/ysswh64lffQ= +github.com/go-toolsmith/astequal v1.2.0 h1:3Fs3CYZ1k9Vo4FzFhwwewC3CHISHDnVUPC4x0bI2+Cw= +github.com/go-toolsmith/astequal v1.2.0/go.mod h1:c8NZ3+kSFtFY/8lPso4v8LuJjdJiUFVnSuU3s0qrrDY= github.com/go-toolsmith/astfmt v1.1.0 h1:iJVPDPp6/7AaeLJEruMsBUlOYCmvg0MoCfJprsOmcco= github.com/go-toolsmith/astfmt v1.1.0/go.mod h1:OrcLlRwu0CuiIBp/8b5PYF9ktGVZUjlNMV634mhwuQ4= github.com/go-toolsmith/astp v1.1.0 h1:dXPuCl6u2llURjdPLLDxJeZInAeZ0/eZwFJmqZMnpQA= github.com/go-toolsmith/astp v1.1.0/go.mod h1:0T1xFGz9hicKs8Z5MfAqSUitoUYS30pDMsRVIDHs8CA= -github.com/go-toolsmith/pkgload v1.0.2-0.20220101231613-e814995d17c5 h1:eD9POs68PHkwrx7hAB78z1cb6PfGq/jyWn3wJywsH1o= +github.com/go-toolsmith/pkgload v1.2.2 h1:0CtmHq/02QhxcF7E9N5LIFcYFsMR5rdovfqTtRKkgIk= +github.com/go-toolsmith/pkgload v1.2.2/go.mod h1:R2hxLNRKuAsiXCo2i5J6ZQPhnPMOVtU+f0arbFPWCus= github.com/go-toolsmith/strparse v1.0.0/go.mod h1:YI2nUKP9YGZnL/L1/DLFBfixrcjslWct4wyljWhSRy8= github.com/go-toolsmith/strparse v1.1.0 h1:GAioeZUK9TGxnLS+qfdqNbA4z0SSm5zVNtCQiyP2Bvw= github.com/go-toolsmith/strparse v1.1.0/go.mod h1:7ksGy58fsaQkGQlY8WVoBFNyEPMGuJin1rfoPS4lBSQ= github.com/go-toolsmith/typep v1.1.0 h1:fIRYDyF+JywLfqzyhdiHzRop/GQDxxNhLGQ6gFUNHus= github.com/go-toolsmith/typep v1.1.0/go.mod h1:fVIw+7zjdsMxDA3ITWnH1yOiw1rnTQKCsF/sk2H/qig= +github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1 h1:TQcrn6Wq+sKGkpyPvppOz99zsMBaUOKXq6HSv655U1c= +github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM= github.com/go-xmlfmt/xmlfmt v1.1.2 h1:Nea7b4icn8s57fTx1M5AI4qQT5HEM3rVUO8MuE6g80U= github.com/go-xmlfmt/xmlfmt v1.1.2/go.mod h1:aUCEOzzezBEjDBbFBoSiya/gduyIiWYRP6CnSFIV8AM= github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= @@ -197,28 +219,25 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 h1:23T5iq8rbUYlhpt5DB4XJkc6BU31uODLD1o1gKvZmD0= -github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2/go.mod h1:k9Qvh+8juN+UKMCS/3jFtGICgW8O96FVaZsaxdzDkR4= +github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a h1:w8hkcTqaFpzKqonE9uMCefW1WDie15eSP/4MssdenaM= github.com/golangci/dupl v0.0.0-20180902072040-3e9179ac440a/go.mod h1:ryS0uhF+x9jgbj/N71xsEqODy9BN81/GonCZiOzirOk= -github.com/golangci/go-misc v0.0.0-20220329215616-d24fe342adfe h1:6RGUuS7EGotKx6J5HIP8ZtyMdiDscjMLfRBSPuzVVeo= -github.com/golangci/go-misc v0.0.0-20220329215616-d24fe342adfe/go.mod h1:gjqyPShc/m8pEMpk0a3SeagVb0kaqvhscv+i9jI5ZhQ= -github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2 h1:amWTbTGqOZ71ruzrdA+Nx5WA3tV1N0goTspwmKCQvBY= -github.com/golangci/gofmt v0.0.0-20220901101216-f2edd75033f2/go.mod h1:9wOXstvyDRshQ9LggQuzBCGysxs3b6Uo/1MvYCR2NMs= -github.com/golangci/golangci-lint v1.51.2 h1:yIcsT1X9ZYHdSpeWXRT1ORC/FPGSqDHbHsu9uk4FK7M= -github.com/golangci/golangci-lint v1.51.2/go.mod h1:KH9Q7/3glwpYSknxUgUyLlAv46A8fsSKo1hH2wDvkr8= -github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0 h1:MfyDlzVjl1hoaPzPD4Gpb/QgoRfSBR0jdhwGyAWwMSA= -github.com/golangci/lint-1 v0.0.0-20191013205115-297bf364a8e0/go.mod h1:66R6K6P6VWk9I95jvqGxkqJxVWGFy9XlDwLwVz1RCFg= -github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca h1:kNY3/svz5T29MYHubXix4aDDuE3RWHkPvopM/EDv/MA= -github.com/golangci/maligned v0.0.0-20180506175553-b1d89398deca/go.mod h1:tvlJhZqDe4LMs4ZHD0oMUlt9G2LWuDGoisJTBzLMV9o= -github.com/golangci/misspell v0.4.0 h1:KtVB/hTK4bbL/S6bs64rYyk8adjmh1BygbBiaAiX+a0= -github.com/golangci/misspell v0.4.0/go.mod h1:W6O/bwV6lGDxUCChm2ykw9NQdd5bYd1Xkjo88UcWyJc= -github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6 h1:DIPQnGy2Gv2FSA4B/hh8Q7xx3B7AIDk3DAMeHclH1vQ= -github.com/golangci/revgrep v0.0.0-20220804021717-745bb2f7c2e6/go.mod h1:0AKcRCkMoKvUvlf89F6O7H2LYdhr1zBh736mBItOdRs= -github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 h1:zwtduBRr5SSWhqsYNgcuWO2kFlpdOZbP0+yRjmvPGys= -github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4/go.mod h1:Izgrg8RkN3rCIMLGE9CyYmU9pY2Jer6DgANEnZ/L/cQ= +github.com/golangci/gofmt v0.0.0-20231018234816-f50ced29576e h1:ULcKCDV1LOZPFxGZaA6TlQbiM3J2GCPnkx/bGF6sX/g= +github.com/golangci/gofmt v0.0.0-20231018234816-f50ced29576e/go.mod h1:Pm5KhLPA8gSnQwrQ6ukebRcapGb/BG9iUkdaiCcGHJM= +github.com/golangci/golangci-lint v1.59.0 h1:st69YDnAH/v2QXDcgUaZ0seQajHScPALBVkyitYLXEk= +github.com/golangci/golangci-lint v1.59.0/go.mod h1:QNA32UWdUdHXnu+Ap5/ZU4WVwyp2tL94UxEXrSErjg0= +github.com/golangci/misspell v0.5.1 h1:/SjR1clj5uDjNLwYzCahHwIOPmQgoH04AyQIiWGbhCM= +github.com/golangci/misspell v0.5.1/go.mod h1:keMNyY6R9isGaSAu+4Q8NMBwMPkh15Gtc8UCVoDtAWo= +github.com/golangci/modinfo v0.3.4 h1:oU5huX3fbxqQXdfspamej74DFX0kyGLkw1ppvXoJ8GA= +github.com/golangci/modinfo v0.3.4/go.mod h1:wytF1M5xl9u0ij8YSvhkEVPP3M5Mc7XLl1pxH3B2aUM= +github.com/golangci/plugin-module-register v0.1.1 h1:TCmesur25LnyJkpsVrupv1Cdzo+2f7zX0H6Jkw1Ol6c= +github.com/golangci/plugin-module-register v0.1.1/go.mod h1:TTpqoB6KkwOJMV8u7+NyXMrkwwESJLOkfl9TxR1DGFc= +github.com/golangci/revgrep v0.5.3 h1:3tL7c1XBMtWHHqVpS5ChmiAAoe4PF/d5+ULzV9sLAzs= +github.com/golangci/revgrep v0.5.3/go.mod h1:U4R/s9dlXZsg8uJmaR1GrloUr14D7qDl8gi2iPXJH8k= +github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed h1:IURFTjxeTfNFP0hTEi1YKjB/ub8zkpaOqFFMApi2EAs= +github.com/golangci/unconvert v0.0.0-20240309020433-c5143eacb3ed/go.mod h1:XLXN8bNw4CGRPaqgl3bv/lhz7bsGPh4/xSaMTbo2vkQ= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= @@ -231,13 +250,13 @@ github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= -github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= -github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= @@ -245,21 +264,15 @@ github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= -github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 h1:k7nVchz72niMH6YLQNvHSdIE7iqsQxK1P41mySCvssg= +github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= -github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= -github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= -github.com/gordonklaus/ineffassign v0.0.0-20230107090616-13ace0543b28 h1:9alfqbrhuD+9fLZ4iaAVwhlp5PEhmnBt7yvK2Oy5C1U= -github.com/gordonklaus/ineffassign v0.0.0-20230107090616-13ace0543b28/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= -github.com/gostaticanalysis/analysisutil v0.0.3/go.mod h1:eEOZF4jCKGi+aprrirO9e7WKB3beBRtWgqGunKl6pKE= -github.com/gostaticanalysis/analysisutil v0.1.0/go.mod h1:dMhHRU9KTiDcuLGdy87/2gTR8WruwYZrKdRq9m1O6uw= +github.com/gordonklaus/ineffassign v0.1.0 h1:y2Gd/9I7MdY1oEIt+n+rowjBNDcLQq3RsH5hwJd0f9s= +github.com/gordonklaus/ineffassign v0.1.0/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= github.com/gostaticanalysis/analysisutil v0.7.1 h1:ZMCjoue3DtDWQ5WyU16YbjbQEQ3VuzwxALrpYd+HeKk= github.com/gostaticanalysis/analysisutil v0.7.1/go.mod h1:v21E3hY37WKMGSnbsw2S/ojApNWb6C1//mXO48CXbVc= -github.com/gostaticanalysis/comment v1.3.0/go.mod h1:xMicKDx7XRXYdVwY9f9wQpDJVnqWxw9wCauCMKp+IBI= github.com/gostaticanalysis/comment v1.4.1/go.mod h1:ih6ZxzTHLdadaiSnF5WY3dxUoXfXAlTaRzuaNDlSado= github.com/gostaticanalysis/comment v1.4.2 h1:hlnx5+S2fY9Zo9ePo4AhgYsYHbM2+eAv8m/s1JiCd6Q= github.com/gostaticanalysis/comment v1.4.2/go.mod h1:KLUTGDv6HOCotCH8h2erHKmpci2ZoR8VPu34YA2uzdM= @@ -269,13 +282,10 @@ github.com/gostaticanalysis/nilerr v0.1.1 h1:ThE+hJP0fEp4zWLkWHWcRyI2Od0p7DlgYG3 github.com/gostaticanalysis/nilerr v0.1.1/go.mod h1:wZYb6YI5YAxxq0i1+VJbY0s2YONW0HU0GPE3+5PWN4A= github.com/gostaticanalysis/testutil v0.3.1-0.20210208050101-bfb5c8eec0e4/go.mod h1:D+FIZ+7OahH3ePw/izIEeH5I06eKs1IKI4Xr64/Am3M= github.com/gostaticanalysis/testutil v0.4.0 h1:nhdCmubdmDF6VEatUNjgUZBJKWRqugoISdUv3PPQgHY= -github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA= -github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= -github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= -github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= +github.com/gostaticanalysis/testutil v0.4.0/go.mod h1:bLIoPefWXrRi/ssLFWX1dx7Repi5x3CuviD3dgAZaBU= github.com/hashicorp/go-version v1.2.1/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= -github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mOkIeek= -github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= +github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= +github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= @@ -283,15 +293,16 @@ github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM= github.com/hexops/gotextdiff v1.0.3/go.mod h1:pSWU5MAI3yDq+fZBTazCSJysOMbxWL1BSow5/V2vxeg= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= -github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc= -github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= -github.com/jgautheron/goconst v1.5.1 h1:HxVbL1MhydKs8R8n/HE5NPvzfaYmQJA3o879lE4+WcM= -github.com/jgautheron/goconst v1.5.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/jgautheron/goconst v1.7.1 h1:VpdAG7Ca7yvvJk5n8dMwQhfEZJh95kl/Hl9S1OI5Jkk= +github.com/jgautheron/goconst v1.7.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4= github.com/jingyugao/rowserrcheck v1.1.1 h1:zibz55j/MJtLsjP1OF4bSdgXxwL1b+Vn7Tjzq7gFzUs= github.com/jingyugao/rowserrcheck v1.1.1/go.mod h1:4yvlZSDb3IyDTUZJUmpZfm2Hwok+Dtp+nu2qOq+er9c= github.com/jirfag/go-printf-func-name v0.0.0-20200119135958-7558a9eaa5af h1:KA9BjwUk7KlCh6S9EAGWBt1oExIUv9WyNCiRz5amv48= github.com/jirfag/go-printf-func-name v0.0.0-20200119135958-7558a9eaa5af/go.mod h1:HEWGJkRDzjJY2sqdDwxccsGicWEf9BQOZsq2tV+xzM0= +github.com/jjti/go-spancheck v0.6.1 h1:ZK/wE5Kyi1VX3PJpUO2oEgeoI4FWOUm7Shb2Gbv5obI= +github.com/jjti/go-spancheck v0.6.1/go.mod h1:vF1QkOO159prdo6mHRxak2CpzDpHAfKiPUDP/NeRnX8= github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= @@ -303,60 +314,62 @@ github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7V github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/julz/importas v0.1.0 h1:F78HnrsjY3cR7j0etXy5+TU1Zuy7Xt08X/1aJnH5xXY= github.com/julz/importas v0.1.0/go.mod h1:oSFU2R4XK/P7kNBrnL/FEQlDGN1/6WoxXEjSSXO0DV0= -github.com/junk1tm/musttag v0.4.5 h1:d+mpJ1vn6WFEVKHwkgJiIedis1u/EawKOuUTygAUtCo= -github.com/junk1tm/musttag v0.4.5/go.mod h1:XkcL/9O6RmD88JBXb+I15nYRl9W4ExhgQeCBEhfMC8U= -github.com/kisielk/errcheck v1.6.3 h1:dEKh+GLHcWm2oN34nMvDzn1sqI0i0WxPvrgiJA5JuM8= -github.com/kisielk/errcheck v1.6.3/go.mod h1:nXw/i/MfnvRHqXa7XXmQMUB0oNFGuBrNI8d8NLy0LPw= -github.com/kisielk/gotool v1.0.0 h1:AV2c/EiW3KqPNT9ZKl07ehoAGi4C5/01Cfbblndcapg= +github.com/karamaru-alpha/copyloopvar v1.1.0 h1:x7gNyKcC2vRBO1H2Mks5u1VxQtYvFiym7fCjIP8RPos= +github.com/karamaru-alpha/copyloopvar v1.1.0/go.mod h1:u7CIfztblY0jZLOQZgH3oYsJzpC2A7S6u/lfgSXHy0k= +github.com/kisielk/errcheck v1.7.0 h1:+SbscKmWJ5mOK/bO1zS60F5I9WwZDWOfRsC4RwfwRV0= +github.com/kisielk/errcheck v1.7.0/go.mod h1:1kLL+jV4e+CFfueBmI1dSK2ADDyQnlrnrY/FqKluHJQ= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/kkHAIKE/contextcheck v1.1.3 h1:l4pNvrb8JSwRd51ojtcOxOeHJzHek+MtOyXbaR0uvmw= -github.com/kkHAIKE/contextcheck v1.1.3/go.mod h1:PG/cwd6c0705/LM0KTr1acO2gORUxkSVWyLJOFW5qoo= +github.com/kkHAIKE/contextcheck v1.1.5 h1:CdnJh63tcDe53vG+RebdpdXJTc9atMgGqdx8LXxiilg= +github.com/kkHAIKE/contextcheck v1.1.5/go.mod h1:O930cpht4xb1YQpK+1+AgoM3mFsvxr7uyFptcnWTYUA= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kulti/thelper v0.6.3 h1:ElhKf+AlItIu+xGnI990no4cE2+XaSu1ULymV2Yulxs= github.com/kulti/thelper v0.6.3/go.mod h1:DsqKShOvP40epevkFrvIwkCMNYxMeTNjdWL4dqWHZ6I= -github.com/kunwardeep/paralleltest v1.0.6 h1:FCKYMF1OF2+RveWlABsdnmsvJrei5aoyZoaGS+Ugg8g= -github.com/kunwardeep/paralleltest v1.0.6/go.mod h1:Y0Y0XISdZM5IKm3TREQMZ6iteqn1YuwCsJO/0kL9Zes= +github.com/kunwardeep/paralleltest v1.0.10 h1:wrodoaKYzS2mdNVnc4/w31YaXFtsc21PCTdvWJ/lDDs= +github.com/kunwardeep/paralleltest v1.0.10/go.mod h1:2C7s65hONVqY7Q5Efj5aLzRCNLjw2h4eMc9EcypGjcY= github.com/kyoh86/exportloopref v0.1.11 h1:1Z0bcmTypkL3Q4k+IDHMWTcnCliEZcaPiIe0/ymEyhQ= github.com/kyoh86/exportloopref v0.1.11/go.mod h1:qkV4UF1zGl6EkF1ox8L5t9SwyeBAZ3qLMd6up458uqA= -github.com/ldez/gomoddirectives v0.2.3 h1:y7MBaisZVDYmKvt9/l1mjNCiSA1BVn34U0ObUcJwlhA= -github.com/ldez/gomoddirectives v0.2.3/go.mod h1:cpgBogWITnCfRq2qGoDkKMEVSaarhdBr6g8G04uz6d0= -github.com/ldez/tagliatelle v0.4.0 h1:sylp7d9kh6AdXN2DpVGHBRb5guTVAgOxqNGhbqc4b1c= -github.com/ldez/tagliatelle v0.4.0/go.mod h1:mNtTfrHy2haaBAw+VT7IBV6VXBThS7TCreYWbBcJ87I= -github.com/leonklingele/grouper v1.1.1 h1:suWXRU57D4/Enn6pXR0QVqqWWrnJ9Osrz+5rjt8ivzU= -github.com/leonklingele/grouper v1.1.1/go.mod h1:uk3I3uDfi9B6PeUjsCKi6ndcf63Uy7snXgR4yDYQVDY= +github.com/lasiar/canonicalheader v1.1.1 h1:wC+dY9ZfiqiPwAexUApFush/csSPXeIi4QqyxXmng8I= +github.com/lasiar/canonicalheader v1.1.1/go.mod h1:cXkb3Dlk6XXy+8MVQnF23CYKWlyA7kfQhSw2CcZtZb0= +github.com/ldez/gomoddirectives v0.2.4 h1:j3YjBIjEBbqZ0NKtBNzr8rtMHTOrLPeiwTkfUJZ3alg= +github.com/ldez/gomoddirectives v0.2.4/go.mod h1:oWu9i62VcQDYp9EQ0ONTfqLNh+mDLWWDO+SO0qSQw5g= +github.com/ldez/tagliatelle v0.5.0 h1:epgfuYt9v0CG3fms0pEgIMNPuFf/LpPIfjk4kyqSioo= +github.com/ldez/tagliatelle v0.5.0/go.mod h1:rj1HmWiL1MiKQuOONhd09iySTEkUuE/8+5jtPYz9xa4= +github.com/leonklingele/grouper v1.1.2 h1:o1ARBDLOmmasUaNDesWqWCIFH3u7hoFlM84YrjT3mIY= +github.com/leonklingele/grouper v1.1.2/go.mod h1:6D0M/HVkhs2yRKRFZUoGjeDy7EZTfFBE9gl4kjmIGkA= github.com/lufeee/execinquery v1.2.1 h1:hf0Ems4SHcUGBxpGN7Jz78z1ppVkP/837ZlETPCEtOM= github.com/lufeee/execinquery v1.2.1/go.mod h1:EC7DrEKView09ocscGHC+apXMIaorh4xqSxS/dy8SbM= +github.com/macabu/inamedparam v0.1.3 h1:2tk/phHkMlEL/1GNe/Yf6kkR/hkcUdAEY3L0hjYV1Mk= +github.com/macabu/inamedparam v0.1.3/go.mod h1:93FLICAIk/quk7eaPPQvbzihUdn/QkGDwIZEoLtpH6I= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= github.com/maratori/testableexamples v1.0.0 h1:dU5alXRrD8WKSjOUnmJZuzdxWOEQ57+7s93SLMxb2vI= github.com/maratori/testableexamples v1.0.0/go.mod h1:4rhjL1n20TUTT4vdh3RDqSizKLyXp7K2u6HgraZCGzE= -github.com/maratori/testpackage v1.1.0 h1:GJY4wlzQhuBusMF1oahQCBtUV/AQ/k69IZ68vxaac2Q= -github.com/maratori/testpackage v1.1.0/go.mod h1:PeAhzU8qkCwdGEMTEupsHJNlQu2gZopMC6RjbhmHeDc= -github.com/matoous/godox v0.0.0-20210227103229-6504466cf951 h1:pWxk9e//NbPwfxat7RXkts09K+dEBJWakUWwICVqYbA= -github.com/matoous/godox v0.0.0-20210227103229-6504466cf951/go.mod h1:1BELzlh859Sh1c6+90blK8lbYy0kwQf1bYlBhBysy1s= +github.com/maratori/testpackage v1.1.1 h1:S58XVV5AD7HADMmD0fNnziNHqKvSdDuEKdPD1rNTU04= +github.com/maratori/testpackage v1.1.1/go.mod h1:s4gRK/ym6AMrqpOa/kEbQTV4Q4jb7WeLZzVhVVVOQMc= +github.com/matoous/godox v0.0.0-20230222163458-006bad1f9d26 h1:gWg6ZQ4JhDfJPqlo2srm/LN17lpybq15AryXIRcWYLE= +github.com/matoous/godox v0.0.0-20230222163458-006bad1f9d26/go.mod h1:1BELzlh859Sh1c6+90blK8lbYy0kwQf1bYlBhBysy1s= github.com/matryer/is v1.4.0 h1:sosSmIWwkYITGrxZ25ULNDeKiMNzFSr4V/eqBQP0PeE= github.com/matryer/is v1.4.0/go.mod h1:8I/i5uYgLzgsgEloJE1U6xx5HkBQpAZvepWuujKwMRU= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= -github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng= -github.com/mattn/go-isatty v0.0.17/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0= github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/mbilski/exhaustivestruct v1.2.0 h1:wCBmUnSYufAHO6J4AVWY6ff+oxWxsVFrwgOdMUQePUo= -github.com/mbilski/exhaustivestruct v1.2.0/go.mod h1:OeTBVxQWoEmB2J2JCHmXWPJ0aksxSUOUy+nvtVEfzXc= -github.com/mgechev/revive v1.2.5 h1:UF9AR8pOAuwNmhXj2odp4mxv9Nx2qUIwVz8ZsU+Mbec= -github.com/mgechev/revive v1.2.5/go.mod h1:nFOXent79jMTISAfOAasKfy0Z2Ejq0WX7Qn/KAdYopI= +github.com/mgechev/revive v1.3.7 h1:502QY0vQGe9KtYJ9FpxMz9rL+Fc/P13CI5POL4uHCcE= +github.com/mgechev/revive v1.3.7/go.mod h1:RJ16jUbF0OWC3co/+XTxmFNgEpUPwnnA0BRllX2aDNA= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= @@ -366,44 +379,47 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= -github.com/moricho/tparallel v0.2.1 h1:95FytivzT6rYzdJLdtfn6m1bfFJylOJK41+lgv/EHf4= -github.com/moricho/tparallel v0.2.1/go.mod h1:fXEIZxG2vdfl0ZF8b42f5a78EhjjD5mX8qUplsoSU4k= +github.com/moricho/tparallel v0.3.1 h1:fQKD4U1wRMAYNngDonW5XupoB/ZGJHdpzrWqgyg9krA= +github.com/moricho/tparallel v0.3.1/go.mod h1:leENX2cUv7Sv2qDgdi0D0fCftN8fRC67Bcn8pqzeYNI= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/nakabonne/nestif v0.3.1 h1:wm28nZjhQY5HyYPx+weN3Q65k6ilSBxDb8v5S81B81U= github.com/nakabonne/nestif v0.3.1/go.mod h1:9EtoZochLn5iUprVDmDjqGKPofoUEBL8U4Ngq6aY7OE= -github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 h1:4kuARK6Y6FxaNu/BnU2OAaLF86eTVhP2hjTB6iMvItA= -github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354/go.mod h1:KSVJerMDfblTH7p5MZaTt+8zaT2iEk3AkVb9PQdZuE8= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= -github.com/nishanths/exhaustive v0.9.5 h1:TzssWan6orBiLYVqewCG8faud9qlFntJE30ACpzmGME= -github.com/nishanths/exhaustive v0.9.5/go.mod h1:IbwrGdVMizvDcIxPYGVdQn5BqWJaOwpCvg4RGb8r/TA= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nishanths/exhaustive v0.12.0 h1:vIY9sALmw6T/yxiASewa4TQcFsVYZQQRUQJhKRf3Swg= +github.com/nishanths/exhaustive v0.12.0/go.mod h1:mEZ95wPIZW+x8kC4TgC+9YCUgiST7ecevsVDTgc2obs= github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= github.com/nishanths/predeclared v0.2.2/go.mod h1:RROzoN6TnGQupbC+lqggsOlcgysk3LMK/HI84Mp280c= -github.com/nunnatsa/ginkgolinter v0.8.1 h1:/y4o/0hV+ruUHj4xXh89xlFjoaitnI4LnkpuYs02q1c= -github.com/nunnatsa/ginkgolinter v0.8.1/go.mod h1:FYYLtszIdmzCH8XMaMPyxPVXZ7VCaIm55bA+gugx+14= +github.com/nunnatsa/ginkgolinter v0.16.2 h1:8iLqHIZvN4fTLDC0Ke9tbSZVcyVHoBs0HIbnVSxfHJk= +github.com/nunnatsa/ginkgolinter v0.16.2/go.mod h1:4tWRinDN1FeJgU+iJANW/kz7xKN5nYRAOfJDQUS9dOQ= github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= -github.com/onsi/ginkgo/v2 v2.8.0 h1:pAM+oBNPrpXRs+E/8spkeGx9QgekbRVyr74EUvRVOUI= -github.com/onsi/gomega v1.26.0 h1:03cDLK28U6hWvCAns6NeydX3zIm4SF3ci69ulidS32Q= -github.com/otiai10/copy v1.2.0 h1:HvG945u96iNadPoG2/Ja2+AUJeW5YuFQMixq9yirC+k= +github.com/onsi/ginkgo/v2 v2.17.3 h1:oJcvKpIb7/8uLpDDtnQuf18xVnwKp8DTD7DQ6gTd/MU= +github.com/onsi/ginkgo/v2 v2.17.3/go.mod h1:nP2DPOQoNsQmsVyv5rDA8JkXQoCs6goXIvr/PRJ1eCc= +github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= +github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= github.com/otiai10/copy v1.2.0/go.mod h1:rrF5dJ5F0t/EWSYODDu4j9/vEeYHMkc8jt0zJChqQWw= +github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU= +github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w= github.com/otiai10/curr v0.0.0-20150429015615-9b4961190c95/go.mod h1:9qAhocn7zKJG+0mI8eUu6xqkFDYS2kb2saOteoSB3cE= github.com/otiai10/curr v1.0.0/go.mod h1:LskTG5wDwr8Rs+nNQ+1LlxRjAtTZZjtJW4rMXl6j4vs= github.com/otiai10/mint v1.3.0/go.mod h1:F5AjcsTsWUqX+Na9fpHb52P8pcRX2CI6A3ctIT91xUo= github.com/otiai10/mint v1.3.1/go.mod h1:/yxELlJQ0ufhjUwhshSj+wFjZ78CnZ48/1wtmBH1OTc= github.com/pelletier/go-toml v1.9.5 h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3ve8= github.com/pelletier/go-toml v1.9.5/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= -github.com/pelletier/go-toml/v2 v2.0.5 h1:ipoSadvV8oGUjnUbMub59IDPPwfxF694nG/jwbMiyQg= -github.com/pelletier/go-toml/v2 v2.0.5/go.mod h1:OMHamSCAODeSsVrwwvcJOaoN0LIUIaFVNZzmWyNfXas= +github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= +github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/polyfloyd/go-errorlint v1.1.0 h1:VKoEFg5yxSgJ2yFPVhxW7oGz+f8/OVcuMeNvcPIi6Eg= -github.com/polyfloyd/go-errorlint v1.1.0/go.mod h1:Uss7Bc/izYG0leCMRx3WVlrpqWedSZk7V/FUQW6VJ6U= +github.com/polyfloyd/go-errorlint v1.5.1 h1:5gHxDjLyyWij7fhfrjYNNlHsUNQeyx0LFQKUelO3RBo= +github.com/polyfloyd/go-errorlint v1.5.1/go.mod h1:sH1QC1pxxi0fFecsVIzBmxtrgd9IF/SkJpA6wqyKAJs= +github.com/prashantv/gostub v1.1.0 h1:BTyx3RfQjRHnUWaGF9oQos79AlQ5k8WNktv7VGvVH4g= +github.com/prashantv/gostub v1.1.0/go.mod h1:A5zLQHz7ieHGG7is6LLXLz7I8+3LZzsrV0P1IAHhP5U= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= @@ -426,29 +442,34 @@ github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4O github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= -github.com/quasilyte/go-ruleguard v0.3.19 h1:tfMnabXle/HzOb5Xe9CUZYWXKfkS1KwRmZyPmD9nVcc= -github.com/quasilyte/go-ruleguard v0.3.19/go.mod h1:lHSn69Scl48I7Gt9cX3VrbsZYvYiBYszZOZW4A+oTEw= +github.com/quasilyte/go-ruleguard v0.4.2 h1:htXcXDK6/rO12kiTHKfHuqR4kr3Y4M0J0rOL6CH/BYs= +github.com/quasilyte/go-ruleguard v0.4.2/go.mod h1:GJLgqsLeo4qgavUoL8JeGFNS7qcisx3awV/w9eWTmNI= +github.com/quasilyte/go-ruleguard/dsl v0.3.22 h1:wd8zkOhSNr+I+8Qeciml08ivDt1pSXe60+5DqOpCjPE= +github.com/quasilyte/go-ruleguard/dsl v0.3.22/go.mod h1:KeCP03KrjuSO0H1kTuZQCWlQPulDV6YMIXmpQss17rU= github.com/quasilyte/gogrep v0.5.0 h1:eTKODPXbI8ffJMN+W2aE0+oL0z/nh8/5eNdiO34SOAo= github.com/quasilyte/gogrep v0.5.0/go.mod h1:Cm9lpz9NZjEoL1tgZ2OgeUKPIxL1meE7eo60Z6Sk+Ng= -github.com/quasilyte/regex/syntax v0.0.0-20200407221936-30656e2c4a95 h1:L8QM9bvf68pVdQ3bCFZMDmnt9yqcMBro1pC7F+IPYMY= -github.com/quasilyte/regex/syntax v0.0.0-20200407221936-30656e2c4a95/go.mod h1:rlzQ04UMyJXu/aOvhd8qT+hvDrFpiwqp8MRXDY9szc0= +github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727 h1:TCg2WBOl980XxGFEZSS6KlBGIV0diGdySzxATTWoqaU= +github.com/quasilyte/regex/syntax v0.0.0-20210819130434-b3f0c404a727/go.mod h1:rlzQ04UMyJXu/aOvhd8qT+hvDrFpiwqp8MRXDY9szc0= github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 h1:M8mH9eK4OUR4lu7Gd+PU1fV2/qnDNfzT635KRSObncs= github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567/go.mod h1:DWNGW8A4Y+GyBgPuaQJuWiy0XYftx4Xm/y5Jqk9I6VQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/ryancurrah/gomodguard v1.3.0 h1:q15RT/pd6UggBXVBuLps8BXRvl5GPBcwVA7BJHMLuTw= -github.com/ryancurrah/gomodguard v1.3.0/go.mod h1:ggBxb3luypPEzqVtq33ee7YSN35V28XeGnid8dnni50= -github.com/ryanrolds/sqlclosecheck v0.4.0 h1:i8SX60Rppc1wRuyQjMciLqIzV3xnoHB7/tXbr6RGYNI= -github.com/ryanrolds/sqlclosecheck v0.4.0/go.mod h1:TBRRjzL31JONc9i4XMinicuo+s+E8yKZ5FN8X3G6CKQ= +github.com/ryancurrah/gomodguard v1.3.2 h1:CuG27ulzEB1Gu5Dk5gP8PFxSOZ3ptSdP5iI/3IXxM18= +github.com/ryancurrah/gomodguard v1.3.2/go.mod h1:LqdemiFomEjcxOqirbQCb3JFvSxH2JUYMerTFd3sF2o= +github.com/ryanrolds/sqlclosecheck v0.5.1 h1:dibWW826u0P8jNLsLN+En7+RqWWTYrjCB9fJfSfdyCU= +github.com/ryanrolds/sqlclosecheck v0.5.1/go.mod h1:2g3dUjoS6AL4huFdv6wn55WpLIDjY7ZgUR4J8HOO/XQ= github.com/sanposhiho/wastedassign/v2 v2.0.7 h1:J+6nrY4VW+gC9xFzUc+XjPD3g3wF3je/NsJFwFK7Uxc= github.com/sanposhiho/wastedassign/v2 v2.0.7/go.mod h1:KyZ0MWTwxxBmfwn33zh3k1dmsbF2ud9pAAGfoLfjhtI= +github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 h1:lZUw3E0/J3roVtGQ+SCrUrg3ON6NgVqpn3+iol9aGu4= +github.com/santhosh-tekuri/jsonschema/v5 v5.3.1/go.mod h1:uToXkOrWAZ6/Oc07xWQrPOhJotwFIyu2bBVN41fcDUY= github.com/sashamelentyev/interfacebloat v1.1.0 h1:xdRdJp0irL086OyW1H/RTZTr1h/tMEOsumirXcOJqAw= github.com/sashamelentyev/interfacebloat v1.1.0/go.mod h1:+Y9yU5YdTkrNvoX0xHc84dxiN1iBi9+G8zZIhPVoNjQ= -github.com/sashamelentyev/usestdlibvars v1.23.0 h1:01h+/2Kd+NblNItNeux0veSL5cBF1jbEOPrEhDzGYq0= -github.com/sashamelentyev/usestdlibvars v1.23.0/go.mod h1:YPwr/Y1LATzHI93CqoPUN/2BzGQ/6N/cl/KwgR0B/aU= -github.com/securego/gosec/v2 v2.15.0 h1:v4Ym7FF58/jlykYmmhZ7mTm7FQvN/setNm++0fgIAtw= -github.com/securego/gosec/v2 v2.15.0/go.mod h1:VOjTrZOkUtSDt2QLSJmQBMWnvwiQPEjg0l+5juIqGk8= +github.com/sashamelentyev/usestdlibvars v1.25.0 h1:IK8SI2QyFzy/2OD2PYnhy84dpfNo9qADrRt6LH8vSzU= +github.com/sashamelentyev/usestdlibvars v1.25.0/go.mod h1:9nl0jgOfHKWNFS43Ojw0i7aRoS4j6EBye3YBhmAIRF8= +github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9 h1:rnO6Zp1YMQwv8AyxzuwsVohljJgp4L0ZqiCgtACsPsc= +github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9/go.mod h1:dg7lPlu/xK/Ut9SedURCoZbVCR4yC7fM65DtH9/CDHs= github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c h1:W65qqJCIOVP4jpqPQ0YvHYKwcMEMVWIzWC5iNQQfBTU= github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c/go.mod h1:/PevMnwAxekIXwN8qQyfc5gl2NlkB3CQlkizAbOkeBs= github.com/shurcooL/go v0.0.0-20180423040247-9e1955d9fb6e/go.mod h1:TDJrrUr11Vxrven61rcy3hJMUqaf/CLWYhHNPmT14Lk= @@ -456,24 +477,22 @@ github.com/shurcooL/go-goon v0.0.0-20170922171312-37c2f522c041/go.mod h1:N5mDOms github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= -github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= -github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/sivchari/containedctx v1.0.2 h1:0hLQKpgC53OVF1VT7CeoFHk9YKstur1XOgfYIc1yrHI= -github.com/sivchari/containedctx v1.0.2/go.mod h1:PwZOeqm4/DLoJOqMSIJs3aKqXRX4YO+uXww087KZ7Bw= -github.com/sivchari/nosnakecase v1.7.0 h1:7QkpWIRMe8x25gckkFd2A5Pi6Ymo0qgr4JrhGt95do8= -github.com/sivchari/nosnakecase v1.7.0/go.mod h1:CwDzrzPea40/GB6uynrNLiorAlgFRvRbFSgJx2Gs+QY= +github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= +github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/sivchari/containedctx v1.0.3 h1:x+etemjbsh2fB5ewm5FeLNi5bUjK0V8n0RB+Wwfd0XE= +github.com/sivchari/containedctx v1.0.3/go.mod h1:c1RDvCbnJLtH4lLcYD/GqwiBSSf4F5Qk0xld2rBqzJ4= github.com/sivchari/tenv v1.7.1 h1:PSpuD4bu6fSmtWMxSGWcvqUUgIn7k3yOJhOIzVWn8Ak= github.com/sivchari/tenv v1.7.1/go.mod h1:64yStXKSOxDfX47NlhVwND4dHwfZDdbp2Lyl018Icvg= -github.com/sonatard/noctx v0.0.1 h1:VC1Qhl6Oxx9vvWo3UDgrGXYCeKCe3Wbw7qAWL6FrmTY= -github.com/sonatard/noctx v0.0.1/go.mod h1:9D2D/EoULe8Yy2joDHJj7bv3sZoq9AaSb8B4lqBjiZI= +github.com/sonatard/noctx v0.0.2 h1:L7Dz4De2zDQhW8S0t+KUjY0MAQJd6SgVwhzNIc4ok00= +github.com/sonatard/noctx v0.0.2/go.mod h1:kzFz+CzWSjQ2OzIm46uJZoXuBpa2+0y3T36U18dWqIo= github.com/sourcegraph/go-diff v0.7.0 h1:9uLlrd5T46OXs5qpp8L/MTltk0zikUGi0sNNyCpA8G0= github.com/sourcegraph/go-diff v0.7.0/go.mod h1:iBszgVvyxdc8SFZ7gm69go2KDdt3ag071iBaWPF6cjs= -github.com/spf13/afero v1.8.2 h1:xehSyVa0YnHWsJ49JFljMpg1HX19V6NDZ1fkm1Xznbo= -github.com/spf13/afero v1.8.2/go.mod h1:CtAatgMJh6bJEIs48Ay/FOnkljP3WeGUG0MC1RfAqwo= +github.com/spf13/afero v1.11.0 h1:WJQKhtpdm3v2IzqG8VMqrr6Rf3UYpEF239Jy9wNepM8= +github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNoBjkY= github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU= -github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA= -github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY= +github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= +github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= @@ -487,9 +506,9 @@ github.com/stbenjam/no-sprintf-host-port v0.1.1/go.mod h1:TLhvtIvONRzdmkFiio4O8L github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= -github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= -github.com/stretchr/testify v1.1.4/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -497,38 +516,43 @@ github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5 github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/subosito/gotenv v1.4.1 h1:jyEFiXpy21Wm81FBN71l9VoMMV8H8jG+qIK3GCpY6Qs= github.com/subosito/gotenv v1.4.1/go.mod h1:ayKnFf/c6rvx/2iiLrJUk1e6plDbT3edrFNGqEflhK0= github.com/t-yuki/gocover-cobertura v0.0.0-20180217150009-aaee18c8195c h1:+aPplBwWcHBo6q9xrfWdMrT9o4kltkmmvpemgIjep/8= github.com/t-yuki/gocover-cobertura v0.0.0-20180217150009-aaee18c8195c/go.mod h1:SbErYREK7xXdsRiigaQiQkI9McGRzYMvlKYaP3Nimdk= -github.com/tdakkota/asciicheck v0.1.1 h1:PKzG7JUTUmVspQTDqtkX9eSiLGossXTybutHwTXuO0A= -github.com/tdakkota/asciicheck v0.1.1/go.mod h1:yHp0ai0Z9gUljN3o0xMhYJnH/IcvkdTBOX2fmJ93JEM= +github.com/tdakkota/asciicheck v0.2.0 h1:o8jvnUANo0qXtnslk2d3nMKTFNlOnJjRrNcj0j9qkHM= +github.com/tdakkota/asciicheck v0.2.0/go.mod h1:Qb7Y9EgjCLJGup51gDHFzbI08/gbGhL/UVhYIPWG2rg= github.com/tenntenn/modver v1.0.1 h1:2klLppGhDgzJrScMpkj9Ujy3rXPUspSjAcev9tSEBgA= github.com/tenntenn/modver v1.0.1/go.mod h1:bePIyQPb7UeioSRkw3Q0XeMhYZSMx9B8ePqg6SAMGH0= github.com/tenntenn/text/transform v0.0.0-20200319021203-7eef512accb3 h1:f+jULpRQGxTSkNYKJ51yaw6ChIqO+Je8UqsTKN/cDag= github.com/tenntenn/text/transform v0.0.0-20200319021203-7eef512accb3/go.mod h1:ON8b8w4BN/kE1EOhwT0o+d62W65a6aPw1nouo9LMgyY= -github.com/tetafro/godot v1.4.11 h1:BVoBIqAf/2QdbFmSwAWnaIqDivZdOV0ZRwEm6jivLKw= -github.com/tetafro/godot v1.4.11/go.mod h1:LR3CJpxDVGlYOWn3ZZg1PgNZdTUvzsZWu8xaEohUpn8= -github.com/timakin/bodyclose v0.0.0-20221125081123-e39cf3fc478e h1:MV6KaVu/hzByHP0UvJ4HcMGE/8a6A4Rggc/0wx2AvJo= -github.com/timakin/bodyclose v0.0.0-20221125081123-e39cf3fc478e/go.mod h1:27bSVNWSBOHm+qRp1T9qzaIpsWEP6TbUnei/43HK+PQ= -github.com/timonwong/loggercheck v0.9.3 h1:ecACo9fNiHxX4/Bc02rW2+kaJIAMAes7qJ7JKxt0EZI= -github.com/timonwong/loggercheck v0.9.3/go.mod h1:wUqnk9yAOIKtGA39l1KLE9Iz0QiTocu/YZoOf+OzFdw= -github.com/tomarrell/wrapcheck/v2 v2.8.0 h1:qDzbir0xmoE+aNxGCPrn+rUSxAX+nG6vREgbbXAR81I= -github.com/tomarrell/wrapcheck/v2 v2.8.0/go.mod h1:ao7l5p0aOlUNJKI0qVwB4Yjlqutd0IvAB9Rdwyilxvg= +github.com/tetafro/godot v1.4.16 h1:4ChfhveiNLk4NveAZ9Pu2AN8QZ2nkUGFuadM9lrr5D0= +github.com/tetafro/godot v1.4.16/go.mod h1:2oVxTBSftRTh4+MVfUaUXR6bn2GDXCaMcOG4Dk3rfio= +github.com/timakin/bodyclose v0.0.0-20230421092635-574207250966 h1:quvGphlmUVU+nhpFa4gg4yJyTRJ13reZMDHrKwYw53M= +github.com/timakin/bodyclose v0.0.0-20230421092635-574207250966/go.mod h1:27bSVNWSBOHm+qRp1T9qzaIpsWEP6TbUnei/43HK+PQ= +github.com/timonwong/loggercheck v0.9.4 h1:HKKhqrjcVj8sxL7K77beXh0adEm6DLjV/QOGeMXEVi4= +github.com/timonwong/loggercheck v0.9.4/go.mod h1:caz4zlPcgvpEkXgVnAJGowHAMW2NwHaNlpS8xDbVhTg= +github.com/tomarrell/wrapcheck/v2 v2.8.3 h1:5ov+Cbhlgi7s/a42BprYoxsr73CbdMUTzE3bRDFASUs= +github.com/tomarrell/wrapcheck/v2 v2.8.3/go.mod h1:g9vNIyhb5/9TQgumxQyOEqDHsmGYcGsVMOx/xGkqdMo= github.com/tommy-muehle/go-mnd/v2 v2.5.1 h1:NowYhSdyE/1zwK9QCLeRb6USWdoif80Ie+v+yU8u1Zw= github.com/tommy-muehle/go-mnd/v2 v2.5.1/go.mod h1:WsUAkMJMYww6l/ufffCD3m+P7LEvr8TnZn9lwVDlgzw= -github.com/ultraware/funlen v0.0.3 h1:5ylVWm8wsNwH5aWo9438pwvsK0QiqVuUrt9bn7S/iLA= -github.com/ultraware/funlen v0.0.3/go.mod h1:Dp4UiAus7Wdb9KUZsYWZEWiRzGuM2kXM1lPbfaF6xhA= -github.com/ultraware/whitespace v0.0.5 h1:hh+/cpIcopyMYbZNVov9iSxvJU3OYQg78Sfaqzi/CzI= -github.com/ultraware/whitespace v0.0.5/go.mod h1:aVMh/gQve5Maj9hQ/hg+F75lr/X5A89uZnzAmWSineA= -github.com/uudashr/gocognit v1.0.6 h1:2Cgi6MweCsdB6kpcVQp7EW4U23iBFQWfTXiWlyp842Y= -github.com/uudashr/gocognit v1.0.6/go.mod h1:nAIUuVBnYU7pcninia3BHOvQkpQCeO76Uscky5BOwcY= +github.com/ultraware/funlen v0.1.0 h1:BuqclbkY6pO+cvxoq7OsktIXZpgBSkYTQtmwhAK81vI= +github.com/ultraware/funlen v0.1.0/go.mod h1:XJqmOQja6DpxarLj6Jj1U7JuoS8PvL4nEqDaQhy22p4= +github.com/ultraware/whitespace v0.1.1 h1:bTPOGejYFulW3PkcrqkeQwOd6NKOOXvmGD9bo/Gk8VQ= +github.com/ultraware/whitespace v0.1.1/go.mod h1:XcP1RLD81eV4BW8UhQlpaR+SDc2givTvyI8a586WjW8= +github.com/uudashr/gocognit v1.1.2 h1:l6BAEKJqQH2UpKAPKdMfZf5kE4W/2xk8pfU1OVLvniI= +github.com/uudashr/gocognit v1.1.2/go.mod h1:aAVdLURqcanke8h3vg35BC++eseDm66Z7KmchI5et4k= +github.com/xen0n/gosmopolitan v1.2.2 h1:/p2KTnMzwRexIW8GlKawsTWOxn7UHA+jCMF/V8HHtvU= +github.com/xen0n/gosmopolitan v1.2.2/go.mod h1:7XX7Mj61uLYrj0qmeN0zi7XDon9JRAEhYQqAPLVNTeg= github.com/yagipy/maintidx v1.0.0 h1:h5NvIsCz+nRDapQ0exNv4aJ0yXSI0420omVANTv3GJM= github.com/yagipy/maintidx v1.0.0/go.mod h1:0qNf/I/CCZXSMhsRsrEPDZ+DkekpKLXAJfsTACwgXLk= -github.com/yeya24/promlinter v0.2.0 h1:xFKDQ82orCU5jQujdaD8stOHiv8UN68BSdn2a8u8Y3o= -github.com/yeya24/promlinter v0.2.0/go.mod h1:u54lkmBOZrpEbQQ6gox2zWKKLKu2SGe+2KOiextY+IA= +github.com/yeya24/promlinter v0.3.0 h1:JVDbMp08lVCP7Y6NP3qHroGAO6z2yGKQtS5JsjqtoFs= +github.com/yeya24/promlinter v0.3.0/go.mod h1:cDfJQQYv9uYciW60QT0eeHlFodotkYZlL+YcPQN+mW4= +github.com/ykadowak/zerologlint v0.1.5 h1:Gy/fMz1dFQN9JZTPjv1hxEk+sRWm05row04Yoolgdiw= +github.com/ykadowak/zerologlint v0.1.5/go.mod h1:KaUskqF3e/v59oPmdq1U1DnKcuHokl2/K1U4pmIELKg= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -536,29 +560,36 @@ github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9dec github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -gitlab.com/bosi/decorder v0.2.3 h1:gX4/RgK16ijY8V+BRQHAySfQAb354T7/xQpDB2n10P0= -gitlab.com/bosi/decorder v0.2.3/go.mod h1:9K1RB5+VPNQYtXtTDAzd2OEftsZb1oV0IrJrzChSdGE= +gitlab.com/bosi/decorder v0.4.2 h1:qbQaV3zgwnBZ4zPMhGLW4KZe7A7NwxEhJx39R3shffo= +gitlab.com/bosi/decorder v0.4.2/go.mod h1:muuhHoaJkA9QLcYHq4Mj8FJUwDZ+EirSHRiaTcTf6T8= +go-simpler.org/assert v0.9.0 h1:PfpmcSvL7yAnWyChSjOz6Sp6m9j5lyK8Ok9pEL31YkQ= +go-simpler.org/assert v0.9.0/go.mod h1:74Eqh5eI6vCK6Y5l3PI8ZYFXG4Sa+tkr70OIPJAUr28= +go-simpler.org/musttag v0.12.2 h1:J7lRc2ysXOq7eM8rwaTYnNrHd5JwjppzB6mScysB2Cs= +go-simpler.org/musttag v0.12.2/go.mod h1:uN1DVIasMTQKk6XSik7yrJoEysGtR2GRqvWnI9S7TYM= +go-simpler.org/sloglint v0.7.0 h1:rMZRxD9MbaGoRFobIOicMxZzum7AXNFDlez6xxJs5V4= +go-simpler.org/sloglint v0.7.0/go.mod h1:g9SXiSWY0JJh4LS39/Q0GxzP/QX2cVcbTOYhDpXrJEs= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= -go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/automaxprocs v1.5.3 h1:kWazyxZUrS3Gs4qUpbwo5kEIMGe/DAvi5Z4tl2NW4j8= +go.uber.org/automaxprocs v1.5.3/go.mod h1:eRbA25aqJrxAbsLO0xy5jVwPt7FQnRgjW+efnwa1WM0= +go.uber.org/goleak v1.1.11 h1:wy28qYRKZgnJTxGxvye5/wgWr1EKjmUDGYox5mGlRlI= +go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= -go.uber.org/zap v1.17.0 h1:MTjgFu6ZLKvY6Pvaqk97GlxNBuMpV4Hy/3P6tRGlI2U= -go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60= +go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= @@ -570,11 +601,12 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e/go.mod h1:Kr81I6Kryrl9sr8s2FK3vxD90NdsKWRuOIl2O4CvYbA= +golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc h1:ao2WRsKSzW6KuUY9IWPwWahcHCgR0s52IfwutMfEbdM= +golang.org/x/exp v0.0.0-20240103183307-be819d1f06fc/go.mod h1:iRJReGqOEeBhDZGkGbynYwcHlctCvnjTYIamk7uXpHI= golang.org/x/exp/typeparams v0.0.0-20220428152302-39d4317da171/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= -golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9 h1:6WHiuFL9FNjg8RljAaT7FNUuKDbvMqS1i5cr2OE2sLQ= golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= +golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f h1:phY1HzDcf18Aq9A8KkmRtY9WvOFIxN8wgfvy6Zm1DV8= +golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -587,7 +619,6 @@ golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHl golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= @@ -596,7 +627,6 @@ golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzB golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= @@ -604,8 +634,9 @@ golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2 golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.6.0/go.mod h1:4mET923SAdbXp2ki8ey+zGs1SLqsuM2Y0uvdZR/fUNI= golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -635,9 +666,6 @@ golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81R golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= @@ -645,18 +673,15 @@ golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qx golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.3.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= golang.org/x/net v0.5.0/go.mod h1:DivGGAXEgPSlEBzxGzZI+ZLohi+xUj054jfeKui00ws= -golang.org/x/net v0.6.0 h1:L4ZwwTvKW9gr0ZMS1yrHD9GZhIuVjOBBnaKH+SPQK0Q= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -670,8 +695,9 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= +golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -703,17 +729,12 @@ golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -728,38 +749,36 @@ golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y= +golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA= golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.6.0 h1:3XmdazWV+ubf7QgHSTWeykHOci5oeekaGJBLkrkaw4k= golang.org/x/text v0.6.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk= +golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= -golang.org/x/tools v0.0.0-20190307163923-6a08e3108db3/go.mod h1:25r3+/G6/xytQM8iWZKq3Hn0kr0rgFKPUNVEL/dr3z4= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190311215038-5c2858a9cfe5/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190321232350-e250d351ecad/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= @@ -782,7 +801,6 @@ golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= -golang.org/x/tools v0.0.0-20200117220505-0cba7a3a9ee9/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= @@ -795,26 +813,16 @@ golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjs golang.org/x/tools v0.0.0-20200324003944-a576cf524670/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200329025819-fd4102a86c65/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= -golang.org/x/tools v0.0.0-20200414032229-332987a829c3/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20200624225443-88f3c62a19ff/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200724022722-7017fd6b1305/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200820010801-b793a1359eac/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= -golang.org/x/tools v0.0.0-20200831203904-5a2aa26beb65/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= -golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= -golang.org/x/tools v0.0.0-20201001104356-43ebab892c4c/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/tools v0.0.0-20201023174141-c8cfbd0f21e6/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.1-0.20210205202024-ef80cdb6ec6d/go.mod h1:9bzcO0MWcOuT0tm1iBGzDVPshzfwoVvREIui8C+MHqU= golang.org/x/tools v0.1.1-0.20210302220138-2ac05c832e1a/go.mod h1:9bzcO0MWcOuT0tm1iBGzDVPshzfwoVvREIui8C+MHqU= @@ -826,10 +834,10 @@ golang.org/x/tools v0.1.11/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4 golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.2.0/go.mod h1:y4OqIKeOV/fWJetJ8bXPU1sEVniLMIyDAZWeHdV+NTA= golang.org/x/tools v0.3.0/go.mod h1:/rWhSS2+zyEVwoJf8YAX6L2f0ntZ7Kn/mGgAWcipA5k= -golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= golang.org/x/tools v0.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k= -golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw= +golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -850,16 +858,12 @@ google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0M google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= -google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= -google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= -google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= @@ -889,13 +893,6 @@ google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7Fc google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -908,10 +905,6 @@ google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKa google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= -google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= -google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= -google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -924,13 +917,14 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.28.0 h1:w43yiav+6bVFTBQFZX0r7ipe9JQ1QsbMgHwbBziscLw= -google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= +google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f h1:BLraFXnmrev5lT+xlilqcH8XK9/i0At2xKjWk4p6zsU= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= @@ -938,12 +932,10 @@ gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -953,16 +945,12 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -honnef.co/go/tools v0.4.2 h1:6qXr+R5w+ktL5UkwEbPp+fEvfyoMPche6GkOpGHZcLc= -honnef.co/go/tools v0.4.2/go.mod h1:36ZgoUOrqOk1GxwHhyryEkq8FQWkUO2xGuSMhUCcdvA= -mvdan.cc/gofumpt v0.4.0 h1:JVf4NN1mIpHogBj7ABpgOyZc65/UUOkKQFkoURsz4MM= -mvdan.cc/gofumpt v0.4.0/go.mod h1:PljLOHDeZqgS8opHRKLzp2It2VBuSdteAgqUfzMTxlQ= -mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed h1:WX1yoOaKQfddO/mLzdV4wptyWgoH/6hwLs7QHTixo0I= -mvdan.cc/interfacer v0.0.0-20180901003855-c20040233aed/go.mod h1:Xkxe497xwlCKkIaQYRfC7CSLworTXY9RMqwhhCm+8Nc= -mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b h1:DxJ5nJdkhDlLok9K6qO+5290kphDJbHOQO1DFFFTeBo= -mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b/go.mod h1:2odslEg/xrtNQqCYg2/jCoyKnw3vv5biOc3JnIcYfL4= -mvdan.cc/unparam v0.0.0-20221223090309-7455f1af531d h1:3rvTIIM22r9pvXk+q3swxUQAQOxksVMGK7sml4nG57w= -mvdan.cc/unparam v0.0.0-20221223090309-7455f1af531d/go.mod h1:IeHQjmn6TOD+e4Z3RFiZMMsLVL+A96Nvptar8Fj71is= +honnef.co/go/tools v0.4.7 h1:9MDAWxMoSnB6QoSqiVr7P5mtkT9pOc1kSxchzPCnqJs= +honnef.co/go/tools v0.4.7/go.mod h1:+rnGS1THNh8zMwnd2oVOTL9QF6vmfyG6ZXBULae2uc0= +mvdan.cc/gofumpt v0.6.0 h1:G3QvahNDmpD+Aek/bNOLrFR2XC6ZAdo62dZu65gmwGo= +mvdan.cc/gofumpt v0.6.0/go.mod h1:4L0wf+kgIPZtcCWXynNS2e6bhmj73umwnuXSZarixzA= +mvdan.cc/unparam v0.0.0-20240427195214-063aff900ca1 h1:Nykk7fggxChwLK4rUPYESzeIwqsuxXXlFEAh5YhaMRo= +mvdan.cc/unparam v0.0.0-20240427195214-063aff900ca1/go.mod h1:ZzZjEpJDOmx8TdVU6umamY3Xy0UAQUI2DHbf05USVbI= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/tools/golangci-lint/main.go b/tools/golangci-lint/main.go index 3d54fe4320..9ecd33aba0 100644 --- a/tools/golangci-lint/main.go +++ b/tools/golangci-lint/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/maprange/Makefile b/tools/maprange/Makefile index 5485d4a205..ec0cf5fbe8 100644 --- a/tools/maprange/Makefile +++ b/tools/maprange/Makefile @@ -1,2 +1,2 @@ -maprange.so: go.mod +maprange.so: go.mod *.go go build -buildmode=plugin . diff --git a/tools/maprange/analyzer.go b/tools/maprange/analyzer.go index a4962a55b1..6073ca6d37 100644 --- a/tools/maprange/analyzer.go +++ b/tools/maprange/analyzer.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/maprange/analyzer_test.go b/tools/maprange/analyzer_test.go index bb71574edf..6d1d9f1672 100644 --- a/tools/maprange/analyzer_test.go +++ b/tools/maprange/analyzer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/maprange/go.mod b/tools/maprange/go.mod index bc581c315e..d2ed5e21a6 100644 --- a/tools/maprange/go.mod +++ b/tools/maprange/go.mod @@ -1,10 +1,10 @@ module github.com/onflow/cadence/tools/maprange -go 1.20 +go 1.22 -require golang.org/x/tools v0.6.0 +require golang.org/x/tools v0.21.0 require ( - golang.org/x/mod v0.8.0 // indirect - golang.org/x/sys v0.5.0 // indirect + golang.org/x/mod v0.17.0 // indirect + golang.org/x/sync v0.7.0 // indirect ) diff --git a/tools/maprange/go.sum b/tools/maprange/go.sum index 44d387ef3f..05680b3128 100644 --- a/tools/maprange/go.sum +++ b/tools/maprange/go.sum @@ -1,7 +1,6 @@ -golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= +golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw= +golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= diff --git a/tools/maprange/main.go b/tools/maprange/main.go index c58204b26f..5d8fd711cb 100644 --- a/tools/maprange/main.go +++ b/tools/maprange/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,14 +27,10 @@ func main() { singlechecker.Main(Analyzer) } -type analyzerPlugin struct{} - -func (*analyzerPlugin) GetAnalyzers() []*analysis.Analyzer { +// This must be defined and named 'New' for golangci-lint, +// see https://golangci-lint.run/plugins/go-plugins/#create-a-plugin +func New(_ any) ([]*analysis.Analyzer, error) { return []*analysis.Analyzer{ Analyzer, - } + }, nil } - -// This must be defined and named 'AnalyzerPlugin' for golangci-lint, -// see https://golangci-lint.run/contributing/new-linters/#how-to-write-a-custom-linter -var AnalyzerPlugin analyzerPlugin diff --git a/tools/maprange/testdata/src/a/test.go b/tools/maprange/testdata/src/a/test.go index 60fc3c24b9..241c689197 100644 --- a/tools/maprange/testdata/src/a/test.go +++ b/tools/maprange/testdata/src/a/test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/pretty/main.go b/tools/pretty/main.go index 0561bee162..29cb6d32b8 100644 --- a/tools/pretty/main.go +++ b/tools/pretty/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/staged-contracts-report-printer/main.go b/tools/staged-contracts-report-printer/main.go index 00bba0e0d4..67569a5d50 100644 --- a/tools/staged-contracts-report-printer/main.go +++ b/tools/staged-contracts-report-printer/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/storage-explorer/addresses.go b/tools/storage-explorer/addresses.go index 8c9456ccd9..8a291d7a75 100644 --- a/tools/storage-explorer/addresses.go +++ b/tools/storage-explorer/addresses.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/storage-explorer/go.mod b/tools/storage-explorer/go.mod index dc8210f45d..66299a9bb7 100644 --- a/tools/storage-explorer/go.mod +++ b/tools/storage-explorer/go.mod @@ -1,6 +1,6 @@ module github.com/onflow/cadence/tools/storage-explorer -go 1.20 +go 1.22 require ( github.com/gorilla/mux v1.8.1 diff --git a/tools/storage-explorer/main.go b/tools/storage-explorer/main.go index d4330436a1..966de763b7 100644 --- a/tools/storage-explorer/main.go +++ b/tools/storage-explorer/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/storage-explorer/storagemaps.go b/tools/storage-explorer/storagemaps.go index f9fcca2712..ba0ca4ed91 100644 --- a/tools/storage-explorer/storagemaps.go +++ b/tools/storage-explorer/storagemaps.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/storage-explorer/type.go b/tools/storage-explorer/type.go index 0a027182b2..24a7a93416 100644 --- a/tools/storage-explorer/type.go +++ b/tools/storage-explorer/type.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/storage-explorer/value.go b/tools/storage-explorer/value.go index 2716cd1110..5f3a5c3357 100644 --- a/tools/storage-explorer/value.go +++ b/tools/storage-explorer/value.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/unkeyed/Makefile b/tools/unkeyed/Makefile index 240422e9be..5f566974d6 100644 --- a/tools/unkeyed/Makefile +++ b/tools/unkeyed/Makefile @@ -1,2 +1,2 @@ -unkeyed.so: go.mod +unkeyed.so: go.mod *.go go build -buildmode=plugin . diff --git a/tools/unkeyed/analyzer_test.go b/tools/unkeyed/analyzer_test.go index 7c16f78276..5b317917c0 100644 --- a/tools/unkeyed/analyzer_test.go +++ b/tools/unkeyed/analyzer_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/unkeyed/go.mod b/tools/unkeyed/go.mod index bb7edb9629..0042561a2f 100644 --- a/tools/unkeyed/go.mod +++ b/tools/unkeyed/go.mod @@ -1,13 +1,13 @@ module github.com/onflow/cadence/tools/unkeyed -go 1.20 +go 1.22 require ( - golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9 - golang.org/x/tools v0.6.0 + golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f + golang.org/x/tools v0.21.0 ) require ( - golang.org/x/mod v0.8.0 // indirect - golang.org/x/sys v0.5.0 // indirect + golang.org/x/mod v0.17.0 // indirect + golang.org/x/sync v0.7.0 // indirect ) diff --git a/tools/unkeyed/go.sum b/tools/unkeyed/go.sum index 381b6c01cf..5327c8597f 100644 --- a/tools/unkeyed/go.sum +++ b/tools/unkeyed/go.sum @@ -1,9 +1,8 @@ -golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9 h1:6WHiuFL9FNjg8RljAaT7FNUuKDbvMqS1i5cr2OE2sLQ= -golang.org/x/exp/typeparams v0.0.0-20230203172020-98cc5a0785f9/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= -golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= -golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f h1:phY1HzDcf18Aq9A8KkmRtY9WvOFIxN8wgfvy6Zm1DV8= +golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= +golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= +golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/tools v0.21.0 h1:qc0xYgIbsSDt9EyWz05J5wfa7LOVW0YTLOXrqdLAWIw= +golang.org/x/tools v0.21.0/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= diff --git a/tools/unkeyed/main.go b/tools/unkeyed/main.go index c58204b26f..5d8fd711cb 100644 --- a/tools/unkeyed/main.go +++ b/tools/unkeyed/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,14 +27,10 @@ func main() { singlechecker.Main(Analyzer) } -type analyzerPlugin struct{} - -func (*analyzerPlugin) GetAnalyzers() []*analysis.Analyzer { +// This must be defined and named 'New' for golangci-lint, +// see https://golangci-lint.run/plugins/go-plugins/#create-a-plugin +func New(_ any) ([]*analysis.Analyzer, error) { return []*analysis.Analyzer{ Analyzer, - } + }, nil } - -// This must be defined and named 'AnalyzerPlugin' for golangci-lint, -// see https://golangci-lint.run/contributing/new-linters/#how-to-write-a-custom-linter -var AnalyzerPlugin analyzerPlugin diff --git a/tools/unkeyed/testdata/src/a/a.go b/tools/unkeyed/testdata/src/a/a.go index ce8336184a..05301dc339 100644 --- a/tools/unkeyed/testdata/src/a/a.go +++ b/tools/unkeyed/testdata/src/a/a.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/unkeyed/testdata/src/a/a.go.golden b/tools/unkeyed/testdata/src/a/a.go.golden index 017d578a77..aaab7bb8bd 100644 --- a/tools/unkeyed/testdata/src/a/a.go.golden +++ b/tools/unkeyed/testdata/src/a/a.go.golden @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/tools/update/README.md b/tools/update/README.md index f3b3f67721..048769aba9 100644 --- a/tools/update/README.md +++ b/tools/update/README.md @@ -51,10 +51,11 @@ Above will update the rest of the dependencies to: - flow-go-sdk `v0.31.0` - flow-go `v0.26.0` -Instead of the version, it is also possible to provide a commit id. +Instead of the version, it is also possible to provide a commit, +in Go's expected format, i.e. the first 12 characters of the commit hash. ```sh -GH_TOKEN=`gh auth token` ts-node main.ts update --version v0.30.0 --versions onflow/flow-go@ +GH_TOKEN=`gh auth token` ts-node main.ts update --version v0.30.0 --versions onflow/flow-go@ ``` #### Configuring dependencies @@ -195,20 +196,15 @@ Go to the link that is shown at the end to create a new GitHub (pre-)release for Once the GitHub release has been published, re-run the `update` subcommand. The tool will determine that the next dependency needs to be updated. -> [!NOTE] -> The update tool only considers proper releases (i.e. not pre-releases)! (this is a GitHub API limitation) -> -> When updating to pre-releases, the version of a downstream has to be specified manually! This is not needed normally. - Versions are specified using the `--versions` flag, comma-separated. ```shell GH_TOKEN=`gh auth token` ts-node main.ts update \ - --version v1.0.0-M8 \ - --versions onflow/flow-go-sdk@v1.0.0-M5 + --version v1.0.0-M8 ``` -Again, the tool will determine the next downstream dependency that needs to get updated. This time is the `lint` module in the `onflow/cadence-tools` repo. +Again, the tool will determine the next downstream dependency that needs to get updated. +This time is the `lint` module in the `onflow/cadence-tools` repo.
@@ -266,14 +262,14 @@ Checking repo onflow/cadence-tools ... - Some downstream dependencies, like `flow-go`, are not tagged/released. - Use the latest commit instead. + Use the latest commit instead, in Go's expected format, i.e. the first 12 characters of the commit hash. For example, to `flow-emulator` depends on `flow-go`, and it can be updated using: ```shell $ GH_TOKEN=`gh auth token` ts-node main.ts update \ --version v1.0.0-M8 \ - --versions onflow/flow-go-sdk@v1.0.0-M5,onflow/cadence-tools/lint@v1.0.0-M5,onflow/flow-go@3677206d445c + --versions onflow/flow-go@3677206d445c ``` - Some downstream dependencies are modules in the same repo. diff --git a/tools/update/main.ts b/tools/update/main.ts index 43d7d78cd8..3b55a08b47 100644 --- a/tools/update/main.ts +++ b/tools/update/main.ts @@ -232,11 +232,20 @@ class Updater { async fetchLatestReleaseTagName(fullRepoName: string): Promise { try { const [owner, repoName] = fullRepoName.split('/') - const release = await this.octokit.rest.repos.getLatestRelease({ + // Heuristic: Fetch as many releases on the first page as possible, + // and find the latest release by sorting the releases by semver + const releases = await this.octokit.rest.repos.listReleases({ owner, repo: repoName, + per_page: 100 }) - return release.data.tag_name + const release = releases.data.sort((a, b) => { + return a.created_at.localeCompare(b.created_at) + }).pop() + if (release === undefined) { + return null + } + return release.tag_name } catch (e) { if (e instanceof RequestError) { if (e.status === 404) { diff --git a/types.go b/types.go index 71262cedb6..ca13683566 100644 --- a/types.go +++ b/types.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/types_test.go b/types_test.go index cf6cb7c0c9..8b1e2f5934 100644 --- a/types_test.go +++ b/types_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/utils/version/main.go b/utils/version/main.go index 849afe4fd2..9214d188fe 100644 --- a/utils/version/main.go +++ b/utils/version/main.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +39,7 @@ const template string = `// Code generated by utils/version. DO NOT EDIT. /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/values.go b/values.go index c4a9035acb..f3e20a371d 100644 --- a/values.go +++ b/values.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/values_test.go b/values_test.go index c1b32554c0..e3f00d356b 100644 --- a/values_test.go +++ b/values_test.go @@ -1,7 +1,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/version.go b/version.go index 63f1734e77..6dd94f6136 100644 --- a/version.go +++ b/version.go @@ -2,7 +2,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,4 +21,4 @@ package cadence -const Version = "v1.0.0-preview-atree-register-inlining.29" +const Version = "v1.0.0-preview-atree-register-inlining.33" diff --git a/vm/vm.go b/vm/vm.go index f96cadc8d0..510a5dcfb9 100644 --- a/vm/vm.go +++ b/vm/vm.go @@ -4,7 +4,7 @@ /* * Cadence - The resource-oriented smart contract programming language * - * Copyright Dapper Labs, Inc. + * Copyright Flow Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License.