class_docstr: Find repository dates that are more recent than a reference date.
  
  The main purpose of this tool is to find "leaked" real dates in
  repositories that are configured to use fake dates. It checks dates from
  three sources: (1) commit timestamps (author and committer dates), (2)
  timestamps within files of the "git-annex" branch, and (3) the timestamps
  of annotated tags.
code: def __call__(
      paths,
      *,
      reference_date="@1514764800",
      revs=None,
      annex="all",
      no_tags=False,
      older=False,
  ):
      from datalad.support.repodates import check_dates
  
      which = "older" if older else "newer"
  
      try:
          ref_ts = _parse_date(reference_date)
      except ValueError as exc:
          lgr.error("Could not parse '%s' as a date", reference_date)
          ce = CapturedException(exc)
          yield get_status_dict(
              "check_dates",
              status="error",
              message=str(ce),
              exception=ce,
          )
          return
  
      lgr.info(
          "Searching for dates %s than %s",
          which,
          time.strftime("%d %b %Y %H:%M:%S +0000", time.gmtime(ref_ts)),
      )
  
      for repo in _git_repos(paths or ["."]):
          fullpath = os.path.abspath(repo)
          lgr.debug("Checking %s", fullpath)
  
          try:
              report = check_dates(
                  repo,
                  ref_ts,
                  which=which,
                  revs=revs or ["--all"],
                  annex={"all": True, "none": False, "tree": "tree"}[
                      annex
                  ],
                  tags=not no_tags,
              )
          except InvalidGitRepositoryError as exc:
              lgr.warning("Skipping invalid Git repo: %s", repo)
              continue
  
          yield get_status_dict(
              "check_dates",
              status="ok",
              path=fullpath,
              message=(
                  "Found {} dates"
                  if report["objects"]
                  else "No {} dates found"
              ).format(which),
              report=report,
          )
  
file_path: datalad/datalad/local/check_dates.py
imports: import json
  import logging
  import os
  import time
  from datalad.interface.base import Interface
  from datalad.interface.base import build_doc
  from datalad.interface.results import get_status_dict
  from datalad.support.exceptions import CapturedException, InvalidGitRepositoryError, MissingExternalDependency
label_desc: Use image node_id 2 for calling the CheckDates obj's underlying member method code with example usage: obj.__call__(paths) without return types