Petr Mrázek
50b8412a26
NOISSUE do not try to restore file permissions when importing modpacks
2017-05-25 01:24:27 +02:00
Petr Mrázek
3597a50854
NOISSUE log native extraction failures also to game log
2017-05-22 08:57:13 +02:00
Petr Mrázek
4133247bff
NOISSUE and even more warnings gone
2017-05-21 22:30:53 +02:00
Petr Mrázek
c329bc73c0
NOISSUE more compiler warning removal
2017-05-21 22:24:06 +02:00
Petr Mrázek
d432d8ecfc
NOISSUE get rid of some more compiler warnings
2017-05-21 22:14:40 +02:00
Petr Mrázek
8bd8be95f0
NOISSUE fix a bunch of compiler warnings
2017-05-21 20:20:37 +02:00
Petr Mrázek
572a6026b5
GH-1895 update LWJGL list during legacy instance update
2017-05-21 02:34:02 +02:00
Petr Mrázek
868669a497
NOISSUE add a linux system packaging install layout
2017-05-13 01:24:15 +02:00
Petr Mrázek
4cf4110d9d
NOISSUE log even more about 'Flame' resolving issues
2017-05-09 21:56:33 +02:00
Petr Mrázek
e029b7764e
NOISSUE log 'Flame' mod resolver parsing errors.
2017-05-09 21:49:36 +02:00
Petr Mrázek
8a526fab0e
GH-1885 make FileSink save (even empty) files when the HTTP response is 200 or 203
2017-05-09 03:08:38 +02:00
Petr Mrázek
15c829fd3c
GH-1876 Fork and update quazip
...
* It is added as a new submodule: https://github.com/MultiMC/quazip/tree/multimc-1
* Its build system has been entirely replaced to remove the existing issues with it
* It now has working unit tests
* No more patches needed
* It has a static linking exception in its license now, but we use it shared anyway
2017-05-06 17:36:57 +02:00
Petr Mrázek
9d4c188fd4
GH-1876 turn iconfix into a shared library
2017-05-05 09:43:20 +02:00
Petr Mrázek
e854894a3c
GH-1876 turn pack200 into a shared library
2017-05-05 01:34:01 +02:00
Petr Mrázek
0ce44dbd41
GH-1864 fix imgur album creation
2017-05-04 22:58:22 +02:00
Petr Mrázek
e76e6329cd
NOISSUE Revert all recent changes to NetAction and NetJob
2017-05-03 23:13:49 +02:00
Petr Mrázek
0efa714ba5
NOISSUE replace std::shared_ptr with shared_qobject_ptr for all download tasks
2017-05-03 21:09:36 +02:00
Petr Mrázek
794102b32c
NOISSUE less jumpy download progress bars and redirect URL fix
2017-04-30 02:54:37 +02:00
Petr Mrázek
1be99b075a
NOISSUE more NetAction and NetJob cleanups
2017-04-29 21:34:36 +02:00
Petr Mrázek
e1465f4848
NOISSUE refactor NetAction to be based on Task
...
Still missing some things, this is part 1.
2017-04-29 02:24:00 +02:00
Petr Mrázek
6dc1bc65e1
NOISSUE fix Mojang JSON format unit test on Qt 5.6 by dumping JSON to byte arrays
2017-04-25 23:33:19 +02:00
Petr Mrázek
4fa3e2a714
GH-1856 Fix metadata version and list loading
...
Shouldn't crash anymore, shouldn't overwrite data in some bad way anymore either.
2017-04-24 01:30:51 +02:00
Petr Mrázek
3f24c4cfe5
GH-1856 Make MultiMC fail hard when things are missing
...
Things like:
* jar mods
* valid version files
2017-04-23 02:34:16 +02:00
Petr Mrázek
8084f27ec8
NOISSUE do not write library display name twice
2017-04-22 20:27:00 +02:00
Petr Mrázek
249baf6fcf
GH-1860 fix old jarmods
...
Names were not set for the libraries, making them return invalid things
2017-04-22 19:38:28 +02:00
Petr Mrázek
8ace5fa91d
NOISSUE Add flame.
2017-04-22 18:51:04 +02:00
Petr Mrázek
77a1d39f6b
NOISSUE fix problems in old curse packs
...
Added:
* jarmod importing
* fixing of bad minecraft versions
* mapping of undefined 'recommended' forge versions to something appropriate
* some fake guessing of pack icons
* fixes for some more issues found with the pack manifest format
2017-04-22 05:20:06 +02:00
Petr Mrázek
6a525db78d
NOISSUE 'required' attribute of curse manifests is optional, libraries attribute reading
2017-04-22 00:29:24 +02:00
Petr Mrázek
1d71214d4a
NOISSUE fix build: there is no qInfo in old Qt5.
2017-04-21 22:30:39 +02:00
Petr Mrázek
ab5045b54c
NOISSUE finalize curse modpack import work
2017-04-21 22:23:31 +02:00
Petr Mrázek
f3c46dbf11
NOISSUE silly/simple implementation of mod metadata in OneSix version format
2017-04-21 22:23:00 +02:00
Petr Mrázek
6bd2605a79
NOISSUE add import from curse zip packs
...
Does not actually grab mods, but resolves them and prints the results in logs.
2017-04-20 05:22:04 +02:00
Petr Mrázek
60777ad8ce
GH-1856 always pull new versions of metadata when requested
...
The only block is if it's already happening.
2017-04-19 22:23:00 +02:00
Rafael Ristovski
88041783e6
Add missing <functional> include.
...
Compiling under Linux fails because of a missing include directive
Ref:
http://en.cppreference.com/w/cpp/utility/functional/bind
http://en.cppreference.com/w/cpp/utility/functional/placeholders
2017-04-19 22:11:12 +02:00
Petr Mrázek
47e075babd
NOISSUE set metadata source to main
2017-04-18 17:55:05 +02:00
Petr Mrázek
5565a2f85e
NOISSUE fix crash because of early destruction of java list load task
2017-04-18 16:45:58 +02:00
Petr Mrázek
c4c8e99681
NOISSUE jar mods as libraries, fix for customizing net.minecraft
2017-04-17 22:51:30 +02:00
Petr Mrázek
fc28aacdea
NOISSUE stop using the path
attributes from Mojang download info
...
It really should not dictate how are things stored and it just makes
the metadata bigger for no reason.
2017-04-15 11:40:22 +02:00
Petr Mrázek
07cde802e4
GH-1853 fix FTB and parsing of old version files
2017-04-14 12:33:54 +02:00
Petr Mrázek
2aaf9827a6
NOISSUE slightly refactor jarMod entry reading
2017-04-14 12:21:10 +02:00
Petr Mrázek
be53eb66f8
NOISSUE implement mainJar support in OneSix format
...
This allows customizing the main jar like any other library.
2017-04-13 09:28:25 +02:00
Petr Mrázek
8e58d61150
NOISSUE fix issue with the narrator feature by splitting java and native libraries
2017-04-07 00:20:02 +02:00
Petr Mrázek
dddc5cedf3
NOISSUE make a call to ensureBoolean in the JSON format code less ambiguous
2017-04-07 00:20:02 +02:00
Petr Mrázek
dff307557b
NOISSUE fix liteloader uid where it is hardcoded hardcoded
2017-04-07 00:20:02 +02:00
Petr Mrázek
643d74f66c
NOISSUE implement recommended versions using the new JSON format
2017-04-07 00:20:02 +02:00
Petr Mrázek
f565798650
NOISSUE remove unused version range filtering
2017-04-07 00:20:02 +02:00
Petr Mrázek
e0596d3c86
NOISSUE Make forge installable again
2017-04-07 00:20:02 +02:00
Petr Mrázek
2ac0edbbdb
NOISSUE preview of LWJGL version changing
...
It still needs work - some LWJGL versions are exclusive to macOS.
This has to be encoded in the json.
2017-04-07 00:20:02 +02:00
Petr Mrázek
53188386b8
NOISSUE refactor builtin patch loading slightly
2017-04-07 00:20:02 +02:00
Petr Mrázek
af3384c649
NOISSUE add filename to newly created jar mod patches
2017-04-07 00:20:02 +02:00
Petr Mrázek
22735f275e
NOISSUE remove dead code
2017-04-07 00:20:02 +02:00
Petr Mrázek
5fabb4f254
NOISSUE Rough refactor of ProfilePatch and VersionFile internals.
...
They are now distinct classes with distinct responsibilities.
* ProfilePatch is an entry in MinecraftProfile and can hold VersionFile or Meta::Version.
* VersionFile is the basic element that holds version information loaded from JSON.
* Meta::Version is the loader class for VersionFile(s) from a server.
2017-04-07 00:20:02 +02:00
Petr Mrázek
6f2a87167a
NOISSUE remove some dead code from version related classes
2017-04-07 00:20:02 +02:00
Petr Mrázek
3aa28bd64a
NOISSUE fix some warning on linux related to the GNU C library
2017-04-07 00:20:02 +02:00
Petr Mrázek
da4ae1bc1e
NOISSUE reimplement package dependencies
...
It is now stored as a hashmap
There is also a parentUid to limit depsolving by encapsulating by version
2017-04-07 00:20:02 +02:00
Petr Mrázek
f557c13679
NOISSUE stuff and things happened. Maybe.
2017-04-07 00:20:02 +02:00
Petr Mrázek
2660418d58
NOISSUE hack it together enough to get launching back
...
Meta index will now always return valid objects.
They just might never load if they don't exist on the server.
2017-04-07 00:20:02 +02:00
Petr Mrázek
e46aba9da5
NOISSUE sanitize loading and downloading of metadata files
2017-04-07 00:20:02 +02:00
Petr Mrázek
0060b50625
NOISSUE simplify.
2017-04-07 00:20:01 +02:00
Petr Mrázek
40cf38bc32
NOISSUE remove liteloader and forge
2017-04-07 00:20:01 +02:00
Petr Mrázek
f6eb8fa1e4
NOISSUE Remove hardcoded LWJGL (modern)
2017-04-07 00:20:01 +02:00
Petr Mrázek
2980322c3b
NOISSUE Remove Minecraft version list and versions.
2017-04-07 00:20:01 +02:00
Petr Mrázek
8321187a20
NOISSUE fix downloading of metadata files
2017-04-07 00:20:01 +02:00
Petr Mrázek
ab868df50e
NOISSUE Wonko is the new Meta
...
And then Wonko was the Meta.
2017-04-07 00:20:01 +02:00
Petr Mrázek
7382360771
NOISSUE remove builtin Minecraft versions
2017-04-07 00:19:56 +02:00
Petr Mrázek
8cbe13c656
NOISSUE remove legacy version blacklist
2017-04-07 00:19:51 +02:00
Petr Mrázek
160b5033a7
GH-1828 hardcode legacy assets location to fix legacy launch
2017-02-28 20:52:50 +01:00
Petr Mrázek
01cb5ebb35
GH-1828 do not load assets info from custom version files
...
Fixes issue where this causes the launcher to use the old assets URL
2017-02-28 20:37:51 +01:00
Petr Mrázek
17fac2e0df
NOISSUE switch paste.ee over to https only
2017-02-08 21:30:39 +01:00
Petr Mrázek
8bbaab334c
NOISSUE set line limit and overflow behaviour even for hidden console
2017-02-08 20:01:42 +01:00
Petr Mrázek
155de307bc
GH-1802 fix log resize handling
...
The log could end up with many empty lines because the wrong maximum size was
used during the resize.
2017-02-08 01:59:16 +01:00
Petr Mrázek
c200301673
GH-1801 Do not print the launch script to MultiMC's log.
2017-01-24 08:20:16 +01:00
Petr Mrázek
cf43abc87e
GH-1794 Only write to the instance.cfg once after copying FTB instances.
2017-01-22 15:20:05 +01:00
Petr Mrázek
201d4ac317
GH-1789 fix icon deletion
2017-01-17 23:36:41 +01:00
Tim Flynn
98e17998fe
GH-1065 Normalize usage of directory vs folder
2017-01-16 22:42:22 +01:00
Petr Mrázek
858b490c74
GH-1778: Fix placement of modded Minecraft.jar in OneSix instances.
2017-01-10 23:03:00 +01:00
Petr Mrázek
f530aae9d3
NOISSUE update all the Copyright comments and texts to include 2017
2017-01-08 04:58:05 +01:00
Petr Mrázek
cff34a14dc
NOISSUE dump the json to log in MojangVersionFormatTest
2017-01-07 19:32:39 +01:00
Petr Mrázek
8421ef622d
NOISSUE even more java polishing
...
* Memory minimums lowered to 128M in all Java settings UIs
* Changing the memory sizes on the wizard page does not automatically trigger checks if the executable doesn't have 'java' in the name
* Java detection on linux now scans some common JRE locations, not just /usr/bin/java
2017-01-07 18:11:41 +01:00
Petr Mrázek
c4ec6bc0f5
NOISSUE polish the java setup wizard page
...
* Added a button to check why Java failed
* It will now avoid automatically scanning binaries that do not have 'java' in their filename
* Fixed some crashes related to running too many Java checks (it only does one at a time now)
* It can now distinguish between more Java failure states (not there at all, crashing, returning nonsense)
* Changed '...' button to Browse button to match the wizard page subtitle
* Changing minimum and maximum memory will no longer trigger a java check twice
2017-01-07 06:52:09 +01:00
Petr Mrázek
0249bd9eea
NOISSUE default to javaw on Windows
2017-01-05 14:20:37 +01:00
Petr Mrázek
e1bd1c6145
NOISSUE feature complete setup wizard
2017-01-05 04:05:08 +01:00
Petr Mrázek
a666dc0a1a
NOISSUE fix up translation selection in settings and add OS/sys arch reporting
2017-01-01 20:04:08 +01:00
Petr Mrázek
722896d41f
NOISSUE Translations model and initial setup wizard work
2017-01-01 20:04:08 +01:00
Petr Mrázek
2344ee2dcd
GH-1379 rename shared libraries to avoid collisions with system libraries
...
It was unlikely, now it's impossible.
2016-12-28 17:23:48 +01:00
Taylor Smock
03d2858c62
BUILD: Remove extraneous " from CreateServerResourcePacksFolder.cpp ( #1749 )
...
NOISSUE Remove extraneous " from CreateServerResourcePacksFolder.cpp
This did not affect build, but was visible in logs.
2016-12-12 14:36:42 +01:00
Petr Mrázek
a6882787b0
GH-1745 fix crash when using path matching filter on copy operations
...
Copying instances without saves doesn't crash anymore.
2016-12-08 21:58:31 +01:00
Petr Mrázek
035bdc7576
GH-1524 Regenerate Minecraft client token when the auth token is invalid
...
This makes the case where users copy MultiMC to other machines
easier to handle. It doesn't require manual intervention and the tokens
do not go in a desync loop.
2016-11-30 00:19:27 +01:00
Petr Mrázek
4ca6878743
GH-1670 Fix LWJGL list loading
...
Now it uses the standard Download class that supports redirects and SSL.
2016-11-27 01:45:55 +01:00
Petr Mrázek
5994c47d7c
NOISSUE add ganalytics and LocalPeer licenses
2016-11-26 23:53:56 +01:00
Petr Mrázek
66ffab71ae
NOISSUE allow killing the instance from main window
2016-11-26 18:06:08 +01:00
Petr Mrázek
69be23c5f6
GH-1726 better failure detection for updates
...
Instead of just checking if the new version started, make sure
it is able to write its IPC key to a file and then use the key
to connect to the process.
2016-11-19 22:11:45 +01:00
Petr Mrázek
9efdd7232c
NOISSUE include json path in errors when FTB json is missing.
2016-11-17 04:40:07 +01:00
Petr Mrázek
9b41986634
GH-347 update timestamps of added mods
2016-11-17 04:09:24 +01:00
Petr Mrázek
b09fad9cbf
GH-347 Add timestamp column to mod lists
...
It shows when the file was changed (in most cases added).
2016-11-17 02:55:02 +01:00
Petr Mrázek
fd34ca5a0f
NOISSUE always run the ExtractNatives task during launch
...
The task now checks the conditions, giving the update process time
to supply all the metadata.
2016-11-17 01:21:49 +01:00
Petr Mrázek
12f6534e77
NOISSUE mark used accounts/sessions in selection menus
2016-11-17 01:00:15 +01:00
Petr Mrázek
f9d94a45ee
NOISSUE allow using icon themes for instances and instance badges
2016-11-10 02:54:53 +01:00
Petr Mrázek
b6f133f579
GH-1713 fix FTB loading crashes
2016-11-09 01:22:02 +01:00
Petr Mrázek
dae3b06885
NOISSUE fix horrible globals crash
...
FIXME: remove all globals.
2016-11-07 02:28:18 +01:00
Petr Mrázek
8b952b3870
NOISSUE Refactor and sanitize MultiMC startup/shutdown
...
* Always create main window.
* Properly handle netowrk manager - it was created twice, leading to potential crashes.
2016-11-06 21:58:54 +01:00
Petr Mrázek
bc753859b5
GH-378 add basic custom theme support
...
Files you can customize are created in themes/custom/
2016-11-06 04:29:12 +01:00
Petr Mrázek
87dd951505
NOISSUE add a badge for crashed instances
...
Not persistent across MultiMC runs.
2016-11-04 01:19:04 +01:00
Petr Mrázek
3780a25d27
NOISSUE add an option to show console on error and default other options to false
2016-11-04 00:19:32 +01:00
Petr Mrázek
f0b71f989e
NOISSUE use LoggedProcess to work around issues with QProcess on macOS
2016-11-03 01:11:57 +01:00
Petr Mrázek
85b64ad767
NOISSUE MCEdit integration - remove old 'tool', replace with Worlds
2016-11-02 02:37:54 +01:00
Petr Mrázek
a9c0d812a6
NOISSUE prefer shell script for running MCEdit on linux
2016-11-02 01:16:41 +01:00
Petr Mrázek
deabfa78f8
GH-1652 set instance running status before notifying event listeners
2016-10-29 02:19:42 +02:00
Petr Mrázek
dd0e996081
GH-1697 always stale files tolerate errors if a local copy is present
...
This fixes the situation when liteloader snapshot site is broken
and there's an older local snapshot already present.
2016-10-28 02:19:19 +02:00
Petr Mrázek
cee53f7f3c
Revert "NOISSUE nuke builtin Minecraft versions"
...
This reverts commit 5ae3b2c114
.
We need those builtin versions for now.
2016-10-26 18:23:39 +02:00
Petr Mrázek
1b4851a941
NOISSUE use QtConcurrent to run FS operations in worker threads
...
Not all operations - only the ones that aren't in error handling.
The API for QFuture is too nasty to do much more in a sensible way.
2016-10-26 18:21:25 +02:00
Petr Mrázek
d66fdcd4cc
NOISSUE Granular instance reload
2016-10-26 18:21:24 +02:00
Petr Mrázek
f07496ac6d
GH-1675 reimplement suspesion of log watch
2016-10-11 21:34:02 +02:00
Petr Mrázek
6e80f03409
NOISSUE add instance-local library storage
...
Any libraries stored in $instanceroot/libraries/ will override
the libraries from MultiMC's global folders, as long as they are marked 'local'
in the json patch.
2016-10-02 00:26:10 +02:00
Petr Mrázek
69f3ab019d
NOISSUE delete dead code
2016-09-18 22:53:37 +02:00
Petr Mrázek
eb747e08b7
NOISSUE fix minor memory leaks
2016-08-19 09:04:58 +02:00
Petr Mrázek
67eca08b22
NOISSUE use model/view for Minecraft log data
2016-08-19 08:05:43 +02:00
Petr Mrázek
042f3ef55c
GH-352 Make OneSix instance update downloads cancellable
2016-08-14 23:22:54 +02:00
Petr Mrázek
55544893a3
GH-1643 do not censor preferredLanguage in logs
2016-08-10 19:52:38 +02:00
Petr Mrázek
e2f3652a0f
Revert "NOISSUE rework of minecraft log"
...
This reverts commit fc198dd308
.
2016-08-10 08:41:58 +02:00
Petr Mrázek
c60db13af7
NOISSUE Do not kill running instances when MultiMC shuts down
2016-08-10 00:28:33 +02:00
Petr Mrázek
fc198dd308
NOISSUE rework of minecraft log
...
Now uses a model and a list view instead of text
This lets mmc keep track of the contents regardless of whether the instance windows are open
This is currently missing a way to select and copy text from the log.
2016-08-10 00:28:33 +02:00
Petr Mrázek
74b4343c43
GH-1642 fix instance launch from console
2016-08-09 22:29:17 +02:00
Petr Mrázek
bc6d1b5304
GH-338, GH-513, GH-700 Unify edit instance with console window
...
* The resulting instance window can be closed at any point.
* Main window is kept open and running instances are marked with a badge.
* Multiple instances can now run from the same MultiMC - it's even more **multi** now.
* MultiMC can be entirely closed, keeping Minecraft(s) running.
2016-08-07 11:48:15 +02:00
Petr Mrázek
c44d41ee9b
NOISSUE do not attempt to stop watching world folders if they are not being watched
2016-08-07 11:44:42 +02:00
Petr Mrázek
cf0694a0cb
NOISSUE allow user to sort mod list by clicking on column headers
2016-08-05 00:10:33 +02:00
Petr Mrázek
b76d4573cd
GH-589 GH-842 GH-901 GH-1117 allow mass-enabling/disabling of mods
2016-08-04 23:16:03 +02:00
Petr Mrázek
6ec2652b45
GH-1273 allow extended selection in mod lists
2016-08-04 22:57:16 +02:00
Petr Mrázek
eec87db86a
GH-1635 add filter bar to mod list pages
2016-08-04 21:54:25 +02:00
Petr Mrázek
42a98c3661
NOISSUE move creation of server resource pack folder to a separate task
2016-08-01 21:15:08 +02:00
Petr Mrázek
1f2bed2ef1
NOISSUE implement direct java launch
...
Just running the Java process and giving it params on the command line
2016-08-01 21:15:08 +02:00
FyberOptic
f626fd02c7
GH-1610 Make Forge installs only use newer list to fix older version downloads
2016-07-08 14:08:07 -04:00
Petr Mrázek
969418f01f
NOISSUE make liteloader version list pretty and usable
2016-06-14 02:08:56 +02:00
Petr Mrázek
6ecfe8546f
NOISSUE implement support for liteloader snapshots
2016-06-13 22:00:09 +02:00
Petr Mrázek
8b74f6dcf0
NOISSUE reset wroteAnyData flag when resetting FileSink
...
This fixes files getting overwritten with null content when stale cache
and redirects are combined
2016-06-13 21:56:22 +02:00
Petr Mrázek
d4109938fe
NOISSUE implement 'always-stale' cache entries
2016-06-13 21:53:56 +02:00
Petr Mrázek
56394f93e5
NOISSUE log which file couldn't be copied during recursive copy
2016-06-10 00:58:30 +02:00
Petr Mrázek
54e5a98da0
NOISSUE refactor liteloader version file creation
...
It no longer implements yet another version file format serialization
2016-06-07 01:23:31 +02:00
Petr Mrázek
a1abbd9e05
NOISSUE refactor *Download into more, smaller pieces
...
* Download is now Download.
* Download uses Sink subclasses to process various events.
* Validators can be used to further customize the Sink behaviour.
2016-06-05 23:55:39 +02:00
Petr Mrázek
4440f68e59
GH-575 Add back file drop support to ModList
2016-05-15 23:27:06 +02:00
Petr Mrázek
67b22c8105
GH-575 clean up ModList - remove all legacy and obsolete parts
2016-05-15 22:56:14 +02:00
Petr Mrázek
12413f722d
GH-575 separate legacy jar mod list from mod list
2016-05-15 22:56:14 +02:00
Alexia
377316999e
GH-767 Basic skin upload
2016-05-15 16:01:05 +02:00
Mrazek, Petr
898e3cd4e7
GH-1559 Export IIconList from logic API
2016-05-03 17:49:56 +02:00
Petr Mrázek
e1a530f84d
GH-1559 Fix FTB icons
...
This was caused by separation of GUI and logic. Now logic has an interface that GUI implements.
It should be expanded upon later.
2016-05-03 00:27:28 +02:00
Petr Mrázek
b0bfffcd90
NOISSUE revert to dumping all build artifacts to the root
...
This fixes unit tests on Windows... Windows has no mechanism to set library lookup path.
2016-05-01 03:49:46 +02:00
Petr Mrázek
16650790d0
NOISSUE fix dll export for IconList
2016-05-01 00:45:48 +02:00
Petr Mrázek
771dd6f9ab
NOISSUE reorganize unit tests to be placed next to the code they test. Nuke more dead tests.
2016-05-01 00:02:15 +02:00
Petr Mrázek
ed3884fd38
NOISSUE move Java and Minecraft launch tasks to the proper places
...
Minecraft and Java are not generic.
2016-05-01 00:00:24 +02:00
Petr Mrázek
1be7d57332
NOISSUE re/move some dead code and unused build system parts
2016-05-01 00:00:24 +02:00