Skip to content

Commit 007b312

Browse files
committed
Modernize code.
1 parent a473b31 commit 007b312

28 files changed

Lines changed: 107 additions & 44 deletions

.github/workflows/documentation-coverage.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,14 @@ permissions:
77

88
env:
99
COVERAGE: PartialSummary
10+
BUNDLE_WITH: maintenance
1011

1112
jobs:
1213
validate:
1314
runs-on: ubuntu-latest
1415

1516
steps:
16-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v7
1718
- uses: ruby/setup-ruby@v1
1819
with:
1920
ruby-version: ruby

.github/workflows/documentation.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
runs-on: ubuntu-latest
2525

2626
steps:
27-
- uses: actions/checkout@v4
27+
- uses: actions/checkout@v7
2828

2929
- uses: ruby/setup-ruby@v1
3030
with:
@@ -39,7 +39,7 @@ jobs:
3939
run: bundle exec bake utopia:project:static --force no
4040

4141
- name: Upload documentation artifact
42-
uses: actions/upload-pages-artifact@v3
42+
uses: actions/upload-pages-artifact@v5
4343
with:
4444
path: docs
4545

@@ -54,4 +54,4 @@ jobs:
5454
steps:
5555
- name: Deploy to GitHub Pages
5656
id: deployment
57-
uses: actions/deploy-pages@v4
57+
uses: actions/deploy-pages@v5

.github/workflows/rubocop.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ubuntu-latest
1111

1212
steps:
13-
- uses: actions/checkout@v4
13+
- uses: actions/checkout@v7
1414
- uses: ruby/setup-ruby@v1
1515
with:
1616
ruby-version: ruby

.github/workflows/test-coverage.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
- ruby
2424

2525
steps:
26-
- uses: actions/checkout@v4
26+
- uses: actions/checkout@v7
2727
- uses: ruby/setup-ruby@v1
2828
with:
2929
ruby-version: ${{matrix.ruby}}
@@ -33,7 +33,7 @@ jobs:
3333
timeout-minutes: 5
3434
run: bundle exec bake test
3535

36-
- uses: actions/upload-artifact@v4
36+
- uses: actions/upload-artifact@v7
3737
with:
3838
include-hidden-files: true
3939
if-no-files-found: error
@@ -45,13 +45,13 @@ jobs:
4545
runs-on: ubuntu-latest
4646

4747
steps:
48-
- uses: actions/checkout@v4
48+
- uses: actions/checkout@v7
4949
- uses: ruby/setup-ruby@v1
5050
with:
5151
ruby-version: ruby
5252
bundler-cache: true
5353

54-
- uses: actions/download-artifact@v4
54+
- uses: actions/download-artifact@v8
5555

5656
- name: Validate coverage
5757
timeout-minutes: 5

.github/workflows/test-external.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,10 @@ jobs:
1919
ruby:
2020
- "3.3"
2121
- "3.4"
22+
- "4.0"
2223

2324
steps:
24-
- uses: actions/checkout@v4
25+
- uses: actions/checkout@v7
2526
- uses: ruby/setup-ruby@v1
2627
with:
2728
ruby-version: ${{matrix.ruby}}

.github/workflows/test.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ jobs:
1818
- macos
1919

2020
ruby:
21-
- "3.2"
2221
- "3.3"
2322
- "3.4"
23+
- "4.0"
2424

2525
experimental: [false]
2626

@@ -36,7 +36,7 @@ jobs:
3636
experimental: true
3737

3838
steps:
39-
- uses: actions/checkout@v4
39+
- uses: actions/checkout@v7
4040
- uses: ruby/setup-ruby@v1
4141
with:
4242
ruby-version: ${{matrix.ruby}}

.rubocop.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,19 @@ plugins:
55
AllCops:
66
DisabledByDefault: true
77

8+
# Socketry specific rules:
9+
810
Layout/ConsistentBlankLineIndentation:
911
Enabled: true
1012

13+
Layout/BlockDelimiterSpacing:
14+
Enabled: true
15+
16+
Style/GlobalExceptionVariables:
17+
Enabled: true
18+
19+
# General Layout rules:
20+
1121
Layout/IndentationStyle:
1222
Enabled: true
1323
EnforcedStyle: tabs
@@ -52,6 +62,7 @@ Layout/CommentIndentation:
5262

5363
Layout/FirstHashElementIndentation:
5464
Enabled: true
65+
EnforcedStyle: consistent
5566

5667
Layout/EmptyLinesAroundClassBody:
5768
Enabled: true
@@ -71,6 +82,25 @@ Layout/SpaceAroundBlockParameters:
7182
Enabled: true
7283
EnforcedStyleInsidePipes: no_space
7384

85+
Layout/FirstArrayElementIndentation:
86+
Enabled: true
87+
EnforcedStyle: consistent
88+
89+
Layout/ArrayAlignment:
90+
Enabled: true
91+
EnforcedStyle: with_fixed_indentation
92+
93+
Layout/FirstArgumentIndentation:
94+
Enabled: true
95+
EnforcedStyle: consistent
96+
97+
Layout/ArgumentAlignment:
98+
Enabled: true
99+
EnforcedStyle: with_fixed_indentation
100+
101+
Layout/ClosingParenthesisIndentation:
102+
Enabled: true
103+
74104
Style/FrozenStringLiteralComment:
75105
Enabled: true
76106

bake.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# frozen_string_literal: true
22

33
# Released under the MIT License.
4-
# Copyright, 2025, by Samuel Williams.
4+
# Copyright, 2025-2026, by Samuel Williams.
55

66
# Update the project documentation with the new version number.
77
#
@@ -10,3 +10,10 @@ def after_gem_release_version_increment(version)
1010
context["releases:update"].call(version)
1111
context["utopia:project:update"].call
1212
end
13+
14+
# Create a GitHub release for the given tag.
15+
#
16+
# @parameter tag [String] The tag to create a release for.
17+
def after_gem_release(tag:, **options)
18+
context["releases:github:release"].call(tag)
19+
end

context/index.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
---
44
description: Provides abstractions for working with URLs.
55
metadata:
6-
source_code_uri: https://github.com/socketry/protocol-url.git
6+
bug_tracker_uri: https://github.com/socketry/protocol-url/issues
7+
changelog_uri: https://github.com/socketry/protocol-url/blob/main/releases.md
78
documentation_uri: https://socketry.github.io/protocol-url/
9+
source_code_uri: https://github.com/socketry/protocol-url.git
810
files:
911
- path: getting-started.md
1012
title: Getting Started

context/working-with-references.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,9 @@ You can update multiple components at once:
174174
base = Protocol::URL::Reference.new("/api/users")
175175

176176
modified = base.with(
177-
path: "posts",
178-
query: "author=john&status=published",
179-
fragment: "top"
177+
path: "posts",
178+
query: "author=john&status=published",
179+
fragment: "top"
180180
)
181181
modified.to_s # => "/api/posts?author=john&status=published#top"
182182
```

0 commit comments

Comments
 (0)