Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

groff 'an.tmac' missing and/or broken in 2015Q4 #323

Open
jblachly opened this issue Feb 19, 2016 · 6 comments
Open

groff 'an.tmac' missing and/or broken in 2015Q4 #323

jblachly opened this issue Feb 19, 2016 · 6 comments
Assignees

Comments

@jblachly
Copy link

Background: Amazon aws cli client uses groff to parse its help text output. It uses the command line groff -man -T ascii < filewithhelptext | less -R (or whatever pager). I have attached a test groff file from the Amazon awscli package that should be parsed and displayed as above. The expect behavior is a typical manpage style document. On smartos, you get a mostly-empty page.

man_contents.txt

groff being an ancient utility uses the old style -man as equivalent of -m man but it accomplishes it using trickery; there is a macro package an.tmac that should be installed in smartos' pkgin installed version, but it is missing in the expected directory, and another directory contains wha tI think is an incorrect version: there is a file elsewhere installed called an.tmac in /opt/local/lib/groff/site-tmac but it is not the right one that should exist in /opt/local/share/groff/1.22.3/tmac.

I tested this on NetBSD-6.1.5 using pkgin with pkgsrc 2015Q4 and the behavior was correct, and an.tmac was correctly installed in /usr/pkg/share/groff/1.22.3/tmac

Comparing the NetBSD version and the smartos version, they are almost identical, both beginning (ignoring comment lines)

.do mso andoc.tmac

whereas the smartos version then enters compatibility mode and invokes another script:

.cp 1
.so /usr/share/lib/tmac/an

and that second script may be what's breaking the display.

@jperkin jperkin self-assigned this Feb 19, 2016
@jperkin
Copy link
Collaborator

jperkin commented Feb 19, 2016

Thanks, will take a look. It's worth noting that if you do use -m man instead of -man then you get the expected output.

@jperkin
Copy link
Collaborator

jperkin commented Feb 19, 2016

So, yes, this appears to be mostly due to the compatibility mode. If you comment out .cp 1 then you get a mostly readable page, just with a few output issues. If you also comment out the loading of the system an macros then you get the same output as on NetBSD, OSX, etc.

Note that this issue isn't specific to pkgsrc. The native groff on OmniOS is also built in exactly the same way and exhibits the same problems. And again, nullifying /usr/lib/groff/site-tmac/an.tmac on OmniOS ensures the AWS page is displayed correctly.

Now, I can easily change the pkgsrc package to not install these system macro wrappers which would solve the immediate problem, but I'd first like confirmation that there isn't an issue that should be fixed in the illumos macro packages, as it'd be nice for this to work with the native groff on OmniOS etc too. I'd also like to know what side-effects there may be by not including the native macros (now that we have mandoc in illumos we no longer use groff for displaying manual pages on SmartOS, but there may be other use-cases I'm not aware of).

My knowledge of this stuff is mostly non-existant, so cc'ing @jclulow @richlowe @rmustacc @danmcd for their input.

Current summary:

  • groff -man -T ascii < man_contents.txt | less -R is broken.
  • groff -m man -T ascii < man_contents.txt | less -R works fine.
  • groff -man ... with .cp 1 removed from groff's an.tmac mostly works.
  • groff -man ... with .so /usr/share/lib/tmac/an also removed from groff's an.tmac works fine.

Thanks.

@danmcd
Copy link

danmcd commented Feb 19, 2016

I'm not very knowledgeable about this either, but I can say the the OmniOS groff has only one tiny patch over stock (argument casting change), and is up to the latest (1.22.3) as is pkgsrc. Whatever folks decide to do, I'll gladly fix the OmniOS groff if needed, however.

@jblachly
Copy link
Author

FWIW, the Amazon people patched aws-cli to work around this issue (by issuing -m man instead of -man), but still the groff from pkgsrc specifically on this platform is broken; on NetBSD groff from pkgsrc works correctly.

jperkin pushed a commit that referenced this issue Apr 11, 2016
Patch #324 - 2016/03/10

    updated configure macro CF_LD_RPATH_OPT from ncurses changes.
    provide alternate fix for Juha Nurmela's report by turning on POSIX signals if _POSIX_C_SOURCE is at least one. This is done to improve the behavior if a direct child process receives a STOP signal.
    revert change to CF_POSIX_C_SOURCE from patch #323 (reports by Ashish Shukla, Christian Weisgerber).

Patch #323 - 2016/03/07

    updated appdata and desktop files to add keywords (report by Richard Hughes).
    modify configure macro CF_POSIX_C_SOURCE to accommodate some systems, e.g., FreeBSD, which have separated their implementation specific preprocessor symbols from the POSIX ones, requiring both to be defined (report by Juha Nurmela).
    change the directory to the current working dir of the child process in exec-formatted and exec-selectable actions (patch by Alexander Pohoyda).
    correct typo in xterm.man (patch by Larry Hynes).
    correct typo in ctlseqs.ms (report by Shriramana Sharma).
    add feature to support XHTML and SVG screen dumps (patch by Jens Schweikhardt).
    correct response to DECRQSS when terminal id is less than 400 (patch by Iwamoto Kouichi).
jperkin pushed a commit that referenced this issue Apr 19, 2016
* Fix MASTER_SITES to github
* Fix dependences

Changelog:
Version 1.8.7
-------------

- Added Copy From Singular operation and Next/Prev Plural Form navigation shortcuts.
- Translation errors are now properly translated.
- Fixed default Turkish plural form.
- Fixed a bug where a perfect match wouldn't be found in the TM in some rare cases.
- Updated bundled gettext to 0.19.7 (added appdata.xml and ITS support).
- Assorted bugfixes.


Version 1.8.6
-------------

- Fix properties window on OS X 10.9 and older.
- Fix visual flicker when quickly scrolling through a file with arrow keys.
- [OS X] Fix rare exception when pasting text.
- Fix file width autodetection when long comments were present.
- Disable Find next/prev menu items properly.


Version 1.8.5
-------------

- Improved setting and handling of source paths.
- Implement gzip support in Crowdin API client.
- Assorted fixes.


Version 1.8.4
-------------

- Fixed bug in handling POTs with plural forms introduced in 1.8.3.


Version 1.8.3
-------------

- Fixed Last-Translator error when creating a new translation from existing POT.
- Fixed bogus "Sources not available" error for single files setups.
- Fixed TM error reporting to prevent rendering the entire UI mostly unusable.


Version 1.8.2
-------------

- text editor now ensures that trailing newlines are present only if they also
  exist in the source text
- fix HTML export error on Windows
- automatically fix some bad paths settings in PO files
- improved source language detection
- fix incorrect timezone of PO-Revision-Date in some cases
- use the user's default browser for Crowdin authentication on all platforms
  (wxWebView no longer required as a dependency when building on Linux)


Version 1.8.1
-------------

- fix TM-related crash under heavy concurrency
- [OS X] fix crash when a concurrent task throws


Version 1.8
-----------

- integration with the Crowdin localization management platform
- search & replace
- support for directly handling POT files
- improved interface for configuring source code paths
- Poedit now automatically fixes certain broken files produced by certain
  broken tools (e.g. WPML)
- modernized HTML export
- [OS X] Quick  Look preview
- support for non-English source languages (auto-detected)
- [Windows] opening multiple Poedit windows now works correctly


Version 1.7.7
-------------

- strip whitespace in extractor definitions resulting from copy & paste


Version 1.7.6
-------------

- fix handling of multiple displays
- [Windows] fix "file couldn't be formatted nicely" problems with files in
  directories with (some) Unicode names


Version 1.7.5
-------------

- fix scrolling to the top when saving a file; focus should be preserved now
- fix disabling of extractors in preferences (oops)
- [Windows, OS X] improve resilience of the TM to power loss


Version 1.7.4
-------------

- size of the bottom editing part is now remembered correctly again
- [GTK+] fix broken Edit->Copy/Cut/Paste
- [OS X] fix stray BOM marks appearing on suggestions in some cases
- [OS X] fix Brazilian Portuguese localization not being used
- [OS X] fix sandbox permission window with unusual source paths setting
- [Windows] HiDPI support


Version 1.7.3
-------------

- it is now possible to disable unwanted extractors in preferences
- source paths in catalog properties can now include individual files
- exclusion paths in catalog properties can now use wildcards
  (e.g. *.js, now default for WordPress)
- "Consult TM when updating from sources" now includes only "good" matches
  (with at least 75% score)
- fix losing of the editing position when saving a file
- fix Preferences layout in Japanese and Chinese translations
- Windows: fix custom font setting after using a suggestion or copying from
  source text

(there was no version 1.7.2)


Version 1.7.1
-------------

- fix menu shortcuts problem in Polish localization


Version 1.7
-----------

- reworked preferences
- support for extraction from JavaScript (and more) sources
- suggestions and other relevant information (comments etc.) are now much
  easier to access in a unified sidebar
- syntax highlighting of special characters in translations
- added Group by Context sorting option
- implemented multiple selection
- formatting of PO files can now be customized
- added support for msgmerge --no-fuzzy-matching


Version 1.6.10
--------------

- multiple fixes to parsing of the Language header
- fix handling of broken POTs with duplicate headers
- improved robustness of the Lucene TM database
- misc small fixes
- translations updates and fixes


Version 1.6.9
-------------

- fixes to handling of RTL translations
- fix editing-related crashes under wxGTK
- translations updates


Version 1.6.8
-------------

- fix parsing of obsolete entries in PO files
- improved spellchecker handling on OS X and Windows
- misc fixes
- translations updates


Version 1.6.7
-------------

- better handle "fatal" (but not really) msgfmt errors
- OS X: fix OS X 10.7 compatibility
- OS X/Win: update bundled Gettext to 0.19.2
- translations updates


Version 1.6.6
-------------

- added exclusion paths support to updating from sources
- spellchecking is now supported on Windows 8+
- STL version of wxWidgets is no longer required to build on Unix
- update Windows and OS X builds to GNU gettext 0.19
- misc fixes
- translations updates


Version 1.6.5
-------------

- assorted small bugfixes


Version 1.6.4
-------------

- translation memory tuning
- Unix: restore compatibility with GTK+ 2
- misc fixes
- minor UI improvements (better wording etc.)
- OS X: misc fixes for Mavericks compatibility
- OS X/Win: update bundled Gettext to 0.18.3.2
- translations updates


Version 1.6.3
-------------

- fix invocation of external parser tools that need PATH
- Unix: use XDG_CONFIG_HOME for dotfile location
- OS X: fix conflict with Smart Quotes on Mavericks
- translations updates


Version 1.6.2
-------------

- fix TM failures with non-ASCII paths on Windows
- add support for Zend Framework's .phtml
- and support for WordPress' translators: comments
- translations updates


Version 1.6.1
-------------

- fixes to TM migration code
- OS X: fixes for Retina displays


Version 1.6
-----------

- improved languages handling (entering, sorting, plural forms expressions)
- completely new translation memory implementation
- assorted UI improvements
- better build systems on OS X and Windows
- OS X: minimum required version is 10.7; PPC builds are no longer supported


Version 1.5.7
-------------

- fix incorrect --add-comments flag introduced in 1.5.6


Version 1.5.6
-------------

- fix several problems with the file viewer: better lookup of files,
  fix display of UTF-8 files, better detection of DOS-style paths
- fix Find window's text field focus on OS X
- add --add-comments=TRANSLATORS to xgettext call in default parsers
- fix parsing of obsolete entries to recognize "#~|"
- fix incorrect update stats when using msg contexts
- translations updates


Version 1.5.5
-------------

- fix crash when auto-updating translations with some TMs
- fix file corruption when the catalog's charset was set to one that
  couldn't represent all of the text
- translations updates


Version 1.5.4
-------------

- fix display of source code (#472)
- fix bug when saving file fails on permissions (#491)
- fix Unix makefiles to install all icons (#493)
- translations updates

Version 1.5.3
-------------


- fixes to parsing of msgfmt errors
- misc UI fixes
- OS X: fixed crash when closing a document and opening another
- fixed compatibility with OS X 10.5 Leopard
- fixed problems with TM migration after upgrade
- reverted removal of line numbers in 1.5.2
- reverted: the default is to compile MO files on save again
- translations updates


Version 1.5.2
-------------

- fixed crash when clearing the translation (#428, #468)
- removed no longer needed line numbers from the UI
- OS X: improved attention bar looks
- translations updates


Version 1.5.1
-------------

- Windows: fix missing libstdc++-6.dll
- updated several translations


Version 1.5
-----------

- show translation errors inline with the entries they relate to, instead of a
  confusing errors log when saving
- implement full support for message contexts
- replaced popups when Poedit is started for the first time with
  unobtrusive Firefox-style notifications
- selecting suggested translation from right-click popup menu now
  correctly removes fuzzy flag from the translation
- warn the user if Plural-Forms header is inconsistent with the number
  of plural translations in the catalog or if has syntax errors
- correctly deduce catalog's language from filenames in the form of
  foo.LANG.po, as used by several large Open Source projects (#267)
- Boost library is now required when compiling from sources
- fixed the Find window so that it can be closed using the Esc key (#187)
- positions of translation fields are now remembered correctly when
  Poedit window is maximized (#194)
- added Edit->Clear translation command (Marcin Floryan)
- removed View->Fullscreen view, it doesn't make sense in this kind of app
- better application and document icons
- removed the "Shaded translations list" option, it's now always enabled
- misc minor UI improvements
- fixed possible transaction memory database corruption (#337, #352)
- added instructions on how to install additional spellchecker dictionaries
- added sorting by different criteria (#256, #239)
- improved source files viewer (#346)
- included outdated documentation was replaced with online wiki docs (#343)
- more keyboard navigation shortcuts
- saving PO files no longer reformats source code references (#323);
  moreover, they are always formatted according to the default style
  used by GNU gettext tools (#348)
- don't restore remembered window positions if they are outside currently
  available screens (#318)
- changed Alt+ shortcuts to non-conflicting Ctrl+ ones: "Copy From Source
  Text" now uses Ctrl+B and "Translation Is Fuzzy" Ctrl+U
- various UI improvements
- added more translations:
     Bosnian translation (Kenan Dervisevic)
     Tajik (Victor Ibragimov)
     Kurdish Sorani (Asos Ap)
jperkin pushed a commit that referenced this issue Oct 22, 2016
version 1.11.1: 2016-06-14

    * new guesser infrastructure, support for emacs and vim modelines (#489)
    * javascript bugfix for nested objects with quoted keys (#496)
    * new theme: Gruvbox (thanks @jamietanna!)
    * praat: lots of improvements (thanks @jjatria)
    * fix for rougify error when highlighting from stdin (#493)
    * new lexer: kotlin (thanks @meleyal!)
    * new lexer: cfscript (thanks @mjclemente!)

version 1.11.0: 2016-06-06

    * groovy:
	o remove pathological regexes and add basic support for
	  triple-quoted strings (#485)
	o add the "trait" keyword and fix project url (thanks @glaforge! #378)
    * new lexer: coq (thanks @gmalecha! #389)
    * gemspec license now more accurate (thanks @connorshea! #484)
    * swift:
	o properly support nested comments (thanks @dblessing! #479)
	o support swift 2.2 features (thanks @radex #376 and @wokalski #442)
	o add indirect declaration (thanks @nRewik! #326)
    * new lexer: verilog (thanks @Razer6! #317)
    * new lexer: typescript (thanks @Seikho! #400)
    * new lexers: jinja and twig (thanks @robin850! #402)
    * new lexer: pascal (thanks @alexcu!)
    * css: support attribute selectors (thanks @skoji! #426)
    * new lexer: shell session (thanks @sio4! #481)
    * ruby: add support for <<~ heredocs (thanks @tinci! #362)
    * recognize comments at EOF in SQL, Apache, and CMake (thanks @julp! #360)
    * new lexer: phtml (thanks @Igloczek #366)
    * recognize comments at EOF in CoffeeScript (thanks @rdavila! #370)
    * c/c++:
	o support c11/c++11 features (thanks @Tosainu! #371)
	o Allow underscores in identifiers (thanks @coverify! #333)
    * rust: add more builtin types (thanks @RalfJung! #372)
    * ini: allow hyphen keys (thanks @KrzysiekJ! #380)
    * r: massively improve lexing quality (thanks @klmr! #383)
    * c#:
	o add missing keywords (thanks @BenVlodgi #384 and @SLaks #447)
    * diff: do not require newlines at the ends (thanks @AaronLasseigne! #387)
    * new lexer: ceylon (thanks @bjansen! #414)
    * new lexer: biml (thanks @japj! #415)
    * new lexer: TAP - the test anything protocol (thanks @mblayman! #409)
    * rougify bugfix: treat input as utf8 (thanks @japj! #417)
    * new lexer: jsonnet (thanks @davidzchen! #420)
    * clojure: associate *.cljc for cross-platform clojure (thanks @alesguzik! #423)
    * new lexer: D (thanks @nikibobi! #435)
    * new lexer: smarty (thanks @tringenbach! #427)
    * apache:
	o add directives for v2.4 (thanks @stanhu!)
	o various improvements (thanks @julp! #301)
	    - faster keyword lookups
	    - fix nil error on unknown directive (cf #246, #300)
	    - properly manage case-insensitive names (cf #246)
	    - properly handle windows CRLF
    * objective-c:
	o support literal dictionaries and block arguments (thanks @BenV!
	  #443 and #444)
	o Fix error tokens when defining interfaces (thanks @meleyal! #477)
    * new lexer: NASM (thanks @sraboy! #457)
    * new lexer: gradle (thanks @nerro! #468)
    * new lexer: API Blueprint (thanks @kylef! #261)
    * new lexer: ActionScript (thanks @honzabrecka! #241)
    * terminal256 formatter: stop confusing token names (thanks @julp! #367)
    * new lexer: julia (thanks @mpeteuil! #331)
    * new lexer: cmake (thanks @julp! #302)
    * new lexer: eiffel (thanks @Conaclos! #323)
    * new lexer: protobuf (thanks @fqqb! #327)
    * new lexer: fortran (thanks @CruzR! #328)
    * php: associate *.phpt files (thanks @Razer6!)
    * python: support raise from and yield from (thanks @mordervomubel! #324)
    * new VimL example (thanks @tpope! #315)
@mamash
Copy link

mamash commented Oct 26, 2016

Github autoclose, re-opening.

@mamash mamash reopened this Oct 26, 2016
jperkin pushed a commit that referenced this issue Jan 16, 2017
Version 0.34
------------

Released on 2016-12-21.

Bug fixes:

* `#398 <https://github.com/Kozea/WeasyPrint/issues/398>`_:
  Honor the presentational_hints option for PDFs.
* `#399 <https://github.com/Kozea/WeasyPrint/pull/399>`_:
  Avoid CairoSVG-2.0.0rc* on Python 2.
* `#396 <https://github.com/Kozea/WeasyPrint/issues/396>`_:
  Correctly close files open by mkstemp.
* `#403 <https://github.com/Kozea/WeasyPrint/issues/403>`_:
  Cast the number of columns into int.
* Fix multi-page multi-columns and add related tests.


Version 0.33
------------

Released on 2016-11-28.

New features:

* `#393 <https://github.com/Kozea/WeasyPrint/issues/393>`_:
  Add tests on MacOS.
* `#370 <https://github.com/Kozea/WeasyPrint/issues/370>`_:
  Enable @font-face on MacOS.

Bug fixes:

* `#389 <https://github.com/Kozea/WeasyPrint/issues/389>`_:
  Always update resume_at when splitting lines.
* `#394 <https://github.com/Kozea/WeasyPrint/issues/394>`_:
  Don't build universal wheels.
* `#388 <https://github.com/Kozea/WeasyPrint/issues/388>`_:
  Fix logic when finishing block formatting context.


Version 0.32
------------

Released on 2016-11-17.

New features:

* `#28 <https://github.com/Kozea/WeasyPrint/issues/28>`_:
  Support @font-face on Linux.
* Support CSS fonts level 3 almost entirely, including OpenType features.
* `#253 <https://github.com/Kozea/WeasyPrint/issues/253>`_:
  Support presentational hints (optional).
* Support break-after, break-before and break-inside for pages and columns.
* `#384 <https://github.com/Kozea/WeasyPrint/issues/384>`_:
  Major performance boost.

Bux fixes:

* `#368 <https://github.com/Kozea/WeasyPrint/issues/368>`_:
  Respect white-space for shrink-to-fit.
* `#382 <https://github.com/Kozea/WeasyPrint/issues/382>`_:
  Fix the preferred width for column groups.
* Handle relative boxes in column-layout boxes.

Documentation:

* Add more and more documentation about Windows installation.
* `#355 <https://github.com/Kozea/WeasyPrint/issues/355>`_:
  Add fonts requirements for tests.


Version 0.31
------------

Released on 2016-08-28.

New features:

* `#124 <https://github.com/Kozea/WeasyPrint/issues/124>`_:
  Add MIME sniffing for images.
* `#60 <https://github.com/Kozea/WeasyPrint/issues/60>`_:
  CSS Multi-column Layout.
* `#197 <https://github.com/Kozea/WeasyPrint/pull/197>`_:
  Add hyphens at line breaks activated by a soft hyphen.

Bux fixes:

* `#132 <https://github.com/Kozea/WeasyPrint/pull/132>`_:
  Fix Python 3 compatibility on Windows.

Documentation:

* `#329 <https://github.com/Kozea/WeasyPrint/issues/329>`_:
  Add documentation about installation on Windows.


Version 0.30
------------

Released on 2016-07-18.

WeasyPrint now depends on html5lib-0.999999999.

Bux fixes:

* Fix Acid2
* `#325 <https://github.com/Kozea/WeasyPrint/issues/325>`_:
  Cutting lines is broken in page margin boxes.
* `#334 <https://github.com/Kozea/WeasyPrint/issues/334>`_:
  Newest html5lib 0.999999999 breaks rendering.


Version 0.29
------------

Released on 2016-06-17.

Bug fixes:

* `#263 <https://github.com/Kozea/WeasyPrint/pull/263>`_:
  Don't crash with floats with percents in positions.
* `#323 <https://github.com/Kozea/WeasyPrint/pull/323>`_:
  Fix CairoSVG 2.0 pre-release dependency in Python 2.x.


Version 0.28
------------

Released on 2016-05-16.

Bug fixes:

* `#189 <https://github.com/Kozea/WeasyPrint/issues/189>`_:
  ``white-space: nowrap`` still wraps on hyphens
* `#305 <https://github.com/Kozea/WeasyPrint/issues/305>`_:
  Fix crashes on some tables
* Don't crash when transform matrix isn't invertible
* Don't crash when rendering ratio-only SVG images
* Fix margins and borders on some tables


Version 0.27
------------

Released on 2016-04-08.

New features:

* `#295 <https://github.com/Kozea/WeasyPrint/pull/295>`_:
  Support the 'rem' unit.
* `#299 <https://github.com/Kozea/WeasyPrint/pull/299>`_:
  Enhance the support of SVG images.

Bug fixes:

* `#307 <https://github.com/Kozea/WeasyPrint/issues/307>`_:
  Fix the layout of cells larger than their tables.

Documentation:

* The website is now on GitHub Pages, the documentation is on Read the Docs.
* `#297 <https://github.com/Kozea/WeasyPrint/issues/297>`_:
  Rewrite the CSS chapter of the documentation.
jperkin pushed a commit that referenced this issue Mar 6, 2017
What's new in psycopg 2.7
-------------------------

New features:

- Added `~psycopg2.sql` module to generate SQL dynamically (:ticket:`#308`).
- Added :ref:`replication-support` (🎫`#322`). Main authors are
  Oleksandr Shulgin and Craig Ringer, who deserve a huge thank you.
- Added `~psycopg2.extensions.parse_dsn()` and
  `~psycopg2.extensions.make_dsn()` functions (:tickets:`#321, #363`).
  `~psycopg2.connect()` now can take both *dsn* and keyword arguments, merging
  them together.
- Added `~psycopg2.__libpq_version__` and
  `~psycopg2.extensions.libpq_version()` to inspect the version of the
  ``libpq`` library the module was compiled/loaded with
  (:tickets:`#35, #323`).
- The attributes `~connection.notices` and `~connection.notifies` can be
  customized replacing them with any object exposing an `!append()` method
  (:ticket:`#326`).
- Adapt network types to `ipaddress` objects when available. When not
  enabled, convert arrays of network types to lists by default. The old `!Inet`
  adapter is deprecated (:tickets:`#317, #343, #387`).
- Added `~psycopg2.extensions.quote_ident()` function (:ticket:`#359`).
- Added `~connection.get_dsn_parameters()` connection method (:ticket:`#364`).
- `~cursor.callproc()` now accepts a dictionary of parameters (:ticket:`#381`).
- Give precedence to `!__conform__()` over superclasses to choose an object
  adapter (:ticket:`#456`).
- Using Python C API decoding functions and codecs caching for faster
  unicode encoding/decoding (:ticket:`#473`).
- `~cursor.executemany()` slowness addressed by
  `~psycopg2.extras.execute_batch()` and `~psycopg2.extras.execute_values()`
  (:ticket:`#491`).
- Added ``async_`` as an alias for ``async`` to support Python 3.7 where
  ``async`` will become a keyword (:ticket:`#495`).
- Unless in autocommit, do not use :sql:`default_transaction_*` settings to
  control the session characteristics as it may create problems with external
  connection pools such as pgbouncer; use :sql:`BEGIN` options instead
  (🎫`#503`).
- `~connection.isolation_level` is now writable and entirely separated from
  `~connection.autocommit`; added `~connection.readonly`,
  `~connection.deferrable` writable attributes.

Bug fixes:

- Fixed error caused by missing decoding `~psycopg2.extras.LoggingConnection`
  (:ticket:`#483`).
- Fixed integer overflow in :sql:`interval` seconds (🎫`#512`).

Other changes:

- Dropped support for Python 2.5 and 3.1.
- Dropped support for client library older than PostgreSQL 9.1 (but older
  server versions are still supported).
- `~connection.isolation_level` doesn't read from the database but will return
  `~psycopg2.extensions.ISOLATION_LEVEL_DEFAULT` if no value was set on the
  connection.
- Empty arrays no more converted into lists if they don't have a type attached
  (:ticket:`#506`)
@jperkin jperkin closed this as completed in 600ce87 May 4, 2017
@rmustacc
Copy link

rmustacc commented May 4, 2017

github autoclose, re-opening

@rmustacc rmustacc reopened this May 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants