Skip to content

Commit

Permalink
New version: 0.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
machitgarha committed Apr 1, 2023
2 parents 048584a + ce31db9 commit 973f3f3
Show file tree
Hide file tree
Showing 25 changed files with 1,327 additions and 454 deletions.
153 changes: 77 additions & 76 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,92 +1,93 @@
name: Build release files

on:
push:
tags: "*"
release:
types: [created]
push:
tags: "*"
release:
types: [created]

jobs:
make-phar:
name: Make Phar file using Box
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
build-phar:
name: Build Phar file using Box
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Setup PHP and Phive
uses: shivammathur/setup-php@v2
with:
php-version: "8.0"
tools: phive
- name: Setup PHP and Phive
uses: shivammathur/setup-php@v2
with:
php-version: "8.0"
ini-values: phar.readonly=0
tools: phive

- name: Install Composer dependencies
uses: ramsey/composer-install@v2
with:
composer-options: "--no-dev --optimize-autoloader"
- name: Install Composer dependencies
uses: ramsey/composer-install@v2
with:
composer-options: "--no-dev --optimize-autoloader"

- name: Install Box using Phive
run: phive install humbug/box --force-accept-unsigned
- name: Install Box using Phive
run: phive --no-progress install humbug/box@3.16.0 --trust-gpg-keys 41539BBD4020945DB378F98B2DF45277AEF09A2F

- name: Build Phar
run: ./tools/box compile
- name: Build Phar
run: ./tools/box compile

- name: Upload release files
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build/parvaj.phar
asset_name: parvaj.phar
tag: ${{ github.ref }}
prerelease: true
- name: Upload release files
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build/parvaj.phar
asset_name: parvaj.phar
tag: ${{ github.ref }}
prerelease: true

make-appimage:
env:
phpVersion: "8.0.17"
appimagetoolDownloadUrl: https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
name: Make AppImage file
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
path: parvaj
build-appimage:
name: Build AppImage file
env:
phpVersion: "8.0.28"
appimagetoolDownloadUrl: https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
path: parvaj

- name: Install Composer dependencies
uses: ramsey/composer-install@v2
with:
working-directory: parvaj
composer-options: "--no-dev --optimize-autoloader"
- name: Install Composer dependencies
uses: ramsey/composer-install@v2
with:
working-directory: parvaj
composer-options: "--no-dev --optimize-autoloader"

- name: Clone PHP source
uses: actions/checkout@v3
with:
repository: php/php-src
path: php
ref: php-${{ env.phpVersion }}
fetch-depth: 2
- name: Clone PHP source
uses: actions/checkout@v3
with:
repository: php/php-src
path: php
ref: php-${{ env.phpVersion }}
fetch-depth: 2

