Skip to content
This repository has been archived by the owner on Sep 17, 2024. It is now read-only.

Commit

Permalink
Merge pull request #1 from projectNEWM/dev-tip
Browse files Browse the repository at this point in the history
Dev tip
  • Loading branch information
logicalmechanism authored May 12, 2022
2 parents 8a34b1d + 538a1a9 commit 3846518
Show file tree
Hide file tree
Showing 68 changed files with 2,893 additions and 0 deletions.
23 changes: 23 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"name": "Plutus Starter Project",
"image": "docker.io/inputoutput/plutus-starter-devcontainer:v1.0.14",

"remoteUser": "plutus",

"mounts": [
// This shares cabal's remote repository state with the host. We don't mount the whole of '.cabal', because
// 1. '.cabal/config' contains absolute paths that will only make sense on the host, and
// 2. '.cabal/store' is not necessarily portable to different version of cabal etc.
"source=${localEnv:HOME}/.cabal/packages,target=/home/plutus/.cabal/packages,type=bind,consistency=cached",
],

"settings": {
// Note: don't change from bash so it runs .bashrc
"terminal.integrated.shell.linux": "/bin/bash"
},

// IDs of extensions inside container
"extensions": [
"haskell.haskell"
],
}
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,8 @@ cabal.project.local
cabal.project.local~
.HTF/
.ghc.environment.*
result*
.envrc
.vim
scripts/wallet
status.json
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Project Newm Contracts

A user will lock a NFT into a contract and then mint the cooresponding fractions for that NFT.
305 changes: 305 additions & 0 deletions cabal.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,305 @@
index-state: 2022-02-22T20:47:03Z

packages:
locking-contract
minting-contract

-- You never, ever, want this.
write-ghc-environment-files: never

-- Always build tests and benchmarks.
tests: true
benchmarks: true

-- Plutus apps revision from 2022-04-06
source-repository-package
type: git
location: https://github.com/input-output-hk/plutus-apps.git
subdir:
doc
freer-extras
playground-common
plutus-chain-index
plutus-chain-index-core
plutus-contract
plutus-example
plutus-contract-certification
plutus-ledger
plutus-ledger-constraints
plutus-pab
plutus-pab-executables
plutus-playground-server
plutus-use-cases
quickcheck-dynamic
web-ghc
tag: v2022-04-06


-- The following sections are copied from the 'plutus-apps' repository cabal.project at the revision
-- given above.
-- This is necessary because the 'plutus-apps' libraries depend on a number of other libraries which are
-- not on Hackage, and so need to be pulled in as `source-repository-package`s themselves. Make sure to
-- re-update this section from the template when you do an upgrade.

-- We never, ever, want this.
write-ghc-environment-files: never

-- Always build tests and benchmarks.
tests: true
benchmarks: true

-- The only sensible test display option.
test-show-details: streaming

allow-newer:
size-based:template-haskell

constraints:
-- Because later versions of hedgehog introduce a change which break 'cardano-ledger':
-- Test/Cardano/Chain/Delegation/Model.hs:91:41: error:
-- • Could not deduce (TraversableB SignalSDELEG)
-- TODO: Try to remove on next `cardano-node` version upgrade.
hedgehog >= 1.0.2 && < 1.1

-- These packages appear in our dependency tree and are very slow to build.
-- Empirically, turning off optimization shaves off ~50% build time.
-- It also mildly improves recompilation avoidance.
-- For deve work we don't care about performance so much, so this is okay.
package cardano-ledger-alonzo
optimization: False
package ouroboros-consensus-shelley
optimization: False
package ouroboros-consensus-cardano
optimization: False
package cardano-api
optimization: False
package cardano-wallet
optimization: False
package cardano-wallet-core
optimization: False
package cardano-wallet-cli
optimization: False
package cardano-wallet-launcher
optimization: False
package cardano-wallet-core-integration
optimization: False

-- Direct dependency.
-- Are you thinking of updating this tag to some other commit?
-- Please ensure that the commit you are about to use is the latest one from
-- the *develop* branch of this repo:
-- * <https://github.com/input-output-hk/iohk-monitoring-framework/commits/develop>
-- (not master!)
--
-- In particular we rely on the code from this PR:
-- * <https://github.com/input-output-hk/iohk-monitoring-framework/pull/622>
-- being merged.
source-repository-package
type: git
location: https://github.com/input-output-hk/iohk-monitoring-framework
tag: 46f994e216a1f8b36fe4669b47b2a7011b0e153c
subdir:
contra-tracer
iohk-monitoring
tracer-transformers
plugins/backend-ekg
plugins/backend-aggregation
plugins/backend-monitoring
plugins/backend-trace-forwarder

-- Direct dependency.
source-repository-package
type: git
location: https://github.com/input-output-hk/plutus
tag: 4127e9cd6e889824d724c30eae55033cb50cbf3e
subdir:
plutus-core
plutus-ledger-api
plutus-tx
plutus-tx-plugin
prettyprinter-configurable
stubs/plutus-ghc-stub
word-array

-- Should follow plutus.
source-repository-package
type: git
location: https://github.com/Quid2/flat
tag: ee59880f47ab835dbd73bea0847dab7869fc20d8

-- Direct dependency.
source-repository-package
type: git
location: https://github.com/input-output-hk/servant-purescript
tag: 44e7cacf109f84984cd99cd3faf185d161826963

-- Direct dependency.
source-repository-package
type: git
location: https://github.com/input-output-hk/purescript-bridge
tag: 47a1f11825a0f9445e0f98792f79172efef66c00

-- Direct dependency.
-- Compared to others, cardano-wallet doesn't bump dependencies very often.
-- Making it a good place to start when bumping dependencies.
-- As, for example, bumping the node first highly risks breaking API with the wallet.
-- Unless early bug fixes are required, this is fine as the wallet tracks stable releases of the node.
-- And it is indeed nice for plutus-apps to track stable releases of the node too.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-wallet
tag: f6d4db733c4e47ee11683c343b440552f59beff7
subdir:
lib/cli
lib/core
lib/core-integration
lib/dbvar
lib/launcher
lib/numeric
lib/shelley
lib/strict-non-empty-containers
lib/test-utils
lib/text-class


-- Should follow cardano-wallet.
-- Currently tracking v1.34.1.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-node
tag: 73f9a746362695dc2cb63ba757fbcabb81733d23
subdir:
cardano-api
cardano-cli
cardano-git-rev
cardano-node
cardano-testnet
trace-dispatcher
trace-forward
trace-resources

source-repository-package
type: git
location: https://github.com/input-output-hk/ekg-forward
tag: 297cd9db5074339a2fb2e5ae7d0780debb670c63

source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-config
tag: e9de7a2cf70796f6ff26eac9f9540184ded0e4e6
--sha256: 1wm1c99r5zvz22pdl8nhkp13falvqmj8dgkm8fxskwa9ydqz01ld

-- Using a fork until our patches can be merged upstream
source-repository-package
type: git
location: https://github.com/input-output-hk/optparse-applicative
tag: 7497a29cb998721a9068d5725d49461f2bba0e7a
--sha256: 1gvsrg925vynwgqwplgjmp53vj953qyh3wbdf34pw21c8r47w35r

source-repository-package
type: git
location: https://github.com/input-output-hk/hedgehog-extras
tag: edf6945007177a638fbeb8802397f3a6f4e47c14
--sha256: 0wc7qzkc7j4ns2rz562h6qrx2f8xyq7yjcb7zidnj7f6j0pcd0i9

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-ledger
tag: 1a9ec4ae9e0b09d54e49b2a40c4ead37edadcce5
subdir:
eras/alonzo/impl
eras/byron/chain/executable-spec
eras/byron/crypto
eras/byron/crypto/test
eras/byron/ledger/executable-spec
eras/byron/ledger/impl
eras/byron/ledger/impl/test
eras/shelley/impl
eras/shelley/test-suite
eras/shelley-ma/impl
libs/cardano-data
libs/cardano-ledger-core
libs/cardano-ledger-pretty
libs/cardano-protocol-tpraos
libs/compact-map
libs/non-integral
libs/set-algebra
libs/small-steps
libs/small-steps-test

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/ouroboros-network
tag: 4fac197b6f0d2ff60dc3486c593b68dc00969fbf
subdir:
io-classes
io-sim
monoidal-synchronisation
network-mux
ntp-client
ouroboros-consensus
ouroboros-consensus-byron
ouroboros-consensus-cardano
ouroboros-consensus-protocol
ouroboros-consensus-shelley
ouroboros-network
ouroboros-network-framework
ouroboros-network-testing
strict-stm
typed-protocols
typed-protocols-cborg
typed-protocols-examples

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-base
tag: 41545ba3ac6b3095966316a99883d678b5ab8da8
subdir:
base-deriving-via
binary
binary/test
cardano-crypto-class
cardano-crypto-praos
measures
orphans-deriving-via
slotting
strict-containers

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-prelude
tag: bb4ed71ba8e587f672d06edf9d2e376f4b055555
subdir:
cardano-prelude
cardano-prelude-test

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-crypto
tag: f73079303f663e028288f9f4a9e08bcca39a923e

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/cardano-addresses
tag: 71006f9eb956b0004022e80aadd4ad50d837b621
subdir:
command-line
core

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/goblins
tag: cde90a2b27f79187ca8310b6549331e59595e7ba

-- Should follow cardano-wallet.
source-repository-package
type: git
location: https://github.com/input-output-hk/Win32-network
tag: 3825d3abf75f83f406c1f7161883c438dac7277d
35 changes: 35 additions & 0 deletions default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{ source-repo-override ? { } }:
########################################################################
# default.nix -- The top-level nix build file for plutus-starter.
#
# This file defines various attributes that are used for building and
# developing plutus-starter.
#
########################################################################

let
# Here a some of the various attributes for the variable 'packages':
#
# { pkgs
# plutus-starter: {
# haskell: {
# project # The Haskell project created by haskell-nix.project
# packages # All the packages defined by our project, including dependencies
# projectPackages # Just the packages in the project
# }
# hlint
# cabal-install
# stylish-haskell
# haskell-language-server
# }
# }
packages = import ./nix { inherit source-repo-override; };

inherit (packages) pkgs plutus-starter;
project = plutus-starter.haskell.project;
in
{
inherit pkgs plutus-starter;

inherit project;
}
8 changes: 8 additions & 0 deletions hie.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
cradle:
cabal:
- path: "./locking-contract/src"
component: "locking-contract:lib:locking-contract"
- path: "./locking-contract/pab"
component: "plutus-starter:exe:plutus-starter-pab"
- path: "./minting-contract/src"
component: "minting-contract:lib:minting-contract"
Loading

0 comments on commit 3846518

Please sign in to comment.