Skip to content

Commit

Permalink
Merge pull request #184 from sugarlabs/develop
Browse files Browse the repository at this point in the history
Release v4.1.0
  • Loading branch information
meganindya authored Mar 5, 2022
2 parents 717c8ed + 799e6d4 commit 2d9fa1c
Show file tree
Hide file tree
Showing 13 changed files with 549 additions and 285 deletions.
6 changes: 6 additions & 0 deletions src/CHANGELOG.md → CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changelog

## 4.1.0 [2022-03-05]

- Updates README text.
- Adds the feature to author programs in the _Editor_ using _YAML_.
- Updates vulnerable dependent package `url-parse` version.

## 4.0.1 [2022-02-15]

- Updates core dependency `musicblocks-v4-lib` version from `1.0.1` to prerelease `0.2.0`.
Expand Down
36 changes: 17 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ of ideas (Sugar Labs is a meritocracy)._

## Tech Stack

Music Blocks v4 shall be built using `TypeScript 4`and `React 17 (with hooks)`. In addition, `SCSS`
Music Blocks v4 shall be built using `TypeScript 4` and `React 17 (with hooks)`. In addition, `SCSS`
shall be used for styling; `Webpack` will be configured to transpile and bundle the source code, for
deployment on a web browser.

Expand All @@ -181,7 +181,7 @@ deployment on a web browser.
### Without Docker

This is a _**TypeScript**_ project that uses _**React**_. You'll just need
_[**Node.js**](https://nodejs.org/en/)_ and _**npm**_ installed on your development machine_.
_[**Node.js**](https://nodejs.org/en/) v16_ and _**npm**_ installed on your development machine.
Although, this is sufficient to run, build, and test the project as a whole, you might need some
extra tools for other development tasks.

Expand Down Expand Up @@ -209,11 +209,11 @@ node -v && npm -v && tsc -v && ts-node -v && http-server -v
Output should look like

```bash
v14.17.0
6.14.13
Version 4.3.2
v10.0.0
v0.12.3
v16.14.0
8.3.1
Version 4.6.2
v10.6.0
v14.1.0
```

### With Docker
Expand Down Expand Up @@ -241,13 +241,13 @@ Windows) this repository using
4. Build _docker image_ and launch _docker network_.

_**Note:**_ A
[built initial development image](https://github.com/sugarlabs/musicblocks-v4/pkgs/container/musicblocks/2948273?tag=4.0.0-dev)
[built initial development image](https://github.com/sugarlabs/musicblocks-v4/pkgs/container/musicblocks/16217005?tag=4-dev)
has been published to
[_Sugar Labs GitHub Container Registry_ (_GHCR_)](https://github.com/orgs/sugarlabs/packages?ecosystem=container),
which can be pulled directly, so you don't have to build it again. Pull using

```bash
docker pull ghcr.io/sugarlabs/musicblocks:4.0.0-dev
docker pull ghcr.io/sugarlabs/musicblocks:4-dev
```

Nagivate inside the project directory and launch the _docker network_ using
Expand All @@ -270,11 +270,11 @@ Windows) this repository using
5. In a second terminal, run
```bash
docker attach musicblocks-4.0.0-dev
docker attach musicblocks-4-dev
```
The _Alpine shell_ in the _docker container_ named _musicblocks-4.0.0-dev_ is spawned and
standard input/output is connected to the terminal.
The _Alpine shell_ in the _docker container_ named _musicblocks-4-dev_ is spawned and standard
input/output is connected to the terminal.
6. _**Node.js**_ (_Node.js Runtime_), _**npm**_ (_Node.js Package Manager_), _**tsc**_ (_TypeScript
Compiler_), _**ts-node**_ (_Node.js executable for TypeScript_), and _**http-server**_ (_a HTTP
Expand All @@ -287,11 +287,11 @@ Windows) this repository using
Output should look like
```bash
v14.17.0
6.14.13
Version 4.3.2
v10.0.0
v0.12.3
v16.14.0
8.3.1
Version 4.6.2
v10.6.0
v14.1.0
```
7. To shut down the _docker network_, run (in the terminal where you ran `docker-compose up -d` or
Expand Down Expand Up @@ -357,8 +357,6 @@ After you are set-up, the steps you take depend on what you want to do:
on host. Visit `localhost:5000` in a browser to view the web page served. If you are not
using the container, visit `localhost:3000`.

Currently this will open a page with a "Hello world!" message.

- For testing, run

```bash
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ version: "3.8"
services:
musicblocks:
build: ./
image: ghcr.io/sugarlabs/musicblocks:4.0.0-dev
image: ghcr.io/sugarlabs/musicblocks:4-dev
env_file:
- ./env/development.env
ports:
- "5000:3000"
- "5001:80"
volumes:
- ./:/app/
container_name: musicblocks-4.0.0-dev
container_name: musicblocks-4-dev
stdin_open: true
tty: true
39 changes: 24 additions & 15 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "musicblocks",
"version": "4.0.1",
"version": "4.1.0",
"description": "A complete overhaul of Music Blocks",
"private": true,
"repository": {
Expand All @@ -22,6 +22,7 @@
"@types/jest": "^27.4.0",
"@types/jquery": "^3.5.8",
"@types/jqueryui": "^1.12.16",
"@types/js-yaml": "^4.0.5",
"@types/node": "^16.11.21",
"@types/p5": "^1.3.3",
"@types/react": "^17.0.38",
Expand All @@ -47,6 +48,7 @@
"dependencies": {
"@sugarlabs/musicblocks-v4-lib": "^0.2.0",
"jquery": "^3.6.0",
"js-yaml": "^3.14.1",
"p5": "^1.4.0",
"react": "^17.0.2",
"react-dom": "^17.0.2",
Expand Down
18 changes: 18 additions & 0 deletions src/components/editor/@types/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/** Reresents a literal code argument. */
export type ICodeArgumentLiteral = boolean | number | string;

/** Represents the interface for a code argument snapshot object. */
export interface ICodeArgumentObj {
[key: string]: ICodeArgumentLiteral | ICodeArgumentObj;
}

/** Represents the interface for a code argument element. */
export type ICodeArgument = ICodeArgumentLiteral | ICodeArgumentObj;

/** Represents the interface for a code instruction element object. */
export interface ICodeInstructionObj {
[instruction: string]: ICodeArgument;
}

/** Represents the interface for a code instruction element. */
export type ICodeInstruction = string | ICodeInstructionObj;
Loading

0 comments on commit 2d9fa1c

Please # to comment.