Giter VIP home page Giter VIP logo

input-output-hk / plutus-pioneer-program Goto Github PK

View Code? Open in Web Editor NEW
1.4K 156.0 975.0 143.92 MB

This repository hosts the lectures of the Plutus Pioneers Program. This program is a training course that the IOG Education Team provides to recruit and train software developers in Plutus, the native smart contract language for the Cardano ecosystem.

Haskell 43.10% Shell 9.17% Dockerfile 1.36% Nix 2.18% HTML 3.99% JavaScript 8.73% TypeScript 31.01% CSS 0.45%
cardano dapps plutus plutus-pioneer-program smart-contracts

plutus-pioneer-program's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plutus-pioneer-program's Issues

Unable to build EnglishAuction.hs

When I run cabal build in the folder code/week01/src/Week01 I'm facing the error below:

image

The tag in my cabal.project file is ea0ca4e9f9821a9dbfc5255fa0f42b6f2b3887c4.

I tried checking out git checkout ea0ca4e9f9821a9dbfc5255fa0f42b6f2b3887c4 but I'm getting error with that as well.
image

Incorrect git commit hash in the week05 cabal.project file

the git tag "8f1a47674a99ac9bc2aba3231375d8d6de0641d2" in week 5 appears not to exist in the plutus repo. When running git pull and then git checkout 8f1a47674a99ac9bc2aba3231375d8d6de0641d2 I recieve
fatal: reference is not a tree: 8f1a47674a99ac9bc2aba3231375d8d6de0641d2

EnglishAuction.hs Error RE: ValidatorCtx not in scope

Hi,

I've gotten my Plutus Playground set up in the browser-- i.e. the nix-shell's seem to be working properly. The Plutus Playground itself compiles the sample code ("Hello, world", "Starter", "Game", etc.) without any problems, so I don't think it's an issue with the playground itself. I've linked a GitHub repository with my 'plutus' folder-- it should be exactly the same as the IOHK plutus repository.

Anyway, when I copy the EnglishAuction.hs code I receive 5 compilation errors:

Compilation failed

Compilation Error, Line 113, Column 56 (jump)

error: Not in scope: type constructor or class ‘ValidatorCtx’ Perhaps you meant ‘Validator’ (imported from Ledger) | 113 | mkAuctionValidator :: AuctionDatum -> AuctionAction -> ValidatorCtx -> Bool | ^^^^^^^^^^^^

Compilation Error, Line 165, Column 20 (jump)

error: Not in scope: type constructor or class ‘TxOutInfo’ | 165 | ownOutput :: TxOutInfo | ^^^^^^^^^

Compilation Error, Line 169, Column 13 (jump)

error: Not in scope: data constructor ‘PayToPubKey’ | 169 | PayToPubKey -> traceError "wrong output type" | ^^^^^^^^^^^

Compilation Error, Line 170, Column 13 (jump)

error: Not in scope: data constructor ‘PayToScript’ | 170 | PayToScript h -> case findDatum h info of | ^^^^^^^^^^^

Compilation Error, Line 346, Column 13 (jump)

error: Not in scope: data constructor ‘PayToPubKey’ | 346 | PayToPubKey -> throwError "unexpected out type" | ^^^^^^^^^^^

Compilation Error, Line 347, Column 13 (jump)

error: Not in scope: data constructor ‘PayToScript’ | 347 | PayToScript h -> case Map.lookup h $ txData $ txOutTxTx o of

I'm wondering if I cloned the repository wrong, or if I installed ghcup/ghci/stack/cabal wrong, or if I built old/redundant repositories. Obviously I'm a noob, and I'm hoping this is the type of thing that someone can spot super easily, because I'm not too familiar with Nix or Cabal. Like I said, I was able to get the playground working, and it compiles/simulates the built-in demos. I'm just having issues with EnglishAuction.hs. I don't want to waste anybody else's time on this, but I really want to get started on the program because I've delved a LOT of hours into learning Haskell and I love the ethos/ecosystem Cardano/Plutus has to offer. Any help or pointers are welcome!

thanks,
top-shaman

Incorrect plutus tag for Week05.

The provided Plutus git tag in Week05 (8f1a47674a99ac9bc2aba3231375d8d6de0641d2) results in the following error:

~/repos/plutus(master) » git checkout 8f1a47674a99ac9bc2aba3231375d8d6de0641d2
fatal: reference is not a tree: 8f1a47674a99ac9bc2aba3231375d8d6de0641d2

nix build failing

I tried every version of the docs but I get issues with building with any of them

$ nix build -f default.nix plutus.haskell.packages.plutus-core
trace: To materialize project.plan-nix for Agda entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.
builder for '/nix/store/a25f50mk3yyryr1f8phv7hppns4rjqd6-dot-cabal-hackage.haskell.org-at-2021-07-07T000000Z.drv' failed with exit code 1; last 1 log lines:
  fdLock: invalid argument (Invalid argument)
cannot build derivation '/nix/store/gjc8qw92lryiixk16dbv3qzfw56bwgh4-Agda-plan-to-nix-pkgs.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/vlbl0m7755agvsm68gkbicapz9a4ybyf-Agda-plan-to-nix-pkgs.drv': 1 dependencies couldn't be built
[0 built (1 failed)]
error: build of '/nix/store/vlbl0m7755agvsm68gkbicapz9a4ybyf-Agda-plan-to-nix-pkgs.drv' failed
(use '--show-trace' to show detailed location information)

I have the cache

$ cat ~/.config/nix/nix.conf
substituters = https://hydra.iohk.io https://iohk.cachix.org https://cache.nixos.org/
trusted-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= iohk.cachix.org-1:DpRUyj7h7V830dp/i6Nti+NEO2/nhblbov/8MW7Rqoo= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=

And nix works as it can build minor parts.

Ubuntu 20.04 (via WSL). I also tried the WSL docs for docker but I get a similar nix build error.

Playground client not accessible remotely

On MacOS there seem to be numerous issues with compiling the English Auction contract. Instead of trying to resolve those, I moved to a Debial10 hosted on GCE. I got the contract compiled and the playground server/client started.

However, because this is a remote machine I cannot access the playground-client on: https://localhost:8009

Instead, I'd like the playground-client to bind to 0.0.0.0, so that I can use the remote IP.

CrossRef: IntersectMBO/plutus#2973

Merging contributions for documentation

@brunjlar, @chris-moreton it would be really good to get the documentation updates that Chris is working on in a fork periodically merged into the main repository. Do you both have thoughts on this?

This would give much higher visibility to Chris' efforts.

Also, it raises the question of what licence the original and derived work are made available under (is there a policy on the default licence for code and documentation produced by iohk / cardano foundation?)

cc: @katomm - do you have an idea on licences and will the Plutus Pioneer Program be moving over to the new developer portal?

Proposal - add detailed explanation comments to all the code

I think it can smooth out the learning curve if you'd add explanation comments on the educational code.
It's easier to follow the code and understand what happens here.

It may be especially useful for Haskell and/or blockchain newbies as helps to faster establish neural connections between human-readable meaningful text and yet not fully accustomed syntax.

Of course, it's just an opinion and it's debatable.
Thank you.

How to make utxo diagrams

Hi, I wondered if you could share what you use to make the utxo diagrams and animations as they are very helpful for designing smart contracts and I'm looking at options to produce static utxo diagrams.

Error on cabal build - Encounterd missing dependesies

I am using ubuntu 20.04 on virtualbox.

I followed the instructions on lecture one - part 3 and I was trying to start week 1 project. When I run cabal build got the following error:

[nix-shell:~/plutus-pioneer-program/code/week01]$ sudo cabal build

Warning: The build command is a part of the legacy v1 style of cabal usage.

Please switch to using either the new project style and the new-build command
or the legacy v1-build alias as new-style projects will become the default in
the next version of cabal-install. Please file a bug if you cannot replicate a
working v1- use case with the new-style commands.

For more information, see: https://wiki.haskell.org/Cabal/NewBuild

Resolving dependencies...
Warning: solver failed to find a solution:
Could not resolve dependencies:
[__0] trying: plutus-pioneer-program-week01-0.1.0.0 (user goal)
[__1] next goal: base (dependency of plutus-pioneer-program-week01)
[__1] rejecting: base-4.12.0.0/installed-4.1... (conflict:
plutus-pioneer-program-week01 => base^>=4.14.1.0)
[__1] fail (backjumping, conflict set: base, plutus-pioneer-program-week01)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: plutus-pioneer-program-week01, base
Trying configure anyway.
Configuring plutus-pioneer-program-week01-0.1.0.0...
cabal: Encountered missing dependencies:
aeson -any,
base >=4.14.1.0 && <4.15,
data-default -any,
playground-common -any,
plutus-contract -any,
plutus-ledger -any,
plutus-ledger-constraints -any,
plutus-tx -any,
plutus-tx-plugin -any

Could not resolve dependencies and cabal: Encountered missing dependencies is the errors here as far I can understand. I tried again by running cabal update and then cabal build but again I get the same error(s) that I described above. Any ideas? What am I doing wrong?

Week01: cabal build - Failed to build lzma-0.0.0.3 on Amazon Linux 2

I am trying to run this on an EC2 instance running Amazon Linux 2. When I ran the cabal build for week 01. I received this error:

`Installing cryptonite-0.27 (lib)
Completed cryptonite-0.27 (lib)
Installing haskell-src-exts-1.23.1 (lib)
Completed haskell-src-exts-1.23.1 (lib)

Failed to build lzma-0.0.0.3. The failure occurred during the configure step.
Build log (
/home/ec2-user/.cabal/logs/ghc-8.10.7/lzma-0.0.0.3-b8e5e5271afb9de54972ab2bbbbfe6e55609cefdde55c24b9e9d56d7e4cf3ba8.log
):
Configuring library for lzma-0.0.0.3..
cabal-3.6.2.0: Missing dependency on a foreign library:

  • Missing (or bad) header file: lzma.h
  • Missing (or bad) C library: lzma
    This problem can usually be solved by installing the system package that
    provides this library (you may need the "-dev" version). If the library is
    already installed but in a non-standard location then you can use the flags
    --extra-include-dirs= and --extra-lib-dirs= to specify where it is.If the
    library file does exist, it may contain errors that are caught by the C
    compiler at the preprocessing stage. In this case you can re-run configure
    with the verbosity flag -v3 to see the error messages.
    If the header file does exist, it may contain errors that are caught by the C
    compiler at the preprocessing stage. In this case you can re-run configure
    with the verbosity flag -v3 to see the error messages.

cabal: Failed to build lzma-0.0.0.3 (which is required by
plutus-pioneer-program-week01-0.1.0.0). See the build log above for details.`

Cabal Build creates a Bug Contract?!

Hello, I was just following along the first tutorial in the second cohort. I was able to build the code, but the EnglishAuction.hs has 12 syntax errors. Is that supposed to happen because I thought the homework was just run cabal build and compile and test the code on the plutus-playground. If this is purposeful I'll try to debug it myself but based on what I am reading in the assignment, that's not supposed to happen.

image

Nix Build having 64-bit Architecture errors.

Hello, I was trying to build the dependencies that i need to develop plutus, but I ran into an interesting error.

First i run nix build

nix build -f default.nix plutus.haskell.packages.plutus-core.components.library

Then I have this error returned.

error: attribute 'aarch64-darwin' missing, at /nix/store/cyfj6bd0n0ckvkm67mhjyg1qcvrfgsg9-source/artifact.nix:11:10

Could this have anything to do with the M1 chip on my mac?

Thanks I appreciate the help!

Week01 compilation errors

I'm getting a number of compilation errors after pasting the contents of this file into my local playground instance. I was able to build the week01 directory locally using cabal within nix-shell, but no such luck in the playground. Any help would be much appreciated.

Compilation Error, Line 162, Column 59 (jump)
 error:
    • Couldn't match expected type ‘PlutusTx.Data’
                  with actual type ‘BuiltinData’
    • In the first argument of ‘PlutusTx.fromData’, namely ‘d’
      In the expression: PlutusTx.fromData d
      In the expression:
        case PlutusTx.fromData d of
          Just ad' -> (o, ad')
          Nothing -> traceError "error decoding data"
    |
162 |                 Just (Datum d) ->  case PlutusTx.fromData d of
    |                                                           ^
Compilation Error, Line 272, Column 25 (jump)
 error:
    • Couldn't match expected type ‘BuiltinData’
                  with actual type ‘PlutusTx.Data’
    • In the second argument of ‘($)’, namely
        ‘PlutusTx.toData $ MkBid b’
      In the expression: Redeemer $ PlutusTx.toData $ MkBid b
      In an equation for ‘r’: r = Redeemer $ PlutusTx.toData $ MkBid b
    |
272 |         r  = Redeemer $ PlutusTx.toData $ MkBid b
    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^
Compilation Error, Line 276, Column 47 (jump)
 error:
    • Couldn't match type ‘TxOutTx’ with ‘ChainIndexTxOut’
      Expected type: Map TxOutRef ChainIndexTxOut
        Actual type: Map TxOutRef TxOutTx
    • In the first argument of ‘Constraints.unspentOutputs’, namely
        ‘(Map.singleton oref o)’
      In the second argument of ‘(<>)’, namely
        ‘Constraints.unspentOutputs (Map.singleton oref o)’
      In the second argument of ‘(<>)’, namely
        ‘otherScript auctionValidator
           <> Constraints.unspentOutputs (Map.singleton oref o)’
    |
276 |                   Constraints.unspentOutputs (Map.singleton oref o)
    |                                               ^^^^^^^^^^^^^^^^^^^^
Compilation Error, Line 299, Column 29 (jump)
 error:
    • Couldn't match expected type ‘BuiltinData’
                  with actual type ‘PlutusTx.Data’
    • In the second argument of ‘($)’, namely ‘PlutusTx.toData Close’
      In the expression: Redeemer $ PlutusTx.toData Close
      In an equation for ‘r’: r = Redeemer $ PlutusTx.toData Close
    |
299 |         r      = Redeemer $ PlutusTx.toData Close
    |                             ^^^^^^^^^^^^^^^^^^^^^
Compilation Error, Line 304, Column 47 (jump)
 error:
    • Couldn't match type ‘TxOutTx’ with ‘ChainIndexTxOut’
      Expected type: Map TxOutRef ChainIndexTxOut
        Actual type: Map TxOutRef TxOutTx
    • In the first argument of ‘Constraints.unspentOutputs’, namely
        ‘(Map.singleton oref o)’
      In the second argument of ‘(<>)’, namely
        ‘Constraints.unspentOutputs (Map.singleton oref o)’
      In the second argument of ‘(<>)’, namely
        ‘otherScript auctionValidator
           <> Constraints.unspentOutputs (Map.singleton oref o)’
    |
304 |                   Constraints.unspentOutputs (Map.singleton oref o)
    |                                               ^^^^^^^^^^^^^^^^^^^^
Compilation Error, Line 322, Column 14 (jump)
 error:
    • Variable not in scope:
        utxoAt :: Address -> Contract w s Text (Map TxOutRef TxOutTx)
    • Perhaps you meant ‘utxosAt’ (imported from Plutus.Contract)
    |
322 |     utxos <- utxoAt $ scriptAddress auctionValidator
    |              ^^^^^^
