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

Framework: Conditionally warn about including header for deprecated package #12828

Merged
merged 21 commits into from
Apr 30, 2024

Conversation

sebrowne
Copy link
Contributor

@sebrowne sebrowne commented Mar 14, 2024

If <packagename>_SHOW_DEPRECATED_WARNINGS is defined, emit a warning upon inclusion of any package header (used Epetra for an example).

@csiefer2 @cgcgcg @ccober6 what do you think about this approach? I thought about it after discussing with Matt and came up with this change, which still works around the function and class deprecation flags.

Edit: Tagging @bartlettroscoe as well in case he has any input on any alternative ways to "deprecate a package".

Now here are the states:
cmake -DTrilinos_ENABLE_Epetra=ON -DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF -DTrilinos_SHOW_DEPRECATED_WARNINGS=ON .. gives me compile warnings (default)
cmake -DTrilinos_ENABLE_Epetra=ON -DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF -DTrilinos_SHOW_DEPRECATED_WARNINGS=OFF .. gives me no warnings or errors
cmake -DTrilinos_ENABLE_Epetra=ON -DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF -DTrilinos_HIDE_DEPRECATED_CODE=ON .. gives me configure failures (one cannot even configure Trilinos if hiding deprecated code and Epetra being enabled).

Packages to add deprecation warning to headers

  • Amesos
  • AztecOO
  • Epetra
  • EpetraExt
  • Ifpack
  • Intrepid
  • Isorropia
  • ML
  • NewPackage
  • Pliris
  • PyTrilinos
  • ShyLU_DDCore
  • ThyraEpetraAdapters
  • ThyraEpetraExtAdapters
  • Triutils

If <packagename>_SHOW_DEPRECATED_WARNINGS is defined, emit a warning
upon inclusion of any package header (used Epetra for an example).
@sebrowne sebrowne requested a review from a team as a code owner March 14, 2024 22:08
@sebrowne sebrowne added the AT: WIP Causes the PR autotester to not test the PR. (Remove to allow testing to occur.) label Mar 14, 2024
@sebrowne sebrowne changed the title Framework: Conditionally warn about including header Framework: Conditionally warn about including header for deprecated package Mar 15, 2024
@mdmosby
Copy link

mdmosby commented Mar 18, 2024

Wile I think this is a workable solution from SIERRA's perspective, I still strongly advocate for deprecating the interface with the [[deprecated]] attribute (reasons below). This could be achieved programmatically on the Trilinos side with an LLVM tool. As there is a multi-year package deprecation schedule on the books, this seems like a worthwhile investment and wouldn't be an immediate throw-away tool. Furthermore, deprecation warnings within Trilinos could make it easier to identify and update internal usage of deprecated APIs or packages. Finally, others could make use of this tool to derive a refactoring tool, i.e., refactor user code to the replacement package, or to manage their own API deprecations within Trilinos (e.g., STK). This approach seems to be better for Trilinos users in moving away from the deprecated packages/interfaces.

Why deprecation attributes are preferred to header-level deprecation

While there is a single warning per include of deprecated headers, that may be several layers of includes deep and far from usage of the deprecated interface. That distance from warning to actual use makes it difficult to track down, and may induce several false positives due to transitive includes in user code. Past experience suggests that these warnings will be largely ignored, whereas local deprecation warnings/errors are much more likely to be addressed in a timely manner. SIERRA will effectively need to set -DTrilinos_SHOW_DEPRECATED_WARNINGS=OFF and depend on teams being aware of the deprecation schedule and take action independently of build status. SIERRA already has a "disable deprecated code" build/test line, so we are probably OK so long as that line is taken into consideration when updating Trilinos.

@bartlettroscoe
Copy link
Member

bartlettroscoe commented Mar 29, 2024

