Skip to content

v0.3-DL-2 - Dreamland Patch Release 2

Latest
Compare
Choose a tag to compare
@IepIweidieng IepIweidieng released this 26 Feb 12:03

修改紀錄 | Changelog

  • API 變更 | API Changes
    1. 重新定義全域物件 BBS 為 Ruby module 而非 Ruby class
      Redefine Ruby global object BBS to be Ruby module rather than Ruby class
  • 問題修正 | Fixed issues
    1. 修正執行 BBS-Ruby 時沒有真的清除螢幕的問題
      Fix the issue that the screen is not really cleared when BBS-Ruby is launched
    2. 避免 BBS-Ruby 執行失敗時印出的錯誤訊息可能與背景同色而隱形的問題
      Prevent error messages produced by BBS-Ruby from being invisible due to being in the same color as the background
    3. 解決 Ruby 全域變數/物件不會重設的問題 (需要 mruby)
      Resolve the issues that Ruby global variables/objects never reset (mruby required)
  • 功能改進 | Functionality improvements
    1. 增加對 mruby 的支援,解決 Ruby 全域變數/物件不會重設的問題
      Add support for mruby; resolve the issues that Ruby global variables/objects never reset
    2. 使用白名單控制 Ruby gem library 的載入 (需要 mruby)
      Use a white list to determine which Ruby gem libraries will be loaded (mruby required)
  • 程式改進 | Code quality improvements
    1. 強化程式碼的 const correctness
      Enhance the const correctness of the code
    2. 讓程式碼符合 ISO C++98 標準,支援使用 C++ 編譯器編譯
      Make the code conform to ISO C++98; thus allow it to be compiled with a C++ compiler
    3. 用型別安全的 rb_funcallv() 取代 rb_funcall() 的使用
      Replace usages of rb_funcall() with type-safe rb_funcallv()
    4. 將接受任意數量參數的 C API 函數改寫成接受 C array 而非 Ruby array
      Rewrite variadic C API functions to accept a C array rather that a Ruby array
    5. 其他程式碼重構/細節修正
      Other refactors and detail corrections
  • 其他 | Other changes
    1. 不再設定 signal handler
      Signal handlers are no longer replaced when BBS-Ruby is launched
    2. 避免在 Ruby interpreter 初始化前印錯誤訊息
      Prevent printing error messages produced by Ruby interpreter before the interpreter is initialized