<commit_before>/** The data-only interface for User for transport across IPC. */
export interface IUser {
  readonly login: string
  readonly endpoint: string
  readonly emails: ReadonlyArray<string>
  readonly avatarURL: string
  readonly id: number
  readonly name: string
}

/**
 * A GitHub user, representing an entity that has interacted with a repository used by GitHub Desktop.
 *
 * These are read-only entities, and are typically associated with commits or mentions.
 */
export class User implements IUser {
  public readonly login: string
  public readonly endpoint: string
  public readonly emails: ReadonlyArray<string>
  public readonly avatarURL: string
  public readonly id: number
  public readonly name: string

  /** Create a new User from some JSON. */
  public static fromJSON(obj: IUser): User {
    return new User(obj.login, obj.endpoint, obj.emails, obj.avatarURL, obj.id, obj.name)
  }

  public constructor(login: string, endpoint: string, emails: ReadonlyArray<string>, avatarURL: string, id: number, name: string) {
    this.login = login
    this.endpoint = endpoint
    this.emails = emails
    this.avatarURL = avatarURL
    this.id = id
    this.name = name
  }
}
<commit_msg>we no longer need to track this array of email addresses<commit_after>/** The data-only interface for User for transport across IPC. */
export interface IUser {
  readonly login: string
  readonly endpoint: string
  readonly avatarURL: string
  readonly id: number
  readonly name: string
}

/**
 * A GitHub user, representing an entity that has interacted with a repository used by GitHub Desktop.
 *
 * These are read-only entities, and are typically associated with commits or mentions.
 */
export class User implements IUser {
  public readonly login: string
  public readonly endpoint: string
  public readonly avatarURL: string
  public readonly id: number
  public readonly name: string

  /** Create a new User from some JSON. */
  public static fromJSON(obj: IUser): User {
    return new User(obj.login, obj.endpoint, obj.avatarURL, obj.id, obj.name)
  }

  public constructor(login: string, endpoint: string, avatarURL: string, id: number, name: string) {
    this.login = login
    this.endpoint = endpoint
    this.avatarURL = avatarURL
    this.id = id
    this.name = name
  }
}

{'fraction_non_alphanumeric': 0.07819287576020852, 'fraction_numerical': 0.0, 'mean_word_length': 3.7582644628099175, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 6, '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': '3672599', 'n_tokens_mistral': 637, 'n_tokens_neox': 614, 'n_words': 264}