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
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!
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