OSDN Git Service

- shogi_server/players.rb: When a player was finishing with its
[shogi-server/shogi-server.git] / changelog
1 2009-01-02 Daigo Moriwaki <daigo at debian dot org>
2
3         * [shogi-server]
4           - shogi_server/timeout_queue.rb: the timeout parameter of the
5             constructor was not respected erroneously. This issue
6             has been fixed.
7           - shogi_server/players.rb: When a player was finishing with its
8             write socket broken, there was a chance that the thread of the
9             player in the giant lock had to wait for a long time (about 20
10             seconds), which might cause threads of other players stop and 
11             time out. (Closes: #14469)
12
13 2008-12-30 Daigo Moriwaki <daigo at debian dot org>
14
15         * [mk_html]
16           - Added a new option: --footer filename, which inserts contents of 
17             the filename at the bottom of a genrated page. A text specific to 
18             wdoor should be written by using this option. 
19             (Closes: #14470)
20           - It does no more depend on RDoc. RDoc::usage does not work well
21             (due to RDoc).
22
23 2008-12-28 Daigo Moriwaki <daigo at debian dot org>
24
25         * [mk_rate]
26           - Check kifu files more carefully so that files that contain
27             incomplete records are skipped.
28           - mk_rate might have failed to alloc due to out of memory. Now it
29             consumes less memory (about 200MB instead of 2GB).
30           - File names can be put into STDIN instead of specifying directory
31             names in command line arguments.
32         * [csa-file-filter]
33           - New file. It filters kifu files and is of use for a pre-filter
34             of mk_rate.
35
36 2008-12-13 Daigo Moriwaki <daigo at debian dot org>
37
38         * [shogi-server]
39           - Improved an existance check and etc. of directories specified
40             by command line options, expecially in case of the daemon mode. 
41             (Closes: #14244)
42           - A lotated log file is moved to $topdir/YYYY/MM/DD.
43             (Closes: #14245)
44
45 2008-11-27 Daigo Moriwaki <daigo at debian dot org>
46
47         * [shogi-server]
48           - Added sample/*.sh for command line samples.
49
50 2008-11-24 Daigo Moriwaki <daigo at debian dot org>
51
52         * [shogi-server]
53           - Added a new option --floodgate-history, which allows users to
54             specify a file name that stores the records of games. The
55             records are taken care of when games are matched.
56
57 2008-10-18 Daigo Moriwaki <daigo at debian dot org>
58
59         * [utils/eval_graph.rb]
60           - Display time control graphs as well.
61             Thanks to Nishimura-san for this idea.
62             (Closes: #13678)
63
64 2008-10-08 Daigo Moriwaki <daigo at debian dot org>
65
66         * [shogi-server]
67           - Ruby 1.8.7 (or later) must be used. Ruby 1.8.6 is not supported.
68           - Daemon mode is available.
69           - shogi_server/piece_ky.rb is again merged with
70             shogi_server/piece.rb, then has been removed.  
71           - Added a test case, TC_usi.rb.
72
73 2008-06-30 Daigo Moriwaki <daigo at debian dot org>
74
75         * [shogi-server]
76           - Added a new option --player-log-dir, which allows users to log
77             messages that are received or sent to the wire.
78
79 2008-06-28 Daigo Moriwaki <daigo at debian dot org>
80
81         * [shogi-server]
82           - A rating comment line is now written before the first move in a
83             record file instead of after the last move, which allows other
84             applications watching a game to recognize players in the middle 
85             of the game. (Closes #12821)
86           - If a player, including a monitor, stuck at the time of sending
87             messages to the wire, which means that the giant lock was locked,
88             it might have prevented other players from processing until
89             timeout occurred. This issue has been fixed. (Closes #12555)
90
91 2008-06-27 Daigo Moriwaki <daigo at debian dot org>
92
93         * [shogi-server]
94           -  Pairing players might not have shuffled players because of
95              poor shuffling algorithm. This issue has been fixed.
96              (Closes: #12661)
97
98 2008-06-25 Daigo Moriwaki <daigo at debian dot org>
99
100         * [players_graph.rb]
101           - Check invalid arguments. (Closes: #12856)
102
103 2008-06-23 Daigo Moriwaki <daigo at debian dot org>
104
105         * [mk_rate]
106           - Added a new option: --fixed-rate and --fixed-rate-player
107             whose rate always results in that rate. (Closes: #12800)
108
109 2008-06-06 Daigo Moriwaki <daigo at debian dot org>
110
111         * [shogi-server]
112           - The source has been splited to multiple sub files.
113           - The program now depends on rubygems and activesupport.
114           - The program can reload the source files on the flight, by
115             sending a HUP signal to the server.
116           - The server log will be rotated daily.
117
118 2008-05-18 Daigo Moriwaki <daigo at debian dot org>
119
120         * [shogi-server]
121           - Last game results (win or lose) of x1 players were not
122             available on the next game. This issue has been fixed.
123             Thanks to Tomoyuki Kaneko for debugging.
124           - For draw games, "'rating" line in a .csa file was 
125             wrong (meaningless). This issue has been fixed.
126
127 2008-05-16 Daigo Moriwaki <daigo at debian dot org>
128
129         * [news]
130           - The repository has been converted from CVS to Subversion.
131
132 2008-05-13 Daigo Moriwaki <daigo at debian dot org>
133
134         * [shogi-server]
135           - Floodgate's thread could cause an error when players.yaml was
136             cleared by another program (mk_rate). This issue has been 
137             fixed.
138           - Give default values to BasicPlayer, which fixed undefined 
139             method error in Pairing.
140
141 2008-05-10 Daigo Moriwaki <daigo at debian dot org>
142
143         * [shogi-server]
144           - The server could not recognize uchifuzume as an illegal move.
145             This bug has been fixed.
146           - The server crashed by an undefined method error.
147             This issue has been fixed.
148
149 2008-05-05 Daigo Moriwaki <daigo at debian dot org>
150
151         * [shogi-server]
152           - .csa files will be located in a sub directory such as
153             "2008/05/05/*.csa". Thease days, we have many games in a day. 
154             This change will help users browse a file list.
155
156 2008-05-03 Daigo Moriwaki <daigo at debian dot org>
157
158         * [mk_html]
159           - Show players who have accessed in the last 30 minutes with 
160             different colors.
161
162 2008-04-22 Daigo Moriwaki <daigo at debian dot org>
163
164         * [mk_html]
165           - When YSS was not rated on the wdoor mode, wrong rate24 scores
166             were displayed. This issue has been fixed. Now YSS absence 
167             results in "N/A".
168
169 2008-04-21 Daigo Moriwaki <daigo at debian dot org>
170
171         * [mk_rate]
172           - The half-life period is now configurable.
173             ex $ ./mk_rate --half-life 14 --half-life-ignore 7 <records>
174
175 2008-04-12 Daigo Moriwaki <daigo at debian dot org>
176
177         * [shogi-server]
178           - Renamed variables (@id) since they caused Ruby's warning.
179
180 2008-04-11 Daigo Moriwaki <daigo at debian dot org>
181
182         * [shogi-server]
183           - Improved a way to handle diferred moves (2008-03-24's change),
184             based on Tomoyuki Kaneko's patch.
185
186 2008-04-01 Daigo Moriwaki <daigo at debian dot org>
187
188         * [shogi-server]
189           - An incorrect LOGIN crashed the server. This issue has been
190             fixed.
191
192 2008-03-24 Daigo Moriwaki <daigo at debian dot org>
193
194         * [shogi-server]
195           - Converting characters for comments in moves caused an error. This 
196             issue has been fixed.
197           - If a player moves in the opponent's turn, it is illegal. But the
198             current CSA protocol does not clearly define a way to tell so to 
199             the players. This shogi-server internally keeps such a move in a
200             buffer and replay it when the player of the move gets his/her 
201             turn.
202
203 2008-03-16 Daigo Moriwaki <daigo at debian dot org>
204
205         * [shogi-server]
206           - Erroneously, Board#to_s's current player was always Black.
207             It caused wrong determination of sennichite since it did not
208             care about the current player of a state. This has been fixed.
209             Thanks Takada-san for reporting this bug.
210
211 2008-03-10 Daigo Moriwaki <daigo at debian dot org>
212
213         * [util/players-graph.rb]
214           - Applied Kaneko-san's patch, which also shows expected-rate24
215             rates.
216           - Small PNG gets smaller.
217
218 2008-03-08 Daigo Moriwaki <daigo at debian dot org>
219
220         * [mk_html]
221         - Added an option --wdoor. In this mode, a rate expected at Shogi
222           Club 24 is calculated from YSS's rating (he is 2400 now). 
223
224 2008-03-04 Daigo Moriwaki <daigo at debian dot org>
225
226         * [mk_rate]
227           - If the computed ratings do not stabilize, then mk_rate aborts.
228               $ ./mk_rate dir && ./mk_rate dir > players.yaml 
229             can avoid rewriting the invalid ratings to the file.
230
231 2008-02-23 Daigo Moriwaki <daigo at debian dot org>
232
233         * [shogi-server]
234           - A comment is converted to EUC-JP and then written in a log.
235             Note that this conversion guesses the input encoding. Clients
236             are recommended to send EUC-JP compatible strings to the
237             server.
238
239 2008-02-21 Daigo Moriwaki <daigo at debian dot org>
240
241         * [util/players-graph.rb]
242           - Released. Draw a chart for a player's rating score.
243
244 2008-02-17 Daigo Moriwaki <daigo at debian dot org>
245
246         * [shogi-server]
247           - An illegal teban specified for Floodgate login could crash the
248             server. This issue has been fixed.
249
250 2008-02-16 Daigo Moriwaki <daigo at debian dot org>
251
252         * [shogi-server]
253           - Thread.abort_on_exception is now false, meaning that 
254             a thread's abort does not affect the others. 
255           - The uchifuzume check did not generate promoting moves, which
256             could crash the server with illegal moves. This issue has
257             been fixed.
258
259 2008-02-14 Daigo Moriwaki <daigo at debian dot org>
260
261         * [shogi-server]
262           - Added a new pairing variation, Swiss-like style. Winners at the
263             previous games (his/her point of view, not the server's) are 
264             paired first, and then the others are matched. This is the 
265             default option now.
266           - Pairing classes are located in a separate source file,
267             pairing.rb. The file is 'load'ed each time to be used,
268             meaning that modifying the code will be applied to a running
269             server.
270           - You can specify a single player who will be out of pairing
271             when there are odd players waiting for Floodgate.
272
273 2008-02-13 Daigo Moriwaki <daigo at debian dot org>
274
275         * [shogi-server]
276           - When there are odd players wating for Floodgate, the random
277             pairing deletes the player who has ever played the most games.
278
279 2008-02-08 Daigo Moriwaki <daigo at debian dot org>
280
281         * [ml_html]
282           - For the Not-Yet-Rated group, those who have not connected
283             recently are not listed.
284         * [shogi-server]
285           - Floodgate's thread checks the current time each 10 secs.
286
287 2008-02-05 Daigo Moriwaki <daigo at debian dot org>
288
289         * [mk_rate] [mk_html]
290           - Display not-yet-rated players as well.
291         * [mk_html]
292           - Use Yahoo! UI Library.
293
294 2008-02-04 Daigo Moriwaki <daigo at debian dot org>
295
296         * [shogi-server] [webserver]
297           - In the daemon mode, if the specified directory was a relative
298             path, the server could fail to start with a permission denied
299             error. This issue has been fixed. The path is interpreted as 
300             an absolute path before switching to daemon. 
301           - In the daemon mode, a wrong process id was written in 
302             '--pid-file'. This issue has been fixed. Also, the pid file
303             will be removed when the server shuts down.
304
305 2008-02-03 Daigo Moriwaki <daigo at debian dot org>
306
307         * [shogi-server]
308           - Game names that are recognized as the floodgate mode are now 
309             /^floodgate-\d+-\d+$/.
310           - Floodgate could not schedule the next time when it was the next
311             day. This issue has been fixed.
312
313 2008-02-02 Daigo Moriwaki <daigo at debian dot org>
314
315         * [shogi-server]
316           - Implemented a new feature, Floodgate mode, for covenience with
317             public rating games. Now there is a special game "wdoor-900-0".
318             Matching players for that game is scheduled each 30 minitues.
319
320 2007-11-03 Daigo Moriwaki <daigo at debian dot org>
321
322         * [mk_rate]
323          - Support Ruby 1.8.6 patch level 111 (or higher) and GSL 1.10 (or higher).
324            It may not work with lower verions. 
325
326 2007-09-06 Daigo Moriwaki <daigo at debian dot org>
327
328         * [shogi-server]
329           - The logic to detect Oute-Sennichite was not complete. Both players
330             (checking side and escaping side) may cause Oute-Sennichite. The old
331             logic only cared for the checking player. This issue has been fixed.
332
333 2007-06-16  Daigo Moriwaki <daigo at debian dot org>
334
335         * [webserver]
336           - Initial version. This web server is an interface between HTTP and
337             shogi-server. Shogi-server commands will be available over HTTP. As
338             of now %%LIST and %%WHO commands are supported.
339         * [mk_rate]
340           - Bumped up GAME_LIMIT (from 10) to 15 because the calculation of
341             rates sometimes went wrong (infinite values).
342
343 2007-04-21  Daigo Moriwaki <daigo at debian dot org>
344
345         * [shogi-server]
346           - Implemented `CHALLENGE' command, and the server will respond with
347             `CHALLENGE ACCEPTED'. Note that this command is dummy for this server
348             because it is only available for CSA's official testing server and does
349             not belong to the CSA standard protocol.  Therefor, when clients receive
350             `CHALLENGE ACCEPTED' from this server, they must ignore it.
351           - Show revision in a start up message.
352
353 2007-04-01  Daigo Moriwaki <daigo at debian dot org>
354
355         * [shogi-server]
356           - Implemented one of the keepalive protocol in CSA protocol; If clients
357             send LF, the server sends back LF.
358           - More care for socket errors.
359
360 2007-03-27  Daigo Moriwaki <daigo at debian dot org>
361
362         * [mk_rate] When there were too few games to rate players (i.e. no
363           player to rate), mk_rate caused an error. Now it no longer shows
364           the error.
365
366 2007-03-10  Daigo Moriwaki <daigo at debian dot org>
367
368         * [mk_html] Popup shows additional information.
369
370 2007-03-02  Daigo Moriwaki <daigo at debian dot org>
371
372         * [shogi-server]
373           - Use WEBrick for server framework.
374           - Daemon mode is available.
375
376 2007-02-26  Daigo Moriwaki <daigo at debian dot org>
377
378         * [shogi-server]
379           - Failed to show usage. This issue has been fixed. 
380           - Initial start of the server failed beacause of empty players.yaml.
381             This issues has been fixed.
382
383 2007-02-18  Daigo Moriwaki <daigo at debian dot org>
384
385         * [mk_html]
386           - Show groups in the order specified in players.html.
387           - Players who gamed recently have a background color.
388         * [mk_rate]
389           - Implemented half-life effect. Numbers of win/lose decrease by this effect.
390
391 2006-11-26  Daigo Moriwaki <daigo at debian dot org>
392
393         * [shogi-server] Sente (gote) was able to move gote's (sente's) hand.
394           That move should be illegal. This issue has been fixed.
395
396 2006-11-01  Daigo Moriwaki <daigo at debian dot org>
397
398         * [mk_rate] Skip "abnormal" games, which were finished because of
399           network failure or communication error.  Recently some programs seem
400           to have a lot of tries to connect to the Shogi Server at wdoor for
401           debugging. We should ignore such games for a while to get a meaningful
402           ratings.
403
404 2006-10-30  Daigo Moriwaki <daigo at debian dot org>
405
406         * [mk_rate][mk_html]
407           - Put players into "connected" groups in order to
408             show a correct, meaningful rating. In the group, each player has at
409             least a game with other players.
410           - The format of players.yaml was updated.
411         * [shogi-server] Followed the new format of players.yaml.
412
413 2006-10-08  Daigo Moriwaki <daigo at debian dot org>
414
415         * [mk_rate] Corrected making win_loss_matrix.
416
417 2006-10-02  Daigo Moriwaki <daigo at debian dot org>
418
419         * [mk_rate] players who never win or lose are not rated in order
420           the calculation to complete.
421
422 2006-09-30  Daigo Moriwaki <daigo at debian dot org>
423
424         * [shogi-server] The CSA mode supports the trip in a password.
425
426 2006-09-22  Daigo Moriwaki <daigo at debian dot org>
427
428         * [shogi-server] Refactored the login procedures.
429
430 2006-09-21  Daigo Moriwaki <daigo at debian dot org>
431
432         * [mk_rate] It failed parse draw games. Now this bug has been fixed.
433         * [mk_html] Add CSS to look better.
434
435 2006-09-15  Daigo Moriwaki <daigo at debian dot org>
436
437         * [shogi-server]
438           - Remove the trip in a password. Now the password is hashed.
439         * [mk_rate]
440           - Support @NORATE syntax in a name, which avoids the player is
441             rated.
442
443 2006-09-09  Daigo Moriwaki <daigo at debian dot org>
444
445         * [shogi-server]
446           - Support a new command, %%VERSION. It shows the server's revision#.
447
448 2006-09-07  Daigo Moriwaki <daigo at debian dot org>
449
450         * [shogi-server]
451           - Re-design: trip is now a suffix of the password, not name.
452           - Simplified the output of %%RATING.
453         * [mk_rate]
454           - Support "@" indentificaton in a name; players with same
455             before-@-names are mapped to one.
456
457 2006-09-05  Daigo Moriwaki <daigo at debian dot org>
458
459         * [mk_rate] Fix a bug. It solves the correct rate.
460
461 2006-08-18  Daigo Moriwaki <daigo at debian dot org>
462
463         * [mk_rate] Re-design. 
464           - Correct the equations.
465           - Apply deaccelerated Newton method.
466
467 2006-08-16  Daigo Moriwaki <daigo at debian dot org>
468
469         * [mk_rate]
470           - Fix a bug. Now it can see black/white players in a csa file.
471         * [shogi-server]
472           - Add a space in the output of %%RATING.
473
474 2006-08-14  Daigo Moriwaki <daigo at debian dot org>
475
476         * [mk_rate] Record numbers of win/loss games.
477         * Add mk_html, which generates html from players.yaml
478         * Fix test/test_board.rb. Now it works. 
479         * Add test/TC_ALL.rb to run all test cases.
480         * [shogi-server] Fix a bug. Now it can show %%RATING even if it has no
481           rated player.
482
483 2006-08-11  Daigo Moriwaki <daigo at debian dot org>
484         
485         * Add mk_rate, which calculate rating scores.
486
487 2006-08-10  Daigo Moriwaki <daigo at debian dot org>
488
489         * Change the style of a comment line on the rated game.
490
491 2006-08-07  Daigo Moriwaki <daigo at debian dot org>
492
493         * Change the player id, which is now <name>+<hash_of_the_trip>.
494         * Fix the max length of the login name with a trip.
495         * Add a comment line about the rated game status in the CSA file.
496         * Remove the rating system, which will be calculated by another
497           program.
498
499 2006-08-01  Daigo Moriwaki <daigo at debian dot org>
500
501         * Add a command, %%RATING, to show a ranking sorted by rates.
502
503 2006-07-31  Daigo Moriwaki <daigo at debian dot org>
504
505         * Add a simple rating system.
506
507 2006-07-30  Daigo Moriwaki <daigo at debian dot org>
508
509         * Add a @move_counter in Board class, which is used by Shogi Viewer
510           CGI.
511
512 2006-04-28  Daigo Moriwaki <daigo at debian dot org>
513
514         * Jishogi kachi declaration did not work. This bug has been fixed.
515           Add debug lines to show a jishogi state.
516
517 2006-04-08  Daigo Moriwaki <daigo at debian dot org>
518
519         * Support CSA Protocol Version 1.1.
520         * Change the declaration of Jishogi 1.1.
521
522 2006-03-10  Daigo Moriwaki <daigo at debian dot org>
523
524         * Kifu logs are always written in separate files.
525         * Add a test case, test/TC_functional.rb
526         * Some refactorings.
527