Skip to content

v1.0.0

Compare
Choose a tag to compare
@nelsonni nelsonni released this 01 Feb 07:59
· 496 commits to main since this release

What's Changed

Core

  • Rebase project structure using Electron-Forge for building and publishing distributables.
  • Added React for declarative user interface design and interactions.
  • Added Redux for a predictable state container and data layer.
  • Swapped Mocha/Chai with Jest/React Testing Library for test infrastructure.
  • Swapped TSLint with ESLint for linting the latest JavaScript/TypeScript/React standards.
  • Added React Toolkit for simplified Redux state management and built-in support for asynchronous updates.

Containers

  • Added git-path for resolving version control repository structures, including linked-worktrees.
  • Added git-plumbing for handling internal commands within the git ecosystem.
  • Added git-porcelain for handling user-friendly commands within the git ecosystem.
  • Added git-worktree for handling linked-worktrees.
  • Added git-graph for handling the pipeline of git commit history into GitGraph component visualizations.
  • Added merges for handling the pipeline of the git merge command, including resolving a merge conflict.
  • Added builds for handling the pipeline of building Node.js projects using npm/yarn package managers.

Components

  • Defined Modal element for temporal notifications, dialogs, and informational popups.
  • Added file IO support for reading files into Card components and writing changes back to files.
  • Consolidated Button components into separate components that track specific state in the Redux store.
  • Revamped Explorer component to use be reactive to changes in filesystem objects (via chokidar) and Redux store metafiles, branches, and repositories.
  • Added CloneDialog component for cloning git repositories from a local or remote URL.
  • Added CommitDialog component for capturing commit messages before commiting to a git repository.
  • Added ConflictManager component for handling merge conflicts through links to conflicting files and resolution options.
  • Added MergeDialog component for displaying a linear timeline of incremental steps (and their outputs) required to merge two branches within a git repository.
  • Added SourceControl component for monitoring the staging, unstaging, and committing of changes within branches of a git repository.

Store

  • Added Redux Toolkit Slices, Selectors, and AsyncThunks for simplified data management.
  • Added custom React Context, called FSCache, for managing cached versions of file content along with markers to track whether to invalidate and purge the cache.
  • Added custom Redux Middleware for monitoring Redux actions relating to file-based metafiles and triggering cache updates through FSCacheProvider.

New Contributors

Full Changelog: v0.7.0...v1.0.0