[Buildbot-commits] [buildbot/buildbot] a3fcc9: Sourcestamps refactor (WARNING!)
GitHub
noreply at github.com
Sat Jan 12 22:01:14 UTC 2013
Branch: refs/heads/nine
Home: https://github.com/buildbot/buildbot
Commit: a3fcc91ee3982eac7bd9d78a5c5202c0a9602986
https://github.com/buildbot/buildbot/commit/a3fcc91ee3982eac7bd9d78a5c5202c0a9602986
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2012-12-29 (Sat, 29 Dec 2012)
Changed paths:
M README.md
M master/buildbot/clients/debug.py
M master/buildbot/clients/tryclient.py
M master/buildbot/data/buildsets.py
M master/buildbot/data/changes.py
M master/buildbot/data/connector.py
A master/buildbot/data/sourcestamps.py
M master/buildbot/db/base.py
M master/buildbot/db/builders.py
M master/buildbot/db/buildsets.py
M master/buildbot/db/changes.py
M master/buildbot/db/connector.py
M master/buildbot/db/masters.py
A master/buildbot/db/migrate/versions/026_sourcestamps_refactor.py
M master/buildbot/db/model.py
M master/buildbot/db/schedulers.py
M master/buildbot/db/sourcestamps.py
R master/buildbot/db/sourcestampsets.py
M master/buildbot/db/state.py
M master/buildbot/db/users.py
M master/buildbot/interfaces.py
M master/buildbot/process/builder.py
M master/buildbot/process/buildrequest.py
M master/buildbot/process/debug.py
M master/buildbot/schedulers/base.py
M master/buildbot/schedulers/dependent.py
M master/buildbot/schedulers/forcesched.py
M master/buildbot/schedulers/timed.py
M master/buildbot/schedulers/triggerable.py
M master/buildbot/schedulers/trysched.py
R master/buildbot/sourcestamp.py
M master/buildbot/status/build.py
M master/buildbot/status/builder.py
M master/buildbot/status/buildrequest.py
M master/buildbot/status/web/grid.py
M master/buildbot/status/words.py
M master/buildbot/steps/trigger.py
M master/buildbot/test/fake/fakedata.py
M master/buildbot/test/fake/fakedb.py
M master/buildbot/test/fake/fakemaster.py
M master/buildbot/test/fake/fakemq.py
M master/buildbot/test/integration/test_upgrade.py
M master/buildbot/test/regressions/test_import_unicode_changes.py
M master/buildbot/test/regressions/test_oldpaths.py
M master/buildbot/test/regressions/test_shell_command_properties.py
R master/buildbot/test/regressions/test_sourcestamp_revision.py
M master/buildbot/test/scenarios/base.py
M master/buildbot/test/unit/test_changes_changes.py
M master/buildbot/test/unit/test_changes_hgpoller.py
M master/buildbot/test/unit/test_data_builders.py
M master/buildbot/test/unit/test_data_buildsets.py
M master/buildbot/test/unit/test_data_changes.py
M master/buildbot/test/unit/test_data_connector.py
M master/buildbot/test/unit/test_data_masters.py
A master/buildbot/test/unit/test_data_sourcestamps.py
M master/buildbot/test/unit/test_db_base.py
M master/buildbot/test/unit/test_db_builders.py
M master/buildbot/test/unit/test_db_buildrequests.py
M master/buildbot/test/unit/test_db_builds.py
M master/buildbot/test/unit/test_db_buildsets.py
M master/buildbot/test/unit/test_db_changes.py
M master/buildbot/test/unit/test_db_masters.py
A master/buildbot/test/unit/test_db_migrate_versions_026_sourcestamps_refactor.py
M master/buildbot/test/unit/test_db_schedulers.py
M master/buildbot/test/unit/test_db_sourcestamps.py
R master/buildbot/test/unit/test_db_sourcestampsets.py
M master/buildbot/test/unit/test_master.py
M master/buildbot/test/unit/test_process_builder.py
M master/buildbot/test/unit/test_process_buildrequest.py
M master/buildbot/test/unit/test_process_users_manual.py
M master/buildbot/test/unit/test_process_users_users.py
M master/buildbot/test/unit/test_schedulers_base.py
M master/buildbot/test/unit/test_schedulers_dependent.py
M master/buildbot/test/unit/test_schedulers_forcesched.py
M master/buildbot/test/unit/test_schedulers_timed_NightlyTriggerable.py
M master/buildbot/test/unit/test_schedulers_triggerable.py
M master/buildbot/test/unit/test_schedulers_trysched.py
R master/buildbot/test/unit/test_sourcestamp.py
M master/buildbot/test/unit/test_status_build.py
M master/buildbot/test/unit/test_status_client.py
M master/buildbot/test/unit/test_status_mail.py
M master/buildbot/test/unit/test_status_master.py
M master/buildbot/test/unit/test_steps_trigger.py
A master/buildbot/test/unit/test_test_util_validation.py
R master/buildbot/test/unit/test_test_util_verifier.py
M master/buildbot/test/util/connector_component.py
M master/buildbot/test/util/scheduler.py
R master/buildbot/test/util/types/__init__.py
R master/buildbot/test/util/types/builders.py
R master/buildbot/test/util/types/buildsets.py
R master/buildbot/test/util/types/changes.py
R master/buildbot/test/util/types/masters.py
R master/buildbot/test/util/types/schedulers.py
A master/buildbot/test/util/validation.py
R master/buildbot/test/util/verifier.py
A master/buildbot/util/pickle_prereqs.py
M master/docs/developer/data.rst
M master/docs/developer/database.rst
M master/docs/developer/rtype-buildset.rst
M master/docs/developer/rtype-change.rst
A master/docs/developer/rtype-sourcestamp.rst
M master/docs/manual/cfg-builders.rst
M master/docs/manual/cmdline.rst
M master/docs/manual/customization.rst
M master/docs/relnotes/index.rst
Log Message:
-----------
Sourcestamps refactor (WARNING!)
WARNING: this breaks the existing status hierarchy; in particular,
BuildStatus.getSourceStamps now returns nothing. It's all
downhill from here!
SourceStampSets are gone; instead, buildsets have a collection of
sourcestamps (roughly equivalent to the existing sourcestampsets, but
treated as a simple many:many relationship instead); each change has one
sourcestamp, and sourcestamps are uniquely identified. This
necessitates significant changes to schedulers and the build process.
More importantly, SourceStamps are gone! The class has moved to the
pickle_prereqs module for use when importing pickles, but is otherwise
gone from Buildbot. This, too, has required significant changes to the
process classes. Note that BuildRequests add "fake" SourceStamp objects
so that the status hierarchy can remain relatively un-altered.
All of this begins to break the status hierarchy, which will disappear
by the end of the nine process anyway. In particular,
BuildStatus.getSourceStamps now always returns an empty set, meaning
most of the web UI no longer shows anything useful.
Also in this commit: (sorry for rolling all this together!)
* a new method of validating data types, allowing more flexible
specification of nested types.
* generalized column hashing to work around MySQL's lack of support for
unique indexes.
* remove support for triggering builds from the debug client
* adds a master attribute to the DB connector, requiring changes to
FakeDBConnector as well
* fix a few identifiers with underscores to use interCaps instead
Commit: 7b62e3368e40201bb99c3931cebfa9987b6e3918
https://github.com/buildbot/buildbot/commit/7b62e3368e40201bb99c3931cebfa9987b6e3918
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2012-12-30 (Sun, 30 Dec 2012)
Changed paths:
M master/buildbot/test/util/validation.py
M master/docs/developer/data.rst
M master/docs/developer/rtype-sourcestamp.rst
Log Message:
-----------
minor docs fixes
Commit: 08993b55fbad1d9e1afa341fa53de513deeae8a7
https://github.com/buildbot/buildbot/commit/08993b55fbad1d9e1afa341fa53de513deeae8a7
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2012-12-31 (Mon, 31 Dec 2012)
Changed paths:
M master/buildbot/data/sourcestamps.py
Log Message:
-----------
fix resource type 'type' attribute
Commit: 8b0507bf7e30fca97ec7f3553f2d05348f4c9a19
https://github.com/buildbot/buildbot/commit/8b0507bf7e30fca97ec7f3553f2d05348f4c9a19
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-02 (Wed, 02 Jan 2013)
Changed paths:
M README.md
M master/buildbot/db/changes.py
Log Message:
-----------
minor fixes suggested by jaredgrubb
Commit: b4ae532b4bb624e9e7693545c62ed76537094850
https://github.com/buildbot/buildbot/commit/b4ae532b4bb624e9e7693545c62ed76537094850
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-04 (Fri, 04 Jan 2013)
Changed paths:
M master/buildbot/test/util/validation.py
M master/docs/developer/database.rst
M master/docs/developer/tests.rst
Log Message:
-----------
validator fixes as suggested by tomprince
Commit: ef5b9421700a19723a0afe63c8c3710d00dba9ba
https://github.com/buildbot/buildbot/commit/ef5b9421700a19723a0afe63c8c3710d00dba9ba
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/test/util/validation.py
Log Message:
-----------
remove tuple deconstruction, better factoring of buildset validators
Commit: 2fd12642d2bac82bfb80ab29a56aa4c6309f3797
https://github.com/buildbot/buildbot/commit/2fd12642d2bac82bfb80ab29a56aa4c6309f3797
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/status/build.py
M master/buildbot/test/scenarios/base.py
M master/buildbot/test/unit/test_db_changes.py
M master/buildbot/test/unit/test_db_sourcestamps.py
M master/buildbot/test/unit/test_schedulers_trysched.py
M master/buildbot/test/util/scheduler.py
Log Message:
-----------
minor fixes to tests
Commit: 208426ea2932fa6007ecc159ef8ba1104d04e14d
https://github.com/buildbot/buildbot/commit/208426ea2932fa6007ecc159ef8ba1104d04e14d
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/schedulers/timed.py
M master/buildbot/test/unit/test_schedulers_timed_NightlyTriggerable.py
M master/docs/relnotes/index.rst
Log Message:
-----------
add support for old lastTrigger format to NightlyTriggerable
Commit: cb1b5a9121056535515b22edcf8bc2e07192c0df
https://github.com/buildbot/buildbot/commit/cb1b5a9121056535515b22edcf8bc2e07192c0df
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/schedulers/base.py
Log Message:
-----------
remove unnecessary inlineCallbacks
Commit: 04843b2ce5eefa1d2cf6349b4b8c9713ad8b4186
https://github.com/buildbot/buildbot/commit/04843b2ce5eefa1d2cf6349b4b8c9713ad8b4186
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/process/buildrequest.py
Log Message:
-----------
make the temporary SourceStamp more obvious
Commit: 864abf346122312009cf560ed41b28b7d4e3612f
https://github.com/buildbot/buildbot/commit/864abf346122312009cf560ed41b28b7d4e3612f
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/db/buildsets.py
Log Message:
-----------
remove unnecessary yield of a returnValue
Commit: 8500289eacae0d2bba0e64b14c4788a75e78cf4f
https://github.com/buildbot/buildbot/commit/8500289eacae0d2bba0e64b14c4788a75e78cf4f
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/data/buildsets.py
Log Message:
-----------
use copy instead of deepcopy
Commit: 43008003a28f97214d192a1fae64d71528bbae76
https://github.com/buildbot/buildbot/commit/43008003a28f97214d192a1fae64d71528bbae76
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-05 (Sat, 05 Jan 2013)
Changed paths:
M master/buildbot/changes/changes.py
M master/buildbot/db/migrate/versions/001_initial.py
M master/buildbot/db/model.py
M master/buildbot/status/build.py
M master/buildbot/status/builder.py
M master/buildbot/status/master.py
M master/buildbot/status/persistent_queue.py
M master/buildbot/test/integration/test_upgrade.py
M master/buildbot/test/regressions/test_oldpaths.py
M master/buildbot/test/regressions/test_unpickling.py
M master/buildbot/test/unit/test_status_logfile.py
A master/buildbot/test/unit/test_util_pickle.py
M master/buildbot/test/util/change_import.py
A master/buildbot/util/pickle.py
R master/buildbot/util/pickle_prereqs.py
M master/contrib/fix_changes_pickle_encoding.py
M master/docs/developer/utils.rst
Log Message:
-----------
handle old, no-longer-desired classes in pickles using a find_global function
Commit: 323127543a038039931c781d2b5f9a05c8a9003a
https://github.com/buildbot/buildbot/commit/323127543a038039931c781d2b5f9a05c8a9003a
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-08 (Tue, 08 Jan 2013)
Changed paths:
M master/buildbot/schedulers/timed.py
Log Message:
-----------
fix logging statement
Commit: 9a8fcf86ba90972afa5fc3e19d564d45fb1fd05d
https://github.com/buildbot/buildbot/commit/9a8fcf86ba90972afa5fc3e19d564d45fb1fd05d
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-12 (Sat, 12 Jan 2013)
Changed paths:
M master/buildbot/status/build.py
Log Message:
-----------
fix comment typo
Commit: e0f133bbe64f2cc3a2c4ec3b29a2893b150f0c61
https://github.com/buildbot/buildbot/commit/e0f133bbe64f2cc3a2c4ec3b29a2893b150f0c61
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-12 (Sat, 12 Jan 2013)
Changed paths:
M master/buildbot/test/util/validation.py
Log Message:
-----------
be extra-careful about validation
Commit: 438b525d71ec9d84231c6d574ae94fc44bd2e759
https://github.com/buildbot/buildbot/commit/438b525d71ec9d84231c6d574ae94fc44bd2e759
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-12 (Sat, 12 Jan 2013)
Changed paths:
M master/buildbot/schedulers/timed.py
Log Message:
-----------
fix logging fix
Commit: b70f2b66e81e6231b14525c97e3f162e26250a61
https://github.com/buildbot/buildbot/commit/b70f2b66e81e6231b14525c97e3f162e26250a61
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-12 (Sat, 12 Jan 2013)
Changed paths:
M README.md
M master/buildbot/changes/changes.py
M master/buildbot/clients/debug.py
M master/buildbot/clients/tryclient.py
M master/buildbot/data/buildsets.py
M master/buildbot/data/changes.py
M master/buildbot/data/connector.py
A master/buildbot/data/sourcestamps.py
M master/buildbot/db/base.py
M master/buildbot/db/builders.py
M master/buildbot/db/buildsets.py
M master/buildbot/db/changes.py
M master/buildbot/db/connector.py
M master/buildbot/db/masters.py
M master/buildbot/db/migrate/versions/001_initial.py
A master/buildbot/db/migrate/versions/026_sourcestamps_refactor.py
M master/buildbot/db/model.py
M master/buildbot/db/schedulers.py
M master/buildbot/db/sourcestamps.py
R master/buildbot/db/sourcestampsets.py
M master/buildbot/db/state.py
M master/buildbot/db/users.py
M master/buildbot/interfaces.py
M master/buildbot/process/builder.py
M master/buildbot/process/buildrequest.py
M master/buildbot/process/debug.py
M master/buildbot/schedulers/base.py
M master/buildbot/schedulers/dependent.py
M master/buildbot/schedulers/forcesched.py
M master/buildbot/schedulers/timed.py
M master/buildbot/schedulers/triggerable.py
M master/buildbot/schedulers/trysched.py
R master/buildbot/sourcestamp.py
M master/buildbot/status/build.py
M master/buildbot/status/builder.py
M master/buildbot/status/buildrequest.py
M master/buildbot/status/master.py
M master/buildbot/status/persistent_queue.py
M master/buildbot/status/web/grid.py
M master/buildbot/status/words.py
M master/buildbot/steps/trigger.py
M master/buildbot/test/fake/fakedata.py
M master/buildbot/test/fake/fakedb.py
M master/buildbot/test/fake/fakemaster.py
M master/buildbot/test/fake/fakemq.py
M master/buildbot/test/integration/test_upgrade.py
M master/buildbot/test/regressions/test_import_unicode_changes.py
M master/buildbot/test/regressions/test_oldpaths.py
M master/buildbot/test/regressions/test_shell_command_properties.py
R master/buildbot/test/regressions/test_sourcestamp_revision.py
M master/buildbot/test/regressions/test_unpickling.py
M master/buildbot/test/scenarios/base.py
M master/buildbot/test/unit/test_changes_changes.py
M master/buildbot/test/unit/test_changes_hgpoller.py
M master/buildbot/test/unit/test_data_builders.py
M master/buildbot/test/unit/test_data_buildsets.py
M master/buildbot/test/unit/test_data_changes.py
M master/buildbot/test/unit/test_data_connector.py
M master/buildbot/test/unit/test_data_masters.py
A master/buildbot/test/unit/test_data_sourcestamps.py
M master/buildbot/test/unit/test_db_base.py
M master/buildbot/test/unit/test_db_builders.py
M master/buildbot/test/unit/test_db_buildrequests.py
M master/buildbot/test/unit/test_db_builds.py
M master/buildbot/test/unit/test_db_buildsets.py
M master/buildbot/test/unit/test_db_changes.py
M master/buildbot/test/unit/test_db_masters.py
A master/buildbot/test/unit/test_db_migrate_versions_026_sourcestamps_refactor.py
M master/buildbot/test/unit/test_db_schedulers.py
M master/buildbot/test/unit/test_db_sourcestamps.py
R master/buildbot/test/unit/test_db_sourcestampsets.py
M master/buildbot/test/unit/test_master.py
M master/buildbot/test/unit/test_process_builder.py
M master/buildbot/test/unit/test_process_buildrequest.py
M master/buildbot/test/unit/test_process_users_manual.py
M master/buildbot/test/unit/test_process_users_users.py
M master/buildbot/test/unit/test_schedulers_base.py
M master/buildbot/test/unit/test_schedulers_dependent.py
M master/buildbot/test/unit/test_schedulers_forcesched.py
M master/buildbot/test/unit/test_schedulers_timed_NightlyTriggerable.py
M master/buildbot/test/unit/test_schedulers_triggerable.py
M master/buildbot/test/unit/test_schedulers_trysched.py
R master/buildbot/test/unit/test_sourcestamp.py
M master/buildbot/test/unit/test_status_build.py
M master/buildbot/test/unit/test_status_client.py
M master/buildbot/test/unit/test_status_logfile.py
M master/buildbot/test/unit/test_status_mail.py
M master/buildbot/test/unit/test_status_master.py
M master/buildbot/test/unit/test_steps_trigger.py
A master/buildbot/test/unit/test_test_util_validation.py
R master/buildbot/test/unit/test_test_util_verifier.py
A master/buildbot/test/unit/test_util_pickle.py
M master/buildbot/test/util/change_import.py
M master/buildbot/test/util/connector_component.py
M master/buildbot/test/util/scheduler.py
R master/buildbot/test/util/types/__init__.py
R master/buildbot/test/util/types/builders.py
R master/buildbot/test/util/types/buildsets.py
R master/buildbot/test/util/types/changes.py
R master/buildbot/test/util/types/masters.py
R master/buildbot/test/util/types/schedulers.py
A master/buildbot/test/util/validation.py
R master/buildbot/test/util/verifier.py
A master/buildbot/util/pickle.py
M master/contrib/fix_changes_pickle_encoding.py
M master/docs/developer/data.rst
M master/docs/developer/db.rst
M master/docs/developer/rtype-buildset.rst
M master/docs/developer/rtype-change.rst
A master/docs/developer/rtype-sourcestamp.rst
M master/docs/developer/tests.rst
M master/docs/developer/utils.rst
M master/docs/manual/cfg-builders.rst
M master/docs/manual/cmdline.rst
M master/docs/manual/customization.rst
M master/docs/relnotes/index.rst
Log Message:
-----------
Merge branch '9/sourcestamps' into nine
Conflicts:
README.md
master/buildbot/db/sourcestampsets.py
Commit: 94aa366497ad8fba5a3c95646cf68d2bc93ecc60
https://github.com/buildbot/buildbot/commit/94aa366497ad8fba5a3c95646cf68d2bc93ecc60
Author: Dustin J. Mitchell <dustin at mozilla.com>
Date: 2013-01-12 (Sat, 12 Jan 2013)
Changed paths:
M master/docs/developer/utils.rst
Log Message:
-----------
fix doc typo
Compare: https://github.com/buildbot/buildbot/compare/1bfd31f8a29f...94aa366497ad
More information about the Commits
mailing list