Thibault Duplessis
14828e8478
use proper Color type and reuse json handlers
2021-11-20 09:51:26 +01:00
Thibault Duplessis
ae47f1b3a9
add finished flag to /api/games/user API endpoint
2021-11-03 08:43:02 +01:00
Thibault Duplessis
7944a11500
also export ongoing games in /api/games/user
2021-10-07 10:50:41 +02:00
Thibault Duplessis
1709f2e214
/api/games/user sort query parameter
2021-10-05 21:16:16 +02:00
Thibault Duplessis
797c7b759a
download all tournament games of a single player
2021-10-02 09:58:20 +02:00
Thibault Duplessis
ffb4edb9b0
add %eval annotations to study PGN exports - closes #9533
2021-08-08 10:16:43 +02:00
Golden Tailor
8766b86f6d
Expose swiss ID in game API
2021-07-16 13:42:27 +03:00
Thibault Duplessis
0e7d8649ba
add API endpoint to get multiple TV games of a channel
...
for #9194 & #9148
2021-06-16 13:59:39 +02:00
Thibault Duplessis
2bdaa990f2
ongoing games cannot be exported
...
because the current state of ongoing games is protected
see this endpoint instead:
https://lichess.org/api#operation/apiUserCurrentGame
requires changing #9180
2021-06-15 16:27:14 +02:00
Thibault Duplessis
63a89e6303
download arena tournament results as CSV - closes #8869
2021-05-06 13:33:55 +02:00
Thibault Duplessis
c8e280c51c
offer swiss results download as CSV - for #8869
2021-05-06 13:19:03 +02:00
Thibault Duplessis
2ec45ec15e
simplify and fix move delay in game export
2021-02-21 11:43:11 +01:00
Thibault Duplessis
f42f761179
fix export of ongoing games - closes #8228
...
gotta upgrade them from the in-heap round cache
2021-02-21 11:31:33 +01:00
Thibault Duplessis
5f839a0725
export ongoing games, but with a move delay
2021-01-30 22:46:52 +01:00
Thibault Duplessis
e19929f094
also apply delay in JSON exports
2021-01-30 22:30:17 +01:00
Thibault Duplessis
1e2f21241c
game export: don't delay first moves of ongoing game
2021-01-30 22:29:35 +01:00
Thibault Duplessis
8ad646b666
fix new scala warnings
2020-11-26 10:02:50 +01:00
Thibault Duplessis
e227700d42
full scalachess FEN typing
...
probably causing some bugs, due to weakly typed equality
2020-10-18 20:21:34 +02:00
Thibault Duplessis
099b167cb8
ensure player names are replaced in PGN exports
...
closes lichess-org/api#67
Only the PGN tags have the player name replacements,
as explicitely mentioned in the API documentation.
The idea is that if you're getting JSON,
then you can manipulate it and do the needed replacement yourself.
Whereas PGN is often passed directly to replay software,
hence why lichess offers to modify it at the source.
2020-10-15 14:16:31 +02:00
Thibault Duplessis
aaf88bc62c
scalafmt 2.7.1
2020-09-21 09:28:28 +02:00
Thibault Duplessis
7a2918edcc
cats compile
2020-08-12 08:53:51 +02:00
Thibault Duplessis
738e6f8e2d
pgn export player file for games by user
2020-07-09 23:50:25 +02:00
Thibault Duplessis
76ea583633
custom players file when exporting multiple games by IDs
2020-07-09 23:44:35 +02:00
Thibault Duplessis
df655e9e23
export game PGN with real player names and ratings through external file
...
curl 'l.org/game/export/FUPEWMpY?players=0ff573018f/gistfile1.txt
'
2020-07-09 21:15:57 +02:00
Thibault Duplessis
a4c640615a
filter games 5x faster in throttled API
2020-07-03 18:09:11 +02:00
Thibault Duplessis
15072542ba
add player team data to /api/tournament/:id/games - for #6756
2020-07-02 12:22:06 +02:00
Thibault Duplessis
ed1b9defc7
scalafmt 2.6.1
2020-06-24 11:37:18 +02:00
Thibault Duplessis
6f34215ca5
remove trailing space
2020-05-22 08:09:13 -06:00
Lakin Wecker
0bf40bb19f
Switch to keepAlive.
...
Much better.
2020-05-19 08:07:13 -06:00
Lakin Wecker
1ffa73157d
Empty line, no space.
2020-05-18 18:25:59 -06:00
Lakin Wecker
51ba763448
Send empty games every 70 seconds to keep the connection alive.
2020-05-18 18:24:07 -06:00
Thibault Duplessis
ca53974b1d
api to export swiss tournament games
2020-05-11 12:46:35 -06:00
Thibault Duplessis
de1d0005eb
api to export games of a swiss tournament
2020-05-11 12:34:44 -06:00
Thibault Duplessis
2db2fdd1e2
live secret keys to bypass live game export delay
2020-05-08 09:31:27 -06:00
Thibault Duplessis
5488a09548
scalafmt 2.5
2020-05-05 22:11:15 -06:00
Thibault Duplessis
2b93519a62
suggest file name for tournament games download
2020-04-19 08:09:33 -06:00
Thibault Duplessis
eed164844c
expose ongoing game with 3 moves delay on /game/export/{id}
2020-04-15 11:58:22 -06:00
Thibault Duplessis
264fdd61f4
add player berserk flag to tournament games API without extra DB reqs
...
closes #5955
2020-01-26 09:29:08 -06:00
Thibault Duplessis
3d2327af6a
add api/games/user?pgnInJson
2020-01-21 09:20:17 -06:00
Thibault Duplessis
c0aa9734f3
done propagating the execution context everywhere
2019-12-13 21:08:21 -06:00
Thibault Duplessis
ff1cc70bef
reformat with scalafmt
2019-12-13 08:37:32 -06:00
Thibault Duplessis
1e96576ef6
more streaming improvements
2019-12-08 20:54:14 -06:00
Thibault Duplessis
d78b426838
write joda DateTimes as JSON numbers
2019-12-07 18:43:22 -06:00
Thibault Duplessis
1d9100e4c5
rewrite streaming APIs with akka streams
...
yummy
2019-12-04 01:34:15 -06:00
Thibault Duplessis
7ed4ef4dbb
api module WIP
2019-12-04 00:45:33 -06:00
Thibault Duplessis
4c6df0ce73
migrate tournament module
2019-12-02 18:42:57 -06:00
Thibault Duplessis
b587dfa9de
Json.add skips the key if the value is undefined
2019-08-27 08:09:51 +02:00
ProgramFOX
a328730992
Expose tournament ID in game API
...
Note that **it's intentional** that tournamentId does not immediately get added to the first Json.obj. The reason is that when tournamentId is None, the JSON will contain `"tournament":null` which gives just as much information as leaving the field out, and we don't want to make our HTTP response bigger for nothing...
2019-08-27 01:45:49 +02:00
Thibault Duplessis
61f503a68b
add player.aiLevel to game JSON API - closes #4870
2019-02-03 13:03:47 +07:00
Thibault Duplessis
fe55f719d6
add /api/tournament/{id}/results ndjson API
2018-11-20 12:15:33 +07:00