H2O is a very fast HTTP server written in C. It can also be used as a library.
It supports:
- HTTP/1.0, HTTP/1.1
- HTTP/2
- persistent connections
- chunked encoding
- negotiation methods: NPN, ALPN, Upgrade, direct
- dependency and weight-based prioritization
- server push
- TLS up to 1.3
- support OpenSSL and LibreSSL
- forward secrecy
- AEAD ciphers
- OCSP stapling (automatically enabled)
- session resumption (internal memory)
- conditional GET using last-modified / etag
- mime-type configuration
- reverse proxy
- websocket support
- embedded mruby interpreter for high speed custom functions
===> The following configuration options are available for h2o-20261006:
DOCS=on: Build and/or install documentation
MRUBY=on: Build with embedded mruby handler support
===> Use 'make config' to modify these settings
www/h2o: update to latest git snapshot 20240411
pet port
- fix build without ruby
- add new quicly includes
- let ports handle fusion CPU options
Differential Revision: https://reviews.freebsd.org/D44942
PR: 278101
Obtained from: diizzy
www/h2o*: meld devel flavour into main port
- upstream has indicated there will be no more versioned releases
- only master branch updates
- all remaining consumers of libh2o have moved to alternatives
*/*: Sunset 12.4-RELEASE/12-STABLE from ports tree
- Remove all references to defunct ARCH arm
- Remove all references to defunct ARCH sparc64
- Remove x11-drivers/xf86-video-sunffb which requires defunct sparc64
ARCH
- Remove sysutils/afbinit requires defunct sparc64 ARCH
- Remove all references to bktr driver
- Remove all references to defunct FreeBSD_12
- Remove all references to OSVERSION/OSREL corresponding to 12
- Remove conditionals in Mk/Uses/cabal.mk
- Remove sparc reference from Mk/Uses/qt-dist.mk
- Remove BROKEN_sparc64/NOT_FOR_ARCH=sparc64
- Remove BROKEN_FreeBSD_12* from:
- Remove OpenSSL patches from:
- Remove conditional flags for OSVERSION >= 1300000 to fixed flags.
Also move conditional flags for non sparc64/arm ARCH to fixed flags.
Reviewed by: brooks, jbeich, rene, salvadore
Differential Revision: https://reviews.freebsd.org/D42068
Mk/**ruby.mk: Switch from USE_RUBY=yes to USES=ruby
Switch from Mk/bsd.ruby.mk to Mk/Uses/ruby.mk
Notable changes are.
- Mk/bsd.ruby.mk is moved to Mk/Uses/ruby.mk.
- USE_RUBY=yes is replaced with USES=ruby.
- USE_RUBY_EXTCONF is replaced with USES=ruby:extconf.
- USE_RUBY_RDOC is replaced with USES=ruby:rdoc.
- USE_RUBY_SETUP is replaces with USES=ruby:setup.
- RUBY_NO_BUILD_DEPENDS and RUBY_NO_RUN_DEPENDS are replaced with
USES=ruby:{build,none,run}.
- RUBY_REQUIRE isn't used anywhere, so removed.
- USES=gem now implies USES=ruby.
This is mainly the work of yasu@ at https://reviews.freebsd.org/D27863
I have just made some cosmetic changes and ran exp-run to test that the
tree is not in a BROKEN state.
Approved by: portmgr
Differential Revision: https://reviews.freebsd.org/D37925
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
*/*: Remove redundant '-*' from CONFLICTS definitions
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Approved by: portmgr (blanket)
www/h2o*: set default http headers in samples, not add
This improves the default security posture of both h2o-flavoured ports.
Submitted by: Uwe Trenkner <uwe@trenknerconsulting.com>
Sponsored by: SkunkWerks, GmbH
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
h2o{,-devel}: Improve rc.d/h2o, freshen h2o.conf
rc.d/h2o:
- Add a configtest target
- Fix a bug that could prevent the script from locating the PIDfile path
h2o.conf:
- Remove entries that are defaults
PR: 238888
Approved by: maintainer (dch)
MFH: 2019Q2
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Bump PORTREVISION for ports depending on the canonical version of GCC
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
www/h2o: Unbreak: build and install libraries that this project builds by
default
Port changes:
* Remove -DWITHOUT_LIBS=ON: the project builds libs by default,
and has "it can also be used as a library" in its description.
If desired, the option NOLIBS can potentially be created.
* Remove stray -DEXTRA_LIBRARIES=OFF: EXTRA_LIBRARIES doesn't exist in the
CMakeLists.txt
Approved by: portmgr
Bump PORTREVISION for ports depending on the canonical version of GCC
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
Make ninja opt-out in cmake.mk
Using ninja instead of make (1) can lead to significant speed ups while
building.
Therefore switch from having the ninja generator opt-in to having it opt-out.
Previously cmake-ports that wanted to use ninja could set
CMAKE_NINJA=yes
now, ports that do not work with ninja can set
cmake:<existing args>,noninja
Note, that needing this should be an exception and most often points to a broken
cmake of the port.
The ports using cmake were modified
* removed USES=gmake, if ninja is used
* removed MAKE_ARGS, if ninja is used
* added the cmake-argument noninja if necessary
PR: 219629
PR: 213331
Exp-run by: antoine
Reviewed by: rakuco
Differential Revision: https://reviews.freebsd.org/D10748
Bump PORTREVISIONs for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707
Bump PORTREVISIONS for ports depending on the canonical version of GCC and
lang/gcc which have moved from GCC 4.8.5 to GCC 4.9.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
In particular that is ports with USE_GCC=yes, USE_GCC=any, or one of
gcc-c++11-lib, openmp, nestedfct, c++11-lib as well as c++14-lang,
c++11-lang, c++0x, c11 requested via USES=compiler.
www/h2o: update 2.0.0 -> 2.0.1
This is a bug-fix release of 2.0 series, fixing following issues found in 2.0.0.
* [fastcgi] fix internal server error when PHP returns a huge header #958
* [http2] recognize link header containing multiple links #950
* [libh2o] fix resource leaks upon startup failure #936
* [libh2o] do not require linking to libbrotli externally #941
Changes: https://github.com/h2o/h2o/releases/tag/v2.0.1
PR: 210769
Submitted by: Dave Cottlehuber <dch@skunkwerks.at> (maintainer)
www/h2o: update 1.7.3 -> 2.0.0
- explicitly set H2O_PERL via rc.d script
Summary of major changes:
- support for Brotli compression
- directives for file-level resource mapping
- addition of the status handler
- reverse proxying using HTTPS
Changes: https://github.com/h2o/h2o/releases/tag/v2.0.0
PR: 209927
Submitted by: Dave Cottlehuber <dch@skunkwerks.at> (maintainer)
Add SIGHUP support.
Support soft reloading of config via `sudo service h2o reload`.
PR: 207093
Submitted by: Dave Cottlehuber <dch@skunkwerks.at> (maintainer)
www/h2o: update 1.6.0 -> 1.6.1 and add LibreSSL option
- OPTIONS: Add bundled LIBRESSL option and set as default
- HTTP/2 support requires TLS ALPN extension missing in base OpenSSL
- Upstream expectation is the bundled LibreSSL is used to support HTTP/2
- Enables ChaCha20-Poly1305 ciphers as a bonus
- Update sample configuration file
Changes: https://github.com/h2o/h2o/releases/tag/v1.6.1
PR: 205946
Submitted by: Dave Cottlehuber <dch@skunkwerks.at> (maintainer)
- update to 1.0.1
- ignore build on OSVERSION < 9.0 as it doesn't compile even with clang
- some port cleanups
PR: 197846
Submitted by: dch@skunkwerks.at (maintainer)
- add new port: www/h2o
H2O is a very fast HTTP server written in C. It can also be used as a library.
It supports:
- HTTP/1.0, HTTP/1.1
- [HTTP/2](http://http2.github.io/)
- draft 16 (and draft 14 to support older clients)
- persistent connections
- chunked encoding
- negotiation methods: NPN, ALPN, Upgrade, direct
- dependency and weight-based prioritization
- server push
- TLS
- uses [OpenSSL](https://www.openssl.org/)
(Only the first 15 lines of the commit message are shown above )