diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..798ae0c --- /dev/null +++ b/.gitattributes @@ -0,0 +1,9 @@ +# Bash needs lf even on windows/cygwin +*.st eol=lf +*.sh eol=lf + +# st files are always text, even if they contain invalid encoded chars +*.st text diff + +# GitHub is unable to properly detect Smalltalk code, so help it a bit +*.st linguist-language=Smalltalk diff --git a/.github/workflows/Pharo11CI.yml b/.github/workflows/Pharo11CI.yml new file mode 100644 index 0000000..fca7fc0 --- /dev/null +++ b/.github/workflows/Pharo11CI.yml @@ -0,0 +1,29 @@ +name: 'Pharo 11 CI' + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + +on: + push: + branches: + - 'main' + pull_request: + types: [assigned, opened, synchronize, reopened] + +jobs: + build: + strategy: + matrix: + os: [ ubuntu-latest, macos-latest, windows-latest ] + smalltalk: [ Pharo64-11 ] + runs-on: ${{ matrix.os }} + name: ${{ matrix.smalltalk }} on ${{ matrix.os }} + steps: + - uses: actions/checkout@v3 + - uses: hpi-swa/setup-smalltalkCI@v1 + with: + smalltalk-image: ${{ matrix.smalltalk }} + - name: Load in New Image and Run Tests + run: smalltalkci -s ${{ matrix.smalltalk }} ${{ matrix.ston }} + shell: bash + timeout-minutes: 30 diff --git a/.github/workflows/Pharo12CI.yml b/.github/workflows/Pharo12CI.yml new file mode 100644 index 0000000..f9535e2 --- /dev/null +++ b/.github/workflows/Pharo12CI.yml @@ -0,0 +1,31 @@ +name: 'Pharo 12 CI' + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + +on: + push: + branches: + - 'main' + pull_request: + types: [assigned, opened, synchronize, reopened] + schedule: + - cron: '0 12 * * 0' + +jobs: + build: + strategy: + matrix: + os: [ ubuntu-latest, macos-latest, windows-latest ] + smalltalk: [ Pharo64-12 ] + runs-on: ${{ matrix.os }} + name: ${{ matrix.smalltalk }} on ${{ matrix.os }} + steps: + - uses: actions/checkout@v3 + - uses: hpi-swa/setup-smalltalkCI@v1 + with: + smalltalk-image: ${{ matrix.smalltalk }} + - name: Load in New Image and Run Tests + run: smalltalkci -s ${{ matrix.smalltalk }} ${{ matrix.ston }} + shell: bash + timeout-minutes: 30 diff --git a/.github/workflows/Tests.yml b/.github/workflows/Tests.yml new file mode 100644 index 0000000..1b2bd16 --- /dev/null +++ b/.github/workflows/Tests.yml @@ -0,0 +1,29 @@ +name: 'Tests' + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + +on: + push: + branches: + - 'main' + pull_request: + types: [assigned, opened, synchronize, reopened] + +jobs: + build: + strategy: + matrix: + os: [ ubuntu-latest, macos-latest, windows-latest ] + smalltalk: [ Pharo64-11, Pharo64-12 ] + runs-on: ${{ matrix.os }} + name: ${{ matrix.smalltalk }} on ${{ matrix.os }} + steps: + - uses: actions/checkout@v3 + - uses: hpi-swa/setup-smalltalkCI@v1 + with: + smalltalk-image: ${{ matrix.smalltalk }} + - name: Load in New Image and Run Tests + run: smalltalkci -s ${{ matrix.smalltalk }} ${{ matrix.ston }} + shell: bash + timeout-minutes: 30 \ No newline at end of file diff --git a/.project b/.project new file mode 100644 index 0000000..50c95bd --- /dev/null +++ b/.project @@ -0,0 +1,4 @@ +{ + 'srcDirectory' : 'src', + 'tags' : [ #smock] +} diff --git a/.smalltalk.ston b/.smalltalk.ston new file mode 100644 index 0000000..6a2fe3d --- /dev/null +++ b/.smalltalk.ston @@ -0,0 +1,13 @@ +SmalltalkCISpec { + #loading : [ + SCIMetacelloLoadSpec { + #baseline : 'ProjectName', + #directory : 'src', + #platforms : [ #pharo ] + } + ], + #testing : { + #failOnZeroTests : false, + #packages : [ 'ProjectNamePackage.*' ] + } +} diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..f630b4b --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 OpenSmock + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..fd3d986 --- /dev/null +++ b/README.md @@ -0,0 +1,36 @@ +[![License](https://img.shields.io/github/license/OpenSmock/ProjectName.svg)](./LICENSE) + + + +[![Tests](https://github.com/OpenSmock/ProjectName/actions/workflows/Tests.yml/badge.svg)](https://github.com/OpenSmock/ProjectName/actions/workflows/Tests.yml) +[![Pharo 11](https://img.shields.io/badge/Pharo-11-%23aac9ff.svg)](https://pharo.org/download) +[![Pharo 12](https://img.shields.io/badge/Pharo-12-%23aac9ff.svg)](https://pharo.org/download) + + + +[![Pharo 11 CI](https://github.com/OpenSmock/ProjectName/actions/workflows/Pharo11CI.yml/badge.svg)](https://github.com/OpenSmock/ProjectName/actions/workflows/Pharo11CI.yml) +[![Pharo 12 CI](https://github.com/OpenSmock/ProjectName/actions/workflows/Pharo12CI.yml/badge.svg)](https://github.com/OpenSmock/ProjectName/actions/workflows/Pharo12CI.yml) + +# ProjectName +Project description here. + +## Getting Started + +### Installation + +To install the project on your Pharo image you can just execute the following script: + +```smalltalk +Metacello new + baseline: 'ProjectName'; + repository: 'github://OpenSmock/ProjectName:main/src'; + load. +``` + +## Dependencies + +No dependencies. + +## License + +This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. diff --git a/src/.properties b/src/.properties new file mode 100644 index 0000000..53a5454 --- /dev/null +++ b/src/.properties @@ -0,0 +1,3 @@ +{ + #format : #tonel +}