Skip to content
Permalink
Branch: master
Commits on Jan 25, 2020
  1. Hopefully fixes @mail going forward (#1321)

    captdeaf committed Jan 25, 2020
Commits on Aug 23, 2018
  1. Add --disable-socket-quota (#1231)

    captdeaf committed Aug 23, 2018
    For more details on socket quota, check GitHub issue #1221
    
    Unit tests now run netmush with --disable-socket-quota, reducing 'make test'
    run time from 6m22s to 42s
Commits on Aug 19, 2018
  1. Fix 'help' command (#1227)

    captdeaf committed Aug 19, 2018
    Helpfile fixes
Commits on Aug 16, 2018
  1. Single queue, and massive bsd.c rewrite (#1224)

    captdeaf committed Aug 16, 2018
    WARNING! With the removal of the object queue, please be careful when upgrading that you do
     not have any infinitely looping triggers without an `@wait`.
    
    As an example, this used to be a common way to ensure something was executed once per second:
    
    > `&everysecond object=do some ; updates ; @trigger me/everysecond`
    
    This will now happen, up to several thousand times per second! Make it `@wait 1`, and it'll run once/second!
    
    * A single command queue for players and objects. No more `@trigger` waits. [GM]
    * A restructuring of bsd.c, to make it easier to reason about Penn's queue cycle. [GM]
    
    On the way to doing this:
    
    * cpu_timer_hit checks in atr_iter* and regexp loops (Ashen-Shugar can hang Penn for a full second w/ regrab on a single attr. Never mind max_attrs!)
    * Removal of active_q_chunk - I don't think it makes much sense to have it. Instead we just run queue_chunk every loop.
Commits on Aug 14, 2018
  1. Millisecond timing in bsd.c (#1220)

    captdeaf committed Aug 14, 2018
    * Millisecond timing in bsd.c for poll() and family.
    * Descriptor quota fixes and improvements
    * Adjust timer.c to use milliseconds.
    * Fixed msec_diff to actually return millisecond count.
    * Rearranging do_second(), every_second(), etc from cque and timer since they're not run every second.
    * Fixing queue_load_record to be aware it probably won't run every second.
    * Cleanup of timeval, slice timeout, and related math in bsd.c
    * Moved error and signal result checking in bsd.c into its own function for cleaner shovechars()
    * moved gettimeofday into utils.c and made generally available as penn_gettimeofday()
    * Add now_msecs(), only used by timer.c now but will be used by @wait/etc.
Commits on Aug 12, 2018
  1. Trigger inline (WIP) (#1219)

    captdeaf committed Aug 12, 2018
    Add @trigger/inline and /match
Commits on Aug 11, 2018
  1. Httpd (#1214)

    captdeaf committed Aug 11, 2018
    (From "help http"):
    PennMUSH now supports HTTP requests reaching its mush port. It is very low level,
    and a little tricky to understand.
    
    When an HTTP request hits the PennMUSH port, PennMUSH invisibly logs in to
    the HTTP Handler player (@config http_handler), and executes an
    @include me/<method>. e.g: @include me/get.
    
    %0 will be the pathname, e.g: "/", "/path/to", "/foo?bar=baz", etc.
    
    %1 will be the body of the request. If it's json, use json_query to deal with it.
    If it's form-encoded, look at help formdecode()
    
    Anything sent to the HTTP Handler player during evaluation of this code is
    included in the body sent to the HTTP Client. There is a maximum size of
    BUFFER_LEN for the body of the response.
You can’t perform that action at this time.