Loz Calver
3d71a22a98
FIX: ClassManifest errors if files contain duplicate class names ( fixes #3210 )
2014-06-16 22:18:18 +01:00
Damian Mooyman
ec578e5c8a
Merge remote-tracking branch 'origin/3.1'
2014-05-12 11:32:22 +12:00
Damian Mooyman
51c3346b46
BUG Fix deprecated use of statics in test cases
2014-05-12 08:44:11 +12:00
Ingo Schommer
a05d8113af
Merge pull request #3103 from simonwelsh/configstatic_nextstring
...
Adds to nextString() method to ConfigStaticManifest
2014-05-09 16:08:19 +12:00
Simon Welsh
3602ce2db8
Adds to nextString() method to ConfigStaticManifest
...
This is used to get the classname out of the tokens, rather than assuming that
the class name is a single T_STRING.
2014-05-06 15:35:37 +10:00
Damian Mooyman
d06d5c113b
API Injector supports nesting
...
BUG Resolve issue with DirectorTest breaking RequestProcessor
Injector::nest and Injector::unnest are introduced to better support sandboxing of testings.
Injector and Config ::nest and ::unnest support chaining
Test cases for both Injector::nest and Config::nest
2014-04-29 08:59:33 +12:00
Simon Welsh
fe8dc50ffc
Merge branch '3.1'
...
Conflicts:
tests/view/SSViewerTest.php
2014-03-30 18:17:24 +13:00
Ryan Wachtl
5f87d344f1
FIX Overriding of theme templates in project folder
...
Fixes issue of templates not being found when a Page's main/Layout templates are split between the project and theme folders. Adds more expansive testing for template loading.
2014-01-14 15:05:24 -06:00
Simon Welsh
39d42e4ea3
Merge branch '3.1'
2014-01-09 08:22:47 +13:00
Simon Welsh
8de403abd4
Changes to error message detection to handle the differences in HHVM
2013-12-21 13:17:47 +13:00
Ingo Schommer
6e8ec778c3
Merge remote-tracking branch 'origin/3.1'
...
Conflicts:
admin/templates/Includes/LeftAndMain_Menu.ss
lang/en.yml
2013-10-07 16:19:40 +02:00
Ingo Schommer
795d3e4b3b
Merge remote-tracking branch 'origin/3.0' into 3.1
...
Conflicts:
dev/install/install.php5
docs/en/index.md
tests/core/CoreTest.php
2013-10-07 16:18:20 +02:00
Damian Mooyman
f67b549b77
BUG Fixed cross-platform issues with test cases and file utilities
2013-10-04 13:54:33 +13:00
Damian Mooyman
4b850fb41c
BUG Fixed cross-platform issues with test cases and file utilities
2013-10-03 14:49:18 +13:00
Damian Mooyman
fb5bb646fe
BUG Fixed cross-platform issues with test cases and file utilities
2013-10-02 17:31:06 +13:00
Ingo Schommer
a4c6ae3e90
Merge remote-tracking branch 'origin/3.1'
2013-08-22 13:56:33 +02:00
Ingo Schommer
4a3a88710f
Merge remote-tracking branch 'origin/3.1.0' into 3.1
...
Conflicts:
dev/BehatFixtureFactory.php
model/Hierarchy.php
tests/behat/features/bootstrap/FeatureContext.php
tests/core/CoreTest.php
2013-08-22 13:00:25 +02:00
Ingo Schommer
40c239076b
Merge remote-tracking branch 'origin/3.0' into 3.1.0
...
Conflicts:
model/Hierarchy.php
2013-08-22 12:55:47 +02:00
Simon Welsh
c66cc952d2
Correct line length and indentation
2013-08-21 21:27:16 +12:00
Simon Welsh
151baeede1
Correct line length and indentation
2013-08-21 18:54:05 +12:00
Ingo Schommer
a592c36adf
Merge remote-tracking branch 'origin/3.0' into 3.1.0
...
Conflicts:
docs/en/changelogs/index.md
2013-08-20 20:49:01 +02:00
Hamish Friedlander
4a7aef0e25
FIX Double slashes in ParameterConfirmationToken
2013-08-19 11:35:34 +12:00
Ingo Schommer
2a35f2f928
Merge remote-tracking branch 'origin/3.1'
2013-08-07 17:34:11 +02:00
Hamish Friedlander
2110493466
Merge branch '3.0' into 3.1
2013-08-07 09:43:52 +12:00
Hamish Friedlander
342058742c
FIX Flush on memory exhaustion and headers sent
2013-08-02 09:41:16 +12:00
Hamish Friedlander
d44024b1cf
Merge branch 'origin/3.1'
2013-07-24 13:29:55 +12:00
Hamish Friedlander
541436feb0
Merge branch 'origin/3.0' into 3.1
2013-07-24 12:09:44 +12:00
Hamish Friedlander
a1ea905ca8
FIX Nice errors and allows flush on module removal
2013-07-24 09:57:01 +12:00
Hamish Friedlander
0a79ac3592
Merge branch 'origin/3.1'
...
Conflicts:
templates/forms/CheckboxSetField.ss
templates/forms/FormField_holder.ss
templates/forms/OptionsetField.ss
2013-07-19 16:25:38 +12:00
Hamish Friedlander
d38bd7d5cb
Merge branch 'origin/3.0' into 3.1
2013-07-19 14:18:49 +12:00
Hamish Friedlander
1298d4a5bd
FIX Prevent DOS by checking for env and admin on ?flush=1 ( #1692 )
2013-07-19 12:24:32 +12:00
Andrew Short
8a62593754
Merge branch '3.1'
2013-07-10 18:27:19 +10:00
Cam Spiers
b44641336b
FIX ConfigManifest regenerating every request if variantKeySpec is an empty array()
2013-07-10 11:53:44 +12:00
Andrew Short
bfdf14fafa
Merge branch '3.1'
2013-07-09 13:42:32 +10:00
Cam Spiers
2d30592f72
Improve memory performance when generating config static and class caches
2013-07-08 21:24:14 +12:00
Cam Spiers
0aeb2293bb
Allow module directories to be named with more valid characters ensuring that module names in fragment meta-data are correct.
...
Unit tests for ConfigManifest reference path parsing
2013-07-06 14:16:59 +12:00
Simon Welsh
fbce9fd7cd
Merge branch '3.1'
...
Conflicts:
.travis.yml
docs/en/misc/contributing/code.md
javascript/HtmlEditorField.js
2013-07-05 10:22:58 +12:00
Mateusz Uzdowski
f9ede95e5b
Add configuration system tests for Only and Except combinations.
2013-07-02 15:51:53 +12:00
Hamish Friedlander
5484283a25
FIX changing environment in config.php changes matched yaml rules
2013-07-02 13:21:27 +12:00
Hamish Friedlander
e74c002647
FIX Only and Except rules in Configs not working
2013-07-01 15:47:37 +12:00
Simon Welsh
e55be50783
FIX: ConfigStaticManifest not handling multipart namespaces
...
Fixes #2126
2013-06-26 16:01:55 +12:00
Will Rossiter
736bde8fe5
FEATURE Add Convert::raw2htmlid()
2013-05-26 11:11:53 +12:00
Ingo Schommer
8bf2f16c75
Merge remote-tracking branch 'origin/3.0' into 3.1
...
Conflicts:
README.md
2013-05-17 13:50:40 +02:00
Sam Minnee
b401d39aec
NEW: Move temp data into a user-specific subfolder, to stop temp-permission bugs from occurring.
...
Anyone who has run "sudo -u www-data ./framework/sake dev/build" knows that SilverStripe's temp
folder permissions can be very brittle. This patch resolves this by making the temp folder
user-specific.
To minimise directory pollution it first creates a chmod 777 parent folder with the same name
as the current folder. It then creates a subfolder of this with the same name as the current
user.
The positive impact of this change is that sake can be used without fear of messing up file
permissions. This means, among other things, that we can put a Composer post-update-cmd into
the installer to run dev/build. Progress!
The negative impact is that you will get two caches if you run sake as a different user. However,
that is much better than the current situation - which is a bunch of bugs - and if you're concerned
about that, you still have the option of running sake as www-data.
2013-05-15 12:54:55 +02:00
Sean Harvey
bb6283740a
Fixing broken CoreTest when using silverstripe-cache for temp folder
2013-05-13 23:39:52 +12:00
Will Rossiter
718108969b
API: Add ArrayLib::flatten($array, $preserveKeys)
2013-05-11 00:00:31 +12:00
Simon Welsh
835aefbe83
FIX Handle PHP 5.4's short array notation everywhere arrays are parsed.
2013-05-05 13:27:42 +12:00
Ingo Schommer
5efae23cb2
FIX Template discovery on themed Layout templates
...
Was failing when 'main' template only exists in theme,
but 'Layout' template only exists in module.
2013-04-30 15:41:26 +02:00
Loz Calver
0384369acb
FIX: _config/ directories are now correctly detected as modules ( fixes #1762 )
...
DO NOT MERGE: to be reviewed. Only i18n & Deprecation classes use
->getModules() as far as I can see. Given that the method still simply
returns an array of modulename => modulepath, I don't think it's really
an API change
2013-04-18 14:08:03 +01:00
Will Rossiter
1427a0637b
FIX: remove_extension should work on parameterized extensions
2013-04-06 19:29:03 +13:00
Ingo Schommer
ebca1a64ed
Merge pull request #1299 from silverstripe/user-specific-temp-folder
...
NEW: Move temp data into a user-specific subfolder, to stop temp-permission bugs from occurring.
2013-04-02 02:44:53 -07:00
Ingo Schommer
3334eafcb1
API Marked statics private, use Config API instead ( #8317 )
...
See "Static configuration properties are now immutable, you must use Config API." in the 3.1 change log for details.
2013-03-24 17:20:53 +01:00
Ingo Schommer
bb52f2a214
FIX Allow FALSE in Config API, call remove() will NULL key on update()
2013-03-24 17:20:36 +01:00
Sam Minnee
5779097939
NEW: Move temp data into a user-specific subfolder, to stop temp-permission bugs from occurring.
...
Anyone who has run "sudo -u www-data ./framework/sake dev/build" knows that SilverStripe's temp
folder permissions can be very brittle. This patch resolves this by making the temp folder
user-specific.
To minimise directory pollution it first creates a chmod 777 parent folder with the same name
as the current folder. It then creates a subfolder of this with the same name as the current
user.
The positive impact of this change is that sake can be used without fear of messing up file
permissions. This means, among other things, that we can put a Composer post-update-cmd into
the installer to run dev/build. Progress!
The negative impact is that you will get two caches if you run sake as a different user. However,
that is much better than the current situation - which is a bunch of bugs - and if you're concerned
about that, you still have the option of running sake as www-data.
2013-03-24 18:39:50 +13:00
Ingo Schommer
bfab74ac6e
Merge pull request #1321 from silverstripe-rebelalliance/feature/config
...
FIX ConfigStaticManifest persisting access level after parsing a static
2013-03-22 02:25:54 -07:00
Andrew Short
d3e4863f52
FIX Incorrect parsing of T_STRING values in class spec parsing
...
* Due to missing break, the T_STRING case would fall through to array.
* The values were being added to the wrong variable.
* Added missing support for missing null values.
2013-03-22 14:37:55 +11:00
Hamish Friedlander
47edbfe8fc
FIX ConfigStaticManifest persisting access level after parsing a static
2013-03-22 14:26:48 +13:00
Hamish Friedlander
53595dc930
FIX Parsing docblock comments in ConfigStaticManifest
2013-03-13 11:59:49 +13:00
Hamish Friedlander
60b72edfba
FIX Parsing heredoc, nowdoc & comments in ConfigStaticManifest
2013-03-13 11:26:49 +13:00
Hamish Friedlander
e6352dffbb
FIX Static polution with informational fields
2013-03-12 17:14:12 +13:00
Hamish Friedlander
c52baae3c8
Add some tests for the static parser
2013-03-12 15:32:46 +13:00
Hamish Friedlander
c98621977c
Cache the merged version of any Config value in an in-mem LRU cache
2013-02-28 09:43:33 +13:00
Simon Welsh
94be5c6d87
FIX Handle namespaced classes in Object::parse_class_spec()
2012-12-18 15:00:45 +13:00
Simon Welsh
b0121b541c
Add codesniffer that ensures indentation is with tabs.
2012-12-12 17:33:31 +13:00
Simon Welsh
fc5dd2994c
Add codesniffer that ensures indentation is with tabs.
2012-12-12 00:12:11 +13:00
Will Rossiter
683db8dc1d
API Explicitly load project template files after modules
...
Resolves an issue where if not using the themes directory (i.e just a single app folder) you cannot override module templates.
Changes the SS_TemplateManifest constructor with a new $project argument.
2012-12-04 10:47:37 +01:00
Ingo Schommer
15a687f1e7
Merge remote-tracking branch 'origin/3.0'
2012-11-23 15:31:08 +01:00
Ingo Schommer
aa72425e84
Fixed PHPUnit assertions for incomplete tests in core
...
Avoid PHPUnit throwing "test didn't run any assertions"
notices in PHP. If nothing else, it keeps test output
looking less broken by default, making it more likely
that actual errors do get noticed.
2012-11-23 15:16:39 +01:00
Andrew O'Neil
0c8de0a1de
APICHANGE: Use late static binding for Object::has_extension()
2012-11-07 11:07:55 +13:00
Andrew O'Neil
6dd6a5c188
APICHANGE: Use late static binding for Object::remove_extension()
2012-11-07 11:07:55 +13:00
Andrew O'Neil
fdea5321c7
APICHANGE: add_extension() is now called directly on the class, instead of on Object
2012-11-07 11:07:55 +13:00
Damian Mooyman
0d7816b55d
BUG Fixed issue with Deprecation failing to extract the module from a stacktrace, especially on non-unix systems
...
API Added Convert::nl2os function to normalise end of line characters across systems with tests
BUG Fixed i18n unit tests in non-unix systems constantly failing
BUG Fixed problems with HTMLCleaner tests failing in non-unix systems
2012-10-17 11:57:16 +13:00
Normann Lou
9aaa6b1a7b
ENHANCEMENT: change those harded-coded 'sapphire' to 'framework' either in javascript code or inline document, or a <a> href propty.
2012-10-05 17:00:39 +13:00
Sam Minnee
1f7fc1f76a
FIX Remove instances of lines longer than 120c
...
The entire framework repo (with the exception of system-generated files) has been amended to respect the 120c line-length limit. This is in preparation for the enforcement of this rule with PHP_CodeSniffer.
2012-09-30 17:18:13 +13:00
Damian Mooyman
5ea2c3dc5a
FIXED: Unnecessarily strict comparison of path separators in windows filenames
2012-09-27 13:41:28 +12:00
Ingo Schommer
e2f073f38a
Method visibility according to coding conventions
2012-09-20 10:46:59 +02:00
Sean Harvey
b075fa29c5
Have tiny_mce_gzip.php use local silverstripe-cache folder if available
...
This is a fix for ticket #7670 . Some hosting situations don't
allow write access to the system temp path. tiny_mce_gzip.php is currently
using sys_get_temp_dir() by default, and not using a local silverstripe-cache
folder that may exist in the SilverStripe project.
This change moves the getTempFolder() function into a common file, and
includes that in core/Core.php, as well as thirdparty/tinymce/tiny_mce_gzip.php
so both locations share the same code to work out the temp path.
2012-09-19 16:43:17 +12:00
Hamish Friedlander
8b6e4f5a90
Add some basic tests for ConfigManifest#relativeOrder
2012-08-27 16:42:25 +12:00
Sam Minnee
114ebb6953
API CHANGE: Don't have any instance caching in singleton(), rely on Injector for this.
2012-06-11 22:41:12 +12:00
Sean Harvey
23c93b9a44
MINOR Fixing ArrayDataTest to use toMap() instead of getArray() which is deprecated.
2012-05-11 11:27:36 +12:00
Sean Harvey
b1e17578c7
API CHANGE Removed assertType() and assertEmpty() workarounds. Use assertInstanceOf()
...
instead of assertType(), assertEmpty() is available in PHPUnit 3.5+.
PHPUnit 3.4 is no longer supported, so please upgrade your version to
work.
MINOR Removed FullTestSuite which was a workaround for PHPUnit but not
used.
2012-05-09 23:05:39 +12:00
Ingo Schommer
41b51a17ce
MINOR Isolating testRaw2URL settings
2012-05-08 22:13:03 +02:00
Sean Harvey
16e950cb6a
MINOR Tidy up of code formatting in TestRunner
...
MINOR Fixing up old ObjectStaticTest and merging into ConfigTest
2012-04-18 23:29:54 +12:00
Andrew O'Neil
14c0796617
MINOR: Remove checks for PHP < 5.3.2, as it's no longer supported
2012-04-18 10:38:09 +12:00
Sean Harvey
4a3070757b
MINOR Fixed tests
2012-04-17 10:53:40 +12:00
Ingo Schommer
0a0be63ee2
ENHANCEMENT Added $exclusive flag to SS_ClassLoader->pushManifest() to allow for multiple manifests co-existing (useful for tests which rely on core classes but also want to test their own manifests)
2012-04-15 17:17:15 +02:00
Simon Welsh
f07258f3cf
MINOR Update @package values to match renaming sapphire
2012-04-15 10:50:19 +12:00
Simon Welsh
3a6341a251
API-CHANGE sapphire folder can now be renamed.
2012-04-15 10:50:19 +12:00
Simon Welsh
f8082e4814
MINOR Add newline to end of files without one
2012-04-15 10:50:19 +12:00
Ingo Schommer
e045ffeb29
Merge pull request #205 from AngryPHPNerd/sapphire
...
---
In SS-2.4 you can prefix files with an underscore to exclude them from manifest this can be useful for backups of old classes or huge data files.
I think this behaviour should be readded.
(I will add a unit test for this ...)
2012-04-11 17:32:34 +02:00
Ingo Schommer
40d73127ae
MINOR Using late static binding instead of Object::create() calls
2012-04-04 17:10:31 +02:00
Ingo Schommer
6517f4496b
Merge pull request #273 from ajoneil/sapphire
...
---
This allows DataList::create(SiteTree) as equivalent to Object::create(DataList, SiteTree), without
having to have a create() function on DataList.
Required for E_STRICT compliance, as child classes cant override create() if they change the arguments.
DBField::create() is also renamed to DBField::create_field(), as this does not just call the constructor, which all other cases of create() do.
Conflicts:
tests/model/DateTest.php
tests/model/DatetimeTest.php
2012-04-04 16:48:16 +02:00
Sean Harvey
8ae474b182
API CHANGE Remove use of Services_JSON and replace with json_encode() and json_decode()
...
API CHANGE Convert::json2array() will convert nested JSON structures to array as well for easier traversal, instead of array with nested objects.
2012-03-31 13:17:36 +13:00
Andrew O'Neil
de2832e65f
ENHANCEMENT: Allow Object::create() to be called with late static binding.
...
This allows DataList::create('SiteTree') as equivalent to Object::create('DataList', 'SiteTree'), without
having to have a create() function on DataList. Required for E_STRICT compliance.
2012-03-27 17:57:42 +13:00
AngryPHPNerd
42f8d9f77a
- Readded check for _config.php in ClassManifest.
...
- Added UnitTest for files with underscore prefix.
2012-03-13 23:38:34 +01:00
Hamish Friedlander
d89544f3f6
MINOR: Disable tests in ObjectStaticTest that break
2012-03-09 18:16:45 +13:00
Hamish Friedlander
d355cd5baf
ENHANCEMENT: Add config layer - the Config access class itself, and the ConfigManfiest builder which parses in the yaml config files
2012-03-09 18:13:56 +13:00
Hamish Friedlander
28bb83552a
API-CHANGE: moving iterator support from ViewableData to SSViewer. New set of unit tests for iterator support functions.
2012-03-06 09:31:55 +13:00
Dominik Beerbohm
edf6cd6d83
API CHANGE: Remove ArrayData::forTemplate(), because it has little usefulness corrupts ViewableData customisation.
2012-02-24 16:35:12 +13:00
Simon Welsh
7658e902fc
BUGFIX Convert::html2raw() not correctly stripping script and style tags
2012-02-15 07:55:52 +13:00
Fred Condo
d370423825
Clean up trailing ?> per coding standard
...
All sapphire but the lang directory
2012-02-12 12:40:16 -08:00
Sam Minnée
2c770a6f8f
Merge pull request #146 from simonwelsh/namespace-manifest
...
BUGFIX Namespaced classes were always having their namespace prepended t...
2012-01-06 15:58:46 -08:00
Ingo Schommer
4056b94f75
BUGFIX Improved ClassInfo::ancestry() performance through in-memory caching and removal of unnecessary is_object() check - get_class() will complain if its not passed an object already)
2012-01-02 16:49:33 +01:00
Simon Welsh
dd546a9888
BUGFIX Merge request arrays recursively
2011-12-23 17:48:49 +13:00
Simon Welsh
27a51ed7ed
BUGFIX Namespaced classes were always having their namespace prepended to their base class
2011-12-23 10:24:42 +13:00
Hamish Friedlander
be9286fbc4
Merge pull request #132 from simonwelsh/namespace-manifest
2011-12-17 15:40:06 +13:00
Simon Welsh
97f8cc4ab3
BUGFIX Skip NamespacedClassManifestTest on PHP versions before 5.3
2011-12-17 14:26:03 +13:00
Simon Welsh
3e6a91a07f
ENHANCEMENT Allow ClassManifest to handle classes with namespaces, or that extend classes in namspaces or that implement interfaces in namespaces.
2011-12-17 14:03:53 +13:00
Sam Minnee
70d40cf4df
BUGFIX: Removed use of base "Exception" class in order to avoid failures on PHPUnit 3.6.
2011-12-17 11:51:40 +13:00
Ingo Schommer
9b27a4c1be
ENHANCEMENT More flexible URL filtering through new URLSegmentFilter API. Support for multibyte URL segments through URLPathFilter::$default_allow_multibyte. Abstraction from Convert::raw2url() (and SiteTree->generateURLSegment())
2011-11-29 11:04:08 +01:00
Sam Minnee
3e3188f81a
MINOR: Update tests for deprecated functions to explicitly disable deprecation errors.
2011-10-29 17:34:32 +13:00
Ingo Schommer
3a5b3af7c6
BUGFIX Fixed tag stacking in Diff.php thirdparty lib (AIR-71)
2011-10-07 14:12:52 +02:00
Ingo Schommer
ce8e72cf0e
MINOR Removing executable flag from all files (thanks miiihi)
2011-09-18 22:04:02 +02:00
ajshort
54a5fc6a74
BUGFIX: Fixed the manifest not parsing interfaces which extended from multiple interfaces.
2011-05-02 10:37:26 +10:00
Ingo Schommer
37774d4103
ENHANCEMENT Added ClassManifest->getModules(), and removed limitation to toplevel modules in ClassManifest->handleFile() (necessary to detect new sapphire/admin/ "submodule")
2011-05-01 20:23:07 +12:00
ajshort
3a1c2df4e7
API CHANGE: Renamed DataObjectDecorator to DataExtension.
...
API CHANGE: Renamed LeftAndMainDecorator to LeftAndMainExtension.
MINOR: Replaced all references to decorators with extension.
2011-04-26 11:01:38 +10:00
Ingo Schommer
9b29616710
API CHANGE Rearranged files in sapphire to reflect core dependencies more accurately, and have the tests/ folder mirror its folder structure
2011-03-31 09:56:21 +13:00
Julian Seidenberg
341245dd4a
ENHANCEMENT Allowing custom HTMLCleaner implementations via Diff:: and new TidyHTMLCleaner and PurifierHTMLCleaner classes
2011-03-30 18:02:25 +13:00