<commit_before>package lila.fishnet

import org.joda.time.DateTime
import play.api.libs.json._

import chess.format.{ Uci, Forsyth, FEN }
import chess.variant.Variant

import lila.fishnet.{ Work => W }

object JsonApi {

  sealed trait Request {
    val fishnet: Request.Fishnet
    val engine: Request.Engine

    def instance(ip: Client.IpAddress) = Client.Instance(
      fishnet.version,
      fishnet.python,
      Client.Engine(engine.name),
      ip,
      DateTime.now)
  }

  object Request {

    sealed trait Result

    case class Fishnet(
      version: Client.Version,
      python: Client.Python,
      apikey: Client.Key)

    sealed trait Engine {
      def name: String
    }

    case class BaseEngine(name: String) extends Engine

    case class FullEngine(
      name: String,
      options: EngineOptions) extends Engine
<commit_msg>fishnet optional python version<commit_after>package lila.fishnet

import org.joda.time.DateTime
import play.api.libs.json._

import chess.format.{ Uci, Forsyth, FEN }
import chess.variant.Variant

import lila.fishnet.{ Work => W }

object JsonApi {

  sealed trait Request {
    val fishnet: Request.Fishnet
    val engine: Request.Engine

    def instance(ip: Client.IpAddress) = Client.Instance(
      fishnet.version,
      fishnet.python | Client.Python(""),
      Client.Engine(engine.name),
      ip,
      DateTime.now)
  }

  object Request {

    sealed trait Result

    case class Fishnet(
      version: Client.Version,
      python: Option[Client.Python],
      apikey: Client.Key)

    sealed trait Engine {
      def name: String
    }

    case class BaseEngine(name: String) extends Engine

    case class FullEngine(
      name: String,
      options: EngineOptions) extends Engine

{'fraction_non_alphanumeric': 0.08769931662870159, 'fraction_numerical': 0.0, 'mean_word_length': 2.794816414686825, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4724557', 'n_tokens_mistral': 543, 'n_tokens_neox': 519, 'n_words': 148}