くりにっき

フルスタックキュアエンジニアです

rubicure v1.0.0リリースノート

rubicureのこれまでとこれから - くりにっき でも書きましたが、大幅に変更が入っています!

sue445.hatenablog.com

詳しいことはCHANGELOGを読んで下さい https://github.com/sue445/rubicure/blob/master/CHANGELOG.md#v100

破壊的変更

長らくdeprecatedにしていたhumanizeメソッドを削除

humanize! を使ってください

Ruby 2.2.2以上必須にした

activesupport 5系との兼ね合いで2.2.2以上必須にしています

Ruby 2.2.2未満の時はGemfile側でactivesupport 4系を使ってもらうという選択肢(ドキュメントで補完)というのもあったのですが、どうせドキュメントなんて読まないだろうし「Ruby 2.1系でbundle installに失敗する」というissueに対して質問返すのも不毛なのでこの機会にバッサリ古いRubyのサポートを切りました。

キュアプリンセスの人間の時の名前を変更

後述の Girl#full_name メソッドとの兼ね合いで変更しました

  • 変更前:白雪ひめ(ヒメルダ・ウインドウ・キュアクイーン・オブ・ザ・ブルースカイ)
  • 変更後:白雪ひめ

Precure.all_starsメソッドの振る舞いを変更

既存コードの改修が必要という点ではこれが一番大きい変更です

今まで Precure.all_stars は基本的に全てのプリキュアを返していましたが、v1.0.0以降は初代〜魔法つかいプリキュアまでしか返さないようになりました。*1

これは、プリキュアオールスターズ が終わって プリキュアドリームスターズ! が始まったためです。

全てのプリキュアを取得したい場合は後述の Precure.all_girlsPrecure.all を使ってください。

機能追加

Girl#full_nameを追加

白雪ひめやトワ様のように人間界の名前とは別に自国での名前が存在する場合があるので取得できるようにしました

Cure.princess.human_name
=> "白雪ひめ"

Cure.princess.full_name
=> "ヒメルダ・ウインドウ・キュアクイーン・オブ・ザ・ブルースカイ"

Cure.scarlet.human_name
=> "紅城トワ"

Cure.scarlet.full_name
=> "プリンセス・ホープ・ディライト・トワ"

別名がないキャラで full_name を使った場合は human_name (通常の人間時の名前)が返ります

Cure.miracle.human_name
=> "朝日奈みらい"

Cure.miracle.full_name
=> "朝日奈みらい"

Precure.all_girls を追加

Precure.all_stars が全てのプリキュアを返さなくなったため、代わりに all_girls が返ります。

all_girls と違ってデフォルトでキュアエコーが含まれます Precure.allエイリアスとして存在しているので好みに応じて使ってください

キラキラ☆プリキュアアラモードを追加

  • Precure.a_la_mode
  • Precure.alamode
  • Precure.kirakira_precure_a_la_mode
  • Precure.kirakira_precure_alamode

のいずれかで取得できます。

Precure.a_la_mode
#=> {:series_name=>"a_la_mode", :title=>"キラキラ☆プリキュアアラモード", :started_date=>Sun, 05 Feb 2017, :girls=>["cure_whip", "cure_custard", "cure_gelato", "cure_macaroon", "cure_chocolat"]}

Precure.a_la_mode.girls.map(&:precure_name)
#=> ["キュアホイップ", "キュアカスタード", "キュアジェラート", "キュアマカロン", "キュアショコラ"]

余談ですが今期の嫁はキュアカスタードです

Precure.dream_starsを追加

映画プリキュアドリームスターズ! に登場する Go!プリンセスプリキュア魔法つかいプリキュア! キラキラ☆プリキュアアラモードプリキュアが返ります

Precure.dream_stars.map(&:precure_name)
#=> ["キュアフローラ", "キュアマーメイド", "キュアトゥインクル", "キュアスカーレット", "キュアミラクル", "キュアマジカル", "キュアフェリーチェ", "キュアホイップ", "キュアカスタード", "キュアジェラート", "キュアマカロン", "キュアショコラ"]

余談

正式リリース前のバージョンのpreは、プレビュー(preview)の preプリキュア(precure)の pre の両方にかかっています

https://rubygems.org/gems/rubicure/versions

f:id:sue445:20170312133855p:plain

*1:厳密にはキュアフェリーチェプリキュアオールスターズには含まれません