Compilation Error, Line 340, Column 13 (jump)
 error:
    • Couldn't match type ‘Promise w3 s3 e1’
                     with ‘Contract () AuctionSchema Text’
      Expected type: Contract () AuctionSchema Text ()
        Actual type: Promise w3 s3 e1 ()
    • In the expression:
        (start' `select` bid' `select` close') >> endpoints
      In an equation for ‘endpoints’:
          endpoints
            = (start' `select` bid' `select` close') >> endpoints
            where
                start' = endpoint @"start" >>= start
                bid' = endpoint @"bid" >>= bid
                close' = endpoint @"close" >>= close
    |
340 | endpoints = (start' `select` bid' `select` close') >> endpoints
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Compilation Error, Line 340, Column 14 (jump)
 error:
    • Couldn't match expected type ‘Promise w3 s3 e1 a0’
                  with actual type ‘Contract w0 s0 e0 ()’
    • In the first argument of ‘select’, namely ‘start'’
      In the first argument of ‘select’, namely ‘start' `select` bid'’
      In the first argument of ‘(>>)’, namely
        ‘(start' `select` bid' `select` close')’
    |
340 | endpoints = (start' `select` bid' `select` close') >> endpoints
    |              ^^^^^^
Compilation Error, Line 340, Column 30 (jump)
 error:
    • Couldn't match expected type ‘Promise w3 s3 e1 a0’
                  with actual type ‘Contract w1 s1 Text ()’
    • In the second argument of ‘select’, namely ‘bid'’
      In the first argument of ‘select’, namely ‘start' `select` bid'’
      In the first argument of ‘(>>)’, namely
        ‘(start' `select` bid' `select` close')’
    |
340 | endpoints = (start' `select` bid' `select` close') >> endpoints
    |                              ^^^^
Compilation Error, Line 340, Column 44 (jump)
 error:
    • Couldn't match expected type ‘Promise w3 s3 e1 a0’
                  with actual type ‘Contract w2 s2 Text ()’
    • In the second argument of ‘select’, namely ‘close'’
      In the first argument of ‘(>>)’, namely
        ‘(start' `select` bid' `select` close')’
      In the expression:
        (start' `select` bid' `select` close') >> endpoints
    |
340 | endpoints = (start' `select` bid' `select` close') >> endpoints
    |                                            ^^^^^^
Compilation Error, Line 340, Column 55 (jump)
 error:
    • Couldn't match type ‘Contract () AuctionSchema Text’
                     with ‘Promise w3 s3 e1’
      Expected type: Promise w3 s3 e1 ()
        Actual type: Contract () AuctionSchema Text ()
    • In the second argument of ‘(>>)’, namely ‘endpoints’
      In the expression:
        (start' `select` bid' `select` close') >> endpoints
      In an equation for ‘endpoints’:
          endpoints
            = (start' `select` bid' `select` close') >> endpoints
            where
                start' = endpoint @"start" >>= start
                bid' = endpoint @"bid" >>= bid
                close' = endpoint @"close" >>= close
    |
340 | endpoints = (start' `select` bid' `select` close') >> endpoints
    |                                                       ^^^^^^^^^
Compilation Error, Line 342, Column 14 (jump)
 error:
    • Couldn't match expected type ‘Contract w s e StartParams’
                  with actual type ‘(a3 -> Contract w6 s6 e4 b2)
                                    -> Promise w6 s6 e4 b2’
    • Probable cause: ‘endpoint’ is applied to too few arguments
      In the first argument of ‘(>>=)’, namely ‘endpoint @"start"’
      In the expression: endpoint @"start" >>= start
      In an equation for ‘start'’: start' = endpoint @"start" >>= start
    • Relevant bindings include
        start' :: Contract w s e ()
          (bound at /private/tmp/web-ghc-work-3f1fa098d9ec0bee/Main.hs:342:5)
    |
342 |     start' = endpoint @"start" >>= start
    |              ^^^^^^^^^^^^^^^^^
Compilation Error, Line 343, Column 14 (jump)
 error:
    • Couldn't match expected type ‘Contract w s Text BidParams’
                  with actual type ‘(a2 -> Contract w5 s5 e3 b1)
                                    -> Promise w5 s5 e3 b1’
    • Probable cause: ‘endpoint’ is applied to too few arguments
      In the first argument of ‘(>>=)’, namely ‘endpoint @"bid"’
      In the expression: endpoint @"bid" >>= bid
      In an equation for ‘bid'’: bid' = endpoint @"bid" >>= bid
    • Relevant bindings include
        bid' :: Contract w s Text ()
          (bound at /private/tmp/web-ghc-work-3f1fa098d9ec0bee/Main.hs:343:5)
    |
343 |     bid'   = endpoint @"bid"   >>= bid
    |              ^^^^^^^^^^^^^^^
Compilation Error, Line 344, Column 14 (jump)
 error:
    • Couldn't match expected type ‘Contract w s Text CloseParams’
                  with actual type ‘(a1 -> Contract w4 s4 e2 b0)
                                    -> Promise w4 s4 e2 b0’
    • Probable cause: ‘endpoint’ is applied to too few arguments
      In the first argument of ‘(>>=)’, namely ‘endpoint @"close"’
      In the expression: endpoint @"close" >>= close
      In an equation for ‘close'’: close' = endpoint @"close" >>= close
    • Relevant bindings include
        close' :: Contract w s Text ()
          (bound at /private/tmp/web-ghc-work-3f1fa098d9ec0bee/Main.hs:344:5)
    |
344 |     close' = endpoint @"close" >>= close
    |              ^^^^^^^^^^^^^^^^^

isScriptInput is not actually looking only for script inputs

Some contracts in the repository rely on potentially unsafe assumptions. One example is the isScriptInput function:

isScriptInput i = case (txOutDatumHash . txInInfoResolved) i of
    Nothing -> False
    Just _  -> True

This assumes that every input that has a datum hash is a script input. However, according to the spec:

TxOut is the type of transaction outputs. These are extended to include an optional hash
of a datum. Note that any output can optionally include such a hash, even though only
phase-2 scripts can actually use the hash value. Since it is in general impossible for the
ledger implementation to know at the time of transaction creation whether or not an
output belongs to a phase-2 script, we simply allow any output to contain a hash of a
datum.

That could be dangerous, since anyone can fake a script input by just attaching a datum hash.

The solution or the cleaner way is presented in week 6, where they are filtering by validatorHash, which is cleaner for preventing these double satisfaction issues

Lucid has invalid Blockfrost token

Lucid doesn't work properly since Blockfrost token is invalid, this fails when trying to retrieve data from blockfrost api /v0/epochs/latest/parameters

{"error":"Forbidden","message":"Invalid project token.","status_code":403}

[PPP 040305] How to integrate Parameterized Contracts with Lucid ?

From this video about Offchain Code with Lucid

do we have any example of integrating Parameterized Contracts(ParameterizedVesting) with Lucid ?
in this case (parameterized validator), how do we generate plutus script in CBOR when end user input there param, for eg: the beneficiary and deadline?

I found this about minting policy with parameters (parameterized minting script). But, i'm not sure how the parameterized minting script written.

p/s: idk what is best way to solve this, my work around solution for this is we should pass the end user's json payload to a proxy which call to cli that generate the plutus script with the json payload.

Better Comments when Submitted Files

@brunjlar as a newby I would be 1000x grateful if the submits done in the Plutus Pioneer Program had better comments on what has been updated and why, instead of "updated code". Hopefully a small ask but one that would be a huge difference when looking at submits as a newcomer and wondering what the update entails.

Appreciate everything you do and thank you!

Can't build week01

Hi, I've been trying to build the week one code but I can't make it work.
I have tried the base version fix switching base ^>=4.14.1.0 to base ==4.14.0.0 but it doesn't work.
I also tried to use ghc-8.10.2 instead of my current ghc-8.10.5, but it doesn't seem to work either.

Here's the error:

Warning: Requested index-state 2021-06-10T00:00:00Z is newer than
'hackage.haskell.org'! Falling back to older state (2021-06-09T23:01:39Z).
Resolving dependencies...
cabal: Could not resolve dependencies:
[__0] next goal: cardano-crypto-class (user goal)
[__0] rejecting: cardano-crypto-class-2.0.0 (conflict: pkg-config package
libsodium-any, not found in the pkg-config database)
[__0] fail (backjumping, conflict set: cardano-crypto-class)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: cardano-crypto-class

Device: M1 mac with macOS BigSur 11.4

I would love some help thanks!

Error running EnglishAuction

I have the latest version of plutus playground running. When I tried to run the EnglishAuction it gave a lot of errors so I tried to add the changes suggested in #21 but even after that I am getting the following error:

Compilation Error, Line 266, Column 27 (jump)
 error:
    Not in scope: ‘Constraints.scriptInstanceLookups’
    Module ‘Ledger.Constraints’ does not export ‘scriptInstanceLookups’.
    |
266 |                 lookups = Constraints.scriptInstanceLookups auctionInstance <>
    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Compilation Error, Line 297, Column 31 (jump)
 error:
    Not in scope: ‘Constraints.scriptInstanceLookups’
    Module ‘Ledger.Constraints’ does not export ‘scriptInstanceLookups’.
    |
297 |                     lookups = Constraints.scriptInstanceLookups auctionInstance <>
    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

How can I fix this?

Error running nix-shell

I have followed the instructions from here: https://docs.plutus-community.com/docs/setup/MacOS.html

I have completed steps 1-9, but when I try to run:
nix-build -A plutus-playground.client
or
nix-build -A plutus-playground.server
I receive these errors:
zsh: segmentation fault nix-build -A plutus-playground.client
zsh: segmentation fault nix-build -A plutus-playground.server

Also when I try to start nix-shell everything froze here:

~ nix-shell
trace: To materialize project.plan-nix for Agda entirely, pass a writable path as the materialized argument and run the 'updateMaterialized' script in 'passthru'.
waiting for lock on '/nix/store/hcjpdhyjhkhz6albg40rqhj7m1dpnmf3-hnix-lib-hnix-0.13.1'...

Week01/EnglishAuction.hs : an issue when two bids by two independent wallets are made in same slot

There seems a bug in Week-1's EnglishAuction script.

  1. To start with the simulator, I used three wallets in total and allocated 1000 ADA each. Wallet-1 was additionally allocated one Native Token T.
  2. I added "start" event by Wallet-1. input values (POSITime-1596059101, minBid-100 ADA, currencySymbol-66, Token-T ) are provided exactly as Plutus-Pioneer-Program Week01 youtube Lecture.
  3. Afterwards a wait time of 1 block was added.
  4. I added a "bid" event by Wallet-2. bid value was 120 ADA. (as per youtube video)
  5. I added a "bid" event by Wallet-3. bid value was 150 ADA. (as per youtube video)
  6. Afterwards a wait time of 1 block was added.
  7. "Evaluate" button was clicked.

Below mentioned are relevant points as shown by Simulator for Slot-2.

  1. Slot-2, Txn-0 shows two inputs i.e. Wallet-3 (1,000,000,000 Lovelace) & Script (1 T). It shows three outputs i.e. Fee (14,129 Lovelace), Wallet-3 (849,985,871 Lovelace), Script (1 T, 150,000,000 Lovelace).
  2. Slot-2, Txn-1 shows only one input i.e. Wallet-2 (1,000,000,000 Lovelace). It shows three outputs i.e. Fee (14,129 Lovelace), Wallet-2 (879,985,871 Lovelace), Script (1 T, 120,000,000 Lovelace).

Point-2 above seems to have caused some issues w.r.t Wallet-2. having Script in output seems wrong as Script was never a part of Input. Moreover bid event by Wallet-2 must never been accepted considering its a lower bid amount than Wallet-3 bid.

Finally to top it all, Final Balances is showing Wallet-2 with 0 ADA which is absolutely in-correct.

Below pasted is the Logs:

Validating transaction: e7474b9a08609a9ebb87542d364c6e58b6ea83b2c977e98d9a32d7d5247a45c1
Add slot 1
Contract instance for wallet 1: (ReceiveEndpointCall (EndpointDescription { getEndpointDescription: "start" }) (RawJson "{\"contents\":[{\"getEndpointDescription\":\"start\"},{\"unEndpointValue\":{\"spToken\":{\"unTokenName\":\"T\"},\"spCurrency\":{\"unCurrencySymbol\":\"66\"},\"spDeadline\":{\"getPOSIXTime\":1596059101},\"spMinBid\":100000000}}],\"tag\":\"ExposeEndpointResp\"}"))
Validating transaction: 1ae51f0514155523289cd4ba1bd391011143dce3933543fc69bcd3748119e435
Add slot 2
Contract instance for wallet 1: (ContractLog (RawJson "started auction Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"} for token Value (Map [(66,Map [(\"T\",1)])])"))
Contract instance for wallet 2: (ReceiveEndpointCall (EndpointDescription { getEndpointDescription: "bid" }) (RawJson "{\"contents\":[{\"getEndpointDescription\":\"bid\"},{\"unEndpointValue\":{\"bpToken\":{\"unTokenName\":\"T\"},\"bpBid\":120000000,\"bpCurrency\":{\"unCurrencySymbol\":\"66\"}}}],\"tag\":\"ExposeEndpointResp\"}"))
Contract instance for wallet 2: (ContractLog (RawJson "found auction utxo with datum AuctionDatum {adAuction = Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"}, adHighestBid = Nothing}"))
Contract instance for wallet 3: (ReceiveEndpointCall (EndpointDescription { getEndpointDescription: "bid" }) (RawJson "{\"contents\":[{\"getEndpointDescription\":\"bid\"},{\"unEndpointValue\":{\"bpToken\":{\"unTokenName\":\"T\"},\"bpBid\":150000000,\"bpCurrency\":{\"unCurrencySymbol\":\"66\"}}}],\"tag\":\"ExposeEndpointResp\"}"))
Contract instance for wallet 3: (ContractLog (RawJson "found auction utxo with datum AuctionDatum {adAuction = Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"}, adHighestBid = Nothing}"))
Validating transaction: a5e0fd04880058a02333174fc0a0bea2b956d36cac539608c92959bc7028a191
Validation failed: f86b2d4e20f089bb7311f3ad5caed1907a2375ff849b776797b447eadd5b269c
 (TxOutRefNotFound (TxOutRef { txOutRefId: (TxId { getTxId: "1ae51f0514155523289cd4ba1bd391011143dce3933543fc69bcd3748119e435" }), txOutRefIdx: 1 }))
Add slot 3
Contract instance for wallet 2: (ContractLog (RawJson "made bid of 120000000 lovelace in auction Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"} for token (66, \"T\")"))

Below pasted is the Trace:

[ Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Contract instance started
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Current requests (3):   Iteration 1 request ID 3
                                    Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 1 request ID 2
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 1 request ID 1
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            No requests handled
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Receive endpoint call on 'start' for Object (fromList [("contents",Array [Object (fromList [("getEndpointDescription",String "start")]),Object (fromList [("unEndpointValue",Object (fromList [("spCurrency",Object (fromList [("unCurrencySymbol",String "66")])),("spDeadline",Object (fromList [("getPOSIXTime",Number 1.596059101e9)])),("spMinBid",Number 1.0e8),("spToken",Object (fromList [("unTokenName",String "T")]))]))])]),("tag",String "ExposeEndpointResp")])
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Handled request:   Iteration 1 request ID 1
                               Response: "{\"contents\":[{\"getEndpointDescription\":\"star
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Current requests (1):   Iteration 2 request ID 1
                                    Request: "{\"tag\":\"OwnPublicKeyReq\"}"
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Handled request:   Iteration 2 request ID 1
                               Response: "{\"contents\":{\"getPubKey\":\"d75a980182b10ab7d5
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Current requests (1):   Iteration 3 request ID 1
                                    Request: "{\"contents\":{\"unBalancedTxTx\":{\"txData\":[[\
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Handled request:   Iteration 3 request ID 1
                               Response: "{\"contents\":{\"contents\":{\"txData\":[[\"061fc
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Current requests (1):   Iteration 4 request ID 1
                                    Request: "{\"contents\":{\"getTxId\":\"1ae51f0514155523289c
, Slot 1: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            No requests handled
, Slot 2: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Contract log: String "started auction Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"} for token Value (Map [(66,Map [(\"T\",1)])])"
, Slot 2: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Handled request:   Iteration 4 request ID 1
                               Response: "{\"contents\":{\"getTxId\":\"1ae51f0514155523289c
, Slot 2: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            Current requests (3):   Iteration 5 request ID 3
                                    Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 5 request ID 2
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 5 request ID 1
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
, Slot 2: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            No requests handled
, Slot 2: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            No requests handled
, Slot 3: 00000000-0000-4000-8000-000000000000 {Contract instance for wallet 1}:
            No requests handled ]
[ Slot 1: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Contract instance started
, Slot 1: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Current requests (3):   Iteration 1 request ID 3
                                    Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 1 request ID 2
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 1 request ID 1
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
, Slot 1: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            No requests handled
, Slot 1: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            No requests handled
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            No requests handled
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Receive endpoint call on 'bid' for Object (fromList [("contents",Array [Object (fromList [("getEndpointDescription",String "bid")]),Object (fromList [("unEndpointValue",Object (fromList [("bpBid",Number 1.2e8),("bpCurrency",Object (fromList [("unCurrencySymbol",String "66")])),("bpToken",Object (fromList [("unTokenName",String "T")]))]))])]),("tag",String "ExposeEndpointResp")])
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Handled request:   Iteration 1 request ID 2
                               Response: "{\"contents\":[{\"getEndpointDescription\":\"bid\
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Current requests (1):   Iteration 2 request ID 1
                                    Request: "{\"contents\":{\"addressStakingCredential\":null,
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Contract log: String "found auction utxo with datum AuctionDatum {adAuction = Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"}, adHighestBid = Nothing}"
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Handled request:   Iteration 2 request ID 1
                               Response: "{\"contents\":{\"address\":{\"addressStakingCrede
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Current requests (1):   Iteration 3 request ID 1
                                    Request: "{\"tag\":\"OwnPublicKeyReq\"}"
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Handled request:   Iteration 3 request ID 1
                               Response: "{\"contents\":{\"getPubKey\":\"3d4017c3e843895a92
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Current requests (1):   Iteration 4 request ID 1
                                    Request: "{\"contents\":{\"unBalancedTxTx\":{\"txData\":[[\
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Handled request:   Iteration 4 request ID 1
                               Response: "{\"contents\":{\"contents\":{\"txData\":[[\"061fc
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Current requests (1):   Iteration 5 request ID 1
                                    Request: "{\"contents\":{\"getTxId\":\"f86b2d4e20f089bb7311
, Slot 2: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            No requests handled
, Slot 3: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Contract log: String "made bid of 120000000 lovelace in auction Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"} for token (66, \"T\")"
, Slot 3: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Handled request:   Iteration 5 request ID 1
                               Response: "{\"contents\":{\"getTxId\":\"f86b2d4e20f089bb7311
, Slot 3: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            Current requests (3):   Iteration 6 request ID 3
                                    Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 6 request ID 2
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 6 request ID 1
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
, Slot 3: 00000000-0000-4000-8000-000000000001 {Contract instance for wallet 2}:
            No requests handled ]
[ Slot 1: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Contract instance started
, Slot 1: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Current requests (3):   Iteration 1 request ID 3
                                    Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 1 request ID 2
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
              Iteration 1 request ID 1
              Request: "{\"contents\":{\"aeMetadata\":null,\"aeDescriptio
, Slot 1: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            No requests handled
, Slot 1: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            No requests handled
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            No requests handled
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Receive endpoint call on 'bid' for Object (fromList [("contents",Array [Object (fromList [("getEndpointDescription",String "bid")]),Object (fromList [("unEndpointValue",Object (fromList [("bpBid",Number 1.5e8),("bpCurrency",Object (fromList [("unCurrencySymbol",String "66")])),("bpToken",Object (fromList [("unTokenName",String "T")]))]))])]),("tag",String "ExposeEndpointResp")])
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Handled request:   Iteration 1 request ID 2
                               Response: "{\"contents\":[{\"getEndpointDescription\":\"bid\
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Current requests (1):   Iteration 2 request ID 1
                                    Request: "{\"contents\":{\"addressStakingCredential\":null,
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Contract log: String "found auction utxo with datum AuctionDatum {adAuction = Auction {aSeller = 21fe31dfa154a261626bf854046fd2271b7bed4b6abe45aa58877ef47f9721b9, aDeadline = POSIXTime {getPOSIXTime = 1596059101}, aMinBid = 100000000, aCurrency = 66, aToken = \"T\"}, adHighestBid = Nothing}"
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Handled request:   Iteration 2 request ID 1
                               Response: "{\"contents\":{\"address\":{\"addressStakingCrede
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Current requests (1):   Iteration 3 request ID 1
                                    Request: "{\"tag\":\"OwnPublicKeyReq\"}"
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Handled request:   Iteration 3 request ID 1
                               Response: "{\"contents\":{\"getPubKey\":\"fc51cd8e6218a1a38d
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Current requests (1):   Iteration 4 request ID 1
                                    Request: "{\"contents\":{\"unBalancedTxTx\":{\"txData\":[[\
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Handled request:   Iteration 4 request ID 1
                               Response: "{\"contents\":{\"contents\":{\"txData\":[[\"061fc
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            Current requests (1):   Iteration 5 request ID 1
                                    Request: "{\"contents\":{\"getTxId\":\"a5e0fd04880058a02333
, Slot 2: 00000000-0000-4000-8000-000000000002 {Contract instance for wallet 3}:
            No requests handled ]

Cannot load test/Spec/Trace.hs

As mentioned on Discord there seem to errors loading dependencies for the Spec.Trace module

[Prelude Week08.Lens> :l test/Spec/Trace.hs 

<no location info>: warning: [-Wmissing-home-modules]
    These modules are needed for compilation but not listed in your .cabal file's other-modules: 
        Week08.TokenSale
[2 of 2] Compiling Spec.Trace       ( test/Spec/Trace.hs, /Users/tdiesler/git/plutus-pioneer-program/code/week08/dist-newstyle/build/x86_64-osx/ghc-8.10.4/plutus-pioneer-program-week08-0.1.0.0/build/Spec/Trace.o ) [Test.Tasty changed]

test/Spec/Trace.hs:22:1: error:
    Could not load module ‘Control.Monad.Freer.Extras’
    It is a member of the hidden package ‘freer-extras-0.1.0.0’.
    Perhaps you need to add ‘freer-extras’ to the build-depends in your .cabal file.
    It is a member of the hidden package ‘freer-extras-0.1.0.0’.
    Perhaps you need to add ‘freer-extras’ to the build-depends in your .cabal file.
    Use -v (or `:set -v` in ghci) to see a list of the files searched for.
   |
22 | import           Control.Monad.Freer.Extras as Extras
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

test/Spec/Trace.hs:23:1: error:
    Could not load module ‘Data.Default’
    It is a member of the hidden package ‘data-default-0.7.1.1’.
    Perhaps you need to add ‘data-default’ to the build-depends in your .cabal file.
    Use -v (or `:set -v` in ghci) to see a list of the files searched for.
   |
23 | import           Data.Default               (Default (..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

test/Spec/Trace.hs:33:1: error:
    Could not load module ‘Test.Tasty’
    It is a member of the hidden package ‘tasty-1.4.1’.
    Perhaps you need to add ‘tasty’ to the build-depends in your .cabal file.
    Use -v (or `:set -v` in ghci) to see a list of the files searched for.
   |
33 | import           Test.Tasty
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Failed, one module loaded.

I fixed this by adding the missing stuff to the library section in the .cabal file. No sure, if this is the right thing to do because they are already in the test-suite section where test/Spec/Trace.hs lives

Haskell Language Server: GHC Runtime linker: fatal error

Hello,

I'm on Archlinux and I tried setting up the environment variable, everything works except for HLS. There are some posts about the same issue in discord and on the stack exchange, none had an answer, so I'm opening an issue.

These are the steps:

  1. clone plutus-apps and checkout 4114992
  2. configure nix and run nix-shell
  3. clone plutus-pioneer-program.
  4. in plutus-pioneer-program/code/week01, run cabal update and then cabal build
  5. run haskell-language-server in the terminal. Error:
haskell-language-server version: 1.3.0.0 (GHC: 8.10.4.20210212) (PATH: /nix/store/1f5m9aq39by56hbky1pz7dd52f4ikam8-haskell-language-server-exe-haskell-language-server-1.3.0.0/bin/haskell-language-server)
 ghcide setup tester in /home/yecinem/plutus/plutus-pioneer-program/code/week01.
Report bugs at https://github.com/haskell/haskell-language-server/issues
 
Step 1/4: Finding files to test in /home/yecinem/plutus/plutus-pioneer-program/code/week01
Found 1 files
 
Step 2/4: Looking for hie.yaml files that control setup
Found 1 cradle
  (/home/yecinem/plutus/plutus-pioneer-program/code/week01/hie.yaml)
 
Step 3/4: Initializing the IDE
 
Step 4/4: Type checking the files
2022-01-13 14:35:44.202485745 [ThreadId 48] INFO hls:	Consulting the cradle for "src/Week01/EnglishAuction.hs"
Output from setting up the cradle Cradle {cradleRootDir = "/home/yecinem/plutus/plutus-pioneer-program/code/week01", cradleOptsProg = CradleAction: Cabal}
> Build profile: -w ghc-8.10.4.20210212 -O1
> In order, the following will be built (use -v for more details):
>  - plutus-pioneer-program-week01-0.1.0.0 (lib) (first run)
> Preprocessing library for plutus-pioneer-program-week01-0.1.0.0..
2022-01-13 14:35:45.53779415 [ThreadId 48] INFO hls:	Using interface files cache dir: /home/yecinem/.cache/ghcide/plutus-pioneer-program-week01-0.1.0.0-inplace-1b9e41bb341ffe312c5f8953d9cf40856a287f15
2022-01-13 14:35:45.538071346 [ThreadId 48] INFO hls:	Making new HscEnv[plutus-pioneer-program-week01-0.1.0.0-inplace]
GHC runtime linker: fatal error: I found a duplicate definition for symbol
   sqlite3_fts3_may_be_corrupt
whilst processing object file
   /nix/store/jmhwwzn1yfjzlxavz16afkf1r4shmp8z-persistent-sqlite-lib-persistent-sqlite-2.13.0.3/lib/x86_64-linux-ghc-8.10.4.20210212/persistent-sqlite-2.13.0.3-8rnIaulr0SMFWDeiU7TZN4/HSpersistent-sqlite-2.13.0.3-8rnIaulr0SMFWDeiU7TZN4.o
The symbol was previously defined in
   /nix/store/si95pc9hb5hr1yiyj7b2s75hl4bkn9g2-direct-sqlite-lib-direct-sqlite-2.3.26/lib/x86_64-linux-ghc-8.10.4.20210212/direct-sqlite-2.3.26-Gg0YVBPVrMk3LDxZxB2Bzf/HSdirect-sqlite-2.3.26-Gg0YVBPVrMk3LDxZxB2Bzf.o
This could be caused by:
   * Loading two different object files which export the same symbol
   * Specifying the same object file twice on the GHCi command line
   * An incorrect `package.conf' entry, causing some object to be
     loaded twice.
2022-01-13 14:35:50.125538864 [ThreadId 165] INFO hls:	File:     /home/yecinem/plutus/plutus-pioneer-program/code/week01/src/Week01/EnglishAuction.hs
Hidden:   no
Range:    1:1-2:1
Source:   compiler
Severity: DsError
Message:
  loadObj
  "/nix/store/jmhwwzn1yfjzlxavz16afkf1r4shmp8z-persistent-sqlite-lib-persistent-sqlite-2.13.0.3/lib/x86_64-linux-ghc-8.10.4.20210212/persistent-sqlite-2.13.0.3-8rnIaulr0SMFWDeiU7TZN4/HSpersistent-sqlite-2.13.0.3-8rnIaulr0SMFWDeiU7TZN4.o":
  failed
2022-01-13 14:35:50.125780264 [ThreadId 182] INFO hls:	finish: User TypeCheck (took 4.56s)
2022-01-13 14:35:50.126128185 [ThreadId 186] INFO hls:	finish: GetHie (took 0.00s)
2022-01-13 14:35:50.126325983 [ThreadId 188] INFO hls:	finish: GenerateCore (took 0.00s)
Files that failed:
 * /home/yecinem/plutus/plutus-pioneer-program/code/week01/src/Week01/EnglishAuction.hs
 
Completed (0 files worked, 1 file failed)

Not sure if I also should file a bug somewhere else.

Thank you!

(Week1) `Setup: No cabal file found` when executing plutus-playground-server

On NixOS and following the instructions I get the below error after running plutus-playground-server:

plutus-playground-server: for development use only
error: builder for '/nix/store/9zq82svxm5apql874z9hj7w4gh9hspas-freer-extras-lib-freer-extras-0.1.0.0.drv' failed with exit code 1;
       last 10 log lines:
       > unpacking sources
       > unpacking source archive /nix/store/dxxn0w9kznhsgaly6z77qk9h74rpsf3a-plutus-root-freer-extras-lib-freer-extras-root
       > source root is plutus-root-freer-extras-lib-freer-extras-root
       > patching sources
       > configuring
       > Configure flags:
       > --prefix=/nix/store/5y5nh5c60rnff2p83iy7aj5vbr1jxk37-freer-extras-lib-freer-extras-0.1.0.0 lib:freer-extras --package-db=clear --package-db=/nix/store/4k37451iqzf4nm7mir6rld8p0yxkkklm-freer-extras-lib-freer-extras-0.1.0.0-config/lib/ghc-8.10.4.20210212/package.conf.d --exact-configuration --dependency=aeson=aeson-1.5.6.0-3ufdjYIJLdUA9y4iP5bT6I --dependency=lens=lens-4.19.2-9cNeq6RLuKcGifnh8XKNvX --dependency=freer-simple=freer-simple-1.2.1.1-6r9C1W0fXpw54F4B1k9xXL --dependency=prettyprinter=prettyprinter-1.7.0-9YjuSqasuU58xkNfFeECaA --dependency=streaming=streaming-0.2.3.0-29GDiVIYgC92cbWoaobjf8 --dependency=rts=rts --dependency=ghc-heap=ghc-heap-8.10.4.20210212 --dependency=ghc-prim=ghc-prim-0.6.1 --dependency=integer-gmp=integer-gmp-1.0.3.0 --dependency=base=base-4.14.1.0 --dependency=deepseq=deepseq-1.4.4.0 --dependency=array=array-0.5.4.0 --dependency=ghc-boot-th=ghc-boot-th-8.10.4.20210212 --dependency=pretty=pretty-1.1.3.6 --dependency=template-haskell=template-haskell-2.16.0.0 --dependency=ghc-boot=ghc-boot-8.10.4.20210212 --dependency=ghc=ghc-8.10.4.20210212 --dependency=Cabal=Cabal-3.2.1.0 --dependency=array=array-0.5.4.0 --dependency=binary=binary-0.8.8.0 --dependency=bytestring=bytestring-0.10.12.0 --dependency=containers=containers-0.6.2.1 --dependency=directory=directory-1.3.6.0 --dependency=filepath=filepath-1.4.2.1 --dependency=ghc-boot=ghc-boot-8.10.4.20210212 --dependency=ghc-compact=ghc-compact-0.1.0.0 --dependency=ghc-prim=ghc-prim-0.6.1 --dependency=hpc=hpc-0.6.1.0 --dependency=mtl=mtl-2.2.2 --dependency=parsec=parsec-3.1.14.0 --dependency=process=process-1.6.9.0 --dependency=text=text-1.2.4.1 --dependency=time=time-1.9.3 --dependency=transformers=transformers-0.5.6.2 --dependency=unix=unix-2.7.2.2 --dependency=xhtml=xhtml-3000.2.2.1 --dependency=terminfo=terminfo-0.4.1.4 --with-ghc=ghc --with-ghc-pkg=ghc-pkg --with-hsc2hs=hsc2hs --with-gcc=cc --with-ld=ld.gold --ghc-option=-optl-fuse-ld=gold --ld-option=-fuse-ld=gold --with-ar=ar --with-strip=strip --disable-executable-stripping --disable-library-stripping --disable-library-profiling --disable-executable-profiling --enable-static --enable-shared --disable-coverage --enable-library-for-ghci --enable-split-sections
       > Setup: No cabal file found.
       > Please create a package description file <pkgname>.cabal
       >
       For full logs, run 'nix log /nix/store/9zq82svxm5apql874z9hj7w4gh9hspas-freer-extras-lib-freer-extras-0.1.0.0.drv'.
error: 1 dependencies of derivation '/nix/store/q9rxqvwnaaphlrb1jk3s0jg77sx324z6-plutus-contract-lib-plutus-contract-0.1.0.0-config.drv' failed to build
error: 1 dependencies of derivation '/nix/store/swqzi78r7pf887x59h49qpwkvhpgdv17-plutus-contract-lib-plutus-contract-0.1.0.0.drv' failed to build
error: 1 dependencies of derivation '/nix/store/x9z3yfgl6n4x1jpblbnv1mwpqsprggvm-ghc-8.10.4.20210212-with-packages-config.drv' failed to build
error: 1 dependencies of derivation '/nix/store/8is6gin3zv3w0x177yhz0pl3lify6mfr-ghc-shell-for-packages-ghc-8.10.4.20210212-env.drv' failed to build
error: builder for '/nix/store/9zq82svxm5apql874z9hj7w4gh9hspas-freer-extras-lib-freer-extras-0.1.0.0.drv' failed with exit code 1;
       last 10 log lines:
       > unpacking sources
       > unpacking source archive /nix/store/dxxn0w9kznhsgaly6z77qk9h74rpsf3a-plutus-root-freer-extras-lib-freer-extras-root
       > source root is plutus-root-freer-extras-lib-freer-extras-root
       > patching sources
       > configuring
       > Configure flags:
       > --prefix=/nix/store/5y5nh5c60rnff2p83iy7aj5vbr1jxk37-freer-extras-lib-freer-extras-0.1.0.0 lib:freer-extras --package-db=clear --package-db=/nix/store/4k37451iqzf4nm7mir6rld8p0yxkkklm-freer-extras-lib-freer-extras-0.1.0.0-config/lib/ghc-8.10.4.20210212/package.conf.d --exact-configuration --dependency=aeson=aeson-1.5.6.0-3ufdjYIJLdUA9y4iP5bT6I --dependency=lens=lens-4.19.2-9cNeq6RLuKcGifnh8XKNvX --dependency=freer-simple=freer-simple-1.2.1.1-6r9C1W0fXpw54F4B1k9xXL --dependency=prettyprinter=prettyprinter-1.7.0-9YjuSqasuU58xkNfFeECaA --dependency=streaming=streaming-0.2.3.0-29GDiVIYgC92cbWoaobjf8 --dependency=rts=rts --dependency=ghc-heap=ghc-heap-8.10.4.20210212 --dependency=ghc-prim=ghc-prim-0.6.1 --dependency=integer-gmp=integer-gmp-1.0.3.0 --dependency=base=base-4.14.1.0 --dependency=deepseq=deepseq-1.4.4.0 --dependency=array=array-0.5.4.0 --dependency=ghc-boot-th=ghc-boot-th-8.10.4.20210212 --dependency=pretty=pretty-1.1.3.6 --dependency=template-haskell=template-haskell-2.16.0.0 --dependency=ghc-boot=ghc-boot-8.10.4.20210212 --dependency=ghc=ghc-8.10.4.20210212 --dependency=Cabal=Cabal-3.2.1.0 --dependency=array=array-0.5.4.0 --dependency=binary=binary-0.8.8.0 --dependency=bytestring=bytestring-0.10.12.0 --dependency=containers=containers-0.6.2.1 --dependency=directory=directory-1.3.6.0 --dependency=filepath=filepath-1.4.2.1 --dependency=ghc-boot=ghc-boot-8.10.4.20210212 --dependency=ghc-compact=ghc-compact-0.1.0.0 --dependency=ghc-prim=ghc-prim-0.6.1 --dependency=hpc=hpc-0.6.1.0 --dependency=mtl=mtl-2.2.2 --dependency=parsec=parsec-3.1.14.0 --dependency=process=process-1.6.9.0 --dependency=text=text-1.2.4.1 --dependency=time=time-1.9.3 --dependency=transformers=transformers-0.5.6.2 --dependency=unix=unix-2.7.2.2 --dependency=xhtml=xhtml-3000.2.2.1 --dependency=terminfo=terminfo-0.4.1.4 --with-ghc=ghc --with-ghc-pkg=ghc-pkg --with-hsc2hs=hsc2hs --with-gcc=cc --with-ld=ld.gold --ghc-option=-optl-fuse-ld=gold --ld-option=-fuse-ld=gold --with-ar=ar --with-strip=strip --disable-executable-stripping --disable-library-stripping --disable-library-profiling --disable-executable-profiling --enable-static --enable-shared --disable-coverage --enable-library-for-ghci --enable-split-sections
       > Setup: No cabal file found.
       > Please create a package description file <pkgname>.cabal
       >
       For full logs, run 'nix log /nix/store/9zq82svxm5apql874z9hj7w4gh9hspas-freer-extras-lib-freer-extras-0.1.0.0.drv'.
error: 1 dependencies of derivation '/nix/store/p548mdawa77cw9b5nvwgx9awi0mdcqnj-plutus-playground-server-exe-plutus-playground-server-0.1.0.0.drv' failed to build
/nix/store/rm5268gvw75mmh8mhcbb9rs817wvnfhj-plutus-playground-server/bin/plutus-playground-server: line 10: /bin/plutus-playground-server: No such file or directory

Week06: collect oracle fees

In Week06.Oracle.Test if it never changes the exchange oracle value (with @update) no fees are collected into Wallet 1

Is it the normal behavior and I am missing something?

Documentation is misleading.

Build the English Auction contract with cabal build shouldn't be the first step, since it only works if you have cabal in your system out of nix. Considering that pretty much everyone is building plutus with nix, and the build includes cabal and all necesary libraries, building the contract should after initializing the nix-shell

Failed to build eventful-sql-common-0.2.0 (week 10)

at the command cabal run uniswap-pab I get the error at a fresh install of the repo:

src/Eventful/Store/Sql/Orphans.hs:19:21: warning: [-Wdeprecations]
    In the use of data constructor ‘PersistDbSpecific’
    (imported from Database.Persist.Sql, but defined in persistent-2.11.0.4:Database.Persist.Types.Base):
    Deprecated: "Deprecated since 2.11 because of inconsistent escaping behavior across backends. The Postgres backend escapes these values, while the MySQL backend does not. If you are using this, please switch to 'PersistLiteral' or 'PersistLiteralEscaped' based on your needs."
   |
19 |   fromPersistValue (PersistDbSpecific t) =
   |                     ^^^^^^^^^^^^^^^^^
[3 of 5] Compiling Eventful.Store.Sql.Operations ( src/Eventful/Store/Sql/Operations.hs, dist/build/Eventful/Store/Sql/Operations.o, dist/build/Eventful/Store/Sql/Operations.dyn_o )

src/Eventful/Store/Sql/Operations.hs:18:1: warning: [-Wunused-imports]
    The import of ‘maybe’ from module ‘Data.Maybe’ is redundant
   |
18 | import Data.Maybe (listToMaybe, maybe)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/Eventful/Store/Sql/Operations.hs:19:1: warning: [-Wunused-imports]
    The import of ‘Data.Monoid’ is redundant
      except perhaps to import instances from ‘Data.Monoid’
    To import instances alone, use: import Data.Monoid()
   |
19 | import Data.Monoid ((<>))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
[4 of 5] Compiling Eventful.Store.Sql.DefaultEntity ( src/Eventful/Store/Sql/DefaultEntity.hs, dist/build/Eventful/Store/Sql/DefaultEntity.o, dist/build/Eventful/Store/Sql/DefaultEntity.dyn_o )

src/Eventful/Store/Sql/DefaultEntity.hs:25:1: error:
    Generating Persistent entities now requires the MultiParamTypeClasses language extension. Please enable it by copy/pasting this line to the top of your file:

{-# LANGUAGE MultiParamTypeClasses #-}
   |
25 | share [mkPersist sqlSettings, mkMigrate "migrateSqlEvent"] [persistLowerCase|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
cabal: Failed to build eventful-sql-common-0.2.0 (which is required by
exe:uniswap-pab from plutus-pioneer-program-week10-0.1.0.0). See the build log
above for details.

Unsure how to troubleshoot to solve this.

Reference to a name which is not a local, a builtin, or an external INLINABLE function

Trying to build a very simple minting policy for an NFT I get the following error; this happens also for the code of Week05.NFT module; what can be a cause?

Program error: GHC Core to PLC plugin: E043:Error: Reference to a name which is not a local, a builtin, or an external INLINABLE function: Variable Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
            No unfolding
Context: Compiling expr: Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
Context: Compiling expr: Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
                           @ ()
Context: Compiling expr: Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
                           @ () PlutusTx.IsData.Instances.$fUnsafeFromData()
Context: Compiling expr: Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
                           @ ()
                           PlutusTx.IsData.Instances.$fUnsafeFromData()
                           (Week05.NFT.mkPolicy oref'_a1nzX tn'_a1nzY)
Context: Compiling expr: \ (tn'_a1nzY
                              :: Plutus.V1.Ledger.Value.TokenName) ->
                           Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
                             @ ()
                             PlutusTx.IsData.Instances.$fUnsafeFromData()
                             (Week05.NFT.mkPolicy oref'_a1nzX tn'_a1nzY)
Context: Compiling expr: \ (oref'_a1nzX :: Plutus.V1.Ledger.Tx.TxOutRef)
                           (tn'_a1nzY :: Plutus.V1.Ledger.Value.TokenName) ->
                           Ledger.Typed.Scripts.MonetaryPolicies.wrapMintingPolicy
                             @ ()
                             PlutusTx.IsData.Instances.$fUnsafeFromData()
                             (Week05.NFT.mkPolicy oref'_a1nzX tn'_a1nzY)
Context: Compiling expr at "main:Week05.NFT:(51,8)-(51,93)"compile

Is any of this right still?

Cardano Dev Team,

Is any of the documentation correct? I have tried multiple ways to run week 1 and week 3 (scriptContext updates) code. I have tried following specific checkouts out the plutus repo to run the code. I have tried taking direct copies into the supposedly updated Playground. I even tried pulling the plutus-apps and building and running the playground from there with no luck.

I simply don't understand how we are suppose to start developing on something without clear and concise updates on the development workflow. Everyone in the IOHK dev teams know that MOST every other developer/software engineer outside of academia are not using Haskell. Coming from the education background most of you come from, this is a horrible "lesson plan" on how to learn anything if we simple can't get started and multiple iterations of examples simply don't compile.

I'm really going to challenge this brilliant team to do better on-boarding, so that this community can grow. I don't mind learning Haskell, cabal, nix, and all the other pragma's that plutus requires we learn. I even don't mind learning Plutus that is built on top of all mentioned software.

I don't understand why the Plutus-Starter doesn't have the playground, complete flow instructions for testnet, testing instructions, etc. To me, that seems like releasing GraphQL without the playground to test your calls and making users hack their way through curl/postman before support was generated for them. You have a playground, shouldn't it be in the same package to get started, specifically, after a year of everyone using it? Are we moving to PAB flows? I don't see much of anything about that, or the why? Just another example I can't get to work.

Long rant, (I really am sorry) to say that I really expect better from this team to on-board. As mentioned above, and something you sell yourself on, these packages are coming from academia and a peer review type community. When looking at lecture 1 of the plutus-pioneer-program the instructor is already running an environment without explanation to get there. Shouldn't that be one to two lectures?

When can developers moving from all the other languages/frameworks get clear and concise instructions on how to get started with something you are moving towards over complicating through the choices you have made? When can developers get documentation that is updates throughout each release cycle so we can review Types, Methods, Pragmas, etc.

Please crawl before sprinting?

I'll give you some examples of pages that support their languages/frameworks -
https://www.haskell.org/
https://reactjs.org/
https://www.djangoproject.com/
https://julialang.org/
https://v3.vuejs.org/

devcontainer vscode setup for docker fails to launch

Hello, trying to set up local dev environment as explained in Lecture 1 (i.e. clicking "Reopen in Container" after opening the root directory in vscode). However the container fails with this error:

[2023-03-17T10:20:05.788Z] [+] Running 5/5
 ⠿ Network plutus-pioneer-program_devcontainer_default           Created   0.1s
 ⠿ Volume "plutus-pioneer-program_devcontainer_node-db"          Created   0.0s
 ⠿ Volume "plutus-pioneer-program_devcontainer_node-ipc"         Created   0.0s
 ⠿ Container plutus-pioneer-program_devcontainer-ppp-1           Started   1.6s
 ⠿ Container plutus-pioneer-program_devcontainer-cardano-node-1  Started   1.5s
[2023-03-17T10:20:05.798Z] Stop (522482 ms): Run: docker events --format {{json .}} --filter event=start
[2023-03-17T10:20:06.006Z] Stop (511391 ms): Run: docker-compose --project-name plutus-pioneer-program_devcontainer -f /home/bnh/code/plutus-pioneer-program/.devcontainer/docker-compose.yml -f /home/bnh/.config/Code - OSS/User/globalStorage/ms-vscode-remote.remote-containers/data/docker-compose/docker-compose.devcontainer.containerFeatures-1679047894543.yml up -d
[2023-03-17T10:20:06.007Z] Start: Run: docker ps -q -a --filter label=com.docker.compose.project=plutus-pioneer-program_devcontainer --filter label=com.docker.compose.service=ppp
[2023-03-17T10:20:06.352Z] Stop (345 ms): Run: docker ps -q -a --filter label=com.docker.compose.project=plutus-pioneer-program_devcontainer --filter label=com.docker.compose.service=ppp
[2023-03-17T10:20:06.355Z] Start: Run: docker inspect --type container a2c409479d96
[2023-03-17T10:20:06.507Z] Stop (152 ms): Run: docker inspect --type container a2c409479d96
[2023-03-17T10:20:06.508Z] Start: Inspecting container
[2023-03-17T10:20:06.511Z] Start: Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:06.798Z] Stop (287 ms): Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:06.798Z] Stop (290 ms): Inspecting container
[2023-03-17T10:20:06.800Z] Start: Run in container: /bin/sh
[2023-03-17T10:20:06.833Z] Start: Run in container: uname -m
[2023-03-17T10:20:07.389Z] x86_64
[2023-03-17T10:20:07.389Z] 
[2023-03-17T10:20:07.389Z] Stop (556 ms): Run in container: uname -m
[2023-03-17T10:20:07.389Z] Start: Run in container: (cat /etc/os-release || cat /usr/lib/os-release) 2>/dev/null
[2023-03-17T10:20:07.411Z] NAME="Ubuntu"
VERSION="20.04.5 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.5 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
[2023-03-17T10:20:07.411Z] 
[2023-03-17T10:20:07.411Z] Stop (22 ms): Run in container: (cat /etc/os-release || cat /usr/lib/os-release) 2>/dev/null
[2023-03-17T10:20:07.411Z] Start: Run in container: cat /etc/passwd
[2023-03-17T10:20:07.414Z] Stop (3 ms): Run in container: cat /etc/passwd
[2023-03-17T10:20:07.415Z] Start: Run in container: test -f '/var/devcontainer/.patchEtcEnvironmentMarker'
[2023-03-17T10:20:07.424Z] 
[2023-03-17T10:20:07.424Z] 
[2023-03-17T10:20:07.424Z] Exit code 1
[2023-03-17T10:20:07.424Z] Stop (9 ms): Run in container: test -f '/var/devcontainer/.patchEtcEnvironmentMarker'
[2023-03-17T10:20:07.425Z] Start: Run in container: test ! -f '/var/devcontainer/.patchEtcEnvironmentMarker' && set -o noclobber && mkdir -p '/var/devcontainer' && { > '/var/devcontainer/.patchEtcEnvironmentMarker' ; } 2> /dev/null
[2023-03-17T10:20:07.457Z] 
[2023-03-17T10:20:07.457Z] 
[2023-03-17T10:20:07.457Z] Stop (32 ms): Run in container: test ! -f '/var/devcontainer/.patchEtcEnvironmentMarker' && set -o noclobber && mkdir -p '/var/devcontainer' && { > '/var/devcontainer/.patchEtcEnvironmentMarker' ; } 2> /dev/null
[2023-03-17T10:20:07.457Z] Start: Run in container: cat >> /etc/environment <<'etcEnvrionmentEOF'
[2023-03-17T10:20:07.472Z] 
[2023-03-17T10:20:07.472Z] 
[2023-03-17T10:20:07.472Z] Stop (15 ms): Run in container: cat >> /etc/environment <<'etcEnvrionmentEOF'
[2023-03-17T10:20:07.472Z] Start: Run in container: test -f '/var/devcontainer/.patchEtcProfileMarker'
[2023-03-17T10:20:07.477Z] 
[2023-03-17T10:20:07.478Z] 
[2023-03-17T10:20:07.478Z] Exit code 1
[2023-03-17T10:20:07.478Z] Stop (6 ms): Run in container: test -f '/var/devcontainer/.patchEtcProfileMarker'
[2023-03-17T10:20:07.478Z] Start: Run in container: test ! -f '/var/devcontainer/.patchEtcProfileMarker' && set -o noclobber && mkdir -p '/var/devcontainer' && { > '/var/devcontainer/.patchEtcProfileMarker' ; } 2> /dev/null
[2023-03-17T10:20:07.485Z] 
[2023-03-17T10:20:07.485Z] 
[2023-03-17T10:20:07.485Z] Stop (7 ms): Run in container: test ! -f '/var/devcontainer/.patchEtcProfileMarker' && set -o noclobber && mkdir -p '/var/devcontainer' && { > '/var/devcontainer/.patchEtcProfileMarker' ; } 2> /dev/null
[2023-03-17T10:20:07.486Z] Start: Run in container: sed -i -E 's/((^|\s)PATH=)([^\$]*)$/\1${PATH:-\3}/g' /etc/profile || true
[2023-03-17T10:20:07.510Z] 
[2023-03-17T10:20:07.510Z] 
[2023-03-17T10:20:07.510Z] Stop (24 ms): Run in container: sed -i -E 's/((^|\s)PATH=)([^\$]*)$/\1${PATH:-\3}/g' /etc/profile || true
[2023-03-17T10:20:07.510Z] Stop (524491 ms): Resolving Remote
[2023-03-17T10:20:07.550Z] Stop (525375 ms): Run: /usr/lib/electron19/electron /home/bnh/.vscode-oss/extensions/ms-vscode-remote.remote-containers-0.282.0/dist/spec-node/devContainersSpecCLI.js up --user-data-folder /home/bnh/.config/Code - OSS/User/globalStorage/ms-vscode-remote.remote-containers/data --container-session-data-folder /tmp/devcontainers-someValue.sessionId_1679047880328 --workspace-folder /home/bnh/code/plutus-pioneer-program --workspace-mount-consistency cached --id-label devcontainer.local_folder=/home/bnh/code/plutus-pioneer-program --id-label devcontainer.config_file=/home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --log-level debug --log-format json --config /home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --mount type=volume,source=vscode,target=/vscode,external=true --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root true
[2023-03-17T10:20:07.551Z] Start: Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:07.915Z] Stop (364 ms): Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:07.917Z] Start: Run: /usr/lib/electron19/electron /home/bnh/.vscode-oss/extensions/ms-vscode-remote.remote-containers-0.282.0/dist/spec-node/devContainersSpecCLI.js read-configuration --workspace-folder /home/bnh/code/plutus-pioneer-program --id-label devcontainer.local_folder=/home/bnh/code/plutus-pioneer-program --id-label devcontainer.config_file=/home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --container-id a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7 --log-level debug --log-format json --config /home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --mount-workspace-git-root true
[2023-03-17T10:20:08.916Z] (node:435216) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
[2023-03-17T10:20:08.917Z] (Use `electron --trace-deprecation ...` to show where the warning was created)
[2023-03-17T10:20:08.938Z] @devcontainers/cli 0.31.0. Node.js v16.14.2. linux 6.1.15-1-lts x64.
[2023-03-17T10:20:08.937Z] Start: Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:09.128Z] Stop (191 ms): Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:09.166Z] Stop (1249 ms): Run: /usr/lib/electron19/electron /home/bnh/.vscode-oss/extensions/ms-vscode-remote.remote-containers-0.282.0/dist/spec-node/devContainersSpecCLI.js read-configuration --workspace-folder /home/bnh/code/plutus-pioneer-program --id-label devcontainer.local_folder=/home/bnh/code/plutus-pioneer-program --id-label devcontainer.config_file=/home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --container-id a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7 --log-level debug --log-format json --config /home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --mount-workspace-git-root true
[2023-03-17T10:20:09.176Z] Start: Run: docker-compose version --short
[2023-03-17T10:20:09.326Z] Stop (150 ms): Run: docker-compose version --short
[2023-03-17T10:20:09.329Z] Start: Run: /usr/lib/electron19/electron /home/bnh/.vscode-oss/extensions/ms-vscode-remote.remote-containers-0.282.0/dist/spec-node/devContainersSpecCLI.js read-configuration --workspace-folder /home/bnh/code/plutus-pioneer-program --id-label devcontainer.local_folder=/home/bnh/code/plutus-pioneer-program --id-label devcontainer.config_file=/home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --container-id a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7 --log-level debug --log-format json --config /home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --include-merged-configuration --mount-workspace-git-root true
[2023-03-17T10:20:09.851Z] (node:435251) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
[2023-03-17T10:20:09.851Z] (Use `electron --trace-deprecation ...` to show where the warning was created)
[2023-03-17T10:20:09.861Z] @devcontainers/cli 0.31.0. Node.js v16.14.2. linux 6.1.15-1-lts x64.
[2023-03-17T10:20:09.860Z] Start: Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:10.031Z] Stop (171 ms): Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:10.093Z] Stop (764 ms): Run: /usr/lib/electron19/electron /home/bnh/.vscode-oss/extensions/ms-vscode-remote.remote-containers-0.282.0/dist/spec-node/devContainersSpecCLI.js read-configuration --workspace-folder /home/bnh/code/plutus-pioneer-program --id-label devcontainer.local_folder=/home/bnh/code/plutus-pioneer-program --id-label devcontainer.config_file=/home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --container-id a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7 --log-level debug --log-format json --config /home/bnh/code/plutus-pioneer-program/.devcontainer/devcontainer.json --include-merged-configuration --mount-workspace-git-root true
[2023-03-17T10:20:10.094Z] Start: Inspecting container
[2023-03-17T10:20:10.094Z] Start: Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:10.226Z] Stop (132 ms): Run: docker inspect --type container a2c409479d96efa3060163ed007509edca6840119ca80d2db20c61886e8c5bb7
[2023-03-17T10:20:10.227Z] Stop (133 ms): Inspecting container
[2023-03-17T10:20:10.229Z] Start: Run in container: /bin/sh
[2023-03-17T10:20:10.242Z] Start: Run in container: uname -m
[2023-03-17T10:20:10.491Z] x86_64
[2023-03-17T10:20:10.492Z] 
[2023-03-17T10:20:10.492Z] Stop (250 ms): Run in container: uname -m
[2023-03-17T10:20:10.492Z] Start: Run in container: (cat /etc/os-release || cat /usr/lib/os-release) 2>/dev/null
[2023-03-17T10:20:10.497Z] NAME="Ubuntu"
VERSION="20.04.5 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.5 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
[2023-03-17T10:20:10.497Z] 
[2023-03-17T10:20:10.497Z] Stop (5 ms): Run in container: (cat /etc/os-release || cat /usr/lib/os-release) 2>/dev/null
[2023-03-17T10:20:10.498Z] Start: Run in container: cat /etc/passwd
[2023-03-17T10:20:10.501Z] Stop (3 ms): Run in container: cat /etc/passwd
[2023-03-17T10:20:10.503Z] Start: Setup shutdown monitor
[2023-03-17T10:20:10.504Z] Forking shutdown monitor: /home/bnh/.vscode-oss/extensions/ms-vscode-remote.remote-containers-0.282.0/dist/shutdown/shutdownMonitorProcess /run/user/1000/vscode-remote-containers-3d136bfd-1b09-4d5d-8cb8-5c6006661c27.sock dockerCompose Debug /home/bnh/.config/Code - OSS/logs/20230306T193314/window10/exthost/ms-vscode-remote.remote-containers 1679047880143
[2023-03-17T10:20:10.540Z] Stop (37 ms): Setup shutdown monitor
[2023-03-17T10:20:10.541Z] Start: Run in container: test -d /root/.vscode-server-oss
[2023-03-17T10:20:10.544Z] 
[2023-03-17T10:20:10.544Z] 
[2023-03-17T10:20:10.546Z] Exit code 1
[2023-03-17T10:20:10.552Z] Stop (11 ms): Run in container: test -d /root/.vscode-server-oss
[2023-03-17T10:20:10.553Z] Start: Run in container: test -d /root/.vscode-remote
[2023-03-17T10:20:10.573Z] 
[2023-03-17T10:20:10.573Z] 
[2023-03-17T10:20:10.573Z] Exit code 1
[2023-03-17T10:20:10.573Z] Stop (20 ms): Run in container: test -d /root/.vscode-remote
[2023-03-17T10:20:10.574Z] Start: Run in container: test ! -f '/root/.vscode-server-oss/data/Machine/.writeMachineSettingsMarker' && set -o noclobber && mkdir -p '/root/.vscode-server-oss/data/Machine' && { > '/root/.vscode-server-oss/data/Machine/.writeMachineSettingsMarker' ; } 2> /dev/null
[2023-03-17T10:20:10.585Z] 
[2023-03-17T10:20:10.586Z] 
[2023-03-17T10:20:10.589Z] Stop (15 ms): Run in container: test ! -f '/root/.vscode-server-oss/data/Machine/.writeMachineSettingsMarker' && set -o noclobber && mkdir -p '/root/.vscode-server-oss/data/Machine' && { > '/root/.vscode-server-oss/data/Machine/.writeMachineSettingsMarker' ; } 2> /dev/null
[2023-03-17T10:20:10.589Z] Start: Run in container: mkdir -p '/root/.vscode-server-oss/data/Machine' && cat >'/root/.vscode-server-oss/data/Machine/settings.json' <<'settingsJSON'
[2023-03-17T10:20:10.596Z] 
[2023-03-17T10:20:10.596Z] 
[2023-03-17T10:20:10.596Z] Stop (7 ms): Run in container: mkdir -p '/root/.vscode-server-oss/data/Machine' && cat >'/root/.vscode-server-oss/data/Machine/settings.json' <<'settingsJSON'
[2023-03-17T10:20:10.597Z] Start: Run in container: test -d /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb
[2023-03-17T10:20:10.598Z] 
[2023-03-17T10:20:10.598Z] 
[2023-03-17T10:20:10.599Z] Exit code 1
[2023-03-17T10:20:10.599Z] Stop (2 ms): Run in container: test -d /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb
[2023-03-17T10:20:10.599Z] Start: Run in container: test -d /vscode/vscode-server-oss/bin/linux-x64/92da9481c0904c6adfe372c12da3b7748d74bdcb
[2023-03-17T10:20:10.607Z] 
[2023-03-17T10:20:10.607Z] 
[2023-03-17T10:20:10.607Z] Stop (8 ms): Run in container: test -d /vscode/vscode-server-oss/bin/linux-x64/92da9481c0904c6adfe372c12da3b7748d74bdcb
[2023-03-17T10:20:10.607Z] Start: Run in container: mkdir -p '/root/.vscode-server-oss/bin' && ln -snf '/vscode/vscode-server-oss/bin/linux-x64/92da9481c0904c6adfe372c12da3b7748d74bdcb' '/root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb'
[2023-03-17T10:20:10.623Z] 
[2023-03-17T10:20:10.624Z] 
[2023-03-17T10:20:10.624Z] Stop (17 ms): Run in container: mkdir -p '/root/.vscode-server-oss/bin' && ln -snf '/vscode/vscode-server-oss/bin/linux-x64/92da9481c0904c6adfe372c12da3b7748d74bdcb' '/root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb'
[2023-03-17T10:20:10.624Z] Start: Run in container: touch '/vscode/vscode-server-oss/bin/linux-x64/92da9481c0904c6adfe372c12da3b7748d74bdcb'
[2023-03-17T10:20:10.625Z] Start: Launching Dev Containers helper.
[2023-03-17T10:20:10.625Z] ssh-agent: SSH_AUTH_SOCK in container (/tmp/vscode-ssh-auth-d4757a82-6117-4c34-8abd-eeb17e4c0f17.sock) forwarded to local host (/tmp/ssh-XXXXXXWiUWTs/agent.1724).
[2023-03-17T10:20:10.632Z] 
[2023-03-17T10:20:10.632Z] 
[2023-03-17T10:20:10.632Z] Stop (8 ms): Run in container: touch '/vscode/vscode-server-oss/bin/linux-x64/92da9481c0904c6adfe372c12da3b7748d74bdcb'
[2023-03-17T10:20:10.632Z] Start: Run in container: test -e /tmp/.X11-unix/X0
[2023-03-17T10:20:10.646Z] 
[2023-03-17T10:20:10.646Z] 
[2023-03-17T10:20:10.646Z] Exit code 1
[2023-03-17T10:20:10.646Z] Stop (14 ms): Run in container: test -e /tmp/.X11-unix/X0
[2023-03-17T10:20:10.646Z] Start: Run in container: mkdir -p '/tmp/.X11-unix'
[2023-03-17T10:20:10.651Z] 
[2023-03-17T10:20:10.651Z] 
[2023-03-17T10:20:10.651Z] Stop (5 ms): Run in container: mkdir -p '/tmp/.X11-unix'
[2023-03-17T10:20:10.651Z] X11 forwarding: DISPLAY in container (:0) forwarded to local host (:0).
[2023-03-17T10:20:10.652Z] Start: Run: gpgconf --list-dir agent-extra-socket
[2023-03-17T10:20:10.671Z] Stop (19 ms): Run: gpgconf --list-dir agent-extra-socket
[2023-03-17T10:20:10.672Z] /run/user/1000/gnupg/S.gpg-agent.extra
[2023-03-17T10:20:10.672Z] 
[2023-03-17T10:20:10.673Z] Start: Run in container: gpgconf --list-dir agent-socket
[2023-03-17T10:20:10.684Z] /root/.gnupg/S.gpg-agent
[2023-03-17T10:20:10.684Z] 
[2023-03-17T10:20:10.684Z] Stop (11 ms): Run in container: gpgconf --list-dir agent-socket
[2023-03-17T10:20:10.685Z] Start: Run in container: gpgconf --list-dir homedir
[2023-03-17T10:20:10.688Z] /root/.gnupg
[2023-03-17T10:20:10.689Z] 
[2023-03-17T10:20:10.689Z] Stop (4 ms): Run in container: gpgconf --list-dir homedir
[2023-03-17T10:20:10.689Z] Start: Run in container: ls '/root/.gnupg/private-keys-v1.d' 2>/dev/null
[2023-03-17T10:20:10.713Z] 
[2023-03-17T10:20:10.713Z] 
[2023-03-17T10:20:10.713Z] Exit code 2
[2023-03-17T10:20:10.713Z] Stop (24 ms): Run in container: ls '/root/.gnupg/private-keys-v1.d' 2>/dev/null
[2023-03-17T10:20:10.714Z] Start: Run in container: mkdir -p -m 700 '/root/.gnupg'
[2023-03-17T10:20:10.717Z] 
[2023-03-17T10:20:10.717Z] 
[2023-03-17T10:20:10.717Z] Stop (3 ms): Run in container: mkdir -p -m 700 '/root/.gnupg'
[2023-03-17T10:20:10.717Z] Start: Run in container: command -v docker >/dev/null 2>&1
[2023-03-17T10:20:10.717Z] Start: Run: gpgconf --list-dir homedir
[2023-03-17T10:20:10.731Z] Stop (14 ms): Run: gpgconf --list-dir homedir
[2023-03-17T10:20:10.731Z] /home/bnh/.gnupg
[2023-03-17T10:20:10.731Z] 
[2023-03-17T10:20:10.737Z] 
[2023-03-17T10:20:10.737Z] 
[2023-03-17T10:20:10.738Z] Exit code 127
[2023-03-17T10:20:10.738Z] Stop (21 ms): Run in container: command -v docker >/dev/null 2>&1
[2023-03-17T10:20:10.738Z] Start: Run in container: gpgconf --list-dir homedir
[2023-03-17T10:20:10.742Z] Start: Run in container: /bin/sh
[2023-03-17T10:20:10.743Z] Stop (118 ms): Launching Dev Containers helper.
[2023-03-17T10:20:10.751Z] userEnvProbe: loginInteractiveShell (default)
[2023-03-17T10:20:10.753Z] Start: Run in container: echo ~
[2023-03-17T10:20:10.754Z] /root/.gnupg
[2023-03-17T10:20:10.754Z] 
[2023-03-17T10:20:10.754Z] Stop (16 ms): Run in container: gpgconf --list-dir homedir
[2023-03-17T10:20:10.755Z] Start: Run in container: test -f '/tmp/devcontainers-someValue.sessionId_1679047880328/env-loginInteractiveShell.json'
[2023-03-17T10:20:10.756Z] 
[2023-03-17T10:20:10.757Z] 
[2023-03-17T10:20:10.757Z] Exit code 1
[2023-03-17T10:20:10.757Z] Stop (2 ms): Run in container: test -f '/tmp/devcontainers-someValue.sessionId_1679047880328/env-loginInteractiveShell.json'
[2023-03-17T10:20:10.757Z] userEnvProbe: not found in cache
[2023-03-17T10:20:10.758Z] userEnvProbe shell: /bin/bash
[2023-03-17T10:20:10.760Z] Start: Run in container: # Test for /root/.ssh/known_hosts and ssh
[2023-03-17T10:20:10.770Z] 
[2023-03-17T10:20:10.771Z] 
[2023-03-17T10:20:10.771Z] Stop (11 ms): Run in container: # Test for /root/.ssh/known_hosts and ssh
[2023-03-17T10:20:10.772Z] Start: Run in container: # Test for /root/.gnupg/pubring.kbx and gpg
[2023-03-17T10:20:10.781Z] 
[2023-03-17T10:20:10.781Z] 
[2023-03-17T10:20:10.781Z] Stop (9 ms): Run in container: # Test for /root/.gnupg/pubring.kbx and gpg
[2023-03-17T10:20:10.782Z] Start: Run in container: # Copy /home/bnh/.ssh/known_hosts to /root/.ssh/known_hosts
[2023-03-17T10:20:10.816Z] 
[2023-03-17T10:20:10.816Z] 
[2023-03-17T10:20:10.816Z] Stop (34 ms): Run in container: # Copy /home/bnh/.ssh/known_hosts to /root/.ssh/known_hosts
[2023-03-17T10:20:10.816Z] Start: Run in container: # Copy /home/bnh/.gnupg/pubring.kbx to /root/.gnupg/pubring.kbx
[2023-03-17T10:20:10.847Z] 
[2023-03-17T10:20:10.847Z] 
[2023-03-17T10:20:10.847Z] Stop (31 ms): Run in container: # Copy /home/bnh/.gnupg/pubring.kbx to /root/.gnupg/pubring.kbx
[2023-03-17T10:20:10.847Z] Start: Run in container: command -v git >/dev/null 2>&1 && git config --system --replace-all credential.helper '!f() { /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/node /tmp/vscode-remote-containers-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js git-credential-helper $*; }; f' || true
[2023-03-17T10:20:10.987Z] 
[2023-03-17T10:20:10.988Z] 
[2023-03-17T10:20:10.988Z] Stop (141 ms): Run in container: command -v git >/dev/null 2>&1 && git config --system --replace-all credential.helper '!f() { /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/node /tmp/vscode-remote-containers-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js git-credential-helper $*; }; f' || true
[2023-03-17T10:20:10.988Z] Start: Run in container: # Test for /root/.gnupg/trustdb.gpg and gpg
[2023-03-17T10:20:11.030Z] 
[2023-03-17T10:20:11.030Z] 
[2023-03-17T10:20:11.030Z] Stop (42 ms): Run in container: # Test for /root/.gnupg/trustdb.gpg and gpg
[2023-03-17T10:20:11.030Z] Start: Run in container: for pid in `cd /proc && ls -d [0-9]*`; do { echo $pid ; readlink /proc/$pid/cwd ; readlink /proc/$pid/ns/mnt ; cat /proc/$pid/stat | tr "
[2023-03-17T10:20:11.124Z] /root
[2023-03-17T10:20:11.124Z] 
[2023-03-17T10:20:11.124Z] Stop (371 ms): Run in container: echo ~
[2023-03-17T10:20:11.124Z] Start: Run in container: cat <<'EOF-/tmp/vscode-remote-containers-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js' >/tmp/vscode-remote-containers-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js
[2023-03-17T10:20:11.125Z] Stop (95 ms): Run in container: for pid in `cd /proc && ls -d [0-9]*`; do { echo $pid ; readlink /proc/$pid/cwd ; readlink /proc/$pid/ns/mnt ; cat /proc/$pid/stat | tr "
[2023-03-17T10:20:11.125Z] Start: Run in container: # Copy /home/bnh/.gnupg/trustdb.gpg to /root/.gnupg/trustdb.gpg
[2023-03-17T10:20:11.137Z] 
[2023-03-17T10:20:11.137Z] 
[2023-03-17T10:20:11.137Z] Stop (13 ms): Run in container: cat <<'EOF-/tmp/vscode-remote-containers-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js' >/tmp/vscode-remote-containers-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js
[2023-03-17T10:20:11.137Z] Start: Run in container: cat <<'EOF-/tmp/vscode-remote-containers-server-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js' >/tmp/vscode-remote-containers-server-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js_1679048411137
[2023-03-17T10:20:11.144Z] 
[2023-03-17T10:20:11.144Z] 
[2023-03-17T10:20:11.144Z] Stop (19 ms): Run in container: # Copy /home/bnh/.gnupg/trustdb.gpg to /root/.gnupg/trustdb.gpg
[2023-03-17T10:20:11.144Z] Start: Run in container: cat '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb' 2>/dev/null || (umask 377 && echo '7ee35432-556b-4775-9343-385c88e389cb' >'/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb-6822d73f-cbe6-444f-bcdb-2279025268aa' && mv -n '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb-6822d73f-cbe6-444f-bcdb-2279025268aa' '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb' && rm -f '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb-6822d73f-cbe6-444f-bcdb-2279025268aa' && cat '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb')
[2023-03-17T10:20:11.149Z] Start: Run: gpg-connect-agent updatestartuptty /bye
[2023-03-17T10:20:11.194Z] 
[2023-03-17T10:20:11.194Z] 
[2023-03-17T10:20:11.195Z] Stop (58 ms): Run in container: cat <<'EOF-/tmp/vscode-remote-containers-server-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js' >/tmp/vscode-remote-containers-server-d4757a82-6117-4c34-8abd-eeb17e4c0f17.js_1679048411137
[2023-03-17T10:20:11.210Z] 7ee35432-556b-4775-9343-385c88e389cb
[2023-03-17T10:20:11.210Z] 
[2023-03-17T10:20:11.211Z] Stop (67 ms): Run in container: cat '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb' 2>/dev/null || (umask 377 && echo '7ee35432-556b-4775-9343-385c88e389cb' >'/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb-6822d73f-cbe6-444f-bcdb-2279025268aa' && mv -n '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb-6822d73f-cbe6-444f-bcdb-2279025268aa' '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb' && rm -f '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb-6822d73f-cbe6-444f-bcdb-2279025268aa' && cat '/root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb')
[2023-03-17T10:20:11.211Z] Start: Starting VS Code Server
[2023-03-17T10:20:11.212Z] Start: Preparing Extensions
[2023-03-17T10:20:11.212Z] Start: Run in container: test ! -f '/root/.vscode-server-oss/data/Machine/.installExtensionsMarker' && set -o noclobber && mkdir -p '/root/.vscode-server-oss/data/Machine' && { > '/root/.vscode-server-oss/data/Machine/.installExtensionsMarker' ; } 2> /dev/null
[2023-03-17T10:20:11.221Z] Stop (72 ms): Run: gpg-connect-agent updatestartuptty /bye
[2023-03-17T10:20:11.222Z] 
[2023-03-17T10:20:11.222Z] 
[2023-03-17T10:20:11.223Z] Stop (11 ms): Run in container: test ! -f '/root/.vscode-server-oss/data/Machine/.installExtensionsMarker' && set -o noclobber && mkdir -p '/root/.vscode-server-oss/data/Machine' && { > '/root/.vscode-server-oss/data/Machine/.installExtensionsMarker' ; } 2> /dev/null
[2023-03-17T10:20:11.229Z] Extensions cache, install extensions: haskell.haskell, vigoo.stylish-haskell
[2023-03-17T10:20:11.229Z] Start: Run in container: test -d /root/.vscode-server-oss/extensionsCache && ls /root/.vscode-server-oss/extensionsCache || true
[2023-03-17T10:20:11.245Z] 
[2023-03-17T10:20:11.245Z] 
[2023-03-17T10:20:11.246Z] Stop (17 ms): Run in container: test -d /root/.vscode-server-oss/extensionsCache && ls /root/.vscode-server-oss/extensionsCache || true
[2023-03-17T10:20:11.246Z] Start: Run in container: test -d /vscode/vscode-server-oss/extensionsCache && ls /vscode/vscode-server-oss/extensionsCache || true
[2023-03-17T10:20:11.249Z] 
[2023-03-17T10:20:11.249Z] 
[2023-03-17T10:20:11.251Z] Stop (5 ms): Run in container: test -d /vscode/vscode-server-oss/extensionsCache && ls /vscode/vscode-server-oss/extensionsCache || true
[2023-03-17T10:20:11.252Z] Extensions cache, link in container: None
[2023-03-17T10:20:11.254Z] Stop (42 ms): Preparing Extensions
[2023-03-17T10:20:11.254Z] Start: Run in container: /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss --log debug --force-disable-user-env --server-data-dir /root/.vscode-server-oss --use-host-proxy --telemetry-level off --accept-server-license-terms --host 127.0.0.1 --port 0 --connection-token-file /root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb --extensions-download-dir /root/.vscode-server-oss/extensionsCache --install-extension haskell.haskell --install-extension vigoo.stylish-haskell --start-server --disable-websocket-compression
[2023-03-17T10:20:11.499Z] OCI runtime exec failed: exec failed: unable to start container process: exec: "/root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss": stat /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss: no such file or directory: unknown
[2023-03-17T10:20:11.510Z] Stop (256 ms): Run in container: /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss --log debug --force-disable-user-env --server-data-dir /root/.vscode-server-oss --use-host-proxy --telemetry-level off --accept-server-license-terms --host 127.0.0.1 --port 0 --connection-token-file /root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb --extensions-download-dir /root/.vscode-server-oss/extensionsCache --install-extension haskell.haskell --install-extension vigoo.stylish-haskell --start-server --disable-websocket-compression
[2023-03-17T10:20:11.512Z] Command failed: /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss --log debug --force-disable-user-env --server-data-dir /root/.vscode-server-oss --use-host-proxy --telemetry-level off --accept-server-license-terms --host 127.0.0.1 --port 0 --connection-token-file /root/.vscode-server-oss/data/Machine/.connection-token-92da9481c0904c6adfe372c12da3b7748d74bdcb --extensions-download-dir /root/.vscode-server-oss/extensionsCache --install-extension haskell.haskell --install-extension vigoo.stylish-haskell --start-server --disable-websocket-compression
[2023-03-17T10:20:11.512Z] OCI runtime exec failed: exec failed: unable to start container process: exec: "/root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss": stat /root/.vscode-server-oss/bin/92da9481c0904c6adfe372c12da3b7748d74bdcb/bin/code-server-oss: no such file or directory: unknown
[2023-03-17T10:20:11.513Z] Exit code 126
[2023-03-17T10:20:12.899Z] userEnvProbe PATHs:
Probe:     '/root/.nvm/versions/node/v16.13.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.ghcup/bin:/root/.cabal/bin'
Container: '/root/.nvm/versions/node/v16.13.0/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.ghcup/bin'
[2023-03-17T10:20:12.900Z] Start: Run in container: mkdir -p '/tmp/devcontainers-someValue.sessionId_1679047880328' && cat > '/tmp/devcontainers-someValue.sessionId_1679047880328/env-loginInteractiveShell.json' << 'envJSON'
[2023-03-17T10:20:12.914Z] 
[2023-03-17T10:20:12.914Z] 
[2023-03-17T10:20:12.914Z] Stop (14 ms): Run in container: mkdir -p '/tmp/devcontainers-someValue.sessionId_1679047880328' && cat > '/tmp/devcontainers-someValue.sessionId_1679047880328/env-loginInteractiveShell.json' << 'envJSON'

any ideas what the cause could be?

Error when running "npm run start"

Would anyone be able to guide me with this? I got an error during running "npm run start"

[13 of 13] Compiling VestingSimulations ( usecases/VestingSimulations.hs, dist/build/plutus-playground-usecases/VestingSimulations.o, dist/build/plutus-playground-usecases/VestingSimulations.dyn_o )
/nix/store/c1gipyfc161lm0fqfg65k4ak7yl2i17i-binutils-2.34/bin/ranlib: dist/build/plutus-playground-usecases/libHSplutus-playground-server-0.1.0.0-DGClcKLJb0mAk0I4q8iNsS-plutus-playground-usecases-ghc8.10.4.20210212.a: No space left on device
ranlib' failed in phase Ranlib'. (Exit code: 1)
cannot build derivation '/nix/store/m0w88984kj58v5hadjv7zyi710d4a8hr-plutus-playground-server-exe-plutus-playground-server-0.1.0.0.drv': 1 dependencies couldn't be built

error: build of '/nix/store/m0w88984kj58v5hadjv7zyi710d4a8hr-plutus-playground-server-exe-plutus-playground-server-0.1.0.0.drv' failed
/nix/store/3q4ghczmlkdpb40piky56296iasqm1j0-plutus-playground-generate-purs/bin/plutus-playground-generate-purs: line 6: /bin/plutus-playground-server: No such file or directory
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR! [email protected] start: npm install && plutus-playground-generate-purs && npm run purs:compile && npm run webpack:server
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /home/hzren/.npm/_logs/2021-05-01T19_37_15_501Z-debug.log

Its says "No such file or directory" but when I cd into that folder I could see the file is there. I removed all permissions in the folders/ files as well.
I can confirm I am running it from the 'plutus-playground-client' server.

Possible workflow improvement

Hi there,

Since cabal.project has a source-repository-package entry for plutus app, cabal is going to do a full checkout of the plutus-apps repository during cabal update. Therefore it is not strictly needed to have a separate checkout of the plutus-app repo (which we need to sync separately).

In my tests, I am doing the following:

$ cd code/week01
$ cabal update
$ nix-shell dist-newstyle/src/plutus-ap_-*/shell.nix
[nix-shell:~/.../code/week01]$ cd dist-newstyle/src/plutus-ap_-*/plutus-playground-client && plutus-playground-server
[nix-shell:~/.../code/week01]$ cd dist-newstyle/src/plutus-ap_-*/plutus-playground-client && npm start

This has some advantages but also some complications (dist-newstyle/src/plutus-ap_-* might look scary to those unfamiliar with cabal and bash). I'll leave it up to you whether you think it's worth changing the instructions.

Thanks for the great content!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.