Commit graph

34 commits

Author SHA1 Message Date
Vadim Zeitlin
35c35c235e Remove wxUSE_STL which is not really used any longer
wxString is always based on std::[w]string since 2c0c727f49 (Remove wx
own wxStringImpl implementation, 2022-11-16) and all containers use
standard containers by default too now -- and there is a separate
wxUSE_STD_CONTAINERS for this anyhow.

The only remaining use of wxUSE_STL was as the default value for
wxUSE_STD_STRING_CONV_IN_WXSTRING option, but it's not really needed
for this neither, and this option can just be set to 0 by default.

Also add wxUSE_CHAR_CONV_IN_WXSTRING which can now be set to 0 too to
disable all unwanted implicit conversions (even "safe" ones, to wide
strings, in addition to the unsafe ones to narrow strings that could be
already disabled with wxUSE_UNSAFE_WXSTRING_CONV) to allow people who
don't want to have any implicit conversions at all to do it.

Keep --enable-stl configure option for compatibility, but warn if it is
used to tell people that it is not needed any longer.
2023-04-15 17:22:09 +02:00
Scott Talbert
04326551fd CI: ignore CircleCI config files from all other CIs
Avoid spurious rebuilds when modifying CircleCI config files.

Closes #23405.
2023-04-04 15:28:34 +02:00
Vadim Zeitlin
8505c48a34 Cancel in progress builds of PRs when a new one starts
Add a snippet based on the example in

https://docs.github.com/en/actions/using-jobs/using-concurrency#example-only-cancel-in-progress-jobs-or-runs-for-the-current-workflow

to all CI workflows to cancel the currently running build when a new one
starts. This should ensure that we don't keep building the old version
of the PR after a new one has been pushed.
2023-02-21 14:58:57 +01:00
Artur Wieczorek
21ee9983a2 Remove reference to no longer existing tests
ClippingBoxTestCase::wxClientDC doesn't exist anymore.
2022-12-29 12:39:27 +01:00
PB
5c72c7af35 Do not trigger non-CMake CI builds with CMake-only changes
Closes #22934.
2022-11-08 18:19:37 +01:00
Vadim Zeitlin
c440fbce78 Disable use of host pkg-config in wxiOS CI build
Set PKG_CONFIG_LIBDIR=/dev/null explicitly to disable the use of the
host libraries when cross-compiling.
2022-10-25 21:38:27 +02:00
Vadim Zeitlin
2bdd648128 Remove unnecessary wxCONFIGURE_FLAGS environment variable
It was confusing to have both it and wxCONFIGURE_OPTIONS, so remove it
and just use its value as part of wxCONFIGURE_OPTIONS.

No real changes.
2022-10-25 20:50:24 +02:00
Vadim Zeitlin
fb4f0b590c Remove wxGTK1 port and GPE support
Remove the port files and references to it from the common headers and
elsewhere.

Also remove GPE (GNOME PDA Environment) support as libgpewidget is
unmaintained since 2006 or so and has never been really used.

Use __WXGTK__ to test for any version of wxGTK now. Still define
__WXGTK20__ for compatibility, but always define it now and don't test
for it in the library code.
2022-10-16 22:01:02 +02:00
Vadim Zeitlin
0ef1cdcc21 Remove support for wxMotif
This port hasn't been updated for ages and is not used by anybody any
longer, so remove its code to facilitate maintenance.

Also remove references to this port from the documentation and most of
the other places (VMS-specific descrip.vms files still check for it
because it's not clear how to update them all), including configure.

Regenerate the latter and rebake all makefiles.

Finally document that this port is not available any longer.
2022-10-16 16:39:56 +02:00
Vadim Zeitlin
9ed1a4ea59 Use v3 of checkout action in GitHub CI builds
The previously used v2 uses node12 which is being deprecated by GitHub
and won't be any longer available soon, so switch to the currently
supported version.
2022-10-10 23:55:12 +02:00
Scott Talbert
458dc814c2 CI: fix/simplify httpbin use by standardizing Python version
Now that we don't use Travis CI any longer (and don't use httpbin on the
other CI providers yet), we can make our life much simpler by just using
Python 3.10 on all platforms instead of trying to find version-specific
workarounds for various python/pip/httpbin incompatibilities.

Closes #22726.
2022-08-18 21:52:21 +02:00
Vadim Zeitlin
4e26568f97 Replace macOS 10.15 runners with macOS 11 ones
10.15 is being phased out by GitHub, so switch to the still supported
runner platform version.

Closes #22698.
2022-08-04 02:32:18 +02:00
naveen
64add326f6 Restrict job permissions in GitHub actions workflows
Restrict the GitHub token permissions only to the required ones, i.e.
just read-only access to the code.

This is done in order to reduce the potential harm in case of a
malicious pull request, see GitHub blog post at
https://securitylab.github.com/research/github-actions-preventing-pwn-requests/

Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>

Closes #22574.
2022-06-28 14:00:44 +02:00
Vadim Zeitlin
94303bd1c4 Exclude all hidden tests in Mac CI workflow
We need to explicitly exclude these tests, which are not supposed to be
run, when specifying the tests to run using exclusions.
2022-06-09 01:33:46 +01:00
Vadim Zeitlin
c65c0e44f3 Remove duplicated configure call from Mac CI workflow
This seems to have been accidentally added in 6afd2e8f87 (Revert "making
sure CI builds don’t contaminated checked out directory on self-hosted
runner", 2022-04-17).
2022-04-19 00:33:33 +02:00
Stefan Csomor
e5827d0ae9 using proper bash defaults
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell
2022-04-18 17:37:03 +02:00
Stefan Csomor
6afd2e8f87 Revert "making sure CI builds don’t contaminated checked out directory on self-hosted runner"
This reverts commit 88bd6d0135. we’re trying to use this approach: https://docs.github.com/en/actions/hosting-your-own-runners/running-scripts-before-or-after-a-job
2022-04-17 23:33:50 +02:00
Stefan Csomor
88bd6d0135 making sure CI builds don’t contaminated checked out directory on self-hosted runner
self-hosted runners are stateful - surprise - so we have to isolate things better
2022-04-17 20:47:54 +02:00
Vadim Zeitlin
7e45373e16 Add a simple workflow for updating HTML docs online
Run doxygen and copy the generated files to docs.wxwidgets.org.

Ignore the new workflow in all the existing CI ones, as changes to it
shouldn't require rerunning them.

See #19126.
2022-03-28 00:54:46 +02:00
Vadim Zeitlin
8f1e277833 Ignore changes to GitHub issue templates in the CI builds
Unfortunately they will still run once when this commit is done, but at
least they won't run in the future when templates are modified.
2022-01-14 01:42:13 +01:00
Vadim Zeitlin
394842aa8f Merge branch 'ci-stl'
Add STL builds to GitHub CI.

See https://github.com/wxWidgets/wxWidgets/pull/2529
2022-01-11 23:50:42 +01:00
Vadim Zeitlin
11b8276cc4 Disable container overflow detection in Mac STL ASAN CI build
This seems to result in a false positive in BitmapComboBoxTestCase with
the following stack:

ERROR: AddressSanitizer: container-overflow on address 0x00010d5331c0 at pc 0x00010743e1e8 bp 0x00016b6f8940 sp 0x00016b6f8938
WRITE of size 8 at 0x00010d5331c0 thread T0
    #0 0x10743e1e4 in wxString::ConvertedBuffer<char>::ConvertedBuffer() string.h:3598
    #1 0x10743ddbc in wxString::ConvertedBuffer<char>::ConvertedBuffer() string.h:3598
    #2 0x10743f49c in wxString::wxString(wxString const&) string.h:1157
    #3 0x1074324ac in wxString::wxString(wxString const&) string.h:1157
    #4 0x10747a4c4 in void std::__1::allocator<wxString>::construct<wxString, wxString const&>(wxString*, wxString const&) memory:916
    #5 0x10747a3f8 in void std::__1::allocator_traits<std::__1::allocator<wxString> >::construct<wxString, wxString const&, void>(std::__1::allocator<wxString>&, wxString*, wxString const&) allocator_traits.h:288
    #6 0x107479e2c in std::__1::vector<wxString, std::__1::allocator<wxString> >::__construct_at_end(unsigned long, wxString const&) vector:1063
    #7 0x107479b3c in std::__1::vector<wxString, std::__1::allocator<wxString> >::insert(std::__1::__wrap_iter<wxString const*>, unsigned long, wxString const&) vector:1889
    #8 0x10756085c in wxBaseArray<wxString, wxSortedArray_SortFunction<wxString> >::Insert(wxString, unsigned long, unsigned long) dynarray.h:181
    #9 0x108028fbc in wxVListBoxComboPopup::Insert(wxString const&, int) odcombo.cpp:539
    #10 0x108030180 in wxOwnerDrawnComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) odcombo.cpp:1122
    #11 0x10826d690 in wxBitmapComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) bmpcboxg.cpp:169
    #12 0x10485271c in wxItemContainer::InsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) ctrlsub.h:160
    #13 0x1048522a0 in wxItemContainer::InsertItems(wxArrayStringsAdapter const&, unsigned int) ctrlsub.h:165
    #14 0x10483c08c in wxItemContainer::Insert(wxArrayString const&, unsigned int) ctrlsub.h:247
    #15 0x10483dac8 in ItemContainerTestCase::Count() itemcontainertest.cpp:96
    #16 0x104866e04 in BitmapComboBoxTestCase::runTest() bitmapcomboboxtest.cpp:50
    ...

0x00010d5331c0 is located 64 bytes inside of 160-byte region [0x00010d533180,0x00010d533220)
allocated by thread T0 here:
    #0 0x105546714 in wrap__Znwm+0x74 (libclang_rt.asan_osx_dynamic.dylib:arm64e+0x4a714)
    #1 0x10747ae10 in void* std::__1::__libcpp_operator_new<unsigned long>(unsigned long) new:235
    #2 0x10747ad6c in std::__1::__libcpp_allocate(unsigned long, unsigned long) new:261
    #3 0x10747ace8 in std::__1::allocator<wxString>::allocate(unsigned long) memory:870
    #4 0x10747ab88 in std::__1::allocator_traits<std::__1::allocator<wxString> >::allocate(std::__1::allocator<wxString>&, unsigned long) allocator_traits.h:260
    #5 0x10747aac4 in std::__1::__split_buffer<wxString, std::__1::allocator<wxString>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<wxString>&) __split_buffer:314
    #6 0x10747a110 in std::__1::__split_buffer<wxString, std::__1::allocator<wxString>&>::__split_buffer(unsigned long, unsigned long, std::__1::allocator<wxString>&) __split_buffer:313
    #7 0x107479c30 in std::__1::vector<wxString, std::__1::allocator<wxString> >::insert(std::__1::__wrap_iter<wxString const*>, unsigned long, wxString const&) vector:1904
    #8 0x10756085c in wxBaseArray<wxString, wxSortedArray_SortFunction<wxString> >::Insert(wxString, unsigned long, unsigned long) dynarray.h:181
    #9 0x108028fbc in wxVListBoxComboPopup::Insert(wxString const&, int) odcombo.cpp:539
    #10 0x108030180 in wxOwnerDrawnComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) odcombo.cpp:1122
    #11 0x10826d690 in wxBitmapComboBox::DoInsertItems(wxArrayStringsAdapter const&, unsigned int, void**, wxClientDataType) bmpcboxg.cpp:169
    #12 0x1075590bc in wxItemContainer::DoAppendItems(wxArrayStringsAdapter const&, void**, wxClientDataType) ctrlsub.h:352
    #13 0x10484c9e0 in wxItemContainer::AppendItems(wxArrayStringsAdapter const&, void**, wxClientDataType) ctrlsub.h:117
    #14 0x10484c8d4 in wxItemContainer::AppendItems(wxArrayStringsAdapter const&) ctrlsub.h:122
    #15 0x10483999c in wxItemContainer::Append(wxArrayString const&) ctrlsub.h:209
    #16 0x10483ccfc in ItemContainerTestCase::Count() itemcontainertest.cpp:82
    #17 0x104866e04 in BitmapComboBoxTestCase::runTest() bitmapcomboboxtest.cpp:50
    ...
2022-01-11 15:33:16 +01:00
Vadim Zeitlin
e2d13c2d94 Show build environment and compiler version for Mac CI builds
This is similar to 6e96c6dda0 (Add "Show build environment" step,
2021-10-27) done for the Unix CI builds.
2021-12-15 17:50:55 +01:00
Vadim Zeitlin
168c6d3bd5 Use STL in one of Mac builds too
Check that Mac-specific code compiles and works correctly in STL builds
too.
2021-09-23 18:14:27 +02:00
Artur Wieczorek
5ecf2e05a5 Execute ChoiceTestCase on wxMac 2021-09-22 22:19:45 +02:00
Artur Wieczorek
ce9f8d065a Execute ListBox-related tests under wxMac 2021-09-22 22:19:45 +02:00
Artur Wieczorek
5715c7f573 Execute ComboBoxTestCase under wxMac 2021-09-22 22:19:45 +02:00
Artur Wieczorek
efb40daf4f Execute Window::SizerErrors test under wxMac 2021-09-11 23:24:22 +02:00
Vadim Zeitlin
0fd138a4e7 Slightly simplify running the GUI tests in the Mac CI workflow
No real changes, just don't use pipefail option when we're not using
pipelines at all -- this was somewhat confusing.
2021-09-11 13:54:24 +02:00
Artur Wieczorek
0381b16bd1 Skip tests that currently fail under wxMac 2021-09-11 09:16:32 +02:00
Artur Wieczorek
301b08b95d Execute GUI tests under wxOSX 2021-09-11 09:16:32 +02:00
Vadim Zeitlin
d81dc9f125 Remove tests for matrix.skip_gui in workflow files
This setting is used, so just remove all the tests for it.
2021-08-28 23:50:55 +02:00
Vadim Zeitlin
dd33dc2d68 Move wxMac and wxiOS builds to Mac CI workflow
Still run them on GitHub runners, but do it using the same steps as for
our own builds, as there should be no reason to have any difference
in the build steps independently of where exactly they run.

Also remove checks for matrix.skip_testing from the Unix CI workflow as
they are not needed there any more because the tests are always run.

This commit is best viewed with --color-moved git option.
2021-08-28 23:50:55 +02:00
Vadim Zeitlin
446268b61c Rename ci_mac_selfhosted.yml to just ci_mac.yml
We are going to have both self- and GitHub-hosted runners in this file
soon, so rename it for clarity.

No changes yet.
2021-08-28 23:50:54 +02:00
Renamed from .github/workflows/ci_mac_selfhosted.yml (Browse further)