-
d5847462
by James Ennis
at 2019-01-25T16:35:21Z
_profile.py: Added a new profiling topic, scheduler
profile_start() and profile_end() calls have been incorporated into
Scheduler.run()
-
56a3954c
by James Ennis
at 2019-01-25T16:35:21Z
_profile.py: Added a new profiling topic, load-selection
profile_start() and profile_end() calls have been added to
Stream.load_selection()
-
116da6d7
by James Ennis
at 2019-01-25T16:35:21Z
_profile.py: Update copyright statement
-
137d31cd
by James Ennis
at 2019-01-25T17:59:22Z
Merge branch 'jennis/add_new_profile_topic' into 'master'
Add new 'scheduler' and 'load-selection' profiling topics
See merge request BuildStream/buildstream!1088
-
22b3a0c1
by Tristan Van Berkom
at 2019-01-25T18:35:36Z
_artifactcache.py: Don't require the quota to be available on disk.
Instead only rely on the headroom to be enough to protect against
out of space conditions. The headroom can become configurable as
a separate step is required.
The changes to achieve this are:
* Rename ArtifactCache.has_quota_exceeded() to ArtifactCache.full().
* ArtifactCache.full() now also reports True if the available
space on the artifact cache volume is smaller than the headroom.
This ensures jobs get triggered to cleanup the cache when
reaching the end of the disk.
* When loading the artifact quota, it is now only an error if
the quota exceeds the overall disk space, not if it does not
fit in the available space.
It is still a warning if the quota does not fit in the
available space on the artifact cache volume.
* Updated scheduler.py and buildqueue.py for the API rename
* tests: Updated the artifactcache/expiry.py test for its
expectations in this regard.
Added a new test to test an error when quota was specified to
exceed total disk space, and adjusted the existing tests to
expect a warning when the quota does not fit in the available
space.
This fixes issue #733 and #869.
-
27ca6cc7
by Tristan Van Berkom
at 2019-01-25T21:18:15Z
Merge branch 'tristan/cache-quota-max-only' into 'master'
_artifactcache.py: Don't require the quota to be available on disk.
Closes #869 and #733
See merge request BuildStream/buildstream!1106
-
89ba2abe
by Chandan Singh
at 2019-01-25T23:50:49Z
tox.ini: Add environment to update man pages
Previously, one had to manually install `click-man` package, and
remember to run the correct command. Now, we can simply run `tox -e man`
to update the man pages.
-
d7438688
by Chandan Singh
at 2019-01-25T23:50:49Z
man: Refresh man pages
Notable changes:
* New `source` and `artifact` command groups
* Man pages corresponding to obsolete commands, that were marked as
hidden in Click, have now been removed.
Fixes #881.
-
4edbbd27
by Chandan Singh
at 2019-01-25T23:50:49Z
setup.py, CONTRIBUTING.rst: Recommend using tox to generate man pages
Simplify our docs, by requesting users to run `tox -e man` to update man
pages, instead of manually installing `click-man` and running the
command manually.
-
a3e7aee8
by Chandan Singh
at 2019-01-25T23:50:49Z
setup.py: Do not error out when man directory is empty/missing
If the `man` directory is empty, then it won't be copied in the source
distribution, and `list_man_pages()` will throw an exception when trying
to list files in a non-existent directory. This prevents us from
installing the BuildStream package when the man pages are not there.
The most common use-case for this is when we want to re-generate the man
pages but want to install the package before re-generating them.
-
222753ac
by Tristan Van Berkom
at 2019-01-26T05:10:36Z
Merge branch 'chandan/toxic-man' into 'master'
Generate man pages using tox & update them
Closes #880 and #881
See merge request BuildStream/buildstream!1107
-
5df4105a
by Angelos Evripiotis
at 2019-01-28T10:13:40Z
news: fix 'osbolete' spelling
-
9c981eff
by Angelos Evripiotis
at 2019-01-28T10:17:57Z
Fixup refs to 'bst track'
Now that 'bst track' is obsolete, change guidance to refer to the
replacement 'bst source track' instead.
-
bef80291
by Angelos Evripiotis
at 2019-01-28T10:19:17Z
Fixup refs to 'bst fetch'
Now that 'bst fetch' is obsolete, change guidance to refer to the
replacement 'bst source fetch' instead.
-
564cb245
by Angelos Evripiotis
at 2019-01-28T11:36:16Z
Merge branch 'aevri/bst_track_guidance' into 'master'
Fixup refs to 'bst track' and 'bst fetch'
See merge request BuildStream/buildstream!1086
-
a3e2cdd2
by Tom Pollard
at 2019-01-28T12:14:40Z
_stream.py: Add use_artifact_config opt arg for load_selection()
use_artifact_config added as an optional default arg, allowing
for loading of given elements artifact remote config.
-
805baf7d
by Tom Pollard
at 2019-01-28T12:14:40Z
Download buildtrees on demand for bst shell --use-buildtree
Provide bst shell --use-buildtree the ability to attempt to
acquire missing buildtrees, given respective option, user
pull-buildtree context and remote availability.
_frontend/cli.py: Refactor logic for determining --use-buildtree
option with given opportunity to attempt pulling a non-local
buildtree. Element loaded with artifact_config to allow remote
querying.
_stream.py: With given user option and element state, construct
PullQueue to fetch remote buildtree. Continue or Error without
buildtree if cannot be attained.
tests/integration/build-tree.py: Update to support new usecases
-
38356932
by Tom Pollard
at 2019-01-28T13:44:37Z
Merge branch 'tpollard/829' into 'master'
Download buildtrees on demand for bst shell --use-buildtree
Closes #829
See merge request BuildStream/buildstream!1050
-
3590ca8c
by Abderrahim Kitouni
at 2019-01-28T14:59:19Z
requirements/requirements.in: require protobuf >= 3.6
This is needed since 0f2bc3754
-
39b952dc
by Abderrahim Kitouni
at 2019-01-28T15:19:04Z
requirements/requirements.in: require Click >= 7.0
This is needed since 629a6e524, and was lost in the conversion to requirements.in
-
80b36d0c
by Javier Jardón
at 2019-01-28T17:54:52Z
Merge branch 'abderrahim/protobuf-version' into 'master'
requirements/requirements.in: update minimum versions
Closes #884
See merge request BuildStream/buildstream!1114
-
a1ab48da
by Valentin David
at 2019-01-28T21:30:26Z
Fix crash when spawned job completes very fast
Job can complete before we return from `Job.span()` to
`Scheduler._spawn_job()`, so that `_active_jobs` would not yet contain
the job.
This would print a stack on the console and try to run a second time
the job which can have unexpected effects.
In order to reproduce the issue, in
`buildstream/_scheduler/jobs/job.py`, in `Job.spawn`,
add a call to `time.sleep()` right before call to
`asyncio.get_child_watcher()`.
This fixes issue #857.
-
2fcb4491
by Jürg Billeter
at 2019-01-28T22:36:22Z
Merge branch 'valentindavid/crash_in_scheduler_857' into 'master'
Fix crash when spawned job completes very fast
Closes #857
See merge request BuildStream/buildstream!1095
-
1c05a092
by Valentin David
at 2019-01-29T05:58:17Z
Fix type of error codes in CAS server
Fixes #882.
-
785da59c
by Jürg Billeter
at 2019-01-29T06:49:10Z
Merge branch 'valentindavid/wrong_type_in_status_code' into 'master'
Fix type of error codes in CAS server
Closes #882
See merge request BuildStream/buildstream!1099
-
ddef91ea
by Valentin David
at 2019-01-29T07:23:35Z
Make sure testing cache directory exists
Fixes #873
-
6a4c8611
by Jürg Billeter
at 2019-01-29T08:18:45Z
Merge branch 'valentindavid/make_cache_dir' into 'master'
Make sure testing cache directory exists
Closes #873
See merge request BuildStream/buildstream!1092
-
86c8e414
by Angelos Evripiotis
at 2019-01-29T10:39:29Z
BREAK:remove unconditional 'are you sure?' prompts
This is a breaking change, as it affects behaviour that people might be
relying on. An entry has been added to NEWS.
As proposed on the mailing list, this change removes the unconditional
prompts on:
o: bst workspace reset
o: bst workspace close --remove-dir
If interactive, these commands would always interrupt you with a prompt
like this:
This will remove all your changes, are you sure?
This seems like it may just save someone's work some time. It may also
condition folks to hit 'y' quickly without thinking.
This change also makes the non-interactive behaviour consistent with the
interactive behaviour in the default case. There is also the case of the
prompt configured by 'really-workspace-close-project-inaccessible',
which may be tackled in later work.
This change also removes the new config options to suppress those
prompts, and their associated news entry.
The relevant bit of the mailing list conversation is here:
https://mail.gnome.org/archives/buildstream-list/2018-December/msg00106.html
The issue to make interactive and non-interactive behaviour consistent
is here:
https://gitlab.com/BuildStream/buildstream/issues/744
-
aae35e13
by Angelos Evripiotis
at 2019-01-29T12:08:07Z
Merge branch 'aevri/are_you_sure' into 'master'
BREAK:remove unconditional 'are you sure?' prompts
See merge request BuildStream/buildstream!1061
-
03111d39
by Dor Askayo
at 2019-01-30T10:35:06Z
filter.py: don't recurse when staging dependencies
Also bump the element's version so cached artifacts would be
invalidated.
Fixes #883
-
7256bb0c
by James Ennis
at 2019-01-30T11:34:04Z
Merge branch 'doraskayo/filter-indirect-deps-fix' into 'master'
filter.py: don't recurse when staging dependencies
Closes #883
See merge request BuildStream/buildstream!1110
-
b4a160b5
by James Ennis
at 2019-01-30T12:02:48Z
element.py: Warn when we cannot find an explicit split domain
-
77a8c918
by James Ennis
at 2019-01-30T12:02:54Z
types.py: Add DOMAIN_NOT_FOUND core warning
Warning to be emitted when an explicitly defined split domain is not
found in the list of known, available domains.