I agree with @mdmosby that it is preferrable to deprecate individual classes and functions using [[deprecated]] (but that should be done using the macro <PACKAGE_NAME_UC>_DEPRECATED as per this standard, which needs to be updated to use [[deprecated]] instead of __deprecated__ now that Trilinos requires C++17). For this, what you need is a C++-aware tool that can deprecate everything that can be deprecated in a given C++ header file. But I am wondering if a poor-man's tool in Python might be possible to deprecate 95% of the needed constructs without needing a fully C++-aware tool (e.g. build with LLVM)? Then a few manual fixes might be needed to fix it up?

I am curious about the requirements for this deprecation? I don't see those listed anywhere.

@sebrowne sebrowne requested review from a team as code owners April 17, 2024 23:33
@achauphan achauphan force-pushed the deprecation_example branch from edc2422 to 8a7dfa4 Compare April 18, 2024 19:12
@achauphan
Copy link
Contributor

Force pushed as the commits adding deprecation warnings to Amesos and AztecOO did not have TRIBITS_ADD_SHOW_DEPRECATED_WARNINGS_OPTION() in their package's CMakeList.txt, causing the warnings to not output during configure

@sebrowne sebrowne requested a review from a team as a code owner April 18, 2024 19:26
@bartlettroscoe
Copy link
Member

FYI: I just viewed a presentation yesterday that describes how to write automated clang-tidy checks/refractors and they mentioned they are using this to add deprecation attributes to C++ entities. Here is the presentation:

She mentions an example at Google where they are using clang-tidy custom checks/refactors to add deprecated checks.

Looks like Kitware has some expertise with this:

It looks like CMake 3.26 also added a feature to help apply automated refactorings.

SNL should really learn about how to write custom static analysis and refactoring. This could be a real benefit to Trilinos and many other internal projects.

@mdmosby
Copy link

mdmosby commented Apr 18, 2024

SNL should really learn about how to write custom static analysis and refactoring. This could be a real benefit to Trilinos and many other internal projects.

Can I double 👍 this? haha

@sebrowne sebrowne requested review from a team as code owners April 18, 2024 23:02
These conditional warnings depend on when Thyra_SHOW_DEPRECATED_WARNINGS is defined
instead of ThyraEpetraAdapters_SHOW_DEPRECATED_WARNINGS as I could not get
the ThyraEpetraAdapters_SHOW_DEPRECATED_WARNINGS defined properly.

Since Thyra Core is depended upon anyways, this seemed appropriate enough and works
when configuring with ThyraEpetraAdapters enabled.

PR: trilinos#12828
@sebrowne sebrowne requested review from bartlettroscoe, rppawlo, cgcgcg, mperego, ccober6 and jmlapre and removed request for a team April 29, 2024 13:15
cgcgcg
cgcgcg previously approved these changes Apr 29, 2024
Copy link
Contributor

@cgcgcg cgcgcg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I guess if someone is still using the old packages, they will be faced with a deluge of warnings :-)

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ cgcgcg ]!

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - AutoMerge IS ENABLED, but the Label AT: AUTOMERGE is not set. Either set Label AT: AUTOMERGE or manually merge the PR...

1 similar comment
@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - AutoMerge IS ENABLED, but the Label AT: AUTOMERGE is not set. Either set Label AT: AUTOMERGE or manually merge the PR...

@sebrowne
Copy link
Contributor Author

Added a RELEASE_NOTES entry, need new review.

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request.

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: Trilinos_PR_gcc-8.3.0

  • Build Num: 4044
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-gnu-8.3.0-openmpi-1.10.1-openmp_release-debug_static_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any&&!sandybridge
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_gcc-8.3.0-serial

  • Build Num: 2543
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-v2-gnu-8.3.0-serial_release-debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_no-mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_gcc-8.3.0-debug

  • Build Num: 2533
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-gnu-8.3.0-openmpi-1.10.1-serial_debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_clang-11.0.1

  • Build Num: 2532
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-clang-11.0.1-openmpi-1.10.1-serial_release-debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_python3

  • Build Num: 3690
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-gnu-7.2.0-anaconda3-serial_debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_no-mpi_no-pt_no-rdc_no-uvm_deprecated-on_pr-framework
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL ascic
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_cuda-11.4.2-uvm-off

  • Build Num: 3535
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-cuda-11.4.2-sems-gnu-10.1.0-sems-openmpi-4.0.5_release_static_Volta70_no-asan_complex_no-fpic_mpi_pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL GPU
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_intel-2021.3

  • Build Num: 2174
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-intel-2021.3-sems-openmpi-4.0.5_release-debug_shared_no-kokkos-arch_no-asan_no-complex_fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-off_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_cuda-11.4.20-uvm

  • Build Num: 269
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-cuda-11.4.2-sems-gnu-10.1.0-sems-openmpi-4.0.5_release_static_Volta70_no-asan_complex_no-fpic_mpi_pt_no-rdc_uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Using Repos:

Repo: TRILINOS (sebrowne/Trilinos)
  • Branch: deprecation_example
  • SHA: e4f45e6
  • Mode: TEST_REPO

Pull Request Author: sebrowne

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED

Pull Request Auto Testing has PASSED (click to expand)

Build Information

Test Name: Trilinos_PR_gcc-8.3.0

  • Build Num: 4044
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-gnu-8.3.0-openmpi-1.10.1-openmp_release-debug_static_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any&&!sandybridge
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_gcc-8.3.0-serial

  • Build Num: 2543
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-v2-gnu-8.3.0-serial_release-debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_no-mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_gcc-8.3.0-debug

  • Build Num: 2533
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-gnu-8.3.0-openmpi-1.10.1-serial_debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_clang-11.0.1

  • Build Num: 2532
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-clang-11.0.1-openmpi-1.10.1-serial_release-debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_python3

  • Build Num: 3690
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-gnu-7.2.0-anaconda3-serial_debug_shared_no-kokkos-arch_no-asan_no-complex_no-fpic_no-mpi_no-pt_no-rdc_no-uvm_deprecated-on_pr-framework
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL ascic
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_cuda-11.4.2-uvm-off

  • Build Num: 3535
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-cuda-11.4.2-sems-gnu-10.1.0-sems-openmpi-4.0.5_release_static_Volta70_no-asan_complex_no-fpic_mpi_pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL GPU
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_intel-2021.3

  • Build Num: 2174
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-intel-2021.3-sems-openmpi-4.0.5_release-debug_shared_no-kokkos-arch_no-asan_no-complex_fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-off_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b

Build Information

Test Name: Trilinos_PR_cuda-11.4.20-uvm

  • Build Num: 269
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel7_sems-cuda-11.4.2-sems-gnu-10.1.0-sems-openmpi-4.0.5_release_static_Volta70_no-asan_complex_no-fpic_mpi_pt_no-rdc_uvm_deprecated-on_no-package-enables
PR_LABELS PA: Framework
PULLREQUESTNUM 12828
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL trilinos-any
TRILINOS_SOURCE_REPO https://github.com/sebrowne/Trilinos
TRILINOS_SOURCE_SHA e4f45e6
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA 15c0f3b


CDash Test Results for PR# 12828.

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ jmlapre ]!

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - AutoMerge IS ENABLED, but the Label AT: AUTOMERGE is not set. Either set Label AT: AUTOMERGE or manually merge the PR...

@sebrowne sebrowne merged commit 36a6c3c into trilinos:develop Apr 30, 2024
15 checks passed
@sebrowne sebrowne deleted the deprecation_example branch April 30, 2024 20:03
achauphan added a commit to achauphan/Trilinos that referenced this pull request Jul 30, 2024
Added `-Werror=sign-compare -Werror=unused-variable -Werror=parentheses` to the
rhel8_gcc-8.5.0-serial Trilinos configuration.

These three warnings-as-errors flags serve as the starting steps to introduce
more warnings-as-errors flags going forward without overwhelming package developers
too much off the bat.

NOTE: Trilinos cannot currently enable `-Werror` due to how deprecated package
header warnings are implemented in PR trilinos#12828 (controlled by -Wcpp which is controls a lot of other
warnings).

Signed-off-by: Anderson <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
16.0 release note PA: Framework Issues that fall under the Trilinos Framework Product Area
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants