OSDN Git Service
Daigo Moriwaki [Sun, 18 Dec 2011 13:37:41 +0000 (22:37 +0900)]
shogi_server/board.rb, piece.rb: Refactoring to cache OU pieces, which was inspired by 81SquareShogi-server's change
(
74b24b88c843f1dd767412475b117481d1d5e8eb).
Daigo Moriwaki [Mon, 12 Dec 2011 13:11:04 +0000 (22:11 +0900)]
Support Ruby 1.9.3.
Daigo Moriwaki [Mon, 12 Dec 2011 13:10:09 +0000 (22:10 +0900)]
Improved robustness of test/benchmark.rb.
Daigo Moriwaki [Sun, 4 Dec 2011 09:51:49 +0000 (18:51 +0900)]
Fixed test cases in TC_floodgate_next_time_generator.rb
Daigo Moriwaki [Sun, 4 Dec 2011 06:06:10 +0000 (15:06 +0900)]
Fixed test cases for TC_floodgate_history.rb
Daigo Moriwaki [Sun, 4 Dec 2011 05:59:48 +0000 (14:59 +0900)]
Log an error for an inappropriate return value of commands.
Daigo Moriwaki [Sun, 4 Dec 2011 05:58:49 +0000 (14:58 +0900)]
GetBuoyCountCommand did not return expecpted values.
This issue has been fixed.
Daigo Moriwaki [Sun, 4 Dec 2011 05:57:14 +0000 (14:57 +0900)]
Fixed assertions.
Fixed 'require' path for Ruby 1.9.3.
Added rate property for MoclPlayer.
Daigo Moriwaki [Sun, 4 Dec 2011 05:43:31 +0000 (14:43 +0900)]
Fixed 'require' path for Ruby 1.9.3.
Daigo Moriwaki [Sun, 4 Dec 2011 05:42:05 +0000 (14:42 +0900)]
Corrected timing issue.
Daigo Moriwaki [Sun, 4 Dec 2011 05:30:05 +0000 (14:30 +0900)]
Explicit file encoding.
Daigo Moriwaki [Sun, 4 Dec 2011 05:22:20 +0000 (14:22 +0900)]
assertion messages should be String for Ruby 1.9.3
Daigo Moriwaki [Sun, 4 Dec 2011 05:19:16 +0000 (14:19 +0900)]
Corrected the test case: test_instance_game_name
Daigo Moriwaki [Sun, 4 Dec 2011 05:18:11 +0000 (14:18 +0900)]
Array#choice has been changed to Array#sample in Ruby 1.9.3
Daigo Moriwaki [Sat, 3 Dec 2011 12:34:42 +0000 (21:34 +0900)]
Corrected to be able to test TC_oute_sennichite.rb alone.
Daigo Moriwaki [Sat, 3 Dec 2011 12:32:59 +0000 (21:32 +0900)]
Corrected to be able to test TC_not_sennichite.rb alone.
Daigo Moriwaki [Sat, 3 Dec 2011 12:19:38 +0000 (21:19 +0900)]
Corrected to be able to test TC_jishogi_kachi.rb alone.
Daigo Moriwaki [Sat, 3 Dec 2011 12:18:31 +0000 (21:18 +0900)]
Corrected to be able to test TC_functional.rb alone.
Daigo Moriwaki [Sat, 3 Dec 2011 12:10:16 +0000 (21:10 +0900)]
Added a new method, Player#wait_write_thread_finish, to have a writer thread finish milder.
Daigo Moriwaki [Sat, 3 Dec 2011 06:51:57 +0000 (15:51 +0900)]
Fixed timestamp format for Ruby 1.9.3.
Daigo Moriwaki [Sat, 3 Dec 2011 06:40:49 +0000 (15:40 +0900)]
Corrected the library name change for Ruby 1.9.3.
Daigo Moriwaki [Sat, 3 Dec 2011 06:40:12 +0000 (15:40 +0900)]
Added magic comment of this file encoding for Ruby 1.9.3.
Daigo Moriwaki [Sat, 3 Dec 2011 06:38:01 +0000 (15:38 +0900)]
Updated shebang for Ruby 1.9.3.
In Debian the lastest /usr/bin/ruby1.9.1 comes from Ruby 1.9.3.
Daigo Moriwaki [Sat, 3 Dec 2011 06:36:46 +0000 (15:36 +0900)]
Fixed case... when... syntax for Ruby 1.9.3.
daigo [Sat, 30 Oct 2010 11:11:39 +0000 (20:11 +0900)]
- Added a new debug message.
- Added a testing line that is default commened out.
daigo [Sat, 30 Oct 2010 11:10:19 +0000 (20:10 +0900)]
Corrected namespace of GSL::Vector. This line is not reached, though.
daigo [Wed, 6 Oct 2010 13:39:22 +0000 (22:39 +0900)]
- mk_rate: the usage was not updated. (Closes: #23358)
Thanks to Hoki-san to report this issue.
daigo [Sat, 18 Sep 2010 02:45:54 +0000 (11:45 +0900)]
Fixed a bug #23245.
For hadicapped games, wrong initial positions were delivered to players and
monitors. This issue has been fixed. (Closes: #23245)
daigo [Sat, 18 Sep 2010 02:18:38 +0000 (11:18 +0900)]
Refactoring: Changed the name of a constant.
daigo [Sat, 18 Sep 2010 02:04:26 +0000 (11:04 +0900)]
Added a test-time-run target which runs a test for day changes
daigo [Sun, 5 Sep 2010 14:27:23 +0000 (23:27 +0900)]
Enhanced the CSA Login mode to accept a turn preference.
Logging in the server with the CSA mode, users are now allowed to
specify a turn preference in an enhanced gamename string which
looks like <gamename>-<time>-<time>-<turn>. The first three
parts are a regular game definition. The last "-<turn>"
part is optional.
+ Without -<turn> (i.e. same as the previous behavior), there
is no turn preference. A user's turn will be defined randomly.
+ <turn> is either "B" for black or "W" for white.
daigo [Sun, 5 Sep 2010 13:27:55 +0000 (22:27 +0900)]
Added some test cases.
daigo [Sun, 5 Sep 2010 07:59:33 +0000 (16:59 +0900)]
Update changelog
daigo [Sun, 5 Sep 2010 06:13:44 +0000 (15:13 +0900)]
Enhanced the Buoy feature: Players are allowed to start buoy games with specific turns.
ex. %%GAME buoy_foo-1500-0 +
daigo [Sat, 4 Sep 2010 08:18:47 +0000 (17:18 +0900)]
Refactored Player#set_sente_from_str().
daigo [Sat, 4 Sep 2010 07:10:35 +0000 (16:10 +0900)]
Refactored methods: League#find_rival and Game::decide_turns.
daigo [Sat, 4 Sep 2010 06:06:48 +0000 (15:06 +0900)]
The Buoy behaivor is changed.
Starting a buoy game, players are notified a starting game
position with the initial position and moves, instread of a
targeting position.
daigo [Thu, 5 Aug 2010 14:06:22 +0000 (23:06 +0900)]
shogi_server/command.rb: Prevent a possible password from be logged in a log file when players send invalid LOGIN-like commands.
Thanks to Tomoyuki Kaneko for this idea.
daigo [Tue, 3 Aug 2010 13:21:09 +0000 (22:21 +0900)]
../shogi_server/game.rb: mkdir_p will be performed in a global mutex of ShogiServer::Mkdir.
daigo [Tue, 3 Aug 2010 13:12:36 +0000 (22:12 +0900)]
../shogi_server.rb, ../shogi_server/util.rb: Refactored mkdir_for to Mkdir.mkdir_for.
daigo [Tue, 3 Aug 2010 12:44:26 +0000 (21:44 +0900)]
shogi_server/league/floodgate_thread.rb: SetupFloodgate#start now returns an instance correctly.
daigo [Tue, 3 Aug 2010 12:31:52 +0000 (21:31 +0900)]
Added building blocks to test an issue where mtime of log files is earlier that system time.
daigo [Tue, 3 Aug 2010 12:27:38 +0000 (21:27 +0900)]
Support multiple clients to test.
daigo [Tue, 3 Aug 2010 12:26:34 +0000 (21:26 +0900)]
Added test cases.
daigo [Tue, 3 Aug 2010 12:25:25 +0000 (21:25 +0900)]
Convert syntax: Time::now to Time.now
daigo [Sun, 25 Jul 2010 12:39:49 +0000 (21:39 +0900)]
Provided a test case for Logger.logdev.mkdir_for()
daigo [Sun, 25 Jul 2010 08:43:31 +0000 (17:43 +0900)]
- shogi-server: Improved fault tolerance of the server.
daigo [Sun, 25 Jul 2010 08:38:49 +0000 (17:38 +0900)]
shogi_server.rb: Fixed a race condition in a case of switching log files
Creating a new directory to archive logs may have caused race condition,
which ended up with making the server unavailable. This issue has
been fixed.
daigo [Sun, 25 Jul 2010 06:17:43 +0000 (15:17 +0900)]
Merge branch 'logger'
Conflicts:
changelog
daigo [Sun, 25 Jul 2010 06:15:23 +0000 (15:15 +0900)]
- shogi_server/command.rb: Commands specific to 81Dojo, startig with '%%%', are just ignored instead of causing unknown command errors.
daigo [Sun, 25 Jul 2010 05:40:57 +0000 (14:40 +0900)]
- shogi_server.rb: Refactoring. Added test/TC_logger.rb to test ShogiServer::Logger class.
daigo [Sun, 25 Jul 2010 05:46:19 +0000 (14:46 +0900)]
- shogi_server/command.rb: For an unknown error command log, an empty line is no longer logged.
daigo [Sun, 25 Jul 2010 03:41:32 +0000 (12:41 +0900)]
Added new targets to test the server: test-run-daemon and stop-daemon
daigo [Sat, 24 Jul 2010 03:54:36 +0000 (12:54 +0900)]
Resolved merge conflict
daigo [Fri, 23 Jul 2010 10:20:26 +0000 (19:20 +0900)]
* [shogi-server]
- shogi_server/league/floodgate_thread.rb: When the server run
with DEBUG mode, it ended up with an undefined variable error.
This issue has been fixed.
daigo [Sat, 17 Jul 2010 11:31:35 +0000 (20:31 +0900)]
* [shogi-server]
- shogi_server.rb, shogi_server/board.rb, shogi_server/move.rb
- Refactoring: Board can now move_to() and move_back() a move
instread of deep_copy().
daigo [Sun, 11 Jul 2010 09:34:23 +0000 (18:34 +0900)]
shogi_server/league.rb: Improved performance of Persistance#get_players.
It took about 20 seconds for a large size of players (5,300 lines in
players.yaml). Now it completes in an instance.
daigo [Sun, 11 Jul 2010 09:22:05 +0000 (18:22 +0900)]
Set initial values to BasicPlayer's instance variables.
Daigo Moriwaki [Sat, 10 Jul 2010 10:17:05 +0000 (19:17 +0900)]
Updated usage.
daigo [Thu, 8 Jul 2010 12:57:00 +0000 (21:57 +0900)]
Added a sample command line to run the server.
daigo [Fri, 2 Jul 2010 02:57:56 +0000 (11:57 +0900)]
* [shogi-server]
- A new command line option:
--floodgate-names GameStringA[,GameStringB[,...]]
- Floodgate time configuration file:
You need to set starting times of floodgate groups in
configuration files under the top directory. Each floodgat
e group requires a correspoding configuration file named
"<game_name>.conf". The file will be re-read once just after a
game starts.
daigo [Sat, 26 Jun 2010 06:14:14 +0000 (15:14 +0900)]
Added some module functions related to DateTime or Time.
Daigo Moriwaki [Tue, 22 Jun 2010 00:27:23 +0000 (09:27 +0900)]
Merge branch 'master' of git.sourceforge.jp:/gitroot/shogi-server/shogi-server
daigo [Sat, 19 Jun 2010 08:19:59 +0000 (17:19 +0900)]
Improved stability of test results.
TestClientAtmark#test_toryomight sometimes fail. Adding a short
sleep interval makes this issue happen less likely. 10 of 10 trials
were successful.
daigo [Sat, 19 Jun 2010 08:06:06 +0000 (17:06 +0900)]
Improved stability of test results.
TestTwoSameMoves#test_two_same_moves might sometimes fail. Adding a short
sleep interval makes this issue happen less likely. 10 of 10 trials
were successful.
Daigo Moriwaki [Sun, 6 Jun 2010 13:55:59 +0000 (22:55 +0900)]
Added a test case for Floodgate#game_name?
Daigo Moriwaki [Sun, 6 Jun 2010 13:46:18 +0000 (22:46 +0900)]
Refactored MockLogger class.
Daigo Moriwaki [Tue, 1 Jun 2010 14:22:04 +0000 (23:22 +0900)]
Provided more test cases for Monitor features.
Daigo Moriwaki [Tue, 1 Jun 2010 13:52:50 +0000 (22:52 +0900)]
- shogi_server/command.rb: Fixed an issue that MONITOR2OFF did not
work. Thanks to HIDECHI and koudayu.
Daigo Moriwaki [Mon, 10 May 2010 12:25:22 +0000 (21:25 +0900)]
Help the write_thread to terminate
Daigo Moriwaki [Mon, 10 May 2010 12:23:47 +0000 (21:23 +0900)]
Improved performance and stability of tests.
Daigo Moriwaki [Sat, 8 May 2010 04:58:49 +0000 (13:58 +0900)]
Added a benchmark program.
ex: time ruby1.9.1 benchmark.rb csa/wdoor+floodgate-900-0+gps_normal+gps_l+
20100507120007.csa 10
Daigo Moriwaki [Sat, 8 May 2010 02:22:52 +0000 (11:22 +0900)]
* [mk_rate]
- Previously mk_rate did not count in draw games. Now a draw game
is considered to weight 0.5 win and 0.5 loss. Respect
Inaniwa-shogi which strategically aims to draw.
- a new command line option, --skip-draw-games. In this mode, draw
games are just ignored as mk_rate previously did.
daigo [Sun, 25 Apr 2010 04:25:52 +0000 (13:25 +0900)]
- shogi_server/player.rb:
Log a warning message in a case that a player closes a connection suddenly.
I investigated this issue: http://d.hatena.ne.jp/mkomiya/
20100424/
1272095860
daigo [Sun, 25 Apr 2010 04:25:24 +0000 (13:25 +0900)]
Added a comment for gets_safe()
daigo [Tue, 13 Apr 2010 13:50:11 +0000 (22:50 +0900)]
- shogi_server/command.rb:
Equality of MonitorHandler class was wrong. %%MONITOROFF and
%%MONITOR2OFF may cause unexpected behavior. This issue has been
fixed. Thanks to Kota Fujiwara for reporting.
daigo [Sun, 7 Mar 2010 12:56:01 +0000 (21:56 +0900)]
* [shogi-server] Ignore the last move of two sequential ones
- If two sequential moves from a player are identical, the last
one will be ignored and a game is in play. This situation might
happen with human players, especially on slow network,
impatiently sending a move twice.
Daigo Moriwaki [Sat, 27 Feb 2010 14:52:14 +0000 (23:52 +0900)]
* [shogi-server] The server now provides more accurate time control.
Previouslly, a player's thinking time included a time waiting to get th
e giant lock. This may have caused games to time up, especially, during
byo-yomi etc.
Daigo Moriwaki [Sat, 23 Jan 2010 08:37:44 +0000 (17:37 +0900)]
Forgot to add this file at the previous commit.
Daigo Moriwaki [Sat, 23 Jan 2010 08:35:29 +0000 (17:35 +0900)]
* [shogi-server]
- Experimental feature: support handicapped games.
Game names that have the following prefixes are recognized as
handicapped games. Turn symbols "+" and "-" mean Uwate (expert)
and Shitate (beginner) respectively (i.e. Uwate players first).
"*" is not available.
- hclance_
- hcbishop_
- hcrook_
- hcrooklance_
- hc2p_
- hc4p_
- hc6p_
- hc10p_
Daigo Moriwaki [Fri, 15 Jan 2010 10:25:39 +0000 (19:25 +0900)]
Proposal implementation of a new command called MONITOR2{ON,OFF}.
* [shogi-server]
- shogi_server/command.rb, test/TC_command.rb
Proposal implementation of a new command called MONITOR2{ON,OFF}.
When the MONITOR2ON command is issued by a player, the server
immediately sends the player the entire contents of a record
file of the game, i.e. history of moves and so on, at that time.
Then, the server will forward subsequent moves like they are
appended to the record file.
- Behavior changed: A player monitoring a game with MONITORON will
not receive Game#show again when a gaming player resigns (:toryo).
Daigo Moriwaki [Sun, 10 Jan 2010 07:47:20 +0000 (16:47 +0900)]
* Converted the repository from Subversion to Git.
beatles [Sun, 27 Dec 2009 04:26:46 +0000 (04:26 +0000)]
Floodgate games were not started. This issue has been fixed.
beatles [Sat, 26 Dec 2009 01:40:20 +0000 (01:40 +0000)]
* [shogi-server]
- The server can now provide multiple floodgate modes such as
floodgate-900-0 and floodgate-3600-0.
beatles [Sat, 26 Dec 2009 01:40:19 +0000 (01:40 +0000)]
The game_name attribute has been moved to the super class, BasicPlayer.
In order to test cases using BasicPlayer class, it now requires the game_name attribute.
beatles [Sat, 26 Dec 2009 01:40:18 +0000 (01:40 +0000)]
- shogi-server, shogi_server/league/floodgate.rb: Changed the argument of Floodgate.new.
beatles [Sat, 26 Dec 2009 01:40:17 +0000 (01:40 +0000)]
Moved TestPairing class to test/TC_pairing.rb.
Refactoring.
beatles [Sat, 26 Dec 2009 01:40:16 +0000 (01:40 +0000)]
- shogi_server/pairing.rb: Added a new class: StartGameWithoutHumans.
This tries to make pairs trying to avoid a human-human match. This is now enabled instread of the previous class: StartGame.
beatles [Sat, 26 Dec 2009 01:40:15 +0000 (01:40 +0000)]
- shogi_server/player.rb: Added new methods: is_human? and is_computer?.
A human player is recommened to use a name ending with '_human'.
ex. 'hoge_human', 'hoge_human@p1'
beatles [Fri, 4 Dec 2009 10:32:07 +0000 (10:32 +0000)]
Took (a bit) care of Windows platforms.
The HUP signal is not supported by Ruby on Windows. Now it is disabled on Windows.
beatles [Sun, 29 Nov 2009 14:52:39 +0000 (14:52 +0000)]
Corrected.
beatles [Wed, 25 Nov 2009 09:00:59 +0000 (09:00 +0000)]
Added a tool to investicate statistics of csa kifu files
beatles [Sun, 15 Nov 2009 13:24:45 +0000 (13:24 +0000)]
* [mk_rate]
- Added a new command line option: --base-date. You can specify a
base date to calculate rating scores. Games in the `future' are
ignored for the calculation.
beatles [Sun, 15 Nov 2009 13:24:44 +0000 (13:24 +0000)]
Added a new feature, LoggingObserver, which logs a result of each game.
beatles [Sun, 15 Nov 2009 13:24:44 +0000 (13:24 +0000)]
Corrected typo
beatles [Sun, 15 Nov 2009 13:24:43 +0000 (13:24 +0000)]
In a case of the Errno::ECONNRESET error, the error is correctly logged to the server log file.
beatles [Sun, 15 Nov 2009 13:24:42 +0000 (13:24 +0000)]
Split GameResult related classes to shogi_server/game_result.rb
beatles [Sun, 8 Nov 2009 14:38:12 +0000 (14:38 +0000)]
One more correction.
beatles [Sun, 8 Nov 2009 14:36:33 +0000 (14:36 +0000)]
Corrected.
beatles [Sun, 8 Nov 2009 13:48:48 +0000 (13:48 +0000)]
* [mk_rate]
- Split a pre-process collecting game results from csa files into
a new command, mk_game_results. Now, Generating players.html
requires two steps as follows:
% ./mk_game_results dir_of_csa_files > 00list
% ./mk_rate 00list > players.html
or
% ./mk_game_results dir_of_csa_files | ./mk_rate > players.html
(Closes: #19454)