This page is no longer maintained — Please continue to the home page at www.scala-lang.org

Re: Re: Tracking changed files for recompilation

2 replies
milessabin
Joined: 2008-08-11,
User offline. Last seen 33 weeks 3 days ago.

On Tue, Feb 10, 2009 at 1:47 AM, Sean McDirmid wrote:
> It does. Miles, if you are so sure that dependency tracking is broken in the
> plugin, just provide me with a bug report.

Do you actually intend to do any more work on the plugin? If not I'd
rather focus on David's work which is will be maintained going
forward.

Cheers,

Miles

milessabin
Joined: 2008-08-11,
User offline. Last seen 33 weeks 3 days ago.
Re: Re: Tracking changed files for recompilation

On Tue, Feb 10, 2009 at 2:05 AM, Sean McDirmid wrote:
> This is BS and you are just avoiding the question. Put up or shut up.

Pot, kettle calling ...

Cheers,

Miles

Sean McDirmid
Joined: 2008-12-17,
User offline. Last seen 42 years 45 weeks ago.
Re: Re: Tracking changed files for recompilation
Tupshin, thanks the problem report, every issue like this should probably be in Track. 
I'm not sure what the plan is on fixing this problem, the last time we discussed it (more than a year and a half ago?), the decision was to not fix. It is definitely something that can be fixed when the resident compiler gets some attention, but I don't know what the plan is now. 

On Wed, Feb 11, 2009 at 9:18 AM, Tupshin Harper <tharper@livejournalinc.com> wrote:
After this problem with evicting stale class symbols is fixed I promise to diligently report all problems I can that look at all like they could be related to incorrect dependency tracking.

-Tupshin

Sean McDirmid wrote:
Understood and I mostly agree.

The bug described will effect everyone in the scala-verse, not just the plugin, its something built into scalac; e.g., if or if not David's dependency tracker is used, it doesn't matter. Miles' accusation is that plugin dependency tracking was especially broken and that somehow David's component could only be an improvement. The problem here is that there are bazillion ways that the plugin can fail: it could be a problem in scalac, it could be a problem in the new scala/java interop, the build compiler could be crashing, we might not be getting change delta's from Eclipse correctly, or it could be because of a full moon (well, hopefully not that). The user of course probably doesn't know this, they just see that things aren't working, and that's fine. But after they report problem, the maintainers have to do a good job in triaging the problem. Right now, there is no real triaging going on, current maintainers feel free to bash components without knowing whats going on, alienating and agitating other contributors. So then we have a project management problem, not really a technical problem.
It could very well be that dependency tracking is broken in the plugin, or maybe it isn't and something else is broken. Without knowing, we have no idea what needs to be fixed or replaced. If its not a problem with the plugin's dependency tracking, then replacing it with David's will substantially slow down the plugin (transitive closure recompile is close to recompile all on many projects) for no good reason. Right now, Miles is either proposing to act now and figure out the problem later, or he knows what the problems are and is just refusing to share that with me. I'm disagreeing with either option.  
On Wed, Feb 11, 2009 at 7:49 AM, Josh Suereth <joshua.suereth@gmail.com <mailto:joshua.suereth@gmail.com>> wrote:

   Sean,

   You reported that the bug described is "expected behavior" as
   scalac (or fsc?) does not flush symbols.  We either need a
   workaround, or a fix to scalac.

   Until then it will be hard to figure out which bugs you'll accept
   as dependency analysis bugs, as they have the same symptoms to the
   user.



   On Feb 10, 2009, at 6:38 PM, Sean McDirmid
   <sean.mcdirmid@gmail.com <mailto:sean.mcdirmid@gmail.com>> wrote:

   I'm waiting for a description of how dependency tracking is
   broken in the plugin. I won't think of doing anything else on the
   plugin until that happens. Miles claims its broken, but he wants
   to keep it a secret in how its broken. And that really irks me
   off, how can a project be run like that???
   Really, its not fun working on this project anymore.
   On Tue, Feb 10, 2009 at 11:24 PM, Windemuth Andreas
   <windemut@yahoo.com <mailto:windemut@yahoo.com>> wrote:


       > He's right that I don't have any feeling about maintaining
       the plugin anymore, since it seems to be universally despised,

       Let me assert here that the plugin is not universally
       despised. I feel the plugin, warts and all, is tremendously
       more useful than any mere editor can be, and from what I know
       about the direction that Miles is working in, I see a
       glorious future for it. Please keep up the good work.

       Andreas



       ------------------------------------------------------------------------
       *From:* Sean McDirmid <sean.mcdirmid@gmail.com
       <mailto:sean.mcdirmid@gmail.com>>
       *To:* Josh Suereth <joshua.suereth@gmail.com
       <mailto:joshua.suereth@gmail.com>>
       *Cc:* Miles Sabin <miles@milessabin.com
       <mailto:miles@milessabin.com>>; Mark Harrah <harrah@bu.edu
       <mailto:harrah@bu.edu>>; scala-tools@listes.epfl.ch
       <mailto:scala-tools@listes.epfl.ch>; scala-debate
       <scala-debate@listes.epfl.ch
       <mailto:scala-debate@listes.epfl.ch>>
       *Sent:* Monday, February 9, 2009 9:22:22 PM

       *Subject:* Re: [scala-debate] Re: [scala-tools] Tracking
       changed files for recompilation

       I'd rather not join scala-debate, I don't have much time, and
       I've got no vested interest in Scala right now given my work
       commitments :(

       Miles is correct for feeling that the code is unapproachable,
       but then I never got much help from Martin on scalac either
       (same arguments can be made there). He's right that I don't
       have any feeling about maintaining the plugin anymore, since
       it seems to be universally despised, and no one thinks its
       even worth filing a decent bug report--even Miles would
       rather bash the plugin than go into what the problem is.
       In that case, I should just as well resign from the
       project/scala and I can move on to promoting Bling full time.
       I don't really see a better option right now, I don't even
       get to write Scala code anymore, and won't unless the
       mythical Scala.NET <http://Scala.NET> ever gets to a point
       where it is usable. Its nothing against anyone, I really want
       to see David write a decent dependency calculator, and I want
       to see a great IDE, I don't care if its Cao Yuan's NetBeans
       or IntelliJ, or whatever. I just don't think I'm very useful
       to the project anymore.
       On Tue, Feb 10, 2009 at 10:08 AM, Josh Suereth
       <joshua.suereth@gmail.com <mailto:joshua.suereth@gmail.com>>
       wrote:

           Because email is fun!!!!!ONE!!!!!!!              <349.gif><343.gif><364.gif><35D.gif><1A5.gif><347.gif><322.gif><35E.gif><33E.gif><360.gif>



           (This probably makes no sense to anyone who didn't read
           my earlier email on the emoticon subject)


           Anyway to take this conversation off-line or, Sean, would
           you mind joining scala-debate?  I really believe we've
           entered debate territory, and I'd rather leave this
           channel open for more "How does this tool work, or Should
           this tool be created?" questions.   I beleive we've left
           "This tool is useful" territory and are now arguing
           details over whose code to use.


           On Mon, Feb 9, 2009 at 9:01 PM, Miles Sabin
           <miles@milessabin.com <mailto:miles@milessabin.com>> wrote:

               On Tue, Feb 10, 2009 at 1:58 AM, Sean McDirmid
               <sean.mcdirmid@gmail.com
               <mailto:sean.mcdirmid@gmail.com>> wrote:
               > If there is a bug in build dependency tracking, I
               can fix it fairly quickly.

               That really doesn't matter.

               * The current code is impenetrable and buggy.

               * Nobody other than you wants to support it.

               * You don't appear to be willing to do the work of
               maintaining it yourself.

               * David is in the process of putting together a
               better, maintained alternative.

               I can't really see why I should waste my time on this ...

               Cheers,


               Miles

               --
               Miles Sabin
               tel:    +44 (0)1273 720 779
               mobile: +44 (0)7813 944 528
               skype:  milessabin








Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland