From 5e9fb8bd848d97da2e00f4e7f7fbe5e77e82b9b8 Mon Sep 17 00:00:00 2001
From: syuilo <syuilotan@yahoo.co.jp>
Date: Tue, 24 Jul 2018 23:35:19 +0900
Subject: [PATCH] wip

---
 {migration => cli/migration}/2.0.0.js |  4 +--
 {migration => cli/migration}/2.4.0.js |  4 +--
 cli/migration/5.0.0.js                | 10 ++++++++
 migration/README.md                   | 11 --------
 migration/init-migration-file.sh      | 37 ---------------------------
 package.json                          |  2 +-
 6 files changed, 15 insertions(+), 53 deletions(-)
 rename {migration => cli/migration}/2.0.0.js (88%)
 rename {migration => cli/migration}/2.4.0.js (91%)
 create mode 100644 cli/migration/5.0.0.js
 delete mode 100644 migration/README.md
 delete mode 100644 migration/init-migration-file.sh

diff --git a/migration/2.0.0.js b/cli/migration/2.0.0.js
similarity index 88%
rename from migration/2.0.0.js
rename to cli/migration/2.0.0.js
index eb8f5730c7..f7298972e5 100644
--- a/migration/2.0.0.js
+++ b/cli/migration/2.0.0.js
@@ -3,8 +3,8 @@
 const chalk = require('chalk');
 const sequential = require('promise-sequential');
 
-const { default: User } = require('../built/models/user');
-const { default: DriveFile } = require('../built/models/drive-file');
+const { default: User } = require('../../built/models/user');
+const { default: DriveFile } = require('../../built/models/drive-file');
 
 async function main() {
 	const promiseGens = [];
diff --git a/migration/2.4.0.js b/cli/migration/2.4.0.js
similarity index 91%
rename from migration/2.4.0.js
rename to cli/migration/2.4.0.js
index e9584a1dfc..aa37849aa1 100644
--- a/migration/2.4.0.js
+++ b/cli/migration/2.4.0.js
@@ -3,8 +3,8 @@
 const chalk = require('chalk');
 const sequential = require('promise-sequential');
 
-const { default: User } = require('../built/models/user');
-const { default: DriveFile } = require('../built/models/drive-file');
+const { default: User } = require('../../built/models/user');
+const { default: DriveFile } = require('../../built/models/drive-file');
 
 async function main() {
 	const promiseGens = [];
diff --git a/cli/migration/5.0.0.js b/cli/migration/5.0.0.js
new file mode 100644
index 0000000000..8c6f49ed85
--- /dev/null
+++ b/cli/migration/5.0.0.js
@@ -0,0 +1,10 @@
+const { default: DriveFile } = require('../../built/models/drive-file');
+
+DriveFile.update({}, {
+	$rename: {
+		'metadata.url': 'metadata.src',
+		'metadata.isMetaOnly': 'metadata.withoutChunks',
+	}
+}, {
+	multi: true
+});
diff --git a/migration/README.md b/migration/README.md
deleted file mode 100644
index d52e84b35a..0000000000
--- a/migration/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-Misskeyの破壊的変更に対応するいくつかのスニペットがあります。
-MongoDBシェルで実行する必要のあるものとnodeで直接実行する必要のあるものがあります。
-ファイル名が `shell.` から始まるものは前者、 `node.` から始まるものは後者です。
-
-MongoDBシェルで実行する場合、`use`でデータベースを選択しておく必要があります。
-
-nodeで実行するいくつかのスニペットは、並列処理させる数を引数で設定できるものがあります。
-処理中にエラーで落ちる場合は、メモリが足りていない可能性があるので、少ない数に設定してみてください。
-※デフォルトは`5`です。
-
-ファイルを作成する際は `../init-migration-file.sh -t _type_ -n _name_` を実行すると _type_._unixtime_._name_.js が生成されます
diff --git a/migration/init-migration-file.sh b/migration/init-migration-file.sh
deleted file mode 100644
index c6a2b862e6..0000000000
--- a/migration/init-migration-file.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/bash
-
-usage() {
-		echo "$0 [-t type] [-n name]"
-		echo "  type: [node | shell]"
-		echo "  name: if no present, set untitled"
-		exit 0
-}
-
-while getopts :t:n:h OPT
-do
-	case $OPT in
-		t)	type=$OPTARG
-				;;
-		n)	name=$OPTARG
-				;;
-		h)	usage
-				;;
-		\?) usage
-				;;
-		:)	usage
-				;;
-	esac
-done
-
-if [ "$type" = "" ]
-then
-	echo "no type present!!!"
-	usage
-fi
-
-if [ "$name" = "" ]
-then
-	name="untitled"
-fi
-
-touch "$(realpath $(dirname $BASH_SOURCE))/migration/$type.$(date +%s).$name.js"
diff --git a/package.json b/package.json
index 849ff7a62b..3ca36923f2 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
 {
 	"name": "misskey",
 	"author": "syuilo <i@syuilo.com>",
-	"version": "4.27.0",
+	"version": "5.0.0",
 	"clientVersion": "1.0.7487",
 	"codename": "nighthike",
 	"main": "./built/index.js",