Skip to content

Commit 1006781

Browse files
Update Nodes quick start with standard Swift package configuration (#845)
* Update Nodes quick start with standard SPM config * Fix xcodegen config * Disable unused_parameter SwiftLint rule * Upgrade Needle and Nimble * Set Nimble to v13.4
1 parent 223dcaf commit 1006781

File tree

2 files changed

+22
-19
lines changed

2 files changed

+22
-19
lines changed

.github/workflows/genesis.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,8 @@ jobs:
4141
run: swift package resolve
4242
- name: Lint
4343
working-directory: ${{ steps.mktemp.outputs.directory }}
44-
run: |
45-
DIRECTORY_NAME=$(echo "${PWD##*/}" | tr '[:upper:]' '[:lower:]')
46-
"$(find ".build/artifacts/${DIRECTORY_NAME}" -type f -name swiftlint -perm +111 -print -quit)" \
44+
run: >
45+
"$(find ".build/artifacts/swiftlint" -type f -name swiftlint -perm +111 -print -quit)"
4746
lint --strict --reporter github-actions-logging
4847
- name: Resolve package dependencies
4948
working-directory: ${{ steps.mktemp.outputs.directory }}

genesis.yml

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
options:
22

3-
- question: "Nodes Version Requirement (up to next major):"
3+
- question: "Nodes Version:"
44
name: nodes
55
type: string
66
required: true
@@ -25,7 +25,7 @@ options:
2525
type: string
2626
required: true
2727

28-
- question: "[OPTIONAL] Nodes repository absolute file path (overrides Nodes version requirement):"
28+
- question: "[OPTIONAL] Nodes repository absolute file path (overrides Nodes version):"
2929
name: path
3030
type: string
3131
required: false
@@ -83,6 +83,7 @@ files:
8383
- contains_over_filter_is_empty
8484
- contains_over_first_not_nil
8585
- contains_over_range_nil_comparison
86+
# - contrasted_opening_brace
8687
- control_statement
8788
- convenience_type
8889
- custom_rules
@@ -123,6 +124,7 @@ files:
123124
# - file_name
124125
- file_name_no_space
125126
# - file_types_order
127+
- final_test_case
126128
- first_where
127129
- flatmap_over_map_reduce
128130
- for_where
@@ -174,11 +176,13 @@ files:
174176
- multiple_closures_with_trailing_closure
175177
- nesting
176178
- nimble_operator
179+
# - no_empty_block
177180
- no_extension_access_modifier
178181
- no_fallthrough_only
179182
# - no_grouping_extension
180183
# - no_magic_numbers
181184
- no_space_in_method_call
185+
- non_optional_string_data_conversion
182186
- non_overridable_class_declaration
183187
- notification_center_detachment
184188
- ns_number_init_as_function_reference
@@ -187,6 +191,7 @@ files:
187191
- nsobject_prefer_isequal
188192
- number_separator
189193
# - object_literal
194+
# - one_declaration_per_file
190195
- opening_brace
191196
- operator_usage_whitespace
192197
- operator_whitespace
@@ -196,6 +201,7 @@ files:
196201
- override_in_extension
197202
- pattern_matching_keywords
198203
- period_spacing
204+
- prefer_key_path
199205
- prefer_nimble
200206
- prefer_self_in_static_references
201207
- prefer_self_type_over_type_of_self
@@ -231,6 +237,7 @@ files:
231237
# - return_value_from_void_function
232238
- self_binding
233239
- self_in_property_initialization
240+
# - shorthand_argument
234241
- shorthand_operator
235242
- shorthand_optional_binding
236243
- single_test_class
@@ -239,6 +246,7 @@ files:
239246
- sorted_imports
240247
- statement_position
241248
- static_operator
249+
- static_over_final_class
242250
# - strict_fileprivate
243251
- strong_iboutlet
244252
- superfluous_disable_command
@@ -271,6 +279,7 @@ files:
271279
- unused_control_flow_label
272280
- unused_enumerated
273281
- unused_optional_binding
282+
# - unused_parameter
274283
- unused_setter_value
275284
- valid_ibinspectable
276285
- vertical_parameter_alignment
@@ -870,7 +879,7 @@ files:
870879

871880
- path: Package.swift
872881
contents: |
873-
// swift-tools-version:5.9
882+
// swift-tools-version:5.8
874883
875884
import PackageDescription
876885
@@ -883,14 +892,11 @@ files:
883892
path: "{{ path }}"),
884893
{% else %}
885894
url: "git@github.com:TinderApp/Nodes.git",
886-
from: "{{ nodes }}"),
895+
exact: "{{ nodes }}"),
887896
{% endif %}
888-
],
889-
targets: [
890-
.binaryTarget(
891-
name: "SwiftLintBinary-{{ project|replace:' ','_' }}",
892-
url: "https://github.com/realm/SwiftLint/releases/download/0.54.0/SwiftLintBinary-macos.artifactbundle.zip",
893-
checksum: "963121d6babf2bf5fd66a21ac9297e86d855cbc9d28322790646b88dceca00f1"),
897+
.package(
898+
url: "https://github.com/realm/SwiftLint.git",
899+
exact: "0.56.2"),
894900
]
895901
)
896902
@@ -1003,14 +1009,14 @@ files:
10031009
path: {{ path }}
10041010
{% else %}
10051011
url: git@github.com:TinderApp/Nodes.git
1006-
from: {{ nodes }}
1012+
version: {{ nodes }}
10071013
{% endif %}
10081014
NeedleFoundation:
10091015
url: https://github.com/uber/needle.git
1010-
from: 0.24.0
1016+
version: 0.25.1
10111017
Nimble:
10121018
url: https://github.com/Quick/Nimble.git
1013-
from: 13.0.0
1019+
version: 13.4.0
10141020
configFiles:
10151021
Debug: BuildSettings/Debug.xcconfig
10161022
Release: BuildSettings/Release.xcconfig
@@ -1124,9 +1130,7 @@ files:
11241130
# https://github.com/realm/SwiftLint/blob/0.52.4/Source/swiftlint/Commands/SwiftLint.swift#L8
11251131
unset BUILD_WORKSPACE_DIRECTORY
11261132
1127-
DIRECTORY_NAME="$(echo "${PWD##*/}" | tr '[:upper:]' '[:lower:]')"
1128-
1129-
"$(find ".build/artifacts/${DIRECTORY_NAME}" -type f -name swiftlint -perm +111 -print -quit)"
1133+
"$(find ".build/artifacts/swiftlint" -type f -name swiftlint -perm +111 -print -quit)"
11301134
else
11311135
echo "SwiftLint is skipped in CI."
11321136
fi

0 commit comments

Comments
 (0)