Commit Graph

30 Commits

Author SHA1 Message Date
b5bf0425f3
Implemented ObjectStorage into Core.
Some checks failed
continuous-integration/drone/push Build is failing
After careful deliberation it was decided to merge ObjectStorage into Core, as it's slowly getting used by every part of FuzeWorks.
2022-12-10 13:14:38 +01:00
0b0f4998b4
Updated repository to standards of PHP 8.1.
- Dropped support for PHP 7.4 and 8.0.
- Updated shutdown to no longer halt execution on an error if logger error handlers are disabled.
- Logger::enable() and ::disable() now control the screen log, as it used to in the old days.
2022-12-10 12:37:49 +01:00
ccb0564a14 Fixed Logger::exceptionHandler() expecting Exception classes while Throwable classes could also be expected. (#12)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
- Amended Logger
- Added unit tests for bug
- Added PHP8.1 to CI testing

Reviewed-on: #12
2022-02-20 12:11:58 +00:00
0014c2d9f6
Added config layers.
Configs are now layered on top of each other. If a config file is found in multiple directories, they are merged together. Higher fields will override lower fields. This way, if one field is missing in a higher priority file, the lower priority can still be used.
2021-11-30 00:22:58 +01:00
440964b375
Resolved problems brought up by PhpStorm.
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Includes problems such as:
- Grammar errors
- Type, argument and return declarations
- Redundant argument removal
2021-11-24 18:56:36 +01:00
8ce3630714
PHP 8.0 compatibility update
Some checks reported errors
continuous-integration/drone/push Build encountered an error
2021-11-24 17:43:00 +01:00
3ebd91d2ef
Updated PHPUnit to ^9 and vfsStream to ~1.6.0.
All checks were successful
continuous-integration/drone/push Build is passing
- This resulted in some changes needing to be made in the test folder. All tests have been updated to work with these updated dependencies.
- Also, PHP 7.1 is no longer supported.
- psr/log is no longer a dependency of Core
2020-07-31 14:29:37 +02:00
7a899e33d7
Implemented a unit test for loading environment variables through config files.
All checks were successful
continuous-integration/drone/push Build is passing
Config files may now have a 'lock' key. If a config file has such a key, ConfigORM will refuse to commit changes.
This allows the developer to use Core::getEnv() in config files, without risk of it being overwritten by a commit.
2020-05-15 19:17:59 +02:00
eec9eda22d
Added Core::getEnv, allowing the developer to load environment variables using a default fallback. 2020-05-15 18:53:23 +02:00
4e8bb7ede3 Imlemented the autoloader into libraries.
Libraries can now provide classes to be added to the autoloader, although this is not required.
2019-07-27 17:22:12 +02:00
8b01dd2f84 Implemented three requested features.
- FuzeWorks\Core now manages autoloading of classes for Plugins. Plugins no longer need to implement this themselves. Autoloading for libraries to be added soon.
- FuzeWorks\Factory::getInstance('') now returns a requested component. No arguments will result in the Factory being returned. This should simplify invoking components. cloneInstance() replaces old functionality.
- FuzeWorks\Logger can now properly write logs to file. It's unknown how this issue wasn't discovered before.
2019-07-22 19:48:13 +02:00
68c2aaa210
Implemented all changes requested by FuzeWorks\Application.
- Implemented a exception and error handler which other methods register to. These are executed in the order provided by the Priority class
- Logger now uses the $isEnabled property to determine if it is enabled. $print_to_screen now has its own methods.
- Plugins now use a 'plugin.pluginName.php' file by default
-
2019-03-04 21:18:08 +01:00
e9eb858a2d
Implemented changes into ConfiguratorTest.
Debug mode is now correctly tested.
2019-03-01 11:11:22 +01:00
53e721f781
Implemented changes regarding Component and Directory duplicity in the Configurator. Now it is no longer possible to accidentally load the same component or directory twice. 2019-03-01 10:51:51 +01:00
5272b3f40b
Changed phpunit.xml to no longer include code coverage for the test directory.
This should increase the coverage percentage significantly.
2019-02-11 17:57:46 +01:00
31a668475a
Implemented namespace change in core_pluginsTest.
Fixes #139
2019-02-11 17:29:45 +01:00
5a6b52f93d
Implemented changes requested by WebComponent 2019-02-09 20:25:49 +01:00
e10d84b65d
Implemented @covers in all unit tests. Code coverage now shows better what is actually covered and what is not. 2019-01-21 20:34:45 +01:00
f364245d90
Implemented Priority for componentPaths. 2019-01-21 17:19:09 +01:00
81567caec0
Changed EventPriority to Priority.
This class can now be used for other priorities as well. Should be useful for rewriting the Config class
2019-01-18 11:08:56 +01:00
be449b4f0d
Implemented ComponentPathsTrait.
Now every classes that uses paths doesn't have its own code anymore. All methods for handling paths have been standardized.
2019-01-18 11:00:22 +01:00
172bed55b9
Initializing the container is no longer required. Use call method to call componentClasses after creating the container. 2019-01-17 13:54:37 +01:00
b87a35ecbc
Implemented requested changes. Closes #134. 2019-01-17 12:27:53 +01:00
3154718f94
Implemented multiple requests. Mostly rewritten the Logger to be more compatible with Plugins and Components. 2019-01-16 23:07:09 +01:00
961a4c4081
Removed main config file and fixed smaller details 2019-01-16 20:18:46 +01:00
a3dc1439b6
Fixed issues in case-sensitive operating systems. PHPStorm has been a letdown in this field. 2019-01-11 23:19:53 +01:00
0c569a9eb1
Updated copyright notice to 2019 2019-01-10 23:59:00 +01:00
f5fd1143fb
Made test directories uppercase to make them compatible with Linux. 2019-01-10 23:54:33 +01:00
f0865bb761
Implemented all ideas for the Christmas holidays 2019-01-01 18:37:14 +01:00
ef149a953f Moved 'tests' to 'test' folder to make consistent with other FuzeWorks projects. 2018-12-23 19:21:31 +01:00