- name: Get appimagetool
run: |
curl -L -o appimagetool.AppImage "$appimagetoolDownloadUrl"
chmod +x appimagetool.AppImage
- name: Get appimagetool
run: |
curl -L -o appimagetool.AppImage "$appimagetoolDownloadUrl"
chmod +x appimagetool.AppImage
- name: Build with Docker
run: |
docker build -f ./parvaj/build-aux/appimage/Dockerfile . \
-t appimage-build
docker run \
-e parvajRootPath="./parvaj" \
-e phpSourcePath="./php" \
-e appimagetool="./appimagetool.AppImage" \
--name appimage-build \
appimage-build
docker cp appimage-build:/root/parvaj/build/appimage .
docker rm appimage-build
- name: Build with Docker
run: |
docker build -f ./parvaj/build-aux/appimage/Dockerfile . \
-t appimage-build
docker run \
-e parvajRootPath="./parvaj" \
-e phpSourcePath="./php" \
-e appimagetool="./appimagetool.AppImage" \
--name appimage-build \
appimage-build
docker cp appimage-build:/root/parvaj/build/appimage .
docker rm appimage-build
- name: Upload release files
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: appimage/*
file_glob: true
tag: ${{ github.ref }}
prerelease: true
- name: Upload release files
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: appimage/*
file_glob: true
tag: ${{ github.ref }}
prerelease: true
86 changes: 43 additions & 43 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,48 +1,48 @@
name: CI

on:
push:
tags: "*"
branches:
- master
- develop
pull_request:
branches:
- develop
push:
tags: "*"
branches:
- master
- develop
pull_request:
branches:
- develop

jobs:
static-analysis:
name: Phan Static Analysis
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Setup PHP with Phan
uses: shivammathur/setup-php@v2
with:
php-version: "8.0"
tools: phan

- name: Install Composer dependencies
uses: ramsey/composer-install@v2

- name: Run Phan
run: phan

check-version:
name: Ensures the app version is in sync with Git version
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: "8.0"

- name: Install Composer dependencies
uses: ramsey/composer-install@v2

- run: ./bin/check-version
static-analysis:
name: Phan Static Analysis
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Setup PHP with Phan
uses: shivammathur/setup-php@v2
with:
php-version: "8.0"
tools: phan

- name: Install Composer dependencies
uses: ramsey/composer-install@v2

- name: Run Phan
run: phan

check-version:
name: Ensures the app version is in sync with Git version
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: "8.0"

- name: Install Composer dependencies
uses: ramsey/composer-install@v2

- run: ./bin/check-version
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![Version](https://img.shields.io/github/v/release/machitgarha/parvaj?color=darkgreen&label=Version&style=flat-square)](https://github.com/machitgarha/parvaj/releases) [![Available As AppImage](https://img.shields.io/badge/Available%20As-AppImage-lawngreen?style=flat-square)](https://github.com/machitgarha/parvaj/releases/latest/download/parvaj-x86_64.AppImage) [![Available As Phar](https://img.shields.io/badge/Available%20As-Phar-lawngreen?style=flat-square)](https://github.com/machitgarha/parvaj/releases/latest/download/parvaj.phar)

Easy and semi-intelligent VHDL simulation tool, integrating GHDL and GTKWave.
Easy and fast (both in the sense of performance and development speed) VHDL simulation tool, integrating GHDL and GTKWave.

## Features

Expand Down
7 changes: 6 additions & 1 deletion build-aux/appimage/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -174,9 +174,14 @@ makeAppImage() {
mkdir -p "$resultingAppImageDir"
cd "$resultingAppImageDir"

output="parvaj-$version$arch.AppImage"

ARCH="$arch" "$appimagetool" \
-u "gh-releases-zsync|machitgarha|parvaj|latest|parvaj-*$arch.AppImage.zsync" \
"$appDir" "parvaj-$version$arch.AppImage"
"$appDir" "$output"

# Thanks to https://github.com/AppImage/AppImageKit/issues/828#issuecomment-731895751
sed "0,/AI\x02/{s|AI\x02|\x00\x00\x00|}" -i "$output"

cd -
}
Expand Down
20 changes: 14 additions & 6 deletions composer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "machitgarha/parvaj",
"description": "Easy and semi-intelligent VHDL simulation tool, integrating GHDL and GTKWave",
"description": "Easy and fast VHDL simulation tool, integrating GHDL and GTKWave",
"type": "project",
"homepage": "https://github.com/machitgarha/parvaj",
"license": "AGPL-3.0",
Expand All @@ -9,20 +9,28 @@
"email": "[email protected]",
"role": "Maintainer"
}],
"config": {
"platform": {
"php": "8.0.28"
}
},
"require": {
"php": "^8.0",
"symfony/process": "^6.0",
"symfony/console": "^6.0",
"symfony/cache": "^6.0",
"symfony/process": "^5.4",
"symfony/console": "^5.4",
"symfony/cache": "^5.4",
"symfony/filesystem": "^5.4",
"machitgarha/phirs": "^0.1.0"
"machitgarha/phirs": "^0.1.0",
"hassankhan/config": "^3.1",
"machitgarha/pusheh": "^0.3.0"
},
"autoload": {
"psr-4": {
"MAChitgarha\\Parvaj\\": "src"
}
},
"require-dev": {
"phan/phan": "^5.3"
"php": "^8.0",
"phan/phan": "^5.4"
}
}
Loading

0 comments on commit 973f3f3

Please sign in to comment.