More Atom feed improvements (#2081)
This commit is contained in:
		
							parent
							
								
									317d4edfa8
								
							
						
					
					
						commit
						3e34db3170
					
				
					 1 changed files with 22 additions and 1 deletions
				
			
		| 
						 | 
					@ -9,6 +9,7 @@ import textwrap
 | 
				
			||||||
atom_template = textwrap.dedent("""\
 | 
					atom_template = textwrap.dedent("""\
 | 
				
			||||||
    <?xml version="1.0" encoding="utf-8"?>
 | 
					    <?xml version="1.0" encoding="utf-8"?>
 | 
				
			||||||
    <feed xmlns="http://www.w3.org/2005/Atom">
 | 
					    <feed xmlns="http://www.w3.org/2005/Atom">
 | 
				
			||||||
 | 
					        <link rel="self" href="http://rg3.github.io/youtube-dl/update/releases.atom" />
 | 
				
			||||||
        <title>youtube-dl releases</title>
 | 
					        <title>youtube-dl releases</title>
 | 
				
			||||||
        <id>https://yt-dl.org/feed/youtube-dl-updates-feed</id>
 | 
					        <id>https://yt-dl.org/feed/youtube-dl-updates-feed</id>
 | 
				
			||||||
        <updated>@TIMESTAMP@</updated>
 | 
					        <updated>@TIMESTAMP@</updated>
 | 
				
			||||||
| 
						 | 
					@ -43,7 +44,27 @@ versions.sort()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
entries = []
 | 
					entries = []
 | 
				
			||||||
for v in versions:
 | 
					for v in versions:
 | 
				
			||||||
    entry = entry_template.replace('@TIMESTAMP@', v.replace('.', '-') + 'T00:00:00Z')
 | 
					    fields = v.split('.')
 | 
				
			||||||
 | 
					    year, month, day = map(int, fields[:3])
 | 
				
			||||||
 | 
					    faked = 0
 | 
				
			||||||
 | 
					    patchlevel = 0
 | 
				
			||||||
 | 
					    while True:
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
 | 
					            datetime.date(year, month, day)
 | 
				
			||||||
 | 
					        except ValueError:
 | 
				
			||||||
 | 
					            day -= 1
 | 
				
			||||||
 | 
					            faked += 1
 | 
				
			||||||
 | 
					            assert day > 0
 | 
				
			||||||
 | 
					            continue
 | 
				
			||||||
 | 
					        break
 | 
				
			||||||
 | 
					    if len(fields) >= 4:
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
 | 
					            patchlevel = int(fields[3])
 | 
				
			||||||
 | 
					        except ValueError:
 | 
				
			||||||
 | 
					            patchlevel = 1
 | 
				
			||||||
 | 
					    timestamp = '%04d-%02d-%02dT00:%02d:%02dZ' % (year, month, day, faked, patchlevel)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    entry = entry_template.replace('@TIMESTAMP@', timestamp)
 | 
				
			||||||
    entry = entry.replace('@VERSION@', v)
 | 
					    entry = entry.replace('@VERSION@', v)
 | 
				
			||||||
    entries.append(entry)
 | 
					    entries.append(entry)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue