Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ml4ai/skema
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.8.0
Choose a base ref
...
head repository: ml4ai/skema
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing 1,027 changed files with 268,527 additions and 69,659 deletions.
73 changes: 0 additions & 73 deletions .drone.yml

This file was deleted.

6 changes: 6 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
## Summary of Changes


### Related issues

Resolves ???
62 changes: 62 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# see https://github.com/actions/labeler
documentation:
- any: ["docs/**"]
# all: ["!docs/changes.md"]

integration:
- any: ["skema/rest/**"]

CI:
- any: [".github/**", ".github/workflows/**"]

docker:
- any:
- "Dockerfile.skema-py"
- "Dockerfile.skema-py.dockerignore"
- "Dockerfile.skema-rs"
- "Dockerfile.skema-rs.dockerignore"

tests:
- any:
- "skema/gromet/execution_engine/tests/**"
- "skema/img2mml/tests/**"
- "skema/program_analysis/tests/**"
- "skema/program_analysis/comment_extractor/tests/**"
- "skema/program_analysis/tree_sitter_parsers/tests/**"
- "skema/program_analysis/CAST/matlab/tests/**"
- "skema/program_analysis/CAST/fortran/tests/**"
- "skema/program_analysis/CAST/python/tests/**"
- "skema/rest/tests/**"
- "skema/skema_py/tests/**"
- "skema/skema-rs/mathml/tests/**"
- "skema/skema-rs/skema/tests/**"
- "skema/text_reading/scala/src/test/**"

Code2FN:
- any: ["skema/gromet/**", "skema/program_analysis/**"]

Equations:
- any: ["skema/img2mml/**"]

lang/Fortran:
- any: ["skema/program_analysis/CAST/fortran/**"]

lang/MATLAB:
- any: ["skema/program_analysis/CAST/matlab/**"]

lang/Python:
- any:
- "skema/program_analysis/CAST/pythonAST/**"
- "skema/program_analysis/CAST/python/**"

lang/Rust:
- any: ["skema/skema-rs/**"]

MORAE:
- any: ["skema/skema-rs/**"]

ISA:
- any: ["skema/isa/**"]

Text Reading:
- any: ["skema/text_reading/**", "skema/model_assembly/**"]
18 changes: 18 additions & 0 deletions .github/workflows/add-labels-to-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Add labels to PR

on:
pull_request:
branches:
- main

jobs:
triage:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- id: label-the-PR
uses: actions/labeler@v4
with:
dot: true
36 changes: 36 additions & 0 deletions .github/workflows/changes-updated.yml.disabled
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Check changes log

on:
pull_request:
types: [opened]
branches:
- main

jobs:
changed_files:
runs-on: ubuntu-latest
name: Ensure changes.md has been updated
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

# Example 1
- name: Check changes.md
id: changed-files
uses: tj-actions/changed-files@v38
with:
files_yaml: |
doc:
- docs/changes.md

- name: Post reminder if changes have not been recorded
if: steps.changed-files-yaml.outputs.doc_any_changed == 'false'
uses: unsplash/comment-on-pr@v1.3.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
msg: "Don't forget to update docs/changes.md with a summary of your changes."
check_for_duplicate_msg: true
#delete_prev_regex_msg: "[0-9]" # OPTIONAL
duplicate_msg_pattern: "Don't forget to update docs/changes.md with a summary of your changes."
187 changes: 187 additions & 0 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
name: SKEMA docker

on:
push:
branches: [main]
tags:
- "**"
pull_request:
branches: [main]
release:
types: [published]

# builds and publishes docker images for the default branch.
# images are tagged with short commit hash, latest, and any tags.

jobs:
# Determine value for app version
app_version:
name: "Determine app version"
runs-on: ubuntu-latest
outputs:
app_version: ${{ steps.app_version.outputs.app_version }}
commit: ${{ steps.app_version.outputs.commit }}
steps:
- name: Set APP_VERSION output
id: app_version
run: |
echo "app_version=${{github.ref_name}}"
if [ -z "${app_version}" ]; then
app_version=${{github.sha}}
echo "app_version=${app_version}"
fi
echo "app_version=$app_version" >> "$GITHUB_OUTPUT"
echo "commit=${{github.sha}}" >> "$GITHUB_OUTPUT"
echo "app_version=$app_version"
echo "commit=${{github.sha}}"
python:
name: "docker image for python components"
needs: [app_version]
runs-on: ubuntu-latest
steps:
# Setup docker
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
# for multi-arch builds (ex. ARM 64)
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
# - name: Prepare buildx builder
# run: |
# docker buildx create --use --name "multiarch-builder" --platform linux/amd64,linux/arm64 --driver "docker-container"
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
# Checkout code
- name: Checkout code
uses: actions/checkout@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ secrets.LUM_ASKEM_DOCKERHUB_USERNAME }}
password: ${{ secrets.LUM_ASKEM_DOCKERHUB_TOKEN }}
- name: "Free disk space"
run: |
sudo apt-get update
sudo apt clean
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf "/usr/local/share/boost"
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
########################################
# lumai/askem-skema-py (img2mml, isa, etc)
########################################
- name: Tags for image
id: tags
# see https://github.com/docker/metadata-action
uses: docker/metadata-action@v4

with:
images: |
lumai/askem-skema-py
lumai/askem-skema-img2mml
tags: |
# latest
type=raw,value=latest
# version
type=semver,pattern={{version}}
# other tags
type=ref,event=tag
# short commit hash
type=sha
- name: Build and push image
# see https://github.com/docker/build-push-action
uses: docker/build-push-action@v5
with:
context: .
file: "Dockerfile.skema-py"
platforms: linux/amd64
#platforms: linux/amd64,linux/arm64
no-cache: true
pull: true
push: ${{ github.event_name != 'pull_request' }}
# references `tags` step in steps for current job
tags: ${{ steps.tags.outputs.tags }}
build-args: |
#APP_VERSION=${{needs.app_version.outputs.app_version}}
APP_VERSION=${{needs.app_version.outputs.commit}}
rust:
name: "docker image for rust components"
needs: [app_version]
runs-on: ubuntu-latest
steps:
# Setup docker
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
# for multi-arch builds (ex. ARM 64)
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
# - name: Prepare buildx builder
# run: |
# docker buildx create --use --name "multiarch-builder" --platform linux/amd64,linux/arm64 --driver "docker-container"
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
# Checkout code
- name: Checkout code
uses: actions/checkout@v3
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.LUM_ASKEM_DOCKERHUB_USERNAME }}
password: ${{ secrets.LUM_ASKEM_DOCKERHUB_TOKEN }}
- name: "Free disk space"
run: |
sudo apt clean
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf "/usr/local/share/boost"
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
########################################
# lumai/askem-skema-rs
########################################
- name: Tags for image
id: tags
# see https://github.com/docker/metadata-action
uses: docker/metadata-action@v4
with:
images: lumai/askem-skema-rs
tags: |
# latest
type=raw,value=latest
# version
type=semver,pattern={{version}}
# other tags
type=ref,event=tag
# short commit hash
type=sha
- name: Build and push image
# see https://github.com/docker/build-push-action
uses: docker/build-push-action@v5
with:
context: .
file: "Dockerfile.skema-rs"
platforms: linux/amd64
#platforms: linux/amd64,linux/arm64
no-cache: true
pull: true
push: ${{ github.event_name != 'pull_request' }}
# references `tags` step in steps for current job
tags: ${{ steps.tags.outputs.tags }}
build-args: |
#APP_VERSION=${{needs.app_version.outputs.app_version}}
APP_VERSION=${{needs.app_version.outputs.commit}}
Loading