• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pantsbuild / pants / 9412
0%
main: 93%

Build:
Build:
LAST BUILD BRANCH: tdyas/goodbye-brfs
DEFAULT BRANCH: main
Ran 11 Mar 2016 01:56AM UTC
Jobs 7
Files 0
Run time –
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
9412

push

travis-ci

peiyuwang
[engine] Move storage out of scheduler to engine

`Storage` is part of the execution so it belongs to `Engine`. In `Scheduler` now it sees only `subject_key`s and `state_key`s (Except for one special case: Noop introduced for cyclic deps). Translations (both from key to subjects/states and the other way around) happen during `step` call.

This review

* Move `Storage` out of `Scheduler` into `Engine`, and rename from `subjects` to `storage`, since it also stores `State`s.
* Add serializable's `type` to `Key`, this allows 1) validate deserialized object matches its retrieval key's type 2) scheduler needs `State`'s type, this comes in handy
* Move subject_key to subject look up from scheduler to `Step.__call__`
* Add state_key to state look up to `Step.__call__`
* Add state to state_key conversion also in `Step.__call__`
* Change `StepResult.state` to `StepResult.(state_key|dependencies)`, just the information needed by scheduler, given type is encoded in the key

Encounted two pickling errors:

* Need to define `__getstate__` and `__setstate__` sicne we defined `__slot__`
* ConflictingProducersError not pickable due to python bug (`TypeError: ('__init__() takes exactly 4 arguments (2 given)'`)

Testing Done:
https://travis-ci.org/peiyuwang/pants/builds/114984044 passed
https://travis-ci.org/peiyuwang/pants/builds/115212183 passed

Bugs closed: 2870

Reviewed at https://rbcommons.com/s/twitter/r/3554/
Jobs
ID Job ID Ran Files Coverage
1 9412.1 (CI_FLAGS="-cjlpn 'Various pants self checks'") 11 Mar 2016 01:56AM UTC 0
Travis Job 9412.1
4 9412.4 (CI_FLAGS="-fkmsrcjlpa 'Python contrib tests'") 11 Mar 2016 02:12AM UTC 0
Travis Job 9412.4
5 9412.5 (CI_FLAGS="-fkmsrjlpn -i 0/6 'Python integration tests for pants - shard 1'") 11 Mar 2016 02:02AM UTC 0
Travis Job 9412.5
6 9412.6 (CI_FLAGS="-fkmsrjlpn -i 1/6 'Python integration tests for pants - shard 2'") 11 Mar 2016 02:09AM UTC 0
Travis Job 9412.6
7 9412.7 (CI_FLAGS="-fkmsrjlpn -i 2/6 'Python integration tests for pants - shard 3'") 11 Mar 2016 02:06AM UTC 0
Travis Job 9412.7
8 9412.8 (CI_FLAGS="-fkmsrjlpn -i 3/6 'Python integration tests for pants - shard 4'") 11 Mar 2016 02:26AM UTC 0
Travis Job 9412.8
10 9412.10 (CI_FLAGS="-fkmsrjlpn -i 5/6 'Python integration tests for pants - shard 6'") 11 Mar 2016 02:17AM UTC 0
Travis Job 9412.10
Source Files on build 9412
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #9412
  • 396e8df7 on github
  • Prev Build on master (#9409)
  • Next Build on master (#9422)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc