Commit Graph

58 Commits (07fe9c8817e176691e65168f55ad2d07c9036a8c)

Author SHA1 Message Date
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