2
2
3
3
## 21.0-SNAPSHOT - unreleased
4
4
5
+ ### ⚙️ Technical
6
+
7
+ * Websockets are now enabled by default. To disable, add ` hoist.enableWebSockets = false ` to your
8
+ project's ` application.groovy ` file (note the lowercase "a" to ensure you have the correct one).
9
+
5
10
## 20.1.0 - 2024-06-21
6
11
7
12
### 🎁 New Features
8
13
9
- * LdapService ` searchOne ` and ` searchMany ` methods have been made public.
10
- * LdapPerson class now includes ` displayName ` , ` givenname ` , and ` sn ` fields.
14
+ * ` LdapService. searchOne` and ` searchMany ` methods have been made public.
15
+ * ` LdapPerson ` class now includes ` displayName ` , ` givenname ` , and ` sn ` fields.
11
16
12
17
### 🐞 Bug Fixes
13
18
14
- * LdapPerson class ` email ` key changed to ` mail ` to match LDAP attribute.
19
+ * ` LdapPerson ` class ` email ` field changed to ` mail ` to match LDAP attribute.
15
20
16
21
## 20.0.2 - 2024-06-05
17
22
18
23
### 🐞 Bug Fixes
19
24
20
- * BaseProxyService now correctly handles responses without content.
21
- * BaseProxyService now properly supports caching the underlying HttpClient between
22
- requests. This defaults to ` false ` to reflect current behavior, but may be
23
- overridden to ` true ` .
25
+ * ` BaseProxyService ` now correctly handles responses without content.
26
+ * ` BaseProxyService ` now properly supports caching the underlying ` HttpClient ` between requests.
27
+ This defaults to ` false ` to reflect current behavior, but may be overridden to enable.
24
28
25
29
### ⚙️ Technical
26
30
@@ -46,8 +50,8 @@ See the new `ClusterService.groovy` service, which provides the clustering imple
46
50
API entry point for accessing the cluster.
47
51
48
52
Many apps will * not* need to implement significant changes to run with multiple instances. Hoist
49
- will setup the cluster, elect a primary instance, provide cluster-aware Hibernate caching and logging,
50
- and ensure cross-server consistency for its own APIs.
53
+ will setup the cluster, elect a primary instance, provide cluster-aware Hibernate caching and
54
+ logging, and ensure cross-server consistency for its own APIs.
51
55
52
56
However, complex applications -- notably those that maintain significant server-side state or use
53
57
their server to interact within external systems -- should take care to ensure the app is safe to
@@ -65,7 +69,7 @@ Please contact XH to review your app's readiness for multi-instance operation!
65
69
monitors to track core app health metrics. Extend this new superclass in your
66
70
app's ` MonitorDefinitionService ` to enable support for these new monitors.
67
71
* Includes new support for dynamic configuration of client-side authentication libraries. See new
68
- method ` Authentication.getClientConfig() ` .
72
+ method ` Authentication.getClientConfig() ` .
69
73
70
74
### 💥 Breaking Changes (upgrade difficulty: 🟠 MEDIUM / 🟢 LOW for apps with minimal custom server-side functionality)
71
75
@@ -97,7 +101,7 @@ Please contact XH to review your app's readiness for multi-instance operation!
97
101
most applications.
98
102
* ` Utils.dataSource` now returns a reference to the actual ` javax.sql.DataSource.DataSource` .
99
103
Use ` Utils.dataSourceConfig` to access the previous return of this method (DS config, as a map).
100
- * Apps must replace the ` buildProperties.doLast` block at the bottom of their ` build.gradle` file with
104
+ * Apps must replace the ` buildProperties.doLast` block at the bottom of their ` build.gradle` with:
101
105
` ` ` groovy
102
106
tasks.war.doFirst {
103
107
File infoFile = layout.buildDirectory.file('resources/main/META-INF/grails.build.info').get().asFile
@@ -122,6 +126,7 @@ Please contact XH to review your app's readiness for multi-instance operation!
122
126
Please ensure you review and update your `gradle.properties` and `gradle-wrapper.properties` files.
123
127
124
128
In `gradle.properties` (partial contents of this file, with updated libraries only):
129
+
125
130
```properties
126
131
groovyVersion=3.0.21
127
132
grailsVersion=6.2.0
@@ -133,6 +138,7 @@ hazelcast.version=5.3.7
133
138
134
139
In `/gradle/wrapper/gradle-wrapper.properties` (note your app might have an internal artifact repo
135
140
in place of services.gradle.org - leave that as-is, updating the version only to 7.6.4):
141
+
136
142
```properties
137
143
distributionUrl=https\: //services.gradle.org/distributions/gradle-7.6.4-bin.zip
138
144
```
0 commit comments