Deprecation is the discouragement of use of something human-made, such as a term, feature, design, or practice. Typically something is deprecated because it is claimed to be inferior compared to other options available.
Something may be deprecated when it cannot be controlled,[ clarification needed ] such as a term. Even when it can be controlled, something may be deprecated even when it might be useful – for example, to ensure compatibility – and it may be removed or discontinued at some time after being deprecated. [1]
In general English usage, the verb "to deprecate" means "to express disapproval of (something)". It derives from the Latin deponent verb deprecari, meaning "to ward off (a disaster) by prayer".
An early documented usage of "deprecate" in this sense is in Usenet posts in 1984, referring to obsolete features in 4.2BSD and the C programming language. [2] An expanded definition of "deprecate" was cited in the Jargon File in its 1991 revision, [3] and similar definitions are found in commercial software documentation from 2014 [1] and 2023. [4]
While a deprecated software feature remains in the software, its use may raise warning messages recommending alternative practices. Deprecated status may also indicate the feature will be removed in the future. Features are deprecated, rather than immediately removed, to provide backward compatibility and to give programmers time to bring affected code into compliance with the new standard.
Notable reasons for deprecation include:
Reason | Example(s) |
---|---|
The feature has been replaced by a more powerful alternative feature. | The Linux kernel contains two modules to communicate with Windows networks: smbfs and cifs . The latter provides better security, supports more protocol features, and integrates better with the rest of the kernel. Since the inclusion of cifs , smbfs has been deprecated. [5] |
The feature contains a design flaw, frequently a security flaw, and so should be avoided, but existing code depends upon it. |
|
The feature is considered extraneous and will be removed in a planned future version. | Early versions of the Web markup language HTML included a FONT element to allow page designers to specify the font in which text should be displayed. With the release of Cascading Style Sheets and HTML 4.0, the FONT element became extraneous, and detracted from the benefits of noting structural markup in HTML and graphical formatting in CSS. Thus, the FONT element was deprecated in the Transitional HTML 4.0 standard, and eliminated in the Strict variant. [8] |
A planned future version of the software will make major structural changes, making it impossible or impractical to support older features. | When Apple Inc. planned the transition from Mac OS 9 to Mac OS X, it created a subset of the older system's API which would support most programs with minor changes: the Carbon library (which has since been deprecated itself), available in both Mac OS 9 and Mac OS X. Programmers who were, at the time, chiefly using Mac OS 9, could ensure that their programs would run natively on Mac OS X by using only the API functions supported in Carbon. Other Mac OS 9 functions were deprecated, and were never supported natively in Mac OS X. [9] |
Naming consistency. | An API may inconsistently mix spellings such as "color" and "colour" as a result of different developers using different spellings. To enforce consistency, all identifiers using one spelling would be duplicated for[ clarification needed ] the other spelling and identifiers using the unfavored spelling deprecated. |
A feature that once was available independently is combined with its co-feature. | In VLC Media Player, VLC used to stand for "VideoLan Client", and a separate "VideoLan Server" was available as its co-feature. Both the client and server became available in the same package, and so getting one independently would be impractical. [10] |
A building code example is the use of ungrounded ("2-prong") electrical receptacles (UK English: "unearthed"). Over time, these older devices were widely deprecated in favor of safer grounded ("3-prong") receptacles. The older, ungrounded receptacles were still permitted in many places by "grandfathering" them in existing electrical wiring, while prohibiting them for new installations. Thus, though ungrounded receptacles may still be available for legal purchase in a location where they are obsolete, they would generally be intended only for repairs to existing older electrical installations.
In writing and editing, usage of a word may be deprecated because it is ambiguous, confusing, or offensive to some readers. For example, the words sanction and inflammable may be misinterpreted because they have auto-antonymic or self-contradictory meanings; writing style guides often recommend substituting other words that are clearly understood and unambiguous. Some word usages that have acquired different connotations over time, such as gay or colored , may be deprecated as obsolete in formal writing.
In technical standards, use of a certain clause may be discouraged or superseded by new clauses. As an example, in the Ethernet standard IEEE 802.3-2012, Clause 5 (Layer Management) is "deprecated" by Clause 30 (Management), except for 5.2.4.
Deprecation may also occur when a technical term becomes obsolete, either through change or supersession.[ clarification needed ] An example from paleontology is the previously deprecated term Brontosaurus : before being recognized once again as a unique genus, [11] it was considered a popular, yet deprecated, name for the genus Apatosaurus . [12] Some deprecated terms in medicine are consumption (tuberculosis), grippe (influenza), and apoplexy (stroke). In chemical nomenclature, the international standards organization IUPAC (International Union of Pure and Applied Chemistry) has deprecated the term "methyl ethyl ketone", and now recommends using the term "ethyl methyl ketone" instead. [13]
In organic chemistry, an alkene, or olefin, is a hydrocarbon containing a carbon–carbon double bond. The double bond may be internal or in the terminal position. Terminal alkenes are also known as α-olefins.
In organic chemistry, ethers are a class of compounds that contain an ether group—a single oxygen atom bonded to two separate carbon atoms, each part of an organyl group. They have the general formula R−O−R′, where R and R′ represent the organyl groups. Ethers can again be classified into two varieties: if the organyl groups are the same on both sides of the oxygen atom, then it is a simple or symmetrical ether, whereas if they are different, the ethers are called mixed or unsymmetrical ethers. A typical example of the first group is the solvent and anaesthetic diethyl ether, commonly referred to simply as "ether". Ethers are common in organic chemistry and even more prevalent in biochemistry, as they are common linkages in carbohydrates and lignin.
In chemistry, an ester is a compound derived from an acid in which the hydrogen atom (H) of at least one acidic hydroxyl group of that acid is replaced by an organyl group. These compounds contain a distinctive functional group. Analogues derived from oxygen replaced by other chalcogens belong to the ester category as well. According to some authors, organyl derivatives of acidic hydrogen of other acids are esters as well, but not according to the IUPAC.
In organic chemistry, a ketone is an organic compound with the structure R−C(=O)−R', where R and R' can be a variety of carbon-containing substituents. Ketones contain a carbonyl group −C(=O)−. The simplest ketone is acetone, with the formula (CH3)2CO. Many ketones are of great importance in biology and industry. Examples include many sugars (ketoses), many steroids, and the solvent acetone.
The MIT License is a permissive software license originating at the Massachusetts Institute of Technology (MIT) in the late 1980s. As a permissive license, it puts very few restrictions on reuse and therefore has high license compatibility.
In chemistry, a structural isomer of a compound is another compound whose molecule has the same number of atoms of each element, but with logically distinct bonds between them. The term metamer was formerly used for the same concept.
In organic chemistry, an acetal is a functional group with the connectivity R2C(OR')2. Here, the R groups can be organic fragments or hydrogen, while the R' groups must be organic fragments not hydrogen. The two R' groups can be equivalent to each other or not. Acetals are formed from and convertible to aldehydes or ketones and have the same oxidation state at the central carbon, but have substantially different chemical stability and reactivity as compared to the analogous carbonyl compounds. The central carbon atom has four bonds to it, and is therefore saturated and has tetrahedral geometry.
Butanone, also known as methyl ethyl ketone (MEK) or ethyl methyl ketone, is an organic compound with the formula CH3C(O)CH2CH3. This colorless liquid ketone has a sharp, sweet odor reminiscent of acetone. It is produced industrially on a large scale, but occurs in nature only in trace amounts. It is partially soluble in water, and is commonly used as an industrial solvent. It is an isomer of another solvent, tetrahydrofuran.
Rubbing alcohol, also known as surgical spirit in some regions, refers to a group of denatured alcohols commonly used as topical antiseptics. These solutions are primarily composed of either isopropyl alcohol (isopropanol) or ethanol, with isopropyl alcohol being the more widely available formulation. Rubbing alcohol is rendered undrinkable by the addition of bitterants or other denaturants.
In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software. The term often implies not merely a development branch, but also a split in the developer community; as such, it is a form of schism. Grounds for forking are varying user preferences and stagnated or discontinued development of the original software.
In chemical nomenclature, the IUPAC nomenclature of organic chemistry is a method of naming organic chemical compounds as recommended by the International Union of Pure and Applied Chemistry (IUPAC). It is published in the Nomenclature of Organic Chemistry. Ideally, every possible organic compound should have a name from which an unambiguous structural formula can be created. There is also an IUPAC nomenclature of inorganic chemistry.
In computing, a clone is hardware or software that is designed to function in exactly the same way as another system. A specific subset of clones are remakes, which are revivals of old, obsolete, or discontinued products.
An extension cord (US), extension cable, power extender, drop cord, or extension lead (UK) is a length of flexible electrical power cable (flex) with a plug on one end and one or more sockets on the other end. The term usually refers to mains extensions but is also used to refer to extensions for other types of cabling. If the plug and power outlet are of different types, the term "adapter cord" may be used. Most extension cords range from around 2 to 30 feet in length although they are made up to 300 feet (91.44 m) in length.
A permissive software license, sometimes also called BSD-like or BSD-style license, is a free-software license which instead of copyleft protections, carries only minimal restrictions on how the software can be used, modified, and redistributed, usually including a warranty disclaimer. Examples include the GNU All-permissive License, MIT License, BSD licenses, Apple Public Source License and Apache license. As of 2016, the most popular free-software license is the permissive MIT license.
The bisulfite ion (IUPAC-recommended nomenclature: hydrogensulfite) is the ion HSO−
3. Salts containing the HSO−
3 ion are also known as "sulfite lyes". Sodium bisulfite is used interchangeably with sodium metabisulfite (Na2S2O5). Sodium metabisulfite dissolves in water to give a solution of Na+HSO−
3.
A Norrish reaction, named after Ronald George Wreyford Norrish, is a photochemical reaction taking place with ketones and aldehydes. Such reactions are subdivided into Norrish type I reactions and Norrish type II reactions. While of limited synthetic utility these reactions are important in the photo-oxidation of polymers such as polyolefins, polyesters, certain polycarbonates and polyketones.
NEMA connectors are power plugs and sockets used for AC mains electricity in North America and other countries that use the standards set by the US National Electrical Manufacturers Association. NEMA wiring devices are made in current ratings from 15 to 60 amperes (A), with voltage ratings from 125 to 600 volts (V). Different combinations of contact blade widths, shapes, orientations, and dimensions create non-interchangeable connectors that are unique for each combination of voltage, electric current carrying capacity, and grounding system.
Miscibility is the property of two substances to mix in all proportions, forming a homogeneous mixture. Such substances are said to be miscible. The term is most often applied to liquids but also applies to solids and gases. An example in liquids is the miscibility of water and ethanol as they mix in all proportions.
The GNU Free Documentation License is a copyleft license for free documentation, designed by the Free Software Foundation (FSF) for the GNU Project. It is similar to the GNU General Public License, giving readers the rights to copy, redistribute, and modify a work and requires all copies and derivatives to be available under the same license. Copies may also be sold commercially, but, if produced in larger quantities, the original document or source code must be made available to the work's recipient.
A cheater plug, AC ground lifter or three-prong/two-prong adapter is an adapter that allows a NEMA 5-15P grounding-type plug to connect to a NEMA 1-15R non-grounding receptacle. They are needed to allow appliances with 3-wire power cords to plug into legacy ungrounded receptacles found in older buildings. The use of such an adapter avoids the need to replace receptacles, but is potentially hazardous if the grounding tab is not connected to electrical ground. These adapters are illegal in some jurisdictions, in particular throughout Canada. A safer and more reliable alternative identified in the US and Canadian electrical codes is to replace the outlet with a Ground Fault Circuit Interrupter (GFCI) breaker outlet.
Deprecated function: char * gets (char *s). ... Thegets
function is very dangerous because it provides no protection against overflowing the strings
. The GNU library includes it for compatibility only. You should always usefgets
orgetline
instead.