mirror of
https://github.com/ArthurSonzogni/FTXUI.git
synced 2025-12-16 01:48:56 +08:00
Compare commits
3 Commits
f917f7bcc8
...
v6.1.9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5cfed50702 | ||
|
|
b307a175ed | ||
|
|
4604adb502 |
5
.bazelrc
5
.bazelrc
@@ -1,2 +1,7 @@
|
|||||||
build --features=layering_check
|
build --features=layering_check
|
||||||
build --enable_bzlmod
|
build --enable_bzlmod
|
||||||
|
|
||||||
|
build --enable_platform_specific_config
|
||||||
|
build:linux --cxxopt=-std=c++20
|
||||||
|
build:macos --cxxopt=-std=c++20
|
||||||
|
build:windows --cxxopt=-std:c++20
|
||||||
|
|||||||
@@ -1,26 +1,36 @@
|
|||||||
matrix:
|
matrix:
|
||||||
# Note that gcc 9 and earlier aren't supported due to using --std=c++2a
|
bazel:
|
||||||
# instead of --std=c++20
|
- 7.x
|
||||||
platform:
|
- 8.x
|
||||||
|
- rolling
|
||||||
|
unix_platform:
|
||||||
- debian11
|
- debian11
|
||||||
- ubuntu2204
|
- ubuntu2204
|
||||||
- macos
|
- macos
|
||||||
- macos-arm64
|
- macos_arm64
|
||||||
|
win_platform:
|
||||||
- windows
|
- windows
|
||||||
bazel:
|
|
||||||
#- 6.x -> Build fails with bazel 6.x
|
|
||||||
- 7.x
|
|
||||||
- 8.x
|
|
||||||
tasks:
|
tasks:
|
||||||
verify_targets:
|
|
||||||
name: Build and test.
|
unix_test:
|
||||||
platform: ${{ platform }}
|
name: Verify build targets on Unix
|
||||||
|
platform: ${{ unix_platform }}
|
||||||
bazel: ${{ bazel }}
|
bazel: ${{ bazel }}
|
||||||
|
build_flags:
|
||||||
|
- --cxxopt=-std=c++20
|
||||||
build_targets:
|
build_targets:
|
||||||
- '@ftxui//:ftxui'
|
|
||||||
- '@ftxui//:screen'
|
|
||||||
- '@ftxui//:dom'
|
- '@ftxui//:dom'
|
||||||
- '@ftxui//:component'
|
- '@ftxui//:component'
|
||||||
test_targets:
|
- '@ftxui//:screen'
|
||||||
- '@ftxui//:tests'
|
|
||||||
|
|
||||||
|
windows_test:
|
||||||
|
name: Verify build targets
|
||||||
|
platform: ${{ win_platform }}
|
||||||
|
bazel: ${{ bazel }}
|
||||||
|
build_flags:
|
||||||
|
- --cxxopt=/std:c++20
|
||||||
|
build_targets:
|
||||||
|
- '@ftxui//:dom'
|
||||||
|
- '@ftxui//:component'
|
||||||
|
- '@ftxui//:screen'
|
||||||
|
|||||||
@@ -12,7 +12,6 @@
|
|||||||
load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_test")
|
load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_test")
|
||||||
load(":bazel/ftxui.bzl", "ftxui_cc_library")
|
load(":bazel/ftxui.bzl", "ftxui_cc_library")
|
||||||
load(":bazel/ftxui.bzl", "generate_examples")
|
load(":bazel/ftxui.bzl", "generate_examples")
|
||||||
load(":bazel/ftxui.bzl", "cpp20")
|
|
||||||
load(":bazel/ftxui.bzl", "windows_copts")
|
load(":bazel/ftxui.bzl", "windows_copts")
|
||||||
load(":bazel/ftxui.bzl", "pthread_linkopts")
|
load(":bazel/ftxui.bzl", "pthread_linkopts")
|
||||||
|
|
||||||
@@ -258,7 +257,7 @@ cc_test(
|
|||||||
"include",
|
"include",
|
||||||
"src",
|
"src",
|
||||||
],
|
],
|
||||||
copts = cpp20() + windows_copts(),
|
copts = windows_copts(),
|
||||||
deps = [
|
deps = [
|
||||||
":screen",
|
":screen",
|
||||||
":dom",
|
":dom",
|
||||||
|
|||||||
20
CHANGELOG.md
20
CHANGELOG.md
@@ -1,9 +1,20 @@
|
|||||||
Changelog
|
Changelog
|
||||||
=========
|
=========
|
||||||
|
|
||||||
Future release
|
6.1.9 (2025-05-07)
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
### Build
|
||||||
|
If all goes well (pending), ftxui should appear in the Bazel central repository.
|
||||||
|
It can be imported into your project using the following lines:
|
||||||
|
|
||||||
|
**MODULE.bazel**
|
||||||
|
```bazel
|
||||||
|
bazel_dep(name = "ftxui", version = "6.1.9")
|
||||||
|
```
|
||||||
|
|
||||||
|
Thanks @robinlinden and @kcc for the reviews.
|
||||||
|
|
||||||
### dom
|
### dom
|
||||||
- Bugfix: Restore the `dbox` behavior from ftxui 5.0.0. To apply bgcolor
|
- Bugfix: Restore the `dbox` behavior from ftxui 5.0.0. To apply bgcolor
|
||||||
blending between the two layers, a new `dboxBlend` will be added.
|
blending between the two layers, a new `dboxBlend` will be added.
|
||||||
@@ -14,13 +25,6 @@ Future release
|
|||||||
### Build
|
### Build
|
||||||
- Feature: Support `bazel` build system. See #1032.
|
- Feature: Support `bazel` build system. See #1032.
|
||||||
Proposed by Kostya Serebryany @kcc
|
Proposed by Kostya Serebryany @kcc
|
||||||
If all goes well (pending), it should appear in the Bazel central repository.
|
|
||||||
It can be imported into your project using the following lines:
|
|
||||||
|
|
||||||
**MODULE.bazel**
|
|
||||||
```bazel
|
|
||||||
bazel_dep(name = "ftxui", version = "6.1.8")
|
|
||||||
```
|
|
||||||
|
|
||||||
**BUILD.bazel**
|
**BUILD.bazel**
|
||||||
```bazel
|
```bazel
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.12)
|
|||||||
|
|
||||||
project(ftxui
|
project(ftxui
|
||||||
LANGUAGES CXX
|
LANGUAGES CXX
|
||||||
VERSION 6.1.8
|
VERSION 6.1.9
|
||||||
DESCRIPTION "C++ Functional Terminal User Interface."
|
DESCRIPTION "C++ Functional Terminal User Interface."
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# FTXUI module.
|
# FTXUI module.
|
||||||
module(
|
module(
|
||||||
name = "ftxui",
|
name = "ftxui",
|
||||||
version = "6.1.8",
|
version = "6.1.9",
|
||||||
compatibility_level = 6,
|
compatibility_level = 6,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -348,6 +348,7 @@ Feel free to add your projects here:
|
|||||||
- [terminal-rain](https://github.com/Oakamoore/terminal-rain)
|
- [terminal-rain](https://github.com/Oakamoore/terminal-rain)
|
||||||
- [keywords](https://github.com/Oakamoore/keywords) ([Play web version :heart:](https://oakamoore.itch.io/keywords))
|
- [keywords](https://github.com/Oakamoore/keywords) ([Play web version :heart:](https://oakamoore.itch.io/keywords))
|
||||||
- [FTB - tertminal file browser](https://github.com/Cyxuan0311/FTB)
|
- [FTB - tertminal file browser](https://github.com/Cyxuan0311/FTB)
|
||||||
|
- [SHOOT!](https://github.com/ShingZhanho/ENGG1340-Project-25Spring)
|
||||||
|
|
||||||
### [cpp-best-practices/game_jam](https://github.com/cpp-best-practices/game_jam)
|
### [cpp-best-practices/game_jam](https://github.com/cpp-best-practices/game_jam)
|
||||||
|
|
||||||
@@ -372,7 +373,7 @@ include(FetchContent)
|
|||||||
|
|
||||||
FetchContent_Declare(ftxui
|
FetchContent_Declare(ftxui
|
||||||
GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui
|
GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui
|
||||||
GIT_TAG v6.1.8
|
GIT_TAG v6.1.9
|
||||||
)
|
)
|
||||||
|
|
||||||
FetchContent_GetProperties(ftxui)
|
FetchContent_GetProperties(ftxui)
|
||||||
|
|||||||
@@ -3,24 +3,6 @@
|
|||||||
load("@rules_cc//cc:defs.bzl", "cc_library")
|
load("@rules_cc//cc:defs.bzl", "cc_library")
|
||||||
load("@rules_cc//cc:defs.bzl", "cc_binary")
|
load("@rules_cc//cc:defs.bzl", "cc_binary")
|
||||||
|
|
||||||
def cpp17():
|
|
||||||
return select({
|
|
||||||
"@rules_cc//cc/compiler:msvc-cl": ["/std:c++17"],
|
|
||||||
"@rules_cc//cc/compiler:clang-cl": ["/std:c++17"],
|
|
||||||
"@rules_cc//cc/compiler:clang": ["-std=c++17"],
|
|
||||||
"@rules_cc//cc/compiler:gcc": ["-std=c++17"],
|
|
||||||
"//conditions:default": ["-std=c++17"],
|
|
||||||
})
|
|
||||||
|
|
||||||
def cpp20():
|
|
||||||
return select({
|
|
||||||
"@rules_cc//cc/compiler:msvc-cl": ["/std:c++20"],
|
|
||||||
"@rules_cc//cc/compiler:clang-cl": ["/std:c++20"],
|
|
||||||
"@rules_cc//cc/compiler:clang": ["-std=c++20"],
|
|
||||||
"@rules_cc//cc/compiler:gcc": ["-std=c++20"],
|
|
||||||
"//conditions:default": ["-std=c++20"],
|
|
||||||
})
|
|
||||||
|
|
||||||
# Microsoft terminal is a bit buggy ¯\_(ツ)_/¯ and MSVC uses bad defaults.
|
# Microsoft terminal is a bit buggy ¯\_(ツ)_/¯ and MSVC uses bad defaults.
|
||||||
def windows_copts():
|
def windows_copts():
|
||||||
MSVC_COPTS = [
|
MSVC_COPTS = [
|
||||||
@@ -90,7 +72,7 @@ def ftxui_cc_library(
|
|||||||
"include",
|
"include",
|
||||||
"src",
|
"src",
|
||||||
],
|
],
|
||||||
copts = cpp17() + windows_copts(),
|
copts = windows_copts(),
|
||||||
visibility = ["//visibility:public"],
|
visibility = ["//visibility:public"],
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -118,5 +100,5 @@ def generate_examples():
|
|||||||
":dom",
|
":dom",
|
||||||
":screen",
|
":screen",
|
||||||
],
|
],
|
||||||
copts = cpp20() + windows_copts(),
|
copts = windows_copts(),
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,14 +1,8 @@
|
|||||||
# This script tests the project with different versions of Bazel and compilers
|
# This script tests the project with different versions of Bazel and compilers
|
||||||
# locally. This avoids waiting on the CI to run the tests.
|
# locally. This avoids waiting on the CI to run the tests.
|
||||||
|
|
||||||
# Version
|
|
||||||
# -------
|
|
||||||
# - Version >= 7 are supported
|
|
||||||
# - Version <= 6 fail with the error:
|
|
||||||
# Error:
|
|
||||||
# external/googletest~1.14.0.bcr.1/googletest/include/gtest/internal/gtest-port.h:279:2:
|
|
||||||
# error: #error C++ versions less than C++14 are not supported.
|
|
||||||
for ver in \
|
for ver in \
|
||||||
|
"6.0.0" \
|
||||||
"7.0.0" \
|
"7.0.0" \
|
||||||
"8.0.0"
|
"8.0.0"
|
||||||
do
|
do
|
||||||
|
|||||||
Reference in New Issue
Block a user