<body><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        I wanted to figure out which inbox code I already loaded into my image.<div class="mb_sig"></div><blockquote class='history_container' type='cite' style='border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;'>
                        <p style='color: #AAAAAA; margin-top: 10px;'>Am 17.02.2021 17:08:58 schrieb Marcel Taeumel <marcel.taeumel@hpi.de>:</p><div style='font-family:Arial,Helvetica,sans-serif'><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        <img id="33a73713-b2bc-4562-96b7-9e12b9352842" src="cid:bf95f75e-13d4-49b9-a3ff-57be525383ff" width="586" height="412"></img><br><div class="mb_sig"></div><blockquote class='history_container' type='cite' style='border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;'>
                        <p style='color: #AAAAAA; margin-top: 10px;'>Am 17.02.2021 17:08:34 schrieb commits@source.squeak.org <commits@source.squeak.org>:</p><div style='font-family:Arial,Helvetica,sans-serif'>Marcel Taeumel uploaded a new version of SystemReporter to project The Trunk:<br>http://source.squeak.org/trunk/SystemReporter-mt.49.mcz<br><br>==================== Summary ====================<br><br>Name: SystemReporter-mt.49<br>Author: mt<br>Time: 17 February 2021, 5:08:25.667893 pm<br>UUID: 29b81ef5-5233-3c4f-981d-2c8205f4ce49<br>Ancestors: SystemReporter-eem.48<br><br>Adds report about "Image Packages" to help organize all code artifacts in your personal working image.<br><br>=============== Diff against SystemReporter-eem.48 ===============<br><br>Item was changed:<br>  ----- Method: SystemReporter>>initialize (in category 'initialize-release') -----<br>  initialize<br>      self<br>                  add: #'Contributors' method: #reportContributors;<br>             add: #Image method: #reportImage;<br>             add: #'Image Parameters' method: #reportImageParameters;<br>              add: #'Image Sources' method: #reportSources;<br>                 add: #'Image Preferences' method: #reportPreferences;<br>+                add: #'Image Packages' method: #reportImagePackages;<br>                  add: #'MC Repositories' method: #reportRepositories;<br>                  add: #'MC Working Copies' method: #reportWorkingCopies;<br>               add: #'VM General' method: #reportVM;<br>                 add: #'VM Options' method: #reportVMOptions;<br>                  add: #'VM Modules' method: #reportModules;<br>            add: #'VM Parameters' method: #reportVMParameters;<br>            add: #'VM Stats' method: #reportVMStats.<br>      Smalltalk os platformName = 'Win32' ifTrue: [<br>                 self<br>                          add: #'VM Configuration' method: #reportWin32VMConfig.<br>                ].<br>    self<br>                  add: #'OS General' method: #reportOS.<br>         Smalltalk os platformName = 'Win32' ifTrue: [<br>                 self<br>                          add: #'OS Details' method: #reportWin32OSDetails;<br>                     add: #'Hardware Details' method: #reportWin32HardwareDetails;<br>                         add: #'GFX Hardware Details' method: #reportWin32GFXDetails.<br>                  ].<br>    Smalltalk os osVersion = 'linux' ifTrue: [<br>            self<br>                          add: #'OS Details' method: #reportLinuxOSDetails<br>      ].<br>    self<br>                  add: #'Tiny Benchmarks' method: #reportTinyBenchmarks;<br>                add: #'Space Analysis' method: #reportSpaceAnalysis;<br>                  add: #'SUnit' method: #reportTestRunner;<br>              add: #'Debug Log' method: #reportDebugLog.<br>    categoriesSelected := Set with: #Image with: #'VM General'.<br>   self updateReport<br>  !<br><br>Item was added:<br>+ ----- Method: SystemReporter>>reportImagePackages: (in category 'reporting') -----<br>+ reportImagePackages: aStream<br>+        <br>+     | organizer trunk treated inbox release releaseRepo attribute others |<br>+       organizer := PackageOrganizer default.  <br>+             <br>+     self header: 'System Categories with Unknown Package' on: aStream.<br>+   SystemOrganization categories<br>+                select: [:category | (organizer packageOfSystemCategory: category ifNone: []) isNil]<br>+                 thenDo: [:category | aStream nextPutAll: category; cr].<br>+ <br>+  aStream cr.<br>+  self header: 'Packages with Only Cache Repository' on: aStream.<br>+      organizer packages <br>+          select: [:package |<br>+                  | repos |<br>+                    repos := package mcPackage workingCopy repositoryGroup repositories.<br>+                         repos size = 1 and: [repos first == MCRepository packageCache]]<br>+              thenDo: [:package | aStream nextPutAll: package mcPackage workingCopy description; cr].<br>+              <br>+     aStream cr.<br>+  self header: 'Official Packages' on: aStream.<br>+        others := OrderedCollection new.<br>+     trunk := MCRepository trunk allVersionNames.<br>+         inbox := MCRepository inbox allVersionNames.<br>+         treated := MCRepository treated allVersionNames.<br>+     releaseRepo := [[ReleaseBuilder releaseRepository] valueSupplyingAnswer: {'*'. true}] on: ReleaseBuilderFailed do: [:ex | nil].<br>+      release := releaseRepo ifNotNil: [:repo | repo allVersionNames] ifNil: [#()].<br>+                <br>+     (organizer packages sorted: [:a :b | a packageName <= b packageName])<br>+             collect: [:package | package mcPackage workingCopy]<br>+          thenDo: [:workingCopy | | version repo |<br>+                     version := workingCopy ancestry ancestors ifNotEmpty: [:a | a first].<br>+                        version ifNotNil: [version := version name].<br>+                         attribute := TextEmphasis normal.<br>+                    (release includes: version)<br>+                          ifTrue: [repo := releaseRepo]<br>+                                ifFalse: [(trunk includes: version)<br>+                                  ifTrue: [repo := MCRepository trunk]<br>+                                         ifFalse: [(inbox includes: version)<br>+                                          ifTrue: [repo := MCRepository inbox. attribute := TextEmphasis bold]<br>+                                                 ifFalse: [(treated includes: version)<br>+                                                        ifTrue: [repo := treated. attribute := TextColor gray]<br>+                                                       ifFalse: [others add: workingCopy]]].<br>+                        repo ifNotNil: [ "Only official packages here."<br>+                            aStream withAttribute: attribute do: [<br>+                                       aStream<br>+                                              nextPutAll: workingCopy description;<br>+                                                 nextPutAll: ' --- ';<br>+                                                 nextPutAll: repo description; cr]]]].<br>+        <br>+     aStream cr.<br>+  self header: 'Other Packages' on: aStream.<br>+   others<br>+               select: [:workingCopy | workingCopy repositoryGroup repositories size > 1]<br>+                thenDo: [:workingCopy |<br>+                      aStream<br>+                              nextPutAll: workingCopy description; <br>+                                nextPutAll: ' --- ';<br>+                                 nextPutAll: workingCopy repositoryGroup repositories second description; cr]<br>+ !<br><br><br></div></blockquote>
                                        </div></div></blockquote>
                                        </div></body>