mirror of
				https://github.com/psycopg/psycopg2.git
				synced 2025-10-31 07:47:30 +03:00 
			
		
		
		
	Merge branch 'drop-lighthouse' into maint_2_5
This commit is contained in:
		
						commit
						11c9fcb9d4
					
				
							
								
								
									
										4
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								NEWS
									
									
									
									
									
								
							|  | @ -123,7 +123,7 @@ What's new in psycopg 2.4.6 | ||||||
| - 'register_hstore()', 'register_composite()', 'tpc_recover()' work with | - 'register_hstore()', 'register_composite()', 'tpc_recover()' work with | ||||||
|   RealDictConnection and Cursor (:ticket:`#114`). |   RealDictConnection and Cursor (:ticket:`#114`). | ||||||
| - Fixed broken pool for Zope and connections re-init across ZSQL methods | - Fixed broken pool for Zope and connections re-init across ZSQL methods | ||||||
|   in the same request (tickets #123, #125, #142). |   in the same request (:tickets:`#123, #125, #142`). | ||||||
| - connect() raises an exception instead of swallowing keyword arguments | - connect() raises an exception instead of swallowing keyword arguments | ||||||
|   when a connection string is specified as well (:ticket:`#131`). |   when a connection string is specified as well (:ticket:`#131`). | ||||||
| - Discard any result produced by 'executemany()' (:ticket:`#133`). | - Discard any result produced by 'executemany()' (:ticket:`#133`). | ||||||
|  | @ -145,7 +145,7 @@ What's new in psycopg 2.4.5 | ||||||
| - Error and its subclasses are picklable, useful for multiprocessing | - Error and its subclasses are picklable, useful for multiprocessing | ||||||
|   interaction (:ticket:`#90`). |   interaction (:ticket:`#90`). | ||||||
| - Better efficiency and formatting of timezone offset objects thanks | - Better efficiency and formatting of timezone offset objects thanks | ||||||
|   to Menno Smits (tickets #94, #95). |   to Menno Smits (:tickets:`#94, #95`). | ||||||
| - Fixed 'rownumber' during iteration on cursor subclasses. | - Fixed 'rownumber' during iteration on cursor subclasses. | ||||||
|   Regression introduced in 2.4.4 (:ticket:`#100`). |   Regression introduced in 2.4.4 (:ticket:`#100`). | ||||||
| - Added support for 'inet' arrays. | - Added support for 'inet' arrays. | ||||||
|  |  | ||||||
|  | @ -68,7 +68,9 @@ intersphinx_mapping = { | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| # Pattern to generate links to the bug tracker | # Pattern to generate links to the bug tracker | ||||||
| ticket_url = 'http://psycopg.lighthouseapp.com/projects/62710/tickets/%s' | ticket_url = 'https://github.com/psycopg/psycopg2/issues/%s' | ||||||
|  | ticket_remap_until = 25 | ||||||
|  | ticket_remap_offset = 235 | ||||||
| 
 | 
 | ||||||
| # The language for content autogenerated by Sphinx. Refer to documentation | # The language for content autogenerated by Sphinx. Refer to documentation | ||||||
| # for a list of supported languages. | # for a list of supported languages. | ||||||
|  |  | ||||||
|  | @ -3,37 +3,57 @@ | ||||||
|     ticket role |     ticket role | ||||||
|     ~~~~~~~~~~~ |     ~~~~~~~~~~~ | ||||||
| 
 | 
 | ||||||
|     An interpreted text role to link docs to lighthouse issues. |     An interpreted text role to link docs to tickets issues. | ||||||
| 
 | 
 | ||||||
|     :copyright: Copyright 2013 by Daniele Varrazzo. |     :copyright: Copyright 2013 by Daniele Varrazzo. | ||||||
| """ | """ | ||||||
| 
 | 
 | ||||||
|  | import re | ||||||
| from docutils import nodes, utils | from docutils import nodes, utils | ||||||
| from docutils.parsers.rst import roles | from docutils.parsers.rst import roles | ||||||
| 
 | 
 | ||||||
| def ticket_role(name, rawtext, text, lineno, inliner, options={}, content=[]): | def ticket_role(name, rawtext, text, lineno, inliner, options={}, content=[]): | ||||||
|     try: |     cfg = inliner.document.settings.env.app.config | ||||||
|         num = int(text.replace('#', '')) |     if cfg.ticket_url is None: | ||||||
|     except ValueError: |  | ||||||
|         msg = inliner.reporter.error( |  | ||||||
|             "ticket number must be... a number, got '%s'" % text) |  | ||||||
|         prb = inliner.problematic(rawtext, rawtext, msg) |  | ||||||
|         return [prb], [msg] |  | ||||||
| 
 |  | ||||||
|     url_pattern = inliner.document.settings.env.app.config.ticket_url |  | ||||||
|     if url_pattern is None: |  | ||||||
|         msg = inliner.reporter.warning( |         msg = inliner.reporter.warning( | ||||||
|             "ticket not configured: please configure ticket_url in conf.py") |             "ticket not configured: please configure ticket_url in conf.py") | ||||||
|         prb = inliner.problematic(rawtext, rawtext, msg) |         prb = inliner.problematic(rawtext, rawtext, msg) | ||||||
|         return [prb], [msg] |         return [prb], [msg] | ||||||
| 
 | 
 | ||||||
|     url = url_pattern % num |     rv = [nodes.Text(name + ' ')] | ||||||
|  |     tokens = re.findall(r'(#?\d+)|([^\d#]+)', text) | ||||||
|  |     for ticket, noise in tokens: | ||||||
|  |         if ticket: | ||||||
|  |             num = int(ticket.replace('#', '')) | ||||||
|  | 
 | ||||||
|  |             # Push numbers of the oldel tickets ahead. | ||||||
|  |             # We moved the tickets from a different tracker to GitHub and the | ||||||
|  |             # latter already had a few ticket numbers taken (as merge | ||||||
|  |             # requests). | ||||||
|  |             remap_until = cfg.ticket_remap_until | ||||||
|  |             remap_offset = cfg.ticket_remap_offset | ||||||
|  |             if remap_until and remap_offset: | ||||||
|  |                 if num <= remap_until: | ||||||
|  |                     num += remap_offset | ||||||
|  | 
 | ||||||
|  |             url = cfg.ticket_url % num | ||||||
|             roles.set_classes(options) |             roles.set_classes(options) | ||||||
|     node = nodes.reference(rawtext, 'ticket ' + utils.unescape(text), |             node = nodes.reference(ticket, utils.unescape(ticket), | ||||||
|                 refuri=url, **options) |                 refuri=url, **options) | ||||||
|     return [node], [] | 
 | ||||||
|  |             rv.append(node) | ||||||
|  | 
 | ||||||
|  |         else: | ||||||
|  |             assert noise | ||||||
|  |             rv.append(nodes.Text(noise)) | ||||||
|  | 
 | ||||||
|  |     return rv, [] | ||||||
|  | 
 | ||||||
| 
 | 
 | ||||||
| def setup(app): | def setup(app): | ||||||
|     app.add_config_value('ticket_url', None, 'env') |     app.add_config_value('ticket_url', None, 'env') | ||||||
|  |     app.add_config_value('ticket_remap_until', None, 'env') | ||||||
|  |     app.add_config_value('ticket_remap_offset', None, 'env') | ||||||
|     app.add_role('ticket', ticket_role) |     app.add_role('ticket', ticket_role) | ||||||
|  |     app.add_role('tickets', ticket_role) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user