Unknown
139cb94276
flake8 hotfix
2020-09-03 05:38:02 +02:00
Unknown
e367127957
[skip travis] minor fixes
2020-09-02 23:48:21 +02:00
Unknown
3fba008111
[skip travis] tweaks
2020-09-02 22:03:33 +02:00
Unknown
cefecac12c
[skip travis] renaming
...
to avoid using same folder when using pip install for example
2020-09-02 20:25:25 +02:00
Felix Stupp
efe87a10ae
Added --remux-video option
...
Fixes #6996
- Supported formats declared: mp4, mkv
- Added FFmpegVideoRemuxerPP as postprocessor
- Added option to README and shell-completion scripts
2020-05-16 18:45:40 +02:00
nmeum
259ad38173
[devscripts/create-github-release] Remove unused import
2020-01-06 01:26:22 +07:00
Sergey M․
0d5c415e1f
[devscripts/create-github-release] Switch to using PAT for authentication
...
Basic authentication will be deprecated soon
2020-01-01 05:20:48 +07:00
Sergey M․
3089bc748c
Fix W504 and disable W503 ( closes #20863 )
2019-05-11 03:57:40 +07:00
Sergey M․
6f366ef30c
Issue template overhaul
2019-04-27 04:50:47 +07:00
Sergey M․
067aa17edf
Start moving to ytdl-org
2019-03-11 04:00:54 +07:00
Sergey M․
f7560859a3
[devscripts/update-copyright] Update copyright year
2018-06-04 02:33:54 +07:00
Sergey M․
d3711b0050
[devscripts/gh-pages/generate-download.py] Use program checksum from versions.json
2018-04-25 02:14:27 +07:00
Sergey M․
7a6c204fcb
[travis] Add Jython build
2018-01-02 21:13:41 +07:00
Yen Chi Hsuan
82a62de192
[Makefile,devscripts/run_tests.sh] Actually exclude network tests
...
Closes #14858
2017-11-27 21:32:06 +08:00
Kareem Moussa
8a1a60d173
[devscripts/check-porn] Fix gettestcases import
2017-09-19 22:51:20 +07:00
Yen Chi Hsuan
473e87064b
[devscripts/prepare_manpage] Fix deprecated escape sequence on py36
2017-06-17 17:37:25 +08:00
Sergey M․
19f3821821
[devscripts/make_lazy_extractors] Fix making lazy extractors on python 3 under Windows
2017-02-24 02:09:51 +07:00
Sergey M․
0f3d41b44d
[devscripts/run_tests] Exclude youtube lists tests from core build
2017-02-23 19:48:54 +07:00
Yen Chi Hsuan
8936f68a0b
[travis] Run tests in parallel
...
[test_download] Print test names in case of network errors
[test_download] Add comments for nose parameters
[test_download] Modify outtmpl to prevent info JSON filename conflicts
Thanks @jaimeMF for the idea.
[travis] Only download tests should be run in parallel
2017-02-19 21:26:35 +08:00
Anisse Astier
099cfdb770
[devscripts/run_tests.sh] Change permission for script to 755
2017-02-16 00:28:31 +08:00
Sergey M․
1e2c3f61fc
[travis] Separate builds for core and download
2017-02-13 17:36:13 +07:00
Chris Gavin
490da94edf
[devscripts/buildserver] Remove unreachable except block
2016-12-31 19:17:52 +07:00
Sergey M․
689f31fde5
[devscripts/create-github-release] Fill release body from ChangeLog ( closes #11094 )
2016-11-18 00:17:46 +07:00
Yen Chi Hsuan
582be35847
Update coding style after pycodestyle 2.1.0
...
In pycodestyle 2.1.0, E305 was introduced, which requires two blank
lines after top level declarations, too.
See https://github.com/PyCQA/pycodestyle/issues/400
See also #10689 ; thanks @stepshal for first mentioning this issue and
initial patches
2016-11-17 19:45:42 +08:00
Déstin Reed
dcdb292fdd
Unify coding cookie
2016-10-03 23:44:29 +07:00
Sergey M․
fc150cba1d
[devscripts/release.sh] Add missing fi
2016-09-11 23:32:01 +07:00
Sergey M․
eb87d4545a
[devscripts/release.sh] Add ChangeLog reminder prompt
2016-09-11 23:29:25 +07:00
Sergey M․
cc9c8ce5df
[devscripts/prepare_manpage] Fix description strings starting with dash ( Closes #10273 )
2016-08-09 22:24:58 +07:00
Yen Chi Hsuan
35aa6c538f
Add ChangeLog
2016-07-30 12:33:09 +08:00
Sergey M․
7935926baa
[devscripts/show-downloads-statistics] Add support for paging
2016-07-27 00:14:40 +07:00
Yen Chi Hsuan
9d865a1af6
[travis] Skip downloading srelay
...
SOCKS tests never run on Travis CI due to unknown reasons, and
downloading them broke some tests (e.g.
https://travis-ci.org/rg3/youtube-dl/builds/144306425 )
2016-07-13 14:27:14 +08:00
Philipp Hagemeister
381ff44756
[devscripts/generate-download] Remove MD5 and SHA1
2016-07-12 09:09:54 +02:00
Sergey M․
bf3ae6a543
[devscripts/show-downloads-statictics] Add script for displaying downloads statistics
2016-07-03 22:20:14 +07:00
Jaime Marquínez Ferrándiz
169d836feb
lazy-extractors: Fix after commit 6e6b9f600f
...
The problem was in the following code:
class ArteTVPlus7IE(ArteTVBaseIE):
...
@classmethod
def suitable(cls, url):
return False if ArteTVPlaylistIE.suitable(url) else super(ArteTVPlus7IE, cls).suitable(url)
And its sublcasses like ArteTVCinemaIE.
Since in the lazy_extractors.py file ArteTVCinemaIE was not a subclass of ArteTVPlus7IE, super(ArteTVPlus7IE, cls) failed.
To fix it we have to make it a subclass. Since the order of _ALL_CLASSES is arbitrary we must sort them so that the base classes are defined first. We also must add base classes like YoutubeBaseInfoExtractor.
2016-06-22 19:20:50 +02:00
Sergey M․
4cef70db6c
[devscripts/release.sh] Add flag for gpg-sign commits
2016-06-14 03:16:56 +07:00
Sergey M․
db59b37d0b
[devscripts/create-github-release] Make full published releases by default
2016-06-06 03:02:11 +07:00
Sergey M․
39b32571df
[devscripts/release.sh] Release to GitHub
2016-06-05 00:48:33 +07:00
Sergey M․
db56f281d9
[devscripts/create-github-release] Add script for releasing on GitHub
...
Yet only Basic authentication is supported either via .netrc or by manual input
2016-06-05 00:47:26 +07:00
Sergey M․
e92b552a10
[devscripts/buildserver] Use compat_input from compat
2016-06-05 00:44:51 +07:00
Philipp Hagemeister
cad88f96dc
disable uploading to yt-dl.org for now
2016-06-04 11:42:52 +02:00
Sergey M․
56bd028a0f
[devscripts/buildserver] Listen on all interfaces
2016-05-30 00:21:18 +07:00
Sergey M․
681b923b5c
[devscripts/release.sh] Allow passing buildserver address as cli option
2016-05-29 23:36:42 +07:00
Sergey M․
f3fb420b82
[devscripts/release.sh] Check for wheel
2016-05-29 11:49:14 +06:00
Sergey M․
165e3561e9
[devscripts/buildserver] Check Wow6432Node first when searching for python
...
This allows building releases from 64bit OS
2016-05-29 10:02:00 +06:00
Sergey M․
44c8892369
[devscripts/prepare_manpage] Fix manpage generation on Windows
2016-05-29 09:06:10 +06:00
Sergey M․
f574103d7c
[buildserver] Fix buildserver and make python2 compatible
2016-05-29 09:03:17 +06:00
Philipp Hagemeister
d2fee3c99e
release.sh: also check for python3 rsa module
2016-05-21 21:47:22 +02:00
Philipp Hagemeister
7e642e4fd6
release: check for pandoc
...
Abort releaseing if pandoc is missing.
(pandoc was not included in my essential app database, and thus missing on my new machine.)
2016-05-21 21:26:57 +02:00
Yen Chi Hsuan
e21f17fc86
[test/test_socks] Test with local SOCKS servers
2016-05-10 14:51:38 +08:00
Jaime Marquínez Ferrándiz
8a5dc1c1e1
lazy extractors: Initialize the real info extractor
...
According to the docs '__init__' is only called automatically if '__new__' returns an instance of the original class.
2016-04-08 21:50:54 +02:00
Jaime Marquínez Ferrándiz
6b97ca96fc
lazy extractors: Style fixes
...
* Sort extractors alphabetically
* Add newlines when needed (youtube_dl/extractors/lazy_extractors.py pass the flake8 test now)
2016-04-08 21:50:54 +02:00
Jaime Marquínez Ferrándiz
c1ce6acdd7
lazy extractors: Fix building with python2.6
2016-04-08 21:50:07 +02:00
Jaime Marquínez Ferrándiz
0d778b1db9
lazy extractors: specify the encoding
...
When building with python3 the unicode characters are not escaped, python2 needs to know the encoding.
2016-04-08 21:50:07 +02:00
Jaime Marquínez Ferrándiz
779822d945
Add experimental support for lazy loading the info extractors
...
'make lazy-extractors' creates the youtube_dl/extractor/lazy_extractors.py (imported by youtube_dl/extractor/__init__.py), which contains simplified classes that only have the 'suitable' class method and that load the appropiate class with the '__new__' method when a instance is created.
2016-04-08 21:50:07 +02:00
Jaime Marquínez Ferrándiz
be0c7009fb
Makefile: use full path for the ISSUE_TEMPLATE.md file
2016-04-06 14:09:31 +02:00
Sergey M․
7168a6c874
[devscripts/make_issue_template] Fix __version__ again
2016-03-29 03:05:15 +06:00
Sergey M․
89924f8230
[devscripts/make_issue_template] Fix NameError under python3
2016-03-29 02:41:27 +06:00
Sergey M․
4a5a67ca25
[devscripts/release.sh] Make ISSUE_TEMPLATE.md and commit it
2016-03-29 02:18:52 +06:00
Sergey M․
3bf1df51fd
[devscripts/make_issue_template] Rework to use ISSUE_TEMPLATE.tmpl ( Closes #8785 )
2016-03-29 02:16:38 +06:00
Sander van den Oever
7710bdf4e8
Add initial ISSUE_TEMPLATE
...
Add auto-updating of youtube-dl version in ISSUE_TEMPLATE
Move parts of template text and adopt makefile to new format
Moved the 'kind-of-issue' section and rephrased a bit
Rephrased and moved Example URL section upwards
Moved ISSUE_TEMPLATE inside .github folder.
Update makefile to match new folderstructure
2016-03-28 22:43:13 +06:00
Jakub Wilk
dfb1b1468c
Fix typos
...
Closes #8200 .
2016-01-10 17:24:28 +01:00
Yen Chi Hsuan
bad84757eb
[doc] Better formatting of youtube-dl.1 ( closes #6510 )
2015-10-03 00:01:10 +02:00
Yen Chi Hsuan
95240b8093
Use insert
for all sys.path manipulations
...
Closes #6867 .
2015-09-26 22:04:41 +02:00
Jaime Marquínez Ferrándiz
70a1165b32
Don't use bare 'except:'
...
They catch any exception, including KeyboardInterrupt, we don't want to catch it.
2015-03-27 13:02:20 +01:00
Jaime Marquínez Ferrándiz
f9544f6e8f
[test/aes] Test aes_decrypt_text with 256 bit
2015-03-22 12:09:58 +01:00
Jaime Marquínez Ferrándiz
a7d9ded45d
[test] Add tests for aes
2015-03-21 12:07:23 +01:00
Philipp Hagemeister
8fb3ac3649
PEP8: W503
2015-02-21 14:55:13 +01:00
Philipp Hagemeister
ee623d9247
[descripts/release] Regenerate auxiliary documentation on build as well
2015-02-03 00:22:17 +01:00
Philipp Hagemeister
d200b11c7e
[Makefile] Simplify clean/cleanall
2015-02-03 00:14:42 +01:00
Jaime Marquínez Ferrándiz
c5d666d374
Fix build with python 2.6
...
* Packages cannot be executed
* '.format' needs the index of the argument
(Reported in https://github.com/Homebrew/homebrew/issues/35616 )
2015-01-07 16:09:43 +01:00
Philipp Hagemeister
2bad0e5d20
[/__init__] Define public API
2015-01-07 07:41:05 +01:00
Philipp Hagemeister
416c7fcbce
Add documentation about supported sites ( Fixes #4503 )
2014-12-30 19:35:35 +01:00
Philipp Hagemeister
b50e3bc67f
[README] Add table of contents ( Closes #4458 )
2014-12-16 16:33:23 +01:00
Philipp Hagemeister
ccbfaa83b0
[devscripts/make_contributing] Switch to optparse ( Fixes #4483 )
2014-12-16 00:24:11 +01:00
Philipp Hagemeister
13dcfd41bd
[CONTRIBUTING.md] Remove the section about embedding; that is not applicable for youtube-dl contributors
2014-12-12 16:47:22 +01:00
Philipp Hagemeister
e56190b378
[Makefile] Add CONTRIBUTING.md ( Fixes #2984 )
2014-12-12 16:42:40 +01:00
Philipp Hagemeister
dcddc10a50
[test_unicode_literals] Arm unicode_literals check
...
From now on, the line
from __future__ import unicode_literals
should be contained in every single Python file lest we run into any more 2.x/3.x issues.
Going forward, we're likely to develop on 3.x only and would likely miss subtle bugs otherwise.
2014-11-26 20:01:22 +01:00
Philipp Hagemeister
b74e86f48a
Fix all PEP8 issues except E501
2014-11-23 22:21:46 +01:00
Philipp Hagemeister
380b822003
Remove outdated transition helper scripts
2014-11-23 22:13:03 +01:00
Jouke Waleson
fab6d4c048
remove useless line, the result is never used
2014-11-23 22:00:35 +01:00
Jouke Waleson
9e1a5b8455
PEP8: applied even more rules
2014-11-23 21:39:15 +01:00
Jouke Waleson
2514d2635e
PEP8: E225,E227
2014-11-23 21:23:05 +01:00
Jouke Waleson
8bcc875676
PEP8: more applied
2014-11-23 21:20:46 +01:00
Jouke Waleson
5f6a1245ff
PEP8 applied
2014-11-23 20:41:03 +01:00
Xu Cheng
3b700f8d43
support zsh completion
2014-10-07 13:19:59 +08:00
Jaime Marquínez Ferrándiz
56d1912f1d
Add a completion script generator for the fish shell
2014-09-14 14:07:33 +02:00
Philipp Hagemeister
11ab41658e
[devscripts/release] Do not restore youtube-dl{,.exe} binaries
2014-09-14 12:23:37 +02:00
Philipp Hagemeister
63961d87a6
[devscripts/release] Do not commit CHANGELOG
2014-05-30 03:19:37 +02:00
Philipp Hagemeister
1800eeefed
add prepare_manpage
2014-05-13 14:21:21 +02:00
Philipp Hagemeister
d19bb9c0aa
Split man and README ( Fixes #2892 )
2014-05-13 11:16:11 +02:00
Philipp Hagemeister
4c0941853a
[devscripts/release] Check version number
2014-03-24 10:25:49 +01:00
Philipp Hagemeister
cc88b90ec8
[desvscripts/release] Bump the number of password tries to accomodate stubby-fingered @phihag
2014-03-18 15:02:37 +01:00
Jaime Marquínez Ferrándiz
4056ad8f36
Build and upload universal wheels to pypi
2014-03-16 10:22:41 +01:00
Philipp Hagemeister
0f8f097183
[release.sh] Do not run tests by default
...
We are at the point that testing takes waay too long for a release cycle, and fails way too often.
Tests through travis are a better indicator than testing just before release.
2014-02-22 15:06:07 +01:00
Filippo Valsorda
a45ea17042
Implement a different adult sites checking algorithm
2014-01-14 16:01:00 -05:00
Philipp Hagemeister
50144133c5
[release] Check for useless files before release
2014-01-07 08:28:05 +01:00
Jaime Marquínez Ferrándiz
1c0f31f9f7
[bash-completion] Complete filename if —load-info
is given
2014-01-05 11:28:01 +01:00
Philipp Hagemeister
3e34db3170
More Atom feed improvements ( #2081 )
2014-01-05 05:16:16 +01:00
Philipp Hagemeister
317d4edfa8
Improve Atom feed creation ( Fixes #2081 )
2014-01-05 05:04:46 +01:00
Philipp Hagemeister
9b12003c35
atom feed generator: Make IDs proper URLs ( #2081 )
2014-01-05 04:49:43 +01:00
Philipp Hagemeister
49f2bf76a8
Fix make_readme on Python 2
2014-01-05 04:44:29 +01:00
Philipp Hagemeister
1e91866f77
Make make_readme run in a locale-less environment
...
Mentioned in #267
2014-01-05 04:39:27 +01:00
Jaime Marquínez Ferrándiz
5f09bbff4d
[bash-completion] Complete the ':ythistory' keyword
2013-11-27 00:42:59 +01:00
Jaime Marquínez Ferrándiz
c1f9c59d11
[bash-completion] Complete filenames or directories if the previous option requires it
2013-11-27 00:41:30 +01:00
Filippo Valsorda
750e9833b8
Add the missing age_limit tags; added a devscript to do a superficial check for porn sites without the age_limit tag in the test
2013-10-28 01:50:17 -04:00
Philipp Hagemeister
d5594202aa
Simplify release process
2013-10-18 23:34:55 +02:00
Philipp Hagemeister
3d2986063c
[bash-completion] Do not use dash in function name ( Fixes #1623 )
2013-10-18 23:13:46 +02:00
Jaime Marquínez Ferrándiz
4193a453c2
Don't add extractors with IE_DESC set to False to the page of supported sites.
2013-10-10 16:18:02 +02:00
Philipp Hagemeister
509f398292
Remove youtube_genalgo ( #1515 )
...
With the automatic signature extraction, this script has become superfluous now
2013-09-27 13:09:24 +02:00
Jaime Marquínez Ferrándiz
6f56389b88
[youtube] update algos for length 86 and 84 ( fixes #1494 )
2013-09-24 21:02:00 +02:00
Jaime Marquínez Ferrándiz
38d025b3f0
[youtube] add algo for length 91
2013-09-20 14:43:16 +02:00
Jaime Marquínez Ferrándiz
7a878d47fa
Merge pull request #1464 from patrickslin/patch-7
...
Unable to decrypt signature length 93 (fixes #1461 )
2013-09-20 08:25:10 +02:00
Philipp Hagemeister
6ae8ee3f54
Update 85 signature ( Fixes #1449 )
...
This is the first signature algorithm to have been parsed automatically, although that only works for HTML5 players for now, and is not yet integrated into master.
2013-09-17 16:59:13 +02:00
Philipp Hagemeister
6c603ccce3
[devscripts/release] temporary workarounds
2013-09-16 04:12:43 +02:00
Philipp Hagemeister
ef66b0c6ef
Merge remote-tracking branch 'origin/master'
2013-09-16 03:32:53 +02:00
Philipp Hagemeister
22b50ecb2f
Starts of a Windows service
2013-09-16 03:32:45 +02:00
Philipp Hagemeister
71cedb3c0c
[buildserver] Service installation and uninstallation
2013-09-13 02:25:12 +02:00
Jaime Marquínez Ferrándiz
ce85f022d2
[youtube] update algo for length 82 ( fixes #1416 )
2013-09-12 22:04:09 +02:00
Philipp Hagemeister
353ba14060
[buildserver] Rely on repository license
2013-09-12 16:34:24 +02:00
Philipp Hagemeister
83de794223
Add original buildserver from @fraca7
2013-09-12 16:30:43 +02:00
Jaime Marquínez Ferrándiz
22c8b52545
In the supported sites page, sort the extractors in case insensitive
2013-09-11 12:04:27 +02:00
Jaime Marquínez Ferrándiz
aa8f2641da
[youtube] update algo for length 85 ( fixes #1408 and fixes #1406 )
2013-09-11 11:24:58 +02:00
Philipp Hagemeister
8851a574a3
Fix add-versions
2013-09-06 11:07:34 +02:00
Philipp Hagemeister
1d213233cd
Do not re-download files for hashsum generation ( Fixes #1383 )
2013-09-06 10:51:53 +02:00
Jaime Marquínez Ferrándiz
09bb17e108
Merge pull request #1378 from patrickslin/patch-6
...
Vevo sig changed again, please update for us! Thanks very much! (fixes #...
2013-09-06 09:53:23 +02:00
Jaime Marquínez Ferrándiz
691008087b
Add an automatic page generator for the supported sites (related #156 )
...
They are listed in the "supportedsites.html" page.
2013-08-31 15:18:52 +02:00
Jaime Marquínez Ferrándiz
2e756879f1
[youtube] update algo for length 86
2013-08-30 20:49:51 +02:00
Jaime Marquínez Ferrándiz
9193c1eede
Add youtube keywords to the bash completion script
2013-08-30 20:11:53 +02:00
Jaime Marquínez Ferrándiz
23b00bc0e4
[youtube] update algo for length 84
...
Only appears sometimes, nearly identical to length 86.
2013-08-29 22:44:29 +02:00
Jaime Marquínez Ferrándiz
52e1eea18b
[youtube] update algo for length 86 ( fixes #1349 )
2013-08-29 22:33:58 +02:00
Jaime Marquínez Ferrándiz
3e223834d9
[youtube] update algo for length 88, thanks to @Ramhack ( fixes #1328 )
2013-08-28 10:26:44 +02:00
Jaime Marquínez Ferrándiz
f2aeefe29c
[youtube] update algo for length 84
2013-08-24 10:48:12 +02:00
Philipp Hagemeister
d2d1eb5b0a
Switch to domain yt-dl.org
2013-08-23 23:57:23 +02:00
Jaime Marquínez Ferrándiz
306170518f
[youtube] update algo for length 86 ( fixes #1302 )
2013-08-23 22:36:59 +02:00
Jaime Marquínez Ferrándiz
066090dd3f
[youtube] add algo for length 80 and update player info
2013-08-23 11:33:56 +02:00
Jaime Marquínez Ferrándiz
3669cdba10
[youtube] update algo for length 82 ( fixes #1296 )
2013-08-22 22:35:15 +02:00
Emilien Kenler
bda2c49d75
Update algo - see #1254
...
Signed-off-by: Emilien Kenler <hello@emilienkenler.com>
2013-08-18 11:10:39 +02:00
Emilien Kenler
2b9213cdc1
Update generator
...
Signed-off-by: Emilien Kenler <hello@emilienkenler.com>
2013-08-12 10:48:40 +02:00
Jaime Marquínez Ferrándiz
04bca64bde
[youtube]: new algo for length 83 ( fixes #1164 )
2013-08-02 12:38:17 +02:00
Jaime Marquínez Ferrándiz
75952c6e3d
YoutubeIE: new algo for length 86 ( fixes #1156 )
...
Now is using the same length as the flash player used for age protected videos, but the algorithm is different, so now for age protected videos it first tries to use the old algo.
2013-07-31 10:45:13 +02:00
Jaime Marquínez Ferrándiz
5c468ca8a8
YoutubeIE: add algo for length 79 ( fixes #1126 )
2013-07-25 22:50:24 +02:00
Jaime Marquínez Ferrándiz
aedd6bb97d
YoutubeIE: new algo for length 81 ( fixes #1127 )
2013-07-25 22:06:53 +02:00
Jaime Marquínez Ferrándiz
3e1ad508eb
Add Youtube player info for length 87
2013-07-24 12:48:25 +02:00
patrickslin
239e3e0cca
YoutubeIE: new algo for length 87 ( fixes #1105 )
...
Squashed commit from the pull requests #1107 , #1109 and #1110 .
2013-07-24 10:20:52 +02:00
Jaime Marquínez Ferrándiz
a4358cbabd
YoutubeIE: new algo for length 85 ( closes #1080 ), thanks to @patrickslin
2013-07-19 17:12:40 +02:00
Jaime Marquínez Ferrándiz
444b116597
YoutubeIE: add algo for length 90 ( closes #1064 )
...
Order the cases from higher to lower length.
2013-07-18 12:25:41 +02:00
Jaime Marquínez Ferrándiz
2aea08eda1
Merge pull request #1068 from MiLk/genalgo-youtube-92
...
[youtube] Add generator for signature 92
2013-07-18 09:54:56 +02:00
Emilien Kenler
ccf365475a
[youtube] Add generator for signature 92
2013-07-17 17:43:44 +02:00
Jaime Marquínez Ferrándiz
606d7e67fd
YoutubeIE: add algo for length 81 ( closes #1026 )
2013-07-11 23:47:54 +02:00
Jaime Marquínez Ferrándiz
85347e1cb6
YoutubeIE: a new algo for length 83
2013-07-11 20:21:45 +02:00