<div dir="ltr">Would it be more flexible as a class-instance var even with no added complexity?</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Dec 26, 2021 at 1:21 AM <<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Marcel Taeumel uploaded a new version of Kernel to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Kernel-mt.1437.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/trunk/Kernel-mt.1437.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Kernel-mt.1437<br>
Author: mt<br>
Time: 26 December 2021, 8:21:42.050619 am<br>
UUID: 28086a0b-8543-4f44-9c9f-7e63d3028f7f<br>
Ancestors: Kernel-ct.1436<br>
<br>
Makes #acceptsLoggingOfCompilation a preference that can be disabled. See commentary #logCompiledSources. Classes can still override this preference but should follow a "super acceptsLoggingOfCompilation and: [...]" pattern.<br>
<br>
Thanks to Tim (tpr) for figuring out the mechanics and testing it throughout the year!<br>
<br>
=============== Diff against Kernel-ct.1436 ===============<br>
<br>
Item was changed:<br>
  Behavior subclass: #ClassDescription<br>
        instanceVariableNames: 'instanceVariables organization'<br>
+       classVariableNames: 'AcceptsLoggingOfCompilation TraitImpl'<br>
-       classVariableNames: 'TraitImpl'<br>
        poolDictionaries: ''<br>
        category: 'Kernel-Classes'!<br>
<br>
  !ClassDescription commentStamp: '<historical>' prior: 0!<br>
  I add a number of facilities to basic Behaviors:<br>
        Named instance variables<br>
        Category organization for methods<br>
        The notion of a name of this class (implemented as subclass responsibility)<br>
        The maintenance of a ChangeSet, and logging changes on a file<br>
        Most of the mechanism for fileOut.<br>
<br>
  I am an abstract class, in particular, my facilities are intended for inheritance by two subclasses, Class and Metaclass.<br>
<br>
  The slots 'organization' and 'methodDict' should ONLY be accessed by message in order for things to work during ImageSegment>>discoverActiveClasses (q.v.).!<br>
<br>
Item was added:<br>
+ ----- Method: ClassDescription class>>logCompiledSources (in category 'compiling') -----<br>
+ logCompiledSources<br>
+       <preference: 'Log compilations to changes file'<br>
+               category: 'general'<br>
+               description: 'If enabled, the code being compiled will get logged to the changes file. Disabling allows loading code with no changes file in use. See also #warnIfNoChangesFile and #warnIfNoSourcesFile and #readDocumentAtStartup. You can configure a silent image/DoItFirst for, e.g., server environments.'<br>
+               type: #Boolean><br>
+ <br>
+       ^ AcceptsLoggingOfCompilation ifNil: [true]!<br>
<br>
Item was added:<br>
+ ----- Method: ClassDescription class>>logCompiledSources: (in category 'compiling') -----<br>
+ logCompiledSources: aBoolean<br>
+       ^ AcceptsLoggingOfCompilation := aBoolean!<br>
<br>
Item was changed:<br>
  ----- Method: ClassDescription>>acceptsLoggingOfCompilation (in category 'compiling') -----<br>
  acceptsLoggingOfCompilation<br>
        "weird name is so that it will come lexically before #compile, so that a clean build can make it through.  7/7/96 sw"<br>
<br>
+       ^AcceptsLoggingOfCompilation ifNil: [true]!<br>
-       ^ true!<br>
<br>
<br>
</blockquote></div>