Edgewall Software
Modify

Opened 10 months ago

Closed 2 weeks ago

Last modified 9 days ago

#12578 closed task (fixed)

Release Trac 1.0.14

Reported by: Ryan J Ollos Owned by: Ryan J Ollos
Priority: normal Milestone: 1.0.14
Component: general Version:
Severity: normal Keywords: release
Cc:
Release Notes:
API Changes:

Description

This ticket is used to coordinate the finalization and testing of the next stable version of Trac, 1.0.14.

Attachments (0)

Change History (20)

comment:1 Changed 8 months ago by Ryan J Ollos

Owner: set to Ryan J Ollos
Status: newassigned

comment:2 Changed 7 months ago by Ryan J Ollos

I'm considering whether 1.0.14 should be released soon. Should #12363, #12566 and and #12586 be finished for 1.0.14, or moved forward for 1.2.1? I'd like to finish #12566, but don't have an opinion on the other two.

comment:3 Changed 7 months ago by Ryan J Ollos

I'll target 26 Nov for the release date.

comment:4 Changed 7 months ago by Ryan J Ollos

I'm postponing this until early Dec 13th (UTC) since I don't have access to a Windows virtual machine for the next few days.

comment:5 Changed 3 months ago by Ryan J Ollos

I'll plan to do release on 03/25 or 03/26.

comment:6 Changed 5 weeks ago by Ryan J Ollos

I will try to do release today or tomorrow.

comment:7 Changed 3 weeks ago by Ryan J Ollos

To further simplify TracDev/ReleaseChecklist, I propose adding requirements-release.txt in the top-level directory with:

# Packages needed to create a release.
setuptools>=0.8  # Min version to ensure PEP-0440 compliant version numbers
wheel
babel
setuptools_subversion
reindent
twine

We can then simply run:

$ pip install -Ur requirements-release.txt
Last edited 3 weeks ago by Ryan J Ollos (previous) (diff)

comment:8 Changed 3 weeks ago by Ryan J Ollos

It might be useful to add these additional classifiers, for PyPI:

  • setup.py

    commit cb5867a70a3c3cece3b3af02da7e83933d0eca30
    Author: Ryan J Ollos <ryan.j.ollos@gmail.com>
    Date:   Thu Jun 1 10:42:49 2017 -0400
    
        Add the classifiers
    
    diff --git a/setup.py b/setup.py
    index f196f5e1a..4a0c2a768 100755
    a b facilities.  
    7575        'License :: OSI Approved :: BSD License',
    7676        'Operating System :: OS Independent',
    7777        'Programming Language :: Python',
     78        'Programming Language :: Python :: 2',
     79        'Programming Language :: Python :: 2.5',
     80        'Programming Language :: Python :: 2.6',
     81        'Programming Language :: Python :: 2.7',
    7882        'Topic :: Software Development :: Bug Tracking',
    7983        'Topic :: Software Development :: Version Control',
    8084    ],

comment:9 Changed 3 weeks ago by Ryan J Ollos

comment:7 change committed to 1.0-stable in r15974, merged to 1.2-stable in r15975, merged to trunk in r15976. Edited TracDev/ReleaseChecklist@113.

comment:8 change committed to 1.0-stable in r15971, merged to 1.2-stable in r15972, merged to trunk in r15973.

comment:10 Changed 3 weeks ago by Ryan J Ollos

INSTALL.rst doesn't render correctly on GitHub, but will render correctly if we remove the page outline. We could just strip out the page outline:

  • contrib/wiki2rst.py

    diff --git a/contrib/wiki2rst.py b/contrib/wiki2rst.py
    index c475b1e57..f9eae1d9e 100755
    a b class Parser(html2rest.Parser):  
    6262def wiki2rest(env, context, wiki):
    6363    text = re.sub('\r?\n', '\n', wiki.text)
    6464    text = re.sub(r'\[\[TracGuideToc\]\]\r?\n?', '', text)
     65    text = re.sub(r'\[\[PageOutline\([^\)]*\)\]\]\r?\n?', '', text)
    6566    html = format_to_html(env, context, text)
    6667    html = html.replace(u'<span class="icon">\u200b</span>', '')
    6768    html = re.sub(r'<em>\s*([^<]*?)\s*</em>', r'<em>\1</em>', html)

