The Comprehensive Perl Archive Network ( CPAN ) is a software repository of over 250,000 software modules and accompanying documentation for 39,000 distributions, written in the Perl programming language by over 12,000 contributors. CPAN can denote either the archive network or the Perl program that acts as an interface to the network and as an automated software installer (somewhat like a package manager ). Most software on CPAN is free and open source software .
69-514: CPAN was conceived in 1993 and has been active online since October 1995. It is based on the CTAN model and began as a place to unify the structure of scattered Perl archives. Like many programming languages , Perl has mechanisms to use external libraries of code, making one file contain common routines used by several programs. Perl calls these modules . Perl modules are typically installed in one of several directories whose paths are placed in
138-629: A version number . The distribution infrastructure of CPAN consists of its worldwide network of more than 250 mirrors in more than 60 countries. Each full mirror hosts around 36 gigabytes of data. Most mirrors update themselves hourly, daily or bidaily from the CPAN master site. Some sites are major FTP servers which mirror lots of other software, but others are simply servers owned by companies that use Perl heavily. There are at least two mirrors on every continent except Antarctica. Several search engines have been written to help Perl programmers sort through
207-432: A SemVer version, software which relies on version 2.1.5 of an API is compatible with version 2.2.3, but not necessarily with 3.2.4. Developers may choose to jump multiple minor versions at a time to indicate that significant features have been added, but are not enough to warrant incrementing a major version number; for example, Internet Explorer 5 from 5.1 to 5.5 or Adobe Photoshop 5 to 5.5. This may be done to emphasize
276-514: A consistent style. First, they received names with arbitrary alphanumeric suffixes as with Windows Me (4.90), Windows XP (5.1), and Windows Vista (6.0). Then, once again Microsoft adopted incremental numbers in the title, but this time, they were not versioning numbers; the version numbers of Windows 7 , Windows 8 and Windows 8.1 are respectively 6.1, 6.2 and 6.3. In Windows 10 , the version number leaped to 10.0 and subsequent updates to
345-438: A different project), while the last two digits indicate the day of that month. So 3419 is the 19th day of the 34th month after the month of January of the year the project started. Other examples that identify versions by year include Adobe Illustrator 88 and WordPerfect Office 2003. When a year is used to denote version, it is generally for marketing purposes, and an actual version number also exists. For example, Windows 95
414-466: A group of volunteers, who will download and test distributions as they are uploaded to CPAN. This enables the authors to have their modules tested on many platforms and environments to which they otherwise lack access, thus improving portability, and quality. Smoke testers send reports, which are then collated and used for a variety of presentation websites, including the main reports site, statistics, and dependencies. Authors can upload new distributions to
483-446: A major/minor versioning scheme for releases of its operating system but uses code names from the movie Toy Story during development to refer to stable, unstable, and testing releases. BLAG Linux and GNU features very large version numbers: major releases have numbers such as 50000 and 60000, while minor releases increase the number by 1 (e.g. 50001, 50002). Alpha and beta releases are given decimal version numbers slightly less than
552-434: A minor release, and additional updates below this level, as well as updates to a given major version of OS X coming after the release of a new major version, were titled Supplemental Updates. The Roman numeral X was concurrently leveraged for marketing purposes across multiple product lines. Both QuickTime and Final Cut Pro jumped from version 7 directly to version 10, QuickTime X and Final Cut Pro X. Like Mac OS X itself,
621-542: A new version, risk of bugs or undeclared breaking changes, degree of changes in visual layout, the number of new features, or almost anything the product developers or marketers deem to be significant, including marketing desire to stress the "relative goodness" of the new version. Semantic versioning (aka SemVer ) is a widely-adopted version scheme that encodes a version by a three-part version number (Major.Minor.Patch), an optional pre-release tag, and an optional build meta tag. In this scheme, risk and functionality are
690-658: A persistent configuration, but is configured only by the environment and command-line options. cpanminus does not have an interactive shell component. It recognizes the cpanfile format for specifying prerequisites, useful in ad-hoc Perl projects that may not be designed for CPAN installation. cpanminus also has the ability to uninstall distributions. Each of these modules can check a distribution's dependencies and recursively install any prerequisites, either automatically or with individual user approval. Each support FTP and HTTP and can work through firewalls and proxies. Experienced Perl programmers often comment that half of Perl's power
759-777: A revision control number, and a release version that typically changes far less often, such as semantic versioning or a project code name. File numbers were used especially in public administration, as well as companies, to uniquely identify files or cases. For computer files this practice was introduced for the first time with MIT's ITS file system, later the TENEX filesystem for the PDP-10 in 1972. Later lists of files including their versions were added, and dependencies amongst them. Linux distributions like Debian, with its dpkg , early on created package management software which could resolve dependencies between their packages. Debian's first try
SECTION 10
#1732771946468828-453: A series of individual numbers, separated by periods, with a progression such as 1.7.0, 1.8.0, 1.8.1, 1.9.0, 1.10.0, 1.11.0, 1.11.1, 1.11.2, and so on. On the other hand, some software packages identify releases by decimal numbers: 1.7, 1.8, 1.81, 1.82, 1.9, etc. Decimal versions were common in the 1980s, for example with NetWare , DOS , and Microsoft Windows , but even in the 2000s have been for example used by Opera and Movable Type . In
897-824: A subset of Latin. In 2005, a group of Perl developers who also had an interest in JavaScript got together to create JSAN , the JavaScript Archive Network. The JSAN is a near-direct port of the CPAN infrastructure for use with the JavaScript language, which for most of its lifespan did not have a cohesive "community". In 2008, after a chance meeting with CPAN admin Adam Kennedy at the Open Source Developers Conference, Linux kernel developer Rusty Russell created
966-432: A version number – sometimes the same as the version number of the software that wrote it; other times a "protocol version number" independent of the software version number. The code to handle old deprecated protocols and file formats is often seen as cruft . Software in the experimental stage ( alpha or beta ) often uses a zero in the first ("major") position of the sequence to designate its status. However, this scheme
1035-404: Is a popular location to store the source for distributions, it may be stored anywhere the author prefers, or may not be publicly accessible at all. Maintainers may grant permissions to others to maintain or take over their modules, and permissions may be granted by admins for those wishing to take over abandoned modules. Previous versions of updated distributions are retained on CPAN until deleted by
1104-611: Is active in the TeX community since 1983 and ran one of the largest ftp servers in Germany at that time.) CTAN was built in 1992, by Rainer Schöpf and Joachim Schrod in Germany, Sebastian Rahtz in the UK, and George Greenwade in the U.S. (George came up with the name). Today, there are still only four people who maintain the archives and the TeX catalogue updates: Erik Braun, Ina Dau, Manfred Lotz, and Petra Ruebe-Pugliese. The site structure
1173-525: Is also provided in the Perl core, and is the usual way of running CPAN.pm. After a short configuration process and mirror selection, it uses tools available on the user's computer to automatically download, unpack, compile, test, and install modules. It can also self-update. An effort to replace CPAN.pm with something cleaner and more modern resulted in the CPANPLUS (or CPAN++) set of modules. CPANPLUS separates
1242-414: Is based on the significance of the changes from the previous release, whereby the first sequence is changed for the most significant changes, and changes to sequences after the first represent changes of decreasing significance. Depending on the scheme, significance may be assessed by lines of code changed, function points added or removed, the potential impact on customers in terms of work required to adopt
1311-482: Is in the CPAN. It has been called Perl's killer app . It is roughly equivalent to Composer for PHP ; the PyPI (Python Package Index) repository for Python ; RubyGems for Ruby ; CRAN for R ; npm for Node.js ; LuaRocks for Lua ; Maven for Java ; and Hackage for Haskell . CPAN's use of arbitrated name spaces, a testing regime and a well defined documentation style makes it unique. Given its importance to
1380-585: Is internally versioned as MS-DOS 7.00 and Windows 4.00; likewise, Windows 2000 is internally versioned as NT 5.0. The Python Software Foundation has published PEP 440 – Version Identification and Dependency Specification, outlining their own flexible scheme, that defines an epoch segment, a release segment, pre-release and post-release segments and a development release segment. TeX has an idiosyncratic version numbering system, an unusual feature invented by its developer Donald Knuth . Since version 3.1, updates have been indicated by adding an extra digit at
1449-503: Is not enforced. CPAN module distributions usually have names in the form of CGI-Application-3.1 (where the :: used in the module's name has been replaced with a dash, and the version number has been appended to the name), but this is only a convention; many prominent distributions break the convention, especially those that contain multiple modules. Security restrictions prevent a distribution from ever being replaced with an identical filename, so virtually all distribution names do include
SECTION 20
#17327719464681518-587: Is only useful for the early stages, not for upcoming releases with established software where the version number has already progressed past 0. A number of schemes are used to denote the status of a newer release: The two purely numeric forms removes the special logic required to handle the comparison of "alpha < beta < rc < no prefix" as found in semantic versioning, at the cost of clarity. There are two schools of thought regarding how numeric version numbers are incremented. Most free and open-source software packages, including MediaWiki , treat versions as
1587-407: Is sometimes a fourth, unpublished number which denotes the software build (as used by Microsoft ). Adobe Flash is a notable case where a four-part version number is indicated publicly, as in 10.1.53.64. Some companies also include the build date. Version numbers may also include letters and other characters, such as Lotus 1-2-3 Release 1a. Some projects use negative version numbers. One example
1656-566: Is the SmartEiffel compiler which started from −1.0 and counted upwards to 0.0. Many projects use a date-based versioning scheme called Calendar Versioning (aka CalVer ). Ubuntu is one example of a project using calendar versioning; Ubuntu 18.04, for example, was released in April 2018. This has the advantage of being easily relatable to development schedules and support timelines. Some video games also use date as versioning, for example
1725-411: Is the extent of the commonality; schemes vary widely in areas such as the number of sequences, the attribution of meaning to individual sequences, and the means of incrementing the sequences. In some schemes, sequence-based identifiers are used to convey the significance of changes between releases. Changes are classified by significance level, and the decision of which sequence to change between releases
1794-464: Is to help programmers locate modules and programs not included in the Perl standard distribution. Its structure is decentralized. Authors maintain and improve their own modules. Forking, and creating competing modules for the same task or purpose, is common. There is a third-party bug tracking system that is automatically set up for any uploaded distribution, but authors may opt to use a different bug tracking system such as GitHub . Similarly, though GitHub
1863-452: Is used to allow the versioning scheme to be changed. In some cases, developers may decide to reset the major version number. This is sometimes used to denote a new development phase being released. For example, Minecraft Alpha ran from version 1.0.0 to 1.2.6, and when Beta was released, it reset the major version number and ran from 1.0 to 1.8. Once the game was fully released, the major version number again reset to 1.0.0. When printed,
1932-457: The MiKTeX distribution of TeX, constantly mirror most of CTAN. Before CTAN there were a number of people who made some TeX materials available for public download, but there was no systematic collection. At a podium discussion that Joachim Schrod organized at the 1991 EuroTeX conference, the idea arose to bring together the separate collections. (Joachim was interested in this topic because he
2001-477: The arcade game Street Fighter EX . At startup it displays the version number as a date plus a region code, for example 961219 ASIA . When using dates in versioning, for instance, file names, it is common to use the ISO 8601 scheme YYYY-MM-DD , as this is easily string-sorted in increasing or decreasing order. The hyphens are sometimes omitted. The Wine project formerly used a date versioning scheme, which used
2070-681: The American and the German sites have moved thrice. The American site was first at Sam Houston State University under George Greenwade, in 1995 it moved to UMass Boston where it was run by Karl Berry . In 1999 it moved to Saint Michael's College in Colchester , Vermont . There it was announced to go off-line in the end of January 2011. Since January 2013, a mirror has been hosted by the University of Utah (no upload node). The German site
2139-616: The CCAN, the Comprehensive C Archive Network. The CCAN is a direct port of the CPAN architecture for use with the C language . CRAN, the Comprehensive R Archive Network, is a set of mirrors hosting the R language distribution(s), documentation, and contributed extensions. CTAN CTAN (an acronym for " Comprehensive TeX Archive Network ") is the authoritative place where TeX related material and software can be found for download. Repositories for other projects, such as
CPAN - Misplaced Pages Continue
2208-454: The CPAN are referred to as distributions . A distribution may consist of one or more modules, documentation files, or programs packaged in a common archiving format, such as a gzipped tar archive or a ZIP file. Distributions will often contain installation scripts (usually called Makefile.PL or Build.PL ) and test scripts which can be run to verify the contents of the distribution are functioning properly. New distributions are uploaded to
2277-483: The CPAN through the Perl Authors Upload Server (PAUSE). To do so, they must request a PAUSE account. Once registered, they may use a web interface at pause.perl.org , or an FTP interface to upload files to their directory and delete them. Modules in the upload will only be indexed as canonical if the module name has not been used before (granting first-come permission to the uploader), or if
2346-518: The CPAN. The official search .cpan .org includes textual search, a browsable index of modules, and extracted copies of all distributions currently on the CPAN. On 16 May 2018, the Perl Foundation announced that search.cpan.org would be shut down on 29 June 2018 (after 19 years of operation), due to its aging codebase and maintenance burden. Users will be transitioned and redirected to the third-party alternative MetaCPAN. CPAN Testers are
2415-483: The OS only incremented build number and update build revision (UBR) number. The successor of Windows 10, Windows 11 , was released on October 5, 2021. Despite being named "11", the new Windows release didn't bump its major version number to 11. Instead, it stayed at the same version number of 10.0, used by Windows 10. Some software producers use different schemes to denote releases of their software. The Debian project uses
2484-470: The Perl interpreter when it is first compiled ; on Unix-like operating systems , common paths include /usr/lib/perl5 , /usr/local/lib/perl5 , and several of their subdirectories. Perl comes with a small set of core modules . Some of these perform bootstrapping tasks, such as ExtUtils::MakeMaker, which is used to create Makefiles for building and installing other extension modules; others, like List::Util, are merely commonly used. CPAN's main purpose
2553-536: The Perl Authors Upload Server, or PAUSE (see the section Uploading distributions with PAUSE ). In 2003, distributions started to include metadata files, called META. yml , indicating the distribution's name, version, dependencies, and other useful information; however, not all distributions contain metadata. When metadata is not present in a distribution, the PAUSE's software will try to analyze
2622-510: The Perl developer community, the CPAN both shapes and is shaped by Perl's culture . Its "self-appointed master librarian", Jarkko Hietaniemi , often takes part in the April Fools' Day jokes; on 1 April 2002 the site was temporarily named to CJAN , where the "J" stood for "Java". In 2003, the www.cpan.org domain name was redirected to Matt's Script Archive , a site infamous in the Perl community for having badly written code. Some of
2691-413: The back-end work of downloading, compiling, and installing modules from the interactive shell used to issue commands. It supports several advanced features, such as cryptographic signature checking, test result reporting, and uninstalling a distribution. CPANPLUS was added to the Perl core in version 5.10.0, and removed from it in version 5.20.0. A smaller, leaner modern alternative to these CPAN installers
2760-583: The code in the distribution to look for the same information; this is not necessarily very reliable. In 2010, version 2 of this specification was created to be used via a new file called META. json , with the YAML format file often also included for backward compatibility . With thousands of distributions, CPAN needs to be structured to be useful. Authors often place their modules in the natural hierarchy of Perl module names (such as Apache::DBI or Lingua::EN::Inflect ) according to purpose or domain, though this
2829-538: The decimal scheme, 1.81 is the minor version following 1.8, while maintenance releases (i.e. bug fixes only) may be denoted with an alphabetic suffix, such as 1.81a or 1.81b. The standard GNU version numbering scheme is major.minor.revision, but Emacs is a notable example using another scheme where the major number (1) was dropped and a user site revision was added which is always zero in original Emacs packages but increased by distributors. Similarly, Debian package numbers are prefixed with an optional "epoch", which
CPAN - Misplaced Pages Continue
2898-486: The distributions on the CPAN are distributed as jokes. The Acme :: hierarchy is reserved for joke modules; for instance, Acme::Don't adds a don't function that doesn't run the code given to it (to complement the do built-in, which does). Even outside the Acme:: hierarchy, some modules are still written largely for amusement; one example is Lingua::Romana::Perligata , which can be used to write Perl programs in
2967-431: The end, so that the version number asymptotically approaches the number π . (This is a form of unary numbering ; the version number is the number of digits.) As of February 2021, the version number is 3.141592653. This is a reflection of TeX being very stable, and only minor updates are anticipated. TeX developer Donald Knuth has stated that the "absolutely final change (to be made after [his] death)" will be to change
3036-478: The first released version of a software product has version 1. Some projects use the major version number to indicate incompatible releases. Two examples are Apache Portable Runtime (APR) and the FarCry CMS. Often programmers write new software to be backward compatible , i.e., the new software is designed to interact correctly with older versions of the software (using old protocols and file formats) and
3105-493: The main CTAN nodes serve downloads of more than 6 TB per month, not counting its 94 mirror sites worldwide. Version number Software versioning is the process of assigning either unique version names or unique version numbers to unique states of computer software. Within a given version number category (e.g., major or minor), these numbers are generally assigned in increasing order and correspond to new developments in
3174-516: The major release number, such as 19999.00071 for alpha 1 of version 20000, and 29999.50000 for beta 2 of version 30000. Starting at 9001 in 2003, the most recent version as of 2011 is 140000. Urbit uses Kelvin versioning (named after the absolute Kelvin temperature scale): software versions start at a high number and count down to version 0, at which point the software is considered finished and no further modifications are made. Software may have an "internal" version number which differs from
3243-534: The measures of significance. Breaking changes are indicated by increasing the major number (high risk); new, non-breaking features increment the minor number (medium risk); and all other non-breaking changes increment the patch number (lowest risk). The presence of a pre-release tag (-alpha, -beta) indicates substantial risk, as does a major number of zero (0.y.z), which is used to indicate a work-in-progress that may contain any level of potentially breaking changes (highest risk). As an example of inferring compatibility from
3312-451: The most recent version (using the latest protocols and file formats). For example, IBM z/OS is designed to work properly with 3 consecutive major versions of the operating system running in the same sysplex. This enables people who run a high availability computer cluster to keep most of the computers up and running while one machine at a time is shut down, upgraded, and restored to service. Often packet headers and file format include
3381-401: The next major release was not 11.0. Instead, it was numbered 10.1, followed by 10.2, 10.3, and so on for each subsequent major release. Thus the 11th major version of OS X was labeled "10.10". Even though the "X" was dropped from the name as of macOS 10.12 , this numbering scheme continued through macOS 10.15. Under the "X"-based versioning scheme, the third number (instead of the second) denoted
3450-437: The products were not upgrades to previous versions, but brand-new programs. As with OS X, major releases for these programs incremented the second digit and minor releases were denoted using a third digit. The "X" was dropped from Final Cut's name with the release of macOS 11.0 (see below), and QuickTime's branding became moot when the framework was deprecated in favor of AVFoundation in 2011 (the program for playing QuickTime video
3519-517: The release type, e.g. "alpha" (a), "beta" (b), or "release candidate" (rc). A software release train using this approach might look like 0.5, 0.6, 0.7, 0.8, 0.9 → 1.0b1, 1.0b2 (with some fixes), 1.0b3 (with more fixes) → 1.0rc1 (which, if it is stable enough ), 1.0rc2 (if more bugs are found) → 1.0. It is a common practice in this scheme to lock out new features and breaking changes during the release candidate phases and, for some teams, even betas are locked down to bug fixes only, to ensure convergence on
SECTION 50
#17327719464683588-459: The release was "more significant". Thus, "8.5" was marketed as its own release, representing "Mac OS 8 and a half", and 8.6 effectively meant "8.5.1". Mac OS X departed from this trend, in large part because "X" (the Roman numeral for 10) was in the name of the product. As a result, all versions of OS X began with the number 10. The first major release of OS X was given the version number 10.0, but
3657-488: The sequences may be separated with characters. The choice of characters and their usage varies by the scheme. The following list shows hypothetical examples of separation schemes for the same release (the thirteenth third-level revision to the fourth second-level revision to the second first-level revision): When a period is used to separate sequences, it may or may not represent a decimal point—see " Incrementing sequences " section for various interpretation styles. There
3726-417: The software. At a fine-grained level, revision control is used for keeping track of incrementally-different versions of information, whether or not this information is computer software, in order to be able to roll any changes back. Modern computer software is often tracked using two different software versioning schemes: an internal version number that may be incremented many times in a single day, such as
3795-666: The target release. Other schemes impart meaning on individual sequences: Again, in these examples, the definition of what constitutes a "major" as opposed to a "minor" change is entirely subjective and up to the author, as is what defines a "build", or how a "revision" differs from a "minor" change. Shared libraries in Solaris and Linux may use the current.revision.age format where: A similar problem of relative change significance and versioning nomenclature exists in book publishing, where edition numbers or names can be chosen based on varying criteria. In most proprietary software,
3864-432: The uploader has permission for that name, and if the module is a higher version than any existing entry. This can be specified through PAUSE's web interface. There is also a Perl core module named CPAN; it is usually differentiated from the repository itself by using the name CPAN.pm. CPAN.pm is mainly an interactive shell which can be used to search for, download, and install distributions. An interactive shell called cpan
3933-487: The uploader, and a secondary mirror network called BackPAN retains distributions even if they are deleted from CPAN. Also, the complete history of the CPAN and all its modules is available as the GitPAN project, allowing to easily see the complete history for all the modules and for easy maintenance of forks. CPAN is also used to distribute new versions of Perl, as well as related projects, such as Parrot and Raku . Files on
4002-512: The value of the upgrade to the software user or, as in Adobe's case, to represent a release halfway between major versions (although levels of sequence-based versioning are not necessarily limited to a single digit, as in Blender version 2.91 or Minecraft Java Edition starting from 1.7.10). A different approach is to use the major and minor numbers along with an alphanumeric string denoting
4071-565: The version number from the product name. For Windows 95 (version 4.0), Windows 98 (4.10) and Windows 2000 (5.0), year of the release was included in the product title. After Windows 2000, Microsoft created the Windows Server family which continued the year-based style with a difference: For minor releases, Microsoft suffixed "R2" to the title, e.g., Windows Server 2008 R2 (version 6.1). This style had remained consistent to this date. The client versions of Windows however did not adopt
4140-622: The version number shown in the product name (and which typically follows version numbering rules more consistently). Java SE 5.0, for example, has the internal version number of 1.5.0, and versions of Windows from NT 4 on have continued the standard numerical versions internally: Windows 2000 is NT 5.0, XP is Windows NT 5.1, Windows Server 2003 and Windows XP Professional x64 Edition are NT 5.2, Windows Server 2008 and Vista are NT 6.0, Windows Server 2008 R2 and Windows 7 are NT 6.1, Windows Server 2012 and Windows 8 are NT 6.2, and Windows Server 2012 R2 and Windows 8.1 are NT 6.3. Windows 10
4209-492: The version number to π , at which point all remaining bugs will become permanent features. In a similar way, the version number of Metafont asymptotically approaches Euler's number, e . As of February 2021, the version number is 2.71828182. Metafont was also devised by Donald Knuth as a companion to his TeX typesetting system. During the era of the classic Mac OS , minor version numbers rarely went beyond ".1". When they did, they usually jumped straight to ".5", suggesting
SECTION 60
#17327719464684278-509: The year followed by the month followed by the day of the release; for example, "Wine 20040505". Minecraft had a similar version formatting, but instead used DDHHMM, ex: rd-132211, 13 being the 13th of May, and 2211 being 22:11. Microsoft Office build numbers are an encoded date: the first two digits indicate the number of months that have passed from the January of the year in which the project started (with each major Office release being
4347-422: Was developed called cpanminus. cpanminus was designed to have a much smaller memory footprint as often required in limited memory environments, and to be usable as a standalone script such that it can even install itself, requiring only the expected set of core Perl modules to be available. It is also available from CPAN as the module App::cpanminus, which installs the cpanm script. It does not maintain or rely on
4416-529: Was first at the University of Heidelberg , operated by Rainer; in 1999 it moved to the University of Mainz , also operated by Rainer; 2002 to the University of Hamburg , operated by Reinhard Zierke; finally in 2005 it moved to a commercial hosting company since the amount of traffic got too high to get sponsored by a university. The German site is subsidized by DANTE, the Deutschsprachige Anwendervereinigung TeX . Today,
4485-434: Was initially intended to be NT 6.4, as the earliest Technical Preview build shared to the public is numbered 6.4.9841. However, that did not last as the version of Windows 10 was quickly artificially increased to 10.0 to align with the commercial name, resulting in the first released version of the operating system being numbered 10.0.10240. Note, however, that Windows NT is only on its fifth major revision, as its first release
4554-425: Was newer than the required one. A variety of version numbering schemes have been created to keep track of different versions of a piece of software. The ubiquity of computers has also led to these schemes being used in contexts outside computing. In sequence-based software versioning schemes, each software release is assigned a unique identifier that consists of one or more sequences of numbers or letters. This
4623-648: Was only named QuickTime Player from the start). Apple's next macOS release, provisionally numbered 10.16, was officially announced as macOS 11 at WWDC in June 2020, and released in November 2020. The following macOS version, macOS Monterey , was released in October 2021 and bumped its major version number to 12. The Microsoft Windows operating system was first labelled with standard version numbers for Windows 1.0 through Windows 3.11 . After this Microsoft excluded
4692-471: Was put together at the start of 1992 – Sebastian did the main work – and synchronized at the start of 1993. The TeX Users Group provided a framework, a Technical Working Group, for this task's organization. CTAN was officially announced at the EuroTeX conference at Aston University , 1993. The WEB server itself is maintained by Gerd Neugebauer. The English site has been stable since the beginning, but both
4761-422: Was that a package knew other packages which depended on it. From 1994 on this idea was inverted, so a package that knew the packages it needed. When installing a package, dependency resolution was used to automatically calculate the packages needed as well, and install them with the desired package. To facilitate upgrades, minimum package versions were introduced. Thus the numbering scheme needed to tell which version
#467532