Commit Graph
100 Commits
Author SHA1 Message Date
ljacqu ea58e20c3d #792 Include registration date into purging logic
- Take MAX(reg_date, login_date) as timestamp to compare against
- Remove the second "all" parameter to include entries with 0 registration date -> we expect registration date to always be set to the current date, so the parameter becomes obsolete
2017-10-15 18:29:01 +02:00
ljacqu 1df5308e56 #792 #814 Create command to remove NOT NULL constraints
- Create command under /authme debug that allows to change the 'nullable' status of MySQL columns (currently last date and email only)
   - We need to offer a default value for forum integrations that have a NOT NULL email column. Offering a command avoids us from force-migrating existing databases while still offering migrations in both directions
- Change in default value handling: lack of values are not handled by setting default values to the PlayerAuth anymore, and reading a default value from the database into a PlayerAuth will be translated into null by the PlayerAuth builder
- When a new database is created, email and lastlogin are now nullable and lack a default a value

Open points:
- Finish MySqlDefaultChangerTest
- Revise purging logic (#792)
- Allow to have more columns nullable (#814)
2017-10-15 12:56:13 +02:00
ljacqu 718c38aa24 Fix failing LoginSecurityConverterTest: allow tolerance for java.sql.Date to millis conversion 2017-10-14 19:51:26 +02:00
ljacqu 52d6476058 #792 Add columns for registration IP and registration date
- Add columns for reg date and IP
- Rename "ip" to "last IP"
2017-10-14 17:37:34 +02:00
ljacquandGitHub 7afda20288 #1338 Implement ''/authme messages help' to generate a fully complete help text file (#1349) 2017-10-09 07:19:38 +02:00
ljacqu 5be3f8facc #1095 Update SMF hash algorithm to generate salt as SMF does
- The salt isn't used for password hashing but SMF requires that there be one to generate the authentication cookie. This does not yet enable registration from Minecraft: SMF has other non-null columns that need to be tackled. This is a first step.
2017-10-08 22:42:37 +02:00
ljacqu f21605bbb1 Fix failing test 2017-10-08 20:08:46 +02:00
ljacqu 83d6d92a5c Minor - don't read welcome message if unused 2017-10-08 20:05:04 +02:00
ljacqu 5b1d8c6429 Use String#replace over String#replaceAll (the latter uses regex) 2017-10-08 17:32:05 +02:00
ljacqu f1bed873d5 Minor - remove code duplication 2017-10-08 01:22:25 +02:00
ljacqu 278146a206 Merge branch '1347-change-password-api' of https://github.com/AuthMe/AuthMeReloaded 2017-10-05 23:47:19 +02:00
ljacqu 867b32194b #1347 Adapt tests for new change password architecture 2017-10-05 23:44:16 +02:00
ljacqu 6fa2fdbdda #1345 Update to injector 0.4.1 2017-10-05 23:02:58 +02:00
ljacqu 37dc918ece Minor: remove commented out code 2017-09-30 17:44:34 +02:00
ljacqu bd7d84a6d2 Small docs cleanup
- NewAPI class will be removed in 5.5, not 5.4
- Add entry for "Deprecated" recommendation in hash algorithms page
- Mention possibility of wildcards for restricted user rules
2017-09-17 11:33:24 +02:00
ljacqu 649b027e5b Output used permission system in /authme debug perm 2017-09-17 09:09:11 +02:00
ljacqu acfc35283d Update translations page 2017-08-11 22:32:46 +02:00
ljacquandGitHub 3df2dd5740 CZ update by Shadowhackercz (#1310)
* Last changes for CZ language file

* Last few changes
2017-08-10 22:22:28 +02:00
ljacqu df2fe2ea89 Add missing apostrophe 2017-08-07 22:19:25 +02:00
ljacqu 30cb55dabd Update translations page 2017-08-05 14:07:02 +02:00
ljacquandGitHub a801f03cf2 Merge pull request #1296 from AuthMe/5.4-Dev
Merge 5.4 development
2017-07-29 15:25:01 +02:00
ljacqu 027d0fc775 Create TestHelper method to make Settings mock return defaults 2017-07-23 18:00:51 +02:00
ljacqu efc06ef2a6 #1255 Create resource-closing tests for the MySQL extensions
- Remove test runs with different hash algorithms in the abstract super class
- Create resource-closing tests for the new extension classes
2017-07-23 17:29:36 +02:00
ljacqu 8eceaa8cbb #1255 Simplify MySQL data source extensions
- Mostly oving the logic of getting the ID from the DB to the extensions superclass
2017-07-23 16:38:35 +02:00
ljacqu cbc794ba20 #1255 Extract forum-specific data source actions into separate extension classes 2017-07-23 14:19:28 +02:00
ljacqu 870810a230 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 5.4-Dev 2017-07-23 12:12:16 +02:00
ljacqu f88350b06d Fix Checkstyle violations
- Mostly missing Javadoc on large methods
- CommandInitializer: split command building method into multiple methods
2017-07-16 23:07:13 +02:00
ljacqu 4ac980111d Add some tests, minor Checkstyle fixes 2017-07-16 13:00:55 +02:00
ljacquandGabriele C 7c48cf59c7 Make default regex for password characters more user-friendly (#1285)
- Change regex pattern per input of @sgdc3
- Add clarifying comments
2017-07-15 19:38:05 +02:00
ljacqu 822818cf33 Revert: Fix default password regex
- The regex pattern allows all visible, non-whitespace ASCII symbols, including '0'
2017-07-15 18:41:01 +02:00
ljacqu e1826c75c8 #1280 Add NOTHING as possible flight restore type 2017-07-10 21:45:05 +02:00
ljacqu 276ce80edb #1276 Fix wrong multiplication of reset threshold 2017-07-09 14:31:17 +02:00
ljacqu f3a656892f Open 5.4 development iteration 2017-07-08 23:21:53 +02:00
ljacqu cb73160bcd Minor - simplify CodeClimateConfigTest
- No need to load the class when we just want to ensure that the file exists
2017-07-08 23:10:42 +02:00
ljacqu 6badd15662 Merge branch 'StoreAllGroups' of https://github.com/AuthMe/AuthMeReloaded 2017-07-02 11:02:47 +02:00
ljacqu f150668fc1 Minor - remove unused imports
- As determined by CodeClimate
2017-07-02 11:00:17 +02:00
ljacqu ff99b63385 #1265 Limbo: fallback to old "group" during deserialization, favor old limbo's groups over new limbo's 2017-07-02 10:55:51 +02:00
ljacqu 886e3b2f1e #1238 Save player after restoring data from limbo player 2017-06-18 08:36:03 +02:00
ljacqu 08214aeee6 Debug limbo viewer: don't get primary group if not supported
- Reported via #1238, the primary group of a player should not be queried if the permissions plugin does not have group support
- Use the reverse order for showing player / limbo / disk limbo info
2017-06-11 15:14:32 +02:00
ljacqu 591d6f1d4c #1232 #1239 Show legacy hint if Guava's MoreObjects class is missing 2017-06-02 15:42:21 +02:00
ljacquandGitHub 9385fc8f4c Fix placeholders in messages_ko 2017-05-28 21:35:15 +02:00
ljacquandGitHub 56dff703ac Korean translation by Kirito9515 (#1229)
* Korea Translation Change

* Korean Translation Change 2

* Korean Translation Final

* Help Message Korean Translation

* Korean Translation
2017-05-28 18:50:34 +02:00
ljacqu 5ca9112c12 Add missing properties to commands.yml on start and reload 2017-05-21 14:21:40 +02:00
ljacqu 5c6af0330e #1218 Add onLogout to commands.yml 2017-05-21 13:44:28 +02:00
ljacqu 1c46c92b4e #1146 List available converter, reference converters Wiki page in config.yml 2017-05-21 12:28:35 +02:00
ljacqu 5afe6bb35b Update dependencies
- Remove unused exec plugin
2017-05-20 19:15:13 +02:00
ljacqu e5bfbf6304 #1023 LoginSecurity converter: fix last login conversion, extend test 2017-05-13 09:37:36 +02:00
ljacqu 2021113732 #1023 Create LoginSecurity converter 2017-05-10 19:45:20 +02:00
ljacqu 1f8307c8f6 Fix minor checkstyle issues
- Add JavaDoc where checkstyle expects it
- Fix line too long issues
- ...
2017-05-07 11:59:01 +02:00
ljacqu 1a48348824 Add missing tests for listeners 2017-05-07 09:43:59 +02:00
ljacqu 6ecb0ea75c Create test to verify that messages have their tags 2017-05-06 21:36:31 +02:00
ljacqu 57cd2e4caf Fix placeholders in translations + update translations page 2017-05-05 21:28:38 +02:00
ljacquandGabriele C c803822fa8 #1188 Create and keep encryption method instance (#1191)
- Avoid creating the same object over and over; instead keep it and only change it on settings reload
2017-04-30 17:41:51 +02:00
ljacqu e0e4cd112d #761 Restore permission group in sync with limbo players
- Couple AuthGroupHandler closer to the LimboService: whenever a limbo player is restored, the auth group should be restored as well. This fixes some consistency issues.
- Move AuthGroupHandler into limbo package and make it package-private
- Change permission handler to skip any empty groups (prevents odd command output e.g. for BukkitPermissions)
2017-04-29 22:37:34 +02:00
ljacqu d4c1370da6 #923 Add commands to run on unregister 2017-04-29 19:11:13 +02:00
ljacqu 578f63b944 #923 Create /authme purgeplayer command
- Create command to purge a specific player name
- Update docs
2017-04-29 18:31:37 +02:00
ljacqu 88d839cab4 #620 Add a cancellable session restore event 2017-04-29 15:44:29 +02:00
ljacqu b652d89088 #1169 Create UnregisterEvent 2017-04-29 15:22:27 +02:00
ljacqu d65556d893 #857 Create event for failed authentication 2017-04-29 14:46:06 +02:00
ljacqu a75150e7bf #836 Update HU translations by @rErEaT 2017-04-29 09:28:58 +02:00
ljacqu b7c35cb3a7 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into explicit-getters-from-db 2017-04-29 08:19:30 +02:00
ljacqu 82d74ca0a7 Move close methods out of sql datasource utils class
As noticed by @Gnat008
- We need two different implementations for MySQL and SQLite because SQLite uses an older version where #isClosed is not implemented
2017-04-29 08:18:43 +02:00
ljacqu 0e923b6a70 #1180 Create command for performing a backup 2017-04-23 20:23:40 +02:00
ljacqu d0dbc14358 Minor - fix some small todo's 2017-04-23 11:02:43 +02:00
ljacqu e56a3c0ab6 #815 Save yaw & pitch for last login in SQL data sources 2017-04-22 13:30:03 +02:00
ljacqu 70298a830b Remove outdated todo 2017-04-21 20:29:50 +02:00
ljacqu 07633a89c8 Create SQL data source utils class
- Extract logic used in SQLite and MySQL for logging and closing SQL objects
    - Decided to leave buildAuthFromResultSet methods individually as this might be more implementation-specific
- Rename DataSource#close to DataSource#closeConnection to fix conflict with static import
2017-04-18 22:55:39 +02:00
ljacqu 04ca36fe53 Use more specific query to get logged in players without email
- Reduces the amount of data returned from the DB and the work required to build objects
2017-04-18 22:30:54 +02:00
ljacqu 2f7ebc0ecb Remove static PlayerCache#getInstance 2017-04-18 21:57:20 +02:00
ljacqu b0c05afaa7 Create util method to check if email is empty
- Create method to check if email is empty or the default AuthMe email (avoids repetition)
- Check that input email has '@' inside text (relates to #1105)
2017-04-18 21:24:33 +02:00
ljacqu b99cc3bada #1127 Create DataSource#getEmail 2017-04-18 21:07:31 +02:00
ljacquandGitHub 2c31ccc020 Merge pull request #1166 from AuthMe/debug-command-permissions
#1034 Create permissions for debug sections
2017-04-17 01:04:57 +02:00
ljacqu 2a747c7d01 #1034 Create permissions for debug sections
- Add an individual permission for each debug section (including wildcard perm)
- Create test for DebugCommand
- Refactor tests for the enum permission nodes to use the same abstract class
- Update related project files (plugin.yml, permission docs, command docs)
2017-04-14 19:54:17 +02:00
ljacqu cbec5427f2 #1162 New API class: implement ignored review remarks 2017-04-14 18:11:47 +02:00
ljacqu 43b2375e2a Fix failing test 2017-04-01 22:01:54 +02:00
ljacqu 20ab161406 Merge branch '1147-limbo-improve-persistence' of https://github.com/AuthMe/AuthMeReloaded 2017-03-31 19:57:23 +02:00
ljacqu 2ecdc57277 #1147 Rename limbo segment configurations / remove inaccurate comments 2017-03-28 21:49:28 +02:00
ljacqu adb007108d #1147 Drop SingleFilePersistenceHandler in favor of DistributedFilesPersistenceHandler
- Remove SingleFilePersistenceHandler: DistributedFilesPersistenceHandler with segment size 1 can be used instead
- Rename  SegmentFilesPersistenceHolder to DistributedFilesPersistenceHandler
- Rename SeparateFilePersistenceHandler to IndividualFilesPersistenceHandler to match LimboPersistenceType entry
- Add link to limbo page on Wiki in the settings
2017-03-28 21:42:01 +02:00
ljacqu a764598f88 Adjust repo links in code 2017-03-28 08:11:00 +02:00
ljacqu 2070f22968 Security - if any Throwable is thrown on initialization AuthMe should shut down
- Found via #1149
2017-03-27 21:41:35 +02:00
ljacqu 6be6e8e851 Exclude jacoco fields from consistency test
- Fix wrong condition check :)
2017-03-26 14:53:52 +02:00
ljacqu dbd0e04a2e Exclude jacoco fields from consistency test
- The Jacoco plugin adds fields "$jacocoData" to the classes which make the test fail
2017-03-26 14:47:39 +02:00
ljacqu 75f84945fc Misc code householding
- Checkstyle config: allow todo comments with issue number
- Create consistency tests across all classes, ensuring: unique class names, users of expiring collectors implement HasCleanup, non-private fields are only constants
- Fix tag replacement in PlayerListener for {DISPLAYNAME}
2017-03-26 13:20:40 +02:00
ljacqu 8cf7983027 #1034 Add debug sections for spawn and input validation 2017-03-26 12:10:51 +02:00
ljacqu c54231b255 #1138 Show warning for hashes that will be deprecated in 5.4
- Introduce Usage.DEPRECATED to mark the hash algorithms accordingly
- Log warning when such a deprecated hash algorithm is used
- Update hash algorithms doc page
2017-03-25 00:23:54 +01:00
ljacqu b7901c6b59 Simplify exclusion of enum properties in SettingsConsistencyTest
- Allow enum values to be absent if they are deprecated
2017-03-24 23:23:40 +01:00
ljacqu a2d62ea6d9 #1116 #1117 Add command usage hints and remove unused message keys
- Add usage message on argument mismatch where available
- Remove unused message keys
- Create tool task to search for a message key's usages and to find unused keys
2017-03-24 23:03:10 +01:00
ljacqu 2f90a45f43 #1036 Remove 'allowSpeed' option
- Option is no longer needed as the plugin user can configure how/if the speeds should be restored now
2017-03-24 21:26:34 +01:00
ljacqu 3e95d30c6b Improve dependency graph task
- Simplify logic for converting a dependency description to its display name
- Add new common supertypes
2017-03-23 23:15:04 +01:00
ljacqu dfd81b069a Fix titles in readme 2017-03-23 10:43:29 +01:00
ljacqu 32a664ef59 Update checkstyle config and CodeClimate exclusions
- Add new checkstyle checks: require Javadoc on large private methods, default in switch, declaration order & others
- Update path exclusions in CodeClimate config to match newly renamed classes (e.g. PHPBB -> PhpBB)
  - Create consistency check testing that excluded paths exist as classes
- Fix some trivial violations
2017-03-23 10:34:28 +01:00
ljacqu e77828b228 Update docs / update recovery code command in email message
- Update docs to reflect new commands, configurations (account recovery, limbo handling) and messages
- Change message for the recovery code email to contain the new command
2017-03-22 23:14:02 +01:00
ljacquandGitHub da8b33f1bc Make Travis update JDK 8 version
cf. https://github.com/travis-ci/travis-ci/issues/3259
2017-03-22 08:55:18 +01:00
ljacqu 7dbf5551c9 Cleanup: avoid injecting Injector directly
- Inject SingletonStore to restrict the possible functions
- Refactor PasswordSecurityTest to correspond to the usual way of testing
2017-03-21 22:59:21 +01:00
ljacqu d19748fe5b #1034 Debug commands: permission checker + data statistics
- Create debug command to check if a player has the given permission
- Create debug command that outputs the size of various caches / DB info / number of saved instances in injector
2017-03-21 22:00:21 +01:00
ljacqu 3c45ca8425 #1100 Check that auth exists for /email show
- This case should never happen, but better to be safe
2017-03-20 20:57:09 +01:00
ljacqu 6eaa91278e Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into limbo
# Conflicts:
#	.checkstyle.xml
2017-03-20 08:23:52 +01:00
ljacquandGitHub 9a9d0974f8 #1037 Improve architecture of registration methods (#236)
* #1037 Improve architecture of registration methods
- Introduce parameters classes for each registration method
- RegistrationMethod has constants with the required parameters class -> no longer need to have a RegistrationExecutorProvider class that needs to be injected everywhere, let AsyncRegister be the only one to worry about which class will perform the registration
- Fix inheritance of password registration types - previously two-factor auth registration inherited from password registration directly

* Create matcher which checks for equality via reflections
- Allow to perform equality check on objects with default equals() method
2017-03-20 08:19:52 +01:00
ljacqu 7f16e80442 Add EqualsHashCode check to checkstyle config
- Enables checkstyle verification that hashCode() is overridden if equals(Object) is overridden (and vice versa)
2017-03-18 20:24:25 +01:00
ljacqu 603217f894 Minor - add DS_Store to gitignore 2017-03-17 19:48:42 +01:00