Skip to content

Commit 454b236

Browse files
release: 0.1.0-alpha.1 (#2)
* feat(api): manual updates (#1) * release: 0.1.0-alpha.1 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent 0c9aaf4 commit 454b236

File tree

539 files changed

+55566
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

539 files changed

+55566
-2
lines changed

.github/workflows/ci.yml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: CI
2+
on:
3+
push:
4+
branches:
5+
- main
6+
pull_request:
7+
branches:
8+
- main
9+
- next
10+
11+
jobs:
12+
lint:
13+
name: lint
14+
runs-on: ubuntu-latest
15+
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
- name: Set up Ruby
20+
uses: ruby/setup-ruby@v1
21+
with:
22+
bundler-cache: false
23+
ruby-version: '3.1'
24+
- run: |-
25+
bundle install
26+
27+
- name: Run lints
28+
run: ./scripts/lint
29+
test:
30+
name: test
31+
runs-on: ubuntu-latest
32+
33+
steps:
34+
- uses: actions/checkout@v4
35+
- name: Set up Ruby
36+
uses: ruby/setup-ruby@v1
37+
with:
38+
bundler-cache: false
39+
ruby-version: '3.1'
40+
- run: |-
41+
bundle install
42+
43+
- name: Run tests
44+
run: ./scripts/test
45+

.github/workflows/publish-gem.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# This workflow is triggered when a GitHub release is created.
2+
# It can also be run manually to re-publish to rubygems.org in case it failed for some reason.
3+
# You can run this workflow by navigating to https://www.github.com/Finch-API/finch-api-python/actions/workflows/publish-gem.yml
4+
name: Publish Gem
5+
on:
6+
workflow_dispatch:
7+
8+
release:
9+
types: [published]
10+
11+
jobs:
12+
publish:
13+
name: publish
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- uses: actions/checkout@v4
18+
- name: Set up Ruby
19+
uses: ruby/setup-ruby@v1
20+
with:
21+
bundler-cache: false
22+
ruby-version: '3.1'
23+
- run: |-
24+
bundle install
25+
26+
- name: Publish to RubyGems.org
27+
run: |
28+
bash ./bin/publish-gem
29+
env:
30+
# `RUBYGEMS_HOST` is only required for private gem repositories, not https://rubygems.org
31+
RUBYGEMS_HOST: ${{ secrets.FINCH_RUBYGEMS_HOST || secrets.RUBYGEMS_HOST }}
32+
GEM_HOST_API_KEY: ${{ secrets.FINCH_GEM_HOST_API_KEY || secrets.GEM_HOST_API_KEY }}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: Release Doctor
2+
on:
3+
pull_request:
4+
branches:
5+
- main
6+
workflow_dispatch:
7+
8+
jobs:
9+
release_doctor:
10+
name: release doctor
11+
runs-on: ubuntu-latest
12+
if: github.repository == 'Finch-API/finch-api-ruby' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')
13+
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
- name: Check release environment
18+
run: |
19+
bash ./bin/check-release-environment
20+
env:
21+
RUBYGEMS_HOST: ${{ secrets.FINCH_RUBYGEMS_HOST || secrets.RUBYGEMS_HOST }}
22+
GEM_HOST_API_KEY: ${{ secrets.FINCH_GEM_HOST_API_KEY || secrets.GEM_HOST_API_KEY }}

.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
.prism.log
2+
.idea/
3+
.ruby-lsp/
4+
.yardoc/
5+
doc/
6+
sorbet/
7+
Brewfile.lock.json
8+
bin/tapioca
9+
*.gem

.release-please-manifest.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "0.1.0-alpha.1"
3+
}

.rubocop.yml

Lines changed: 212 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,212 @@
1+
---
2+
# Explicitly disable pending cops for now. This is the default behaviour but
3+
# this avoids a large warning every time we run it.
4+
# Stop RuboCop nagging about rubocop-rake.
5+
# Ensure that RuboCop validates according to the lowest version of Ruby that we support.
6+
AllCops:
7+
Exclude:
8+
- "bin/*"
9+
NewCops: enable
10+
SuggestExtensions: false
11+
TargetRubyVersion: 3.1.0
12+
13+
# Don't require this extra line break, it can be excessive.
14+
Layout/EmptyLineAfterGuardClause:
15+
Enabled: false
16+
17+
# Don't leave complex assignment values hanging off to the right.
18+
Layout/EndAlignment:
19+
EnforcedStyleAlignWith: variable
20+
21+
Layout/FirstArrayElementLineBreak:
22+
Enabled: true
23+
24+
Layout/FirstHashElementLineBreak:
25+
Enabled: true
26+
27+
Layout/FirstMethodArgumentLineBreak:
28+
Enabled: true
29+
30+
Layout/FirstMethodParameterLineBreak:
31+
Enabled: true
32+
33+
# Set a reasonable line length; rely on other cops to correct long lines.
34+
Layout/LineLength:
35+
AllowedPatterns:
36+
- "^\\s*#.*$"
37+
- ^require(_relative)?
38+
- "FinchAPI::(Models|Resources)::"
39+
Max: 110
40+
41+
Layout/MultilineArrayLineBreaks:
42+
Enabled: true
43+
44+
# Start the assignment on the same line variable is mentioned.
45+
Layout/MultilineAssignmentLayout:
46+
EnforcedStyle: same_line
47+
48+
Layout/MultilineHashKeyLineBreaks:
49+
Enabled: true
50+
51+
Layout/MultilineMethodArgumentLineBreaks:
52+
Enabled: true
53+
54+
Layout/MultilineMethodParameterLineBreaks:
55+
Enabled: true
56+
57+
# Prefer compact hash literals.
58+
Layout/SpaceInsideHashLiteralBraces:
59+
EnforcedStyle: no_space
60+
61+
Lint/MissingSuper:
62+
Exclude:
63+
- "**/*.rbi"
64+
65+
# Disabled for safety reasons, this option changes code semantics.
66+
Lint/UnusedMethodArgument:
67+
AutoCorrect: false
68+
69+
Metrics/AbcSize:
70+
Enabled: false
71+
72+
Metrics/ClassLength:
73+
Enabled: false
74+
75+
Metrics/CyclomaticComplexity:
76+
Enabled: false
77+
78+
Metrics/MethodLength:
79+
Enabled: false
80+
81+
Metrics/ParameterLists:
82+
Enabled: false
83+
84+
Metrics/PerceivedComplexity:
85+
Enabled: false
86+
87+
Naming/BlockForwarding:
88+
Exclude:
89+
- "**/*.rbi"
90+
91+
Naming/MethodParameterName:
92+
Exclude:
93+
- "**/*.rbi"
94+
95+
Naming/VariableNumber:
96+
Enabled: false
97+
98+
# Nothing wrong with inline private methods.
99+
Style/AccessModifierDeclarations:
100+
Enabled: false
101+
102+
Style/AccessorGrouping:
103+
Exclude:
104+
- "**/*.rbi"
105+
106+
# Behaviour of alias_method is more predictable.
107+
Style/Alias:
108+
EnforcedStyle: prefer_alias_method
109+
110+
# And/or have confusing precedence, avoid them.
111+
Style/AndOr:
112+
EnforcedStyle: always
113+
114+
Style/BisectedAttrAccessor:
115+
Exclude:
116+
- "**/*.rbi"
117+
118+
# Fairly useful in tests for pattern matching.
119+
Style/CaseEquality:
120+
Exclude:
121+
- "test/**/*"
122+
123+
# We prefer nested modules in lib/, but are currently using compact style for tests.
124+
Style/ClassAndModuleChildren:
125+
Exclude:
126+
- "test/**/*"
127+
128+
# We should go back and add these docs, but ignore for now.
129+
Style/Documentation:
130+
Enabled: false
131+
132+
# Allow explicit empty elses, for clarity.
133+
Style/EmptyElse:
134+
Enabled: false
135+
136+
Style/EmptyMethod:
137+
Exclude:
138+
- "**/*.rbi"
139+
140+
# We commonly use ENV['KEY'], it's OK.
141+
Style/FetchEnvVar:
142+
Enabled: false
143+
144+
# Just to be safe, ensure nobody is mutating our internal strings.
145+
Style/FrozenStringLiteralComment:
146+
EnforcedStyle: always
147+
Exclude:
148+
- "**/*.rbi"
149+
150+
# Nothing wrong with clear if statements.
151+
Style/IfUnlessModifier:
152+
Enabled: false
153+
154+
# Rubocop is pretty bad about mangling single line lambdas.
155+
Style/Lambda:
156+
Enabled: false
157+
158+
# Prefer consistency in method calling syntax.
159+
Style/MethodCallWithArgsParentheses:
160+
AllowedMethods:
161+
- raise
162+
Enabled: true
163+
Exclude:
164+
- "**/*.gemspec"
165+
166+
# Perfectly fine.
167+
Style/MultipleComparison:
168+
Enabled: false
169+
170+
Style/MutableConstant:
171+
Exclude:
172+
- "**/*.rbi"
173+
174+
# Not all parameters should be named.
175+
Style/NumberedParameters:
176+
Enabled: false
177+
178+
Style/NumberedParametersLimit:
179+
Max: 2
180+
181+
# Reasonable to use brackets for errors with long messages.
182+
Style/RaiseArgs:
183+
Enabled: false
184+
185+
# Be explicit about `RuntimeError`s.
186+
Style/RedundantException:
187+
Enabled: false
188+
189+
Style/RedundantInitialize:
190+
Exclude:
191+
- "**/*.rbi"
192+
193+
# Prefer slashes for regex literals.
194+
Style/RegexpLiteral:
195+
EnforcedStyle: slashes
196+
197+
# Allow explicit ifs, especially for imperative use.
198+
Style/SafeNavigation:
199+
Enabled: false
200+
201+
# We use these sparingly, where we anticipate future branches for the
202+
# inner conditional.
203+
Style/SoleNestedConditional:
204+
Enabled: false
205+
206+
# Prefer double quotes so that interpolation can be easily added.
207+
Style/StringLiterals:
208+
EnforcedStyle: double_quotes
209+
210+
# Prefer explicit symbols for clarity; you can search for `:the_symbol`.
211+
Style/SymbolArray:
212+
EnforcedStyle: brackets

.stats.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
configured_endpoints: 41
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/finch%2Ffinch-7a816d4a5f0039230590a6662f3513d5756344ca662761ecbc49016593f65836.yml

.yardopts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
--markup markdown

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Changelog
2+
3+
## 0.1.0-alpha.1 (2025-03-05)
4+
5+
Full Changelog: [v0.0.1-alpha.0...v0.1.0-alpha.1](https://github.com/Finch-API/finch-api-ruby/compare/v0.0.1-alpha.0...v0.1.0-alpha.1)
6+
7+
### Features
8+
9+
* **api:** manual updates ([#1](https://github.com/Finch-API/finch-api-ruby/issues/1)) ([4273cd2](https://github.com/Finch-API/finch-api-ruby/commit/4273cd2fd27dfb2c0d3c4f73ec0169ff1dfbd501))

Gemfile

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# frozen_string_literal: true
2+
3+
source "https://rubygems.org"
4+
5+
gemspec
6+
7+
group :development do
8+
gem "async"
9+
gem "minitest"
10+
gem "minitest-focus"
11+
gem "minitest-hooks"
12+
gem "minitest-proveit"
13+
gem "minitest-rg"
14+
gem "rake"
15+
gem "rbs"
16+
gem "rubocop"
17+
gem "sorbet"
18+
gem "steep"
19+
gem "syntax_tree"
20+
# TODO: using a fork for now, the prettier below has a bug
21+
gem "syntax_tree-rbs", github: "stainless-api/syntax_tree-rbs", branch: "main"
22+
gem "tapioca"
23+
gem "webrick"
24+
gem "yard"
25+
end

0 commit comments

Comments
 (0)