Closed peti closed 13 years ago
Hello Peti! Thanks for the bug report. I can't find the commit g7a4e882, however. Do you have the master revision checked out?
Hi Erict, yes, I ran those tests using the latest version of the master branch. The revision number I posted was generated running "git describe".
Hi Peti! I just pushed out fixes for the test (among a lot of things). Thanks so much for reporting them.
PS: "git describe" is awesome. I was looking for exactly that functionality at one point in time, and made an incomplete duplication of it's functionality. Thanks also for pointing that out :)
Hi Erict, the test failure is fixed in the current HEAD indeed. Thank you very much for the quick response. I haven't done much with fbuild yet, but it does look quite promising. My main concern is perfermance, because the project I'm building comes with a whopping 16,000 source code files, each of which is compiled in (at least) three different variants. I tried using SCons for that, but it took ages before the process even began building anything. Your design looks like it has the potential to do a build of that size, though. I'll keep you posted about what I find out.
Take care, Peter
That was my same conclusion with SCons, and part of the reason why I started fbuild. Please let me know if I can help with anything. Stop by #felix on freenode.net if you have any questions.
Running the unit test suite gives the following failures on my machine in revision v0.2-52-g7a4e882:
Doctest: fbuild.functools.bind_args ... ok Doctest: fbuild.functools.normalize_args ... ok Doctest: fbuild.path.Path ... ok Doctest: fbuild.path.Path.add ... ok Doctest: fbuild.path.Path.rtruediv ... ok Doctest: fbuild.path.Path.truediv ... ok Doctest: fbuild.path.Path.addprefix ... ok Doctest: fbuild.path.Path.addroot ... ok Doctest: fbuild.path.Path.basename ... ok Doctest: fbuild.path.Path.dirname ... ok Doctest: fbuild.path.Path.ext ... ok Doctest: fbuild.path.Path.fnmatch ... ok Doctest: fbuild.path.Path.name ... ok Doctest: fbuild.path.Path.parent ... ok Doctest: fbuild.path.Path.relpath ... ok Doctest: fbuild.path.Path.removeroot ... ok Doctest: fbuild.path.Path.replaceext ... ok Doctest: fbuild.path.Path.replaceexts ... ok Doctest: fbuild.path.Path.split ... ok Doctest: fbuild.path.Path.splitall ... ok Doctest: fbuild.path.Path.splitext ... ok Doctest: fbuild.db.cachemethod ... FAIL Doctest: fbuild.db.cacheproperty ... FAIL Doctest: fbuild.db.caches ... FAIL test_bytes (test_fnmatch.FnmatchTestCase) ... ok test_fnmatch (test_fnmatch.FnmatchTestCase) ... ok test_mix_bytes_str (test_fnmatch.FnmatchTestCase) ... ok testAll (test_functools.TestFunctionBind) ... ok testDefault (test_functools.TestFunctionBind) ... ok testKeywordDefaults (test_functools.TestFunctionBind) ... ok testKeywordOnly (test_functools.TestFunctionBind) ... ok testMultiple (test_functools.TestFunctionBind) ... ok testSingle (test_functools.TestFunctionBind) ... ok testUnary (test_functools.TestFunctionBind) ... ok testVarArgs0 (test_functools.TestFunctionBind) ... ok testVarArgs1 (test_functools.TestFunctionBind) ... ok testVarArgs2 (test_functools.TestFunctionBind) ... ok testVarKeyword0 (test_functools.TestFunctionBind) ... ok test_glob_broken_symlinks (test_glob.GlobTests) ... ok test_glob_directory_names (test_glob.GlobTests) ... ok test_glob_directory_with_trailing_slash (test_glob.GlobTests) ... ok test_glob_literal (test_glob.GlobTests) ... ok test_glob_nested_directory (test_glob.GlobTests) ... ok test_glob_one_directory (test_glob.GlobTests) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok testMap (test_scheduler.TestScheduler) ... ok
FAIL: Doctest: fbuild.db.cachemethod
Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 2112, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for fbuild.db.cachemethod File "../lib/fbuild/db/init.py", line 126, in cachemethod
File "../lib/fbuild/db/init.py", line 129, in fbuild.db.cachemethod Failed example: ctx = fbuild.context.make_default_context([]) Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cachemethod[0]>", line 1, in
ctx = fbuild.context.make_default_context([])
NameError: name 'fbuild' is not defined
File "../lib/fbuild/db/init.py", line 137, in fbuild.db.cachemethod Failed example: c = C(ctx) Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cachemethod[2]>", line 1, in
c = C(ctx)
NameError: name 'ctx' is not defined
File "../lib/fbuild/db/init.py", line 138, in fbuild.db.cachemethod Failed example: c.test() Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cachemethod[3]>", line 1, in
c.test()
NameError: name 'c' is not defined
File "../lib/fbuild/db/init.py", line 141, in fbuild.db.cachemethod Failed example: c.test() Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cachemethod[4]>", line 1, in
c.test()
NameError: name 'c' is not defined
FAIL: Doctest: fbuild.db.cacheproperty
Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 2112, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for fbuild.db.cacheproperty File "../lib/fbuild/db/init.py", line 165, in cacheproperty
File "../lib/fbuild/db/init.py", line 170, in fbuild.db.cacheproperty Failed example: ctx = fbuild.context.make_default_context([]) Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cacheproperty[0]>", line 1, in
ctx = fbuild.context.make_default_context([])
NameError: name 'fbuild' is not defined
File "../lib/fbuild/db/init.py", line 178, in fbuild.db.cacheproperty Failed example: c = C(ctx) Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cacheproperty[2]>", line 1, in
c = C(ctx)
NameError: name 'ctx' is not defined
File "../lib/fbuild/db/init.py", line 179, in fbuild.db.cacheproperty Failed example: c.test Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cacheproperty[3]>", line 1, in
c.test
NameError: name 'c' is not defined
File "../lib/fbuild/db/init.py", line 182, in fbuild.db.cacheproperty Failed example: c.test Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.cacheproperty[4]>", line 1, in
c.test
NameError: name 'c' is not defined
FAIL: Doctest: fbuild.db.caches
Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 2112, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for fbuild.db.caches File "../lib/fbuild/db/init.py", line 98, in caches
File "../lib/fbuild/db/init.py", line 102, in fbuild.db.caches Failed example: ctx = fbuild.context.make_default_context() Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.caches[0]>", line 1, in
ctx = fbuild.context.make_default_context()
NameError: name 'fbuild' is not defined
File "../lib/fbuild/db/init.py", line 107, in fbuild.db.caches Failed example: test(ctx) Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.caches[2]>", line 1, in
test(ctx)
NameError: name 'ctx' is not defined
File "../lib/fbuild/db/init.py", line 110, in fbuild.db.caches Failed example: test(ctx) Exception raised: Traceback (most recent call last): File "/usr/lib/python3.1/doctest.py", line 1247, in __run compileflags, 1), test.globs) File "<doctest fbuild.db.caches[3]>", line 1, in
test(ctx)
NameError: name 'ctx' is not defined
Ran 54 tests in 1.818s
FAILED (failures=3)