Skip to content

Commit 8161618

Browse files
Merge pull request #2476 from FarmBot/staging
v15.12.0
2 parents 11a6725 + b585809 commit 8161618

File tree

860 files changed

+7020
-2329
lines changed

Some content is hidden

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

860 files changed

+7020
-2329
lines changed

.ruby-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.3.6
1+
3.3.7

Gemfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
source "https://rubygems.org"
2-
ruby "~> 3.3.6"
2+
ruby "~> 3.3.7"
33

44
gem "rails", "~> 6"
55
gem "active_model_serializers"
@@ -11,6 +11,7 @@ gem "discard"
1111
gem "google-cloud-storage", "~> 1.11"
1212
gem "jwt"
1313
gem "kaminari"
14+
gem "logger"
1415
gem "mutations"
1516
gem "pg"
1617
gem "rabbitmq_http_api_client"

Gemfile.lock

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ GEM
7171
ast (2.4.2)
7272
base64 (0.2.0)
7373
bcrypt (3.1.20)
74-
bigdecimal (3.1.8)
74+
bigdecimal (3.1.9)
7575
builder (3.3.0)
7676
bunny (2.23.0)
7777
amq-protocol (~> 2.3, >= 2.3.1)
@@ -80,7 +80,7 @@ GEM
8080
activesupport
8181
climate_control (1.2.0)
8282
coderay (1.1.3)
83-
concurrent-ruby (1.3.4)
83+
concurrent-ruby (1.3.5)
8484
crack (1.0.0)
8585
bigdecimal
8686
rexml
@@ -105,21 +105,21 @@ GEM
105105
responders
106106
warden (~> 1.2.3)
107107
diff-lcs (1.5.1)
108-
digest-crc (0.6.5)
108+
digest-crc (0.7.0)
109109
rake (>= 12.0.0, < 14.0.0)
110110
discard (1.4.0)
111111
activerecord (>= 4.2, < 9.0)
112112
docile (1.4.1)
113113
e2mmap (0.1.0)
114-
erubi (1.13.0)
114+
erubi (1.13.1)
115115
factory_bot (6.5.0)
116116
activesupport (>= 5.0.0)
117117
factory_bot_rails (6.4.4)
118118
factory_bot (~> 6.5)
119119
railties (>= 5.0.0)
120120
faker (3.5.1)
121121
i18n (>= 1.8.11, < 2)
122-
faraday (2.12.1)
122+
faraday (2.12.2)
123123
faraday-net_http (>= 2.0, < 3.5)
124124
json
125125
logger
@@ -129,7 +129,7 @@ GEM
129129
net-http (>= 0.5.0)
130130
globalid (1.2.1)
131131
activesupport (>= 6.1)
132-
google-apis-core (0.15.1)
132+
google-apis-core (0.16.0)
133133
addressable (~> 2.5, >= 2.5.1)
134134
googleauth (~> 1.9)
135135
httpclient (>= 2.8.3, < 3.a)
@@ -139,15 +139,15 @@ GEM
139139
retriable (>= 2.0, < 4.a)
140140
google-apis-iamcredentials_v1 (0.22.0)
141141
google-apis-core (>= 0.15.0, < 2.a)
142-
google-apis-storage_v1 (0.48.0)
142+
google-apis-storage_v1 (0.49.0)
143143
google-apis-core (>= 0.15.0, < 2.a)
144144
google-cloud-core (1.7.1)
145145
google-cloud-env (>= 1.0, < 3.a)
146146
google-cloud-errors (~> 1.0)
147147
google-cloud-env (2.2.1)
148148
faraday (>= 1.0, < 3.a)
149149
google-cloud-errors (1.4.0)
150-
google-cloud-storage (1.53.0)
150+
google-cloud-storage (1.54.0)
151151
addressable (~> 2.8)
152152
digest-crc (~> 0.4)
153153
google-apis-core (~> 0.13)
@@ -156,21 +156,23 @@ GEM
156156
google-cloud-core (~> 1.6)
157157
googleauth (~> 1.9)
158158
mini_mime (~> 1.0)
159-
googleauth (1.11.2)
159+
google-logging-utils (0.1.0)
160+
googleauth (1.13.1)
160161
faraday (>= 1.0, < 3.a)
161-
google-cloud-env (~> 2.1)
162+
google-cloud-env (~> 2.2)
163+
google-logging-utils (~> 0.1)
162164
jwt (>= 1.4, < 3.0)
163165
multi_json (~> 1.11)
164166
os (>= 0.9, < 2.0)
165167
signet (>= 0.16, < 2.a)
166168
hashdiff (1.1.2)
167169
hashie (4.1.0)
168170
httpclient (2.8.3)
169-
i18n (1.14.6)
171+
i18n (1.14.7)
170172
concurrent-ruby (~> 1.0)
171-
json (2.9.0)
173+
json (2.9.1)
172174
jsonapi-renderer (0.2.2)
173-
jwt (2.9.3)
175+
jwt (2.10.1)
174176
base64
175177
kaminari (1.2.2)
176178
activesupport (>= 4.1.0)
@@ -184,13 +186,13 @@ GEM
184186
activerecord
185187
kaminari-core (= 1.2.2)
186188
kaminari-core (1.2.2)
187-
logger (1.6.2)
189+
logger (1.6.5)
188190
lograge (0.14.0)
189191
actionpack (>= 4)
190192
activesupport (>= 4)
191193
railties (>= 4)
192194
request_store (~> 1.0)
193-
loofah (2.23.1)
195+
loofah (2.24.0)
194196
crass (~> 1.0.2)
195197
nokogiri (>= 1.12.0)
196198
mail (2.8.1)
@@ -208,7 +210,7 @@ GEM
208210
mutex_m (0.3.0)
209211
net-http (0.6.0)
210212
uri
211-
net-imap (0.5.1)
213+
net-imap (0.5.5)
212214
date
213215
net-protocol
214216
net-pop (0.1.2)
@@ -218,21 +220,21 @@ GEM
218220
net-smtp (0.5.0)
219221
net-protocol
220222
nio4r (2.7.4)
221-
nokogiri (1.16.8-aarch64-linux)
223+
nokogiri (1.18.2-aarch64-linux-gnu)
222224
racc (~> 1.4)
223-
nokogiri (1.16.8-x86_64-linux)
225+
nokogiri (1.18.2-x86_64-linux-gnu)
224226
racc (~> 1.4)
225227
orm_adapter (0.5.0)
226228
os (1.1.4)
227-
parser (3.3.6.0)
229+
parser (3.3.7.0)
228230
ast (~> 2.4.1)
229231
racc
230232
passenger (6.0.23)
231233
rack (>= 1.6.13)
232234
rackup
233235
rake (>= 12.3.3)
234236
pg (1.5.9)
235-
pry (0.15.0)
237+
pry (0.15.2)
236238
coderay (~> 1.1)
237239
method_source (~> 1.0)
238240
pry-rails (0.3.11)
@@ -250,7 +252,7 @@ GEM
250252
rack (>= 1.0, < 4)
251253
rack-cors (2.0.2)
252254
rack (>= 2.0.0)
253-
rack-test (2.1.0)
255+
rack-test (2.2.0)
254256
rack (>= 1.3)
255257
rackup (1.0.1)
256258
rack (< 3)
@@ -274,7 +276,7 @@ GEM
274276
activesupport (>= 5.0.0)
275277
minitest
276278
nokogiri (>= 1.6)
277-
rails-html-sanitizer (1.6.1)
279+
rails-html-sanitizer (1.6.2)
278280
loofah (~> 2.21)
279281
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
280282
rails_12factor (0.0.3)
@@ -301,7 +303,7 @@ GEM
301303
actionpack (>= 5.2)
302304
railties (>= 5.2)
303305
retriable (3.1.2)
304-
rexml (3.3.9)
306+
rexml (3.4.0)
305307
rollbar (3.6.0)
306308
rspec (3.13.0)
307309
rspec-core (~> 3.13.0)
@@ -329,9 +331,9 @@ GEM
329331
scenic (1.8.0)
330332
activerecord (>= 4.0.0)
331333
railties (>= 4.0.0)
332-
scout_apm (5.4.0)
334+
scout_apm (5.6.0)
333335
parser
334-
secure_headers (7.0.0)
336+
secure_headers (7.1.0)
335337
set (1.1.1)
336338
signet (0.19.0)
337339
addressable (~> 2.8)
@@ -360,11 +362,11 @@ GEM
360362
thor (1.3.2)
361363
thwait (0.2.0)
362364
e2mmap
363-
timeout (0.4.2)
365+
timeout (0.4.3)
364366
trailblazer-option (0.1.2)
365367
tzinfo (2.0.6)
366368
concurrent-ruby (~> 1.0)
367-
tzinfo-data (1.2024.2)
369+
tzinfo-data (1.2025.1)
368370
tzinfo (>= 1.0.0)
369371
uber (0.1.0)
370372
uri (1.0.2)
@@ -378,7 +380,8 @@ GEM
378380
crack (>= 0.3.2)
379381
hashdiff (>= 0.4.0, < 2.0.0)
380382
webrick (1.9.1)
381-
websocket-driver (0.7.6)
383+
websocket-driver (0.7.7)
384+
base64
382385
websocket-extensions (>= 0.1.0)
383386
websocket-extensions (0.1.5)
384387
zeitwerk (2.7.1)
@@ -402,6 +405,7 @@ DEPENDENCIES
402405
hashdiff
403406
jwt
404407
kaminari
408+
logger
405409
lograge
406410
mutations
407411
passenger
@@ -431,7 +435,7 @@ DEPENDENCIES
431435
webmock
432436

