Commit Graph

198 Commits

Author SHA1 Message Date
Guy Sartorelli
1253ab82af
Merge pull request #10415 from kinglozzer/10413-php81-enums
NEW: Add support for autoloading PHP 8.1 enums
2022-07-27 11:38:51 +12:00
Loz Calver
6e6db8a27a DEP: Bump minimum version of nikic/php-parser for enum support 2022-07-26 11:08:55 +01:00
Steve Boyd
c80e10f892
FIX PDO transaction in PHP 8, add GitHub Actions CI (#10360) 2022-06-27 15:30:03 +12:00
Steve Boyd
59b2a3ff8b DEP Add guzzle 7 requirement 2022-05-18 11:57:34 +12:00
Steve Boyd
c72efa0d3f ENH Use guzzle for oembed 2022-05-11 16:37:59 +12:00
Steve Boyd
9add508718 NEW Use embed/embed v4 2022-03-24 10:27:15 +13:00
Steve Boyd
588c095e76 DEP Require guzzlehttp/psr7 ^2 2022-03-09 10:03:20 +13:00
Steve Boyd
0318372641 API Implement updated Serializable API 2022-02-14 13:26:11 +13:00
Steve Boyd
b800927d97
DEP Set minimum symfony version to 3.4 (#10209) 2022-02-08 16:27:43 +13:00
Maxime Rainville
2922370d81 API Add Module::getCILibrary function 2021-11-18 21:45:53 +13:00
Maxime Rainville
d5b03eb5cb
Bump to composer/installer v2 (#10153)
* DEP Allow installation of composer installer 2

* MNT Normalise composer constraints
2021-11-18 14:08:25 +13:00
Steve Boyd
e53c18528c MNT Remove polyfill 2021-11-05 12:06:55 +13:00
Steve Boyd
cd076542f4
API Upgrade SapphireTest to work with phpunit 9 (#10028) 2021-10-27 15:39:47 +13:00
Steve Boyd
92f47da08b
API Update SwiftMailer from v5 to v6 (#10048)
* Update SwiftMailer from v5 to v6

- Fixes #9834
- Update default Swift_Transport to use Swift_SendmailTransport
- Update version restraint for Swiftmailer
- Address new parameter type for Swift_Message::setDate()
- Update class references in docblocks

Co-authored-by: Danaë Miller-Clendon <danae.millerclendon@silverstripe.com>
2021-08-18 12:16:45 +12:00
Christophe Coevoet
bc92b52c1c
Remove useless requirement
It does not make sense to require a psr-container-implementation when the package is itself providing an implementation, as it fulfills its own requirement.
2020-10-22 15:28:02 +02:00
Garion Herman
4670cd3af9
Merge pull request #9726 from creative-commoners/pulls/4/fly-er-system
DEP Remove unused league/flysystem requirement
2020-10-19 14:15:38 +13:00
Garion Herman
7278c43267 MNT Expand Composer requirements to support PHP 8 2020-10-14 15:31:53 +13:00
Garion Herman
256bd53557 DEP Remove unused league/flysystem requirement
This has been shifted to silverstripe/assets instead.
2020-10-13 12:15:56 +13:00
Sam Minnee
9247bc8b79 NEW: Add Symfony 4 support alongside Symfony 3
- Remove duplicate key in YML file
 - Remove deprecated yaml dump indentation set (the constructor arg works in both ^3 and ^4)

Fixes #9274
2020-09-21 19:09:08 +12:00
Dan Hensby
ae0ece2b02
Merge pull request #9665 from creative-commoners/pulls/4/php8-fqcn-token 2020-09-18 20:44:22 +01:00
Sam Minnee
0d7c5a9ece NEW Add/remove callbacks on RelationList
This provides a mechanism for adjusting the behaviour of these
relations when building more complex data models.

For example the following example has a status field incorporates a
Status field into the relationship:

```php
function MyRelation() {
  $rel = $this->getManyManyComponents(‘MyRelation’);
  $rel = $rel->filter(‘Status’, ‘Active’);

  $rel->addCallbacks()->add(function ($relation, $item, $extra) {
    $item->Status = ‘Active’;
    $item->write();
  });
}
```

Introduces a new library dependency: http://github.com/sminnee/callbacklist
2020-09-18 13:33:42 +12:00
Sam Minnee
24dfe0b026 NEW: Add --prefer-lowest to PHP 7.1 build
This build will ensure that older versions of packages that we claim
work with silverstripe/framework do, in fact, work.

‘Composer install’ changed to ‘composer update’ as that’s what’s being
executed in the absence of a composer.lock, and better clarifies intent.

Note that:

 * Support for nikic/php-parser ^2 was lost in 25759ffc5f.

 * Support for monolog/logger < 1.16 was lost in 7ab55a4948
2020-09-15 17:40:42 +12:00
Sam Minnee
fb9e6e51a6 FIX: Switch to sminnee fork of phpunit 5.7
This provides 5.7.28 with fixes for PHP 8 support.
2020-09-15 17:40:42 +12:00
Sam Minnee
b3dd27953b NEW: Allow league/csv ^9
Hopefully this has better PHP 8 support.
2020-09-15 17:40:42 +12:00
Dan Hensby
bb03d314ff
Include phpcs as a dev dependency 2020-04-02 12:06:40 +01:00
Serge Latyntcev
18074cb891 Remove obsolete branch-alias 2019-11-14 01:24:36 +00:00
Christopher Darling
578dd973a2
drop random_compat dependency now PHP support is 7.1+
since 4.5+ is going to be PHP 7.1+ random_compat should no longer be needed
2019-09-25 09:03:11 +01:00
Aaron Carlino
da6582f593 NEW: Remove web installer, move to separate package (#9231)
* Remove installer

* Remove exposed install files

* Replace Dev/Install classes still in use

* Update changelog

* FIX make the grid field actions consistent to what they look like on pages

Resolves https://github.com/silverstripe/silverstripe-admin/issues/904

* Docs changes
2019-09-11 13:10:25 +12:00
Sam Minnee
1ee03da657 FIX: Fix PHPUnit operation on PHP 7.4
Fixes #9062
2019-06-14 17:09:37 +12:00
Aaron Carlino
e2da7b0dc4 Merge branch '4.4' into 4 2019-06-10 16:37:16 +12:00
Ingo Schommer
7301b375b8 NEW Clearer file migration output with colours 2019-06-05 11:41:06 +12:00
Sam Minnee
ac35344041 API: Drop PHP 5.6 and PHP 7.0 support in SS 4.5
This was discussed and agreed in #8556. The two changes are 
composer.json and travis. The docs have also been updated. No other
code changes have been made.
2019-05-23 13:10:45 +12:00
Robbie Averill
b5b4014280 Update branch alias to 4.5.x-dev 2019-04-21 11:10:17 +12:00
Robbie Averill
86e683c5ec Remove obsolete branch alias 2019-04-21 11:09:40 +12:00
Maxime Rainville
1e01deea39 NEW Make resources dir configurable (#8519)
* NEW Make resources dir configurable.

* Removing reference to old `resources` and updating doc #8519

* Rrtarget to 4.4 release.

* DOC Reference SS_RESOURCES_DIR in Environment doc.

* API Add a Resources method to SilverStripe\Core\Manifest\Module to read the resources-dir from composer.json

* Clean up reference to SS_RESOURCES_DIR env var

* Set default resources-dir

* Update test to use RESOURCES_DIR const in expected resource url method

* Correcting typos

Co-Authored-By: maxime-rainville <maxime@rainville.me>

* MINOR Correctubg minor typos

* DOCS Document the intricacies of exposing static assets.
2019-01-09 15:35:45 +13:00
Robbie Averill
22dae0f74c Bump branch alias and Travis version for 4.4.x-dev 2018-10-15 14:10:41 +02:00
Loz Calver
7f6652996c Re-order composer requirements 2018-10-05 15:52:47 +01:00
Loz Calver
df73188bc6 Add ext-json to composer platform requirements 2018-10-05 15:52:12 +01:00
Michal Kleiner
63feab98b9
Allow version 4 of nikic/php-parser dependency 2018-07-24 16:18:44 +12:00
Damian Mooyman
00f89d0668
Add back missing branch alias 2018-06-15 16:30:05 +12:00
Damian Mooyman
a5ec4e4464 Remove obsolete branch-alias 2018-06-15 15:29:51 +12:00
Damian Mooyman
d21e03d4ed
Fix branch alias 2018-04-13 10:14:06 +12:00
Damian Mooyman
87c7a53511
Merge remote-tracking branch 'origin/4.1' into 4
# Conflicts:
#	.travis.yml
2018-04-13 09:56:58 +12:00
Damian Mooyman
5a8c5601a9
Merge remote-tracking branch 'origin/4.0' into 4.1
# Conflicts:
#	.travis.yml
#	composer.json
2018-04-13 09:55:23 +12:00
Damian Mooyman
c54b07a952
API Update to use new chromedriver + behat-extension + facebook/webdriver 2018-04-12 14:19:14 +12:00
Daniel Hensby
ced2ba1f64 API Move CSV writing/reading to league/csv library 2018-02-22 09:22:37 +13:00
Damian Mooyman
93cc660474
Update 4 alias to 4.2 2018-02-07 17:46:57 +13:00
Christopher Joe
4b69fa49ec BUG Fix travis 2017-11-29 15:57:32 +13:00
Damian Mooyman
9666222637
BUG Fix _configure_database.php being ignored
Fixes #7590
2017-11-29 12:01:24 +13:00
Sam Minnee
4bec62ba51 Merge branch '4.0' into 4 2017-10-20 18:45:16 +13:00
Damian Mooyman
b9cb1e69e6 BUG Replace phpdotenv with thread-safe replacement 2017-10-20 18:43:11 +13:00
Damian Mooyman
8d36d55205
Merge remote-tracking branch 'origin/4.0' into 4 2017-10-12 11:54:38 +13:00
Damian Mooyman
0c52623ad0
Update composer.json 2017-10-12 11:53:12 +13:00
Damian Mooyman
315a387a87
Update aliases 2017-10-11 17:59:44 +13:00
Damian Mooyman
f685c8c111 Remove obsolete branch-alias 2017-10-11 17:31:36 +13:00
Daniel Hensby
96f04d6686
Expose sake via vendor/bin dir with composer 2017-10-10 15:51:11 +01:00
Ingo Schommer
8e49b563a9 Fix installer paths for vendorised module 2017-10-03 09:03:37 +13:00
Ingo Schommer
e884dc3b53 Expose as vendor module 2017-10-03 09:03:33 +13:00
Damian Mooyman
c14233f743
API Enable config files to be loaded for behat tests 2017-08-15 10:30:29 +12:00
Damian Mooyman
55dc3724db FIX Invalid composer.json 2017-07-05 16:24:15 +12:00
Christopher Joe
6492b8edae Update composer alias 2017-07-05 16:22:06 +12:00
Damian Mooyman
5ed91970f6 Remove obsolete branch-alias 2017-07-03 16:53:53 +12:00
Daniel Hensby
bd50b6f865
Partial revert of #7096 2017-06-30 12:35:41 +01:00
Damian Mooyman
267d7ebfc4
Temporarily restrict php-webdriver to 1.4.3
Add composer.lock to artifacts
See https://github.com/instaclick/php-webdriver/pull/79
2017-06-30 12:35:01 +12:00
Damian Mooyman
3873e4ba00 API Refactor bootstrap, request handling
See https://github.com/silverstripe/silverstripe-framework/pull/7037
and https://github.com/silverstripe/silverstripe-framework/issues/6681

Squashed commit of the following:

commit 8f65e56532
Author: Ingo Schommer <me@chillu.com>
Date:   Thu Jun 22 22:25:50 2017 +1200

    Fixed upgrade guide spelling

commit 76f95944fa
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 16:38:34 2017 +1200

    BUG Fix non-test class manifest including sapphiretest / functionaltest

commit 9379834cb4
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 15:50:47 2017 +1200

    BUG Fix nesting bug in Kernel

commit 188ce35d82
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 15:14:51 2017 +1200

    BUG fix db bootstrapping issues

commit 7ed4660e7a
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 14:49:07 2017 +1200

    BUG Fix issue in DetailedErrorFormatter

commit 738f50c497
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 11:49:19 2017 +1200

    Upgrading notes on mysite/_config.php

commit 6279d28e5e
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 11:43:28 2017 +1200

    Update developer documentation

commit 5c90d53a84
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 22 10:48:44 2017 +1200

    Update installer to not use global databaseConfig

commit f9b2ba4755
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Wed Jun 21 21:04:39 2017 +1200

    Fix behat issues

commit 5b59a912b6
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Wed Jun 21 17:07:11 2017 +1200

    Move HTTPApplication to SilverStripe\Control namespace

commit e2c4a18f63
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Wed Jun 21 16:29:03 2017 +1200

    More documentation
    Fix up remaining tests
    Refactor temp DB into TempDatabase class so it’s available outside of unit tests.

commit 5d235e64f3
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Wed Jun 21 12:13:15 2017 +1200

    API HTTPRequestBuilder::createFromEnvironment() now cleans up live globals
    BUG Fix issue with SSViewer
    Fix Security / View tests

commit d88d4ed4e4
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 20 16:39:43 2017 +1200

    API Refactor AppKernel into CoreKernel

commit f7946aec33
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 20 16:00:40 2017 +1200

    Docs and minor cleanup

commit 12bd31f936
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 20 15:34:34 2017 +1200

    API Remove OutputMiddleware
    API Move environment / global / ini management into Environment class
    API Move getTempFolder into TempFolder class
    API Implement HTTPRequestBuilder / CLIRequestBuilder
    BUG Restore SS_ALLOWED_HOSTS check in original location
    API CoreKernel now requires $basePath to be passed in
    API Refactor installer.php to use application to bootstrap
    API move memstring conversion globals to Convert
    BUG Fix error in CoreKernel nesting not un-nesting itself properly.

commit bba9791146
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 19 18:07:53 2017 +1200

    API Create HTTPMiddleware and standardise middleware for request handling

commit 2a10c2397b
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 19 17:42:42 2017 +1200

    Fixed ORM tests

commit d75a8d1d93
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 19 17:15:07 2017 +1200

    FIx i18n tests

commit 06364af3c3
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 19 16:59:34 2017 +1200

    Fix controller namespace
    Move states to sub namespace

commit 2a278e2953
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 19 12:49:45 2017 +1200

    Fix forms namespace

commit b65c21241b
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 15 18:56:48 2017 +1200

    Update API usages

commit d1d4375c95
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Thu Jun 15 18:41:44 2017 +1200

    API Refactor $flush into HTPPApplication
    API Enforce health check in Controller::pushCurrent()
    API Better global backup / restore
    Updated Director::test() to use new API

commit b220534f06
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 22:05:57 2017 +1200

    Move app nesting to a test state helper

commit 603704165c
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 21:46:04 2017 +1200

    Restore kernel stack to fix multi-level nesting

commit 2f6336a15b
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 17:23:21 2017 +1200

    API Implement kernel nesting

commit fc7188da7d
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 15:43:13 2017 +1200

    Fix core tests

commit a0ae723514
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 15:23:52 2017 +1200

    Fix manifest tests

commit ca03395251
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 15:00:00 2017 +1200

    API Move extension management into test state

commit c66d433977
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Tue Jun 13 14:10:59 2017 +1200

    API Refactor SapphireTest state management into SapphireTestState
    API Remove Injector::unregisterAllObjects()
    API Remove FakeController

commit f26ae75c6e
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 12 18:04:34 2017 +1200

    Implement basic CLI application object

commit 001d559662
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Mon Jun 12 17:39:38 2017 +1200

    Remove references to SapphireTest::is_running_test()
    Upgrade various code

commit de079c041d
Author: Damian Mooyman <damian@silverstripe.com>
Date:   Wed Jun 7 18:07:33 2017 +1200

    API Implement APP object
    API Refactor of Session
2017-06-22 22:50:45 +12:00
Damian Mooyman
a84c2b7e56 Revert "[Improvement|testing] Use scriptfusion to immediately print PHPUnit output" 2017-05-22 21:02:34 +12:00
Damian Mooyman
4197090e11 Merge pull request #6940 from kinglozzer/randomgenerator
Only use random_bytes() for RandomGenerator (closes #6397)
2017-05-22 10:29:55 +12:00
Simon Erkelens
24a5bf6ff1 Use scriptfusion to immediately print PHPUnit output. Prettier and faster. 2017-05-21 17:14:00 +12:00
Loz Calver
e653e90997 Only use random_bytes() for RandomGenerator (closes #6397) 2017-05-19 11:18:56 +01:00
Ingo Schommer
f282408324 Require psr/container (#6935)
Regression from https://github.com/silverstripe/silverstripe-framework/pull/6931
2017-05-19 16:33:08 +12:00
Ingo Schommer
100048da33 API PSR-11 compliance (fixes #6594) (#6931)
Note that our usage of `$asSingleton` in `get()` is fine. Quote from the PSR:

> Two successive calls to get with the same identifier SHOULD return the same value. However, depending on the implementor design and/or user configuration, different values might be returned, so user SHOULD NOT rely on getting the same value on 2 successive calls.
2017-05-19 13:45:07 +12:00
Damian Mooyman
259f957ce8 API Rename services to match FQN of interface / classes 2017-05-16 14:15:49 +12:00
Damian Mooyman
7a8dfd2785 Add lint-clean and cleanup code linting 2017-05-16 05:01:51 +12:00
Damian Mooyman
942c0257b7 API Upgrade to behat 3 2017-05-05 14:32:07 +12:00
Ingo Schommer
5a7c6d4f60 Allow —no-dev install via a PHPUnit shim
Partially reinstates the 3.x style PhpUnitWrapper which was removed in d1af214ef5.
While we no longer need the full wrapper, the part which creates a fake class is still useful.

The preferred alternative would be to remove any references to SapphireTest from non-dev files,
which mostly applies to SapphireTest::is_running_test(). This should be solved in a larger refactor
of SapphireTest into optional traits and more fine grained functionality.
2017-04-24 15:24:02 +12:00
Sam Minnee
0d5e84d0b8 FIX: Add PHP extension requirements to composer.
This will raise incompatibilities sooner rather than relying on the 
installer.

GD is excluded from this as it’s a requirement of silverstripe/assets
2017-04-21 13:59:04 +12:00
Damian Mooyman
f2768c85b1 API Enable namespaced-localisation keys in templates
BUG Fix whitespaces in SSTemplateParser.peg
2017-04-11 18:07:53 +12:00
Damian Mooyman
6cfeb7f07e
Update test configuration
Note: Retains CMS build
2017-04-05 10:15:48 +12:00
Damian Mooyman
e61257c27b API Update embed/embed to 3.0
API Better shortcode generation for embed shortcodes
2017-04-04 10:20:08 +12:00
Daniel Hensby
3499ebc5c3 Package names should be lower case 2017-03-30 15:20:36 +01:00
Damian Mooyman
ac3a9c9e6e API Split out SilverStripe\ORM\Versioned into new module 2017-03-27 11:03:39 +13:00
Daniel Hensby
bb7da7cffd
Bump PHPUnit version 2017-03-24 16:23:01 +13:00
Damian Mooyman
dae6d5902f API Split SilverStripe\Assets into separate module 2017-03-21 11:12:51 +13:00
Ingo Schommer
6e58408806 Drop PHP 5.5 support, limit PHP 5.6 to 2018
Fixes #6705
2017-03-20 10:34:24 +13:00
Damian Mooyman
66b1c72d4a
Fix dev CI builds
Move silverstripe/config release responsibility to installer
Remove admin artifacts in composer.json
2017-03-16 16:08:30 +13:00
Ingo Schommer
5e3818ab46 PHPCS on tests/php dir 2017-03-15 09:00:55 +13:00
Ingo Schommer
da2647b4de Remove admin/ dir from phpcs 2017-03-15 08:59:26 +13:00
Damian Mooyman
9f953770f5 API Move CMSPreviewable to framework module
Remove or soft-link dependency on admin module
2017-03-14 10:22:45 +13:00
Damian Mooyman
12444fd8ae Add admin to dependencies for campaign admin 2017-03-14 10:22:45 +13:00
Daniel Hensby
cdb4a86e1c
PHPParser optimisations and update 2017-03-06 10:35:25 +00:00
Loz Calver
f8e3443c89
Initial PHP Parser implementation 2017-03-06 10:19:00 +00:00
Damian Mooyman
c452d5f6cd API Rename CoreConfigCreator to CoreConfigFactory
Fix rebase regressions
2017-02-27 16:54:01 +13:00
Damian Mooyman
a6e9a7111b API Substitute core config system with new silverstripe/config module 2017-02-27 16:54:01 +13:00
Ingo Schommer
d220ca3f67 API Use symfony/cache (fixes #6252) 2017-02-26 13:07:59 +13:00
Ingo Schommer
b95c1dec45 Remove optional Symfony 3.x dependencies
They cause issues with installing silverstripe/behat-extension after the fact,
since it requires 2.x - and would need the existing project to downgrade the dep.
While this should be composer's default behaviour (https://github.com/composer/composer/issues/6121), from a SilverStripe perspective we should have consistent dependencies regardless of the execution path in your require calls - anything else will lead to fragile test vs. prod errors.

We can require Symfony 3.x once we've upgraded to Behat 3.x.
2017-02-01 18:09:25 +13:00
Daniel Hensby
873fd8c5bc
NEW replace _ss_environment.php with .env and environment vars 2017-01-31 20:40:17 +00:00
Damian Mooyman
de02a3f733
Restored context parameter to i18n, and added to a “comment” key
Rolled pluralisation functionality into the i18n::_t() method
Warnings on missing default can now be turned off
2017-01-25 18:12:40 +13:00
Damian Mooyman
8a07c56bdf API Replace i18n message localisation with symfony/translation
API Implement enhanced pluralisation
Remove Zend_Translate and all Zend dependencies from i18n
Deprecated $context from i18n::_t()
Warn on missing default string for i18n::_t()
2017-01-25 17:08:12 +13:00
Daniel Hensby
3ea5015f8b NEW Move to SwiftMailer powered Emails (#6466)
* API Replace existing Email and Mailer classes with SwiftMailer powered email system

* DOCS New Email docs

* Initial feedback from Damian

* Making Mailer an interface

* Templates relocated

* Round of feedback

* More robust approach to plain parts

* Revert changes to TestMailer
2017-01-13 14:48:46 +13:00
Damian Mooyman
c2a1e86f5d Apply PSR2 / Namespace to remaining admin / tests 2016-12-19 16:08:19 +13:00