Skip to content

v5.0.112

Choose a tag to compare

@github-actions github-actions released this 24 Sep 17:10
· 174 commits to main since this release
a03e19c

🚀 Features

  • feat: rename command and commandhandler
  • feat: rename query and queryhandler
  • feat: added StorageAccountCredentials
  • feat: refactored with IStorageAccountFactory
  • feat: rename Arius.Web.Core to Arius.Web.Domain
  • feat: removed PostSharp
  • feat: added ArchUnitNet boilerplate
  • feat: added folder icon
  • feat: added storage account validation
  • feat: change of StorageAccontCredentials to StorageAccountOptions
  • feat: added StorageAccountOptions
  • feat: DownloadStateDbCommand
  • feat: added command validator
  • feat: wire up ArchiveCommandTests
  • feat: filesystem removed FileInfo constructors
  • feat: moved ConcurrentConsumingTaskCollection to WouterVanRanst.Utils
  • feat: refactored EnumerateFilePairs to be under FileSystem
  • feat: added Archive diagram and correct handling of Completions
  • feat: added deleteBinaryFilesTask and updateTierTask
  • feat: added StateDatabaseFile & updated local working file for statedb
  • feat: refactored TestBase methods and all tests green
  • feat: added statedbrepostory SaveChangesAsync
  • feat: removed state database temp constructs
  • feat: split up IFileSystem over Domain and Infrastructure
  • feat: split up IFileSystem over Domain and Infrastructure
  • feat: refactored FileSystem to class
  • feat: refactored SizeMetrics, addtl domain events
  • feat: refactored RepositoryVersion
  • feat: carv out of PointerFileSerializer
  • feat: added GetLatestStateDatabaseVersionAsync to IRemoteRepository
  • feat: reshuffled StorageAccountFactory hierarchy a bit
  • feat: rename GetLocalStateDatabaseFolderForRepositoryOptions -> GetLocalStateDatabaseFolderForContainerName
  • feat: move up/download to AzureContainerFolder
  • feat: proper IRemoteStateRepository.GetLocalStateRepositoryAsync
  • feat: added IAzureBlob and IAzureContainerFolder, tests for SqliteRemoteStateRepositoryTests
  • feat: implemented StateDbRepositoryFactoryTests
  • feat: implemented CreateNewLocalStateRepositoryAsync_WhenBasedOnIsNullButNoVersionsExist_NewLocalDatabaseInitializedNotDownloaded
  • feat: updated behavior of GetLocalStateRepositoryAsync
  • feat: refactored CreateNewLocalStateRepositoryAsync and updated Unit test builder pattern
  • feat: rename RepositoryVersion to StateVersion
  • feat: refactored IRemoteStateRepository.SaveChangesAsync to ILocalStateRepository.ILocalStateRepository.UploadAsync
  • feat: rename SqliteRemoteStateRepository to RemoteStateRepository
  • feat: implemented Handle_NoVersionSpecified_ShouldUseUtcNow
  • feat: added error handling and cancellation in ArchiveCommandHandler
  • feat: added LocalStateRepository.UpsertPointerFileEntry
  • feat: updated PointerFileSerializer and tests, Handle_ArchiveTwice_NoChange, Handle_ArchiveTwice_WithChange, more granular handling of the PointerFile creation and PointerFileEntry creation
  • feat: added new CI
  • feat: added matrix builds
  • feat: added env vars to ci
  • feat: delete localstaterepository file if there are no changes
  • feat: addtl assertions
  • feat: implemented Handle_PointerCorrupt_InvalidDataExceptionOperationStopped
  • feat: Handle_PointerBinaryMismatch tests
  • feat: refactored UploadMutexCoordinator
  • feat: better EnumeratePathsImpl
  • feat: add DeletePointerFileEntries
  • feat: refactor Hash to struct
  • feat: implement Hosting & local secrets
  • feat: add application insights
  • feat: bump nugets
  • feat: add errorCancellationTokenSource #vibe
  • feat: add errorCancellationTokenSource #vibeGeminiManual
  • feat: centralized error handling #claudecode
  • feat: error handling in UploadSmallFileAsync #claudecode
  • feat: move remove delete pointers only after succesful archival
  • feat: refine error handling in Handle() #claudecode
  • feat: improved error handling in Handle() method
  • feat: error handling in main method
  • feat: update progressreport if file already uploaded
  • feat: expose TestRunSourceFolder on fixture
  • feat: better fixture setup with config & user secrets
  • feat: refactor Tests
  • feat: add configurable MaxTokens to AriusConfiguration with validation
  • feat: add CliFx and integration test
  • feat: working integration test
  • feat: launchsettings, get accountkey & accountname from environment vars
  • feat: add restore command
  • feat: add cancellation support in cli commands
  • feat: use fixture
  • feat: update fixture
  • feat: assertions using shouldly
  • feat: add Serilog File logging
  • feat: add docker log support
  • feat: add Dockerfile & commands with LocalPath & docker support
  • feat: working archive unit tests
  • feat: working restore unit tests
  • feat: add RestoreDockerCLi command and working tests
  • feat: updated tests for ARIUS_ACCOUNT_KEY in ArchiveCli
  • feat: updated tests for ARIUS_ACCOUNT_KEY in RestoreCli
  • feat: rename some methods
  • feat: move containerName to BlobStorage constructor
  • feat: some refactorings
  • feat: restore PoC
  • feat: optimizations
  • feat: initial state cache commit
  • feat: states and chunks prefix
  • feat: vibe impl of state cache
  • feat: state cache implemented with vacuum
  • feat: manual impl of statecache
  • feat: merge vibe branch
  • feat: move delete to staterepository
  • feat: use compiled query
  • feat: refactor iblobstorage and add ArchiveCommandHandlerContextCreateAsyncTests
  • feat: add mock download actions
  • feat: made user secrets optional
  • feat: update CodeQL and CI GitHub Actions
  • feat: implement centralized package management
  • feat: add dependabot
  • feat: Update WouterVanRanst.Utils to version 2.0.7
  • feat(cli): derive version from build (#63)
  • feat: add docker release
  • feat: add ArchiveCommandBuilder, RestoreCommandBuilder
  • feat: update consistent exception behavior in cli commands
  • feat: catch exception on creation
  • feat: better error handling
  • feat: introduce common RepositoryCommand with appropriate validator
  • feat: refactor restore command syntax
  • feat: scaffold RestoreCommandHandlerTests
  • feat: correct restore validation command rules
  • feat: add debuggerdisplay
  • feat: add FromBinaryFilePath
  • feat: add loggerfactory
  • feat: add ensurecreated param
  • feat: add GetPointerFileEntryByRelativeName
  • feat: add ensurecreated param
  • feat: updates to validator
  • feat: add includeBinaryProperties param to GetPointerFileEntry
  • feat: first draft restorecommandhandler
  • feat: update validator
  • feat: replace GetPointerFileEntry by GetPointerFileEntries
  • feat: bump WouterVanRanst.Utils
  • feat: bump FluentValidation
  • feat: GetPointerFileEntries with compiled queries
  • feat: more flexible restorecommandhandler
  • feat: add LocalRoot back to RestoreCommand
  • feat: fix RestoreCliCommandTests
  • feat: updated draft restorecommandhandler
  • feat: restrore command that actually restores files
  • feat: better working RestoreCommandHandler
  • feat: optimized filestream buffers
  • feat: introduce IStateRepository
  • feat: add rule to validator
  • feat: introduce IStateRepository
  • feat: introduce RestoreCommand.HandlerContextBuilder
  • feat: use bulkextensions
  • feat: add InMemoryStateRepositoryBuilder
  • feat: consolidate StateRepositoryBuilders
  • feat: include decryption in BlobStorage
  • feat: first attempt at encapsulating encryption in blobstorage
  • feat: encapsulated encryption in blobstorage
  • feat: refactor decompression from CryptoExtensions to BlobStorage
  • feat: split BlobStorage in a pure AzureBlobStorage and ChunkStorage
  • feat: add docstrings
  • feat: update storage doc
  • feat: refactor StateRepository / StateRepositoryDbContextBuilder
  • feat: consolidate PositionTrackingStream & DisposableStreamWrapper
  • feat: add StateRepository documentation
  • feat: add exponential retry
  • feat: add ArchUnitNET and test for limited public classes
  • feat: introduce PooledDbContextFactory
  • feat: added Architecture test that public classes should be sealed
  • feat: add benchmark project
  • feat: optimized UpsertPointerFileEntries
  • feat: added parametrized retry policy and updated test
  • feat: add warning
  • feat: add OpenReadChunkAsync mock
  • feat: refactor ArchiveCommandHandlerContextBuilder
  • feat: partial restore impl
  • feat: add WSL wrapper script
  • feat: add WSL build on Windows
  • feat: refactor Fixture to InmemoryFileSystemFixture and PhysicalFileSystemFixture
  • feat: improved testing
  • feat: update StateRepositoryBuilder with configuration delegates.
  • feat: first valid assertion
  • feat: add more test cases
  • feat: add debuggerdisplay
  • feat: addtl assertions
  • feat: streamline passphrases
  • feat: additional path when binary on disk does not match hash
  • feat: IncludePointers, various DateTime fixes
  • feat: added asserts for pointerfiles, truncation bugfix
  • feat: add truncation tes
  • feat: first naive implementation of restoring from TAR
  • feat: add content
  • feat: refactor tests
  • feat: refactor test with MockArchiveStorageBuilder
  • feat: add tar mocks to test
  • feat: add BinaryCache
  • feat: refactored cache to always work with the physical cache
  • feat: refactor GetTarEntryAsync
  • feat: refactor FakeFileBuilder
  • feat: combine InMemoryFileSystemFixture and PhysicalFileSystemFixture into Fixture
  • feat: refactor ArchiveCommandHandler with InMemoryGzippedTarWriter
  • feat: remove unnecessary code from InMemoryGzippedTarWriter and update tests
  • feat: use SmallFileBoundary
  • feat: refactor InMemoryGzippedTarWriter
  • feat: remove MemoryFileSystem provisions
  • feat: streamline Temp directory management, refactor StateCache with Zio
  • feat: add StateRepositoryTests
  • feat: new SLN format
  • feat: bump dependencies
  • feat: add RequestFailedExceptionExtensions
  • feat: mark Zio/Blob/EF Core as private packages in Core
  • feat: add domain specific errors for blob storage with fluentresults
  • feat: stub for StartRehydrationAsync
  • feat: Enhance MockArchiveStorageBuilder for tiered and hydrated chunks
  • feat: add a stub RestoreCommandResult
  • feat: add first rehydration logic to restore command
  • feat: Add extensions for FakeLoggerFactory and FakeLogRecord
  • feat: add RehydrationQuestionHandler
  • feat: implementation of RehydrationQuestionHandler
  • feat: split up Fixture/FixtureWithFileSystem
  • feat: added addtl assertions
  • feat: add AddHydratingBinaryChunk
  • feat: add test cases
  • feat: GetChunkStreamAsync_OnlineTier_IsSuccessPath
  • feat: GetChunkStreamAsync_OnlineTier_BlobArchivedErrorPath
  • feat: add GetChunkStreamAsync_OnlineTier_BlobRehydratingErrorPath
  • feat: GetChunkStreamAsync_OnlineTier_BlobNotFoundErrorPath
  • feat: add GetChunkStreamAsyncForSmallFile_OfflineTier_IsSuccessPath
  • feat: harmonize loggerFactory
  • feat: add SourceContext to logger
  • feat: add thread enrichment to log
  • feat: add StartRehydrationAsync
  • feat: add websearch permission
  • feat: add AzureBlobStorage logging
  • feat: eager loading blob stream
  • feat: use DownloadStreamingAsync instead of OpenReadAsync
  • feat: better rehydration steering
  • feat: add AzureBlobStorageTests
  • feat: add RehydrationDecision
  • feat: remove nullability from BinaryProperties.StorageTier
  • feat: remove nullability from ArchivedSize
  • feat: improved logging
  • feat: added logging, progressupdate & CreateRehydrateTask
  • feat: update ProgressUpdates
  • feat: implement cli live updates
  • feat: better ProgressUpdates
  • feat: scaffold Arius.Explorer WPF Project
  • feat: initial boilerplate
  • feat: bring back App.xaml
  • feat: add a bit more structure/windows
  • feat: RepositoryExplorer and stubbed dependencies
  • feat: add ChooseRepository
  • feat: implement graceful uploading
  • feat: first working test
  • feat: 2nd working test
  • feat: all tests working
  • feat: use channels in CLI i.o. ConcurrentDictionary
  • feat: escape markup
  • feat: add LATEST tag
  • feat: read ArchivedSize from blob properties, use backwards compatible OriginalContentLength
  • feat: refactor Command hierarchy
  • feat: add debouncer, add ContainerNamesQuery
  • feat: add AzureBlobStorageAccount
  • feat: working ContainerNamesQuery
  • feat: implementation of ApplicationSettings & loading/saving
  • feat: master/slave window semantics with IDialogService
  • feat: initial scaffold of migration project
  • feat: copy initila
  • feat: moar
  • feat: add v3 download
  • feat: add migration of ChunkEntries to BinaryProperties
  • feat: migration of PointerFileEntries
  • feat: refactor GetNamesAsync to GetAllAsync with StorageProperties
  • feat: write correct metadata to states
  • feat: add EF Core Migrations
  • feat: bump nugets
  • feat: improved ApplicationSettings / RecentRepositories
  • feat: reorder ChooseRepositoryViewModel
  • feat: use MVVM messaging to open/close dialog
  • feat: define key for RepositoryOptions
  • feat: handle dialog closure through OK button and just closing it
  • feat: revert to DialogService - Messaging too complex for simple dialog
  • feat: handle graceful handling of latent pointers and files that are still open
  • feat: update logs
  • feat: update logs
  • feat: add database logging
  • feat: add proper PasswordBox with binding
  • feat: window title niceties
  • feat: RepositoryOptions ToString & usage
  • feat: restructure RepositoryExplorerViewModel
  • feat: about dialog
  • feat: initial scaffold for PointerFileEntriesQuery
  • feat: add StateRepositoryBackedFileSystem
  • feat: require absolute paths
  • feat: implement tests on real StateRepository as well
  • feat: initial implementation with AggregateFileSystem
  • feat: add IStateDirectory.GetPointerFileEntries topDirectoryOnly
  • feat: add support for TopDirectoryOnly in FilePairFileSystem.EnumeratePathsImpl
  • feat: optimize test
  • feat: implemented first GetPointerFileItems
  • feat: working GetPointerFileItems
  • feat: split up
  • feat: add it to the interface
  • feat: add index for perfomance
  • feat: improved implementation
  • feat: evolving implementation
  • feat: add support for SearchTarget.Directory to FilePairFileSystem,EnumeratePathsImpl
  • feat: evolved impl
  • feat: error handling
  • feat: updated tests
  • feat: added local file system scan
  • feat: added test
  • feat: test
  • feat: add storagetier and origialsize
  • feat: add WithFakeFile overload on StateRepositoryBuilder
  • feat: fix public tests
  • feat: first shot at treeview & listview
  • feat: consolidate viewmodels
  • feat: replace StorageTier with Hydrated
  • feat: proper implementation of FileItemViewModel
  • feat: make UI updates streaming
  • feat: cleanup / restructure
  • feat: make the viewmodel async
  • feat: rootnode selected & expanded
  • feat: show expand chevron
  • feat: expand/selected logic
  • feat: handle listview selection
  • feat: combine sleection
  • feat: clear selection
  • feat: consolidate SelectedItemsText logic
  • feat: SelectedItemsText niceties
  • feat: implement Restore command

🐛 Fixes

  • fix: updateasync for stroagaacount
  • fix
  • fix
  • fix
  • fix
  • fix: remove WouterVanRanst.Utils from sln file
  • fix: ci
  • fix: ci
  • fix: ci
  • fix: ci
  • fix: ci
  • fix
  • fix
  • fix: first fix to run unit tests in Linux
  • fix: make unit tests work on linux
  • fix: failing test on linux
  • fix: try new versioning info
  • fix: temporarily comment out RestoreCommandHandler implementation
  • fix
  • fix: test parallization issue
  • fix: release notes
  • fix: state file name
  • fix: BinaryFile OpenRead/OpenWrite
  • fix: BinaryFile.OpenWrite
  • fix: stream disposal in OpenReadChunkAsync
  • fix: extension
  • fix: proper check whether it is an inmemory file system
  • fix: consistent use of passphrase
  • fix: failing test on github runner
  • fix: failing test on github runner
  • fix: proper disposal of stream
  • fix: ensurecreated concurrency bug
  • fix: incremental uploading
  • fix: CI
  • fix: public classes
  • fix: thread safety issue on SHA256Hasher
  • fix: tests
  • fix: tests
  • fix: return PointerFile paths
  • fix: when path does not exist
  • fix: with invalid password
  • fix
  • fix

📦 Other

  • bump nugets
  • add boilerplate blazor
  • to file scoped
  • Restructure project
  • added clean architecture
  • added pages
  • Update Arius.Web.Infrastructure.csproj
  • Update Arius.Web.Infrastructure.csproj
  • added ef migrations
  • rename domain language
  • minor tweaks
  • fixes
  • Create ContainerNamesQuery2.cs
  • working mediator
  • working ContainerNamesQuery2
  • refactored ContainerNamesQuery
  • added first set of Arius.Core abstractions
  • added delete repostory page
  • updated layout
  • updated datamodel
  • added ef migration
  • split files
  • Update appsettings.json
  • added themes / added syncfusion form
  • fix for update
  • syncfusion EditStorageAccount
  • added fontawesome and blazor input
  • temp
  • working password field
  • refactored password box
  • chore: rename command to query
  • added repositoryoptions
  • implemented GetRepositoryVersionsQueryHandler
  • added IBlob abstraction
  • chore: move to separate project
  • implemented first unit test
  • working tests with mocked and real services
  • tweaks
  • added stream to containernamesqueryhandler
  • made GetRepositoryVersionsQuery streaming
  • refactor tests
  • refactor tests
  • extended AddArius with AriusConfiguration, added StateDbRepositoryFactory, boilerplate ArchiveCommand
  • adding statedbrepository
  • adding statedb
  • first test for SqliteStateDbRepositoryFactory
  • all working unit tests for SqliteStateDbRepositoryFactory
  • UNIT TEST TRYOUTS
  • Revert "UNIT TEST TRYOUTS"
  • corrected implementation of CreateAsync
  • updated test fixture and first unit test
  • working unit tests
  • pre-refactor
  • Update SqliteStateDbRepositoryFactoryTests.cs
  • Update SqliteStateDbRepositoryFactoryTests.cs
  • working unit tests
  • working and manually checked unit tests
  • added validation
  • cleanup CreateAsync local methods
  • couple of refactorings /renamings
  • Update MockTestBase.cs
  • first step richting builder pattern for fixtures
  • updated ContainerNamesQueryHandlerTests
  • updated GetRepositoryVersionsQueryHandlerTests
  • added fixture builder pattern
  • smol fix
  • restructure
  • split
  • bugfix
  • further archivecommand scaffolding
  • added FileSystem abstractions
  • added LocalFileSystemTests
  • added internalsvisibleto
  • adding tests for Index_StagedFiles_AsExpected
  • updated filesystem with Rooted concept
  • added IndexFiles_WithStagedFiles_ShouldMatchAccordingly
  • added boilerplate hashTask
  • rename
  • remove IAriusFixture interface
  • refactor to FileUtils
  • added HashValueProvider and HashValueProviderTests
  • added benchmarks
  • more efficient hasher than v3
  • final implementation of shahasher
  • updated tests
  • moved interface to Domain
  • refactor benchmarks
  • moved around shahasher
  • updated File models and Fixture
  • updated FileSystem domain model
  • bugfix
  • added moar tests constructs
  • added WouterVanRanst.Utils as project
  • reorder
  • Delete DirectoryInfoExtensions.cs
  • refactoring test suite
  • added ArchiveCommand.HashFilesAsync and tests
  • archivecommand / completed hashing block, boilerplate upload block
  • made FilePair and FilePairWithHash first class citizens
  • Update IFileSystem.cs
  • Update RepositoryVersion.cs
  • Update StateDbRepositoryFactory.cs
  • made shahasher thread safe
  • Update AriusFixture.cs
  • added notifications
  • added mediatr handlers from the full app domain
  • Update Arius.Core.csproj
  • new db version
  • bumping dependencies
  • Update EditRepository.razor
  • Update Program.cs
  • added local secrets
  • Update appsettings.Development.json
  • squash
  • new IndexFiles algorithm
  • more updates
  • Create TaskQueue.cs
  • added ConcurrentConsumingTaskCollection
  • Update ArchiveCommandHandler.cs
  • added FileSystem Interfaces,
  • rename to ConcurrentConsumingTaskCollection
  • Added AzureRepository Upload & Download
  • implement uploadBinaryTask
  • fixes
  • a couple of bugfixes and EF Core Migrattions for Core.Infrastructure
  • Update README.MD
  • move mappers
  • rename
  • fixed unit tests
  • Create Cleanup.cs
  • added create container
  • Update AriusFixture.cs
  • separate out AzureBlob and AzureContainerFolder, added repository to fixture
  • added tests for AzureBlob
  • addded tiering
  • Update AzureRepository.cs
  • Update ConcurrentConsumingTaskCollectionTests.cs
  • Update Jobs.razor
  • Update Arius.Core.csproj
  • added robust upload and azurerepositorytests
  • Update AzureRepostoryTests.cs
  • Refactored notifications
  • Completed pointerFileCreationTask and datetime scrutiny
  • optimized IFileSystem
  • Update ArchiveCommandHandler.cs
  • (with previous)
  • added docs for updateTierTask
  • added RepositoryStatisticsQuery, parametrized Containername in tests
  • Update AriusFlows.drawio
  • chore: split up StateDbRepositoryFactory
  • added FileStreamBenchmark
  • added benchmarks
  • remove extensions
  • Update AzureRepository.cs
  • bump nugets
  • update syntax
  • syntax update
  • syntax
  • bugfix
  • added IFileSystemTests
  • Update IFileSystemTests.cs
  • added DqliteStateDbContext Save and Vacuum
  • rename
  • rename
  • rename
  • rename
  • rename
  • rename
  • rename
  • rename
  • rename
  • rename
  • rename
  • archive unit test
  • added mediator notification tests, pre-File to class refactor
  • bump versions
  • added file constructs
  • archivecommenadtest
  • adde dtest
  • feat! changed behavior of FilePair and FilePairWithHash to always have nonnull BinaryFile and PointerFile
  • updated test
  • added more test infra
  • add Handle_NoVersionSpecified_ShouldUseUtcNow
  • further refactors
  • some cleamup
  • Update StateDbRepositoryFactoryTests.cs
  • rename
  • rename GetStateDatabaseVersions -> GetRepositoryVersions
  • Update IServiceCollectionExtensions.cs
  • chore: rename old unit test project
  • chore: rename new unit test project
  • chore: rename Arius.Core to Arius.Core.Old
  • chore: reverted to old Arius.UI & Arius.Core codebase
  • Update Arius.Benchmarks.csproj
  • Update ApplicationSettings.cs
  • chore: rename Arius.Core.New to Arius.Core
  • initial types
  • add tests
  • add tests
  • added platform neutral
  • add tsts
  • working tsts
  • updated library & tests
  • tests for RootedPathSegment
  • back to the value as-is
  • working poc with ZIO
  • delet ZioFileSystem.csproj
  • subfilesystem
  • added channel
  • fix concurrency bug
  • fix concurrency
  • fix concurrency
  • refactor concurrency lock
  • add read/write pointers
  • add staterepository
  • added filesystem enumeration
  • split up file
  • add proper access tier and binaryproperties
  • added correct PointerFileEntryDto
  • impl FilePairSubFileSystem
  • cleanup
  • initial arius5 commit
  • working unit test
  • add specteconsole
  • update to AnsiConsole.Status
  • working spinner
  • updated layout
  • add more progress
  • updated HandlerContext
  • refactor handler
  • better progress
  • split up hashing & uploading buckets
  • add progressbar - before concurrency issue
  • concurrent updates
  • with padding
  • merge hashtask and upload task again
  • Revert "merge hashtask and upload task again"
  • new hash type
  • integrated new Hash value type
  • add new Sha256Hasher
  • rename
  • add FilePairFileSystemTests
  • tweaks
  • split
  • move
  • feat BlobStorage abstraction
  • proper valueconversion for Hash <> byte[] in dbcontext
  • add progress
  • feat more better blobstorage abstraction
  • refactor to hashedLargeFilesChannel & hashedSmallFilesChannel
  • pass along cancellationtokens
  • poc tar archive
  • bigger better poc: contenttype, params on datacontext,
  • bugfix
  • concurrency bugfix
  • some intermediate commit
  • prune unnecessary code
  • some cleanup
  • add azurecleanup
  • intermediate: remove sharpcompress dependency
  • Update Arius.Core.csproj
  • attempt at appinsights
  • cleanup
  • working large and small file
  • cleanup & refactor
  • deepseek rewrite
  • Revert "deepseek rewrite"
  • chore: align
  • Revert "feat: refactor Hash to struct"
  • Reapply "feat: refactor Hash to struct"
  • Revert "feat: add errorCancellationTokenSource #vibe"
  • Revert "Reapply "feat: refactor Hash to struct""
  • Revert "feat: add errorCancellationTokenSource #vibeGeminiManual"
  • Create CLAUDE.md
  • fix error handling
  • Update ArchiveCommandHandler.cs
  • Update ArchiveCommandHandler.cs
  • add "Microsoft.Extensions.Diagnostics.Testing
  • Update InternalsVisibleTo.cs
  • Create ArchiveCommandHandlerErrorTests.cs
  • Update ArchiveCommandHandlerErrorTests.cs
  • chore: bump nugets
  • Update Arius.Cli.csproj
  • chore: comments
  • chore: reshuffle some commands, add shortcodes
  • feat add GetStatesAsync
  • Replace MediatR with Wolverine (#52)
  • Revert "Replace MediatR with Wolverine (#52)"
  • chore: bump nugets
  • Update Cache.cs
  • Update ArchiveCommandHandler.cs
  • Revert "feat: manual impl of statecache"
  • Merge branch 'vibetest' into arius5
  • Update StateRepository.cs
  • Update StateCache.cs
  • make handlercontext internal
  • Merge branch 'vibetest' into arius5
  • first vibe
  • 2nd vibe
  • TEMP: unit tests - but unit tests should not start from UPath enz, only in the HandlerContext it should convert to Zio
  • Revert "TEMP: unit tests - but unit tests should not start from UPath enz, only in the HandlerContext it should convert to Zio"
  • Revert "2nd vibe"
  • Revert "first vibe"
  • chore: format
  • chore: rename
  • chore: upgrade src-Arius5 projects to .NET 9
  • chore: replace FluentAssertions with Shouldly (#54)
  • Replace MediatR with Mediator (#55)
  • chore: remove Arius4, rename src-Arius5
  • Merge branch 'arius5' of https://github.com/woutervanranst/Arius into arius5
  • chore: adjust workflows per review
  • chore: rename src-Arius5 to src
  • chore(deps): bump dorny/test-reporter from 1 to 2 (#62)
  • Delete .gitmodules
  • chore: move GetVersion inside builder
  • chore: disable implicit usings
  • Merge branch 'arius5' of https://github.com/woutervanranst/Arius into arius5
  • chore: bump dockerfile to net9
  • Update .gitignore
  • Update .gitignore
  • Update CLAUDE.md
  • Remove outdated and unused documentation files
  • Add versioning strategy documentation
  • Update CLAUDE.md
  • Refactor restore command to support multiple targets
  • Add tests for RestoreCliCommand argument handling
  • Add validation and error handling to restore command
  • Refactor CLI test argument handling for quoted paths
  • Add StateDatabaseBuilder for test database setup
  • chore: remove CreateValidStateDatabase
  • Update CliCommandTestsFixture.cs
  • chore: restructure & rename tests
  • chore rename
  • chore: cleanup
  • chore: cleanup usings
  • Merge branch 'feat/arius5-restore2' into feat/arius5
  • chore: cleanup usings
  • chore: rename & format FakeStateDatabaseBuilder
  • chore: remove custom ValidationException
  • Update Arius.Cli.csproj
  • Add and refactor command validators for archive and restore
  • Update Arius.Cli.Tests.csproj
  • Use pattern matching for container name length check
  • chore: replace Serilog logger w ILogger in CliCommand
  • chore: clarify my local mehod obsession
  • Create settings.local.json
  • Enable automatic release notes (#65)
  • Merge branch 'feat/arius5' of https://github.com/woutervanranst/Arius into feat/arius5
  • chore: better test failure message
  • Refactor command validation to use ValidateAndThrowAsync
  • Use release-changelog-builder for releases (#66)
  • Merge branch 'feat/arius5' of https://github.com/woutervanranst/Arius into feat/arius5
  • Update CLAUDE.md
  • chore: use builder
  • Add ContainerExistsAsync to BlobStorage service
  • chore: rename
  • Update settings.local.json
  • Update launchSettings.json
  • Update settings.local.json
  • Update settings.local.json
  • chore: remove obsolete RestoreCommandValidatorTests
  • chore: add comment to deepseek
  • Update StateRepository.cs
  • chore: simplify FakeStateDatabaseBuilder
  • chore: create command directories
  • chore: extract handlercontext from restorecommand
  • Update RestoreCommand.cs
  • Update RepositoryCommand.cs
  • Update ArchiveCommand.cs
  • Update Arius.Core.csproj
  • chore: rename
  • chore: rename
  • chore: refactor to local methods
  • chore: rename
  • chore: move
  • chore: blobstorage cleanup before refactor
  • Create ArchiveCommand.md
  • Update ArchiveCommand.cs
  • Update settings.local.json
  • chore: an overengineered attempt
  • Revert "chore: an overengineered attempt"
  • chore: rename
  • chore: rename
  • chore: rename
  • Add storage architecture documentation
  • chore: rename
  • chore: restructure StateRepository
  • chore: restructure StateRepository & rename DTOs
  • chore: rename Storage
  • chore: cleanup usings
  • chore: move hasher to separate folder
  • chore: rename folder
  • chore: move StorageTier
  • chore: move Hash type
  • chore: localstorage and archivestorage namespaces
  • chore: rename file
  • chore: organize according to vertical slice
  • chore(deps): bump mikepenz/release-changelog-builder-action from 4 to 5 (#67)
  • chore: restructure Tests project
  • Update settings.local.json
  • Update ArchiveCommandHandler.cs
  • Update StateRepositoryBuilder.cs
  • Update StateRepository.cs
  • Update InternalsVisibleTo.cs
  • Update ArchiveCommandHandlerTests.cs
  • Merge branch 'feat/arius5' of https://github.com/woutervanranst/Arius into feat/arius5
  • chore: fix: update skipoed test FQDN
  • chore: fix: update skipoed test FQDN
  • Update RestoreCommandHandler.cs
  • Update RestoreCommandHandlerTests.cs
  • chore: cleanup
  • chore: refactored magic strings
  • chore: refactor test
  • chore: add more tars to the test
  • Update ZioExtensions.cs
  • chore: add skip
  • chore: move CryptoExtensions to own folder
  • merge
  • chore: cleanup
  • Update FakeFileBuilder.cs
  • Revert "feat: new SLN format"
  • chore: simpliciation
  • test fix on Linux
  • chore: add comment
  • Revert "feat: mark Zio/Blob/EF Core as private packages in Core"
  • Update Arius.Core.csproj
  • chore
  • Update StorageTier.cs
  • chore: refactor StorageErrors to classes
  • feat' add support for setting storagetier on StateRepositoryBuilder
  • chore: split up RestoreCommandHandlerHydrationTests
  • chore: change fixture
  • chore: improve test
  • fix test
  • Update RestoreCommandHandlerHydrationTests.cs
  • chore: rename tests
  • chore: be exhaustive with test cases
  • chore: rename RehydratePriority
  • chore: cleanup usings
  • chore: move file
  • chore: cleanup
  • chore: align cli updates
  • temp: app
  • chore: format
  • Update Arius.Explorer.csproj
  • Update Program.cs
  • chore: remove LINQPad directory
  • chore: rename for clarity
  • feat; add Arius.Explorer.Tests project
  • Adjust CLI workflow test step formatting (#69)
  • Merge branch 'feat/arius5' of https://github.com/woutervanranst/Arius into feat/arius5
  • chore: update CI test naming
  • chore: update CI
  • chore: CI naming
  • chore: refactor some tests
  • chore: update log msg
  • chore: enable implicit usings
  • chore: merge tests files
  • chore: rename Feature folders
  • chore: rename IStorage and AzureBlobStorage
  • chrore: rename
  • chore: rename
  • chore: rename
  • chore: rename
  • chore: move
  • chore: cleanup
  • chore: migrate to xunit v3 (#70)
  • chore: cleanup namespaces
  • chore: rename
  • merge
  • chore: rename
  • Streamline ChooseRepositoryViewModel dependencies (#73)
  • Update settings.local.json
  • chore: move common csproj configs to Directory.Packages.props
  • chore: split claude.md files
  • chore: update claude.md files
  • chore: rename Windows
  • Update RepositoryExplorerViewModel.cs
  • alignment
  • fix pointerfile extension
  • Update HandlerContext.cs
  • chore: rename return type
  • chore: deprecate helper
  • fixes
  • chore: reorder
  • Update PointerFileEntriesQueryResult.cs
  • Update RepositoryExplorerViewModel.cs
  • Update RepositoryExplorerViewModel.cs
  • Merge branch 'main' into feat/arius5
  • Update ChooseRepositoryViewModelTests.cs
  • Merge pull request #74 from woutervanranst/feat/arius5
  • Update ci.yml