433437
RUBY VERSION
434-
ruby 3.3.6p108
438+
ruby 3.3.7p123
435439

436440
BUNDLED WITH
437-
2.5.23
441+
2.6.2

config/application.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ class Application < Rails::Application
7777
ENV["MQTT_HOST"],
7878
"api.github.com",
7979
"raw.githubusercontent.com",
80-
"openfarm.cc",
8180
"api.rollbar.com",
8281
PARCELJS_URL,
8382
ENV["FORCE_SSL"] ? "wss:" : "ws:",

config/boot.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
33

44
require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
5+
require 'logger'

docker_configs/api.Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ruby:3.3.6
1+
FROM ruby:3.3.7
22
RUN curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg > /dev/null && \
33
sh -c '. /etc/os-release; echo $VERSION_CODENAME; echo "deb http://apt.postgresql.org/pub/repos/apt/ $VERSION_CODENAME-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' && \
44
apt-get update -qq && apt-get install -y build-essential libpq-dev postgresql postgresql-contrib && \

frontend/__test_support__/additional_mocks.tsx

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,6 @@ jest.mock("browser-speech", () => ({
44
talk: jest.fn(),
55
}));
66

7-
jest.mock("../open_farm/cached_crop", () => ({
8-
cachedCrop: jest.fn(() => Promise.resolve({ svg_icon: "icon" })),
9-
}));
10-
117
const { ancestorOrigins } = window.location;
128
delete (window as { location: Location | undefined }).location;
139
window.location = {

frontend/__test_support__/fake_crop_search_result.ts

Lines changed: 0 additions & 23 deletions
This file was deleted.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import { Crops } from "../crops/interfaces";
2+
3+
export const FAKE_CROPS: Crops = {
4+
"mint": {
5+
name: "Mint",
6+
binomial_name: "Mentha spicata",
7+
common_names: ["Mint", "spearmint"],
8+
description: "Mint is a perennial herb with a distinctive taste.",
9+
sun_requirements: "Partial sun",
10+
sowing_method: "Direct seed indoors or outside",
11+
spread: 100,
12+
row_spacing: 100,
13+
height: 60,
14+
growing_degree_days: 100,
15+
companions: ["strawberry"],
16+
image: "/crops/images/mint.jpg",
17+
icon: "/crops/icons/mint.avif"
18+
},
19+
"strawberry": {
20+
name: "Strawberry",
21+
binomial_name: "",
22+
common_names: [],
23+
description: "",
24+
sun_requirements: "",
25+
sowing_method: "",
26+
spread: 25,
27+
row_spacing: 35,
28+
height: 60,
29+
growing_degree_days: 100,
30+
companions: [],
31+
icon: "",
32+
image: "",
33+
},
34+
"generic-plant": {
35+
name: "",
36+
binomial_name: "",
37+
common_names: [],
38+
description: "",
39+
sun_requirements: "",
40+
sowing_method: "",
41+
spread: 0,
42+
row_spacing: 0,
43+
height: 0,
44+
growing_degree_days: 0,
45+
companions: [],
46+
icon: "",
47+
image: "",
48+
},
49+
};

frontend/__test_support__/fake_designer_state.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ export const fakeDesignerState = (): DesignerState => ({
77
selectionPointType: undefined,
88
hoveredPlant: {
99
plantUUID: undefined,
10-
icon: ""
1110
},
1211
hoveredPoint: undefined,
1312
hoveredPlantListItem: undefined,
@@ -16,8 +15,6 @@ export const fakeDesignerState = (): DesignerState => ({
1615
hoveredImage: undefined,
1716
hoveredSpread: undefined,
1817
cropSearchQuery: "",
19-
cropSearchResults: [],
20-
cropSearchInProgress: false,
2118
companionIndex: undefined,
2219
plantTypeChangeId: undefined,
2320
bulkPlantSlug: undefined,
@@ -52,6 +49,7 @@ export const fakeDesignerState = (): DesignerState => ({
5249
cropHeightCurveId: undefined,
5350
cropStage: undefined,
5451
cropPlantedAt: undefined,
52+
cropRadius: undefined,
5553
distanceIndicator: "",
5654
panelOpen: true,
5755
});

0 commit comments

Comments
 (0)