Commit Graph

3564 Commits

Author SHA1 Message Date
443949f7b9 Fix generate:migration command for extensions
Apparently, this code was from back when we had a special "extensions"
directory for Composer packages marked as Flarum extensions.

While we're at it, we now inject the Paths instance instead of using one
of the global helpers (which I am trying to get rid of).

Refs #2055.
2020-05-08 12:01:11 +02:00
4884aad2f0 Update beta.13 changelog 2020-05-08 11:35:46 +02:00
365eb15d29 Merge pull request #2142 from flarum/fl/2055-prepare-for-laravel-58
Split up Application and Container
2020-05-07 22:49:36 +02:00
85e2623622 Bundled output for commit 7d99727168d293218ba89ff126587f5f985b502f [skip ci] 2020-05-07 07:20:06 +00:00
7d99727168 commit version constant 2020-05-07 09:17:26 +02:00
84784c9839 Release v0.1.0-beta.13 2020-05-07 09:18:04 +02:00
a9470b463f Make two more tests compatible with PHPUnit 8 2020-05-07 09:18:04 +02:00
deb48bd173 Remove obsolete method 2020-05-07 09:18:04 +02:00
b38bd60362 Added simply confirmation popup for hiding / deleting posts (#2135) 2020-05-07 09:18:04 +02:00
260e7cd48f Inject new Paths class instead of Application
This (and similar work in other areas) will allow us to further
reduce the API surface of the Application class.

Separation of concerns etc.
2020-05-01 15:47:35 +02:00
41a56c4ad1 Split up Application and Container
- Stop trying to implement Laravel's Application contract, which
  has no value for us.
- Stop inheriting from the Container, injecting one works equally
  well and does not clutter up the interfaces.
- Inject the Paths collection instead of unwrapping it again, for
  better encapsulation.

This brings us one step closer toward upgrading our Laravel
components (#2055), because we no longer need to adopt the changes
to the Application contract.
2020-05-01 15:47:35 +02:00
d0ae2839f0 Extract a class to hold / determine paths 2020-05-01 15:24:20 +02:00
d31a747631 Bundled output for commit 526081bd06a2b22c32f0b6cddac37c57432cb6c2 [skip ci] 2020-05-01 09:53:55 +00:00
526081bd06 Update Webpack 2020-05-01 11:52:26 +02:00
cbdd3c5cc7 Apply fixes from StyleCI
[ci skip] [skip ci]
2020-04-27 20:04:41 +00:00
7d1ef9d891 Remove a bunch of deprecated events
Use extenders instead!

Refs #1891.
2020-04-27 22:04:08 +02:00
7794546845 Model extender: Fix inheritance (#2132)
This ensures that default values, date attributes and relationships are properly inherited, when we have deeper model class hierarchies.

This also adds test cases to ensure that inheritance order is honored for relationship and default attribute extender. As there's no way to remove date attributes, the order of evaluation there doesn't matter.
2020-04-24 21:17:31 +02:00
c43cc874ee Model extender: Add failing test
We determined that child classes are not properly affected when
extending the parent classes.

Refs #2100.
2020-04-24 17:54:30 +02:00
33cf94c192 Fix test to match its description
Refs #2100.
2020-04-24 17:31:08 +02:00
036e519865 Apply fixes from StyleCI
[ci skip] [skip ci]
2020-04-24 14:56:37 +00:00
9386c91af9 Tweak model extender tests
- Format code
- Reorder methods
- Test a different scenario to avoid the use of sleep()

Refs #2100.
2020-04-24 16:55:04 +02:00
8306cef963 Clean up model extender
- Remove unused private attributes
- Complete docblocks
- Add scalar type hints
- Format code
- Reorder methods

Refs #2100.
2020-04-24 16:33:08 +02:00
51ea326959 Apply fixes from StyleCI
[ci skip] [skip ci]
2020-04-24 13:10:36 +00:00
15bed971e6 Add model extender (#2100)
This covers default attribute values, date attributes and custom relationships.
2020-04-24 15:10:24 +02:00
c896cd8696 npm audit fix 2020-04-24 14:30:16 +02:00
54ac83d0b6 Bundled output for commit 1592cd1013f2307e882267ebc179474164d3a0fd [skip ci] 2020-04-22 21:38:57 +00:00
1592cd1013 CI: Shorten the lint job name 2020-04-22 23:37:37 +02:00
6e8884f190 Implement hidden permission groups (#2129)
Only users that have the new `viewHiddenGroups` permissions will be able to see these groups.

You might want this when you want to give certain users special permissions, but don't want to make your authorization scheme public to regular users.

Co-authored-by: luceos <daniel+github@klabbers.email>
2020-04-21 17:49:53 +02:00
df8f73bd3d Statically access Flarum version everywhere
One less reason to inject the huge Application class.

Refs #2055.
2020-04-21 16:48:36 +02:00
3f0f89afb1 Use Container contract where easily possible
Less usages of the Application god-class simplifies splitting it up.

Refs #2055.
2020-04-21 16:48:06 +02:00
f0f301c5f4 Add compatiblity with Composer 2.0
- The structure of vendor/composer/installed.json will change.
- The same file will now contain the relative path to package locations.

References:
- https://github.com/composer/composer/blob/master/UPGRADE-2.0.md
- https://php.watch/articles/composer-2
2020-04-21 15:47:58 +02:00
3045bde167 Format code
- Early returns
- Comments
- Write variables only when needed

Refs #2020.
2020-04-19 16:53:52 +02:00
ee7a4627d8 Load only translations for enabled extensions from language packs (#2020)
fix #1837

Co-authored-by: Daniel Klabbers <daniel+git@klabbers.email>
2020-04-19 16:29:45 +02:00
b9fb92d49a Inline test class
Refs #1977.
2020-04-19 15:55:10 +02:00
b5accca957 Make AbstractPolicy compatible with both object and class as $model (#1977) 2020-04-19 15:52:59 +02:00
798a3486bf Bundled output for commit 89ef14faf13e4d661ee9f4f636a32578c73bf760 [skip ci] 2020-04-17 09:59:47 +00:00
89ef14faf1 Run prettier for all JS files 2020-04-17 11:57:55 +02:00
84cf938379 Merge pull request #2099 from flarum/fl/prettier
Install prettier for consistent JS styling
2020-04-17 11:20:52 +02:00
899cdfda4e CI: Run prettier to check for JS code formatting 2020-04-17 11:14:37 +02:00
72ed4faa83 Setup husky for automatic formatting before commit 2020-04-17 10:45:36 +02:00
64ad21e5da Add NPM shortcut for running prettier 2020-04-17 10:45:05 +02:00
14e8e9a7cb Configure prettier via JSON file 2020-04-17 10:44:36 +02:00
ee996e2cae Install prettier 2020-04-17 10:44:31 +02:00
7b35674e4a Merge pull request #2117 from flarum/fl/2055-streamline-uploads
Simplify uploads, avoid Application contract
2020-04-15 22:52:03 +02:00
1d953b3514 Apply fixes from StyleCI
[ci skip] [skip ci]
2020-04-13 09:59:07 +00:00
b7d8f77529 Tweak event extender (tests)
- Inject contract, not implementation
- Do not dispatch event in test, let the core do that
- Ensure the relevant database tables are reset prior to the test
- Use correct parameter order for assertions

Refs #2097.
2020-04-13 11:58:47 +02:00
b343206c7b Tweak mail extender (tests)
- Use private over protected
- Use "public" API for building requests in tests
- Add more assertions
- Formatting
- Use correct parameter order for assertions

Refs #2012.
2020-04-13 11:58:46 +02:00
2aead54aea Bundled output for commit dbfae0b55e69c49a0c1033c73c4e58522687746a [skip ci] 2020-04-13 09:22:40 +00:00
dbfae0b55e Add year, localization support for displaying things older than 1 year (#2034) 2020-04-13 11:21:27 +02:00
2d86eb9b9f Mail Extender (#2012)
This allows registering new drivers, or overwriting existing ones.
2020-04-13 10:46:33 +02:00