From Fedora Project Wiki
No edit summary
Line 91: Line 91:


== Scope ==
== Scope ==
* Proposal owners: Update package spec files.
* Proposal owners: Update gdb/make spec files.
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do the feature owners have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->


* Other developers: Update Make/GDB scripting files if using Guile.
* Other developers: Update Make/GDB scripting files if using Guile. No such users expected.
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
<!-- What work do other developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->



Revision as of 16:55, 12 January 2021


Remove Guile Support From Toolchain

Summary

GDB and Make packages currently contain guile scripting support which allows users to implement (possibly new) functionality in these tools. This change request proposes to remove that support from the these tools, since both provide alternatives without the burden of additional dependencies.

Owner

Current status

  • Targeted release: Fedora 34
  • Last updated: 2021-01-12
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Benefit to Fedora

While GDB supplies a "minimal" package which disables all non-essential features for use in the buildroot, Make has no equivalent, and is always compiled with Guile support. This requires that the buildroot contains Guile. This proposal will help shrink the buildroot.

Furthermore, GDB already supports a much more widely tested and feature-rich Python interface, and maintainers would like to remove the maintenance burden imposed by supporting multiple scripting interfaces.


Scope

  • Proposal owners: Update gdb/make spec files.
  • Other developers: Update Make/GDB scripting files if using Guile. No such users expected.
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

Users with GDB and/or Make Guile scripts will need to update and/or rewrite their scripts.

How To Test

GDB: There is nothing to test. If you are using Guile scripts, you should rewrite with Python.

Make: Rebuild packages if it is unknown whether they contain Guile scripts; otherwise, there is nothing to test.

User Experience

Guile scripts that extend the functionality of GDB or Make will stop working when users upgrade these packages. GDB users are encouraged to use GDB's Python interface instead. Users of Guile in Makefiles should either use shell scripting or GNU Make's built-in language or migrate to another build tool with different scripting capabilities (such as CMake or Meson).

Dependencies

N/A (not a System Wide Change)

Contingency Plan

  • Contingency mechanism: Revert changes and restore GDB/Make support for Guile.
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? N/A (not a System Wide Change), Yes/No
  • Blocks product? product

Documentation

N/A (not a System Wide Change)

Release Notes

Release notes should mention the removal of Guile support in GDB/Make and suggest alternatives.