Skip to content

Commit

Permalink
Merge pull request #51 from ba-st/pharo_10
Browse files Browse the repository at this point in the history
Add Pharo 10
  • Loading branch information
gcotelli committed Apr 21, 2022
2 parents 2898e1a + b9e6c3e commit 3577a4f
Show file tree
Hide file tree
Showing 16 changed files with 189 additions and 150 deletions.
2 changes: 2 additions & 0 deletions .gitattributes
@@ -1 +1,3 @@
*.st linguist-language=Smalltalk
*.st eol=lf
*.st text diff
26 changes: 0 additions & 26 deletions .github/workflows/build.yml

This file was deleted.

14 changes: 7 additions & 7 deletions .github/workflows/loading-groups.yml
@@ -1,23 +1,23 @@
name: Group loading check
name: Baseline Groups

on: [push,pull_request]
on: [push,pull_request,workflow_dispatch]

jobs:
build:
group-loading:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
smalltalk: [ Pharo64-9.0, Pharo64-8.0, Pharo64-7.0 ]
load-spec: [ deployment, development]
smalltalk: [ Pharo64-10 ]
load-spec: [ deployment, development ]
name: ${{ matrix.smalltalk }} + ${{ matrix.load-spec }}
steps:
- uses: actions/checkout@v2
- uses: hpi-swa/setup-smalltalkCI@v1
with:
smalltalk-version: ${{ matrix.smalltalk }}
smalltalk-image: ${{ matrix.smalltalk }}
- name: Load group in image
run: smalltalkci -s ${{ matrix.smalltalk }} .loading.${{ matrix.load-spec }}.ston
run: smalltalkci -s ${{ matrix.smalltalk }} .smalltalkci/loading.${{ matrix.load-spec }}.ston
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
timeout-minutes: 15
14 changes: 14 additions & 0 deletions .github/workflows/markdown-lint.yml
@@ -0,0 +1,14 @@
name: Markdown Lint
on: [push,pull_request,workflow_dispatch]
jobs:
remark-lint:
name: runner / markdownlint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: markdownlint
uses: reviewdog/action-markdownlint@v0.1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
fail_on_error: true
reporter: github-pr-review
13 changes: 0 additions & 13 deletions .smalltalk.ston

This file was deleted.

Expand Up @@ -2,7 +2,7 @@ SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'WillowPlayground',
#directory : 'source',
#directory : '../source',
#load : [ 'Deployment' ],
#platforms : [ #pharo ]
}
Expand Down
Expand Up @@ -2,7 +2,7 @@ SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#baseline : 'WillowPlayground',
#directory : 'source',
#directory : '../source',
#load : [ 'Development' ],
#platforms : [ #pharo ]
}
Expand Down
46 changes: 26 additions & 20 deletions CONTRIBUTING.md
@@ -1,32 +1,38 @@
Contributing
============
# Contributing

There's several ways to contribute to the project: reporting bugs, sending feedback, proposing ideas for new features, fixing or adding documentation, promoting the project, or even contributing code.
There are several ways to contribute to the project: reporting bugs, sending
feedback, proposing ideas for new features, fixing or adding documentation,
promoting the project, or even contributing code.

## Reporting issues

You can report issues [here](https://github.com/ba-st/Willow-Playground/issues/new)

## Contributing Code

- This project is MIT licensed, so any code contribution MUST be under the same license.
- This project uses [Semantic Versioning](http://semver.org/), so keep it in mind when you make backwards-incompatible changes. If some backwards incompatible change is made the major version MUST be increased.
- The source code is hosted in this repository using the Tonel format in the `source` folder.
- The `release-candidate` branch contains the latest changes and should always be in a releasable state.
- This project uses [Semantic Versioning](http://semver.org/), so keep it in
mind when you make backwards-incompatible changes. If some backwards
incompatible change is made the major version MUST be increased.
- The source code is hosted in this repository using the Tonel format in the
`source` folder.
- The `release-candidate` branch contains the latest changes and should always
be in a releasable state.
- Feel free to send pull requests or fork the project.
- Code contributions without test cases have a lower probability of being merged into the main branch.

### Using Iceberg
1. Download a [Pharo Image and VM](https://get.pharo.org/64)
2. Clone the project or your fork using Iceberg
3. Open the Working Copy and using the contextual menu select `Metacello -> Install baseline...`
4. Input `Development`
5. This will load the base code and the test cases
6. Create a new branch to host your code changes
7. Do the changes
8. Run the test cases
9. Commit and push your changes to the branch using the Iceberg UI
10. Create a Pull Request against the `release-candidate` branch
- Code contributions without test cases have a lower probability of being merged
into the main branch.

1. [Load the project code in a Pharo image](docs/how-to/how-to-load-in-pharo.md)
2. Create a new branch to host your code changes
3. Do the changes
4. Run the test cases
5. Commit and push your changes to the branch using the Iceberg UI. You may need
to add your fork if lacking the required permissions to push to the main repo.
6. Create a Pull Request against the `release-candidate` branch

## Contributing documentation

The project documentation is maintained in this repository in the `docs` folder and licensed under CC BY-SA 4.0. To contribute some documentation or improve the existing, feel free to create a branch or fork this repository, make your changes and send a pull request.
The project documentation is maintained in this repository in the `docs` folder
and licensed under CC BY-SA 4.0. To contribute some documentation or improve the
existing, feel free to create a branch or fork this repository, make your
changes and send a pull request.
2 changes: 1 addition & 1 deletion LICENSE
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2017-2019 Buenos Aires Smalltalk
Copyright (c) 2017-2022 Buenos Aires Smalltalk

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
68 changes: 31 additions & 37 deletions README.md
@@ -1,58 +1,52 @@
<p align="center"><img src="assets/logos/128x128.png">
<h1 align="center">Willow-Playground</h1>
<p align="center">
Willow-Playground provides examples on how to use <a href="https://github.com/ba-st/Willow">Willow</a> to develop a complete interactive web application
<br>
<a href="docs/"><strong>Explore the docs »</strong></a>
<br>
<br>
<a href="https://github.com/ba-st/Willow-Playground/issues/new?labels=Type%3A+Defect">Report a defect</a>
|
<a href="https://github.com/ba-st/Willow-Playground/issues/new?labels=Type%3A+Feature">Request feature</a>
</p>
</p>
# Willow Playground

![Logo](assets/logos/128x128.png)

Willow-Playground provides examples on how to use [Willow](https://github.com/ba-st/Willow)
to develop a complete interactive web application.

[![Baseline Groups](https://github.com/ba-st/Willow-Playground/actions/workflows/loading-groups.yml/badge.svg)](https://github.com/ba-st/Willow-Playground/actions/workflows/loading-groups.yml)
[![Markdown Lint](https://github.com/ba-st/Willow-Playground/actions/workflows/markdown-lint.yml/badge.svg)](https://github.com/ba-st/Willow-Playground/actions/workflows/markdown-lint.yml)

[![GitHub release](https://img.shields.io/github/release/ba-st/Willow-Playground.svg)](https://github.com/ba-st/Willow-Playground/releases/latest)
[![Build Status](https://github.com/ba-st/Willow-Playground/workflows/Build/badge.svg?branch=release-candidate)](https://github.com/ba-st/Willow-Playground/actions?query=workflow%3ABuild)
[![Pharo 7.0](https://img.shields.io/badge/Pharo-7.0-informational)](https://pharo.org)
[![Pharo 8.0](https://img.shields.io/badge/Pharo-8.0-informational)](https://pharo.org)
[![Pharo 10](https://img.shields.io/badge/Pharo-10-informational)](https://pharo.org)

## Goals

- Present the different components and features of Willow
- Offer simple interactive applications, that are both useful are clear to understand

## Quick links

- [**Explore the docs**](docs/README.md)
- [Report a defect](https://github.com/ba-st/Willow-Playground/issues/new?labels=Type%3A+Defect)
- [Request a feature](https://github.com/ba-st/Willow-Playground/issues/new?labels=Type%3A+Feature)

## License

- The code is licensed under [MIT](LICENSE).
- The documentation is licensed under [CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/).

## Quick Start

- Download the latest [Pharo 32](https://get.pharo.org/) or [64 bits VM](https://get.pharo.org/64/).
- Load the latest playground version with

```smalltalk
Metacello new
baseline: 'WillowPlayground';
repository: 'github://ba-st/Willow-Playground:release-candidate/source';
load.
```
- Load the latest [playground version](docs/how-to/how-to-load-in-pharo.md)
- Evaluate

You can now evaluate
```smalltalk
Smalltalks2017Presentation start
```

```smalltalk
Smalltalks2017Presentation start
```

and go to [localhost:8080/willow101](http://localhost:8080/willow101) to find an interactive tutorial.
- Go to [localhost:8080/willow101](http://localhost:8080/willow101) to find an
interactive tutorial.

To learn how to use Willow, you can check the applications included in this repository:
- Live Documentation: start by browsing `WPLiveDocumentation`. Access the application at [localhost:8080/live-docs](http://localhost:8080/live-docs)
- Test Runner (Boostrap 3): start by browsing `WPB3TestRunner`. Access the application at [localhost:8080/test-runner-bootstrap3](http://localhost:8080/test-runner-bootstrap3)
- Test Runner (Boostrap 4): start by browsing `WPB4TestRunner`. Access the application at [localhost:8080/test-runner-bootstrap4](http://localhost:8080/test-runner-bootstrap4)

## Installation

To load the project in a Pharo image, or declare it as a dependency of your own project follow this [instructions](docs/Installation.md).
- Live Documentation: start by browsing `WPLiveDocumentation`. Access the
application at [localhost:8080/live-docs](http://localhost:8080/live-docs)
- Test Runner (Boostrap 3): start by browsing `WPB3TestRunner`. Access the
application at [localhost:8080/test-runner-bootstrap3](http://localhost:8080/test-runner-bootstrap3)
- Test Runner (Boostrap 4): start by browsing `WPB4TestRunner`. Access the
application at [localhost:8080/test-runner-bootstrap4](http://localhost:8080/test-runner-bootstrap4)

## Contributing

Expand Down
43 changes: 0 additions & 43 deletions docs/Installation.md

This file was deleted.

14 changes: 14 additions & 0 deletions docs/README.md
@@ -0,0 +1,14 @@
# Willow Playground Documentation

What is this thing? “the motto”, the goals, the vision.

To learn about the project, [install it](how-to/how-to-load-in-pharo.md).

Links to additional documentation.

---

To use the project as a dependency of your project, take a look at:

- [How to use Willow Playground as a dependency](how-to/how-to-use-as-dependency-in-pharo.md)
- [Baseline groups reference](reference/Baseline-groups.md)
35 changes: 35 additions & 0 deletions docs/how-to/how-to-load-in-pharo.md
@@ -0,0 +1,35 @@
# How to load Willow Playground in a Pharo image

## Using Metacello

1. Download a [Pharo VM and image](https://pharo.org/download)
2. Open your Pharo image
3. Open a Playground
4. Evaluate:

```smalltalk
Metacello new
baseline: 'WillowPlayground';
repository: 'github://ba-st/Willow-Playground:release-candidate';
load: 'Development'.
```

> Change `release-candidate` to some released version if you want a pinned version
## Using Iceberg

1. Download [pharo VM and image](https://pharo.org/download)
2. Open your Pharo image
3. Open Iceberg
4. Click the *Add* repository button
5. Select *Clone from github.com* and enter `ba-st` as owner name and `Willow-Playground`
as project name
6. Click *Ok*
7. Select the repository in the main Iceberg window
8. Open the contextual menu and select
*Metacello -> Install baseline of Willow-Playground ...*
9. Type `Development` and click *Ok*

> After Iceberg cloned a repository, it will be checked-out at the default
> branch (in this case `release-candidate`). If you want to work on a different
> branch or commit, perform the checkout before the baseline installation step.

0 comments on commit 3577a4f

Please sign in to comment.