Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/input-output-hk/plutus in…
Browse files Browse the repository at this point in the history
…to effectfully/test/make-tests-take-reasonable-time
  • Loading branch information
effectfully committed Jul 19, 2024
2 parents cb656ef + 0da4c4b commit 0eb3794
Show file tree
Hide file tree
Showing 737 changed files with 26,642 additions and 36,969 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ body:
attributes:
value: |
Thanks for taking the time to fill out this bug report.
Please check the existing issues, [Plutus Docs](https://intersectmbo.github.io/plutus/docs) and [Cardano Stack Exchange](https://cardano.stackexchange.com/) before raising.
Please check the existing issues, [Plutus Docs](https://plutus.cardano.intersectmbo.org/docs) and [Cardano Stack Exchange](https://cardano.stackexchange.com/) before raising.
- type: textarea
id: summary
attributes:
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ body:
attributes:
value: |
Thanks for taking the time to fill out this feature request.
Please check the existing issues and [Plutus Docs](https://intersectmbo.github.io/plutus/docs) before raising.
Please check the existing issues and [Plutus Docs](https://plutus.cardano.intersectmbo.org/docs) before raising.
- type: textarea
id: description
attributes:
Expand Down
27 changes: 9 additions & 18 deletions .github/workflows/broken-links.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,12 @@
# This job checks for broken links in the various files.
# This job checks for broken links in various files in the repo.

name: "🔗 Broken Links"

on:
schedule:
- cron: 0 0 * * * # Daily at midnight
workflow_dispatch: # Or manually dispatch the job
pull_request:
paths:
- .github/ISSUE_TEMPLATE/bug_report.yml
- .github/ISSUE_TEMPLATE/feature_request.yml
- .github/PULL_REQUEST_TEMPLATE.md
- .github/SECURITY.md
- CODE_OF_CONDUCT.md
- CONTRIBUTING.adoc
- LICENSE
- NOTICE
- README.adoc
- RELEASE.adoc
- STYLEGUIDE.adoc
push:
branches:
master

jobs:
check:
Expand All @@ -30,4 +18,7 @@ jobs:

- name: Run Linkchecker
run: |
nix develop --no-warn-dirty --accept-flake-config --command ./scripts/check-broken-links.sh
nix develop --no-warn-dirty --accept-flake-config --command ./scripts/check-broken-links.sh

2 changes: 1 addition & 1 deletion .github/workflows/cardano-constitution-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
jobs:
run:
name: Run
runs-on: [self-hosted, plutus-benchmark]
runs-on: [self-hosted, plutus-shared]
steps:
- name: Checkout
uses: actions/checkout@main
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/changelog-label.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ jobs:

- name: Enforce Label
uses: actions/github-script@main
# Don't require changelogs for draft PRs
if: github.event.pull_request.draft == false
with:
script: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/cost-model-benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
run:
name: Run
runs-on: [self-hosted, plutus-benchmark]
timeout-minutes: 14400
timeout-minutes: 1800 # (30 hours) These benchmarks take over 10 hours to run.
steps:
- name: Checkout
uses: actions/checkout@main
Expand Down
10 changes: 6 additions & 4 deletions .github/workflows/docusaurus-site.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
# This workflow builds and publishes the Docusaurus site to:
# https://intersectmbo.github.io/plutus/docs
# https://plutus.cardano.intersectmbo.org/docs

name: "🦕 Docusaurus Site"

on:
push:
branches:
- master
workflow_dispatch:

jobs:
Expand All @@ -23,9 +26,8 @@ jobs:
run: nix develop --no-warn-dirty --accept-flake-config --command bash -c 'yarn && yarn build'

- name: Deploy Site
uses: JamesIves/[email protected].1
uses: JamesIves/[email protected].3
with:
folder: doc/docusaurus/build
target-folder: docs
single-commit: true

single-commit: true
27 changes: 19 additions & 8 deletions .github/workflows/haddock-site.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
# This workflow builds and publishes the Haddock site to:
# https://intersectmbo.github.io/plutus/haddock/$version
# https://plutus.cardano.intersectmbo.org/haddock/$version
# And optionally to:
# https://intersectmbo.github.io/plutus/haddock/latest
# https://plutus.cardano.intersectmbo.org/haddock/latest
# On push to master, this workflows publishes to:
# https://plutus.cardano.intersectmbo.org/haddock/master

name: "📜 Haddock Site"

on:
push:
branches:
- master

workflow_dispatch:
inputs:
ref:
Expand All @@ -19,14 +25,14 @@ on:
destination:
description: |
The $destination folder, e.g. when "1.29.0.0" the haddock will be deploy to:
https://intersectmbo.github.io/plutus/haddock/1.29.0.0
https://plutus.cardano.intersectmbo.org/haddock/1.29.0.0
required: true
type: string

latest:
description: |
If true, then the haddock site will also be deploy to:
https://intersectmbo.github.io/plutus/haddock/latest.
https://plutus.cardano.intersectmbo.org/haddock/latest.
You want to leave this to true unless you are deploying old versions or back-porting.
type: boolean
required: true
Expand All @@ -44,22 +50,27 @@ jobs:
- name: Checkout
uses: actions/checkout@main
with:
ref: ${{ inputs.ref }}
ref: ${{ inputs.ref || github.ref_name }}

- name: Checkout Haddock Script
run: |
git fetch origin master
git checkout origin/master ./scripts/combined-haddock.sh
- name: Build Site
run: |
nix develop --no-warn-dirty --accept-flake-config --command ./scripts/combined-haddock.sh _haddock all
- name: Deploy Site
uses: JamesIves/[email protected].1
uses: JamesIves/[email protected].3
with:
folder: _haddock
target-folder: haddock/${{ inputs.destination }}
target-folder: haddock/${{ inputs.destination || github.ref_name }}
single-commit: true

- name: Deploy Site (latest)
if: ${{ inputs.latest == true }}
uses: JamesIves/[email protected].1
uses: JamesIves/[email protected].3
with:
folder: _haddock
target-folder: haddock/latest
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/longitudinal-benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
# It will collect and aggreate the benchmark output, format it and feed it to the
# github-action-benchmark action.
#
# The benchmark charts are live at https://intersectmbo.github.io/plutus/dev/bench
# The benchmark data is available at https://intersectmbo.github.io/plutus/dev/bench/data.js
# The benchmark charts are live at https://plutus.cardano.intersectmbo.org/dev/bench
# The benchmark data is available at https://plutus.cardano.intersectmbo.org/dev/bench/data.js
#
# This is a performance regression check that is run on every push master.

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/manual-benchmark.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This workflows checks for comments in PRs. If the comment has this format:
# /benchmark NAME
# Then this action will run the benchmark with the given NAME, first agains
# Then this action will run the benchmark with the given NAME, first against
# the current branch and then comparing the results against the master branch.

name: "🚀 Manual Benchmark"
Expand Down
48 changes: 7 additions & 41 deletions .github/workflows/metatheory-site.yml
Original file line number Diff line number Diff line change
@@ -1,36 +1,13 @@
# This workflow builds and publishes the metatheory site to:
# https://intersectmbo.github.io/plutus/metatheory/$version
# And optionally to:
# https://intersectmbo.github.io/plutus/metatheory/latest
# https://plutus.cardano.intersectmbo.org/metatheory

name: "🔮 Metatheory Site"

on:
workflow_dispatch:
inputs:
ref:
description: |
The $ref to build off of, e.g. "1.29.0.0", "master", or any other valid git ref.
When making a release, this is usually the version tag, e.g. "1.29.0.0", and will be
equal to the $destination input below. When back-porting this could be a commit sha instead.
required: true
type: string

destination:
description: |
The $destination folder, e.g. when "1.29.0.0" the metatheory will be deploy to:
https://intersectmbo.github.io/plutus/metatheory/1.29.0.0
required: true
type: string

latest:
description: |
If true, then the metatheory site will also be deploy to:
https://intersectmbo.github.io/plutus/metatheory/latest.
You want to leave this to true unless you are deploying old versions or back-porting.
type: boolean
required: true
default: true
push:
branches:
- master

jobs:
deploy:
Expand All @@ -43,8 +20,6 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@main
with:
ref: ${{ inputs.ref }}

- name: Build Site
run: |
Expand All @@ -53,17 +28,8 @@ jobs:
cp -RL result/* _site
- name: Deploy Site
uses: JamesIves/[email protected].1
uses: JamesIves/[email protected].3
with:
folder: _site
target-folder: metatheory/${{ inputs.destination }}
single-commit: true

- name: Deploy Latest
if: ${{ inputs.latest == true }}
uses: JamesIves/[email protected]
with:
folder: _site
target-folder: metatheory/latest
single-commit: true

target-folder: metatheory
single-commit: true
4 changes: 2 additions & 2 deletions .github/workflows/nightly-testsuite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
schedule:
- cron: 0 0 * * * # Daily at midnight

workflow_dispatch: # Or manually dispatch the job
workflow_dispatch:
inputs:
hedgehog-tests:
description: Numer of tests to run (--hedgehog-tests XXXXX)
Expand All @@ -19,7 +19,7 @@ env:
jobs:
run:
name: Run
runs-on: [self-hosted, plutus-benchmark]
runs-on: [self-hosted, plutus-shared]
steps:
- name: Checkout
uses: actions/checkout@main
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/papers-and-specs.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# This job builds various papers and deploys them to:
# https://intersectmbo.github.io/plutus/resources
# https://plutus.cardano.intersectmbo.org/resources

name: "📝 Papers & Specs"

Expand Down Expand Up @@ -40,7 +40,7 @@ jobs:
done
- name: Publish Papers
uses: JamesIves/[email protected].1
uses: JamesIves/[email protected].3
with:
folder: _resources
target-folder: resources
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# This workflow is triggered whenever any of the workflows listed in on.workflow_run.workflows
# has been cancelled or has failed, and will send a message to the specified Slack channel ids.
# has been cancelled or has failed, and will send a message to the plutus-ci channel.

name: "📮 Slack Message Broker"

Expand All @@ -19,7 +19,6 @@ on:
jobs:
Send:
runs-on: [ubuntu-latest]
# if: contains(fromJson('["success", "failure", "null", "skipped", "cancelled", "action_required", "neutral", "timed_out"]'), github.event.workflow_run.conclusion)
steps:
- name: Prepare Slack Message
uses: actions/github-script@main
Expand All @@ -29,18 +28,33 @@ jobs:
const name = "${{ github.event.workflow_run.name }}";
const url = "${{ github.event.workflow_run.html_url }}";
const status = "${{ github.event.workflow_run.status }}";
const action = "${{ github.event.action }}";
const conclusion = "${{ github.event.workflow_run.conclusion }}";
const message = `Workflow '${name}' \`${action}\`: \`${status}\`, \`${conclusion}\`, <${url}|View Logs>`;
console.log(message)
const failure_conclusions = [ "failure", "null", "cancelled", "action_required", "neutral", "timed_out" ];
let message = "";
if (conclusion == "") {
message = `${name} \`${status}\` ⏳ <${url}|View Logs>`;
}
else if (conclusion == "success") {
message = `${name} \`${conclusion}\` ✅ <${url}|View Logs>`;
}
else if (conclusion == "skipped") {
message = `${name} \`${conclusion}\` ⏩ <${url}|View Logs>`;
}
else if (failure_conclusions.includes(conclusion)) {
message = `${name} \`${conclusion}\` ❌ <${url}|View Logs> @channel`;
}
else {
message = `${name} \`${conclusion}\` ⁉️ <${url}|View Logs> Unknown Conclusion @channel`;
}
console.log(message);
core.setOutput("message", message);
- name: Notify Slack
uses: slackapi/[email protected]
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
with:
channel-id: C07A1GSNZEE
channel-id: C07A1GSNZEE # plutus-ci
payload: |
{
"text": "${{ steps.prepare-slack-message.outputs.message }}",
Expand Down
22 changes: 11 additions & 11 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,11 @@ After setting it up you should just be able to depend on the `plutus` packages a

=== User documentation

The main documentation is located https://intersectmbo.github.io/plutus/docs/[here].
The main documentation is located https://plutus.cardano.intersectmbo.org/docs/[here].

The haddock documentation is located https://intersectmbo.github.io/plutus/haddock/latest[here].
The haddock documentation is located https://plutus.cardano.intersectmbo.org/haddock/latest[here].

The documentation for the metatheory can be found https://intersectmbo.github.io/plutus/metatheory/latest[here].
The documentation for the metatheory can be found https://plutus.cardano.intersectmbo.org/metatheory[here].

=== Talks

Expand All @@ -55,17 +55,17 @@ The documentation for the metatheory can be found https://intersectmbo.github.io

=== Specifications and design

- https://intersectmbo.github.io/plutus/resources/plutus-report.pdf[Plutus Technical Report (draft)]: a technical report and design document for the project.
- https://intersectmbo.github.io/plutus/resources/plutus-core-spec.pdf[Plutus Core Specification]: the formal specification of the core language.
- https://intersectmbo.github.io/plutus/resources/extended-utxo-spec.pdf[Extended UTXO Model]: a design document for the core changes to the Cardano ledger.
- https://plutus.cardano.intersectmbo.org/resources/plutus-report.pdf[Plutus Technical Report (draft)]: a technical report and design document for the project.
- https://plutus.cardano.intersectmbo.org/resources/plutus-core-spec.pdf[Plutus Core Specification]: the formal specification of the core language.
- https://plutus.cardano.intersectmbo.org/resources/extended-utxo-spec.pdf[Extended UTXO Model]: a design document for the core changes to the Cardano ledger.

=== Academic papers

- https://intersectmbo.github.io/plutus/resources/unraveling-recursion-paper.pdf[Unraveling Recursion]: a description of some of the compilation strategies used in Plutus IR (https://doi.org/10.1007/978-3-030-33636-3_15[published version]).
- https://intersectmbo.github.io/plutus/resources/system-f-in-agda-paper.pdf[System F in Agda]: a formal model of System F in Agda (https://doi.org/10.1007/978-3-030-33636-3_10[published version]).
- https://intersectmbo.github.io/plutus/resources/eutxo-paper.pdf[The Extended UTXO Model]: a full presentation of the EUTXO ledger extension (https://doi.org/10.1007/978-3-030-54455-3_37[published version]).
- https://intersectmbo.github.io/plutus/resources/utxoma-paper.pdf[UTXOma: UTXO with Multi-Asset Support]: a full presentation of the multi-asset ledger extension (https://doi.org/10.1007/978-3-030-61467-6_8[published version]).
- https://intersectmbo.github.io/plutus/resources/eutxoma-paper.pdf[Native Custom Tokens in the Extended UTXO Model]: a discussion of the interaction of the multi-asset support with EUTXO (https://doi.org/10.1007/978-3-030-61467-6_7[published version]).
- https://plutus.cardano.intersectmbo.org/resources/unraveling-recursion-paper.pdf[Unraveling Recursion]: a description of some of the compilation strategies used in Plutus IR (https://doi.org/10.1007/978-3-030-33636-3_15[published version]).
- https://plutus.cardano.intersectmbo.org/resources/system-f-in-agda-paper.pdf[System F in Agda]: a formal model of System F in Agda (https://doi.org/10.1007/978-3-030-33636-3_10[published version]).
- https://plutus.cardano.intersectmbo.org/resources/eutxo-paper.pdf[The Extended UTXO Model]: a full presentation of the EUTXO ledger extension (https://doi.org/10.1007/978-3-030-54455-3_37[published version]).
- https://plutus.cardano.intersectmbo.org/resources/utxoma-paper.pdf[UTXOma: UTXO with Multi-Asset Support]: a full presentation of the multi-asset ledger extension (https://doi.org/10.1007/978-3-030-61467-6_8[published version]).
- https://plutus.cardano.intersectmbo.org/resources/eutxoma-paper.pdf[Native Custom Tokens in the Extended UTXO Model]: a discussion of the interaction of the multi-asset support with EUTXO (https://doi.org/10.1007/978-3-030-61467-6_7[published version]).
- https://arxiv.org/abs/2201.04919[Translation Certification for Smart Contracts]: a certifier of Plutus IR compiler passes written in Coq.

== Licensing
Expand Down
Loading

0 comments on commit 0eb3794

Please sign in to comment.