- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 338
DeprecatedFeatures
This page is intended to track the various features that are, or will be, deprecated, and their progress through our DeprecationCycle. The idea is to have a place to track movement of these through the cycle so that, within the guidelines of the Cycle, we can be reasonably timely about shedding older features that may be slowing down or complicating the code base.
In the table below, a '?' indicates an estimated or unknown value and a '??' indicates a projected future time. The most recently announced are at the top.
Note that Python version support is handled a bit differently. While there is a small component that is an "active" SCons feature - bytecode strings for certain scenarios - mostly the Python version isn't really part of SCons. Since old versions restrict the syntax that can be used, SCons is now tracking more closely to the versions of cPython supported by upstream and is not using the long deprecation sequence for this.
TODO: Go through old release notes and/or mailing list archives to nail down "Announced."
| Stage | Description | 
|---|---|
| Repl | Replacement released | 
| Annuc | Announcement | 
| Hidden | Hidden Warning, off by default, can be turned on | 
| Suppr | Suppressible Warning, on by default, can be turned off | 
| Mand | Mandatory Warning, always on | 
| Fatal | Fatal Error, feature no longer available | 
| Removed | Check removed, may cause Python error | 
| Feature | Description / Notes | Repl | Annuc | Hidden | Suppr | Mand | Fatal | Removed | 
|---|---|---|---|---|---|---|---|---|
| Python 3.6 | Drop support for Python 3.6 | N/A | 4.8.0 | N/A | N/A | N/A | ?? | ?? | 
| Python 3.5 | Drop support for Python 3.5 | N/A | 4.2 | N/A | N/A | N/A | 4.3.0 | 4.3.0 | 
| --cache-<option> | Convert to --cache=<option> | 2.1?? | 2.1?? | 2.1?? | ?? | ?? | 3.0?? | 3.2?? | 
| ${,UN}CHANGED_SOURCES${,UN}CHANGED_TARGETSreserved variables | Deprecate the user's ability to set them | N/A | 1.2 | Warning message (and assignment suppressed) as one of the reserved construction variable names | ||||
| Options/*.pymodules | Stub modules, restored when 0.98.1 removed them and broke released configurations | 0.98.3 | TODO | 1.2 | 2.0 | 2.1?? | 3.0?? | |
| *Optionnames | Replaced by *Variablenames | 0.98.1 | TODO | 1.2 | 2.0 | 2.1?? | 3.0?? | |
| env.BuildDir() | Replaced by env.VariantDir() | 0.98.0 | TODO | 2.0 | 2.1?? | 3.0?? | 3.1.2 | |
| build_diroption | Replaced by variant_dir | 0.98.0 | TODO | 2.0 | 2.1?? | 3.0?? | 3.1.2 | |
| env.Copy() | Replaced by env.Clone() | 0.98.0 | TODO | 0.98.0 | 2.0 | 2.1?? | 3.1.2 | |
| env.SourceSignatures()andenv.TargetSignature() | Replaced by env.Decider(); eliminating these would speed up a critical code path! | 0.98.0 | TODO | 0.98.0 | 2.0 | 2.1?? | 3.1.2 | |
| --debug=dtreeoption | Replaced by --tree=derived | 0.98.0 | TODO | 0.98.0 | 2.0 | 2.1?? | 3.1.2 | |
| --debug=streeoption | Replaced by --tree=all,status | 0.98.0 | TODO | 0.98.0 | 2.0 | 2.1?? | 3.1.2 | |
| --debug=treeoption | Replaced by --tree=all | 0.98.0 | TODO | 0.98.0 | 2.0 | 2.1?? | 3.1.2 | |
| Sigmodule | Stub module to maintain backwards compatibility from before the Signature Refactoring | 0.97.x | TODO | 0.98.0 | 2.0 | 2.1?? | ?? | |
| scannerBuilder keyword | Replaced by separate target_scannerandsource_scannerkeywords | 0.96.90 | TODO | 0.96.90 | 2.0 | 2.1?? | 3.1.2 | |
| overridesBuilder keyword | Replaced by use of keyword arguments in Builder creation | 0.95 | TODO | 0.95 | 2.0 | 2.1?? | 3.1.2 | |
| --debug=nomemoizeroption | No longer has any effect | 0.96.94 | TODO | 0.96.94 | 2.0 | 2.1?? | 3.1.2 | |
| File.win32attribute | Replaced by .windows | 0.96.92 | TODO | none | 2.1?? | ?? | ?? | ?? | 
| $WIN32*construction variables | Replaced by $WINDOWS*construction variables | 0.96.92 | TODO | none | 2.1?? | ?? | ?? | 4.2 | 
| $PDFCOMconstruction variable | Replaced by $DVIPDFCOM | 0.14 | TODO | none | 2.1?? | ?? | ?? | 4.2 | 
| Taskmaster.Task.needs_execute() | internal method; may be used by user-defined subclasses | should always be overridden - now an abstract method | ? | 2.0 | 2.1?? | ?? | ||
| Scanner.Scannerclass | TBD: unused internal class; may be used by user code | ? | ? | ? | ? | ? | ? | ? | 
| Scanner.Selectorclass | TBD: unused internal class; may be used by user code | ? | ? | ? | ? | ? | ? | ? | 
| qttool | Drop old qt3-only tool | qt4/qt4 contrib | 4.3 | 4.3 | ? | ? | ? | ? |