supabase / cli

Supabase CLI. Manage postgres migrations, run Supabase locally, deploy edge functions. Postgres backups. Generating types from your database schema.
https://supabase.com/docs/reference/cli/about
MIT License
1.04k stars 202 forks source link

functions deploy is broken with deno lock file version 3 (latest production deno version) #1584

Closed alita-moore closed 2 months ago

alita-moore commented 1 year ago

Bug report

Describe the bug

When I try and deploy a function I get the following error

error: Unable to parse contents of the lockfile "/Users/alitamoore/github/wovenmind/monorepo/infra/supabase-stemchat/deno.lock"

Caused by:
    invalid type: map, expected a string
exit status 1

To Reproduce

It's difficult to produce this because I don't have multiple computers to try it on. But it seems to be:

  1. create a supabase project
  2. upgrade deno to version 1.37.1
  3. run deno cache "some/function/path.ts"
  4. look at deno.lock and validate that it's "version": 3
  5. run supabase functions deploy

Expected behavior

I expect my functions to deploy

System information

Additional context

Here are the lock files before and after the version 3.0 upgrade:

before

{
  "version": "2",
  "remote": {
    "https://deno.land/std@0.127.0/_util/assert.ts": "6396c1bd0361c4939e7f32f9b03efffcd04b640a1b206ed67058553d6cb59cc4",
    "https://deno.land/std@0.127.0/_util/os.ts": "49b92edea1e82ba295ec946de8ffd956ed123e2948d9bd1d3e901b04e4307617",
    "https://deno.land/std@0.127.0/encoding/base64.ts": "784384e3cc39c59534d15f71e87f5b8da73cc5e1460417eb32ec9d62617d4f87",
    "https://deno.land/std@0.127.0/path/_constants.ts": "df1db3ffa6dd6d1252cc9617e5d72165cd2483df90e93833e13580687b6083c3",
    "https://deno.land/std@0.127.0/path/_interface.ts": "ee3b431a336b80cf445441109d089b70d87d5e248f4f90ff906820889ecf8d09",
    "https://deno.land/std@0.127.0/path/_util.ts": "c1e9686d0164e29f7d880b2158971d805b6e0efc3110d0b3e24e4b8af2190d2b",
    "https://deno.land/std@0.127.0/path/common.ts": "bee563630abd2d97f99d83c96c2fa0cca7cee103e8cb4e7699ec4d5db7bd2633",
    "https://deno.land/std@0.127.0/path/glob.ts": "cb5255638de1048973c3e69e420c77dc04f75755524cb3b2e160fe9277d939ee",
    "https://deno.land/std@0.127.0/path/mod.ts": "4275129bb766f0e475ecc5246aa35689eeade419d72a48355203f31802640be7",
    "https://deno.land/std@0.127.0/path/posix.ts": "663e4a6fe30a145f56aa41a22d95114c4c5582d8b57d2d7c9ed27ad2c47636bb",
    "https://deno.land/std@0.127.0/path/separator.ts": "fe1816cb765a8068afb3e8f13ad272351c85cbc739af56dacfc7d93d710fe0f9",
    "https://deno.land/std@0.127.0/path/win32.ts": "e7bdf63e8d9982b4d8a01ef5689425c93310ece950e517476e22af10f41a136e",
    "https://deno.land/std@0.130.0/fmt/colors.ts": "30455035d6d728394781c10755351742dd731e3db6771b1843f9b9e490104d37",
    "https://deno.land/std@0.130.0/testing/_diff.ts": "9d849cd6877694152e01775b2d93f9d6b7aef7e24bfe3bfafc4d7a1ac8e9f392",
    "https://deno.land/std@0.130.0/testing/asserts.ts": "b0ef969032882b1f7eb1c7571e313214baa1485f7b61cf35807b2434e254365c",
    "https://deno.land/std@0.150.0/media_types/_util.ts": "ce9b4fc4ba1c447dafab619055e20fd88236ca6bdd7834a21f98bd193c3fbfa1",
    "https://deno.land/std@0.150.0/media_types/mod.ts": "2d4b6f32a087029272dc59e0a55ae3cc4d1b27b794ccf528e94b1925795b3118",
    "https://deno.land/std@0.150.0/media_types/vendor/mime-db.v1.52.0.ts": "724cee25fa40f1a52d3937d6b4fbbfdd7791ff55e1b7ac08d9319d5632c7f5af",
    "https://deno.land/std@0.159.0/encoding/ascii85.ts": "f2b9cb8da1a55b3f120d3de2e78ac993183a4fd00dfa9cb03b51cf3a75bc0baa",
    "https://deno.land/std@0.162.0/_util/assert.ts": "e94f2eb37cebd7f199952e242c77654e43333c1ac4c5c700e929ea3aa5489f74",
    "https://deno.land/std@0.162.0/bytes/bytes_list.ts": "aba5e2369e77d426b10af1de0dcc4531acecec27f9b9056f4f7bfbf8ac147ab4",
    "https://deno.land/std@0.162.0/bytes/equals.ts": "3c3558c3ae85526f84510aa2b48ab2ad7bdd899e2e0f5b7a8ffc85acb3a6043a",
    "https://deno.land/std@0.162.0/bytes/mod.ts": "b2e342fd3669176a27a4e15061e9d588b89c1aaf5008ab71766e23669565d179",
    "https://deno.land/std@0.162.0/io/buffer.ts": "fae02290f52301c4e0188670e730cd902f9307fb732d79c4aa14ebdc82497289",
    "https://deno.land/std@0.162.0/io/types.d.ts": "107e1e64834c5ba917c783f446b407d33432c5d612c4b3430df64fc2b4ecf091",
    "https://deno.land/std@0.162.0/streams/conversion.ts": "555c6c249f3acf85655f2d0af52d1cb3168e40b1c1fa26beefea501b333abe28",
    "https://deno.land/std@0.168.0/async/abortable.ts": "80b2ac399f142cc528f95a037a7d0e653296352d95c681e284533765961de409",
    "https://deno.land/std@0.168.0/async/deadline.ts": "2c2deb53c7c28ca1dda7a3ad81e70508b1ebc25db52559de6b8636c9278fd41f",
    "https://deno.land/std@0.168.0/async/debounce.ts": "60301ffb37e730cd2d6f9dadfd0ecb2a38857681bd7aaf6b0a106b06e5210a98",
    "https://deno.land/std@0.168.0/async/deferred.ts": "77d3f84255c3627f1cc88699d8472b664d7635990d5358c4351623e098e917d6",
    "https://deno.land/std@0.168.0/async/delay.ts": "5a9bfba8de38840308a7a33786a0155a7f6c1f7a859558ddcec5fe06e16daf57",
    "https://deno.land/std@0.168.0/async/mod.ts": "7809ad4bb223e40f5fdc043e5c7ca04e0e25eed35c32c3c32e28697c553fa6d9",
    "https://deno.land/std@0.168.0/async/mux_async_iterator.ts": "770a0ff26c59f8bbbda6b703a2235f04e379f73238e8d66a087edc68c2a2c35f",
    "https://deno.land/std@0.168.0/async/pool.ts": "6854d8cd675a74c73391c82005cbbe4cc58183bddcd1fbbd7c2bcda42b61cf69",
    "https://deno.land/std@0.168.0/async/retry.ts": "e8e5173623915bbc0ddc537698fa418cf875456c347eda1ed453528645b42e67",
    "https://deno.land/std@0.168.0/async/tee.ts": "3a47cc4e9a940904fd4341f0224907e199121c80b831faa5ec2b054c6d2eff5e",
    "https://deno.land/std@0.168.0/http/server.ts": "e99c1bee8a3f6571ee4cdeb2966efad465b8f6fe62bec1bdb59c1f007cc4d155",
    "https://deno.land/std@0.201.0/assert/_constants.ts": "8a9da298c26750b28b326b297316cdde860bc237533b07e1337c021379e6b2a9",
    "https://deno.land/std@0.201.0/assert/_diff.ts": "1a3c044aedf77647d6cac86b798c6417603361b66b54c53331b312caeb447aea",
    "https://deno.land/std@0.201.0/assert/_format.ts": "a69126e8a469009adf4cf2a50af889aca364c349797e63174884a52ff75cf4c7",
    "https://deno.land/std@0.201.0/assert/assert.ts": "9a97dad6d98c238938e7540736b826440ad8c1c1e54430ca4c4e623e585607ee",
    "https://deno.land/std@0.201.0/assert/assert_almost_equals.ts": "e15ca1f34d0d5e0afae63b3f5d975cbd18335a132e42b0c747d282f62ad2cd6c",
    "https://deno.land/std@0.201.0/assert/assert_array_includes.ts": "6856d7f2c3544bc6e62fb4646dfefa3d1df5ff14744d1bca19f0cbaf3b0d66c9",
    "https://deno.land/std@0.201.0/assert/assert_equals.ts": "d8ec8a22447fbaf2fc9d7c3ed2e66790fdb74beae3e482855d75782218d68227",
    "https://deno.land/std@0.201.0/assert/assert_exists.ts": "407cb6b9fb23a835cd8d5ad804e2e2edbbbf3870e322d53f79e1c7a512e2efd7",
    "https://deno.land/std@0.201.0/assert/assert_false.ts": "a9962749f4bf5844e3fa494257f1de73d69e4fe0e82c34d0099287552163a2dc",
    "https://deno.land/std@0.201.0/assert/assert_greater.ts": "ae2158a2d19313bf675bf7251d31c6dc52973edb12ac64ac8fc7064152af3e63",
    "https://deno.land/std@0.201.0/assert/assert_greater_or_equal.ts": "1439da5ebbe20855446cac50097ac78b9742abe8e9a43e7de1ce1426d556e89c",
    "https://deno.land/std@0.201.0/assert/assert_instance_of.ts": "3aedb3d8186e120812d2b3a5dea66a6e42bf8c57a8bd927645770bd21eea554c",
    "https://deno.land/std@0.201.0/assert/assert_is_error.ts": "c21113094a51a296ffaf036767d616a78a2ae5f9f7bbd464cd0197476498b94b",
    "https://deno.land/std@0.201.0/assert/assert_less.ts": "aec695db57db42ec3e2b62e97e1e93db0063f5a6ec133326cc290ff4b71b47e4",
    "https://deno.land/std@0.201.0/assert/assert_less_or_equal.ts": "5fa8b6a3ffa20fd0a05032fe7257bf985d207b85685fdbcd23651b70f928c848",
    "https://deno.land/std@0.201.0/assert/assert_match.ts": "c4083f80600bc190309903c95e397a7c9257ff8b5ae5c7ef91e834704e672e9b",
    "https://deno.land/std@0.201.0/assert/assert_not_equals.ts": "9f1acab95bd1f5fc9a1b17b8027d894509a745d91bac1718fdab51dc76831754",
    "https://deno.land/std@0.201.0/assert/assert_not_instance_of.ts": "0c14d3dfd9ab7a5276ed8ed0b18c703d79a3d106102077ec437bfe7ed912bd22",
    "https://deno.land/std@0.201.0/assert/assert_not_match.ts": "3796a5b0c57a1ce6c1c57883dd4286be13a26f715ea662318ab43a8491a13ab0",
    "https://deno.land/std@0.201.0/assert/assert_not_strict_equals.ts": "ca6c6d645e95fbc873d25320efeb8c4c6089a9a5e09f92d7c1c4b6e935c2a6ad",
    "https://deno.land/std@0.201.0/assert/assert_object_match.ts": "d8fc2867cfd92eeacf9cea621e10336b666de1874a6767b5ec48988838370b54",
    "https://deno.land/std@0.201.0/assert/assert_rejects.ts": "45c59724de2701e3b1f67c391d6c71c392363635aad3f68a1b3408f9efca0057",
    "https://deno.land/std@0.201.0/assert/assert_strict_equals.ts": "b1f538a7ea5f8348aeca261d4f9ca603127c665e0f2bbfeb91fa272787c87265",
    "https://deno.land/std@0.201.0/assert/assert_string_includes.ts": "b821d39ebf5cb0200a348863c86d8c4c4b398e02012ce74ad15666fc4b631b0c",
    "https://deno.land/std@0.201.0/assert/assert_throws.ts": "63784e951475cb7bdfd59878cd25a0931e18f6dc32a6077c454b2cd94f4f4bcd",
    "https://deno.land/std@0.201.0/assert/assertion_error.ts": "4d0bde9b374dfbcbe8ac23f54f567b77024fb67dbb1906a852d67fe050d42f56",
    "https://deno.land/std@0.201.0/assert/equal.ts": "9f1a46d5993966d2596c44e5858eec821859b45f783a5ee2f7a695dfc12d8ece",
    "https://deno.land/std@0.201.0/assert/fail.ts": "c36353d7ae6e1f7933d45f8ea51e358c8c4b67d7e7502028598fe1fea062e278",
    "https://deno.land/std@0.201.0/assert/mod.ts": "37c49a26aae2b254bbe25723434dc28cd7532e444cf0b481a97c045d110ec085",
    "https://deno.land/std@0.201.0/assert/unimplemented.ts": "d56fbeecb1f108331a380f72e3e010a1f161baa6956fd0f7cf3e095ae1a4c75a",
    "https://deno.land/std@0.201.0/assert/unreachable.ts": "4600dc0baf7d9c15a7f7d234f00c23bca8f3eba8b140286aaca7aa998cf9a536",
    "https://deno.land/std@0.201.0/fmt/colors.ts": "87544aa2bc91087bb37f9c077970c85bfb041b48e4c37356129d7b450a415b6f",
    "https://deno.land/std@0.201.0/testing/mock.ts": "6576b4aa55ee20b1990d656a78fff83599e190948c00e9f25a7f3ac5e9d6492d",
    "https://deno.land/x/brotli@0.1.7/mod.ts": "08b913e51488b6e7fa181f2814b9ad087fdb5520041db0368f8156bfa45fd73e",
    "https://deno.land/x/brotli@0.1.7/wasm.js": "77771b89e89ec7ff6e3e0939a7fb4f9b166abec3504cec0532ad5c127d6f35d2",
    "https://deno.land/x/eszip@v0.35.0/eszip_wasm.generated.js": "19ec5ee17dba6ec59ddc8f5836f3f2bef332982d9772e7f42d78b89250baffac",
    "https://deno.land/x/eszip@v0.35.0/loader.ts": "31bae51763d86b8e60df3b3a8d0359e71d2ff32451af5f27ff7854bdd6f1f726",
    "https://deno.land/x/eszip@v0.35.0/mod.ts": "1ab71595e9f0b771987276f96d323c3e03ad7f41fc653b38c44dfd51439c20e1",
    "https://deno.land/x/lz4@v0.1.2/mod.ts": "4decfc1a3569d03fd1813bd39128b71c8f082850fe98ecfdde20025772916582",
    "https://deno.land/x/lz4@v0.1.2/wasm.js": "b9c65605327ba273f0c76a6dc596ec534d4cda0f0225d7a94ebc606782319e46",
    "https://deno.land/std@0.203.0/uuid/_common.ts": "cb1441f4df460571fc0919e1c5c217f3e7006189b703caf946604b3f791ae34d",
    "https://deno.land/std@0.203.0/uuid/v1.ts": "fe36009afce7ced96e1b5928565e12c5a8eb0df1a2b5063c0a72bda6b75c0de5",
    "https://deno.land/x/xhr@0.3.0/mod.ts": "094aacd627fd9635cd942053bf8032b5223b909858fa9dc8ffa583752ff63b20",
    "https://esm.sh/@supabase/supabase-js@2.31.0": "8991b7ee3061adf43b983d70700d04d42666251cc6e0af4f9e1770d1e2287dc2",
    "https://esm.sh/v130/@supabase/functions-js@2.1.2/denonext/functions-js.mjs": "92dc047177efa03e873a246e8424055a4927c743f3228ab3ce4341a4c8873d16",
    "https://esm.sh/v130/@supabase/gotrue-js@2.46.1/denonext/gotrue-js.mjs": "8efa6d920e443693ebb00ad1ddc425ba7050a9a533405380690f4aa4d29e1672",
    "https://esm.sh/v130/@supabase/postgrest-js@1.7.2/denonext/postgrest-js.mjs": "21d822eac6e461dc08292e6e9136b72cb8c73d8961f3a1058f5f53e4561f894c",
    "https://esm.sh/v130/@supabase/realtime-js@2.7.3/denonext/realtime-js.mjs": "a293c3b4035cee0f2d0ca8eddf978d1b05e31aaa2cd40943c0d4952ae7df9229",
    "https://esm.sh/v130/@supabase/storage-js@2.5.1/denonext/storage-js.mjs": "183bcdc6c1a0e8b10c6ac47f08ecb6a03c84ec7d134f487322174dcb42d3d0d8",
    "https://esm.sh/v130/@supabase/supabase-js@2.31.0/denonext/supabase-js.mjs": "42e298d5657d678b55bcda84f233c005830ae849ebf69d11240fb034f23a4469",
    "https://esm.sh/v130/cross-fetch@3.1.8/denonext/cross-fetch.mjs": "8fba9e7c3fbaf0d2168beb63ce0cd21b5bfbfbd77e2fcbf8d957d533a71222f6",
    "https://esm.sh/v130/es5-ext@0.10.62/denonext/global.js": "2f51d9acef1f761faaa542da919b3c747744ea29fe709d0a904fd531716a93d6",
    "https://esm.sh/v130/property-expr@2.0.5/denonext/property-expr.mjs": "a961a69cea7cb7105be9d361789bbc466e2ab859014f74629a454e7625a85ec1",
    "https://esm.sh/v130/tiny-case@1.0.3/denonext/tiny-case.mjs": "81d85617e0f8f08193c14b1484ec7978d4e5345e93576374070462fe22dc76d7",
    "https://esm.sh/v130/toposort@2.0.2/denonext/toposort.mjs": "bc761ac6c5d856488d3a1f1bc8903bbdb6acd98c04cf28245eeb6dfcd3867009",
    "https://esm.sh/v130/websocket@1.0.34/denonext/websocket.mjs": "521c9ffa12d700b9ad6fa7bf3c9559c0726eea67162db29fc29ede813643268f",
    "https://esm.sh/v130/yup@1.2.0/denonext/yup.mjs": "eed02b0ef9d508d6b2c92d565c4f8924f847b16f706476ade57be7ee0107e856",
    "https://esm.sh/yup@1.2.0": "944e167536adcfc74ac2c46895092bc25907b674e22a775078e5373ad923b937"
  }
}

after

{
  "version": "3",
  "remote": {
    "https://deno.land/std@0.150.0/media_types/_util.ts": "ce9b4fc4ba1c447dafab619055e20fd88236ca6bdd7834a21f98bd193c3fbfa1",
    "https://deno.land/std@0.150.0/media_types/mod.ts": "2d4b6f32a087029272dc59e0a55ae3cc4d1b27b794ccf528e94b1925795b3118",
    "https://deno.land/std@0.150.0/media_types/vendor/mime-db.v1.52.0.ts": "724cee25fa40f1a52d3937d6b4fbbfdd7791ff55e1b7ac08d9319d5632c7f5af",
    "https://deno.land/std@0.203.0/uuid/_common.ts": "cb1441f4df460571fc0919e1c5c217f3e7006189b703caf946604b3f791ae34d",
    "https://deno.land/std@0.203.0/uuid/v1.ts": "fe36009afce7ced96e1b5928565e12c5a8eb0df1a2b5063c0a72bda6b75c0de5",
    "https://deno.land/x/xhr@0.3.0/mod.ts": "094aacd627fd9635cd942053bf8032b5223b909858fa9dc8ffa583752ff63b20",
    "https://esm.sh/@supabase/supabase-js@2.31.0": "8991b7ee3061adf43b983d70700d04d42666251cc6e0af4f9e1770d1e2287dc2",
    "https://esm.sh/v130/@supabase/functions-js@2.1.2/denonext/functions-js.mjs": "92dc047177efa03e873a246e8424055a4927c743f3228ab3ce4341a4c8873d16",
    "https://esm.sh/v130/@supabase/gotrue-js@2.46.1/denonext/gotrue-js.mjs": "8efa6d920e443693ebb00ad1ddc425ba7050a9a533405380690f4aa4d29e1672",
    "https://esm.sh/v130/@supabase/postgrest-js@1.7.2/denonext/postgrest-js.mjs": "21d822eac6e461dc08292e6e9136b72cb8c73d8961f3a1058f5f53e4561f894c",
    "https://esm.sh/v130/@supabase/realtime-js@2.7.3/denonext/realtime-js.mjs": "a293c3b4035cee0f2d0ca8eddf978d1b05e31aaa2cd40943c0d4952ae7df9229",
    "https://esm.sh/v130/@supabase/storage-js@2.5.1/denonext/storage-js.mjs": "183bcdc6c1a0e8b10c6ac47f08ecb6a03c84ec7d134f487322174dcb42d3d0d8",
    "https://esm.sh/v130/@supabase/supabase-js@2.31.0/denonext/supabase-js.mjs": "42e298d5657d678b55bcda84f233c005830ae849ebf69d11240fb034f23a4469",
    "https://esm.sh/v130/cross-fetch@3.1.8/denonext/cross-fetch.mjs": "8fba9e7c3fbaf0d2168beb63ce0cd21b5bfbfbd77e2fcbf8d957d533a71222f6",
    "https://esm.sh/v130/es5-ext@0.10.62/denonext/global.js": "2f51d9acef1f761faaa542da919b3c747744ea29fe709d0a904fd531716a93d6",
    "https://esm.sh/v130/property-expr@2.0.5/denonext/property-expr.mjs": "a961a69cea7cb7105be9d361789bbc466e2ab859014f74629a454e7625a85ec1",
    "https://esm.sh/v130/tiny-case@1.0.3/denonext/tiny-case.mjs": "81d85617e0f8f08193c14b1484ec7978d4e5345e93576374070462fe22dc76d7",
    "https://esm.sh/v130/toposort@2.0.2/denonext/toposort.mjs": "bc761ac6c5d856488d3a1f1bc8903bbdb6acd98c04cf28245eeb6dfcd3867009",
    "https://esm.sh/v130/websocket@1.0.34/denonext/websocket.mjs": "521c9ffa12d700b9ad6fa7bf3c9559c0726eea67162db29fc29ede813643268f",
    "https://esm.sh/v130/yup@1.2.0/denonext/yup.mjs": "eed02b0ef9d508d6b2c92d565c4f8924f847b16f706476ade57be7ee0107e856",
    "https://esm.sh/yup@1.2.0": "944e167536adcfc74ac2c46895092bc25907b674e22a775078e5373ad923b937"
  }
}

