Skip to content
Success

Changes

Summary

  1. Make patch stopwatch local (commit: 7ea256d) (details)
  2. Make useCache local (commit: 8056f59) (details)
  3. Make Patch an object (commit: 02bd581) (details)
  4. Simplify a bit (commit: 9d37955) (details)
  5. Extra semicolon (commit: 54c48ff) (details)
  6. Extract interface for PatchList, modify PatchExtractor (commit: e941160) (details)
  7. Allow null value in wildcard match (commit: fef3110) (details)
  8. Extract node matcher (commit: e134c50) (details)
  9. Extract IPatch interface, split up root patches (commit: 53d238a) (details)
  10. Fix tests depending on line endings (commit: ffbabbb) (details)
  11. Whitespace (commit: c912580) (details)
  12. Allow warnings (commit: 7b23097) (details)
  13. Make ArrayEnumerator more versatile (commit: 9998491) (details)
  14. Tag, TagList, TagListParser (commit: 7d994ad) (details)
  15. Restructure patch building (commit: 9b79b39) (details)
  16. Make extra colons a warning rather than an error (commit: 845fd21) (details)
  17. v3.1.1 (commit: 00216d3) (details)
Commit 7ea256db1aa3c2e961d0178307fe9561f7206d0d by joeydwong
Make patch stopwatch local
It's not needed outside of ProcessPatch(), which contains everything it
needs to time
(commit: 7ea256d)
The file was modified ModuleManager/MMPatchLoader.cs (diff)
Commit 8056f597afe14208b0ff9dd133cf9b8eb9b7c341 by joeydwong
Make useCache local
Really only needed for a few lines in ProcessPatch()
(commit: 8056f59)
The file was modified ModuleManager/MMPatchLoader.cs (diff)
Commit 02bd5817ec393dbecc9cc1eb0143aed2b5389723 by joeydwong
Make Patch an object
Saves having to parse things multiple times, error/info messages can now
show the original name (except NEEDS, will be worked on).  More
functionality will be added to this class in future commits.
(commit: 02bd581)
The file was modified ModuleManagerTests/PatchApplierTest.cs (diff)
The file was modified ModuleManager/ModuleManager.csproj (diff)
The file was modified ModuleManagerTests/ModuleManagerTests.csproj (diff)
The file was modified ModuleManagerTests/PatchExtractorTest.cs (diff)
The file was addedModuleManager/Patch.cs
The file was modified ModuleManager/PatchApplier.cs (diff)
The file was modified ModuleManager/PatchExtractor.cs (diff)
The file was addedModuleManagerTests/PatchTest.cs
The file was modified ModuleManager/PatchList.cs (diff)
The file was modified ModuleManager/PatchExtractor.cs (diff)
The file was modified ModuleManager/PatchExtractor.cs (diff)
Commit e9411608c888b47d128865beedf047b3c622139b by joeydwong
Extract interface for PatchList, modify PatchExtractor
PatchExtractor did too much at once, it shouldn't enumerate and extract
at the same time (still some work to be done there...).  PatchList now
has a clearer interface and obscures more of the details - iterating
through patches is now handled by it rater than PatchApplier
(commit: e941160)
The file was modified ModuleManager/Collections/ArrayEnumerator.cs (diff)
The file was modified ModuleManager/PatchApplier.cs (diff)
The file was addedModuleManagerTests/PassTest.cs
The file was modified ModuleManager/ModuleManager.csproj (diff)
The file was modified ModuleManager/PatchExtractor.cs (diff)
The file was modified ModuleManagerTests/PatchExtractorTest.cs (diff)
The file was modified ModuleManagerTests/PatchListTest.cs (diff)
The file was addedModuleManager/Pass.cs
The file was modified ModuleManager/PatchList.cs (diff)
The file was modified ModuleManagerTests/ModuleManagerTests.csproj (diff)
The file was modified ModuleManager/MMPatchLoader.cs (diff)
The file was modified ModuleManagerTests/PatchApplierTest.cs (diff)
Commit fef311054bbd8b0298e7af79e09acd935a4409d3 by joeydwong
Allow null value in wildcard match
Allows for instance :HAS[#someValue] instead of :HAS[#someValue[*]]
(commit: fef3110)
The file was modified ModuleManager/MMPatchLoader.cs (diff)
Commit e134c5049ff49671538e6a64e9e494bf3f241a0b by joeydwong
Extract node matcher
Will eventually be useful in modifying nodes too, but not without some
refactoring.  For now it is only used on root patches.
(commit: e134c50)
The file was addedModuleManager/NodeMatcher.cs
The file was modified ModuleManager/ModuleManager.csproj (diff)
The file was modified ModuleManager/Patch.cs (diff)
The file was modified ModuleManagerTests/PatchExtractorTest.cs (diff)
The file was modified ModuleManagerTests/ModuleManagerTests.csproj (diff)
The file was modified ModuleManagerTests/PatchTest.cs (diff)
The file was modified ModuleManager/PatchApplier.cs (diff)
The file was addedModuleManagerTests/NodeMatcherTest.cs
Commit 53d238a7ccc585c66ef21536fa5dd62fbea70328 by joeydwong
Extract IPatch interface, split up root patches
(commit: 53d238a)
The file was addedModuleManagerTests/Patches/DeletePatchTest.cs
The file was modified ModuleManagerTests/PatchListTest.cs (diff)
The file was modified ModuleManager/PatchApplier.cs (diff)
The file was addedModuleManagerTests/Patches/CopyPatchTest.cs
The file was addedModuleManager/Patches/CopyPatch.cs
The file was modified ModuleManager/ModuleManager.csproj (diff)
The file was addedModuleManager/Patches/EditPatch.cs
The file was modified ModuleManagerTests/PatchExtractorTest.cs (diff)
The file was modified ModuleManager/Pass.cs (diff)
The file was addedModuleManager/Patches/DeletePatch.cs
The file was modified ModuleManagerTests/PatchApplierTest.cs (diff)
The file was modified ModuleManager/PatchList.cs (diff)
The file was modified ModuleManagerTests/ModuleManagerTests.csproj (diff)
The file was removedModuleManager/Patch.cs
The file was addedModuleManager/Patches/IPatch.cs
The file was addedModuleManagerTests/Patches/PatchCompilerTest.cs
The file was addedModuleManager/Patches/PatchCompiler.cs
The file was addedModuleManagerTests/Patches/EditPatchTest.cs
The file was modified ModuleManagerTests/PassTest.cs (diff)
The file was modified ModuleManager/PatchExtractor.cs (diff)
The file was removedModuleManagerTests/PatchTest.cs
Commit ffbabbbdbeb035211853584a4d7ed43832c58dd0 by joeydwong
Fix tests depending on line endings
Since we're already asserting on the ParamName, we can trust that the
2nd part of the message will be there and not test it.
(commit: ffbabbb)
The file was modified ModuleManagerTests/PassTest.cs (diff)
The file was modified ModuleManagerTests/PatchListTest.cs (diff)
The file was modified ModuleManagerTests/NodeMatcherTest.cs (diff)
The file was modified ModuleManagerTests/Patches/PatchCompilerTest.cs (diff)
The file was modified ModuleManager/Progress/ProgressCounter.cs (diff)
Commit 7b230976b88f11380d84ad3d6f224d0c6a9042b5 by joeydwong
Allow warnings
Cache generation can proceed but the user will be alerted.
(commit: 7b23097)
The file was modified ModuleManager/Progress/PatchProgress.cs (diff)
The file was modified ModuleManager/MMPatchLoader.cs (diff)
The file was modified ModuleManager/Progress/IPatchProgress.cs (diff)
The file was modified ModuleManager/Progress/ProgressCounter.cs (diff)
The file was modified ModuleManagerTests/Progress/PatchProgressTest.cs (diff)
Commit 99984913ac564b5a06860a4094bbafe4ff335450 by joeydwong
Make ArrayEnumerator more versatile
Now optionally accepts start index and length
(commit: 9998491)
The file was modified ModuleManager/Collections/ArrayEnumerator.cs (diff)
The file was modified ModuleManagerTests/Collections/ArrayEnumeratorTest.cs (diff)
Commit 7d994ad71842dd85e4c48efcdeed075d8ed09dd3 by joeydwong
Tag, TagList, TagListParser
A lot of things in MM are structured like :tag[value]trailer and this
formalizes that structure
(commit: 7d994ad)
The file was addedModuleManagerTests/Tags/TagListParserTest.cs
The file was addedModuleManagerTests/Tags/TagListTest.cs
The file was addedModuleManager/Tags/Tag.cs
The file was modified ModuleManagerTests/ModuleManagerTests.csproj (diff)
The file was modified ModuleManager/ModuleManager.csproj (diff)
The file was addedModuleManager/Tags/TagListParser.cs
The file was addedModuleManagerTests/Tags/TagTest.cs
The file was addedModuleManager/Tags/TagList.cs
Commit 9b79b392f325efd89949a41c920f4871946a2ea5 by joeydwong
Restructure patch building
Lots of changes
* Parsing/validating patch is now separate code
* Less code in the patch extractor (may even be able to go away entirely
with some simplifications)
* Pass specifier is now an explicit concept
* Needs checker is now an object and has a cleaner interface
* Some things which were errors before are now just warnings
* If there is more than one pass specifier it will take the first one
and warn
* Syntax for root patch names is much more formal now, this might break
some unusual cases that are silently accepted now
(commit: 9b79b39)
The file was addedModuleManager/Patches/PassSpecifiers/FinalPassSpecifier.cs
The file was modified ModuleManager/Patches/EditPatch.cs (diff)
The file was modified ModuleManagerTests/PatchApplierTest.cs (diff)
The file was addedModuleManager/Patches/PassSpecifiers/BeforePassSpecifier.cs
The file was addedModuleManagerTests/Patches/PassSpecifiers/FinalPassSpecifierTest.cs
The file was addedModuleManager/Patches/PassSpecifiers/InsertPassSpecifier.cs
The file was modified ModuleManagerTests/NeedsCheckerTest.cs (diff)
The file was modified ModuleManager/Progress/IPatchProgress.cs (diff)
The file was addedModuleManagerTests/Patches/PassSpecifiers/InsertPassSpecifierTest.cs
The file was modified ModuleManager/ModuleManager.csproj (diff)
The file was addedModuleManager/Patches/PassSpecifiers/ForPassSpecifier.cs
The file was addedModuleManager/Patches/PassSpecifiers/IPassSpecifier.cs
The file was addedModuleManager/Patches/PassSpecifiers/FirstPassSpecifier.cs
The file was modified ModuleManagerTests/ModuleManagerTests.csproj (diff)
The file was addedModuleManagerTests/Patches/PassSpecifiers/BeforePassSpecifierTest.cs
The file was addedModuleManagerTests/Patches/PassSpecifiers/LegacyPassSpecifierTest.cs
The file was addedModuleManagerTests/Patches/PassSpecifiers/FirstPassSpecifierTest.cs
The file was modified ModuleManagerTests/NodeMatcherTest.cs (diff)
The file was modified ModuleManagerTests/PatchExtractorTest.cs (diff)
The file was modified ModuleManager/Patches/IPatch.cs (diff)
The file was addedModuleManager/Patches/PassSpecifiers/LegacyPassSpecifier.cs
The file was modified ModuleManagerTests/Patches/EditPatchTest.cs (diff)
The file was modified ModuleManager/Patches/DeletePatch.cs (diff)
The file was addedModuleManager/Patches/ProtoPatchBuilder.cs
The file was modified ModuleManager/MMPatchLoader.cs (diff)
The file was modified ModuleManager/PatchList.cs (diff)
The file was modified ModuleManagerTests/Patches/DeletePatchTest.cs (diff)
The file was modified ModuleManagerTests/Patches/PatchCompilerTest.cs (diff)
The file was addedModuleManagerTests/Patches/PassSpecifiers/ForPassSpecifierTest.cs
The file was addedModuleManager/Patches/PassSpecifiers/AfterPassSpecifier.cs
The file was modified ModuleManager/PatchExtractor.cs (diff)
The file was addedModuleManager/Patches/ProtoPatch.cs
The file was modified ModuleManager/PatchApplier.cs (diff)
The file was modified ModuleManager/Progress/PatchProgress.cs (diff)
The file was modified ModuleManager/NeedsChecker.cs (diff)
The file was addedModuleManagerTests/Patches/ProtoPatchBuilderTest.cs
The file was modified ModuleManagerTests/Progress/PatchProgressTest.cs (diff)
The file was modified ModuleManager/Patches/CopyPatch.cs (diff)
The file was modified ModuleManagerTests/PatchListTest.cs (diff)
The file was addedModuleManagerTests/Patches/PassSpecifiers/AfterPassSpecifierTest.cs
The file was modified ModuleManagerTests/Patches/CopyPatchTest.cs (diff)
The file was modified ModuleManager/Patches/PatchCompiler.cs (diff)
The file was modified ModuleManager/NodeMatcher.cs (diff)
Commit 845fd212cf7121a33ff68a2d5706126f09391aa8 by joeydwong
Make extra colons a warning rather than an error
Been seeing a lot of these and the correct path is determinate
(commit: 845fd21)
The file was modified ModuleManagerTests/Tags/TagListParserTest.cs (diff)
The file was modified ModuleManager/Tags/TagListParser.cs (diff)
The file was modified ModuleManagerTests/PatchExtractorTest.cs (diff)
The file was modified ModuleManager/MMPatchLoader.cs (diff)
The file was modified ModuleManager/PatchExtractor.cs (diff)
The file was modified ModuleManager/Properties/AssemblyInfo.cs (diff)