comment:11 Changed 3 weeks ago by Ryan J Ollos

comment:10 change committed to 1.0-stable in r15983, merged in r15984, r15985.

comment:12 Changed 3 weeks ago by Ryan J Ollos

Proposed change so that README.rst is rendered on PyPI, as shown here. Discussed here.

  • setup.py

    diff --git a/setup.py b/setup.py
    index 4a0c2a768..9a7968dd3 100755
    a b except ImportError:  
    5353    # give some context to the warnings we might get when installing Genshi
    5454
    5555
     56def readme():
     57    with open('README.rst') as f:
     58        return f.read()
     59
     60
    5661setup(
    5762    name = 'Trac',
    5863    version = '1.0.14',
    5964    description = 'Integrated SCM, wiki, issue tracker and project environment',
    60     long_description = """
    61 Trac is a minimalistic web-based software project management and bug/issue
    62 tracking system. It provides an interface to the Subversion revision control
    63 systems, an integrated wiki, flexible issue tracking and convenient report
    64 facilities.
    65 """,
     65    long_description = readme(),
    6666    author = 'Edgewall Software',
    6767    author_email = 'trac-dev@googlegroups.com',
    6868    license = 'BSD',

comment:13 in reply to:  12 Changed 3 weeks ago by Jun Omae

Replying to Ryan J Ollos:

Proposed change so that README.rst is rendered on PyPI, as shown here. Discussed here.

Looks good to me except that from __future__ import with_statement is needed for 1.0-stable.

comment:14 Changed 3 weeks ago by Ryan J Ollos

Thanks, I added the compatibility statement and committed to 1.0-stable in [15986,15989], merged in r15987, r15988.

Last edited 3 weeks ago by Ryan J Ollos (previous) (diff)

comment:15 Changed 2 weeks ago by Ryan J Ollos

I've been manually removing uses of #!box processor: TracProject/DefaultWikiPages#sync.

  • contrib/checkwiki.py

    Proposed change:
     
    1414
    1515from __future__ import with_statement
    1616
     17import re
    1718import os
    1819import sys
    1920from pkg_resources import resource_listdir, resource_string
     
    128129    return parser.parse_args()
    129130
    130131
     132re_box_processor = re.compile(r'{{{#!box[^\}]+}}}\s*\r?\n?')
     133
     134
    131135def download_default_pages(names, prefix):
    132136    from httplib import HTTPSConnection
    133137    host = 'trac.edgewall.org'
     
    148152            content = response.read()
    149153        if response.status == 200 and content:
    150154            with open('trac/wiki/default-pages/' + name, 'w') as f:
     155                content = re_box_processor.sub('', content)
    151156                lines = content.replace('\r\n', '\n').splitlines(True)
    152157                f.write(''.join(line for line in lines
    153158                                     if line.strip() != '[[TranslatedPages]]'))
Last edited 2 weeks ago by Ryan J Ollos (previous) (diff)

comment:16 Changed 2 weeks ago by Ryan J Ollos

comment:15 change committed to 1.0-stable in r15992, merged to 1.2-stable in r15993, merged to trunk in r15994.

Edited TracProject/DefaultWikiPages@53.

comment:17 Changed 2 weeks ago by Ryan J Ollos

Resolution: fixed
Status: assignedclosed

comment:18 Changed 9 days ago by Jun Omae

Copyright year has been changed in [15999] but copyright text in about.html would be extracted in message catalog and translated.

$ curl -s 'https://trac.edgewall.org/browser/branches/1.0-stable/trac/locale/messages.pot?format=raw' | grep -3 '2003-201[67]'

#: trac/templates/about.html:58
msgid ""
"Copyright © 2003-2016\n"
"        [1:Edgewall Software]"
msgstr ""

xml:lang="en" and i18n:msg attributes are conflicted in message extraction. That changes are introduced in [9603#file5].

  • trac/templates/about.html

     
    5555      </a>
    5656      <p i18n:msg="">Please visit the Trac open source project:
    5757        <a href="http://trac.edgewall.org/">http://trac.edgewall.org/</a></p>
    58       <p class="copyright" xml:lang="en" i18n:msg="">Copyright &copy; 2003-2017
     58      <p class="copyright" xml:lang="en">Copyright &copy; 2003-2017
    5959        <a href="http://www.edgewall.org/">Edgewall Software</a>
    6060      </p>
    6161

Ideally, it might be good to make those years parameters of message.

  • trac/admin/console.py

     
    133133        self.interactive = True
    134134        printout(_("""Welcome to trac-admin %(version)s
    135135Interactive Trac administration console.
    136 Copyright (C) 2003-2013 Edgewall Software
     136Copyright (C) %(start)d-%(end)d Edgewall Software
    137137
    138138Type:  '?' or 'help' for help on commands.
    139         """, version=TRAC_VERSION))
     139        """, version=TRAC_VERSION, start=2003, end=2017))
    140140        self.cmdloop()
    141141
    142142    ##

comment:19 Changed 9 days ago by Ryan J Ollos

Adding parameters sounds good. Do you want to push the change?

comment:20 Changed 9 days ago by Jun Omae

Yeah. Proposed changes in [fa89e948a/jomae.git] (jomae.git@t12578-copyright-year).

Verified years of copyright in localized messages.

$ python setup.py compile_catalog -f
$ for i in trac/locale/{??,??_??}; do echo -n "$i: "; LANGUAGE=${i##*/} make start-admin env=$HOME/var/trac/1.0-sqlite </dev/null | grep 2003-2017 || break; done
trac/locale/ca: Copyright © 2003-2017 Edgewall Software
trac/locale/cs: Autorská práva (C) 2003-2017 Edgewall Software
trac/locale/da: Copyright (C) 2003-2017 Edgewall Software
trac/locale/de: Copyright (c) 2003-2017 Edgewall Software
trac/locale/el: Copyright (C) 2003-2017 Edgewall Software
trac/locale/eo: Kopirajto (c) 2003-2017 Edgewall Software
trac/locale/es: Copyright (C) 2003-2017 Edgewall Software
trac/locale/et: Copyright (C) 2003-2017 Edgewall Software
trac/locale/fa: Copyright (C) 2003-2017 Edgewall Software
trac/locale/fi: Copyright (c) 2003-2017 Edgewall Software
trac/locale/fr: Copyright (c) 2003-2017 Edgewall Software
trac/locale/gl: Copyright (c) 2003-2017 Edgewall Software
trac/locale/he: כל הזכויות שמורות (c) 2003-2017 Edgewall Software
trac/locale/hu: Copyright (C) 2003-2017 Edgewall Software
trac/locale/hy: Copyright (c) 2003-2017 Edgewall Software
trac/locale/it: Copyright (c) 2003-2017 Edgewall Software
trac/locale/ja: Copyright (C) 2003-2017 Edgewall Software
trac/locale/ko: Copyright (c) 2003-2017 Edgewall Software
trac/locale/nb: Copyright (c) 2003-2017 Edgewall Software
trac/locale/nl: Copyright (c) 2003-2017 Edgewall Software
trac/locale/pl: Copyright (c) 2003-2017 Edgewall Software
trac/locale/pt: Copyright (C) 2003-2017 Edgewall Software
trac/locale/ro: Drepturi de autor pe 2003-2017 Edgewall Software
trac/locale/ru: Авторские права (c) 2003-2017 Edgewall Software
trac/locale/sl: Pravice pridržane (c) 2003-2017 Edgewall Software
trac/locale/sv: Copyright (c) 2003-2017 Edgewall Software
trac/locale/tr: Copyright (C) 2003-2017 Edgewall Software
trac/locale/uk: Copyright (C) 2003-2017 Edgewall Software
trac/locale/vi: Copyright (C) 2003-2017 Edgewall Software
trac/locale/en_GB: Copyright (C) 2003-2017 Edgewall Software
trac/locale/en_US: Copyright (C) 2003-2017 Edgewall Software
trac/locale/es_AR: Copyright (c) 2003-2017 Edgewall Software
trac/locale/es_MX: Copyright (C) 2003-2017 Edgewall Software
trac/locale/pt_BR: Copyright (C) 2003-2017 Edgewall Software
trac/locale/zh_CN: Copyright (C) 2003-2017 Edgewall Software
trac/locale/zh_TW: 版權所有 (C) 2003-2017 Edgewall Software
$ for i in trac/locale/{??,??_??}; do echo -n "$i: "; curl -s -H "Accept-Language: ${i##*/}" 'http://127.0.0.1:3000/1.0-sqlite/about' | grep 2003-2017 || break; done
trac/locale/ca:       <p class="copyright">Copyright © 2003-2017
trac/locale/cs:       <p class="copyright">Autorská práva © 2003-2017
trac/locale/da:       <p class="copyright">Copyright © 2003-2017
trac/locale/de:       <p class="copyright">Copyright © 2003-2017
trac/locale/el:       <p class="copyright">Copyright © 2003-2017
trac/locale/eo:       <p class="copyright">Kopirajto © 2003-2017
trac/locale/es:       <p class="copyright">Copyright © 2003-2017
trac/locale/et:       <p class="copyright">Copyright © 2003-2017
trac/locale/fa:       <p class="copyright">Copyright © 2003-2017
trac/locale/fi:       <p class="copyright">Copyright © 2003-2017
trac/locale/fr:       <p class="copyright">Copyright © 2003-2017
trac/locale/gl:       <p class="copyright">Copyright © 2003-2017
trac/locale/he:       <p class="copyright">כל הזכויות שמורות © 2003-2017
trac/locale/hu:       <p class="copyright">Copyright © 2003-2017
trac/locale/hy:       <p class="copyright">Copyright © 2003-2017
trac/locale/it:       <p class="copyright">Copyright © 2003-2017
trac/locale/ja:       <p class="copyright">Copyright © 2003-2017 <a href="http://www.edgewall.org/">Edgewall Software</a></p>
trac/locale/ko:       <p class="copyright">저작권 © 2003-2017 <a href="http://www.edgewall.org/">Edgewall Software</a></p>
trac/locale/nb:       <p class="copyright">Copyright © 2003-2017
trac/locale/nl:       <p class="copyright">Copyright © 2003-2017
trac/locale/pl:       <p class="copyright">Copyright © 2003-2017
trac/locale/pt:       <p class="copyright">Copyright © 2003-2017
trac/locale/ro:       <p class="copyright">Copyright © 2003-2017
trac/locale/ru:       <p class="copyright">Авторские права © 2003-2017
trac/locale/sl:       <p class="copyright">Pravice pridržane © 2003-2017
trac/locale/sv:       <p class="copyright">Copyright © 2003-2017 <a href="http://www.edgewall.org/">Edgewall Software</a></p>
trac/locale/tr:       <p class="copyright">Copyright © 2003-2017
trac/locale/uk:       <p class="copyright">Copyright © 2003-2017
trac/locale/vi:       <p class="copyright">Copyright © 2003-2017
trac/locale/en_GB:       <p class="copyright">Copyright © 2003-2017
trac/locale/en_US:       <p class="copyright">Copyright © 2003-2017
trac/locale/es_AR:       <p class="copyright">Copyright © 2003-2017
trac/locale/es_MX:       <p class="copyright">Copyright © 2003-2017
trac/locale/pt_BR:       <p class="copyright">Copyright © 2003-2017
trac/locale/zh_CN:       <p class="copyright">Copyright © 2003-2017
trac/locale/zh_TW:       <p class="copyright">版權所有 © 2003-2017

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Ryan J Ollos.
The resolution will be deleted.
to The owner will be changed from Ryan J Ollos to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .

 
Note: See TracTickets for help on using tickets.