I have validated that by reverting the lock file the issue is resolved.

alita-moore commented 1 year ago

my current work around is to manually edit the deno lock file, which is obviously not a great solution. I have tried to downgrade deno, but brew makes that quite difficult, so manually editing the deno lock file seems to be the easiest solution here.

dsherret commented 11 months ago

I believe just the https://crates.io/crates/deno_lockfile version needs to be bumped in the supabase codebase if this issue still occurs. I'm not sure how things are setup under the hood though.

laktek commented 11 months ago

@alita-moore Can you share the Supabase CLI version you're using? Also, try with latest version of Supabase CLI (npx supabase@latest functions deploy) and see if you experience the same issue.

blazeu commented 11 months ago

@alita-moore Can you share the Supabase CLI version you're using? Also, try with latest version of Supabase CLI (npx supabase@latest functions deploy) and see if you experience the same issue.

Here is the output with lock file v3

❯ npx supabase@latest functions deploy

Need to install the following packages:
  supabase@1.106.1
Ok to proceed? (y) y
error: Unable to parse contents of the lockfile "/Users/surya/Projects/founderblocks/auto.deals/deno.lock"

Caused by:
    invalid type: map, expected a string
exit status 1
Try rerunning the command with --debug to troubleshoot the error.
alita-moore commented 11 months ago

updated to the latest version and this is fixed, thanks!

alita-moore commented 11 months ago

nevermind it looks like it's not actually fixed, was only fixed for a short time:

Caused by: invalid type: map, expected a string exit status 1 Try rerunning the command with --debug to troubleshoot the error.

alita-moore commented 11 months ago

@laktek I'm using version 1.106.1

alita-moore commented 11 months ago

this is a blocking problem. Is this only affecting me?

joras commented 11 months ago

no, I'm having the same problem. CLI version 1.106.1, deno 1.37.2

alita-moore commented 11 months ago

in that case, a bad workaround for this is to manually download teh deno binary from their release page and then run deno cache ... with it to have it then generate the version 2 lockfile which supabase can use. https://github.com/denoland/deno/releases/tag/v1.36.4

rather-be-retired commented 11 months ago

in that case, a bad workaround for this is to manually download teh deno binary from their release page and then run deno cache ... with it to have it then generate the version 2 lockfile which supabase can use. https://github.com/denoland/deno/releases/tag/v1.36.4

This didn't work for me. I got the same error about "Unable to parse contents..."

CLI version 1.110.1, Deno 1.37.2

alita-moore commented 11 months ago

it also worked for me to just delete deno.lock altogether and run supabase after that

alita-moore commented 10 months ago

