Bump copyright year everywhere.
1 parent 1f0ee56 commit 3be66ee1bdf21af6159adca723a6c78b0f6e389e
@Abhilash Raj Abhilash Raj authored on 25 May 2017
Showing 45 changed files
View
2
■■■
README.rst
 
.. image:: http://img.shields.io/pypi/dm/postorius.svg
:target: https://pypi.python.org/pypi/postorius
 
Copyright (C) 1998-2016 by the Free Software Foundation, Inc.
Copyright (C) 1998-2017 by the Free Software Foundation, Inc.
 
The Postorius Django app provides a web user interface to
access GNU Mailman.
 
View
97
copybump.py 0 → 100755
#! /usr/bin/env python3
 
import os
import re
import sys
import stat
import datetime
 
 
FSF = 'by the Free Software Foundation, Inc.'
this_year = datetime.date.today().year
pyre_c = re.compile(r'# Copyright \(C\) ((?P<start>\d{4})-)?(?P<end>\d{4})')
pyre_n = re.compile(r'# Copyright ((?P<start>\d{4})-)?(?P<end>\d{4})')
new_c = '# Copyright (C) {}-{} {}'
new_n = '# Copyright {}-{} {}'
 
MODE = (stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO)
 
 
if '--noc' in sys.argv:
pyre = pyre_n
new = new_n
sys.argv.remove('--noc')
else:
pyre = pyre_c
new = new_c
 
 
def do_file(path, owner):
permissions = os.stat(path).st_mode & MODE
with open(path) as in_file, open(path + '.out', 'w') as out_file:
try:
for line in in_file:
mo_c = pyre_c.match(line)
mo_n = pyre_n.match(line)
if mo_c is None and mo_n is None:
out_file.write(line)
continue
mo = (mo_n if mo_c is None else mo_c)
start = (mo.group('end')
if mo.group('start') is None
else mo.group('start'))
if int(start) == this_year:
out_file.write(line)
continue
print(new.format(start, this_year, owner), file=out_file) # noqa
print('=>', path)
for line in in_file:
out_file.write(line)
except UnicodeDecodeError:
print('Cannot convert path:', path)
os.remove(path + '.out')
return
os.rename(path + '.out', path)
os.chmod(path, permissions)
 
 
def remove(dirs, path):
try:
dirs.remove(path)
except ValueError:
pass
 
 
def do_walk():
try:
owner = sys.argv[1]
except IndexError:
owner = FSF
for root, dirs, files in os.walk('.'):
if root == '.':
remove(dirs, '.git')
remove(dirs, '.tox')
remove(dirs, 'bin')
remove(dirs, 'contrib')
remove(dirs, 'develop-eggs')
remove(dirs, 'eggs')
remove(dirs, 'parts')
remove(dirs, 'gnu-COPYING-GPL')
remove(dirs, '.installed.cfg')
remove(dirs, '.bzrignore')
remove(dirs, 'distribute_setup.py')
if root == './src':
remove(dirs, 'postorius.egg-info')
if root == './src/postorius':
remove(dirs, 'messages')
for file_name in files:
if os.path.splitext(file_name)[1] in ('.pyc', '.gz', '.egg'):
continue
path = os.path.join(root, file_name)
if os.path.isfile(path):
do_file(path, owner)
 
 
if __name__ == '__main__':
do_walk()
View
example_project/manage.py
View
example_project/settings.py
View
example_project/test_settings.py
View
example_project/urls.py
View
setup.py
View
src/postorius/__init__.py
View
src/postorius/apps.py
View
src/postorius/auth/decorators.py
View
src/postorius/auth/utils.py
View
src/postorius/context_processors.py
View
src/postorius/doc/settings.py
View
src/postorius/forms.py
View
src/postorius/management/commands/mmclient.py
View
src/postorius/middleware.py
View
src/postorius/models.py
View
src/postorius/templatetags/membership_helpers.py
View
src/postorius/templatetags/nav_helpers.py
View
src/postorius/tests/mailman_api_tests/test_domain_delete.py
View
src/postorius/tests/mailman_api_tests/test_domain_index.py
View
src/postorius/tests/mailman_api_tests/test_domain_new.py
View
src/postorius/tests/mailman_api_tests/test_list_bans.py
View
src/postorius/tests/mailman_api_tests/test_list_header_matches.py
View
src/postorius/tests/mailman_api_tests/test_list_index.py
View
src/postorius/tests/mailman_api_tests/test_list_member_options.py
View
src/postorius/tests/mailman_api_tests/test_list_members.py
View
src/postorius/tests/mailman_api_tests/test_list_new.py
View
src/postorius/tests/mailman_api_tests/test_list_settings.py
View
src/postorius/tests/mailman_api_tests/test_list_summary.py
View
src/postorius/tests/mailman_api_tests/test_models.py
View
src/postorius/tests/mailman_api_tests/test_subscriptions.py
View
src/postorius/tests/mailman_api_tests/test_user.py
View
src/postorius/tests/test_auth_decorators.py
View
src/postorius/tests/test_domain_view.py
View
src/postorius/tests/test_forms.py
View
src/postorius/tests/test_urls.py
View
src/postorius/tests/utils.py
View
src/postorius/urls.py
View
src/postorius/utils.py
View
src/postorius/views/domain.py
View
src/postorius/views/generic.py
View
src/postorius/views/list.py
View
src/postorius/views/rest.py
View
src/postorius/views/user.py