Skip to content

Bug report : Incorrect parsing of yyyy MMM format #639

@aswath2001

Description

@aswath2001

Summary

When parsing "2024 Aug", The date selected is August 2025. yyyy MMM is a common format.

Steps to reproduce

Sandbox Link :
https://codesandbox.io/p/devbox/natural-time-string-parsing-with-chrono-node-forked-zrxpj7?workspaceId=ws_34u1DDsW9TLNxiFeaK5zqV

Reproducer:

import "./styles.css";
import * as chrono from "chrono-node";

const dateparse = (dateString) => {
  const parsedDate = chrono.parseDate(dateString);
  if (!parsedDate) return dateString;
  return parsedDate.toLocaleDateString();
};

export default function App() {
  const times = ["2024 Aug", "2024 August", "2023 Sept"];

  return (
    <dl className="App">
      {times.map((time) => (
        <>
          <dt>{time}</dt>
          <dd>= {dateparse(time)}</dd>
          <br />
        </>
      ))}
    </dl>
  );
}

Expected behavior

I expected the parsed result to be date object that corresponds to August 2024.

Environment

chrono-node version: 2.3.4
Node.js version: v20.14.0
Platform: Windows / macOS / Linux (include version)
Locale / language: e.g. en, en_GB, etc.
Timezone: e.g. Asia/Kolkata

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions