Skip to content

Commit

Permalink
Merge branch 'release/3.0.0'
Browse files Browse the repository at this point in the history
Release: com.io7m.jwheatsheaf 3.0.0

A big thanks to @DaveJarvis for suggestions, bug reports, and some
code contributions!

Change: Add the ability to specify custom strings (Ticket: #7)
Change: Add the ability to confirm file selections (Ticket: #17)
Change: Allow for including ".." in directory listings (Ticket: #23)
Change: Improve "select directly" dialog behaviour (Ticket: #29)
Change: Fix the size formatter (Ticket: #30)
Change: Use the default filesystem by default (Ticket: #21)
Change: Add support for glob-based filters (Ticket: #19)
Change: Improve filename field behaviour (Ticket: #28)
Change: Add an optional home directory button (Ticket: #12)
Change: Enable sorting of directory items (Ticket: #22)
Change: Allow for setting a default file filter (Ticket: #9)
Change: Allow the escape key to close file choosers (Ticket: #14)
Change: Allow for specifying an initial filename in choosers (Ticket: #15)
Change: Allow for specifying custom dialog titles (Ticket: #8)
Change: Make the default filters part of the public API (Ticket: #10)
  • Loading branch information
io7m committed May 18, 2021
2 parents 27062f2 + 2ad2fd6 commit 9f64a0d
Show file tree
Hide file tree
Showing 99 changed files with 5,340 additions and 525 deletions.
31 changes: 31 additions & 0 deletions .github/workflows/main-openjdk_current-linux.yml
@@ -0,0 +1,31 @@
name: main-openjdk_current-linux

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: JDK
uses: actions/setup-java@v1
with:
java-version: 16
- name: Build
run: ./.github/workflows/run-with-xvfb.sh mvn --errors clean verify site
- name: Upload video
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: test-video
path: test-suite.mkv
- name: Upload test logs
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: test-logs
path: ./com.io7m.jwheatsheaf.tests/target/surefire-reports
19 changes: 19 additions & 0 deletions .github/workflows/main-openjdk_current-windows.yml
@@ -0,0 +1,19 @@
name: main-openjdk_current-windows

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: JDK
uses: actions/setup-java@v1
with:
java-version: 16
- name: Build
run: mvn -DskipTests=true --errors clean verify site
35 changes: 35 additions & 0 deletions .github/workflows/main-openjdk_lts-linux.yml
@@ -0,0 +1,35 @@
name: main-openjdk_lts-linux

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: JDK
uses: actions/setup-java@v1
with:
java-version: 11
- name: Build
run: ./.github/workflows/run-with-xvfb.sh mvn --errors clean verify site
- name: Upload video
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: test-video
path: test-suite.mkv
- name: Upload test logs
uses: actions/upload-artifact@v2
if: ${{ always() }}
with:
name: test-logs
path: ./com.io7m.jwheatsheaf.tests/target/surefire-reports
- name: Coverage
uses: codecov/codecov-action@v1
with:
file: com.io7m.jwheatsheaf.tests/target/site/jacoco/jacoco.xml
67 changes: 67 additions & 0 deletions .github/workflows/run-with-xvfb.sh
@@ -0,0 +1,67 @@
#!/bin/bash -ex

exec > >(tee build.txt) 2>&1

#---------------------------------------------------------------------
# Install all of the various required packages.
#
# We use:
# xvfb to provide a virtual X server
# fluxbox to provide a bare-minimum window manager with click-to-focus
# ffmpeg to record the session
# feh to set a background
# xterm to display the build log in the video
#

sudo apt-get -y install xvfb fluxbox feh ffmpeg xterm

#---------------------------------------------------------------------
# Start Xvfb on a new display.
#

Xvfb :99 &
export DISPLAY=:99
sleep 1

#---------------------------------------------------------------------
# Start fluxbox on the X server.
#

fluxbox &
sleep 1

#---------------------------------------------------------------------
# Start an xterm that displays the build log.
#

xterm -geometry 200x40 -e tail -F build.txt &
sleep 1

#---------------------------------------------------------------------
# Set a desktop image.
#

feh --bg-tile .github/workflows/wallpaper.jpg
sleep 1

#---------------------------------------------------------------------
# Start recording the session.
#

ffmpeg -f x11grab -y -r 15 -video_size 1280x1024 -i :99 -vcodec libx264 test-suite.mkv &
FFMPEG_PID="$!"

#---------------------------------------------------------------------
# Execute the passed-in build command.
#

"$@"

#---------------------------------------------------------------------
# Wait a while, and then instruct ffmpeg to stop recording. This step
# is necessary because video files need to be processed when recording
# stops.
#

sleep 5
kill -INT "${FFMPEG_PID}"
Binary file added .github/workflows/wallpaper.jpg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/workflows/wallpaper.xcf
Binary file not shown.
25 changes: 0 additions & 25 deletions .travis.yml

This file was deleted.

93 changes: 86 additions & 7 deletions README-CHANGES.xml
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<c:changelog project="com.io7m.jwheatsheaf" xmlns:c="urn:com.io7m.changelog:4.0">
<c:releases>
<c:release date="2020-03-28T00:00:00+00:00" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.0">
<c:release date="2020-03-28T00:00:00+00:00" is-open="false" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.0">
<c:changes>
<c:change date="2020-03-28T00:00:00+00:00" summary="Initial public release"/>
</c:changes>
</c:release>
<c:release date="2020-03-28T00:00:00+00:00" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.1">
<c:release date="2020-03-28T00:00:00+00:00" is-open="false" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.1">
<c:changes>
<c:change date="2020-03-28T00:00:00+00:00" summary="Add missing package exports to module descriptors"/>
</c:changes>
</c:release>
<c:release date="2020-03-28T00:00:00+00:00" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.2">
<c:release date="2020-03-28T00:00:00+00:00" is-open="false" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.2">
<c:changes>
<c:change date="2020-03-28T00:00:00+00:00" summary="Ensure CSS stylesheets are passed to any dialogs opened by the chooser">
<c:tickets>
Expand All @@ -20,7 +20,7 @@
</c:change>
</c:changes>
</c:release>
<c:release date="2020-03-29T00:00:00+00:00" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.3">
<c:release date="2020-03-29T00:00:00+00:00" is-open="false" ticket-system="com.github.io7m.jwheatsheaf" version="1.0.3">
<c:changes>
<c:change date="2020-03-29T00:00:00+00:00" summary="Show the full paths of files/directories in tooltips">
<c:tickets>
Expand All @@ -29,14 +29,93 @@
</c:change>
</c:changes>
</c:release>
<c:release date="2020-04-04T00:00:00+00:00" ticket-system="com.github.io7m.jwheatsheaf" version="2.0.0">
<c:release date="2020-04-04T00:00:00+00:00" is-open="false" ticket-system="com.github.io7m.jwheatsheaf" version="2.0.0">
<c:changes>
<c:change compatible="false" date="2020-04-04T00:00:00+00:00" summary="Move implementation classes in the ui module into an internal non-exported package"/>
</c:changes>
</c:release>
<c:release date="2020-04-10T14:35:31+00:00" ticket-system="com.github.io7m.jwheatsheaf" version="2.0.1">
<c:release date="2020-04-10T00:00:00+00:00" is-open="false" ticket-system="com.github.io7m.jwheatsheaf" version="2.0.1">
<c:changes>
<c:change date="2020-04-10T14:35:31+00:00" summary="Enable CheckStyle to enforce code style"/>
<c:change date="2020-04-10T00:00:00+00:00" summary="Enable CheckStyle to enforce code style"/>
</c:changes>
</c:release>
<c:release date="2021-05-02T11:31:11+00:00" is-open="true" ticket-system="com.github.io7m.jwheatsheaf" version="3.0.0">
<c:changes>
<c:change date="2021-04-10T00:00:00+00:00" summary="Allow the escape key to close file choosers">
<c:tickets>
<c:ticket id="14"/>
</c:tickets>
</c:change>
<c:change date="2021-04-10T00:00:00+00:00" summary="Allow for specifying an initial filename in choosers">
<c:tickets>
<c:ticket id="15"/>
</c:tickets>
</c:change>
<c:change date="2021-04-10T00:00:00+00:00" summary="Allow for specifying custom dialog titles">
<c:tickets>
<c:ticket id="8"/>
</c:tickets>
</c:change>
<c:change date="2021-04-10T00:00:00+00:00" summary="Make the default filters part of the public API">
<c:tickets>
<c:ticket id="10"/>
</c:tickets>
</c:change>
<c:change date="2021-04-11T00:00:00+00:00" summary="Add an optional home directory button">
<c:tickets>
<c:ticket id="12"/>
</c:tickets>
</c:change>
<c:change date="2021-04-11T00:00:00+00:00" summary="Enable sorting of directory items">
<c:tickets>
<c:ticket id="22"/>
</c:tickets>
</c:change>
<c:change date="2021-04-11T00:00:00+00:00" summary="Allow for setting a default file filter">
<c:tickets>
<c:ticket id="9"/>
</c:tickets>
</c:change>
<c:change date="2021-04-29T00:00:00+00:00" summary="Add support for glob-based filters">
<c:tickets>
<c:ticket id="19"/>
</c:tickets>
</c:change>
<c:change date="2021-04-29T00:00:00+00:00" summary="Improve filename field behaviour">
<c:tickets>
<c:ticket id="28"/>
</c:tickets>
</c:change>
<c:change date="2021-05-01T00:00:00+00:00" summary="Allow for including &quot;..&quot; in directory listings">
<c:tickets>
<c:ticket id="23"/>
</c:tickets>
</c:change>
<c:change date="2021-05-01T00:00:00+00:00" summary="Improve &quot;select directly&quot; dialog behaviour">
<c:tickets>
<c:ticket id="29"/>
</c:tickets>
</c:change>
<c:change date="2021-05-01T00:00:00+00:00" summary="Fix the size formatter">
<c:tickets>
<c:ticket id="30"/>
</c:tickets>
</c:change>
<c:change date="2021-05-01T00:00:00+00:00" summary="Use the default filesystem by default">
<c:tickets>
<c:ticket id="21"/>
</c:tickets>
</c:change>
<c:change date="2021-05-02T00:00:00+00:00" summary="Add the ability to specify custom strings">
<c:tickets>
<c:ticket id="7"/>
</c:tickets>
</c:change>
<c:change date="2021-05-02T11:31:11+00:00" summary="Add the ability to confirm file selections">
<c:tickets>
<c:ticket id="17"/>
</c:tickets>
</c:change>
</c:changes>
</c:release>
</c:releases>
Expand Down

0 comments on commit 9f64a0d

Please sign in to comment.