- #2396 Inert 2.1.3 update
- #2397 throw when attaching route handlers without a connection
- #2374 Server methods context not available in route prerequisites
- #2392 No Payload Validation
- #2395 Update jshttp/mime-db to 1.6.1 from 1.5.0
- #2370 Add xss protection to validation response
- #2362 Don't respond to connections until listening is started
- #2363 Refuse to handle incoming request after server is stopped
- #2347 Improve error message when validation.payload is set but type is GET
- #2309 Fixes #2308 by logging boom error object instead of just message
- #2308 Logging boom errors from handlers should send boom error to log not just message
- #2372 inert 2.1.2
- #2359 Remove '{}' payload from cors OPTIONS response
- #2354 Update API.md for inert 2.1.0
- #2366 Update hapijs/catbox to 4.2.1 from 4.2.0
- hapijs/catbox 4.2.1
- #116 Prefix keys with a
'+'
when using object as a hash
- #2355 Fix table labels
- #2335 Expose the request object in inject()
- #2277 Fix invalid response for empty reply() (v8.x regression)
- #2316 Update jshttp/mime-db to 1.5.0 from 1.3.1
- #2302 allow replying with a stream as returned by node core http client methods
- #2301 can't reply with stream returned by node core http client methods
- #2291 external listener protocol issue
- #2331 Revise range tests to not depend on the inert module
- #2324 Remove catch call for promise replies
- #2323 Promise support
- #2300 Bumped mime-db version
- #2271 Update jshttp/mime-db to 1.3.0 from 1.2.0
- #2270 Update hapijs/boom to 2.6.1 from 2.6.0
- hapijs/boom 2.6.1
- #40 Lab 5.0, code 1.0
- #2269 Update hapijs/shot to 1.4.0 from 1.3.5
- hapijs/shot 1.4.0
- #19 optionally accept an object as the
url
- #2268 Update hapijs/joi to 5.0.2 from 5.0.0
- #2262 Change server.table() result from object to array
- #2255 Throw when calling reply() with objectMode stream
- #2249 Add 'uri' connection option
- #2247 Split debug settings per event type
- #2246 plugin dependencies error message changed
- #2234 Support views in auth schemes
- #2243 Fix reply.continue() in prerequisite.
- #2244 Fix reply.continue() in prerequisite. Closes #2243
- #2242 Uncaught error: Cannot read property 'isBoom' of null in hapi/lib/handler.js
- #2241 Remove string notation method logging when cache not setup
- #2226 When using string shorthand in pre it does not provide reply interface
- #2240 Cached method in string notation bypasses cache
- #2238 Conditional Validation Rules based on Auth
- #2233 Populate connection.info.uri before start when port 0
- #2237 Support bare server (no files, proxy, views)
- #1971 Allow plugins to extend Server
- #2231 Change request.route to a wrapper object containing settings
- #2235 Expose realm as public interface
- #2230 Replace server.config with server.realm.modifiers
- #2229 plugin.expose() only sets server.plugins, not connection.plugins
- #2190 Log heavy load reason when check() is false
- #2220 A method to test a string against the routes table
- #2228 Update hapijs/joi to 5.0.0 from 4.9.0
- #2227 Update moment to 2.8.4
- #2224 Cleanup connection.info settings and introduce 'address' config
- #2219 Update hapijs/hoek to 2.10.0 from 2.9.0
- #2216 Invalid deep cloning of bind context
- #2217 Disable scope checking on a route
- #2215 Revert change to trailing slash behavior
- #2209 Not possible to add route in plugins
- #2203 Move connection route config to route with connections defaults
- #2206 Change server.bind() and server.path() to apply only to routes that follow
- #2205 Rename plugin register()
route
option toroutes
- #2201 Rename cacheControlStatus to cache.statuses
- #2200 Validation failAction and custom function are not protected
- #2199 add missing variety handler for promises returning a object
- #2198 Update hapijs/call to 2.0.1 from 1.0.0
- hapijs/call 2.0.0
- #10 Support route id
- #3 Support for flexible routes
- #9 /a/{p}/{p*} conflicts with /a/{p*} (which is not reachable)
- #8 '/a/b/{p*}' is more specific than '/{p*5}'
- #7 /a/b/{p*} is more specific than /a/{b}/{c}
- #6 '/a/{b*}' is less specific than '/a/{b}/{c*}'
- #2 Match case-insensitive paths with no params
- #1939 Reverse Routing a URL
- #2185 Update hapijs/catbox to 4.2.0 from 4.1.0
- #2181 Remove server method cache key 'h' prefix
- #2179 server.register() doesn't work with direct require of plugins (-rc1)
- #2156 Rewrite reply() interface section
- #1945 IE <=8 doesn't accept application/javascript as a mimetype
- #2178 Update hapijs/mimos to 2.0.2 from 1.0.1
- #2157 Link mentions of methods to their reference
- #2177 Return select() on server.connection()
- #2155 Cleanup and document all internal request logs
- #2175 Update jshttp/mime-db to 1.2.0 from 1.1.2
- #2174 Update hapijs/qs to 2.3.3 from 2.3.2
- #2173 Update hapijs/catbox-memory to 1.1.1 from 1.1.0
- #2172 Update hapijs/boom to 2.6.0 from 2.5.1
- hapijs/boom 2.6.0
- #33 Added status code 429 Too Many Requests.
- #2170 Spin off range header parser
- #2066 Configure auth scheme to require payload validation
- #2111 CORS matchOrigin should echo origin when config doesn't specify
- #2158 How to get default auth strategy from server object?
- #1994 Pass meta data from a joi object to a failAction
- #2167 Add response 'close' processor
- #2166 ETag vary modification not applied to content-encoding set elsewhere
- #2165 Expose request.paramsArray
- #2164 Bypass compression on empty payload
- #2163 ETag vary modification is incorrect
- #2099 ETags never match with varyEtag setting
- #2160 Add cors.override setting
- #2154 Rename response object option marshall to marshal
- #2153 Change etag based on vary header by default
- #2093 Include ETag and Last-Modified in 304 response
- #2152 Change server method generateKey() to only take the arguments
- #2148 Optimize use of arguments
- #2150 argument Object Optimizations
- #2129 Support promises in server.method()
- #2149 Support server methods without callback
- #2122 Pass the reply() interface everywhere a response can be returned
- #2146 Deep copy app and plugins configurations
- #2124 Server-level connection defaults
- #2145 Split request log events into request and request-internal
- #2048 New Event for request.log
- #2144 Rename server event internalError to
request-error
- #2143 Replace log 'hapi' tag with event.internal flag
- #2142 Rename request.responses to request.preResponses
- #2104 Apply
reply.continue()
to auth interfaces - #2137 Remove auth authenticate()
log
option in result - #2136 Here comes 8
- #2135 Remove Hapi.version
- #2131 Simplify server.register() to only accept register() or { register, options }
- #2128 Change server.method() object key from fn to method
- #2097 Support Promises in reply() interface
- #2126 Change server.cache() to take only options
- #2125 Remove .hapi references
- #2118 Cleanup register() to accept a plugin or { plugin, options }
- #2116 Move peek logic to Peekaboo
- #2040 Improve request ID generator to prevent collisions
- #2113 Missing host will default to hostname or 'localhost' instead of '0.0.0.0' pre start()
- #2112 Switch unix domain socket and windows named pipe to use options.port
- #1977 Throw when route() is called with multiple arguments
- #2003 Stop cache client when pack stops
- #1926 Remove special handling of the HTTP Location header
- #2109 Remove request aborted listener
- #1902 reply.redirect() and reply.file() not working in server extensions
- #2103 Change ext continuation method from
reply()
toreply.continue()
- #1965 Need to know when response was sent in
server.on(tail)
- #2065 failing to generate a method key should generate an error somewhere
- #2089 Server method
generateKey
no longer supports returning null as valid no caching indicator - #1963 Extensible reply() interface
- #1866 Throw error when trying to reply twice
- #1864 Feature Request: Validation of non-200/ok responses.
- #1723 Allow response object stripping according to schema
- #2096 Skip onPreResponse when connection closes prematurely
- #1686 Don't report request closed on redirect payload write
- #2086 Remove bin/hapi
- #2085 Remove server.compose()
- #1672 Enable starting the server listener externally
- #2095 Rework composer format
- #2092 Change default port to 0
- #2090 Remove plugin.version
- #2084 Remove Hapi.state.prepareValue()
- #2083 Remove Hapi.error
- #2082 Remove Hapi.createServer()
- #2052 Remove plugin.length
- #2053 Change plugin.servers to plugin.connections
- #2071 Move proxy handler to use local maxSocket config
- #2072 Remove debug from server configuration
- #2073 Split process load from server load limits
- #2076 Move files.etagsCacheMaxSize to pack level
- #2080 app config no longer copied over to server.app or connection.app
- #2123 Upgrade hoek to 2.9.0
- #2120 TypeError: Cannot read property 'get' of undefined
- #2105 Added ability to pass option into unstate.
- #1916 Temp file is not deleted when request is aborted by client
- #2100 Global view context.
- #2098 Catbox 4.1
- #2069 Isolate server in its own pack
- #2061 Second phase of server/pack/plugin refactor
- #2057 Pack refactor
- #2046 Fix shrinkwrap
- #2039 Added npm-shrinkwrap
- #2038 Move cli logic to rejoice
- #2036 Move lru-cache to inert
- #2034 Lab 5.0
- #2035 lab 5.0 features. Closes #2034
- #2028 Improve error message when auth scope is insufficient
- #2029 Fixes #2028. Updated error message for invalid scope to explain that any of the specified are sufficient
- #2024 Resolve undefined environment variables to the empty string in the cli.
- #2022 Spin off file and directory to inert
- #1913 Change proxy localStatePassThrough setting default to false
- #2021 Override server files.relativeTo config per route
- #2020 h2o2 2.0
- #1941 Remove route from handler registration arguments
- #2019 Catbox 4.0
- #1954 Remove support for catbox getOrGenerate()
- #2017 Initial 7.0 changes
- #2016 Remove $env support from pack.compose()
- #1955 Use environment variables in CLI configuration json file
- #2011 Hapi should not override
cache-control
header if it's manually set by user's code - #1960 Remove support for tos authentication setting
- #2007 Remove server views config
- #1984 All non 200 responses get cache-control=no-cache header
- #1995 Adding route with multiple methods overrides route config
- #2001 Keep the options of server.inject untouched #2000
- #2005 Replace negotiator
- #1998 Migrate payload parsing to subtext with multipart support via pez
- #1993 Replaced optimist with bossy
- #1928 Handle empty or falsy charset in response
- #1968 Vision / Mimos
- #1959 Fix server/plugin ext views conflict
- #1958 Move proxy handler to h2o2
- #1956 Fix Content-Type overriding
- #1944 Move router to Call
- #1934 Fix non-spec compliant Last-Modified header in response
- #1932 handle empty CORS expose-headers header response
- #1922 Handle server methods without cache as special case
- #1828 Disable compression on file types already compressed (png, jpg)
- #1905 Replaced mime-type with mime.
- #1889 Upgrade to wreck v5
- #1919 Log method pre string notation
- #1915 Issue/1911
- #1885 Handler timeout with onPreResponse asserts on bad protect
- #1863 Allow agent to be set on proxy options and passed into Nipple.
- #1878 Rename private route members
- #1877 Move state.js to statehood module
- #1875 Session scope does not match one to many auth.scope on route.
- #1871 Switch to wreck
- #1856 Allow view options override on handler object
- #1858 Fix typo in defaults.js
- #1857 Manifest validation tests server config before defaults applies
- #1851 Updated route documentation.
- #1844 Replace async
- #1842 Lab 4.00
- #1840 No longer possible to load caches using CLI?
- #1835 server.state ttl must be a number
- #1795 request.server._views in plugin
- #1832 Replace mime with mime-type
- #1822 Added joi validation to manifest.
- #1810 set X-Content-Type-Options to nosnif for jsonp responses
- #1827 Cannot call setTimeout with non-integer msec value
- #1826 Support cache generateTimeout setting
- #1820 Rename spumko to hapijs
- #1801 Stale dependencies
- #1769 Plugin X missing dependency Y in server if manifest.plugins key order not carefully managed
- #1754 File handler to handle 206 Partial Content?
- #1788 Last-Modified comparison needs to account for 1 second precision
- #1778 Do not create a duplicate Content-Type header on proxy passthrough
- #1774 Style fixes
- #1766 prepend jsonp callbacks with a comment to prevent the rosetta-flash vulnerability
- #1763 fixes #1755 - stripTrailingSlash doesn't work when query variables are used
- #1760 How can I set Content-Type header to the content generated from reply.view?
- #1762 fix content-type overriding issue #1760.
- #1733 log function should only emit once if _server object
- #1783 Change etag when content-encoding is used
- #1782 server.inject() res.result does not reflect actual payload sent on 304/204
- #1781 Send empty payload on 204
- #1756 Follow coding conventions concerning semicolons; Don't initialize variab...
- #1776 Proxy pass-through with onResponse fails to preserve vary header values
- #1773 Windows path fails on trailing slash on view helpers
- #1676 Problem serving precompressed files with directory handler
- #1772 HEAD requests should retail etag header
- #1771 Open open one file stream when using precompressed file
- #1407 Skip opening file or rendering view on head or 304
- #1752 Adding helpful error message when pack.register is missing a callback
- #1745 Add joi validation of pack options
- #1728 6.x breaks plugin modules exporting functions
- #1720 No way to handle root routes with
route: {prefix: '...'}
- #1719 Fixes undefined error in
plugin.dependency
- #1710 Buffer based passwords fail schema validation (6.0 regression)
- #1708 Hapi 6.0 no longer invalidates auth strategy on registration of route
- #1703 Catbox 3.0 and drop internal require support
- #1700 Change the order of actions when starting a pack
- #1668 Delete 'Accept-Encoding' header on proxy requests
- #1696 Non-Error auth err responses are ignored in try mode
- #1695 Preserve auth error on try
- #1691 V6.0
- #1693 Enhance setting authentication defaults
- #1692 Allow testing a request against any configured authentication strategy
- #1688 Bring back reply.redirect()
- #1687 Don't log auth non-error responses with 'error' tag
- #1679 Allow cookie-specific settings for failAction, strictHeader, and clearInvalid
- #1678 Expose the location header logic
- #1677 Enhance manifest format to support registration options (select, prefix, vhost)
- #1674 Make plugin register() and dependency() selectable
- #1675 Remove pack.list
- #1673 Make plugin.events selectable
- #1663 Allow register to pre-select servers
- #1662 Config clones bind, app, and plugins
- #1661 View manager clones engines including modules
- #1658 Set route path prefix when loading plugin
- #1659 plugin.view() modifies options' basePath
- #1656 Remove pack.require() and plugin.require()
- #1655 Remove support for string view engine config
- #1653 Move Composer into Pack.compose()
- #1652 Remove composer support for multiple packs
- #981 Scope plugin routes to a virtual host
- #1579 Add option to remove trailing slashes to router
- #1574 Document the best way to implement a 404 from the directory handler when using path callback
- #1573 Server throttling controls do not log execution
- #1508 Escaped error message with regex validation
- #1477 proxy xforward option will set bad headers in some cases
- #1581 Authentication throws are treated as valid reply()
- #1644 request.params contains empty strings for missing optional params
- #1643 Expose cross inputs as validation context
- #1642 Cjihrig header validation
- #1641 Upgrade to joi 4.x
- #1622 Extend Hapi cli to enable loading a module before loading hapi
- #1638 Unahndled Exception when a request is aborted
- #1604 response emitter fails to retain custom event listeners once sent
- #1597 Template helpers fail on relative paths
- #1598 Throws when response does not have _close()
- #1594 Can jsonp be optional?
- #1567 allow defaultExtension
- #1590 RSS leak occurs when request does not read entire stream response
- #1569 Move ext topo sort to its own module
- #1566 Precompile joi validation
- #1548 wip: fix windows bugs
- #1560 4.0.0
- #1559 joi 3.0
- #1558 Change Hapi.utils.version() to Hapi.version and remove Hoek alias
- #1547 Make certain that path is relative before joining it to relativeTo
- #1554 coverage, closes #1524
- #1524 Coverage after lab partial condition result coverage
- #1521 Allow plugins to register handler types
- #1551 add an insecureAgent when maxSockets is set, closes #1512
- #1525 expose filename and headers for streams in a multipart form
- #1523 Question: How to validate payload with templated response properly ?
- #1541 Clarify that statusCode key of stream response passed in response
- #1540 Pre-gzipped source stream not properly tested for being the active source
- #1538 Passing Error objects can leak message in 500 response
- #1536 maxEventLoopDelay fails to catch when load is too high to reach next sample interval
- #1535 Cannot set maxSockets to node default
- #1533 Proxy without passThrough fails to set cache-control header
- #1532 Multipart payload to files with multiple files skips second file when large
- #1531 pack.log() doesn't retain server debug false setting
- #1530 plugin.method() should use method bind before plugin bind
- #1515 Coverage to 100% after lab logical statement support
- #1520 server.table() mis-documented, missing args, and route.table() is wrong
- #1518 Server timeout config allows invalid values
- #1517 Proxy handler payload config validation using incorrect variable
- #1514 Server allows duplicate lables
- #1513 Authentication userland code not protected by domain
- #1507 request.setUrl('') throws
- #1503 plugin.method(name, fn, [options]) fails
- #1466 Drop support for server helpers
- #1458 Removed Http(s) globalAgent settings
- #1485 Bring coverage back to 100% after lab fix
- #1476 add PATCH to default cors methods, closes #1475
- #1475 Include PATCH method in options/cors/methods default
- #1478 Use joi 2.8 alternatives()
- #1465 Migrate to catbox 2.0
- #1473 Drop dtrace support
- #1455 Print to console server logs based on debug config
- #1451 Objects created in plugin.dependency or plugin.after are monitored by the wrong domain
- #1452 Perhaps include
request.pre
in handler view context - #1453 Include prerequisites in default view context. #1452
- #1445 Server method bind option
- #1450 Enable handlers to use the prerequisite method string notation
- #1449 Allow server methods names to include '.' (nested)
- #1448 Prerequisite string notation parsing errors
- #1447 Allow prerequisites string notation to use method name without ()
- #1446 Document server method callback 'isUncacheable' argument
- #1442 Response 304
- #1440 Redirecting from within an Auth.Scheme generates a Circular Reference
- #1439 proper etag formatting
- #1434 Allow overriding the filename in content-disposition headers
- #1432 Replace server helpers with server methods
- #1299 thrown errors inside server.inject does not propagate
- #1430 Server fails to parse "" cookie value
- #1428 request.getLog() includes same event multiple times when using multiple tags
- #1424 Searching actual working SSE example (#1008 does not work for me)
- #1425 return a reference to the server when adding via pack.server
- #1419 Send newline \n after all responses
- #1320 Add support for asynchronous view rendering
- #1372 test that handler isn't called when a request is interrupted
- #1362 (cookies) TypeError: Cannot call method 'match' of undefined
- #1378 add failureResponse option to proxy handler
- #1354 Use configuration objects to register helpers
- #1380 Allow bind context for view handler
- #1382 Make joi optional for route validation
- #1404 Protect JSON.stringify from throwing.
- #1395 JSON circular structure error in authentication error logging
- #1405 Call parseInt() for Joi-validated integers
- #1414 Sending incorrect status code (200) when file fails to open before transmit
- #1413 File stream is opened before necessary (e.g. if replaced by another response in ext)
- #1412 Missing file (404) not captured by onPreResponse
- #1411 Wasteful encoder prep when response is 304 or head
- #1410 passThrough statusCode overrides manual code value
- #1409 Status code set from upstream without passThrough flag
- #1408 precompressed file handle not closed when using head or 304
- #1387 EMFILE error when hapi serves static files over period of time in hapi 2.1.2
- #1391 Disable autoparsing without losing gzip
- #1393 add
gunzip
as third option toparse
; resolves #1391 - #1400 Question: Can you get a log of requests that don't pass validation?
- #1401 route.payload.allow as Array never matches
- #1357 specify hoek minor version
- #1347 Views should not use basePath when path is absolute
- #204 Add postResponse method to proxy
- #200 Fix tls config settings
- #hapijs/inert#17 Handle Range requests explicitly
- #1344 Use the plugin loader when configured to load view engines
- #1245 Replace request with nipple in tests
- #1336 Allow custom view layout folder
- #1335 Allow view layout to contain a string and boolean
- #1322 Does Hapi support multiple view templates?
- #1317 Cannot Parse form-encoded arrays
- #1331 Fix query(string) regression
- #1332 Payload always logging an error regardless of error state
- #1327 Better debug support for object data
- #1324 When no query params are sent, request.params is null instead of {}.
- #1301
querystring
=>qs
, adds support for nested objects - #1314 Replace old payload try mode with failAction
- #1313 Change redirectToSlash default value to true
- #1312 Remove special values for server config 'files.relativeTo'
- #1311 Implement saving payload to file when not using mutlipart
- #1304 Request 'peek' event
- #1300 Do not overwrite Access-Control-Allow-Origin
- #1297 Document validation option in settings
- #1295 Replace route payload.mode with payload.output and payload.parse
- #1292 Skip loading entire multipart to memory and stream directly to multiparty
- #1168 Save stream to file like {mode: 'file' ...}
- #1236 Review lru-cache settings
- #1239 Disable cache when Authorization header is included
- #1241 Add user/private flag to state variable
- #1282 Security tests using reply().setState() which throws
- #1264 requesting url that is not encoded correctly should return 400, not 404
- #1291 Remove server config normalizeRequestPath and default to true
- #1290 Partial path param match /a{b}c does not apply isCaseSensitive
- #1288 Move auth schemes to plugins
- #1287 Split server.auth() into server.auth.scheme() and server.auth.strategy()
- #1286 Expose response preview as public API
- #1284 Expose request.response and change it to direct ref from func
- #1285 Change authenticate() callback to reply interface
- #1269 Manage state all in the request
- #1281 Change authenticate() callback signature
- #1280 Support node callback pattern (err, result) for reply()
- #1279 Convert ext method signature to handler
- #1270 Apply encoding to Response.Payload operations consistently
- #1272 Redo reply.close()
- #1277 Emit 'internalError' for every 500, not just the one sent back
- #1276 Retain headers in 304 response
- #1275 Boom 2.0
- #1274 Fixed code example in README to comply with 2.0.x
- #1238 Special handling for '*' Vary response header
- #1059 Allow route prerequisites to takeover() and preempt handler
- #1222 Proxy passthrough does not allow for cookie domain modification
- #1247 Clean up postResponse in proxy config
- #1253 in directory, fix the listing of subdirs that reside in a subdirs that have spaces
- #1268 Expose more response properties
- #1267 Add 'app' and 'plugins' to response object
- #1266 Remove 'response.variety' support
- #1262 Remove response.getTtl()
- #1261 Rename response.uri() to response.location()
- #1258 Default Buffer responses to application/octet-stream
- #1256 Remove access to internal response types
- #1233 Clarify server app config usage
- #1246 Allow zero key helpers with cache
- #1249 Cleanup use of request._route.cache and request.route.cache
- #1248 Review proxy upstream ttl passing
- #1254 File response leaks fd if gzipped stream used instead and the other way.
- #1251 Replace File from response type to reply.file() helper
- #1252 Protect response payload stream wrapper from multiple replays
- #1242 Remove server-side route caching
- #1231 request.log() no longer adds 'error' tag if data is Error
- #1234 Move client out to separate module
- #1229 Add req.on('error'/'close') to request object processing
- #1189 Attaching a websocket to a server in a pack
- #1230 Remove plugin permissions
- #1219
pack.require
doc is somewhat incorrect - #1223 views.helpersPath requires .js files
- #1228 Client request timeout and downstream listener not set when payload is a stream
- #1183 Remove use of removeAllListeners()
- #1207 Accessing the response stream.
- #1216 Remove support for
notFound
handler string - #1215 Content-type charset attribute not added to streams
- #1214 Allow specifying a list of method in route config
- #1208 Route error message does not include information about which route failed
- #1209 Duplicate parameter error is missing route information
- #1211 Move all response payload processing to _prepare
- #1205 Honor options.bind in ext
- #1204 Rename handler/ext context to bind
- #1202 Move handler and ext context to use this
- #1200 Removing confidence, alce from composer and CLI
- #1194 Remove support for decorating request with reply()
- #1191 Cannot use multiple parallel pre methods in handler mode
- #1195 Move request.context to request.reply.context
- #1192 Change pre type to always use handler mode
- #1190 Move Obj stringify step to _prepare
- #1187 Change pre to use nested arrays instead of mode (serial, parallel)
- #1049 Validate pre config schema
- #1155 404 not being caught by onPreResponse function
- #1182 Error transformation does not work when serving static files
- #1185 be more careful about options in _provisionCache
- #1176 Unify stream and buffer responses
- #1175 Allow disabling CORS for individual route
- #1174 Adjust CORS origin header options
- #1171 Only emit vary origin for CORS wildcard mode
- #1169 Remove load samples and add protection against interval sample falling behind
- #1165 Switch benchmarks to use Hoek.Bench instead of Date.now()
- #1163 CORS response doesn't set Vary header in all cases
- #1161 Schema issues
- #1152 Load sampling and limits
- #1150 Support multiple cache instances
- #1148 Return 401 when allowEmptyUsername is false and username missing
- #1147 Add request.reply.proxy()
- #1146 Expose proxy functionality as a utility
- #1070 TypeError when validate.* is set to false
- #1102 How to exclude views from layout
- #1140 Not able to login after attempting without user name
- #1144 Support pre-compressed files
- #1142 Fix ext function plugin env binding
- #1137 generateView at 'onRequest' extension point
- #1135 Formatting problem in Reference.md
- #1136 Handlebars 1.1.x uses prototype for registerPartials which breaks its use in Hapi
- #1129 support for iisnode and windows named pipes
- #1123 add ability to listen on unix domain socket
- #1133 Joi 2.0
- #1124 Use ALCE for manifest loading.
- #1103 allow arrays of scopes on routes
- #1116 CORS origin bug fixes and enhancements
- #1091 Only set access-control-allow-origin if the origin header value matches (or '*' is allowed)
- #1113 updates plugin.views Reference.md entry to a clear and working example
- #1094 404 not being caught by onPreResponse function
- #1112 Too strict cookie parsing?
- #1114 What is the best way to access request headers?
- #1098 Add criteria support to CLI
- #1092 Empty path parameter should have empty string value, not undefined
- #1028 Expose requests content-type/mime & accept
- #1024 Hapi.Composer.compose() requires "plugins" but won't warn if it's not there
- #995 Block response.created() from methods other than POST and PUT
- #1004 validation fails when using Hapi.types.Object() at the root
- #1088 Plugin dependencies
- #1085 Validation options
- #1083 Normalize response headers to lowercase field name
- #1076 Test for both formats of Content-Encoding header
- #1081 Migrate to Iron 1.0
- #1074 Route-specific validation error handler
- #1077 Add compileMode to schema.js
- #1067 Bug fix for loading ext auth scheme into multiple servers
- #1064 Helper cache drop interface
- #1057 '/{p*}' is sorted ahead of '/{a}/b/{p*}'
- #1056 Allow directory paths to include multiple params and use last for resource selection
- #1058 Closes #1056 and #1057
- #1054 Enhance prerequisites configuration options
- #1030 Problems with routes
- #1044 Reverting changes to generic/stream responses
- #1037 Stream responses emit response event
- #1033 Node 0.11 bug fixes
- #1034 Upping shot dep version
- #1032 Updating boom version to 1.0.0
- #1019 Depend on Joi v1.1.x
- #1029 Using latest hoek and moved to AUTHORS file
- #1017 Overrides Cache-Control in proxy even when no local policy is defined
- #1016 Adding helper with cache to pack with multiple server crash
- #1015 Undo #1014
- #1014 plugin.helper should be selectable
- #1005 Improve server constructor argument validation error reporting
- #1001 Pack event handlers now support correct args
- #998 Adding dtrace probes
- #993 Plugin context
- #996 Remove Directory and View from cacheable responses
- #994 Server level cache
- #959 Adding foundation for dtrace probe support
- #980 Add interface to register local
require
function with plugin api - #979 Confusing error message when configuring auth using default strategy when none configured
- #978 Change plugin
ext
permission default to true - #976 plugin.require support
- #974 Pack start/stop events
- #971 Use instanceof Error + isBoom to replace instanceof Boom
- #968 Changes to
plugin.hapi
and thecookie
scheme - #970 Removing complexity-report
- #967 Authentication defaultMode allowed invalid values
- #966 Expose the hapi module on the request object
- #963 Question: should pack.register's register pack parameter should be renamed to plugin?
- #965 Change parameter name pack to plugin to resolve #963
- #962 Server config schema does not allow single string labels
- #960 Updates to case sensitive routing
- #958 Path params are no longer lowercased in router
- #955 Update Reference.md plugin.lenght to plugin.length
- #951 use .isBoom instead of instanceof Boom
- #949 Error when hawk payload validation is required but the request contains no hash
- #948 reference multiparty instead of formidable
- #946 Updating example to be clearer
- #944 Found some small typos/formatting issues in Reference.md
- #943 Updating version
- #942 Layouts work correctly in jade
- #941 No longer destroying request socket
- #938 Fixed the code example to get Hapi's version
- #936 Allow omitting trailing slash when last segment is an optional parameter
- #933 Updating version to 1.8.1
- #928 Removing listeners on domain when exiting
- #927 Removing global variable
- #925 Fixing edge case where bad path can cause issues with url.parse
- #924 Issue/922
- #922 Handling directory routes that end both with and without a trailing slash
- #923 remove connection event listeners when server stops
- #915 custom cache engine support
- #912 Fixing aborted causing duplicate res.ends issue with incoming request
- #911 Allow client.request calls without a callback (ignoring response)
- #910 Client does not destroy request on redirection error
- #907 Adding test
- #906 Proxy requests are closed when server response already sent
- #904 Issue/902
- #903 Fixing issue where timeout occurs after socket close in client
- #901 Performance tweaks
- #897 Hapi node_modules_path now supports symlinks
- #891 Exposing rejectUnauthorized property on proxy
- #889 Plugin view engine required from hapi's module path, not plugin
- #887 Default auth scheme only works when scheme is added with 'default' name
- #868 Potential leak when aborting reading a payload if max size reached
- #872 Test for invalid incoming path without leading '/'
- #869 Request._replyInterface called twice but does not share wasProcessed state
- #870 Response treats objects as errors based on too trivial keys
- #885 Fix plugin.path
- #883 Cleanup pack requirePath
- #871 * allowed in path but used as special character in route fingerprint
- #880 Performance and hawk options
- #879 Support all Hawk and Bewit options
- #878 Adding Client request socket timeout
- #863 Absolute paths now work correctly with hapi command
- #860 Adding hapi bin test and fixing issue with no plugins
- #862 Minor performance tweaks
- #859 Fixing test
- #858 Added missing done() call in test
- #856 Remove _log() wrapper
- #846 Request: View configuration to autoload helepers
- #854 Move to use multiparty
- #853 New internal proxy handler
- #850 Increasing allowed sockets to 10 for client
- #848 Template settings override fix
- #845 Generic response fails to account for all possible res events
- #844 Proxy to outside site fails due to request's old stream api and node 0.10 wrap()
- #843 Allow setting custom headers via proxy mapUri
- #839 Cleanup listeners
- #838 Issue/808
- #837 Issue/812
- #834
Pack
throws anAssertionError
if therequirePath
is not absolute - #835
Pack
: Automatically resolve therequirePath
if provided - #832 Allow route.payload config to be an object with
mode
- #833 closes #832
- #830 Add payload 'try' parsing mode
- #831 Closes #830
- #828 Add HttpOnly support to cookie auth
- #827 request debug printout format and condition
- #820 Clarified the format of payload in server.inject in the Reference doc
- #824 Issue/821
- #823 Issue/822
- #822 JSONP doesn't seem to be working
- #817 Payload bugfix for PATCH method
- #818 Tiny composer documentation fix
- #814 Fixed jade compile issues and updated tests to verify fix.
- #804 Remove restriction on params in path for static file handler
- #813 text/* content-type always echo back the received content
- #796 Allow unencoded double quote and backslash in the cookie value
- #793 Use new assert with passed parameters instead of concat string
- #791 Test fails: Auth Hawk includes authorization header in response when the response is a stream
- #789 Streams not properly being closed for static files when browser gets cache hit
- #788 Need more detailed documentation for "next" callback for event handlers
- #787 Expose Plugin File Path
- #767 Verify every example works with 1.0
- #780 Relative path redirection should have vhost support
- #768 Directory handler example
- #784 Change server helper options.generateKey to receive the same arguments as the helper method
- #782 Payload parsing should be based on request method, not path method
- #781 Do not set request.state[name] when value is invalid regardless of failAction
- #779 Add server config
location
for Location header prefix - #776 Streamline request.reply()
- #771 Multipart upload issue
- #765 Refactor views manager configuration
- #752 Shared config for plugins
- #751 Cleanup Unmonitored error
- #759 Feature/misc
- #758 cookie authentication example fails with 1.0.0
- #755 Views now render without child path
- #745 Basic Authentication callback with no username/password returns 500
- #742 Remove built-in Oz support
- #741 Remove Raw response type
- #739 Adding server.stop support for destroying connections after a timeout
- #738 Support for Access-Control-Expose-Headers in the CORS options
- #736 Node v0.10
- #656 Support for virtual hosts
- #727 Fix hawk response header edge cases
- #726 Misc features
- #725 Debug enhancements
- #714 Adding remote address and referrer information to request.info
- #724 Route validation is now using payload instead of schema
- #716 Errors when preparing a response now emit internalError correctly
- #715 Auth api refactor
- #700 Adding security tests and fixing security bugs
- #686 Pack auth api
- #683 Pack and cache API refactor
- #723 Global autoValue cookie overwrites other cookies
- #722 Proxy shares cookies across different sessions
- #717 Auto cookie value
- #682 Bypass node http bug in writeHead
- #678 Updating tutorials and adding a plugins list doc
- #674 Adding missing branch tests
- #677 Fix ext() with function array bug
- #663 Full plugin deps
- #662 Plugin deps
- #659 handler interface api styles
- #653 Add request defensive protection
- #642 Adding hawk response auth header
- #649 Migrate to lab (from mocha)
- #638 Event tags
- #632 Adding example of cookie failAction
- #635 Cleanup
- #634 Domains
- #633 pack interface cleanup
- #630 shot 0.1.0, Buffer response type, encoding
- #619 hawk 0.10, payload cleanup, text/* parse support
- #617 Upgrade to Hawk 0.9.0
- #615 Using path.join where possible
- #616 Cookie Max-Age is in seconds, not msec
- #613 Fix proxy mapUri query bug, allow pack.api to specify key
- #612 Remove monitor
- #611 Adding vhost tests
- #609 Virtual hosts support
- #610 Cleaning up test and stream response
- #607 Adding basic crumb CSRF information to reference guide
- #602 Relative paths
- #595 Fixing gzip stream test to use simple stream
- #596 Adding request payload section
- #594 Adding deflate support to stream response
- #593 Adding graceful shutdown from QUIT signal event
- #592 refactor router
- #591 Fixing test to be isolated
- #589 Sending a gzipped proxy response now works correctly
- #585 Server.stop now stops gracefully
- #563 Using memory instead of redis for test
- #561 Composer
- #553 Pack server event and socket timeout override
- #543 Fix scoping bug when using multiple helper prerequisites
- #438 Adding support for payload authentication validation
- #537 Update docs/Reference.md
- #531 JSONP
- #523 Set CORS origin header to incoming request origin if allowed
- #522 rename helmet to tv
- #512 Direct use of Boom (0.3.0)
- #496 Distributable cache for files
- #500 Cookie parsing fails if encoding set to 'none'
- #501 Response refactor, bug fixes
- #498 Adding code coverage support using blanket
- #494 fix typo from issue/491
- #493 Fixing test that would fail periodically
- #482 Parse cookies before authentication
- #481 Adding log tag filtering information to readme
- #480 Cleaning up this. use
- #478 Cleanup ext options and error handling
- #475 Simplify path regex
- #474 0.13.2
- #466 Directory listing at top level folders now link correctly
- #472 Fix matching of wildcard path param with trailing /
- #463 Typo: req.session.used -> req.session.user
- #448 Fixed typos
- #435 Prerequisite helper shortcut interface
- #434 Bound handler to request, bump to 0.12.0
- #427 CORS cleanup and Monitor defaults
- #425 Route sorting rewrite
- #373 Add support for private cache-control flag
- #420 Goodies
- #416 Auth cleanup
- #407 Adding support for basic auth password hashing
- #406 Update auth dependencies
- #402 Use fixed time password comparison
- #301 Merge, payload tests
- #305 Hidden files can now optionally be served
- #299 Fix issue with case-insensitive route conflic
- #298 Prevent use of encoded non-reserved characters in path
- #297 Refactor request path normalization
- #294 Refactor responses, auth, payload
- #277 Changed matching rule of {param*}, Oz tests
- #275 Prevent basic routes collision
- #268 Tests, extension auth schemes
- #258 Adding support for etag and last-modified headers
- #255 Adding support for gzip responses
- #262 Support /path/{param*} syntax
- #221 Adding parsing of multipart form-data content-type
- #212 Adding proxy tests and doing a little refactoring
- #211 Cache tests, Fix response processing header order
- #210 0.8.2
- #209 Tests
- #207 Error refactor, custom error support (passThrough)
- #206 Fixing issue with error responses being cached + test
- #102 v0.6.0 merge
- #101 modified new validation fns to use Utils.assert
- #100 New Query Validation Fns Added
- #99 Simplified request log interface
- #63 Added in SSL cert passphrase to https server creation from settings.
- #96 Small utils
- #94 debug interface, log interface
- #93 fix error on subsequent url accesses for queryval
- #92 Fix example
- #91 QueryValidation fixes, add default behavior for unspecified params, added small tests