From 656848f85093f8342e7f189e85dcd9bae370314f Mon Sep 17 00:00:00 2001 From: Wataru Otsubo Date: Fri, 24 Jan 2025 09:14:36 +0100 Subject: [PATCH] refactoring: rename crate_database functions (BREAKING) --- CHANGELOG.md | 7 ++++++- docs/src/about_software.md | 8 ++++---- docs/src/tutorial.md | 2 +- src/PSBoardDataBase.jl | 12 ++++++++---- src/create_table.jl | 8 ++++---- test/runtests.jl | 5 +++-- 6 files changed, 26 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27069e1..0540567 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- `create_database_from_exported_csvs` now can save a JLD2 cache to store parsed slave logs. +- `create_database`(formally `create_database_from_exported_csvs`) now can save a JLD2 cache to store parsed slave logs. + +### Changed + +- Renamed `create_database_from_exported_csvs` to `create_database` and `create_database` to `create_empty_database`. (!1423) +- Exported `create_database` ## [0.5.1] - 2025-01-23 diff --git a/docs/src/about_software.md b/docs/src/about_software.md index ce734e6..b7ea053 100644 --- a/docs/src/about_software.md +++ b/docs/src/about_software.md @@ -12,13 +12,13 @@ Depth = 4 # このリポジトリのソフトウェアについての説明 このリポジトリにあるのは、JATHub masterのログファイル、及びGoogle SheetsからエクスポートしたCSVファイルからデータベースを作成するためのコードである。 -メインの関数は[`create_database_from_exported_csvs`](@ref)である。 +メインの関数は[`create_database`](@ref)である。 !!! info **TLDR**; - データベースがほしいときは_Masterのログ_と_Slaveのログ_を用意して、[`create_database_from_exported_csvs`](@ref) + データベースがほしいときは_Masterのログ_と_Slaveのログ_を用意して、[`create_database`](@ref) ```julia - create_database_from_exported_csvs( + create_database( "database_name.db"; masterlog_dir = "dir/to/master/logs", slavelog_dir = "dir/to/slave/logs" @@ -39,7 +39,7 @@ backspaceでjulianモードに戻り(左側が`julia>`になってる)、`using `?`を押すとhelpモードに入り、関数名などをいれるとそのドキュメント(下にあるものと同じ)が閲覧できる。 -`PSBoardDataBase.create_database_from_exported_csvs`を検索すると使い方がわかる。 +`PSBoardDataBase.create_database`を検索すると使い方がわかる。 # テストについて diff --git a/docs/src/tutorial.md b/docs/src/tutorial.md index a98eebe..1fc5217 100644 --- a/docs/src/tutorial.md +++ b/docs/src/tutorial.md @@ -9,7 +9,7 @@ Depth = 4 データベースはファイルとして手に入れることができます。 QAQCキャンペーンの終了後にMattermostチャンネル上でマニュアルで配布されるものをダウンロードするか、最新のものが欲しい場合は以下の方法で手に入ります。 -- このリポジトリのコードを実行する([このページ](./about_software.md)や[`PSBoardDataBase.create_database_from_exported_csvs`](@ref)参照) +- このリポジトリのコードを実行する([このページ](./about_software.md)や[`PSBoardDataBase.create_database`](@ref)参照) - QAQCをやってる部屋のPCにインストールしてあるので、それを実行する - 知ってる人に頼む diff --git a/src/PSBoardDataBase.jl b/src/PSBoardDataBase.jl index e5056ba..98d39a0 100644 --- a/src/PSBoardDataBase.jl +++ b/src/PSBoardDataBase.jl @@ -20,8 +20,12 @@ include("import_data.jl") include("DispatchChecker.jl") using .DispatchChecker +export create_database + +@deprecate create_database_from_exported_csvs(dbpath::AbstractString; kw...) create_database(dbpath; kw...) false + """ - create_database_from_exported_csvs( + create_database( dbpath::AbstractString; masterlog_dir::AbstractString, slavelog_dir::AbstractString, @@ -57,13 +61,13 @@ If you want to use alternative CSV or are not online, you can specify the path o - `hundred_csv`: CSV of 100 tests results exported from the Google sheets database - `jathubs_csv`: CSV for jathub list used in QAQC. Used to add skew. """ -function create_database_from_exported_csvs( +function create_database( dbpath::AbstractString; masterlog_dir::AbstractString, slavelog_dir::AbstractString, - kw... + kw..., ) - db = create_database(dbpath) + db = create_empty_database(dbpath) single_result_df, runlist_table, diff --git a/src/create_table.jl b/src/create_table.jl index 2ec668b..9051de9 100644 --- a/src/create_table.jl +++ b/src/create_table.jl @@ -4,21 +4,21 @@ Create new database at `dbpath` and prepare all tables. Tables are empty. """ -function create_database end +function create_empty_database end """ create_database(dbpath::AbstractString) """ -function create_database(dbpath::AbstractString) +function create_empty_database(dbpath::AbstractString) db::SQLite.DB = DBInterface.connect(SQLite.DB, dbpath) - create_database(db) + create_empty_database(db) end """ create_database(db::SQLite.DB) """ -function create_database(db::SQLite.DB) +function create_empty_database(db::SQLite.DB) dirpath = @__DIR__ sql_creates::String = read("$dirpath/sql/create_table.sql", String) |> chomp diff --git a/test/runtests.jl b/test/runtests.jl index 1463f74..77d1a1e 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -202,7 +202,7 @@ true || include("../src/PSBoardDataBase.jl") @testset "full integrated test" begin dbpath = tempname() jld2path = tempname() - db = PSBoardDataBase.create_database(dbpath) + db = PSBoardDataBase.create_empty_database(dbpath) jld2_slavelog = jldopen(jld2path, "w") @info "" db jld2_slavelog @@ -264,10 +264,11 @@ true || include("../src/PSBoardDataBase.jl") run(`sqlitebrowser $dbpath`) - @test PSBoardDataBase.create_database_from_exported_csvs( + @test PSBoardDataBase.create_database( tempname(); masterlog_dir = "input/log/", slavelog_dir = "input/slavelogs/", + slavelog_result = tempname(), ) isa SQLite.DB end