Git Product home page Git Product logo

Comments (5)

Sopel97 avatar Sopel97 commented on August 25, 2024

when did that syntax change and how can we check programmatically for which one to use? Could we just use both at the same time and only one will be used?

from nnue-pytorch.

lucasart avatar lucasart commented on August 25, 2024

when did that syntax change?

20-mar: lucasart/c-chess-cli@4e8ec07

Now, be careful, because a critical bug was introduced on 20-Mar as well, which was reverted in 27-Mar. So 20-27 mar is a no go zone. I also extended testing coverage in my test suite, so this kind of bug doesn't pass the test anymore, and won't be commited.

how can we check programmatically for which one to use?

I think what you're looking to do is overkill. Realistically, you have probably 5 users for this, and all of them are skilled programmers, who can easily update by pulling the latest version from github.

Here's what happens:

$ ./c-chess-cli -each cmd=./test/engine depth=1 -engine name=e1 -engine name=e2 -resign count=3 score=700 -draw count=8 score=10
[1] Started game 1 of 1 (e1 vs e2)
[1] Finished game 1 (e1 vs e2): 0-1 {adjudication}
Score of e1 vs e2: 0 - 1 - 0  [0.000] 1
$ ./c-chess-cli -each cmd=./test/engine depth=1 -engine name=e1 -engine name=e2 -resign 3 700 -draw 8 10
Illegal token in -resign: '3'

In the second run c-chess-cli called exit(EXIT_FAILURE), so you could check the return value of the program. However, exit(EXIT_FAILURE) is also called for any fatal error (eg. wrong engine path). So you would have to check 2 things: 1/ non-zero error code returned 2/ parsing output contains 'Illegal token'.

Could we just use both at the same time and only one will be used?

No.

from nnue-pytorch.

vondele avatar vondele commented on August 25, 2024

I think it is generally useful if a binary would give version output. I've put that as a suggestion as an issue lucasart/c-chess-cli#43

apart from that, I guess we can adapt the code.

from nnue-pytorch.

lucasart avatar lucasart commented on August 25, 2024

@Sopel97 What help is wanted here ? It's trivial to change this line: https://github.com/glinscott/nnue-pytorch/blob/master/run_games.py#L75. As for the version programmatic test, you can forget about it, because the c-chess-cli -version was introduced after (you can also do this to make things future-proof, but that's orthogonal to the syntax change).

from nnue-pytorch.

Sopel97 avatar Sopel97 commented on August 25, 2024

So the best way we can proceed for now is to break backward compatibility in this script it seems

from nnue-pytorch.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.