aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2019-10-21 12:35:39 +0300
committerGravatar Vitaly Takmazov2019-10-21 12:35:39 +0300
commitd3648888eaea9904fb3b806d56b22827c7614f54 (patch)
tree7b320943f31e884cef4a667d3b77b329a048fd7a
parent3799b41149c304721b63c7e36e509cd5865ca9fb (diff)
Spring Boot 2.2
-rw-r--r--build.gradle10
-rw-r--r--gradle/wrapper/gradle-wrapper.properties2
-rw-r--r--package.json14
-rw-r--r--src/main/java/com/juick/server/api/Messages.java2
-rw-r--r--src/main/java/com/juick/server/api/Notifications.java12
-rw-r--r--src/main/java/com/juick/server/api/PM.java6
-rw-r--r--src/main/java/com/juick/server/api/Post.java4
-rw-r--r--src/main/java/com/juick/server/api/Tags.java2
-rw-r--r--src/main/java/com/juick/server/api/Users.java8
-rw-r--r--src/main/java/com/juick/server/api/activity/Profile.java2
-rw-r--r--src/main/resources/application.properties1
-rw-r--r--src/test/java/com/juick/FormatterTest.java8
-rw-r--r--src/test/java/com/juick/MessageTest.java8
-rw-r--r--src/test/java/com/juick/server/tests/ServerTests.java25
-rw-r--r--yarn.lock145
15 files changed, 149 insertions, 100 deletions
diff --git a/build.gradle b/build.gradle
index 53a41e2b..6218cdde 100644
--- a/build.gradle
+++ b/build.gradle
@@ -4,12 +4,12 @@ buildscript {
jcenter()
}
dependencies {
- classpath 'com.github.ben-manes:gradle-versions-plugin:0.25.0'
+ classpath 'com.github.ben-manes:gradle-versions-plugin:0.27.0'
classpath 'io.github.swagger2markup:swagger2markup-gradle-plugin:1.3.3'
}
}
plugins {
- id 'org.springframework.boot' version '2.1.8.RELEASE' apply false
+ id 'org.springframework.boot' version '2.2.0.RELEASE' apply false
id "com.moowork.node" version "1.3.1" apply false
id("org.asciidoctor.convert") version "2.3.0" apply false
}
@@ -134,7 +134,7 @@ dependencies {
compileOnly 'io.springfox:springfox-core:2.9.2'
compile 'org.apache.commons:commons-email:1.5'
- compile 'com.github.scribejava:scribejava-apis:6.8.1'
+ compile 'com.github.scribejava:scribejava-apis:6.9.0'
compile 'com.github.pengrad:java-telegram-bot-api:4.4.0'
compile 'com.twelvemonkeys.imageio:imageio-jpeg:3.4.2'
compile 'org.imgscalr:imgscalr-lib:4.2'
@@ -148,9 +148,9 @@ dependencies {
compile 'com.rometools:rome:1.12.2'
compile 'com.rometools:rome-modules:1.12.2'
- compile 'org.flywaydb:flyway-core:5.2.4'
+ compile 'org.flywaydb:flyway-core:6.0.7'
- runtime 'org.mariadb.jdbc:mariadb-java-client:2.4.4'
+ runtime 'org.mariadb.jdbc:mariadb-java-client:2.5.1'
runtime 'net.java.dev.jna:jna:5.4.0'
runtime 'net.java.dev.jna:jna-platform:5.4.0'
runtime 'com.h2database:h2:1.4.199'
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index ca9d6281..3a54a333 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.3-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/package.json b/package.json
index 0ce9b803..39e9b38d 100644
--- a/package.json
+++ b/package.json
@@ -23,12 +23,12 @@
]
},
"devDependencies": {
- "@babel/core": "^7.6.2",
- "@babel/preset-env": "^7.6.2",
+ "@babel/core": "^7.6.4",
+ "@babel/preset-env": "^7.6.3",
"babel-loader": "^8.0.6",
- "core-js": "^3.2.1",
+ "core-js": "^3.3.2",
"css-loader": "^3.2.0",
- "eslint": "6.5.0",
+ "eslint": "6.5.1",
"eslint-loader": "3.0.2",
"eslint-plugin-only-ascii": "0.0.0",
"mini-css-extract-plugin": "^0.8.0",
@@ -37,10 +37,10 @@
"postcss-preset-env": "^6.7.0",
"regenerator-runtime": "^0.13.3",
"style-loader": "^1.0.0",
- "stylelint": "^11.0.0",
+ "stylelint": "^11.1.1",
"stylelint-config-standard": "^19.0.0",
- "url-loader": "^2.1.0",
- "webpack": "^4.41.0",
+ "url-loader": "^2.2.0",
+ "webpack": "^4.41.2",
"webpack-cli": "^3.3.9"
},
"dependencies": {
diff --git a/src/main/java/com/juick/server/api/Messages.java b/src/main/java/com/juick/server/api/Messages.java
index 1c9e37ad..f7b8c156 100644
--- a/src/main/java/com/juick/server/api/Messages.java
+++ b/src/main/java/com/juick/server/api/Messages.java
@@ -49,7 +49,7 @@ import java.util.stream.Collectors;
* @author ugnich
*/
@RestController
-@RequestMapping(produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+@RequestMapping(produces = MediaType.APPLICATION_JSON_VALUE)
public class Messages {
private static final ResponseEntity<List<com.juick.Message>> NOT_FOUND = ResponseEntity
diff --git a/src/main/java/com/juick/server/api/Notifications.java b/src/main/java/com/juick/server/api/Notifications.java
index f2c2d712..72988298 100644
--- a/src/main/java/com/juick/server/api/Notifications.java
+++ b/src/main/java/com/juick/server/api/Notifications.java
@@ -84,7 +84,7 @@ public class Notifications {
}
@ApiIgnore
- @RequestMapping(value = "/api/notifications", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/notifications", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<List<User>> doGet(
@Visitor User visitor,
@RequestParam(required = false, defaultValue = "0") int uid,
@@ -119,7 +119,7 @@ public class Notifications {
}
@ApiIgnore
- @RequestMapping(value = "/api/notifications", method = RequestMethod.DELETE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/notifications", method = RequestMethod.DELETE, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Status> doDelete(
@Visitor User visitor,
@RequestBody List<ExternalToken> list) {
@@ -145,7 +145,7 @@ public class Notifications {
return ResponseEntity.ok(Status.OK);
}
@ApiIgnore
- @RequestMapping(value = "/api/notifications/delete", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/notifications/delete", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Status> doDeleteTokens(
@Visitor User visitor,
@RequestBody List<ExternalToken> list) {
@@ -172,7 +172,7 @@ public class Notifications {
}
@ApiIgnore
- @RequestMapping(value = "/api/notifications", method = RequestMethod.PUT, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/notifications", method = RequestMethod.PUT, produces = MediaType.APPLICATION_JSON_VALUE)
public Status doPut(
@Visitor User visitor,
@RequestBody List<ExternalToken> list) throws IOException {
@@ -195,7 +195,7 @@ public class Notifications {
}
@Deprecated
- @RequestMapping(value = "/api/android/register", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/android/register", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public Status doAndroidRegister(
@Visitor User visitor,
@RequestParam(name = "regid") String regId) {
@@ -204,7 +204,7 @@ public class Notifications {
}
@Deprecated
- @RequestMapping(value = "/api/winphone/register", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/winphone/register", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public Status doWinphoneRegister(
@Visitor User visitor,
@RequestParam(name = "url") String regId) {
diff --git a/src/main/java/com/juick/server/api/PM.java b/src/main/java/com/juick/server/api/PM.java
index 4a408dce..6e6cdcac 100644
--- a/src/main/java/com/juick/server/api/PM.java
+++ b/src/main/java/com/juick/server/api/PM.java
@@ -55,7 +55,7 @@ public class PM {
@Inject
private WebApp webApp;
- @RequestMapping(value = "/api/pm", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/pm", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public List<com.juick.Message> doGetPM(
@Visitor User visitor,
@RequestParam(required = false) String uname) {
@@ -73,7 +73,7 @@ public class PM {
return msgs;
}
- @RequestMapping(value = "/api/pm", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/pm", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
public com.juick.Message doPostPM(
@Visitor User visitor,
@RequestParam String uname,
@@ -105,7 +105,7 @@ public class PM {
}
throw new HttpBadRequestException();
}
- @RequestMapping(value = "/api/groups_pms", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/groups_pms", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public PrivateChats doGetGroupsPMs(
@Visitor User visitor,
@RequestParam(defaultValue = "5") int cnt) {
diff --git a/src/main/java/com/juick/server/api/Post.java b/src/main/java/com/juick/server/api/Post.java
index 10e19faf..59bd05a7 100644
--- a/src/main/java/com/juick/server/api/Post.java
+++ b/src/main/java/com/juick/server/api/Post.java
@@ -67,7 +67,7 @@ public class Post {
@Inject
CommandsManager commandsManager;
- @RequestMapping(value = "/api/post", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/post", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseStatus(value = HttpStatus.OK)
public CommandResult doPostMessage(
@Visitor User visitor,
@@ -99,7 +99,7 @@ public class Post {
return commandsManager.processCommand(visitor, body, attachmentFName);
}
- @RequestMapping(value = "/api/comment", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/comment", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
public CommandResult doPostComment(
@Visitor User visitor,
@RequestParam(defaultValue = "0") int mid,
diff --git a/src/main/java/com/juick/server/api/Tags.java b/src/main/java/com/juick/server/api/Tags.java
index 35f2bc66..2862d883 100644
--- a/src/main/java/com/juick/server/api/Tags.java
+++ b/src/main/java/com/juick/server/api/Tags.java
@@ -38,7 +38,7 @@ public class Tags {
@Inject
private TagService tagService;
- @RequestMapping(value = "/api/tags", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/tags", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public List<TagStats> tags(
@Visitor User visitor,
@RequestParam(required = false, defaultValue = "0") int user_id
diff --git a/src/main/java/com/juick/server/api/Users.java b/src/main/java/com/juick/server/api/Users.java
index 74a720d4..6d7c7a45 100644
--- a/src/main/java/com/juick/server/api/Users.java
+++ b/src/main/java/com/juick/server/api/Users.java
@@ -81,12 +81,12 @@ public class Users {
@Inject
private EmailManager emailManager;
- @RequestMapping(value = "/api/auth", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/auth", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public String getAuthToken(@Visitor User visitor) {
return userService.getHashByUID(visitor.getUid());
}
- @RequestMapping(value = "/api/users", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/users", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public List<User> doGetUsers(
@Visitor User visitor,
@RequestParam(value = "uname", required = false) List<String> unames) {
@@ -190,7 +190,7 @@ public class Users {
}
}
- @RequestMapping(value = "/api/users/read", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/users/read", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public List<User> doGetUserRead(
@Visitor User visitor,
@RequestParam String uname) {
@@ -214,7 +214,7 @@ public class Users {
throw new HttpNotFoundException();
}
- @RequestMapping(value = "/api/users/readers", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @RequestMapping(value = "/api/users/readers", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public List<User> doGetUserReaders(
@Visitor User visitor,
@RequestParam String uname) {
diff --git a/src/main/java/com/juick/server/api/activity/Profile.java b/src/main/java/com/juick/server/api/activity/Profile.java
index 77945d6b..88c76a93 100644
--- a/src/main/java/com/juick/server/api/activity/Profile.java
+++ b/src/main/java/com/juick/server/api/activity/Profile.java
@@ -388,7 +388,7 @@ public class Profile {
}
return new ResponseEntity<>(CommandResult.fromString("Can not authenticate"), HttpStatus.UNAUTHORIZED);
}
- @PostMapping(value = "/u/", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ @PostMapping(value = "/u/", produces = MediaType.APPLICATION_JSON_VALUE)
public User fetchUser(@RequestParam URI uri) {
return activityPubManager.personToUser(uri);
}
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index e89670fa..e9d9b77f 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -3,3 +3,4 @@ spring.jackson.default-property-inclusion=non_default
spring.jackson.serialization.write-dates-as-timestamps=false
spring.h2.console.enabled=true
spring.datasource.platform=h2
+spring.http.encoding.force=true
diff --git a/src/test/java/com/juick/FormatterTest.java b/src/test/java/com/juick/FormatterTest.java
index da9f5d26..8a6bf83f 100644
--- a/src/test/java/com/juick/FormatterTest.java
+++ b/src/test/java/com/juick/FormatterTest.java
@@ -39,13 +39,13 @@ public class FormatterTest {
public void forAnyDateFormatterShouldReturnNotEmptyString() throws Exception {
Instant ts = Instant.now();
- assertThat(DateFormattersHolder.getMessageFormatterInstance().format(ts), not(isEmptyOrNullString()));
- assertThat(DateFormattersHolder.getRssFormatterInstance().format(ts), not(isEmptyOrNullString()));
+ assertThat(DateFormattersHolder.getMessageFormatterInstance().format(ts), not(emptyOrNullString()));
+ assertThat(DateFormattersHolder.getRssFormatterInstance().format(ts), not(emptyOrNullString()));
ts = Instant.ofEpochMilli(RandomUtils.nextLong(1, Long.MAX_VALUE / 10000));
- assertThat(DateFormattersHolder.getMessageFormatterInstance().format(ts), not(isEmptyOrNullString()));
- assertThat(DateFormattersHolder.getRssFormatterInstance().format(ts), not(isEmptyOrNullString()));
+ assertThat(DateFormattersHolder.getMessageFormatterInstance().format(ts), not(emptyOrNullString()));
+ assertThat(DateFormattersHolder.getRssFormatterInstance().format(ts), not(emptyOrNullString()));
}
@Test
diff --git a/src/test/java/com/juick/MessageTest.java b/src/test/java/com/juick/MessageTest.java
index b4c5f4ab..64d19e13 100644
--- a/src/test/java/com/juick/MessageTest.java
+++ b/src/test/java/com/juick/MessageTest.java
@@ -129,20 +129,20 @@ public class MessageTest {
public void tagsStringShouldBeEmptyIfNoTags() {
Message message = new Message();
- assertThat(MessageUtils.getTagsString(message), isEmptyString());
+ assertThat(MessageUtils.getTagsString(message), is(emptyString()));
message.FriendsOnly = true;
- assertThat(MessageUtils.getTagsString(message), isEmptyString());
+ assertThat(MessageUtils.getTagsString(message), is(emptyString()));
message.Hidden = true;
message.ReadOnly = true;
- assertThat(MessageUtils.getTagsString(message), isEmptyString());
+ assertThat(MessageUtils.getTagsString(message), is(emptyString()));
message.setTags(MessageUtils.parseTags(" "));
- assertThat(MessageUtils.getTagsString(message), isEmptyString());
+ assertThat(MessageUtils.getTagsString(message), is(emptyString()));
}
@Test
diff --git a/src/test/java/com/juick/server/tests/ServerTests.java b/src/test/java/com/juick/server/tests/ServerTests.java
index 644ff096..e6c394d2 100644
--- a/src/test/java/com/juick/server/tests/ServerTests.java
+++ b/src/test/java/com/juick/server/tests/ServerTests.java
@@ -504,7 +504,7 @@ public class ServerTests {
get("/api/home")
.with(httpBasic(ugnichName, ugnichPassword)))
.andExpect(status().isOk())
- .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
+ .andExpect(content().contentType(MediaType.APPLICATION_JSON))
.andExpect(jsonPath("$[0].mid", is(msg.getMid())))
.andExpect(jsonPath("$[0].timestamp",
is(DateFormattersHolder.getMessageFormatterInstance().format(msg.getCreated()))))
@@ -574,7 +574,7 @@ public class ServerTests {
.param("uname", "ugnich")
.param("uname", "freefd"))
.andExpect(status().isOk())
- .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
+ .andExpect(content().contentType(MediaType.APPLICATION_JSON))
.andExpect(jsonPath("$", hasSize(2)));
}
@@ -593,7 +593,7 @@ public class ServerTests {
mockMvc.perform(get("/api/messages?"+ "hash=" + userIdHash))
.andDo(print())
.andExpect(status().isOk())
- .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
+ .andExpect(content().contentType(MediaType.APPLICATION_JSON))
.andExpect((jsonPath("$[0].reactions[?(@.id == 3)].count",
is(Collections.singletonList(1)))))
.andExpect((jsonPath("$[0].reactions[?(@.id == 2)].count",
@@ -601,7 +601,7 @@ public class ServerTests {
mockMvc.perform(get("/api/reactions?hash=" + userIdHash))
.andExpect(status().isOk())
- .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
+ .andExpect(content().contentType(MediaType.APPLICATION_JSON))
.andExpect(jsonPath("$.length()", is(7)));
}
@@ -660,7 +660,7 @@ public class ServerTests {
String token = "123456";
ExternalToken registration = new ExternalToken(null, "apns", token, null);
mockMvc.perform(put("/api/notifications").with(httpBasic(ugnichName, ugnichPassword))
- .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .contentType(MediaType.APPLICATION_JSON)
.content(jsonMapper.writeValueAsBytes(Collections.singletonList(registration))))
.andExpect(status().isOk());
MvcResult result = mockMvc.perform(get("/api/notifications")
@@ -685,10 +685,10 @@ public class ServerTests {
public void notificationsTokensTest() throws Exception {
List<ExternalToken> tokens = Collections.singletonList(new ExternalToken(null, "gcm", "123456", null));
mockMvc.perform(delete("/api/notifications").with(httpBasic(ugnichName, ugnichPassword))
- .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .contentType(MediaType.APPLICATION_JSON)
.content(jsonMapper.writeValueAsBytes(tokens))).andExpect(status().isForbidden());
mockMvc.perform(delete("/api/notifications").with(httpBasic(juickName, juickPassword))
- .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .contentType(MediaType.APPLICATION_JSON)
.content(jsonMapper.writeValueAsBytes(tokens))).andExpect(status().isOk());
}
@Test
@@ -1135,7 +1135,8 @@ public class ServerTests {
.andExpect(status().isOk())
.andReturn();
List<Message> fromApi = jsonMapper.readValue(apiResult.getResponse().getContentAsString(),
- new TypeReference<List<Message>>() {});
+ new TypeReference<>() {
+ });
assertThat(fromApi.get(0).getTags(), is(tags));
}
@Test
@@ -1671,7 +1672,7 @@ public class ServerTests {
public void appAssociationsTest() throws Exception {
mockMvc.perform((get("/.well-known/apple-app-site-association")))
.andExpect(status().isOk())
- .andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
+ .andExpect(content().contentType(MediaType.APPLICATION_JSON))
.andExpect(jsonPath("$.webcredentials.apps[0]", is(appId)));
}
@Test
@@ -1705,7 +1706,7 @@ public class ServerTests {
@Test
public void swaggerOutput() throws Exception {
MvcResult result = mockMvc.perform(get("/v2/api-docs")
- .accept(MediaType.APPLICATION_JSON_UTF8))
+ .accept(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andReturn();
String outputDir = System.getProperty("io.springfox.staticdocs.outputDir");
@@ -1834,9 +1835,9 @@ public class ServerTests {
URI testuserkeyUri = URI.create("https://example.com/u/testuser#main-key");
MockRestServiceServer restServiceServer = MockRestServiceServer.createServer(apClient);
restServiceServer.expect(times(3), requestTo(testuserUri))
- .andRespond(withSuccess(testuserResponseString, MediaType.APPLICATION_JSON_UTF8));
+ .andRespond(withSuccess(testuserResponseString, MediaType.APPLICATION_JSON));
restServiceServer.expect(times(3), requestTo(testuserkeyUri))
- .andRespond(withSuccess(testuserResponseString, MediaType.APPLICATION_JSON_UTF8));
+ .andRespond(withSuccess(testuserResponseString, MediaType.APPLICATION_JSON));
Person testuser = (Person)signatureManager.getContext(testuserUri).get();
Assert.assertThat(testuser.getPublicKey().getPublicKeyPem(), is(testKeystoreManager.getPublicKeyPem()));
Instant now2 = Instant.now();
diff --git a/yarn.lock b/yarn.lock
index 48ba780e..ab2a2beb 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -36,18 +36,18 @@
semver "^5.4.1"
source-map "^0.5.0"
-"@babel/core@^7.6.2":
- version "7.6.2"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.2.tgz#069a776e8d5e9eefff76236bc8845566bd31dd91"
- integrity sha512-l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ==
+"@babel/core@^7.6.4":
+ version "7.6.4"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.6.4.tgz#6ebd9fe00925f6c3e177bb726a188b5f578088ff"
+ integrity sha512-Rm0HGw101GY8FTzpWSyRbki/jzq+/PkNQJ+nSulrdY6gFGOsNseCqD6KHRYe2E+EdzuBdr2pxCp6s4Uk6eJ+XQ==
dependencies:
"@babel/code-frame" "^7.5.5"
- "@babel/generator" "^7.6.2"
+ "@babel/generator" "^7.6.4"
"@babel/helpers" "^7.6.2"
- "@babel/parser" "^7.6.2"
+ "@babel/parser" "^7.6.4"
"@babel/template" "^7.6.0"
- "@babel/traverse" "^7.6.2"
- "@babel/types" "^7.6.0"
+ "@babel/traverse" "^7.6.3"
+ "@babel/types" "^7.6.3"
convert-source-map "^1.1.0"
debug "^4.1.0"
json5 "^2.1.0"
@@ -99,6 +99,16 @@
lodash "^4.17.13"
source-map "^0.5.0"
+"@babel/generator@^7.6.3", "@babel/generator@^7.6.4":
+ version "7.6.4"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.4.tgz#a4f8437287bf9671b07f483b76e3bb731bc97671"
+ integrity sha512-jsBuXkFoZxk0yWLyGI9llT9oiQ2FeTASmRFE32U+aaDTfoE92t78eroO7PTpU/OrYq38hlcDM6vbfLDaOLy+7w==
+ dependencies:
+ "@babel/types" "^7.6.3"
+ jsesc "^2.5.1"
+ lodash "^4.17.13"
+ source-map "^0.5.0"
+
"@babel/helper-annotate-as-pure@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32"
@@ -337,6 +347,11 @@
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.2.tgz#205e9c95e16ba3b8b96090677a67c9d6075b70a1"
integrity sha512-mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg==
+"@babel/parser@^7.6.3", "@babel/parser@^7.6.4":
+ version "7.6.4"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.4.tgz#cb9b36a7482110282d5cb6dd424ec9262b473d81"
+ integrity sha512-D8RHPW5qd0Vbyo3qb+YjO5nvUVRTXFLQ/FsDxJU2Nqz4uB5EnUN0ZQSEYpvTIbRuttig1XbHWU5oMeQwQSAA+A==
+
"@babel/plugin-proposal-async-generator-functions@^7.2.0":
version "7.2.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e"
@@ -445,10 +460,10 @@
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
-"@babel/plugin-transform-block-scoping@^7.6.2":
- version "7.6.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.2.tgz#96c33ab97a9ae500cc6f5b19e04a7e6553360a79"
- integrity sha512-zZT8ivau9LOQQaOGC7bQLQOT4XPkPXgN2ERfUgk1X8ql+mVkLc4E8eKk+FO3o0154kxzqenWCorfmEXpEZcrSQ==
+"@babel/plugin-transform-block-scoping@^7.6.3":
+ version "7.6.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz#6e854e51fbbaa84351b15d4ddafe342f3a5d542a"
+ integrity sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw==
dependencies:
"@babel/helper-plugin-utils" "^7.0.0"
lodash "^4.17.13"
@@ -570,10 +585,10 @@
"@babel/helper-module-transforms" "^7.1.0"
"@babel/helper-plugin-utils" "^7.0.0"
-"@babel/plugin-transform-named-capturing-groups-regex@^7.6.2":
- version "7.6.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.6.2.tgz#c1ca0bb84b94f385ca302c3932e870b0fb0e522b"
- integrity sha512-xBdB+XOs+lgbZc2/4F5BVDVcDNS4tcSKQc96KmlqLEAwz6tpYPEvPdmDfvVG0Ssn8lAhronaRs6Z6KSexIpK5g==
+"@babel/plugin-transform-named-capturing-groups-regex@^7.6.3":
+ version "7.6.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.6.3.tgz#aaa6e409dd4fb2e50b6e2a91f7e3a3149dbce0cf"
+ integrity sha512-jTkk7/uE6H2s5w6VlMHeWuH+Pcy2lmdwFoeWCVnvIrDUnB5gQqTVI8WfmEAhF2CDEarGrknZcmSFg1+bkfCoSw==
dependencies:
regexpu-core "^4.6.0"
@@ -668,10 +683,10 @@
"@babel/helper-regex" "^7.4.4"
regexpu-core "^4.6.0"
-"@babel/preset-env@^7.6.2":
- version "7.6.2"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.2.tgz#abbb3ed785c7fe4220d4c82a53621d71fc0c75d3"
- integrity sha512-Ru7+mfzy9M1/YTEtlDS8CD45jd22ngb9tXnn64DvQK3ooyqSw9K4K9DUWmYknTTVk4TqygL9dqCrZgm1HMea/Q==
+"@babel/preset-env@^7.6.3":
+ version "7.6.3"
+ resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.3.tgz#9e1bf05a2e2d687036d24c40e4639dc46cef2271"
+ integrity sha512-CWQkn7EVnwzlOdR5NOm2+pfgSNEZmvGjOhlCHBDq0J8/EStr+G+FvPEiz9B56dR6MoiUFjXhfE4hjLoAKKJtIQ==
dependencies:
"@babel/helper-module-imports" "^7.0.0"
"@babel/helper-plugin-utils" "^7.0.0"
@@ -689,7 +704,7 @@
"@babel/plugin-transform-arrow-functions" "^7.2.0"
"@babel/plugin-transform-async-to-generator" "^7.5.0"
"@babel/plugin-transform-block-scoped-functions" "^7.2.0"
- "@babel/plugin-transform-block-scoping" "^7.6.2"
+ "@babel/plugin-transform-block-scoping" "^7.6.3"
"@babel/plugin-transform-classes" "^7.5.5"
"@babel/plugin-transform-computed-properties" "^7.2.0"
"@babel/plugin-transform-destructuring" "^7.6.0"
@@ -704,7 +719,7 @@
"@babel/plugin-transform-modules-commonjs" "^7.6.0"
"@babel/plugin-transform-modules-systemjs" "^7.5.0"
"@babel/plugin-transform-modules-umd" "^7.2.0"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.6.2"
+ "@babel/plugin-transform-named-capturing-groups-regex" "^7.6.3"
"@babel/plugin-transform-new-target" "^7.4.4"
"@babel/plugin-transform-object-super" "^7.5.5"
"@babel/plugin-transform-parameters" "^7.4.4"
@@ -717,7 +732,7 @@
"@babel/plugin-transform-template-literals" "^7.4.4"
"@babel/plugin-transform-typeof-symbol" "^7.2.0"
"@babel/plugin-transform-unicode-regex" "^7.6.2"
- "@babel/types" "^7.6.0"
+ "@babel/types" "^7.6.3"
browserslist "^4.6.0"
core-js-compat "^3.1.1"
invariant "^2.2.2"
@@ -826,6 +841,21 @@
globals "^11.1.0"
lodash "^4.17.13"
+"@babel/traverse@^7.6.3":
+ version "7.6.3"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.3.tgz#66d7dba146b086703c0fb10dd588b7364cec47f9"
+ integrity sha512-unn7P4LGsijIxaAJo/wpoU11zN+2IaClkQAxcJWBNCMS6cmVh802IyLHNkAjQ0iYnRS3nnxk5O3fuXW28IMxTw==
+ dependencies:
+ "@babel/code-frame" "^7.5.5"
+ "@babel/generator" "^7.6.3"
+ "@babel/helper-function-name" "^7.1.0"
+ "@babel/helper-split-export-declaration" "^7.4.4"
+ "@babel/parser" "^7.6.3"
+ "@babel/types" "^7.6.3"
+ debug "^4.1.0"
+ globals "^11.1.0"
+ lodash "^4.17.13"
+
"@babel/types@^7.0.0":
version "7.0.0"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0.tgz#6e191793d3c854d19c6749989e3bc55f0e962118"
@@ -862,6 +892,15 @@
lodash "^4.17.13"
to-fast-properties "^2.0.0"
+"@babel/types@^7.6.3":
+ version "7.6.3"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.6.3.tgz#3f07d96f854f98e2fbd45c64b0cb942d11e8ba09"
+ integrity sha512-CqbcpTxMcpuQTMhjI37ZHVgjBkysg5icREQIEZ0eG1yCNwg3oy+5AaLiOKmjsCj6nqOsa6Hf0ObjRVwokb7srA==
+ dependencies:
+ esutils "^2.0.2"
+ lodash "^4.17.13"
+ to-fast-properties "^2.0.0"
+
"@csstools/convert-colors@^1.4.0":
version "1.4.0"
resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7"
@@ -1973,10 +2012,10 @@ core-js-pure@3.1.1:
resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.1.1.tgz#92494ab7bae22f156ae93973a5e2738814efa7f8"
integrity sha512-jH3ZJ0CJ0wwDvWY0olbOComLo6tbWg4kE2x0j4+wlqYnofwF9mYm98YvADuENUzGw69IddmWFCF1FQ2S0jP96A==
-core-js@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.2.1.tgz#cd41f38534da6cc59f7db050fe67307de9868b09"
- integrity sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw==
+core-js@^3.3.2:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.3.2.tgz#cd42da1d7b0bb33ef11326be3a721934277ceb42"
+ integrity sha512-S1FfZpeBchkhyoY76YAdFzKS4zz9aOK7EeFaNA2aJlyXyA+sgqz6xdxmLPGXEAf0nF44MVN1kSjrA9Kt3ATDQg==
core-util-is@~1.0.0:
version "1.0.2"
@@ -2634,10 +2673,10 @@ eslint-visitor-keys@^1.1.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==
-eslint@6.5.0:
- version "6.5.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.5.0.tgz#304623eec903969dd5c9f2d61c6ce3d6ecec8750"
- integrity sha512-IIbSW+vKOqMatPmS9ayyku4tvWxHY2iricSRtOz6+ZA5IPRlgXzEL0u/j6dr4eha0ugmhMwDTqxtmNu3kj9O4w==
+eslint@6.5.1:
+ version "6.5.1"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.5.1.tgz#828e4c469697d43bb586144be152198b91e96ed6"
+ integrity sha512-32h99BoLYStT1iq1v2P9uwpyznQ4M2jRiFB6acitKz52Gqn+vPaMDUTB1bYi1WN4Nquj2w+t+bimYUG83DC55A==
dependencies:
"@babel/code-frame" "^7.0.0"
ajv "^6.10.0"
@@ -3910,10 +3949,10 @@ kind-of@^6.0.0, kind-of@^6.0.2:
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051"
integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==
-known-css-properties@^0.15.0:
- version "0.15.0"
- resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.15.0.tgz#5aa14a98b5a1652448aad44a1c67e867e4e7d88c"
- integrity sha512-TS0RCcQfHYsA+59uIHhnsA71NBkpILbqi0W+hde4R5FtESdzur0tCJFoko/1Pbhx+8rmdUc0R1VE4ixnnD+9xw==
+known-css-properties@^0.16.0:
+ version "0.16.0"
+ resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.16.0.tgz#3f0597214db11a460df77cd44bcb39e263b9da6c"
+ integrity sha512-0g5vDDPvNnQk7WM/aE92dTDxXJoOE0biiIcUb3qkn/F6h/ZQZPlZIbE2XSXH2vFPfphkgCxuR2vH6HHnobEOaQ==
last-call-webpack-plugin@^3.0.0:
version "3.0.0"
@@ -6244,6 +6283,14 @@ schema-utils@^2.2.0:
ajv "^6.10.2"
ajv-keywords "^3.4.1"
+schema-utils@^2.4.1:
+ version "2.5.0"
+ resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz#8f254f618d402cc80257486213c8970edfd7c22f"
+ integrity sha512-32ISrwW2scPXHUSusP8qMg5dLUawKkyV+/qIEV9JdXKx+rsM6mi8vZY8khg2M69Qom16rtroWXD3Ybtiws38gQ==
+ dependencies:
+ ajv "^6.10.2"
+ ajv-keywords "^3.4.1"
+
"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0:
version "5.5.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.1.tgz#7dfdd8814bdb7cabc7be0fb1d734cfb66c940477"
@@ -6691,10 +6738,10 @@ stylelint-config-standard@^19.0.0:
dependencies:
stylelint-config-recommended "^3.0.0"
-stylelint@^11.0.0:
- version "11.0.0"
- resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-11.0.0.tgz#1458d1e126d4f2fb9f41076197f852aa1fcae91d"
- integrity sha512-esKkG7CUXI5yr4jgCNuwjiiV6NJ4BpodB0e47oFvUBaHgpiXXHRPOajpb0IXL7Ucpk+X3dcrlPxVHpmJ5XUDwg==
+stylelint@^11.1.1:
+ version "11.1.1"
+ resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-11.1.1.tgz#6dbbb348036576ac6b033ddfedba72a877c1d6bb"
+ integrity sha512-Vx6TAJsxG6qksiFvxQTKriQhp1CqUWdpTDITEkAjTR+l+8Af7qNlvrUDXfpuFJgXh/ayF8xdMSKE+SstcsPmMA==
dependencies:
autoprefixer "^9.5.1"
balanced-match "^1.0.0"
@@ -6711,7 +6758,7 @@ stylelint@^11.0.0:
ignore "^5.0.6"
import-lazy "^4.0.0"
imurmurhash "^0.1.4"
- known-css-properties "^0.15.0"
+ known-css-properties "^0.16.0"
leven "^3.1.0"
lodash "^4.17.14"
log-symbols "^3.0.0"
@@ -7126,14 +7173,14 @@ urix@^0.1.0:
resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
-url-loader@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.1.0.tgz#bcc1ecabbd197e913eca23f5e0378e24b4412961"
- integrity sha512-kVrp/8VfEm5fUt+fl2E0FQyrpmOYgMEkBsv8+UDP1wFhszECq5JyGF33I7cajlVY90zRZ6MyfgKXngLvHYZX8A==
+url-loader@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-2.2.0.tgz#af321aece1fd0d683adc8aaeb27829f29c75b46e"
+ integrity sha512-G8nk3np8ZAnwhHXas1JxJEwJyQdqFXAKJehfgZ/XrC48volFBRtO+FIKtF2u0Ma3bw+4vnDVjHPAQYlF9p2vsw==
dependencies:
loader-utils "^1.2.3"
mime "^2.4.4"
- schema-utils "^2.0.0"
+ schema-utils "^2.4.1"
url-polyfill@^1.1.7:
version "1.1.7"
@@ -7272,10 +7319,10 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1:
source-list-map "^2.0.0"
source-map "~0.6.1"
-webpack@^4.41.0:
- version "4.41.0"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.0.tgz#db6a254bde671769f7c14e90a1a55e73602fc70b"
- integrity sha512-yNV98U4r7wX1VJAj5kyMsu36T8RPPQntcb5fJLOsMz/pt/WrKC0Vp1bAlqPLkA1LegSwQwf6P+kAbyhRKVQ72g==
+webpack@^4.41.2:
+ version "4.41.2"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.41.2.tgz#c34ec76daa3a8468c9b61a50336d8e3303dce74e"
+ integrity sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A==
dependencies:
"@webassemblyjs/ast" "1.8.5"
"@webassemblyjs/helper-module-context" "1.8.5"