Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge to master for v0.5.7 #133

Merged
merged 12 commits into from
Jul 14, 2024
2 changes: 1 addition & 1 deletion .github/workflows/build-qt-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ jobs:
- name: Copy docs into actual build
run: Copy-Item -Path "${{ env.qt_doc_build_dir }}/doc" -Destination "${{ env.qt_doc_install_dir }}/doc" -Recurse
- name: Upload Qt build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ${{ env.qt_build_artifact_name }}
path: ${{ env.qt_install_dir }}
Expand Down
61 changes: 19 additions & 42 deletions .github/workflows/build-qx-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,33 +22,17 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-20.04, ubuntu-22.04]
compiler: [gcc, clang]
lib_linkage: [shared, static]
include:
- os: ubuntu-20.04
compiler: gcc
c_comp: gcc-10
cxx_comp: g++-10
qt_comp: clang12
- os: ubuntu-20.04
compiler: clang
c_comp: clang-12
cxx_comp: clang++-12
qt_comp: clang12
- os: ubuntu-22.04
compiler: gcc
c_comp: gcc-12
cxx_comp: g++-12
qt_comp: clang14
- os: ubuntu-22.04
compiler: clang
c_comp: clang-14
cxx_comp: clang++-14
qt_comp: clang14
- lib_linkage: shared
cmake_bsl: ON
- lib_linkage: static
cmake_bsl: OFF
compiler: [{c: gcc-10, cxx: g++-10, qt: clang12}, {c: gcc-12, cxx: g++-12, qt: clang14}, {c: clang-12, cxx: clang++-12, qt: clang12}, {c: clang-14, cxx: clang++-14, qt: clang14}]
linkage: [{type: shared, cmake_bsl: ON}, {type: static, cmake_bsl: OFF}]
exclude:
- os: ubuntu-20.04
compiler: {c: gcc-12, cxx: g++-12, qt: clang14}
- os: ubuntu-20.04
compiler: {c: clang-14, cxx: clang++-14, qt: clang14}
- os: ubuntu-22.04
compiler: {c: gcc-10, cxx: g++-10, qt: clang12}
- os: ubuntu-22.04
compiler: {c: clang-12, cxx: clang++-12, qt: clang12}
runs-on: ${{ matrix.os }}
env:
cmake_gen: Ninja Multi-Config
Expand All @@ -66,27 +50,20 @@ jobs:
with:
version: 6.5.1
os: linux
compiler: ${{ matrix.qt_comp }}
linkage: ${{ matrix.lib_linkage }}
compiler: ${{ matrix.compiler.qt }}
linkage: ${{ matrix.linkage.type }}
path: ${{ env.qt_install_dir }}
credentials: ${{ secrets.qt_ffynnon_cred }}
- name: Update package index
run: sudo apt-get update
- name: WORKAROUND FOR https://github.com/actions/runner-images/issues/8659
if: matrix.os == 'ubuntu-22.04'
run: |
echo "TEMPORARY WORKAROUND FOR GITHUB RUNNER BUG #8659\n\nRemoving GCC 13 as it breaks Clang14"
sudo rm -f /etc/apt/sources.list.d/ubuntu-toolchain-r-ubuntu-test-jammy.list
sudo apt-get update
sudo apt-get install -y --allow-downgrades libc6=2.35-0ubuntu3.4 libc6-dev=2.35-0ubuntu3.4 libstdc++6=12.3.0-1ubuntu1~22.04 libgcc-s1=12.3.0-1ubuntu1~22.04
- name: Install OpenGL lib
run: sudo apt-get install libglu1-mesa-dev
- name: Install XCB Related libs
run: sudo apt-get install libx11-xcb-dev libxkbcommon-dev libxkbcommon-x11-dev libxcb-*-dev
- name: Install Doxygen
uses: oblivioncth/actions/ubuntu/install-doxygen-from-sourceforge@dev
with:
version: 1.9.8
version: 1.10.0
- name: Install Graphviz
run: sudo apt-get install graphviz
- name: Install Ninja
Expand All @@ -97,15 +74,15 @@ jobs:
if: matrix.os == 'ubuntu-22.04'
run: sudo apt-get install libegl1-mesa-dev
- name: Checkout Qx
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: ${{ env.qx_src_suffix }}
fetch-depth: 0 # Required for verbose versioning to work correctly
- name: Build/Install Qx
working-directory: ${{ env.qx_src_dir }}
run: |
echo Configuring CMake...
"$qt_cmake" -G "$cmake_gen" -S "$qx_src_dir" -B "$qx_build_dir" -D BUILD_SHARED_LIBS="${{ matrix.cmake_bsl }}" -D QX_DOCS=ON -D QX_TESTS=ON -D CMAKE_CXX_COMPILER="${{ matrix.cxx_comp }}" -D CMAKE_C_COMPILER="${{ matrix.c_comp }}"
"$qt_cmake" -G "$cmake_gen" -S "$qx_src_dir" -B "$qx_build_dir" -D BUILD_SHARED_LIBS="${{ matrix.linkage.cmake_bsl }}" -D QX_DOCS=ON -D QX_TESTS=ON -D CMAKE_CXX_COMPILER="${{ matrix.compiler.cxx }}" -D CMAKE_C_COMPILER="${{ matrix.compiler.c }}"
echo Changing to build directory...
cd "$qx_build_dir"
echo Building Qx Release/Docs...
Expand All @@ -121,14 +98,14 @@ jobs:
id: get_artifact_name
run: |
cpack_name=$(find "${{ env.qx_package_path }}" -type f -name "*.zip")
artifact_name="$(basename "$cpack_name" .zip) [${{ matrix.cxx_comp }}]"
artifact_name="$(basename "$cpack_name" .zip) [${{ matrix.compiler.cxx }}]"
echo "current_artifact_name=$artifact_name" >> $GITHUB_ENV
- name: Set doc artifact name
id: set_doc_artifact_name
if: matrix.lib_linkage == 'static' && matrix.cxx_comp == 'clang++-14'
if: matrix.linkage.type == 'static' && matrix.compiler.cxx == 'clang++-14'
run: echo "doc_artifact_name=${{ env.current_artifact_name }}" >> $GITHUB_OUTPUT
- name: Upload Qx build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ${{ env.current_artifact_name }}
path: ${{ env.qx_install_path }}
Expand Down
17 changes: 6 additions & 11 deletions .github/workflows/build-qx-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,7 @@ jobs:
strategy:
fail-fast: false
matrix:
lib_linkage: [shared, static]
include:
- lib_linkage: shared
cmake_bsl: ON
- lib_linkage: static
cmake_bsl: OFF
linkage: [{type: shared, cmake_bsl: ON}, {type: static, cmake_bsl: OFF}]
runs-on: windows-latest
env:
vs_dir: C:/Program Files/Microsoft Visual Studio/2022/Enterprise
Expand All @@ -40,19 +35,19 @@ jobs:
version: 6.5.1
os: windows
compiler: msvc2022
linkage: ${{ matrix.lib_linkage }}
linkage: ${{ matrix.linkage.type }}
path: ${{ env.qt_install_dir }}
credentials: ${{ secrets.qt_ffynnon_cred }}
- name: Install Doxygen
uses: oblivioncth/actions/general/cache-and-install-doxygen-from-ffynnon@dev
with:
version: 1.9.8
version: 1.10.0
os: windows
credentials: ${{ secrets.qt_ffynnon_cred }}
- name: Install Graphviz
run: choco install graphviz
- name: Checkout PxCrypt
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: ${{ env.qx_src_suffix }}
fetch-depth: 0 # Required for verbose versioning to work correctly
Expand All @@ -63,7 +58,7 @@ jobs:
echo "Setup C++ Build Environment..."
CALL "${{ env.vs_dir }}\Common7\Tools\VsDevCmd.bat" -arch=amd64
echo "Configure CMake using Qt wrapper..."
CALL "${{ env.qt_cmake }}" -G "${{ env.cmake_gen }}" -S "${{ env.qx_src_dir}}" -B "${{ env.qx_build_dir }}" -D QX_DOCS=ON -D QX_TESTS=ON -D BUILD_SHARED_LIBS=${{ matrix.cmake_bsl }}
CALL "${{ env.qt_cmake }}" -G "${{ env.cmake_gen }}" -S "${{ env.qx_src_dir}}" -B "${{ env.qx_build_dir }}" -D QX_DOCS=ON -D QX_TESTS=ON -D BUILD_SHARED_LIBS=${{ matrix.linkage.cmake_bsl }}
echo "Changing to build directory..."
cd "%qx_build_dir%"
echo "Building Qx Relase/Docs ..."
Expand All @@ -80,7 +75,7 @@ jobs:
$artifact_name=$((Get-ChildItem -Path "${{ env.qx_package_path }}" -Filter *.zip)[0].BaseName)
echo "current_artifact_name=$artifact_name" >> $Env:GITHUB_ENV
- name: Upload Qx build artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ${{ env.current_artifact_name }}
path: ${{ env.qx_install_path }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/master-pull-request-merge-reaction.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download built doc Qx artifact
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: ${{ needs.build_qx_release_linux.outputs.doc_artifact_name }}
path: ${{ env.doc_artifact_path }}
- name: Setup pages
uses: actions/configure-pages@v3
uses: actions/configure-pages@v4
- name: Upload pages artifact
uses: actions/upload-pages-artifact@v1
with:
Expand All @@ -91,7 +91,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download built Qx artifacts
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
path: ${{ env.artifacts_path }}
- name: Zip up release artifacts
Expand Down
77 changes: 76 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,76 @@
*.user
# This file is used to ignore files which are generated
# ----------------------------------------------------------------------------

*~
*.autosave
*.a
*.core
*.moc
*.o
*.obj
*.orig
*.rej
*.so
*.so.*
*_pch.h.cpp
*_resource.rc
*.qm
.#*
*.*#
core
!core/
tags
.DS_Store
.directory
*.debug
Makefile*
*.prl
*.app
moc_*.cpp
ui_*.h
qrc_*.cpp
Thumbs.db
*.res
*.rc
/.qmake.cache
/.qmake.stash

# qtcreator generated files
*.pro.user*
*.txt.user*

# xemacs temporary files
*.flc

# Vim temporary files
.*.swp

# Visual Studio generated files
*.ib_pdb_index
*.idb
*.ilk
*.sln
*.suo
*.vcproj
*vcproj.*.*.user
*.ncb
*.sdf
*.opensdf
*.vcxproj
*vcxproj.*

# MinGW generated files
*.Debug
*.Release

# Python byte code
*.pyc

# Build within source
/build

# Binaries
# --------
*.dll
*.exe

4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ cmake_minimum_required(VERSION 3.23.0...3.26.0)
# avoided and only used for hotfixes. DON'T USE TRAILING
# ZEROS IN VERSIONS
project(Qx
VERSION 0.5.6.1
VERSION 0.5.7
LANGUAGES CXX
DESCRIPTION "Qt Extensions Library"
)

# Get helper scripts
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/FetchOBCMake.cmake)
fetch_ob_cmake("v0.3.4.1")
fetch_ob_cmake("v0.3.5")

# Initialize project according to standard rules
include(OB/Project)
Expand Down
36 changes: 22 additions & 14 deletions doc/res/theme/doxygen-awesome/doxygen-awesome.css
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ body {
body, table, div, p, dl, #nav-tree .label, .title,
.sm-dox a, .sm-dox a:hover, .sm-dox a:focus, #projectname,
.SelectItem, #MSearchField, .navpath li.navelem a,
.navpath li.navelem a:hover, p.reference, p.definition {
.navpath li.navelem a:hover, p.reference, p.definition, div.toc li, div.toc h3 {
font-family: var(--font-family);
}

Expand All @@ -334,6 +334,7 @@ p.reference, p.definition {
a:link, a:visited, a:hover, a:focus, a:active {
color: var(--primary-color) !important;
font-weight: 500;
background: none;
}

a.anchor {
Expand Down Expand Up @@ -806,6 +807,10 @@ html.dark-mode iframe#MSearchResults {
line-height: var(--tree-item-height);
}

#nav-tree .item > a:focus {
outline: none;
}

#nav-sync {
bottom: 12px;
right: 12px;
Expand Down Expand Up @@ -843,6 +848,7 @@ html.dark-mode iframe#MSearchResults {

#nav-tree .arrow {
opacity: var(--side-nav-arrow-opacity);
background: none;
}

.arrow {
Expand Down Expand Up @@ -1040,7 +1046,7 @@ blockquote::after {
blockquote p {
margin: var(--spacing-small) 0 var(--spacing-medium) 0;
}
.paramname {
.paramname, .paramname em {
font-weight: 600;
color: var(--primary-dark-color);
}
Expand Down Expand Up @@ -1090,7 +1096,7 @@ div.contents .toc {
border: 0;
border-left: 1px solid var(--separator-color);
border-radius: 0;
background-color: transparent;
background-color: var(--page-background-color);
box-shadow: none;
position: sticky;
top: var(--toc-sticky-top);
Expand Down Expand Up @@ -1982,14 +1988,16 @@ hr {
}

.contents hr {
box-shadow: 100px 0 0 var(--separator-color),
-100px 0 0 var(--separator-color),
500px 0 0 var(--separator-color),
-500px 0 0 var(--separator-color),
1500px 0 0 var(--separator-color),
-1500px 0 0 var(--separator-color),
2000px 0 0 var(--separator-color),
-2000px 0 0 var(--separator-color);
box-shadow: 100px 0 var(--separator-color),
-100px 0 var(--separator-color),
500px 0 var(--separator-color),
-500px 0 var(--separator-color),
900px 0 var(--separator-color),
-900px 0 var(--separator-color),
1400px 0 var(--separator-color),
-1400px 0 var(--separator-color),
1900px 0 var(--separator-color),
-1900px 0 var(--separator-color);
}

.contents img, .contents .center, .contents center, .contents div.image object {
Expand Down Expand Up @@ -2460,17 +2468,17 @@ h2:hover a.anchorlink, h1:hover a.anchorlink, h3:hover a.anchorlink, h4:hover a.
Optional tab feature
*/

.tabbed ul {
.tabbed > ul {
padding-inline-start: 0px;
margin: 0;
padding: var(--spacing-small) 0;
}

.tabbed li {
.tabbed > ul > li {
display: none;
}

.tabbed li.selected {
.tabbed > ul > li.selected {
display: block;
}

Expand Down
Loading
Loading