mirror of
				https://github.com/ytdl-org/youtube-dl.git
				synced 2025-10-29 09:26:20 -07:00 
			
		
		
		
	release 2016.06.14
This commit is contained in:
		
							
								
								
									
										6
									
								
								.github/ISSUE_TEMPLATE.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.github/ISSUE_TEMPLATE.md
									
									
									
									
										vendored
									
									
								
							| @@ -6,8 +6,8 @@ | |||||||
|  |  | ||||||
| --- | --- | ||||||
|  |  | ||||||
| ### Make sure you are using the *latest* version: run `youtube-dl --version` and ensure your version is *2016.06.12*. If it's not read [this FAQ entry](https://github.com/rg3/youtube-dl/blob/master/README.md#how-do-i-update-youtube-dl) and update. Issues with outdated version will be rejected. | ### Make sure you are using the *latest* version: run `youtube-dl --version` and ensure your version is *2016.06.14*. If it's not read [this FAQ entry](https://github.com/rg3/youtube-dl/blob/master/README.md#how-do-i-update-youtube-dl) and update. Issues with outdated version will be rejected. | ||||||
| - [ ] I've **verified** and **I assure** that I'm running youtube-dl **2016.06.12** | - [ ] I've **verified** and **I assure** that I'm running youtube-dl **2016.06.14** | ||||||
|  |  | ||||||
| ### Before submitting an *issue* make sure you have: | ### Before submitting an *issue* make sure you have: | ||||||
| - [ ] At least skimmed through [README](https://github.com/rg3/youtube-dl/blob/master/README.md) and **most notably** [FAQ](https://github.com/rg3/youtube-dl#faq) and [BUGS](https://github.com/rg3/youtube-dl#bugs) sections | - [ ] At least skimmed through [README](https://github.com/rg3/youtube-dl/blob/master/README.md) and **most notably** [FAQ](https://github.com/rg3/youtube-dl#faq) and [BUGS](https://github.com/rg3/youtube-dl#bugs) sections | ||||||
| @@ -35,7 +35,7 @@ $ youtube-dl -v <your command line> | |||||||
| [debug] User config: [] | [debug] User config: [] | ||||||
| [debug] Command-line args: [u'-v', u'http://www.youtube.com/watch?v=BaW_jenozKcj'] | [debug] Command-line args: [u'-v', u'http://www.youtube.com/watch?v=BaW_jenozKcj'] | ||||||
| [debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251 | [debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251 | ||||||
| [debug] youtube-dl version 2016.06.12 | [debug] youtube-dl version 2016.06.14 | ||||||
| [debug] Python version 2.7.11 - Windows-2003Server-5.2.3790-SP2 | [debug] Python version 2.7.11 - Windows-2003Server-5.2.3790-SP2 | ||||||
| [debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4 | [debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4 | ||||||
| [debug] Proxy map: {} | [debug] Proxy map: {} | ||||||
|   | |||||||
| @@ -142,9 +142,9 @@ After you have ensured this site is distributing it's content legally, you can f | |||||||
|     ``` |     ``` | ||||||
| 5. Add an import in [`youtube_dl/extractor/extractors.py`](https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/extractors.py). | 5. Add an import in [`youtube_dl/extractor/extractors.py`](https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/extractors.py). | ||||||
| 6. Run `python test/test_download.py TestDownload.test_YourExtractor`. This *should fail* at first, but you can continually re-run it until you're done. If you decide to add more than one test, then rename ``_TEST`` to ``_TESTS`` and make it into a list of dictionaries. The tests will then be named `TestDownload.test_YourExtractor`, `TestDownload.test_YourExtractor_1`, `TestDownload.test_YourExtractor_2`, etc. | 6. Run `python test/test_download.py TestDownload.test_YourExtractor`. This *should fail* at first, but you can continually re-run it until you're done. If you decide to add more than one test, then rename ``_TEST`` to ``_TESTS`` and make it into a list of dictionaries. The tests will then be named `TestDownload.test_YourExtractor`, `TestDownload.test_YourExtractor_1`, `TestDownload.test_YourExtractor_2`, etc. | ||||||
| 7. Have a look at [`youtube_dl/extractor/common.py`](https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/common.py) for possible helper methods and a [detailed description of what your extractor should and may return](https://github.com/rg3/youtube-dl/blob/58525c94d547be1c8167d16c298bdd75506db328/youtube_dl/extractor/common.py#L68-L226). Add tests and code for as many as you want. | 7. Have a look at [`youtube_dl/extractor/common.py`](https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/common.py) for possible helper methods and a [detailed description of what your extractor should and may return](https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/common.py#L74-L252). Add tests and code for as many as you want. | ||||||
| 8. Keep in mind that the only mandatory fields in info dict for successful extraction process are `id`, `title` and either `url` or `formats`, i.e. these are the critical data the extraction does not make any sense without. This means that [any field](https://github.com/rg3/youtube-dl/blob/58525c94d547be1c8167d16c298bdd75506db328/youtube_dl/extractor/common.py#L138-L226) apart from aforementioned mandatory ones should be treated **as optional** and extraction should be **tolerate** to situations when sources for these fields can potentially be unavailable (even if they always available at the moment) and **future-proof** in order not to break the extraction of general purpose mandatory fields. For example, if you have some intermediate dict `meta` that is a source of metadata and it has a key `summary` that you want to extract and put into resulting info dict as `description`, you should be ready that this key may be missing from the `meta` dict, i.e. you should extract it as `meta.get('summary')` and not `meta['summary']`. Similarly, you should pass `fatal=False` when extracting data from a webpage with `_search_regex/_html_search_regex`. | 8. Keep in mind that the only mandatory fields in info dict for successful extraction process are `id`, `title` and either `url` or `formats`, i.e. these are the critical data the extraction does not make any sense without. This means that [any field](https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/common.py#L148-L252) apart from aforementioned mandatory ones should be treated **as optional** and extraction should be **tolerate** to situations when sources for these fields can potentially be unavailable (even if they always available at the moment) and **future-proof** in order not to break the extraction of general purpose mandatory fields. For example, if you have some intermediate dict `meta` that is a source of metadata and it has a key `summary` that you want to extract and put into resulting info dict as `description`, you should be ready that this key may be missing from the `meta` dict, i.e. you should extract it as `meta.get('summary')` and not `meta['summary']`. Similarly, you should pass `fatal=False` when extracting data from a webpage with `_search_regex/_html_search_regex`. | ||||||
| 9. Check the code with [flake8](https://pypi.python.org/pypi/flake8). | 9. Check the code with [flake8](https://pypi.python.org/pypi/flake8). Also make sure your code works under all [Python](http://www.python.org/) versions claimed supported by youtube-dl, namely 2.6, 2.7, and 3.2+. | ||||||
| 10. When the tests pass, [add](http://git-scm.com/docs/git-add) the new files and [commit](http://git-scm.com/docs/git-commit) them and [push](http://git-scm.com/docs/git-push) the result, like this: | 10. When the tests pass, [add](http://git-scm.com/docs/git-add) the new files and [commit](http://git-scm.com/docs/git-commit) them and [push](http://git-scm.com/docs/git-push) the result, like this: | ||||||
|  |  | ||||||
|         $ git add youtube_dl/extractor/extractors.py |         $ git add youtube_dl/extractor/extractors.py | ||||||
|   | |||||||
| @@ -535,6 +535,7 @@ | |||||||
|  - **revision3:embed** |  - **revision3:embed** | ||||||
|  - **RICE** |  - **RICE** | ||||||
|  - **RingTV** |  - **RingTV** | ||||||
|  |  - **RockstarGames** | ||||||
|  - **RottenTomatoes** |  - **RottenTomatoes** | ||||||
|  - **Roxwel** |  - **Roxwel** | ||||||
|  - **RTBF** |  - **RTBF** | ||||||
| @@ -699,6 +700,7 @@ | |||||||
|  - **TVPlay**: TV3Play and related services |  - **TVPlay**: TV3Play and related services | ||||||
|  - **Tweakers** |  - **Tweakers** | ||||||
|  - **twitch:chapter** |  - **twitch:chapter** | ||||||
|  |  - **twitch:clips** | ||||||
|  - **twitch:past_broadcasts** |  - **twitch:past_broadcasts** | ||||||
|  - **twitch:profile** |  - **twitch:profile** | ||||||
|  - **twitch:stream** |  - **twitch:stream** | ||||||
| @@ -793,10 +795,11 @@ | |||||||
|  - **WNL** |  - **WNL** | ||||||
|  - **WorldStarHipHop** |  - **WorldStarHipHop** | ||||||
|  - **wrzuta.pl** |  - **wrzuta.pl** | ||||||
|  |  - **wrzuta.pl:playlist** | ||||||
|  - **WSJ**: Wall Street Journal |  - **WSJ**: Wall Street Journal | ||||||
|  - **XBef** |  - **XBef** | ||||||
|  - **XboxClips** |  - **XboxClips** | ||||||
|  - **XFileShare**: XFileShare based sites: DaClips, FileHoot, GorillaVid, MovPod, PowerWatch, Rapidvideo.ws, TheVideoBee, Vidto, Streamin.To |  - **XFileShare**: XFileShare based sites: DaClips, FileHoot, GorillaVid, MovPod, PowerWatch, Rapidvideo.ws, TheVideoBee, Vidto, Streamin.To, XVIDSTAGE | ||||||
|  - **XHamster** |  - **XHamster** | ||||||
|  - **XHamsterEmbed** |  - **XHamsterEmbed** | ||||||
|  - **xiami:album**: 虾米音乐 - 专辑 |  - **xiami:album**: 虾米音乐 - 专辑 | ||||||
|   | |||||||
| @@ -1,3 +1,3 @@ | |||||||
| from __future__ import unicode_literals | from __future__ import unicode_literals | ||||||
|  |  | ||||||
| __version__ = '2016.06.12' | __version__ = '2016.06.14' | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user