Skip to content

Latest commit

 

History

History
427 lines (304 loc) · 11.7 KB

CHANGELOG.md

File metadata and controls

427 lines (304 loc) · 11.7 KB

Changelog

All notable changes to this project will be documented in this file automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY! This project adheres to Semantic Versioning.

v3.5.1

(2024-05-10)

  • Fix import paths using lib/* [Felipe Lalanne]

v3.5.0

(2024-05-10)

  • Update sensor subscription at runtime init [Felipe Lalanne]
  • Add lens utilities [Felipe Lalanne]
  • Allow using observables for sensors [Felipe Lalanne]
  • Add filter operation to Observable [Felipe Lalanne]
  • Allow lens variables for Sensor constructor [Felipe Lalanne]

v3.4.1

(2024-04-30)

  • Use parallel plan representation when debugging [Felipe Lalanne]
  • Settle parallel branches before re-planning [Felipe Lalanne]

v3.4.0

(2024-04-28)

  • Expose reduce function on the DAG module [Felipe Lalanne]
  • Refactor planner node module to use DAG types [Felipe Lalanne]
  • Use DAG operations in agent runtime [Felipe Lalanne]
  • Use DAG.reverse in planner [Felipe Lalanne]
  • Add mapReduce and reverse methods to DAG [Felipe Lalanne]
  • Generate real DAGs using the PlanBuilder interface [Felipe Lalanne]
  • Use dag module in planner and testing modules [Felipe Lalanne]
  • Create generic DAG interface and methods [Felipe Lalanne]

v3.3.0

(2024-04-10)

  • Add test utility to run a task [Felipe Lalanne]

v3.2.1

(2024-04-10)

  • Fix UnorderedArray comparison failing for undefined [Felipe Lalanne]

v3.2.0

(2024-04-10)

  • Add support for 'strict' targets on the Agent interface [Felipe Lalanne]
  • Fix issue with ignore globs [Felipe Lalanne]

v3.1.1

(2024-04-04)

  • Update @balena/lint to v8 [Felipe Lalanne]

v3.1.0

(2024-01-10)

  • Create UnorderedArray type [Felipe Lalanne]
  • Export deepEqual as part of the utils namespace [Felipe Lalanne]

v3.0.2

(2024-01-03)

  • Do not recurse into arrays when constructing Target [Felipe Lalanne]

v3.0.1

(2023-12-12)

  • Export Task constructor prop types [Felipe Lalanne]

v3.0.0

(2023-12-06)

  • Remove duplicate tasks when constructing Planner [Felipe Lalanne]
  • Clone target when grounding tasks [Felipe Lalanne]
  • Rename test console as logger [Felipe Lalanne]
  • Improve error messaging for failed plans on runtime [Felipe Lalanne]
  • Clone the current state before planning [Felipe Lalanne]
  • Do not catch applyPatch errors. [Felipe Lalanne]
  • Allow method recursion [Felipe Lalanne]
  • Refactor planner to allow errors to abort search [Felipe Lalanne]
  • Fix maxSearchDepth on Planner [Felipe Lalanne]
  • Fix mermaid diagramming on search failures [Felipe Lalanne]
  • Do not initialize objects for create actions [Felipe Lalanne]
  • Improve input types for task constructors [Felipe Lalanne]

v2.5.1

(2023-12-01)

  • Fix observe so new object assignments are also reported [Felipe Lalanne]

v2.5.0

(2023-11-29)

  • Improve types to avoid unnecessary type conversions [Felipe Lalanne]
  • Update mermaid tests [Felipe Lalanne]
  • Convert Path type into a branded type [Felipe Lalanne]

v2.4.1

(2023-11-25)

  • Return a copy of the state from agent runtime [Felipe Lalanne]

v2.4.0

(2023-11-24)

  • Allow ignoring certain paths in Target construtor [Felipe Lalanne]

v2.3.0

(2023-11-23)

  • Allow method actions to have empty effects [Felipe Lalanne]

v2.2.0

(2023-11-17)

  • Add metadata method to mermaid trace object [Felipe Lalanne]

v2.1.1

(2023-11-17)

  • Update default task descriptions [Felipe Lalanne]

v2.1.0

(2023-11-10)

  • Revert changes to state if action fails [Felipe Lalanne]

v2.0.0

(2023-11-10)

  • Make Agent maxRetries count failed plan runs [Felipe Lalanne]

v1.2.0

(2023-11-09)

  • Improve logging messages [Felipe Lalanne]
  • Add diff function to distance module [Felipe Lalanne]
  • Add 'source' property to UpdateOperation [Felipe Lalanne]
  • Rename Operation.value to Operation.target [Felipe Lalanne]

v1.1.1

(2023-11-08)

  • Propagate state changes in parallel tasks [Felipe Lalanne]

v1.1.0

(2023-11-06)

  • Add Target constructor [Felipe Lalanne]

v1.0.1

(2023-11-06)

  • Export the Observable interface [Felipe Lalanne]

v1.0.0

(2023-10-31)

  • Improve type documentation [Felipe Lalanne]
  • Update README [Felipe Lalanne]
  • Refactor View interface out of the lens module [Felipe Lalanne]
  • Update test:compose script [Felipe Lalanne]
  • Add maxSearchDepth planner option [Felipe Lalanne]
  • Add Domain interface. [Felipe Lalanne]
  • Fix agent heater tests leaking into each other [Felipe Lalanne]
  • Improve Observable implementation [Felipe Lalanne]
  • Fix mermaid tests for the new API [Felipe Lalanne]
  • Fix planning utils tests [Felipe Lalanne]
  • Improve pointer interface [Felipe Lalanne]
  • Fix observable tests [Felipe Lalanne]
  • Fix orchestrator tests [Felipe Lalanne]
  • Rename Diff interface to Distance [Felipe Lalanne]
  • Rename Target.DELETED to UNDEFINED [Felipe Lalanne]
  • Fix Task tests [Felipe Lalanne]
  • Fix composer tests [Felipe Lalanne]
  • Use View instead of Ref for action and effect functions [Felipe Lalanne]
  • Fix bug in Mermaid diagramming [Felipe Lalanne]
  • Add zip test utility [Felipe Lalanne]
  • Add default conditions for create and delete tasks [Felipe Lalanne]
  • Add method expansion property [Felipe Lalanne]
  • Update README examples with new API [Felipe Lalanne]
  • Refactor Task API to use references and lenses [Felipe Lalanne]
  • Create Ref type [Felipe Lalanne]
  • Rename Agent.of to Agent.from [Felipe Lalanne]
  • Rename Planner.of to Planner.from [Felipe Lalanne]
  • Design v1 API [Felipe Lalanne]

v0.21.2

(2023-10-04)

  • Fix bug when mapping effects [Felipe Lalanne]

v0.21.1

(2023-10-03)

  • Fix bug with loop detection. [Felipe Lalanne]

v0.21.0

(2023-10-03)

  • Make task action default to the value of the effect [Felipe Lalanne]

v0.20.0

(2023-09-30)

  • Rename mermaid build method to render [Felipe Lalanne]
  • Remove title as a mermaid graph argument [Felipe Lalanne]
  • Fix bug when diagraming nested method calls [Felipe Lalanne]

v0.19.0

(2023-09-30)

  • Fix Node ids in Mermaid test suite [Felipe Lalanne]
  • Modify Action definition to return an Effect [Felipe Lalanne]
  • Create the Effect type [Felipe Lalanne]
  • Improve Observable API. [Felipe Lalanne]
  • Remove .eslintrc.json [Felipe Lalanne]

v0.18.2

(2023-09-15)

  • Add local prettierrc/eslintrc for editor compat [Felipe Lalanne]

v0.18.1

(2023-09-11)

  • Update to @balena/lint v7 [Felipe Lalanne]

v0.18.0

(2023-09-06)

  • Remove parallel tasks [Felipe Lalanne]
  • Improve testing tools to work with parallel plans [Felipe Lalanne]
  • Fix wrong assumption about action nodes in mermaid [Felipe Lalanne]
  • Update diagramming feature to work with parallel tasks [Felipe Lalanne]
  • Implement planning for parallel tasks [Felipe Lalanne]
  • Convert Plan from a Linked List to a DAG [Felipe Lalanne]
  • Refactor @mahler/testing sub-module [Felipe Lalanne]
  • Add Parallel task support. [Felipe Lalanne]

v0.17.2

(2023-08-11)

  • Fix bug with Context type inference [Felipe Lalanne]

v0.17.1

(2023-08-10)

  • Move the method expansion check to findPlan [Felipe Lalanne]

v0.17.0

(2023-08-10)

  • Ensure task ids are deterministic [Felipe Lalanne]

v0.16.2

(2023-08-10)

  • Add test utility to generate mermaid graph [Felipe Lalanne]
  • Simplify findPlan arguments [Felipe Lalanne]

v0.16.1

(2023-08-09)

  • Use only relevant state for Node id generation [Felipe Lalanne]

v0.16.0

(2023-08-09)

  • Add instruction serialization with toJSON [Felipe Lalanne]
  • Formalize the plan trace interface [Felipe Lalanne]

v0.15.0

(2023-08-09)

  • Expose planner API via mahler/planner [Felipe Lalanne]
  • Move Plan types to planner/plan.ts [Felipe Lalanne]

v0.14.0

(2023-07-17)

  • Do not generate hash for Instruction id [Felipe Lalanne]
  • Use a linked list to represent a Plan [Felipe Lalanne]
  • Rename tsconfig paths for more clarity [Felipe Lalanne]
  • Create testing namespace to put test related utils [Felipe Lalanne]
  • Add path and target to instructions [Felipe Lalanne]

v0.13.2

(2023-07-10)

  • Improve planner loop detection [Felipe Lalanne]

v0.13.1

(2023-07-08)

  • Allow action tasks to return an Observable [Felipe Lalanne]

v0.13.0

(2023-07-08)

  • Remove RedirectTask [Felipe Lalanne]
  • Remove id from valid task creation arguments [Felipe Lalanne]

v0.12.0

(2023-07-07)

  • Remove the need for async seek() method in Agent [Felipe Lalanne]
  • Make Agent into an Observable [Felipe Lalanne]
  • Refactor agent runtime [Felipe Lalanne]
  • Simplify the Agent interface [Felipe Lalanne]
  • Simplify observable implementation [Felipe Lalanne]
  • Move equals json helper outside of diff [Felipe Lalanne]
  • Remove the wait function from observable [Felipe Lalanne]
  • Remove callable syntax from Observable [Felipe Lalanne]

v0.11.0

(2023-06-23)

  • Improve 'Initializer' helper task [Felipe Lalanne]
  • Create NoOp helper [Felipe Lalanne]
  • Allow returning single task from method [Felipe Lalanne]
  • Improve default description for tasks [Felipe Lalanne]
  • Add path property to Context type [Felipe Lalanne]
  • Refactor task module [Felipe Lalanne]
  • Move task.ts to task/index.ts [Felipe Lalanne]

v0.10.0

(2023-06-22)

  • Add orchestrator test using redirect task [Felipe Lalanne]
  • Add support for redirect tasks [Felipe Lalanne]

v0.9.3

(2023-06-22)

  • Refactor planner module [Felipe Lalanne]
  • Move lib/planner.ts to lib/planner/index.ts [Felipe Lalanne]
  • Remove extractPath utility function from planner [Felipe Lalanne]

v0.9.2

(2023-06-19)

  • Add service migration task to orchestrator example [Felipe Lalanne]

v0.9.1

(2023-06-19)

  • Add usage information to README files [Felipe Lalanne]

v0.9.0

(2023-06-19)

  • Add some documentation for examples under tests/ [Felipe Lalanne]
  • Add release update to agent tests [Felipe Lalanne]
  • Make Task context aware of the operation [Felipe Lalanne]
  • Add del() function to context [Felipe Lalanne]
  • Add orchestrator example/integration tests [Felipe Lalanne]
  • Create utility tasks for operating on state [Felipe Lalanne]
  • Improve diff calculation to return all possible ops [Felipe Lalanne]
  • Improve Action/Method interfaces to be callable [Felipe Lalanne]
  • Improve task types for testing [Felipe Lalanne]
  • Split composer tests into multiple files [Felipe Lalanne]

v0.8.1

(2023-06-09)

  • Remove tests from build [Felipe Lalanne]

v0.8.0

(2023-05-10)

  • Refactor Diff interface [Felipe Lalanne]

v0.7.0

(2023-05-09)

  • Refactor agent, split into multiple files [Felipe Lalanne]

v0.6.0

(2023-05-05)

  • Make task description default to the id [Felipe Lalanne]
  • Simplify task interface and remove unused code [Felipe Lalanne]

v0.5.0

(2023-05-05)

  • Allow providing a planner instance to Agent init [Felipe Lalanne]

v0.4.0

(2023-05-05)

  • Improve plan search trace logic [Felipe Lalanne]
  • Refactor findPlan function of planne for readability [Felipe Lalanne]
  • Refactor planner to return a result object [Felipe Lalanne]
  • Rename Planner.plan to Planner.find [Felipe Lalanne]
  • Make debug module a dev dependency [Felipe Lalanne]
  • Simplify PlanNotFound error [Felipe Lalanne]
  • Allow passing a debugging function to the planner [Felipe Lalanne]

v0.3.0

(2023-04-29)

  • Change '*' to 'update' as default task operation [Felipe Lalanne]

v0.2.0

(2023-04-29)

  • Add updating tasks to container composer tests [Felipe Lalanne]
  • Add debugging to planning function [Felipe Lalanne]
  • Calculate the target before planning [Felipe Lalanne]
  • Split service tasks into install and start [Felipe Lalanne]
  • Rename docker-compose test to container-compose [Felipe Lalanne]

v0.1.0

(2023-04-24)

  • Add service to docker-compose to enable flowzone testing [Felipe Lalanne]
  • Move default logger to its own module [Felipe Lalanne]
  • Setup flowzone [Felipe Lalanne]
  • Update package.json with repository metadata [Felipe Lalanne]