#techempower-fwbm

/

      • alex-techempower
        there we go
      • hamiltont
        boom!
      • alex-techempower
        so I will cancel the current build
      • TE-msmith
        boom?
      • hamiltont
        alex brought the boom...
      • also, I may be a bit drunk
      • TE-msmith
        attakid
      • it's 9am here, I hope that it's the morning where you are as well
      • alex-techempower: i see that travis has marked our build as 'canceled'
      • how do I kick a new one off?
      • alex-techempower
        TE-msmith: I think we just let it do it
      • TE-msmith
        oh
      • okay
      • hamiltont
        cancel builds 1 through 3 though
      • TE-msmith
        how?
      • hamiltont
        ps - because we have such a large matrix for each build, you may have to hit cancel two or three times
      • there should be a cancel button on the top right
      • alex-techempower
        crap
      • I accidentally hit the restart
      • TE-msmith
        >_<
      • alex-techempower
        all right
      • TE-msmith
        how are you able to access this?
      • lol
      • alex-techempower
        should be canceled
      • TE-msmith: I don't know
      • maybe because i'm a collaborator?
      • hamiltont
        TE-msmith: did you sign in?
      • alex-techempower
        I think I can just cancel builds
      • hamiltont
      • TE-msmith
        yeah, I'm signed in
      • hamiltont
        Hmm
      • TE-msmith
        i see builds 1-3 are canceled
      • build 4 is yellow
      • hamiltont
        Perhaps ask the guys over in #travis how to use travis with a team?
      • TE-msmith
        but the "current build" is #1
      • alex-techempower
        refresh
      • hamiltont
        Yea just give it a minute
      • we are in their peak load time
      • Also, they currently have a minor issue on travis-ci.com, not sure if it's affecting .org
      • FWBM-bot
        [FrameworkBenchmarks] jyentechempower pushed 1 new commit to master: http://git.io/weB_eA
      • FrameworkBenchmarks/master 7da5f82 James Yen: If OS is windows avoid replace environ.
      • hamiltont
        See http://status.travis-ci.com/ for their status...it's updated regularly
      • Hey alex-techempower, something to be aware of
      • you guys are either going to need to start using "[ci skip]" in your commit messages, or do a lot of cancelling
      • you probably don't want to run a full build but once per day
      • alex-techempower
        yea
      • I'll let jyen know
      • hamiltont
        solid
      • it'll take some time to get everyone used to it
      • or you'll be cancelling a lot for the first week...
      • alex-techempower
        yea
      • I wish we could opt in to builds
      • rather than opting out
      • hamiltont
        yea, I mentioned that in my pull request
      • I could scan the commit messages for an opt-in flag
      • I just thought that for the first week it makes more sense to opt out
      • alex-techempower
        ah
      • all right
      • hamiltont
        becuase no one would know the flag...so they wouldn't know what they were missing
      • but yea...I think just looking for *any* change in toolset/ is way to aggressive for long term use
      • alex-techempower
        the project is probably going to stagnate for the next couple of weeks, so if you want something to be merged that you think is important, you need to get it in today or tomorrow
      • hamiltont
        mk
      • im just going to be fixing one-offs for a bit i think
      • alex-techempower
        all right
      • hamiltont
        cool, it works
      • you only touched .travis.yml in your commit
      • so it's cancelling all of the jobs ;-)
      • alex-techempower
        hamiltont: so I need to touch the framework-test.py?
      • hamiltont
        yea
      • that or anything inside toolset/
      • then sit back and wait for ~5 hours ;-)
      • I wasn't really able to test this with pull requests, so I'm not sure how those will be handled yet
      • alex-techempower
        that'll be interesting
      • hamiltont
        but they should just be cloned/checkedout and then build
      • it might take some minor fixing to get that to ideal
      • FWBM-bot
        [FrameworkBenchmarks] jyentechempower pushed 1 new commit to master: http://git.io/KEMjjg
      • FrameworkBenchmarks/master b0dc6fe James Yen: [ci skip]...
      • alex-techempower
        thar we go
      • jyenTE joined the channel
      • jyenTE
        hello, is there any room left for running Windows tests, because it seems that the new updates come with the implicit assumption that the OS is Linux
      • alex-techempower
        hamiltont: ^^
      • jyenTE
        for example the stop method in framework_test.py relies on a relative directory method, which needs a Linux OS
      • and the new replace environ thingy is implicit in its Linux need
      • ^the above sentence is probably not good english
      • rofl
      • hamiltont
        looking...
      • jyenTE: by relies on a relative directory method, are you referring to "setup_util.path_relative_to_root"
      • If so, that could be generalized to any OS by using os.path.relpath inside of path_relative_to_root
      • This is indicitative of the current master situation I'm afraid - many changes are linux-only, but they have been done in such a way that you can add windows support in one place and it will be used everywhere
      • I just don't know anyone making major contributions to support windows at the moment. If you're interested I'd be happy to offer what advice I can as you're coding, but every environment I have is linux so I can't do more than talk :-/
      • alex-techempower
        hamiltont: there really isn't - most of the ASP.NET tests fail anyway
      • and though there's a few PRs, none of them fix it
      • hamiltont
        Yea...nothing that's been changed recently would prohibit using windows
      • but AFAIK there's just no one working on it
      • alex-techempower
        we're trying to get the benchmark suite working on windows - some people consider servers running on windows to be statistically significant
      • hamiltont
        it would definitely be relevant
      • stackoverflow runs IIS on windows I think
      • (for part of their stuff, not all of it obviously)
      • alex-techempower
        hamiltont: I noticed you made a few commits R.E. gh#927
      • [d__d]
        Benchmarker does not properly terminate child processes: https://github.com/TechEmpower/FrameworkBenchma...
      • alex-techempower
        is that in a PR right now?
      • I think that's something we're interested in merging soon as well
      • hamiltont
        I could refactor them into an isolated PR
      • although to be honest
      • the fact that windows calls __run_test as a function and linux calls __run_test as a process has been one of the major stikcing points
      • I'm not even sure why windows does that, I haven't found a solid answer on why there was a comment saying "windows doesnt have these features" when multiprocessing explicitely works cross-platform
      • So I've been holding off putting in major changes to how __run_tests calls __run_test, even though I know I can clean it up a lot on linux
      • because I don't know what I'm potentially breaking
      • alex-techempower
        that's a good TE-msmith question, although what we've been doing is just having all the windows set in a conditional block that says "if os == windows, use this, else, use this"
      • but windows is already broken ;)
      • hamiltont
        Yea, unfortunately the subprocess vs not makes just using conditionals harder
      • for example, multiprocessing shouldn't be used with "except KeyboardInterrupt"
      • it currently is in master, which breaks Ctrl-C quite a bit for me
      • but it's there for a reason - to stop the test cleanly
      • I would just move that 'stop cleanly' into __run_tests and abolish the except in the subprocess, but that's requires special code when using a process that would interfere with the code that's just calling a function
      • its a mess :-/
      • I'm leaning towards just standardizing on multiprocess in __run_tests and fixing things for linux
      • alex-techempower
        hah
      • understatment of the year
      • hamiltont
        and letting someone figure out windows if they want to
      • but as jyenTE bring up, it already looks from the outside like we can't run windows. At the moment that's not really true - the only changes needed are minor
      • without knowing why we were not using multiprocessing on windows, I may be causing semi-permanent damage to our ability to ever use windows
      • so yea...I've thought about it a little bit :-P
      • alex-techempower
        TE-msmith: may be able to provide some input hopefully
      • jyenTE
        hamilton would it be possible to replicate all of the setup_util functions such that they do the same thing on Windows?
      • or I guess what I'm saying is, the entire test sequence that we have now, is it possible to replicate that same thing on Windows?
      • like the replace environ and so on and so forth for Windows
      • forgive my ignroance
      • TE-msmith
        wat
      • hamiltont
        It definitely is, that was one main point of moving some complex shell functions into setup_util - if someone wants to add windows support they just need to update the internals of the functions in setup_util
      • jyenTE
        SUH WEEET
      • alex-techempower
        TE-msmith: hamiltont had some questions about the implementation decisions that we made for windows
      • TE-msmith
        such as?
      • hamiltont
        jyenTE: but someone still has to do that wokr and test it on windows
      • TE-msmith: mind reading the discussion above? It was a lot of typing ...
      • alex-techempower
        jyenTE: *hint* *hint*
      • jyenTE
        yes I will be doing that today
      • will stay in this room and ping for help if needed!
      • hamiltont
        Sounds great!
      • jyenTE
        THUNDERCATS R GOO
      • alex-techempower
        TE-msmith: I think he was referring to https://github.com/TechEmpower/FrameworkBenchma...
      • and why we used multiprocessing on windows
      • hamiltont
        jyenTE: I think the hardest part may be handling the 'command' parameter to replace_environ. In a number of places I'm using the bash && operator to pass in multiple commands. The windows command shell doesn't support that I think
      • So you would likely need to split the command string by the '&&' pattern inside of replace_environ to handle that case
      • Perhaps hardest is not the right work, it's just a bit tricky
      • TE-msmith
        as to why we do things differently on windows
      • no idea
      • hamiltont
        TE-msmith: Darn
      • TE-msmith
        I inherited this code from a colleague who left the company