Soyle-Productions / soyle-stories

An application to help writers keep track of all aspects of their stories without getting in the way of the creative process and offering deep insights into potential plot holes.
Apache License 2.0
12 stars 0 forks source link

Unknown Issue When Trying to Open a New Project #92

Closed ryanreso1993 closed 3 years ago

ryanreso1993 commented 3 years ago
  1. Open a project
  2. Create a Character in the Character Tool
  3. Create a New Theme in the Theme Tool
  4. Right click the Character
  5. Create a New Character Arc
  6. Delete Character Arc
  7. Create and Open a New Project from the top left menu

What I expect: A New Project will open What actually happens: The following error message appears

ERROR CODE

com.soyle.stories.workspace.UnexpectedProjectAlreadyOpenAtLocation at com.soyle.stories.workspace.usecases.openProject.OpenProjectUseCase.projectDoesNotMatchProjectOpenAtLocation(OpenProjectUseCase.kt:132) at com.soyle.stories.workspace.usecases.openProject.OpenProjectUseCase.verifyProjectWillNotOverrideProjectAlreadyOpenAtLocationInWorkspace(OpenProjectUseCase.kt:104) at com.soyle.stories.workspace.usecases.openProject.OpenProjectUseCase.verifyProjectFileCanBeAddedToWorkspace(OpenProjectUseCase.kt:86) at com.soyle.stories.workspace.usecases.openProject.OpenProjectUseCase.openProjectInWorkspace(OpenProjectUseCase.kt:81) at com.soyle.stories.workspace.usecases.openProject.OpenProjectUseCase.openProject(OpenProjectUseCase.kt:67) at com.soyle.stories.workspace.usecases.openProject.OpenProjectUseCase.invoke(OpenProjectUseCase.kt:28) at com.soyle.stories.project.openProject.OpenProjectControllerImpl$openProject$1.invokeSuspend(OpenProjectControllerImpl.kt:14) at com.soyle.stories.project.openProject.OpenProjectControllerImpl$openProject$1.invoke(OpenProjectControllerImpl.kt) at com.soyle.stories.project.openProject.OpenProjectControllerImpl$openProject$1.invoke(OpenProjectControllerImpl.kt) at com.soyle.stories.common.AsyncThreadTransformer$async$1$1.invokeSuspend(ThreadTransformerImpl.kt:12) at com.soyle.stories.common.AsyncThreadTransformer$async$1$1.invoke(ThreadTransformerImpl.kt) at com.soyle.stories.common.AsyncThreadTransformer$async$1$1.invoke(ThreadTransformerImpl.kt) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturnIgnoreTimeout(Undispatched.kt:102) at kotlinx.coroutines.TimeoutKt.setupTimeout(Timeout.kt:148) at kotlinx.coroutines.TimeoutKt.withTimeout(Timeout.kt:44) at com.soyle.stories.common.AsyncThreadTransformer$async$1.invokeSuspend(ThreadTransformerImpl.kt:11) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

b-camphart commented 3 years ago

This is only due to the fact that the persistence code has not been written yet. Once the file system is actually affected by the program, creating a new project at the same place as another project will give more understandable errors.