diff --git a/.github/ISSUE_TEMPLATE/01-feature-request.yml b/.github/ISSUE_TEMPLATE/01-feature-request.yml new file mode 100644 index 000000000..2aa6944b9 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/01-feature-request.yml @@ -0,0 +1,15 @@ +name: Feature Request +description: File a feature request. +labels: ["language feature", "triage"] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this feature request! + - type: textarea + id: feature-request + attributes: + label: What kind of features would like to see supported in Tact? + description: Anything, expect floating-point numbers support :) + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/02-bug-report.yml b/.github/ISSUE_TEMPLATE/02-bug-report.yml new file mode 100644 index 000000000..f7f910ee1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/02-bug-report.yml @@ -0,0 +1,62 @@ +name: Bug Report +description: File a bug report. +labels: ["bug", "triage"] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this bug report! + - type: checkboxes + attributes: + label: Are you using the latest released (or pre-released, a.k.a. "next") version? + description: "Please update your setup to the most recent Tact version: " + options: + - label: I'm using the latest Tact version + required: true + - type: textarea + id: code + attributes: + label: Tact source code + description: Please copy and paste your Tact source code here (or fill out the form below explaining the steps to reproduce the issue). This will be automatically formatted into code, so no need for backticks. + render: tact + - type: textarea + id: logs + attributes: + label: Relevant Tact/build system log output + description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. + render: shell + - type: textarea + id: actual + attributes: + label: What happened? + description: Current behavior + placeholder: See the error message above + - type: textarea + id: expected + attributes: + label: What did you expect? + description: Expected behavior + placeholder: I expected + validations: + required: true + - type: textarea + id: repro + attributes: + label: Steps to reproduce + description: Instructions other than a minimal Tact source code example to reproduce your issue + placeholder: "Here is the link to a repo with my Tact project: . You can find the build instructions in its `README.md` file." + - type: dropdown + id: build-system + attributes: + label: How do you run Tact? + multiple: true + options: + - Blueprint + - tact-template + - Tact CLI + - Other + - type: textarea + id: other + attributes: + label: Anything else? + description: Any other relevant info you might want to add diff --git a/.github/ISSUE_TEMPLATE/03-other.yml b/.github/ISSUE_TEMPLATE/03-other.yml new file mode 100644 index 000000000..4067a5903 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/03-other.yml @@ -0,0 +1,15 @@ +name: Other issue +description: Other issue (except security reports, please file those in private!) +labels: ["triage"] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this form! + - type: textarea + id: other + attributes: + label: What is on your mind? + description: Compiler documentation, CI, testing, API, tooling, etc. + validations: + required: true diff --git a/.yarnrc b/.yarnrc new file mode 100644 index 000000000..142dad817 --- /dev/null +++ b/.yarnrc @@ -0,0 +1 @@ +registry "https://registry.npmjs.org" diff --git a/package.json b/package.json index 1207cbc79..800264db5 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ "blockstore-core": "1.0.5", "change-case": "^4.1.2", "ipfs-unixfs-importer": "9.0.10", + "json-bigint": "^1.0.0", "meow": "^13.2.0", "mkdirp": "^2.1.3", "ohm-js": "^17.1.0", @@ -73,7 +74,6 @@ "eslint": "^8.56.0", "glob": "^8.1.0", "jest": "^29.3.1", - "json-bigint": "^1.0.0", "knip": "^5.24.1", "prettier": "^3.2.5", "release-it": "^15.5.1", diff --git a/yarn.lock b/yarn.lock index ff66bb7ba..d6b4d5c28 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1289,7 +1289,7 @@ "@tact-lang/opcode@^0.0.16": version "0.0.16" - resolved "https://registry.yarnpkg.com/@tact-lang/opcode/-/opcode-0.0.16.tgz#cc9e4117ce706d8bb6e054a520bab719f70adf96" + resolved "https://registry.npmjs.org/@tact-lang/opcode/-/opcode-0.0.16.tgz" integrity sha512-YJTUjoDOy+e+FHHppJiF+uWJ2IMjVknB9VQ5n78pknCE129DazCb/nFXnw0wVRDVcn8Tn59ky+pmjiQjQOjEbw== "@tact-lang/ton-abi@^0.0.3": @@ -1309,19 +1309,19 @@ dependencies: symbol.inspect "1.0.1" -"@ton/crypto-primitives@2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@ton/crypto-primitives/-/crypto-primitives-2.0.0.tgz" - integrity sha512-wttiNClmGbI6Dfy/8oyNnsIV0b/qYkCJz4Gn4eP62lJZzMtVQ94Ko7nikDX1EfYHkLI1xpOitWpW+8ZuG6XtDg== +"@ton/crypto-primitives@2.1.0": + version "2.1.0" + resolved "https://registry.npmjs.org/@ton/crypto-primitives/-/crypto-primitives-2.1.0.tgz" + integrity sha512-PQesoyPgqyI6vzYtCXw4/ZzevePc4VGcJtFwf08v10OevVJHVfW238KBdpj1kEDQkxWLeuNHEpTECNFKnP6tow== dependencies: jssha "3.2.0" "@ton/crypto@^3.2.0": - version "3.2.0" - resolved "https://registry.npmjs.org/@ton/crypto/-/crypto-3.2.0.tgz" - integrity sha512-50RkwReEuV2FkxSZ8ht/x9+n0ZGtwRKGsJ0ay4I/HFhkYVG/awIIBQeH0W4j8d5lADdO5h01UtX8PJ8AjiejjA== + version "3.3.0" + resolved "https://registry.npmjs.org/@ton/crypto/-/crypto-3.3.0.tgz" + integrity sha512-/A6CYGgA/H36OZ9BbTaGerKtzWp50rg67ZCH2oIjV1NcrBaCK9Z343M+CxedvM7Haf3f/Ee9EhxyeTp0GKMUpA== dependencies: - "@ton/crypto-primitives" "2.0.0" + "@ton/crypto-primitives" "2.1.0" jssha "3.2.0" tweetnacl "1.0.3" @@ -1761,7 +1761,7 @@ async-retry@1.3.3: async@^3.2.3: version "3.2.6" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" + resolved "https://registry.npmjs.org/async/-/async-3.2.6.tgz" integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== available-typed-arrays@^1.0.7: @@ -1948,7 +1948,7 @@ browserslist@^4.22.2: bs-logger@^0.2.6: version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + resolved "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz" integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== dependencies: fast-json-stable-stringify "2.x" @@ -2656,7 +2656,7 @@ easy-table@1.2.0: ejs@^3.1.10: version "3.1.10" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" + resolved "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz" integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== dependencies: jake "^10.8.5" @@ -2683,7 +2683,7 @@ emoji-regex@^9.2.2: enhanced-resolve@^5.17.1: version "5.17.1" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15" + resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz" integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg== dependencies: graceful-fs "^4.2.4" @@ -3116,7 +3116,7 @@ file-entry-cache@^8.0.0: filelist@^1.0.4: version "1.0.4" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" + resolved "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz" integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== dependencies: minimatch "^5.0.1" @@ -3343,7 +3343,7 @@ glob@^8.1.0: glob@^9.2.0, glob@^9.3.2: version "9.3.5" - resolved "https://registry.yarnpkg.com/glob/-/glob-9.3.5.tgz#ca2ed8ca452781a3009685607fdf025a899dfe21" + resolved "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz" integrity sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q== dependencies: fs.realpath "^1.0.0" @@ -4124,7 +4124,7 @@ iterate-value@^1.0.2: jake@^10.8.5: version "10.9.2" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.9.2.tgz#6ae487e6a69afec3a5e167628996b59f35ae2b7f" + resolved "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz" integrity sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA== dependencies: async "^3.2.3" @@ -4527,7 +4527,7 @@ jsesc@^2.5.1: json-bigint@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz" + resolved "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== dependencies: bignumber.js "^9.0.0" @@ -4597,7 +4597,7 @@ kleur@^3.0.3: knip@^5.24.1: version "5.27.3" - resolved "https://registry.yarnpkg.com/knip/-/knip-5.27.3.tgz#7e8118b1e578f5cfa54c7128af581ab36f8870c2" + resolved "https://registry.npmjs.org/knip/-/knip-5.27.3.tgz" integrity sha512-X0zYs0viwENUtp+FZE2Ig6vQZYvKOz8TvuQkWSWMOXiEDoiMAF+NuDczVD9Dhupicfew0YKpYamHhKtNP+f8+g== dependencies: "@nodelib/fs.walk" "1.2.8" @@ -4686,7 +4686,7 @@ lodash.isstring@^4.0.1: lodash.memoize@^4.1.2: version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== lodash.merge@^4.6.2: @@ -5353,9 +5353,9 @@ prelude-ls@~1.1.2: integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== prettier@^3.2.5: - version "3.2.5" - resolved "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz" - integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A== + version "3.3.3" + resolved "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz" + integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew== pretty-format@^29.0.0, pretty-format@^29.7.0: version "29.7.0" @@ -5742,7 +5742,7 @@ semver@^6.3.0, semver@^6.3.1: semver@^7.3.5, semver@^7.3.7, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.2, semver@^7.6.3: version "7.6.3" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== sentence-case@^3.0.4: @@ -6059,7 +6059,7 @@ symbol.inspect@1.0.1: tapable@^2.2.0: version "2.2.1" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== teslabot@^1.5.0: @@ -6127,7 +6127,7 @@ ts-api-utils@^1.3.0: ts-jest@^29.0.3: version "29.2.5" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.2.5.tgz#591a3c108e1f5ebd013d3152142cb5472b399d63" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.5.tgz" integrity sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA== dependencies: bs-logger "^0.2.6"