Skip to content
Release 2017.14

This release is almost entirely bugfixes.  One notable
fix is a read-after-free when libcurl is finalizing that some
people have hit.

There are a number of improvements around the `${repo}/tmp` directory and the
per-transaction staging directory in preparation for adding locking in a future
release. This release should already help avoid several failures when doing
concurrent commits; the aim of the locking work will support concurrent prunes
and commits.

I'm using [a new script](https://gist.github.com/cgwalters/3e6ae7bc435185456c3d5700031b56f6)
to generate the shortlog with PR numbers included below:

Thanks to all contributors!

```
Alexander Larsson (1 PR, 1 commit)
  rofiles-fuse: Fix utime() support (#1351)

Carlos Alberto Lopez Perez (1 PR, 1 commit)
  grub-generator: If OSTREE_BOOT_PARTITION is not set, default to /boot (#1326)

Colin Walters (15 PRs, 18 commits)
  build: Add -Werror=undef by default, fix fallout (#1320)
  lib/pull: Avoid error if current with --require-static-deltas (#1323)
  build-sys: Post-release version bump (#1324)
  build: Work around -Wundef with older GLib (#1327)
  build: Also fix -Werror=undef for old libsoup (#1328)
  deltas: Don't try to rollsum/bsdiff .xz files (#1333)
  lib/traverse: Port to new style (#1338)
  bin: Port a few commands (diff,remote,static-delta) to new style (#1344)
  fetcher/curl: Stop using CURLOPT_LOW_SPEED_TIME/_LIMIT (#1349)
  lib/commit: Use direct repo writes if fsync is disabled (#1354)
  lib/repo: Add a new private API for bare content writes (#1355)
  tests/delta-crosscheck: Disable fsync (#1356)
  lib/repo: Add a DEVINO_CANONICAL commit modifier flag (#1357)
  Release 2017.14 (#1359)
  PR: #1352
    lib/repo: Verify txn stagedir existence after locking
    lib/commit: Move txn stagedir deletion/unlock into one place
    ci: Really show test-suite.log on travis
    tests: Run python tests with stdout unbuffered
    lib/commit: Minor refactoring of tmpdir cleanup code
    lib/commit: Reuse txn dir for tmpfiles

Dan Nicholson (6 PRs, 15 commits)
  tests: Don't symlink rofiles-fuse if it's disabled (#1325)
  bin/summary: Fix --raw option (#1336)
  PR: #1322
    lib/pull: Skip ostree_repo_resolve_keyring_for_collection for bindings
    lib/core: Fix documentation comment in ostree_validate_collection_id
    build: Define OSTREE_ENABLE_EXPERIMENTAL_API for g-ir-scanner
    build: Ensure enumtypes.h is built before enumtypes.c
  PR: #1337
    Revert "lib/pull: Skip ostree_repo_resolve_keyring_for_collection for bindings"
    lib: Include OstreeRemote and OstreeCollectionRef in GIR
    lib/remote: Export ostree_remote_get_type symbol
  PR: #1346
    lib/repo: Don't delete new tmpdir if it can't be locked
    lib/repo: Handle race with existing tmpdir being deleted
    lib/repo: Restore tmpdir reusing out parameter
    lib/repo: Add debug messages when allocating tmpdir
  PR: #1352
    lib/repo: Verify txn stagedir existence after locking
    lib/commit: Move txn stagedir deletion/unlock into one place
    ci: Really show test-suite.log on travis
    tests: Run python tests with stdout unbuffered
    lib/commit: Minor refactoring of tmpdir cleanup code
    lib/commit: Reuse txn dir for tmpfiles

Dusty Mabe (1 PR, 1 commit)
  add back helpful --allow-downgrade err message (#1348)

Joaquim Rocha (1 PR, 1 commit)
  lib/remote: Add a method to return the URL (#1353)

Jonathan Lebon (1 PR, 2 commits)
  PR: #1350
    ci: Make sure we save gtdr test results on failures
    papr: Bump primary to f27

Kalev Lember (1 PR, 1 commit)
  fetcher/curl: Fix invalid memory access in finalize() (#1332)

Philip Withnall (3 PRs, 5 commits)
  build: Add a TODO comment about improving glib-mkenums usage in future (#1330)
  PR: #1335
    lib/repo: Add gtk-doc comment to OstreeRepoCommitState
    lib/repo: Add OSTREE_REPO_COMMIT_STATE_NORMAL to represent most commits
  PR: #1341
    lib/repo: Fix a memory leak of options in ostree_repo_create()
    lib/repo: Add (transfer) annotations to various GHashTable arguments

Will Thompson (1 PR, 1 commit)
  build: fix "executible" typo (#1345)
```

Git-EVTag-v0-SHA512: 006947e52f45c4a2f7bb11549b666f26727359ab9bb1ec9541ed516b74ec8430356586bfde1b618ac172901ea49227539ac3f80d1efa01ef927d5d89f0b48d85