v1.0.0
What's Changed
- Upgrade React Toolkit + Core Library Upgrades (Webpack 5, Electron 13) by @nelsonni in #521
- Upgrade to React 17 by @nelsonni in #453
- Upgrade mock-fs to resolve ENXIO file errors on mocked files by @andrealit in #445
- GitGraph upgrades by @nelsonni in #370
- Menus and React Testing Library migration by @nelsonni in #359
- GitGraph and GitNode UI updates by @nelsonni in #331
- Drag and Drop functionality for Stacks by @nelsonni in #303
- Basic GitGraph visualization by @nelsonni in #292
- Commit & Merging Infrastructure by @nelsonni in #139
- React Testing Library (RTL) and Version Status Component by @nelsonni in #135
- Git Branch Checkout & Redux Thunk by @nelsonni in #111
- Browser Card by @kberba in #110
- Refactored to React/Redux by @nelsonni in #93
- Adding luxon package to provide DateTime constructs for all timestamps by @nelsonni in #46
- File I/O basic functionality by @nelsonni in #45
- Code Editor basic functionality by @nelsonni in #44
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 thegit
ecosystem. - Added
git-porcelain
for handling user-friendly commands within thegit
ecosystem. - Added
git-worktree
for handling linked-worktrees. - Added
git-graph
for handling the pipeline of git commit history intoGitGraph
component visualizations. - Added
merges
for handling the pipeline of thegit merge
command, including resolving a merge conflict. - Added
builds
for handling the pipeline of building Node.js projects usingnpm
/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 cloninggit
repositories from a local or remote URL. - Added
CommitDialog
component for capturing commit messages before commiting to agit
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 agit
repository. - Added
SourceControl
component for monitoring the staging, unstaging, and committing of changes within branches of agit
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
- @andrealit made their first contribution in #445
- @kberba made her first contribution in #110
Full Changelog: v0.7.0...v1.0.0