<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    Just pushed these to GitHub.<br>
    <br>
    Cheers,<br>
    <pre class="moz-signature" cols="72">-- 
Juan Vuletich
<a class="moz-txt-link-abbreviated" href="http://www.cuis-smalltalk.org">www.cuis-smalltalk.org</a>
<a class="moz-txt-link-freetext" href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a>
<a class="moz-txt-link-freetext" href="https://github.com/jvuletich">https://github.com/jvuletich</a>
<a class="moz-txt-link-freetext" href="https://www.linkedin.com/in/juan-vuletich-75611b3">https://www.linkedin.com/in/juan-vuletich-75611b3</a>
@JuanVuletich</pre>
    <br>
    On 2/2/2020 5:22 PM, Phil B via Cuis-dev wrote:
    <blockquote
cite="mid:CAMJMOegMBk+LnmPCWoJ+8-Z=aopOPdU0B5aOHT=hRwWm4tQuxg@mail.gmail.com"
      type="cite">
      <div dir="ltr">Sorry for the delay... I had some convoluted
        dependencies on the old methods that took me a while to
        untangle.  All set now.  Your proposed changes look good to me.</div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Wed, Jan 29, 2020 at 8:55
          AM Juan Vuletich <<a moz-do-not-send="true"
            href="mailto:juan@jvuletich.org">juan@jvuletich.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;">On 1/18/2020 8:07 PM, Phil B via Cuis-dev
          wrote:<br>
          > Attached is a first cut of something I've wanted for a
          while: the <br>
          > ability to capture method changes as they occur with the
          ability to <br>
          > prevent them from happening if needed at a global level. 
          Basically <br>
          > it's just paired methods of #isOkTo[Compile|Remove]:meta:
          and <br>
          > #note[Compilation|Removal]Of:meta:.<br>
          ><br>
          > It's always bothered me how central the method  structure
          is yet <br>
          > completely useless from the standpoint of having
          extensible <br>
          > metadata... if I'm wrong re: extensibility, please let me
          know what <br>
          > I've overlooked.  So barring that, these changes allow
          for things like <br>
          > helping to keep a separate metadata structure in sync
          with method <br>
          > changes.  The main requirement is to be able to track
          method adds, <br>
          > changes and deletes to the image globally.  Not sure, but
          I was <br>
          > thinking that this facility might also be useful for
          refactoring tools.<br>
          ><br>
          > One issue / odd thing I noticed: the removal methods only
          get called <br>
          > instance-side due to ClassDescription #removeSelector:
          only getting <br>
          > called on instance methods and you have to jump up to the
          Behavior <br>
          > implementor for class methods.  That seems strange to me
          since method <br>
          > compilation all appears to occur at the level of
          ClassDescription.  Is <br>
          > there a reason removals need to be different from
          compilation in this <br>
          > way?  (Not knowing the answer, I haven't fixed this issue
          in the <br>
          > attached changeset)<br>
          <br>
          Hi Phil, folks,<br>
          <br>
          This is my proposal.<br>
          <br>
          When reviewing all this code, I found some dead code, and
          stuff crying <br>
          for cleanup. Hence the attached #4035 and #4036.<br>
          <br>
          Then, I almost cloned your implementation of isOk, but with a
          different <br>
          question for adding a new method than for modifying en
          existing one. I <br>
          did #4037 with your initials, as it is your code after all.<br>
          <br>
          BTW, I don't quite get your last paragraph. Can you elaborate
          a bit on <br>
          the issue, perhaps with steps to reproduce the offending
          behavior?<br>
          <br>
          If these changesets look ok for everybody, I'll push them to
          GitHub.<br>
          <br>
          Thanks,<br>
          <br>
          -- <br>
          Juan Vuletich<br>
          <a moz-do-not-send="true" href="http://www.cuis-smalltalk.org"
            rel="noreferrer" target="_blank">www.cuis-smalltalk.org</a><br>
          <a moz-do-not-send="true"
            href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev"
            rel="noreferrer" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a><br>
          <a moz-do-not-send="true" href="https://github.com/jvuletich"
            rel="noreferrer" target="_blank">https://github.com/jvuletich</a><br>
          <a moz-do-not-send="true"
            href="https://www.linkedin.com/in/juan-vuletich-75611b3"
            rel="noreferrer" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a><br>
          @JuanVuletich<br>
          <br>
        </blockquote>
      </div>
    </blockquote>
  </body>
</html>