Commit a9a836d1 authored by Liang Ding's avatar Liang Ding

🔖 发布 v4.1.0

parent d19b6e65
{ {
"name": "solo", "name": "solo",
"version": "4.0.0", "version": "4.1.0",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {
......
{ {
"name": "solo", "name": "solo",
"version": "4.0.0", "version": "4.1.0",
"description": " 一款小而美的博客系统,专为程序员设计。", "description": " 一款小而美的博客系统,专为程序员设计。",
"homepage": "https://github.com/88250/solo", "homepage": "https://github.com/88250/solo",
"repository": { "repository": {
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- <!--
Description: Solo POM. Description: Solo POM.
Version: 3.18.3.94, May 10, 2020 Version: 3.18.3.95, May 19, 2020
Author: <a href="http://88250.b3log.org">Liang Ding</a> Author: <a href="http://88250.b3log.org">Liang Ding</a>
Author: <a href="http://www.annpeter.cn">Ann Peter</a> Author: <a href="http://www.annpeter.cn">Ann Peter</a>
Author: <a href="http://vanessa.b3log.org">Vanessa</a> Author: <a href="http://vanessa.b3log.org">Vanessa</a>
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<artifactId>solo</artifactId> <artifactId>solo</artifactId>
<packaging>jar</packaging> <packaging>jar</packaging>
<name>Solo</name> <name>Solo</name>
<version>4.0.0</version> <version>4.1.0</version>
<description> <description>
一款小而美的博客系统,专为程序员设计。 一款小而美的博客系统,专为程序员设计。
</description> </description>
......
...@@ -49,7 +49,7 @@ import java.util.concurrent.atomic.AtomicInteger; ...@@ -49,7 +49,7 @@ import java.util.concurrent.atomic.AtomicInteger;
* Server. * Server.
* *
* @author <a href="http://88250.b3log.org">Liang Ding</a> * @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 3.0.1.5, Apr 30, 2020 * @version 3.0.1.6, May 19, 2020
* @since 1.2.0 * @since 1.2.0
*/ */
public final class Server extends BaseServer { public final class Server extends BaseServer {
...@@ -62,7 +62,7 @@ public final class Server extends BaseServer { ...@@ -62,7 +62,7 @@ public final class Server extends BaseServer {
/** /**
* Solo version. * Solo version.
*/ */
public static final String VERSION = "4.0.0"; public static final String VERSION = "4.1.0";
/** /**
* In-Memory tail logger writer. * In-Memory tail logger writer.
......
...@@ -25,7 +25,7 @@ import org.json.JSONObject; ...@@ -25,7 +25,7 @@ import org.json.JSONObject;
* Upgrade service. * Upgrade service.
* *
* @author <a href="http://88250.b3log.org">Liang Ding</a> * @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.2.1.18, Mar 24, 2020 * @version 1.2.1.19, May 19, 2020
* @since 1.2.0 * @since 1.2.0
*/ */
@Service @Service
...@@ -98,6 +98,8 @@ public class UpgradeService { ...@@ -98,6 +98,8 @@ public class UpgradeService {
V380_390.perform(); V380_390.perform();
case "3.9.0": case "3.9.0":
V390_400.perform(); V390_400.perform();
case "4.0.0":
V400_410.perform();
break; break;
default: default:
LOGGER.log(Level.ERROR, "Please upgrade to v3.0.0 first"); LOGGER.log(Level.ERROR, "Please upgrade to v3.0.0 first");
......
/*
* Solo - A small and beautiful blogging system written in Java.
* Copyright (c) 2010-present, b3log.org
*
* Solo is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
* http://license.coscl.org.cn/MulanPSL2
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
*/
package org.b3log.solo.upgrade;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.b3log.latke.ioc.BeanManager;
import org.b3log.latke.repository.Transaction;
import org.b3log.solo.model.Option;
import org.b3log.solo.repository.OptionRepository;
import org.json.JSONObject;
/**
* Upgrade script from v4.0.0 to v4.1.0.
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.0.0, May 19, 2020
* @since 4.1.0
*/
public final class V400_410 {
/**
* Logger.
*/
private static final Logger LOGGER = LogManager.getLogger(V400_410.class);
/**
* Performs upgrade from v4.0.0 to v4.1.0.
*
* @throws Exception upgrade fails
*/
public static void perform() throws Exception {
final String fromVer = "4.0.0";
final String toVer = "4.1.0";
LOGGER.log(Level.INFO, "Upgrading from version [" + fromVer + "] to version [" + toVer + "]....");
final BeanManager beanManager = BeanManager.getInstance();
final OptionRepository optionRepository = beanManager.getReference(OptionRepository.class);
try {
final Transaction transaction = optionRepository.beginTransaction();
final JSONObject versionOpt = optionRepository.get(Option.ID_C_VERSION);
versionOpt.put(Option.OPTION_VALUE, toVer);
optionRepository.update(Option.ID_C_VERSION, versionOpt);
transaction.commit();
LOGGER.log(Level.INFO, "Upgraded from version [" + fromVer + "] to version [" + toVer + "] successfully");
} catch (final Exception e) {
LOGGER.log(Level.ERROR, "Upgrade failed!", e);
throw new Exception("Upgrade failed from version [" + fromVer + "] to version [" + toVer + "]");
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment