458 Commits

Author SHA1 Message Date
2655c119e4 add spec for Environment#find_finished_thread to fully cover 2017-05-23 16:47:00 -04:00
221cde7e5f update run_builder, build_sources integration tests for more coverage 2017-05-23 16:45:21 -04:00
adcee373df add integration test for Environment#build_sources 2017-05-23 16:28:13 -04:00
e58b8bd109 add integration test for Environment#run_builder 2017-05-23 16:25:03 -04:00
8a1dfb0785 do not catch NameError when looking up Builder#run method 2017-05-23 16:24:45 -04:00
d315f86a36 remove unit tests for Environment#run_builder, #build_sources 2017-05-23 16:20:41 -04:00
0d46d616dd change user dependency test to use BuildTarget#depends 2017-05-23 16:09:29 -04:00
032e6d5d0a add some integration tests for the CLI 2017-05-23 16:06:21 -04:00
c9946da193 integration tests: only pass -f when a specific rsconsfile is specified 2017-05-23 15:55:28 -04:00
599d10b50f add integration test for overriding PROGSUFFIX 2017-05-23 15:32:55 -04:00
18c6c69871 do not use ThreadsWait to wait for threads; it does not work properly 2017-05-23 15:24:52 -04:00
2ffdf82d9a add multi-threading build test 2017-05-23 14:24:14 -04:00
15e5d15424 Avoid Environment#process race condition
Race condition could have occurred if the last threaded command
was gathered in the non-blocking wait and then a blocking wait was
started because there was no job to run. Do not do a blocking wait
in this case.
2017-05-23 14:12:38 -04:00
a99e6e81b2 simplify Environment#process looping 2017-05-23 14:10:45 -04:00
1509c95176 remove Cache.reset! 2017-05-23 14:05:29 -04:00
c7bba77581 remove Program builder non-integration specs 2017-05-22 16:57:35 -04:00
957fd8c86d convert Library builder specs to integration tests 2017-05-22 16:54:10 -04:00
7e707e7e3b convert Object builder specs to integration tests 2017-05-22 16:38:57 -04:00
2be738be4f Including trailing newline when printing failed command 2017-05-22 16:26:12 -04:00
7b3bffd329 update some non-integration-test specs 2017-05-22 16:25:49 -04:00
06cb4b7a55 migrate some Cache tests to integration tests 2017-05-22 15:55:18 -04:00
bfbbc19728 fix simplecov setup to get coverage for integration build tests 2017-05-22 11:19:55 -04:00
28e56251dd update build_tests_spec to invoke rscons in a subprocess for each test 2017-05-20 15:15:07 -04:00
2d8e08b493 add -j command-line option to set number of threads 2017-05-19 11:38:42 -04:00
5cef9896ac consistently print failed build command if a builder fails 2017-05-19 10:57:30 -04:00
6344692087 update Object builder to support parallelization; update Program and Library builders to register object builds from #setup 2017-05-19 10:49:16 -04:00
267fc7124d process threaded commands until they are all complete 2017-05-17 15:52:34 -04:00
e694199f33 delay building targets that depend on builds registered with Environment#register_builds 2017-05-17 15:45:04 -04:00
4ed584701a pass setup_info to the builder's #run method 2017-05-17 13:50:31 -04:00
5de52620e4 JobSet#get_next_job_to_run: take into account targets still building 2017-05-17 10:19:43 -04:00
9cc59a35f0 handle threaded commands in Environment#process 2017-05-17 10:07:15 -04:00
ca445f5733 add JobSet#size 2017-05-17 09:36:27 -04:00
7534b29e26 add Environment#wait_for_threaded_commands, use from #run_builder if delayed execution is not allowed 2017-05-17 09:34:19 -04:00
800e7a51a4 add Environment#start_threaded_command 2017-05-17 09:14:42 -04:00
5d36aa74a0 add more fields to ThreadedCommand 2017-05-17 09:07:51 -04:00
01851c2872 refactor into new Environment#command_to_s 2017-05-17 09:04:05 -04:00
5fe55a584e add short description field to ThreadedCommand 2017-05-17 08:49:53 -04:00
9c13634eaf start adding support for threaded commands in Environment#run_builder 2017-05-17 08:47:17 -04:00
e4adaab003 add Builder#finalize 2017-05-16 09:18:08 -04:00
6b8fda706d add ThreadedCommand class 2017-05-15 10:57:34 -04:00
ef4f9882cd change Builder#run base class method to new signature 2017-05-12 21:08:14 -04:00
7a31039e35 add @since tags for new methods 2017-05-12 21:07:25 -04:00
3e4897c04b store setup_info in the job 2017-05-12 16:30:30 -04:00
d46dc2014c update JobSet interface to just take a Hash of job parameters 2017-05-12 16:30:02 -04:00
9cfc0c20b7 call Builder#setup 2017-05-12 16:27:43 -04:00
19a00a7b84 prepare to call new Builder#run interface 2017-05-12 16:25:34 -04:00
9b6d2c5111 add Environment#register_builds 2017-05-12 16:16:25 -04:00
6a0ccad804 add Builder#setup; add new Builder#run signature 2017-05-12 16:16:07 -04:00
dab870854a add Rscons.n_threads 2017-05-12 14:38:18 -04:00
695bf84092 expand target and source paths when registering a builder 2017-05-10 15:06:16 -04:00