Curl 8 Is Here On Curl's 25th Birthday
Written by Sue Gee   
Monday, 20 March 2023

To mark 25 years since it was first released on March 20, 1998 curl 8.0.0 has shipped today, something that its originator and lead maintainer Daniel Stenberg, aka Badger, had said would never happen.

curl, which stands for "Client for URL", is a command line tool and library for transferring data with URLs. It is free and open source software and according to its website is used daily by every Internet-using human on the planet.

curlbanner

In today's blog post marking its 25th Birthday, Swedish developer Daniel Stenberg recalls:

The curl project started out very humbly as a small renamed URL transfer tool that almost nobody knew about for the first few years.

I made that first curl release and I’ve packaged every single release since.

He also recounts how curl came about:

My internet transfer journey started in late 1996 when I downloaded httpget 0.1 to automatically download currency rates daily to make my currency exchange converter work correctly for my IRC bot. httpget had some flaws so I sent back fixes, but Rafael, the author, quickly decided I could rather take over maintenance of the thing. So I did.

At  its initial release the newly renamed curl 4.0 was already 2,200 lines of code. It had 24 command line options and only supported only HTTP, GOPHER and FTP, with support for HTTPS and TELNET being added with the year.

Commenting on its subsequent development Stenberg says:

The concept behind curl development has always been to gradually and iteratively improve all aspects of it. Keep behavior, but enhance the code, add test cases, improve the documentation. Over and over, year after year. It never stops. 

He also notes the almost unremarked manner in which curl has came the invaluable, ubiquitous tool it is today:

There was no sudden specific moment when suddenly curl became popular and the number of users skyrocketed. Instead, the number of users and the popularity of the tool and library has gradually and continuously grown. In 1998 there were few users. By 2010 there were hundreds of millions.

We really have no idea exactly how many users or installations of libcurl there are now. It is easy to estimate that it runs in way more than ten billion installations purely based on the fact that there are 7 billion smart phones and 1 billion tablets in the world , and we know that each of them run at least one, but likely many more curl installs.

 

It was in 2013 that Stenberg posted "Why No curl 8" in which he stated:

there won’t be any version 8 of curl and libcurl in a long time. 

At that time curl had seen 29 minor releases and many more patch releases since the the major version release of curl 7.0.0 in August 2000 and, given that the numbering scheme could accommodate 255 minor versions. Stenberg saw no reason to bump the major version.

Ten years on, however, curl's 25th anniversary has been seen as a good reason to release a major version, even though there are no breaking changes that would normally merit such a shift. So instead of moving to curl 7.89.0, which isn't a pretty number, today's release, which is also release the 215th release of curl in 25 years, is  curl 8.0.0. It brings with it six security advisories, one change and 130 bugfixes. If you want the details they are outlined by Stenberg in this video:

Somewhat ironically today has also seen the release of curl 8.0.1. In his latest posr curl 8.0.1 because I jinxed it, also dated March 20, Stenberg explains that his comment that he must have tempted fate in describing version 8.0.0 as a "good release". In fact it included a bug that caused it to crash and so 8.0.1 has been shipped with a single commit reverted.

curl25

More Information

curl 8.0.0 is here

Twenty-five years of curl

Related Articles

Curl Boosted By Donation

Creator of cURL Awarded Prestigious Swedish Prize

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

Banner


Extend NGINX With The New JavaScript Module
28/10/2024

Inject middleware functionality into NGINX with the expressive power of Javascript. NGINX JavaScript or NJS for short is a dynamic module under which you can use scripting for hooking into the NGINX e [ ... ]



IBM Opensources AI Agents For GitHub Issues
14/11/2024

IBM is launching a new set of AI software engineering agents designed to autonomously resolve GitHub issues. The agents are being made available in an open-source licensing model.


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Monday, 20 March 2023 )