Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update say tests and standardize stepsN to spell-out #280

Closed
wants to merge 48 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
d7624e0
Update say tests and standardize stepsN to spell-out
BNAndras Aug 13, 2023
b8d7cbc
Sync roman-numerals and update incomplete tests (#275)
BNAndras Sep 7, 2023
37dfbcc
Update gigasecond docs and test (#276)
BNAndras Sep 7, 2023
a0c5f57
Update collatz conjecture tests (#277)
BNAndras Sep 7, 2023
619e32c
Fix status badges in README.md (#263)
fapdash Sep 7, 2023
37828a4
Update matching brackets tests (#279)
BNAndras Sep 7, 2023
c75f97d
Sync tests for armstrong-numbers (#278)
BNAndras Sep 7, 2023
64eee93
Bump Bogdanp/setup-racket from 1.9 to 1.10 (#252)
dependabot[bot] Sep 7, 2023
01d1cf6
Add resistor-color-duo exercise (#267)
BNAndras Sep 7, 2023
de83d5e
Add resistor-color-trio exercise (#268)
BNAndras Sep 7, 2023
b8ab8d4
Add resistor-color exercise (#272)
BNAndras Sep 7, 2023
8db4e97
add rotational cipher exercise (#270)
BNAndras Sep 7, 2023
2853343
Add space-age exercise (#269)
BNAndras Sep 7, 2023
fdf7c8e
Bump actions/checkout from 3 to 4 (#283)
dependabot[bot] Sep 7, 2023
df9c839
Sync exercise docs and metadata (#281)
BNAndras Sep 8, 2023
faed687
Update missing authors (#282)
BNAndras Sep 8, 2023
11c84ed
Update README (#284)
BNAndras Sep 11, 2023
66436b2
Add fetch-configlet.ps1 (#285)
BNAndras Sep 12, 2023
c659451
Update anagram tests (#286)
BNAndras Sep 12, 2023
1dbac6a
Add new allergies test (#288)
BNAndras Sep 12, 2023
4e2e7ed
Update sublist tests (#287)
BNAndras Sep 12, 2023
43a5c94
Configlet sync (#289)
BNAndras Sep 18, 2023
b9aecd4
Convert backtick (`) admonition fences to tildes (~). (#292)
ErikSchierboom Sep 27, 2023
54bcc99
configlet fmt (#291)
BNAndras Sep 27, 2023
83c2ac4
Add pop-count (#293)
BNAndras Oct 18, 2023
1450d7a
Format track config.json (#296)
BNAndras Oct 25, 2023
bcab53d
Add high-scores exercise (#298)
BNAndras Oct 25, 2023
7046456
Add dnd-character (#295)
BNAndras Oct 25, 2023
818f17b
Bump Bogdanp/setup-racket from 1.10 to 1.11 (#299)
dependabot[bot] Oct 25, 2023
c9c7296
Add clock exercise (#300)
BNAndras Oct 26, 2023
3424400
Run CI on Racket 8.8 - 8.10 (#301)
BNAndras Oct 27, 2023
5687dd4
Add binary-search exercise (#302)
Adrien-LUDWIG Oct 29, 2023
d353729
Add proverb exercise (#303)
Adrien-LUDWIG Oct 30, 2023
dd229e2
Add protein translation exercise (#305)
Adrien-LUDWIG Oct 31, 2023
79ff1db
Add strain exercise (#297) (#306)
Adrien-LUDWIG Oct 31, 2023
4a69551
Update the metadata for the `pop-count` exercise (#307)
ErikSchierboom Nov 1, 2023
f88f378
Delete .github/workflows/pause-community-contributions.yml (#310)
BNAndras Nov 2, 2023
a8bacee
Add charmparticle as contributor (#309)
BNAndras Nov 2, 2023
675ac81
Update INSTALLATION.md (#256)
spdegabrielle Nov 9, 2023
d4a9a5b
Pin GitHub Actions runners to a specific version (#312)
ErikSchierboom Nov 9, 2023
83d6d8b
Create instructions.append.md (#314)
hunkyjimpjorps Nov 12, 2023
72cc237
Pin GitHub Actions workflows to a specific version (#315)
ErikSchierboom Nov 14, 2023
e402c29
Update dnd-character tests (#316)
BNAndras Nov 20, 2023
a7616ff
Update CI to use 8.9 - 8.11 (#317)
BNAndras Nov 20, 2023
5cf623b
configlet sync (#319)
BNAndras Dec 13, 2023
96ca736
Add reimplemented anagram test (#320)
BNAndras Dec 13, 2023
d915c9d
Format sublist config (#318)
BNAndras Dec 13, 2023
cbfba99
Merge branch 'update-say' of https://github.com/BNAndras/exercism-rac…
BNAndras Dec 20, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,18 @@ jobs:
ci:
name: Racket ${{ matrix.racket-version }}-${{ matrix.racket-variant }}

runs-on: ubuntu-latest
runs-on: ubuntu-22.04

strategy:
fail-fast: false
matrix:
racket-variant: ['BC', 'CS']
racket-version: ['8.8', '8.9']
racket-version: ['8.9', '8.10', '8.11']

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11

- uses: Bogdanp/setup-racket@bdb546a9ade9d3b7aeda6d8b77cbe615752421c5
- uses: Bogdanp/setup-racket@0094a9d8bd157633293a2210f373bb542687fa6d
with:
architecture: x64
distribution: minimal
Expand Down
25 changes: 0 additions & 25 deletions .github/workflows/pause-community-contributions.yml

This file was deleted.

51 changes: 9 additions & 42 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,63 +1,29 @@
# Exercism Racket Track

[![Configlet Status](https://github.com/exercism/racket/workflows/configlet/badge.svg)]
[![Exercise Test Status](https://github.com/exercism/racket/workflows/racket%20%2F%20main/badge.svg)]
[![Configlet Status](https://github.com/exercism/racket/actions/workflows/configlet.yml/badge.svg)](https://github.com/exercism/racket/actions/workflows/configlet.yml)
[![Exercise Test Status](https://github.com/exercism/racket/actions/workflows/ci.yml/badge.svg)](https://github.com/exercism/racket/actions/workflows/ci.yml)

Exercism exercises in Racket.

## Contributing

Please read about how to [get involved in a track](https://github.com/exercism/docs/tree/master/contributing-to-language-tracks). Also, be sure to read the Exercism [Code of Conduct](https://exercism.org/code-of-conduct).

We welcome both improvements to the existing exercises and the addition of new exercises. If you are creating a new exercise from scratch please see [adding new exercises](https://github.com/exercism/docs/blob/master/you-can-help/make-up-new-exercises.md). If you are porting an exercise that exists in other exercism language tracks, see [porting an exercise](https://github.com/exercism/docs/blob/master/you-can-help/implement-an-exercise-from-specification.md).

Please note that this track's exercises must conform to the Exercism-wide standards described in the [documentation](https://github.com/exercism/docs/tree/master/language-tracks/exercises). If you're unsure about how to make a change, then go ahead and open an issue on Github.

Each exercise should have an example solution, a description file, a test suite and a stub file for the solution declaring the module and exports.

### Naming Conventions

The example solution should be named `example.rkt`. The description file: `README.md`. The test suite: `<exercise-name>-test.rkt`, and the stub: `<exercise-name>.rkt`.

For example, if you were to work on the `binary` exercise, you would create and commit the following four files:

```bash
$ racket/exercises/binary/
.
├── binary.rkt
├── binary-test.rkt
├── README.md
└── example.rkt
```
Please see the [contributing guide](https://exercism.org/docs/building). We welcome both improvements to the existing exercises and the addition of new exercises.

### Code Style

The Racket code in this repo is meant to conform with the conventions set forth in [How to Program Racket](http://docs.racket-lang.org/style/index.html).

### Dependencies
Try to avoid external dependencies.

### Creating the description file

`README.md` may be [generated](https://github.com/exercism/docs/blob/master/maintaining-a-track/regenerating-exercise-readmes.md) from exercism data. The generator will use the `description.md` from the exercise directory in the [problem-specifications repository](https://github.com/exercism/problem-specifications/tree/master/exercises). To generate `README.md` for your execise only use the following command from your racket track directory:

```bash
bin/configlet generate . --only <exercise-name>
```

### Adding the exercise to config.json
Be sure to add the exercise to an appropriate place in the `config.json` file. The position in the file determines the order exercises are fetched by users. Generate a unique UUID for the exercise with ```configlet uuid```. Finally check `config.json` with:

```bash
bin/configlet lint .
```
Try to avoid external dependencies.

## Opening an Issue
## Suuport

If you plan to make significant or breaking changes, please open an issue so we can discuss it first. If this is a discussion that is relevant to more than just the Racket track, please open an issue in [exercism/discussions](https://github.com/exercism/discussions/issues).
For support with Racket in Exercism, please visit [the Racket subcategory](https://forum.exercism.org/c/programming/racket/) on the official [Exercism forum](https://forum.exercism.org).

## Submitting a Pull Request

Pull requests should be focused on a single exercise, issue, or conceptually cohesive change. Please refer to Exercism's [pull request guidelines](https://github.com/exercism/docs/blob/master/contributing/pull-request-guidelines.md).
Pull requests should be focused on a single exercise, issue, or conceptually cohesive change. Please refer to Exercism's [pull request guidelines](https://github.com/exercism/docs/blob/master/contributing/pull-request-guidelines.md). If you plan to make significant or breaking changes, please open an issue so we can discuss it first.

Prior to submitting a pull request, ensure that your test requires the stub file, and not the example file - like so:

Expand All @@ -81,5 +47,6 @@ Prior to submitting a pull request, ensure that your test requires the stub file
```

## Racket icon

The Racket logo was created by [Matthew Butterick](https://en.wikipedia.org/wiki/Matthew_Butterick) and released under the Creative Commons Attribution-Share Alike 3.0 Unported license.
We have adapted it, changing the colour scheme for use on Exercism.
31 changes: 31 additions & 0 deletions bin/fetch-configlet.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# This file is a copy of the
# https://github.com/exercism/configlet/blob/main/scripts/fetch-configlet.ps1 file.
# Please submit bugfixes/improvements to the above file to ensure that all tracks
# benefit from the changes.

$ErrorActionPreference = "Stop"
$ProgressPreference = "SilentlyContinue"

$requestOpts = @{
Headers = If ($env:GITHUB_TOKEN) { @{ Authorization = "Bearer ${env:GITHUB_TOKEN}" } } Else { @{ } }
MaximumRetryCount = 3
RetryIntervalSec = 1
}

$arch = If ([Environment]::Is64BitOperatingSystem) { "x86-64" } Else { "i386" }
$fileName = "configlet_.+_windows_$arch.zip"

Function Get-DownloadUrl {
$latestUrl = "https://api.github.com/repos/exercism/configlet/releases/latest"
Invoke-RestMethod -Uri $latestUrl -PreserveAuthorizationOnRedirect @requestOpts
| Select-Object -ExpandProperty assets
| Where-Object { $_.browser_download_url -match $FileName }
| Select-Object -ExpandProperty browser_download_url -First 1
}

$downloadUrl = Get-DownloadUrl
$outputDirectory = "bin"
$outputFile = Join-Path -Path $outputDirectory -ChildPath $fileName
Invoke-WebRequest -Uri $downloadUrl -OutFile $outputFile @requestOpts
Expand-Archive $outputFile -DestinationPath $outputDirectory -Force
Remove-Item -Path $outputFile
Loading