Commit Graph

18714 Commits

Author SHA1 Message Date
Damian Mooyman
15b4cf70ed Merge pull request #7090 from open-sausages/pulls/4.0/i-forgot-to-flush
Fix enable ?flush rather than just ?flush=1
2017-06-29 18:14:43 +12:00
Christopher Joe
061393a098 Fix enable ?flush rather than just ?flush=1 2017-06-29 16:13:38 +12:00
Chris Joe
d4b41b9541 Merge pull request #7067 from open-sausages/pulls/4.0/security-merge
[SS-2017-002] FIX Lock out users who dont exist in the DB
2017-06-29 15:35:39 +12:00
Chris Joe
f024a0b39b Merge pull request #6953 from open-sausages/pulls/4.0/npm-docs-update
DOCS Add link to silverstripe npm account
2017-06-29 13:59:37 +12:00
Daniel Hensby
30986b4ea3
[SS-2017-002] FIX Lock out users who dont exist in the DB 2017-06-29 13:58:55 +12:00
Sam Minnee
2c8790ca7d FIX: DataObject::get_one() misses return null, not false
Fixes https://github.com/silverstripe/silverstripe-framework/issues/5441
2017-06-29 13:51:52 +12:00
Damian Mooyman
3e0b7bde9c
DOCS Add link to silverstripe npm account 2017-06-29 13:37:17 +12:00
Damian Mooyman
23a719e14e Merge pull request #7080 from jonom/docs-image-force-resample
DOCS clarify $force_resample behaviour
2017-06-29 12:27:07 +12:00
Jonathon Menz
b60ccd11c3 DOCS clarify $force_resample behaviour
Fixes https://github.com/silverstripe/silverstripe-assets/issues/21
2017-06-28 14:40:18 -07:00
Daniel Hensby
e7df10dc52
Merge branch '3' 2017-06-28 18:59:08 +01:00
Daniel Hensby
eec8dfa7ad
Merge branch '3.6' into 3 2017-06-28 11:12:03 +01:00
Daniel Hensby
d94182702c
Merge branch '3.5' into 3.6 2017-06-28 11:10:43 +01:00
Chris Joe
9a98655124 Custom redux state in injector, updated docs (#7042)
* Update docs for new Injector js structure and description for injector reducer API

* Injector documentation updates

* updates per ingo

* Update examples and some notes based on feedback

* Updates per ingo

* documentation updates to reflect new injector.component

* Minor doc updates
2017-06-28 21:35:04 +12:00
Ingo Schommer
977c62a513 Merge pull request #7065 from sminnee/resource-url-generator
Abstraction of resource loading
2017-06-28 20:59:05 +12:00
Ingo Schommer
86302746e3 Merge pull request #7070 from sminnee/moar-php7
MINOR: More PHP7 in travis builds
2017-06-28 20:54:14 +12:00
Damian Mooyman
b2f3b218a3
BUG Fix incorrect $database autoinit
BUG Fix missing $request in Installer bootstrapping
2017-06-28 17:59:16 +12:00
Damian Mooyman
8078ee08f2
BUG Fix folder urls getting mtime querystring appended 2017-06-28 16:59:41 +12:00
Sam Minnee
741166e369 API: ModulePath template global now takes any composer package name.
NEW: URL generation now handled by pluggable ResourceURLGenerator service.
NEW: Requirements::javascript() and Requirements::css() now support “vendor/package:resource” syntax.

These changes will make it easier to us to fully abstract:
 - file access from module location
 - file location from URL generation

API: ModulePath template global now takes any composer package name.
NEW: URL generation now handled by pluggable ResourceURLGenerator service.
NEW: Requirements::javascript() and Requirements::css() now support “vendor/package:resource” syntax.

These changes will make it easier to us to fully abstract:
 - file access from module location
 - file location from URL generation
2017-06-28 16:59:28 +12:00
Sam Minnee
07913e6df6 MINOR: Drop dual MYSQL/PGSQL builds for PHP7
We can get away with testing MySQL on PHP 5.6
and PHP 7.1 and testing PGSQL on PHP 7.0. We don’t
need a full matrix.
2017-06-28 16:57:20 +12:00
Sam Minnee
1fa712e189 MINOR: More PHP7 in travis builds
PHP7 is faster than PHP5.6 so we should use it for as many builds
as possible.

This leaves 1 build - the coverage build - running on PHP5.6
and puts the rest on PHP7.
2017-06-28 16:51:41 +12:00
Chris Joe
51e4e4df6d Merge pull request #7045 from open-sausages/pulls/4.0/selective-form-unsaved-change-notification
BUG Add flag on form whether to notify user when there's unsaved changes
2017-06-28 15:36:33 +12:00
Damian Mooyman
a48628db20 Merge pull request #7030 from 3Dgoo/patch-1
Documentation link fixes
2017-06-28 12:15:42 +12:00
Damian Mooyman
2b8eb202db Merge pull request #6687 from hailwood/patch-6
Do not default to locale if hasEmptyDefault is true
2017-06-28 12:12:16 +12:00
Saophalkun Ponlu
288de2eb14 BUG Add flag on form whether to notify user when there's unsaved changes 2017-06-28 11:14:12 +12:00
Damian Mooyman
2bdb72c0f3 Merge pull request #7063 from wilr/prefix-patch
Support empty DATABASE_PREFIX
2017-06-28 10:55:23 +12:00
Will Rossiter
ecb5d85de0 Support empty SS_DATABASE_PREFIX 2017-06-28 08:18:21 +12:00
Daniel Hensby
399c46579a
Merge branch '3.6' into 3 2017-06-27 13:15:14 +01:00
Daniel Hensby
1e5592a3d9
Merge branch '3.5' into 3.6 2017-06-27 13:14:39 +01:00
Daniel Hensby
29b9311634
Merge tag '3.6.1' into 3.6
Release 3.6.1
2017-06-27 12:53:55 +01:00
Daniel Hensby
ddff7c5dad Added 3.6.1 changelog 2017-06-27 12:48:16 +01:00
Daniel Hensby
f62cba2cd8
Added 3.6.1-alpha2 changelog 2017-06-27 12:22:26 +01:00
Daniel Hensby
1d31987a9d
Merge pull request #7027 from open-sausages/pulls/3.6/revert-lang-update 2017-06-27 12:21:58 +01:00
Daniel Hensby
61fc53a556
Added 3.6.1-alpha1 changelog 2017-06-27 12:21:10 +01:00
Ingo Schommer
52841533ed Better ErrorPage upgrading guide (#7066)
See https://github.com/silverstripe/silverstripe-framework/issues/4149
2017-06-26 21:31:31 -07:00
Damian Mooyman
cf758ddd4f Merge pull request #7052 from sminnee/director-middleware
Allow application of HTTPMiddleware to Director.
2017-06-27 14:21:23 +12:00
Ingo Schommer
daed8cb056 Merge pull request #7061 from jonom/errorpage-separation
Removed ErrorPage
2017-06-27 14:00:43 +12:00
Damian Mooyman
f699650b5f Update based on feedback 2017-06-27 13:32:39 +12:00
Damian Mooyman
d20ab50f9d API Stronger Injector service unregistration
BUG Fix up test regressions
FIX director references to request object
API Move all middlewares to common namespace
API Implement RequestHandlerMiddlewareAdapter
ENHANCEMENT Improve IP address parsing
Fix up PHPDoc / psr2 linting
BUG Fix property parsing in TrustedProxyMiddleware
BUG Fix Director::is_https()
2017-06-27 13:32:39 +12:00
Damian Mooyman
7aa67f856b Move files to middleware folder 2017-06-27 13:32:39 +12:00
Sam Minnee
67887febc5 fix - session now uses request 2017-06-27 13:32:39 +12:00
Sam Minnee
69fe166897 API: Director::handleRequest() is no longer static - use a Director service
NEW: Add HTMLMiddlewareAware trait to HTTPApplication, Director, and RequestHandler
NEW: Allow service specs to be passed to Director rules.

This refactor of the controller middlewares takes a service definition
approach rather than a static-method-and-config approach that Director
historically had.

The use of a trait for middleware means that the Middlewares array
property can be defined on RequestHandler, Director, and HTTPApplication
objects in the same way.
2017-06-27 13:32:39 +12:00
Sam Minnee
e92c63c545 API: Remove $sid argument of Session::start()
NEW: Pass HTTPRequest to session
NEW: Pass HTTPReuqest optionally to Director statics

The session handler now expects to operate on a specific
HTTPRequest object.
2017-06-27 13:32:39 +12:00
Sam Minnee
ccc86306b6 NEW: Add TrustedProxyMiddleware
API: SS_TRUSTED_PROXY_HOST_HEADER replace with middleware config
API: SS_TRUSTED_PROXY_PROTOCOL_HEADER replace with middleware config
API: SS_TRUSTED_PROXY_IP_HEADER replace with middleware config
API: Front-End-Https = “on” header no longer supported

This middleware replaces the TRUSTED_PROXY setting and shifts its
configuration out of the env vars and bootstrap and into the Director
flow.
2017-06-27 13:32:39 +12:00
Sam Minnee
c4d038f20d NEW: Add HTTPRequest::getScheme()/setScheme()
NEW: Add HTTPRequest::setIP()
API: Rely on HTTPRequestBuilder to set scheme and IP

These changes tidy up HTTPRequest making it a container for information
and removing special logic from it.

This makes it less feature-rich: it doesn’t contain trusted-proxy logic.
This will be able to provided by a middleware.

The new getScheme() method is designed to be closish to PSR-7’s
getUri()->getScheme() equivalent.

There are no more direct $_SERVER references in HTTPRequest.
2017-06-27 13:32:39 +12:00
Sam Minnee
4d89daac78 NEW: Register Injector::inst()->get(HTTPRequest)
HTTPRequest is provided as a service so that global references for
session, hostname, etc can be facilitated. It’s a bit of a hack and
should be avoided but we’re unlikely to scrub it completely from the
Silverstripe 4 code.
2017-06-27 13:32:39 +12:00
Sam Minnee
10866c0809 API: Replace Director::direct() with Director::handleRequest().
There was no longer any code in direct() and so I opted to expose the
handleRequest() method instead.
2017-06-27 13:32:39 +12:00
Sam Minnee
72a7655e95 NEW: Moved allowed-hosts checking to a middleware. 2017-06-27 13:32:39 +12:00
Sam Minnee
db080c0603 NEW: Move session activation to SessionMiddleware. 2017-06-27 13:32:39 +12:00
Sam Minnee
254204a3a6 NEW: Replace AuthenticationRequestFilter with AuthenticationMiddleware 2017-06-27 13:32:39 +12:00
Sam Minnee
e855622890 NEW: Replace FlushRequestFilter with FlushMiddleware 2017-06-27 13:32:39 +12:00