Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Dec 23, 2011
  1. prepare for 1.92

    authored
Commits on Dec 22, 2011
  1. @tuncer
Commits on Dec 21, 2011
  1. @vinoski
  2. @tuncer @vinoski

    Add reltool based release support

    tuncer authored vinoski committed
    Running "rebar generate" now creates a self-contained yaws system
    under the build directory's "rel" subdirectory. The yaws script it
    provides at ./rel/yaws/bin/yaws isn't the same as the normal yaws
    script (the one normally found at ./bin/yaws); rather, it's a special
    script that starts yaws and the Erlang applications on which it
    depends as a local self-contained Erlang node. You can run
    
    ./rel/yaws/bin/yaws console
    
    to start an interactive yaws node, or
    
    ./rel/yaws/bin/yaws start
    
    to run it as a daemon, which you can later stop with
    
    ./rel/yaws/bin/yaws stop
    
    This script does not accept the command-line options that ./bin/yaws
    does, at least for now. If this is a problem, please raise an issue at
    the Yaws github repo or on the Yaws mailing list.
  3. @vinoski

    make "rebar compile" install under the build dir

    vinoski authored
    A "rebar compile" used to install yaws, yaws.conf, and other files
    under the user's home directory, just like "make local_install". This
    approach isn't idiomatic to rebar usage, so change it to install files
    locally under the build directory. Starting ./bin/yaws from the build
    directory starts this local installation.
  4. @vinoski
  5. @vinoski

    handle long HTTP header lines in R15B

    vinoski authored
    R15B includes a fix for receiving HTTP request and header lines longer
    than Erlang's internal TCP buffer size of 1460 bytes. In the future we
    might have to allow this limit to be configurable, but for now
    hard-code a maximum HTTP header line size of 16384 bytes.
    
    This will have no effect for Erlang releases older than R15B.
  6. @vinoski

    add support for HTTP PATCH (RFC 5789)

    vinoski authored
    Add support for the HTTP PATCH method, added to HTTP by RFC 5789. The
    Erlang HTTP request line parser doesn't recognize PATCH yet, but this
    change will continue to work if and when it does.
  7. @vinoski

    treat src warnings as errors

    vinoski authored
    Fix compilation warning in yaws_dav.erl so that no compilation errors
    exist in the build, allowing us to treat warnings as errors in
    rebar.config and in src/Makefile.
Commits on Dec 18, 2011
  1. @vinoski

    remove call to tuple fun in yaws_api.erl

    vinoski authored
    R15B deprecates tuple fun calls, emitting a warning when they're
    called at runtime. Replace single use of {M, F} with fun M:F/1 in
    yaws_api.erl to avoid runtime warning.
  2. @jbothma @vinoski

    update WebSockets implementation to support RFC 6455

    jbothma authored vinoski committed
    This change allows websocket connections to be set up between browsers
    and the yaws server. RFC 6455 for WebSocket connections is supported,
    in addition to the hybi working group RFC drafts 10 to 17.
    
    The quickest way to try this out is by compiling yaws as usual, then
    visiting /websockets_example.yaws at the default local installation
    host. This can be done using Google Chrome 14+, Firefox 7+ or any
    other browser supporting WebSocket version 8 or above. Information
    about getting started with WebSockets using this implementation is
    given in /websockets.yaws.
    
    This drops support for the older draft RFCs, specifically those of the
    hixie working group which were previously supported by yaws but are
    significantly different from the hybi working group's specification.
    
    The interface for using WebSocket with yaws has changed
    somewhat. Instead of spawning a websocket owner process which
    maintains a server loop such as that shown in the old
    websockets_endpoint.yaws, the application developer now implements a
    callback module such as those in src/basic_echo_callback.erl or
    src/advanced_echo_callback.erl -- the difference being that the
    advanced callback style is only necessary if you need advanced
    features of WebSocket such as fragmented messages. One suggested way
    to deploy your callback module and its dependencies is as part of an
    application in an OTP release, with yaws as a dependency. Rebar can be
    used to build the dependencies, fetch and build yaws, and create a
    release which will ensure the modules are in the path of the runtime
    system.
    
    Most behaviour tested by the Autobahn test suite 0.43 pass when
    configured to connect to the /websockets_autobahn_endpoint.yaws and
    /websockets_example_endpoint.yaws over an unencrypted
    connection. Significantly, websocket connection closing is not
    implemented and the socket is left to be cleaned up by the Runtime
    System when either the connection is lost or the owning processes
    dies. Secondly, certain cases where websocket frames are fragmented
    within UTF-8 code points cause the check for valid text type messages
    to incorrectly fail the connection.
    
    Subprotocols are not currently supported.
    
    Augment yaws.tex with a new WebSocket Protocol chapter (Steve
    Vinoski).
Commits on Dec 15, 2011
  1. @vinoski
  2. @vinoski

    make local_install put var dir under $HOME

    vinoski authored
    The "make local_install" command was using /usr/local/var by default,
    which might not exist and the user might not have permissions to
    create. Put var and its subdirs under $HOME with the rest of
    local_install instead.
  3. Merge pull request #70 from djui/patch-1

    authored
    Starting to fix a bug related to this issue #69
  4. @vinoski

    change return type of sendfile set_error_buffer() (Tuncer Ayaz)

    vinoski authored
    At the suggestion of Tuncer Ayaz, change the return type of
    set_error_buffer() in the yaws sendfile driver from size_t to
    ErlDrvSizeT. This makes the code make more sense since the result of
    set_error_buffer() is sometimes used as the return value for driver
    callback functions.
Commits on Dec 14, 2011
  1. Merge pull request #72 from tuncer/R15B

    authored
    R15B compatibility
Commits on Dec 10, 2011
  1. @tuncer

    Add missing driver entries

    tuncer authored
Commits on Dec 9, 2011
  1. @tuncer
Commits on Nov 27, 2011
  1. @vinoski

    fix reference to undefined misc:mktemp/1 function

    vinoski authored
    The yaws_exhtml module was referencing a function misc:mktemp/1 from a
    library not included with yaws. Add mktemp/1 to the yaws module and
    call it instead.
    
    Thanks to Richard Carlsson for reporting this.
Commits on Nov 24, 2011
  1. @djui
Commits on Oct 31, 2011
  1. @vinoski

    whitespace cleanup

    vinoski authored
    Remove all trailing whitespace from all text files. Some bot sent
    Klacke and me a pull request saying it had done this for us, but I
    reviewed the diffs and it was affecting lines that shouldn't have been
    affected, so perl and I did it ourselves instead.
Commits on Oct 29, 2011
  1. @vinoski

    Merge pull request #67 from willemdj/issue_65

    vinoski authored
    Allow to pass options to erlsom (fix issue #65)
  2. @willemdj
Commits on Oct 23, 2011
  1. @vinoski

    ensure .yaws id dir is created in embedded mode (#66)

    vinoski authored
    Fix #66 by making sure the .yaws directory corresponding to the yaws
    ID is created for embedded applications using
    yaws_api:embedded_start_conf.
Commits on Oct 20, 2011
  1. @vinoski

    make sed commands for version substitution more robust

    vinoski authored
    The sed commands in yaws.app.src and rebar-pre-script were pretty
    picky regarding the presence of empty lines or other garbage in the
    vsn.mk file. Change to make sed operate only on the desired version
    text.
  2. @vinoski
  3. @tuncer @vinoski

    rebar: fix loading of version string from vsn.mk

    tuncer authored vinoski committed
  4. @vinoski

    move some test files

    vinoski authored
    Relocate test files for some test/t2 tests to the new www directory
    underneath that directory, instead of reaching up and across to the
    top-level www directory. Change test code and config files as
    necessary to match.
  5. @vinoski

    fix CGI redirect HTTP status bug

    vinoski authored
    The CGI 1.1 spec (RFC 3875) requires a server to augment a CGI
    response with a 302 status code if that responses consists only of a
    HTTP Location header and optional CGI extension headers, but Yaws was
    not doing this. Fix this and add a unit test to verify it.
  6. @vinoski

    fix expires header time when crossing DST boundary

    vinoski authored
    The expires header test was failing because the header time was
    calculated in a way that failed to account for any daylight savings
    time issues, specifically when the access time occurs when DST is
    active but the expiry time occurs after DST has ended (or
    vice-versa). Fixed.
Commits on Oct 18, 2011
Commits on Oct 13, 2011
  1. don't setup dirs in embeddded mode

    Claes Wikstrom authored
Commits on Oct 6, 2011
  1. @essiene @vinoski

    Populate soap_srv_mods field in yaws:setup_gconf/2

    essiene authored vinoski committed
    When running in embedded mode, this function is used to setup the
    gconf. Currently, the soap_srv_mods field is not built and is
    ignored. Correct that by setting the soap_srv_mods field.
    
    Signed-off-by: Essien Ita Essien <essiene@gmail.com>
Something went wrong with that request. Please try again.