HistoryManager.st
branchjv
changeset 4566 1c031b8c96c9
parent 4114 400f59aa641f
--- a/HistoryManager.st	Wed Aug 05 16:18:49 2020 +0100
+++ b/HistoryManager.st	Wed Aug 12 11:29:41 2020 +0100
@@ -1,6 +1,7 @@
 "
  COPYRIGHT (c) 1995 by AEG Industry Automation
  COPYRIGHT (c) 1995 by Claus Gittinger
+ COPYRIGHT (c) 2020 LabWare
 	      All Rights Reserved
 
  This software is furnished under a license and may be used
@@ -36,6 +37,7 @@
 "
  COPYRIGHT (c) 1995 by AEG Industry Automation
  COPYRIGHT (c) 1995 by Claus Gittinger
+ COPYRIGHT (c) 2020 LabWare
 	      All Rights Reserved
 
  This software is furnished under a license and may be used
@@ -573,6 +575,26 @@
     changedClass theMetaclass compilerClass == Compiler ifFalse:[^ self].
     (oldMethod notNil and:[oldMethod compilerClass ~~ Compiler]) ifTrue:[^ self].
 
+    "/ This is a crude hack to NOT update history for code stored in Tonel repositories
+    "/ as history comments are Smalltalk/X pelicularity (less useful now with `hg annotated`
+    "/ but still).
+    "/ 
+    "/ Following is based on (i) fact that in Squeak world, package names are not 'hierarchical'
+    "/ but 'flat', so package name does not contain ':' nor '/' and (ii) assumption that when
+    "/ we work with Tonel-stored code, we do it to interchange code and therefore package
+    "/ names are going to be the same, following Squeak convention.
+    "/ 
+    "/ Therefore, we check whether the package name contains ':' or '/' and if not,
+    "/ we consider it a Tonel / Monticello package and won't update the history.
+    "/ 
+    "/ JV: Perhaps, too much magic in here, we'll see how it work.
+    "/ 
+    oldMethod notNil ifTrue: [
+        (oldMethod package includesAny: ':/') ifFalse: [ ^ self]
+    ] ifFalse: [
+        (changedClass package includesAny: ':/') ifFalse: [ ^ self]
+    ].
+
     "/ ok; it is a changed method
 
     "/
@@ -678,6 +700,8 @@
 
     "Created: / 30-06-2011 / 16:51:19 / cg"
     "Modified: / 02-10-2012 / 13:22:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 10-08-2020 / 13:03:06 / Jan Vrany <jan.vrany@labware.com>"
+    "Modified (comment): / 12-08-2020 / 11:26:20 / Jan Vrany <jan.vrany@labware.com>"
 ! !
 
 !HistoryManager methodsFor:'initialization'!
@@ -1717,6 +1741,11 @@
     ^ '$Header$'
 !
 
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
+!
+
 version_SVN
     ^ '$Id$'
 ! !