Deprecation

Last updated

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.

Contents

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]

Etymology

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]

Software

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:

ReasonExample(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 Java API methods Thread.stop, .suspend and .resume are further examples. [7]
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: A library may expose names that are inconsistent. For example, an API that uses both "color" and "colour" is inconsistent. 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]

Other usage

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]

See also

Related Research Articles

<span class="mw-page-title-main">Alkene</span> Hydrocarbon compound containing one or more C=C bonds

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.

<span class="mw-page-title-main">Ether</span> Organic compounds made of alkyl/aryl groups bound to oxygen (R–O–R)

In organic chemistry, ethers are a class of compounds that contain an ether group—an oxygen atom connected to two organyl groups. They have the general formula R−O−R′, where R and R′ represent 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.

<span class="mw-page-title-main">Ester</span> Compound derived from an acid

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. 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.

<span class="mw-page-title-main">Ketone</span> Organic compounds of the form >C=O

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 in 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.

<span class="mw-page-title-main">Acetal</span> Organic compound with the structure >C(O–)2

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.

<span class="mw-page-title-main">Butanone</span> Chemical compound

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.

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.

Methyl ethyl ketone peroxide (MEKP) is an organic peroxide with the formula [(CH3)(C2H5)C(O2H)]2O2. MEKP is a colorless oily liquid. It is widely used in vulcanization (crosslinking) of polymers.

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.

In organic chemistry, a substituent is one or a group of atoms that replaces atoms, thereby becoming a moiety in the resultant (new) molecule.

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.

<span class="mw-page-title-main">Bisulfite</span> Chemical compound or ion

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.

<span class="mw-page-title-main">NEMA connector</span> Power plugs and receptacles used in North America and some other regions

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.

<span class="mw-page-title-main">Public-domain-equivalent license</span> License that waives all copyright

Public-domain-equivalent license are licenses that grant public-domain-like rights and/or act as waivers. They are used to make copyrighted works usable by anyone without conditions, while avoiding the complexities of attribution or license compatibility that occur with other licenses.

BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD license was used for its namesake, the Berkeley Software Distribution (BSD), a Unix-like operating system. The original version has since been revised, and its descendants are referred to as modified BSD licenses.

<span class="mw-page-title-main">GNU General Public License</span> Series of free software licenses

The GNU General Public License is a series of widely used free software licenses, or copyleft, that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general use, and was originally written by Richard Stallman, the founder of the Free Software Foundation (FSF), for the GNU Project. The license grants the recipients of a computer program the rights of the Free Software Definition. The licenses in the GPL series are all copyleft licenses, which means that any derivative work must be distributed under the same or equivalent license terms. It is more restrictive than the Lesser General Public License, and even further distinct from the more widely-used permissive software licenses BSD, MIT, and Apache.

<span class="mw-page-title-main">Three-prong adaptor</span> Type of adapter

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.

References

  1. 1 2 "JEP 277: Enhanced Deprecation". openjdk.java.net. Archived from the original on 19 September 2018. Retrieved 9 February 2018.
  2. Shea, Ammon. "A New Meaning of 'Deprecate'". Words We're Watching. Merriam-Webster . Retrieved 1 March 2023.
  3. Raymond, Eric S.; Steele, Guy L., eds. (July 1992). The Jargon File, Version 2.9.10 . Retrieved 1 March 2023 via Project Gutenberg.
  4. Stewart, Meghan (27 February 2023). "Windows client features lifecycle". What's new in Windows. Microsoft . Retrieved 1 March 2023.
  5. "On the future of smbfs". LWN.net. 15 May 2006. Retrieved 1 March 2023.
  6. GNU. "Line Input". The GNU C Library. GNU. Archived from the original on 26 January 2021. Retrieved 2 August 2008. Deprecated function: char * gets (char *s). ... The gets function is very dangerous because it provides no protection against overflowing the string s. The GNU library includes it for compatibility only. You should always use fgets or getline instead.
  7. "Java Thread Primitive Deprecation". Oracle. Archived from the original on 15 October 2011. Retrieved 13 May 2011.
  8. Musciano, Chuck; Kennedy, Bill (2007). "HTML's Obsolete Expanded Font Handling". HTML & XHTML : the definitive guide (6th ed.). Beijing: O'Reilly. ISBN   978-0-596-52732-7. OCLC   77574682.
  9. Simenel, Éric (2000). "Carbonization 101". MacTech. Vol. 16, no. 12. Retrieved 1 March 2023.
  10. "The cross-platform streaming solution". VideoLAN. Retrieved 1 March 2023.
  11. "Brontosaurus Finally Validated as a Distinct Dinosaur". ABC News . Archived from the original on 9 April 2020. Retrieved 27 June 2020.
  12. Upchurch, Paul; Barrett, Paul M.; Dodson, Peter (2004). "Sauropoda". In Weishampel, David B.; Dodson, Peter; Osmólska, Halszka (eds.). The Dinosauria (2nd ed.). Berkeley: University of California Press. pp.  259–322. ISBN   0-520-24209-2.
  13. Nomenclature of Organic Chemistry : IUPAC Recommendations and Preferred Names 2013 (Blue Book). Cambridge: The Royal Society of Chemistry. 2014. p. 725. doi:10.1039/9781849733069-FP001. ISBN   978-0-85404-182-4.