Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into feature/execution…
Browse files Browse the repository at this point in the history
…-context-skeleton
  • Loading branch information
ysbaddaden committed Feb 11, 2025
2 parents f6e11e2 + cb7782d commit f15e6bc
Show file tree
Hide file tree
Showing 87 changed files with 1,131 additions and 332 deletions.
5 changes: 3 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ parameters:
distribution-scripts-version:
description: "Git ref for version of https://github.com/crystal-lang/distribution-scripts/"
type: string
default: "2f56eecf233f52229b93eab4acd2bca51f0f8edf"
default: "1ee31a42f0b06776a42fa4635b54dc9ec567e68a"
previous_crystal_base_url:
description: "Prefix for URLs to Crystal bootstrap compiler"
type: string
default: "https://github.com/crystal-lang/crystal/releases/download/1.15.0/crystal-1.15.0-1"
default: "https://github.com/crystal-lang/crystal/releases/download/1.15.1/crystal-1.15.1-1"

defaults:
environment: &env
Expand Down Expand Up @@ -477,6 +477,7 @@ jobs:
- run: bin/ci prepare_system
- run: echo 'export CURRENT_TAG="$CIRCLE_TAG"' >> $BASH_ENV
- run: bin/ci prepare_build
- run: bin/ci with_build_env 'shards --version'
- run:
command: bin/ci build
no_output_timeout: 30m
Expand Down
35 changes: 35 additions & 0 deletions .github/workflows/backport.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# WARNING:
# When extending this action, be aware that $GITHUB_TOKEN allows write access to
# the GitHub repository. This means that it should not evaluate user input in a
# way that allows code injection.

name: Backport

on:
pull_request_target:
types: [closed, labeled]

permissions:
contents: write # so it can comment
pull-requests: write # so it can create pull requests

jobs:
backport:
name: Backport Pull Request
if: github.repository_owner == 'crystal-lang' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
token: ${{ secrets.BACKPORT_ACTION_GITHUB_PAT }}

- name: Create backport PR
uses: korthout/backport-action@be567af183754f6a5d831ae90f648954763f17f5 # v3.1.0
with:
github_token: ${{ secrets.BACKPORT_ACTION_GITHUB_PAT }}
# Config README: https://github.com/korthout/backport-action#backport-action
copy_labels_pattern: '^(breaking-change|security|topic:.*|kind:.*|platform:.*)$'
copy_milestone: true
pull_description: |-
Automated backport of #${pull_number} to `${target_branch}`, triggered by a label.
8 changes: 4 additions & 4 deletions .github/workflows/interpreter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
test-interpreter_spec:
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.15.0-build
image: crystallang/crystal:1.15.1-build
name: "Test Interpreter"
steps:
- uses: actions/checkout@v4
Expand All @@ -26,7 +26,7 @@ jobs:
build-interpreter:
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.15.0-build
image: crystallang/crystal:1.15.1-build
name: Build interpreter
steps:
- uses: actions/checkout@v4
Expand All @@ -45,7 +45,7 @@ jobs:
needs: build-interpreter
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.15.0-build
image: crystallang/crystal:1.15.1-build
strategy:
matrix:
part: [0, 1, 2, 3]
Expand All @@ -69,7 +69,7 @@ jobs:
needs: build-interpreter
runs-on: ubuntu-24.04
container:
image: crystallang/crystal:1.15.0-build
image: crystallang/crystal:1.15.1-build
name: "Test primitives_spec with interpreter"
steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
strategy:
fail-fast: false
matrix:
crystal_bootstrap_version: [1.7.3, 1.8.2, 1.9.2, 1.10.1, 1.11.2, 1.12.2, 1.13.3, 1.14.1, 1.15.0]
crystal_bootstrap_version: [1.7.3, 1.8.2, 1.9.2, 1.10.1, 1.11.2, 1.12.2, 1.13.3, 1.14.1, 1.15.1]
flags: [""]
include:
# libffi is only available starting from the 1.2.2 build images
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/llvm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ jobs:
- {llvm_version: 17, runs-on: ubuntu-24.04, codename: noble}
- {llvm_version: 18, runs-on: ubuntu-24.04, codename: noble}
- {llvm_version: 19, runs-on: ubuntu-24.04, codename: noble}
- {llvm_version: 20, runs-on: ubuntu-24.04, codename: noble}
name: "LLVM ${{ matrix.llvm_version }}"
steps:
- name: Checkout Crystal source
Expand All @@ -40,7 +41,7 @@ jobs:
- name: Install Crystal
uses: crystal-lang/install-crystal@v1
with:
crystal: "1.15.0"
crystal: "1.15.1"

- name: Build libllvm_ext
run: make -B deps
Expand Down
20 changes: 19 additions & 1 deletion .github/workflows/mingw-w64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
- name: Install Crystal
uses: crystal-lang/install-crystal@v1
with:
crystal: "1.15.0"
crystal: "1.15.1"

- name: Cross-compile Crystal
run: make && make -B target=x86_64-windows-gnu release=1 interpreter=1
Expand Down Expand Up @@ -60,6 +60,7 @@ jobs:
mingw-w64-ucrt-x86_64-zlib
mingw-w64-ucrt-x86_64-llvm
mingw-w64-ucrt-x86_64-libffi
mingw-w64-ucrt-x86_64-libyaml
- name: Disable CRLF line ending substitution
run: |
Expand Down Expand Up @@ -87,6 +88,23 @@ jobs:
run: |
make install install_dlls deref_symlinks=1 PREFIX="$(pwd)/crystal"
- name: Download shards release
uses: actions/checkout@v4
with:
repository: crystal-lang/shards
ref: v0.19.0
path: shards

- name: Build shards release
shell: msys2 {0}
working-directory: ./shards
run: make CRYSTAL=$(pwd)/../crystal/bin/crystal SHARDS=false release=1

- name: Package Shards
shell: msys2 {0}
run: |
make install PREFIX="$(pwd)/../crystal"
- name: Upload Crystal executable
uses: actions/upload-artifact@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/openssl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
libssl_test:
runs-on: ubuntu-latest
name: "${{ matrix.pkg }}"
container: crystallang/crystal:1.15.0-alpine
container: crystallang/crystal:1.15.1-alpine
strategy:
fail-fast: false
matrix:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/regex-engine.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
pcre:
runs-on: ubuntu-latest
name: "PCRE"
container: crystallang/crystal:1.15.0-alpine
container: crystallang/crystal:1.15.1-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
Expand All @@ -27,7 +27,7 @@ jobs:
pcre2:
runs-on: ubuntu-latest
name: "PCRE2"
container: crystallang/crystal:1.15.0-alpine
container: crystallang/crystal:1.15.1-alpine
steps:
- name: Download Crystal source
uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/wasm32.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ env:
jobs:
wasm32-test:
runs-on: ubuntu-24.04
container: crystallang/crystal:1.15.0-build
container: crystallang/crystal:1.15.1-build
steps:
- name: Download Crystal source
uses: actions/checkout@v4
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/win.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0

- name: Set up Cygwin
uses: cygwin/cygwin-install-action@006ad0b0946ca6d0a3ea2d4437677fa767392401 # v4
uses: cygwin/cygwin-install-action@f61179d72284ceddc397ed07ddb444d82bf9e559 # v5
with:
packages: make
install-dir: C:\cygwin64
Expand Down Expand Up @@ -103,7 +103,7 @@ jobs:
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0

- name: Set up Cygwin
uses: cygwin/cygwin-install-action@006ad0b0946ca6d0a3ea2d4437677fa767392401 # v4
uses: cygwin/cygwin-install-action@f61179d72284ceddc397ed07ddb444d82bf9e559 # v5
with:
packages: make
install-dir: C:\cygwin64
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/win_build_portable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
uses: crystal-lang/install-crystal@v1
id: install-crystal
with:
crystal: "1.15.0"
crystal: "1.15.1"

- name: Download Crystal source
uses: actions/checkout@v4
Expand Down Expand Up @@ -127,7 +127,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: crystal-lang/shards
ref: v0.19.0
ref: v0.19.1
path: shards

- name: Build shards release
Expand Down
47 changes: 47 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,52 @@
# Changelog

## [1.15.1] (2025-02-04)

[1.15.1]: https://github.com/crystal-lang/crystal/releases/1.15.1

### Bugfixes

#### stdlib

- *(networking)* Disable directory path redirect when `directory_listing=false` ([#15393], thanks @straight-shoota)
- *(runtime)* **[regression]** abstract `EventLoop::Polling#system_add` invalid signature ([#15380], backported from [#15358], thanks @straight-shoota)
- *(system)* **[regression]** Fix GC `sig_suspend`, `sig_resume` for `gc_none` ([#15382], backported from [#15349], thanks @ysbaddaden)

[#15393]: https://github.com/crystal-lang/crystal/pull/15393
[#15380]: https://github.com/crystal-lang/crystal/pull/15380
[#15358]: https://github.com/crystal-lang/crystal/pull/15358
[#15382]: https://github.com/crystal-lang/crystal/pull/15382
[#15349]: https://github.com/crystal-lang/crystal/pull/15349

### Documentation

#### stdlib

- *(system)* Fix code example in `Process::Status#exit_code` docs ([#15381], backported from [#15351], thanks @zw963)

[#15381]: https://github.com/crystal-lang/crystal/pull/15381
[#15351]: https://github.com/crystal-lang/crystal/pull/15351

### Infrastructure

- Changelog for 1.15.1 ([#15406], thanks @straight-shoota)
- Update distribution-scripts ([#15385], backported from [#15368], thanks @straight-shoota)
- Update distribution-scripts ([#15388], thanks @straight-shoota)
- Add backports to changelog generator ([#15402], thanks @straight-shoota)
- *(ci)* Add build shards to `mingw-w64` workflow ([#15344], thanks @straight-shoota)
- *(ci)* Update shards 0.19.1 ([#15384], backported from [#15366], thanks @straight-shoota)
- *(ci)* Add check for shards binary in `test_dist_linux_on_docker` ([#15394], thanks @straight-shoota)

[#15406]: https://github.com/crystal-lang/crystal/pull/15406
[#15385]: https://github.com/crystal-lang/crystal/pull/15385
[#15368]: https://github.com/crystal-lang/crystal/pull/15368
[#15388]: https://github.com/crystal-lang/crystal/pull/15388
[#15402]: https://github.com/crystal-lang/crystal/pull/15402
[#15344]: https://github.com/crystal-lang/crystal/pull/15344
[#15384]: https://github.com/crystal-lang/crystal/pull/15384
[#15366]: https://github.com/crystal-lang/crystal/pull/15366
[#15394]: https://github.com/crystal-lang/crystal/pull/15394

## [1.15.0] (2025-01-09)

[1.15.0]: https://github.com/crystal-lang/crystal/releases/1.15.0
Expand Down
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@ uninstall: ## Uninstall the compiler from DESTDIR

rm -f "$(DESTDIR)$(PREFIX)/share/bash-completion/completions/crystal"
rm -f "$(DESTDIR)$(PREFIX)/share/zsh/site-functions/_crystal"
rm -f "$(DESTDIR)$(PREFIX)/share/fish/vendor_completions.d/crystal.fish"

.PHONY: install_docs
install_docs: docs ## Install docs at DESTDIR
Expand Down
6 changes: 3 additions & 3 deletions bin/ci
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,8 @@ format() {
prepare_build() {
on_linux verify_linux_environment

on_osx curl -L https://github.com/crystal-lang/crystal/releases/download/1.15.0/crystal-1.15.0-1-darwin-universal.tar.gz -o ~/crystal.tar.gz
on_osx 'pushd ~;gunzip -c ~/crystal.tar.gz | tar xopf -;mv crystal-1.15.0-1 crystal;popd'
on_osx curl -L https://github.com/crystal-lang/crystal/releases/download/1.15.1/crystal-1.15.1-1-darwin-universal.tar.gz -o ~/crystal.tar.gz
on_osx 'pushd ~;gunzip -c ~/crystal.tar.gz | tar xopf -;mv crystal-1.15.1-1 crystal;popd'

# These commands may take a few minutes to run due to the large size of the repositories.
# This restriction has been made on GitHub's request because updating shallow
Expand Down Expand Up @@ -189,7 +189,7 @@ with_build_env() {

on_linux verify_linux_environment

export DOCKER_TEST_PREFIX="${DOCKER_TEST_PREFIX:=crystallang/crystal:1.15.0}"
export DOCKER_TEST_PREFIX="${DOCKER_TEST_PREFIX:=crystallang/crystal:1.15.1}"

case $ARCH in
x86_64)
Expand Down
Loading

0 comments on commit f15e6bc

Please sign in to comment.