Skip to main content

News and Roadmap

Here you can find news about the core NeoHaskell project. For real time updates, you should probably join the Discord server, or follow the NeoHaskell Twitter account.

Sprint Planning

NeoHaskell grows and thrives with the support of its amazing community! Below you'll find our sprint planning, complete with goals and GitHub issues. If you see something you'd like to help with, feel free to jump in by commenting on an issue or shooting a message over Discord. Every contribution, no matter how small, makes a difference!

Sprint 2: 2025/03/27 - 2025/04/10 (View on GitHub)

Goals:

  • Complete the foundational implementation of the Event Store module

    GitHub Issues:

  • Issue #144 — Define Minimal Event Schema for the Event Store

  • Issue #145 — Specify Event Store Storage and Retrieval Operations

  • Issue #146 — Identify and Document Event Store Error Cases

  • Issue #147 — Ensure the Event Store Persistence Interface is Agnostic

  • Issue #148 — Create a Simple Backend Implementation for the Event Store

  • Issue #149 — Implement Basic Write-Only Behavior for the Event Store

  • Issue #150 — Enable Event Retrieval in Correct Order from the Event Store

  • Issue #152 — Implement Automatic Ordered Insertion with Optimistic Locking

  • Issue #154 — Enforce Multi-Stream Isolation in the Event Store

  • Issue #155 — Ensure Idempotency in the Event Store (Optional Event ID/Hash)

  • Issue #156 — Implement Backoff/Retry for Automatic Inserts on Conflict

  • Issue #157 — Validate Concurrent Write Order Consistency in the Event Store

Sprint 1: 2025/03/13 - 2025/03/27 (View on GitHub)

Goals:

  • Have an MVP of the neo CLI tool working

    GitHub Issues:

  • Issue #68 — Print always a message about reporting issue on command failure

  • Issue #126 — Move forEach from Array to Task to Avoid Cyclic Dependency

  • Issue #70 — All Neo (sub)commands should have a help command that explains how to use it properly

  • Issue #133 — Initialize projects with neo init

  • Issue #109 — CLI Command that allows running the project

  • Issue #138 — Research how to provide a REPL using the Nix environment, rather than cabal - DEPRIORITIZED FOR NOW

  • Issue #114 — 'neo' is not available yet

  • Issue #134 — Create the installation script for the website

Announcements

Roadmap

The roadmap represents a rough view of the progress of the different parts of the project. If one box is checked doesn't mean it is 100% done, as software usually is an infinite work, it means that it is usable, but always with room for improvement.

  • Array
  • Basics
  • Bytes
  • Char
  • Function utils
  • IO
  • Int
  • LinkedList
  • Map
  • Maybe
  • Record
  • Result
  • Text
  • Tuple
  • Unit
  • Unknown
  • Var
  • Version
  • Async IO operations - Should be reworked into Async Tasks
  • Channel
  • ConcurrentVar
  • Action Handling
  • Trigger Handling
  • Task core module
  • File tasks core module
  • Path tasks core module
  • Subprocess tasks core module
  • Build CLI command
  • Autoinstaller
  • Test command
  • Run command
  • Time core module
  • File Actions
  • Path Actions
  • Subprocess Actions
  • Time Actions
  • Http (Tasks)
  • Http (Actions)
  • Event Handling (needs to be reworked)
  • View/HTML Handling
  • Traits (TBD)
  • REPL CLI command