bump, this is still broken

laktek commented 10 months ago

@alita-moore Can you try running the Beta version of CLI (npx supabase@beta functions serve)? You probably don't need to manually do deno cache and also can remove the existing deno lock file.

alita-moore commented 10 months ago

I need to do deno cache because of how my IDE works. Sure, I'll try it next time I deploy

laktek commented 10 months ago

yeah, try the newer version of CLI and let us know how it goes. Technically, it shouldn't look into your deno cache.

ryanashcraft commented 10 months ago

npx supabase@beta functions deploy no longer errors with deno.lock version 3 for me

laktek commented 9 months ago

@alita-moore Can you also try the beta release and confirm if it works?

alita-moore commented 9 months ago

yeah @laktek that fixes the issue with the lock file. However, it seems that now it fails to load files that are not in the functions directory. I need to load in files from outside the directory because that's the only way I've found to share files between supabase projects. i.e.

| file.ts | project -- | supabase ---- | functions ------ | function.ts

When function imports file.ts it works in the current supabase but fails in the beta. I'm not sure there's a better way to create a shared library in deno.

sweatybridge commented 9 months ago

When function imports file.ts it works in the current supabase but fails in the beta.

The import issue is caused by the same underlying problem and is resolved in the beta release 1.123.4. Appreciate your patience in helping to debug these issues.

codingiswhyicry commented 7 months ago

Experiencing this after running npm upgrade.

macOS, deno 1.39.1 (release, aarch64-apple-darwin) v8 12.0.267.8 typescript 5.3.3

laktek commented 7 months ago

@codingiswhyicry Can you share which version of the Supabase CLI you're on?

codingiswhyicry commented 7 months ago

Yep :-) CLI 1.115.5

alita-moore commented 2 months ago

I can confirm this is fixed in the altest versions, but the issue I referenced above with the file imports is not fixed :( https://github.com/supabase/cli/issues/2533

sweatybridge commented 2 months ago

@alita-moore for files outside supabase/functions directory, you can import them by declaring in supabase/functions/import_map.json. For eg.

{
  imports: {
    "my-module": "../../file.ts"
  }
}

The same import map can also be used for deno lsp support in your local IDE. More examples here https://docs.deno.com/runtime/manual/basics/import_maps/