Skip to content

Migration to YarnSpinner 3.0#278

Draft
Galdormin wants to merge 2 commits intoYarnSpinnerTool:mainfrom
Galdormin:migration_3.0
Draft

Migration to YarnSpinner 3.0#278
Galdormin wants to merge 2 commits intoYarnSpinnerTool:mainfrom
Galdormin:migration_3.0

Conversation

@Galdormin
Copy link
Copy Markdown
Contributor

@Galdormin Galdormin commented Apr 1, 2026

YarnSpinnerTool/YarnSpinner@v2.5.0...v3.0.0

Compiler

  • ➕ YarnSpinner.Compiler/Analysis/BasicBlock.cs
  • ➕ YarnSpinner.Compiler/Analysis/InstructionCollectionExtensions.cs
  • ➖ YarnSpinner.Compiler/Builders/DeclarationBuilder.cs
  • ➕ YarnSpinner.Compiler/Builders/EnumTypeBuilder.cs
  • ➖ YarnSpinner.Compiler/Builders/FunctionTypeBuilder.cs
  • ❌ YarnSpinner.Compiler/CodeGenerationVisitor.cs
  • ➖ YarnSpinner.Compiler/CompilationJob.cs
  • ➖ YarnSpinner.Compiler/CompilationResult.cs
  • ➖ YarnSpinner.Compiler/Compiler.cs
  • ➖ YarnSpinner.Compiler/DebugInfo.cs
  • ➖ YarnSpinner.Compiler/Declaration.cs
  • ❌ YarnSpinner.Compiler/DeclarationVisitor.cs
  • ➖ YarnSpinner.Compiler/ErrorListener.cs
  • ➖ YarnSpinner.Compiler/ErrorStrategy.cs
  • ➕ YarnSpinner.Compiler/FileCompiler.cs
  • Antlr generation is in YarnSpinner.Compiler/Grammars
  • ➕ YarnSpinner.Compiler/ICodeEmitter.cs
  • ➖ YarnSpinner.Compiler/IndentAwareLexer.cs
  • ➖ YarnSpinner.Compiler/JumpGraphListener.cs
  • ➕ YarnSpinner.Compiler/NodeGroupCompiler.cs
  • ➖ YarnSpinner.Compiler/Project.cs
  • ➕ YarnSpinner.Compiler/SmartVariableCompiler.cs
  • ➖ YarnSpinner.Compiler/StringInfo.cs
  • ➖ YarnSpinner.Compiler/StringTableManager.cs
  • ➕ YarnSpinner.Compiler/StructuredCommandParser.cs
  • ❌ YarnSpinner.Compiler/TypeCheckVisitor.cs
  • ➕ YarnSpinner.Compiler/TypeCheckerListener.cs
  • ❌ YarnSpinner.Compiler/TypeDeclarationListener.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../ConjunctionConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../DisjunctionConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../EnumerablesExtension.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../FalseConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../TrueConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../TypeConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../TypeConvertibleConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../TypeEqualityConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../TypeHasMemberConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/.../TypeHasNameConstraint.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/Solver.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/Substitution.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/Terms/ITypeExtensions.cs
  • ➕ YarnSpinner.Compiler/TypeSolver/Terms/TypeVariable.cs
  • ➖ YarnSpinner.Compiler/Upgrader/LanguageUpgrader.cs
  • ❌ YarnSpinner.Compiler/Upgrader/V1toV2/*
  • ➖ YarnSpinner.Compiler/Utility.cs
  • ➕ YarnSpinner.Compiler/Visitors/CodeGenerationVisitor.cs
  • ➕ YarnSpinner.Compiler/Visitors/DiagnosticsGeneratorVisitor.cs
  • ➖ YarnSpinner.Compiler/Visitors/LiteralValueVisitor.cs
  • ➕ YarnSpinner.Compiler/Visitors/NodeGroupVisitor.cs
  • ➖ YarnSpinner.Compiler/Visitors/PreviewFeatureVisitor.cs
  • ➖ YarnSpinner.Compiler/Visitors/StringTableGeneratorVisitor.cs
  • ➕ YarnSpinner.Compiler/Visitors/StyleWarningsVisitor.cs

Tests

  • ➖ YarnSpinner.Tests/DialogueTests.cs
  • ➖ YarnSpinner.Tests/ErrorHandlingTests.cs
  • ➖ YarnSpinner.Tests/LanguageTests.cs
  • ➖ YarnSpinner.Tests/MarkupTests.cs
  • ➖ YarnSpinner.Tests/ProjectFileTests.cs
  • ➖ YarnSpinner.Tests/ProjectTests.cs
  • ➕ YarnSpinner.Tests/SaliencyTests.cs
  • ➕ YarnSpinner.Tests/SmartVariableTests.cs
  • ➖ YarnSpinner.Tests/TagTests.cs
  • ➖ YarnSpinner.Tests/TestBase.cs
  • ➖ YarnSpinner.Tests/TestPlan.cs
  • ANTlR TestPlan
  • ➖ YarnSpinner.Tests/TypeTests.cs
  • ➖ YarnSpinner.Tests/UpgraderTests.cs

Runtime

  • ➖ YarnSpinner/Analyser.cs
  • YarnSpinner/CRC32.cs (no need we use a library)
  • ➖ YarnSpinner/Dialogue.cs
  • ➖ YarnSpinner/Library.cs
  • ➕ YarnSpinner/NullableAttributes.cs
  • ➖ YarnSpinner/Program.cs
  • ➕ YarnSpinner/Saliency/BestLeastRecentlyViewedSaliencyStrategy.cs
  • ➕ YarnSpinner/Saliency/BestSaliencyStrategy.cs
  • ➕ YarnSpinner/Saliency/ContentSaliencyOption.cs
  • ➕ YarnSpinner/Saliency/FirstSaliencyStrategy.cs
  • ➕ YarnSpinner/Saliency/IContentSaliencyStrategy.cs
  • ➕ YarnSpinner/Saliency/RandomBestLeastRecentlyViewedSaliencyStrategy.cs
  • ➕ YarnSpinner/SmartVariableEvaluationVirtualMachine.cs
  • ➖ YarnSpinner/Types/AnyType.cs
  • ➖ YarnSpinner/Types/BooleanType.cs
  • ➕ YarnSpinner/Types/EnumType.cs
  • ➕ YarnSpinner/Types/ErrorType.cs
  • ➖ YarnSpinner/Types/FunctionType.cs
  • ❌ YarnSpinner/Types/IBridgeableType.cs
  • ➖ YarnSpinner/Types/IType.cs
  • ➖ YarnSpinner/Types/NumberType.cs
  • ➖ YarnSpinner/Types/StringType.cs
  • ➖ YarnSpinner/Types/TypeBase.cs
  • ➖ YarnSpinner/Types/TypeUtil.cs
  • ➕ YarnSpinner/Types/Types.cs
  • ➖ YarnSpinner/Value.cs
  • ➖ YarnSpinner/VirtualMachine.cs
  • (Unsure) YarnSpinner/YarnSpinner.Markup
    • ➖ YarnSpinner/YarnSpinner.Markup/IAttributeMarkerProcessor.cs
    • ➖ YarnSpinner/YarnSpinner.Markup/LineParser.cs
    • ➖ YarnSpinner/YarnSpinner.Markup/MarkupParseResult.cs
    • ➖ YarnSpinner/YarnSpinner.Markup/MarkupValueType.cs
    • ❌ YarnSpinner/YarnSpinner.Markup/NoMarkupTextProcessor.cs
    • ➖ YarnSpinner/YarnSpinner.Markup/TagType.cs
  • (auto) YarnSpinner/YarnSpinner.cs

@Galdormin
Copy link
Copy Markdown
Contributor Author

With the 3.0, YarnSpinner update its ANTLR version to 4.13.1. However, it seems that the rust version (not updated since 2022) is not enough to update it easily. Some functions are missing.

If someone can help me here, I'm not familiar with ANTLR and coulnd't find anything to create those functions.

Missing functions in yarnspinerlexer.rs:

  • SetInWhenClause
  • IsInWhenClause
  • IsEndOfCommandKeyword

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant