Loading docs/CONTRIBUTE.md +13 −13 Original line number Diff line number Diff line Loading @@ -83,14 +83,14 @@ It is annoying when you get a huge patch from someone that is said to fix 511 odd problems, but discussions and opinions don't agree with 510 of them - or 509 of them were already fixed in a different way. Then the person merging this change needs to extract the single interesting patch from somewhere within the huge pile of source, and that gives a lot of extra work. within the huge pile of source, and that creates a lot of extra work. Preferably, each fix that correct a problem should be in its own patch/commit Preferably, each fix that corrects a problem should be in its own patch/commit with its own description/commit message stating exactly what they correct so that all changes can be selectively applied by the maintainer or other interested parties. Also, separate changes enable bisecting much better when we track problems Also, separate changes enable bisecting much better for tracking problems and regression in the future. ### Patch Against Recent Sources Loading @@ -103,9 +103,9 @@ release archive is quite OK as well! ### Documentation Writing docs is dead boring and one of the big problems with many open source projects. Someone's gotta do it. It makes it a lot easier if you submit a small description of your fix or your new features with every contribution so that it can be swiftly added to the package documentation. projects. But someone's gotta do it! It makes things a lot easier if you submit a small description of your fix or your new features with every contribution so that it can be swiftly added to the package documentation. The documentation is always made in man pages (nroff formatted) or plain ASCII files. All HTML files on the web site and in the release archives are Loading Loading @@ -135,8 +135,8 @@ list](https://curl.haxx.se/mail/list.cgi?list=curl-library). Either way, your change will be reviewed and discussed there and you will be expected to correct flaws pointed out and update accordingly, or the change risk stalling and eventually just get deleted without action. As a submitter of a change, you are the owner of that change until it has been merged. risks stalling and eventually just getting deleted without action. As a submitter of a change, you are the owner of that change until it has been merged. Respond on the list or on github about the change and answer questions and/or fix nits/flaws. This is very important. We will take lack of replies as a Loading @@ -151,14 +151,14 @@ changes merged. We prefer pull requests to mailed patches, as it makes it a proper git commit that is easy to merge and they are easy to track and not that easy to loose in a flood of many emails, like they sometimes do on the mailing lists. in the flood of many emails, like they sometimes do on the mailing lists. When you adjust your pull requests after review, consider squashing the commits so that we can review the full updated version more easily. ### Making quality patches Make the patch against as recent sources as possible. Make the patch against as recent source versions as possible. If you've followed the tips in this document and your patch still hasn't been incorporated or responded to after some weeks, consider resubmitting it to Loading Loading @@ -204,8 +204,8 @@ local repository: git commit [file] As usual, group your commits so that you commit all changes that at once that constitutes a logical change. As usual, group your commits so that you commit all changes at once that constitute a logical change. Once you have done all your commits and you're happy with what you see, you can make patches out of your changes that are suitable for mailing: Loading docs/HISTORY.md +42 −43 Original line number Diff line number Diff line Loading @@ -4,11 +4,11 @@ How curl Became Like This Towards the end of 1996, Daniel Stenberg was spending time writing an IRC bot for an Amiga related channel on EFnet. He then came up with the idea to make currency-exchange calculations available to Internet Relay Chat (IRC) users. All the necessary data are published on the Web; he just needed to users. All the necessary data were published on the Web; he just needed to automate their retrieval. Daniel simply adopted an existing command-line open-source tool, httpget, that Brazilian Rafael Sagula had written and recently release version 0.1 of. After Brazilian Rafael Sagula had written and recently released version 0.1 of. After a few minor adjustments, it did just what he needed. 1997 Loading @@ -35,14 +35,14 @@ was revealed to us much later.) SSL support was added, powered by the SSLeay library. August, first announcement of curl on freshmeat.net. August: first announcement of curl on freshmeat.net. October, with the curl 4.9 release and the introduction of cookie support, October: with the curl 4.9 release and the introduction of cookie support, curl was no longer released under the GPL license. Now we're at 4000 lines of code, we switched over to the MPL license to restrict the effects of "copyleft". November, configure script and reported successful compiles on several November: configure script and reported successful compiles on several major operating systems. The never-quite-understood -F option was added and curl could now simulate quite a lot of a browser. TELNET support was added. Loading @@ -52,30 +52,30 @@ page. People started making Linux RPM packages out of it. 1999 ---- January, DICT support added. January: DICT support added. OpenSSL took over where SSLeay was abandoned. OpenSSL took over and SSLeay was abandoned. May, first Debian package. May: first Debian package. August, LDAP:// and FILE:// support added. The curl web site gets 1300 visits August: LDAP:// and FILE:// support added. The curl web site gets 1300 visits weekly. Moved site to curl.haxx.nu. Released curl 6.0 in September. 15000 lines of code. September: Released curl 6.0. 15000 lines of code. December 28, added the project on Sourceforge and started using its services December 28: added the project on Sourceforge and started using its services for managing the project. 2000 ---- Spring 2000, major internal overhaul to provide a suitable library interface. Spring: major internal overhaul to provide a suitable library interface. The first non-beta release was named 7.1 and arrived in August. This offered the easy interface and turned out to be the beginning of actually getting other software and programs to get based on and powered by libcurl. Almost other software and programs to be based on and powered by libcurl. Almost 20000 lines of code. June 2000: the curl site moves to "curl.haxx.se" June: the curl site moves to "curl.haxx.se" August, the curl web site gets 4000 visits weekly. Loading @@ -84,41 +84,40 @@ party libcurl binding showed up. CURL has been a supported module in PHP since the release of PHP 4.0.2. This would soon get followers. More than 16 different bindings exist at the time of this writing. September, kerberos4 support was added. September: kerberos4 support was added. In November started the work on a test suite for curl. It was later re-written November: started the work on a test suite for curl. It was later re-written from scratch again. The libcurl major SONAME number was set to 1. 2001 ---- January, Daniel released curl 7.5.2 under a new license again: MIT (or MPL). The MIT license is extremely liberal and can be used combined with GPL January: Daniel released curl 7.5.2 under a new license again: MIT (or MPL). The MIT license is extremely liberal and can be combined with GPL in other projects. This would finally put an end to the "complaints" from people involved in GPLed projects that previously were prohibited from using libcurl while it was released under MPL only. (Due to the fact that MPL is deemed "GPL incompatible".) curl supports HTTP 1.1 starting with the release of 7.7, March 22 2001. This March 22: curl supports HTTP 1.1 starting with the release of 7.7. This also introduced libcurl's ability to do persistent connections. 24000 lines of code. The libcurl major SONAME number was bumped to 2 due to this overhaul. The first experimental ftps:// support was added. The first experimental ftps:// support was added in March 2001. August. curl is bundled in Mac OS X, 10.1. It was already becoming more and August: curl is bundled in Mac OS X, 10.1. It was already becoming more and more of a standard utility of Linux distributions and a regular in the BSD ports collections. The curl web site gets 8000 visits weekly. Curl Corporation contacted Daniel to discuss "the name issue". After Daniel's reply, they have never since got in touch again. never since got back in touch again. September, libcurl 7.9 introduces cookie jar and curl_formadd(). During the September: libcurl 7.9 introduces cookie jar and curl_formadd(). During the forthcoming 7.9.x releases, we introduced the multi interface slowly and without much whistles. without many whistles. 2002 ---- June, the curl web site gets 13000 visits weekly. curl and libcurl is June: the curl web site gets 13000 visits weekly. curl and libcurl is 35000 lines of code. Reported successful compiles on more than 40 combinations of CPUs and operating systems. Loading @@ -127,15 +126,15 @@ impossible. Around 5000 downloaded packages each week from the main site gives a hint, but the packages are mirrored extensively, bundled with numerous OS distributions and otherwise retrieved as part of other software. September, with the release of curl 7.10 it is released under the MIT license September: with the release of curl 7.10 it is released under the MIT license only. 2003 ---- January. Started working on the distributed curl tests. The autobuilds. January: Started working on the distributed curl tests. The autobuilds. February, the curl site averages at 20000 visits weekly. At any given moment, February: the curl site averages at 20000 visits weekly. At any given moment, there's an average of 3 people browsing the curl.haxx.se site. Multiple new authentication schemes are supported: Digest (May), NTLM (June) Loading @@ -144,7 +143,7 @@ and Negotiate (June). November: curl 7.10.8 is released. 45000 lines of code. ~55000 unique visitors to the curl.haxx.se site. Five official web mirrors. December, full-fledged SSL for FTP is supported. December: full-fledged SSL for FTP is supported. 2004 ---- Loading @@ -169,7 +168,7 @@ August: Curl and libcurl 7.12.1 2005 ---- April. GnuTLS can now optionally be used for the secure layer when curl is April: GnuTLS can now optionally be used for the secure layer when curl is built. April: Added the multi_socket() API Loading @@ -183,8 +182,8 @@ December: security vulnerability: libcurl URL Buffer Overflow 2006 ---- January. We dropped support for Gopher. We found bugs in the implementation that turned out having been introduced years ago, so with the conclusion that January: We dropped support for Gopher. We found bugs in the implementation that turned out to have been introduced years ago, so with the conclusion that nobody had found out in all this time we removed it instead of fixing it. March: security vulnerability: libcurl TFTP Packet Buffer Overflow Loading Loading @@ -246,7 +245,7 @@ August: Known libcurl bindings: 39 Contributors: 808 Gopher support added (re-added actually) Gopher support added (re-added actually, see January 2006) 2012 ---- Loading docs/README.md +2 −2 Original line number Diff line number Diff line Loading @@ -3,10 +3,10 @@ # Documentation You'll find a mix of various documentation in this directory and subdirectories, using several different formats. Some of them are not ideally subdirectories, using several different formats. Some of them are not ideal for reading directly in your browser. If you rather see the rendered version of the documentation, check out the If you'd rather see the rendered version of the documentation, check out the curl web site's [documentation section](https://curl.haxx.se/docs/) for general curl stuff or the [libcurl section](https://curl.haxx.se/libcurl/) for libcurl related documentation. Loading
docs/CONTRIBUTE.md +13 −13 Original line number Diff line number Diff line Loading @@ -83,14 +83,14 @@ It is annoying when you get a huge patch from someone that is said to fix 511 odd problems, but discussions and opinions don't agree with 510 of them - or 509 of them were already fixed in a different way. Then the person merging this change needs to extract the single interesting patch from somewhere within the huge pile of source, and that gives a lot of extra work. within the huge pile of source, and that creates a lot of extra work. Preferably, each fix that correct a problem should be in its own patch/commit Preferably, each fix that corrects a problem should be in its own patch/commit with its own description/commit message stating exactly what they correct so that all changes can be selectively applied by the maintainer or other interested parties. Also, separate changes enable bisecting much better when we track problems Also, separate changes enable bisecting much better for tracking problems and regression in the future. ### Patch Against Recent Sources Loading @@ -103,9 +103,9 @@ release archive is quite OK as well! ### Documentation Writing docs is dead boring and one of the big problems with many open source projects. Someone's gotta do it. It makes it a lot easier if you submit a small description of your fix or your new features with every contribution so that it can be swiftly added to the package documentation. projects. But someone's gotta do it! It makes things a lot easier if you submit a small description of your fix or your new features with every contribution so that it can be swiftly added to the package documentation. The documentation is always made in man pages (nroff formatted) or plain ASCII files. All HTML files on the web site and in the release archives are Loading Loading @@ -135,8 +135,8 @@ list](https://curl.haxx.se/mail/list.cgi?list=curl-library). Either way, your change will be reviewed and discussed there and you will be expected to correct flaws pointed out and update accordingly, or the change risk stalling and eventually just get deleted without action. As a submitter of a change, you are the owner of that change until it has been merged. risks stalling and eventually just getting deleted without action. As a submitter of a change, you are the owner of that change until it has been merged. Respond on the list or on github about the change and answer questions and/or fix nits/flaws. This is very important. We will take lack of replies as a Loading @@ -151,14 +151,14 @@ changes merged. We prefer pull requests to mailed patches, as it makes it a proper git commit that is easy to merge and they are easy to track and not that easy to loose in a flood of many emails, like they sometimes do on the mailing lists. in the flood of many emails, like they sometimes do on the mailing lists. When you adjust your pull requests after review, consider squashing the commits so that we can review the full updated version more easily. ### Making quality patches Make the patch against as recent sources as possible. Make the patch against as recent source versions as possible. If you've followed the tips in this document and your patch still hasn't been incorporated or responded to after some weeks, consider resubmitting it to Loading Loading @@ -204,8 +204,8 @@ local repository: git commit [file] As usual, group your commits so that you commit all changes that at once that constitutes a logical change. As usual, group your commits so that you commit all changes at once that constitute a logical change. Once you have done all your commits and you're happy with what you see, you can make patches out of your changes that are suitable for mailing: Loading
docs/HISTORY.md +42 −43 Original line number Diff line number Diff line Loading @@ -4,11 +4,11 @@ How curl Became Like This Towards the end of 1996, Daniel Stenberg was spending time writing an IRC bot for an Amiga related channel on EFnet. He then came up with the idea to make currency-exchange calculations available to Internet Relay Chat (IRC) users. All the necessary data are published on the Web; he just needed to users. All the necessary data were published on the Web; he just needed to automate their retrieval. Daniel simply adopted an existing command-line open-source tool, httpget, that Brazilian Rafael Sagula had written and recently release version 0.1 of. After Brazilian Rafael Sagula had written and recently released version 0.1 of. After a few minor adjustments, it did just what he needed. 1997 Loading @@ -35,14 +35,14 @@ was revealed to us much later.) SSL support was added, powered by the SSLeay library. August, first announcement of curl on freshmeat.net. August: first announcement of curl on freshmeat.net. October, with the curl 4.9 release and the introduction of cookie support, October: with the curl 4.9 release and the introduction of cookie support, curl was no longer released under the GPL license. Now we're at 4000 lines of code, we switched over to the MPL license to restrict the effects of "copyleft". November, configure script and reported successful compiles on several November: configure script and reported successful compiles on several major operating systems. The never-quite-understood -F option was added and curl could now simulate quite a lot of a browser. TELNET support was added. Loading @@ -52,30 +52,30 @@ page. People started making Linux RPM packages out of it. 1999 ---- January, DICT support added. January: DICT support added. OpenSSL took over where SSLeay was abandoned. OpenSSL took over and SSLeay was abandoned. May, first Debian package. May: first Debian package. August, LDAP:// and FILE:// support added. The curl web site gets 1300 visits August: LDAP:// and FILE:// support added. The curl web site gets 1300 visits weekly. Moved site to curl.haxx.nu. Released curl 6.0 in September. 15000 lines of code. September: Released curl 6.0. 15000 lines of code. December 28, added the project on Sourceforge and started using its services December 28: added the project on Sourceforge and started using its services for managing the project. 2000 ---- Spring 2000, major internal overhaul to provide a suitable library interface. Spring: major internal overhaul to provide a suitable library interface. The first non-beta release was named 7.1 and arrived in August. This offered the easy interface and turned out to be the beginning of actually getting other software and programs to get based on and powered by libcurl. Almost other software and programs to be based on and powered by libcurl. Almost 20000 lines of code. June 2000: the curl site moves to "curl.haxx.se" June: the curl site moves to "curl.haxx.se" August, the curl web site gets 4000 visits weekly. Loading @@ -84,41 +84,40 @@ party libcurl binding showed up. CURL has been a supported module in PHP since the release of PHP 4.0.2. This would soon get followers. More than 16 different bindings exist at the time of this writing. September, kerberos4 support was added. September: kerberos4 support was added. In November started the work on a test suite for curl. It was later re-written November: started the work on a test suite for curl. It was later re-written from scratch again. The libcurl major SONAME number was set to 1. 2001 ---- January, Daniel released curl 7.5.2 under a new license again: MIT (or MPL). The MIT license is extremely liberal and can be used combined with GPL January: Daniel released curl 7.5.2 under a new license again: MIT (or MPL). The MIT license is extremely liberal and can be combined with GPL in other projects. This would finally put an end to the "complaints" from people involved in GPLed projects that previously were prohibited from using libcurl while it was released under MPL only. (Due to the fact that MPL is deemed "GPL incompatible".) curl supports HTTP 1.1 starting with the release of 7.7, March 22 2001. This March 22: curl supports HTTP 1.1 starting with the release of 7.7. This also introduced libcurl's ability to do persistent connections. 24000 lines of code. The libcurl major SONAME number was bumped to 2 due to this overhaul. The first experimental ftps:// support was added. The first experimental ftps:// support was added in March 2001. August. curl is bundled in Mac OS X, 10.1. It was already becoming more and August: curl is bundled in Mac OS X, 10.1. It was already becoming more and more of a standard utility of Linux distributions and a regular in the BSD ports collections. The curl web site gets 8000 visits weekly. Curl Corporation contacted Daniel to discuss "the name issue". After Daniel's reply, they have never since got in touch again. never since got back in touch again. September, libcurl 7.9 introduces cookie jar and curl_formadd(). During the September: libcurl 7.9 introduces cookie jar and curl_formadd(). During the forthcoming 7.9.x releases, we introduced the multi interface slowly and without much whistles. without many whistles. 2002 ---- June, the curl web site gets 13000 visits weekly. curl and libcurl is June: the curl web site gets 13000 visits weekly. curl and libcurl is 35000 lines of code. Reported successful compiles on more than 40 combinations of CPUs and operating systems. Loading @@ -127,15 +126,15 @@ impossible. Around 5000 downloaded packages each week from the main site gives a hint, but the packages are mirrored extensively, bundled with numerous OS distributions and otherwise retrieved as part of other software. September, with the release of curl 7.10 it is released under the MIT license September: with the release of curl 7.10 it is released under the MIT license only. 2003 ---- January. Started working on the distributed curl tests. The autobuilds. January: Started working on the distributed curl tests. The autobuilds. February, the curl site averages at 20000 visits weekly. At any given moment, February: the curl site averages at 20000 visits weekly. At any given moment, there's an average of 3 people browsing the curl.haxx.se site. Multiple new authentication schemes are supported: Digest (May), NTLM (June) Loading @@ -144,7 +143,7 @@ and Negotiate (June). November: curl 7.10.8 is released. 45000 lines of code. ~55000 unique visitors to the curl.haxx.se site. Five official web mirrors. December, full-fledged SSL for FTP is supported. December: full-fledged SSL for FTP is supported. 2004 ---- Loading @@ -169,7 +168,7 @@ August: Curl and libcurl 7.12.1 2005 ---- April. GnuTLS can now optionally be used for the secure layer when curl is April: GnuTLS can now optionally be used for the secure layer when curl is built. April: Added the multi_socket() API Loading @@ -183,8 +182,8 @@ December: security vulnerability: libcurl URL Buffer Overflow 2006 ---- January. We dropped support for Gopher. We found bugs in the implementation that turned out having been introduced years ago, so with the conclusion that January: We dropped support for Gopher. We found bugs in the implementation that turned out to have been introduced years ago, so with the conclusion that nobody had found out in all this time we removed it instead of fixing it. March: security vulnerability: libcurl TFTP Packet Buffer Overflow Loading Loading @@ -246,7 +245,7 @@ August: Known libcurl bindings: 39 Contributors: 808 Gopher support added (re-added actually) Gopher support added (re-added actually, see January 2006) 2012 ---- Loading
docs/README.md +2 −2 Original line number Diff line number Diff line Loading @@ -3,10 +3,10 @@ # Documentation You'll find a mix of various documentation in this directory and subdirectories, using several different formats. Some of them are not ideally subdirectories, using several different formats. Some of them are not ideal for reading directly in your browser. If you rather see the rendered version of the documentation, check out the If you'd rather see the rendered version of the documentation, check out the curl web site's [documentation section](https://curl.haxx.se/docs/) for general curl stuff or the [libcurl section](https://curl.haxx.se/libcurl/) for libcurl related documentation.