SCM

File Release Notes and Changelog

Release Name: Npgsql 2.1.0-beta1

Release Notes

Npgsql 2.1.0 (beta1)

Major highlights

Version numbers

Starting with this release, we are going to number our versions based on the semver schema. (http://semver.org). We may not follow
strictly everything though. This is a work in progress.

This version was supposed to be a continuation of the 2.0.13 series as we already have a 2.0.13 beta1 released. But we made so many
changes since the 2.0.13 that we decided to jump the version number to 2.1.

Entity Framework

We added initial support for Entity Framework 6.0. We isolated the entity framework code in two other assemblies: 
Npgsql.LegacyEntityFramework.dll and Npgsql.EntityFramework.dll. The first one is for entity framework pre-6 version and the other
one is for entity framework 6.0 and above. This was needed in order to facilitate the deployment and the code organization as the 
apis and namespaces change a lot depending on the entity framework version.

Support for 6.0 isn't yet complete and is to be considered optional at the moment. We will add better support in upcoming versions.

Fixed bugs:

[#28] [#1011338] Error in insert statement with new E6 version. Thanks cody82.
[#27] Fixed connecting to Postgresql using client certificates. 
Check http://fxjr.blogspot.com.br/2013/07/sslstream-support-added-to-npgsql.html for more information. Thanks dreamlax
Added VS2012 project file. Thanks Glen Parker
[#35] Fixed array handling with prepared statements. Thanks Chen Huajun.
[#33] [#1011346] BUGFIX: Thread synchronization inside GetPooledConnector
[#57] Bytea handling optimizations. Thanks Rungee
[#59] Bytea decoder optimizations. Thanks Glen Parker
[#1000515] Prepare() makes command very slow. Thanks Glen Parker for optimizations.
[#61] Async notification optimizations and fixes. Glen Parker
[#63] [#1011334] NpgsqlConnection.GetSchema doesn't dispose connections
[#69] Fix extra-float-digits setup for postgresql below 9.0
[#92] Added InvariantCulture to NpgsqlCopySerializer. Thanks djsubzero
[#86] Rewrite query parameter substitution. Thanks Glen Parker
[#118] Detection of Parameter Direction in DeriveParameters method. Thanks Noé Garcia and Shay Rojansky
[#1011271] NpgsqlSchema: Use InvariantCulture on all return DataTables with schema data. Thanks Oskar Berggren for patch.
[#1011305] Scope without prepared transactions. Thanks Shay Rojansky for the patch.
[#1011310] Command timeouts after the first are not handled. Thanks Evan Martin for the patch.
[#1011316] ConnectionTimeout fix, bypass the 2147 seconds limit of Socket.Poll method. Thanks Tasos Mamaloukos for patch.
[#1011325] Escaped strings don't work with EF. Thanks Andrey Polyakov for patch and tests.
Implements DateTime canonical functions for EntityFramework. Thanks Andrey Polyakov for patch.
[#1011325] Escaped strings don't work with EF. Thanks Andrey Polyakov for patch and tests.
[#1011321] Wrong BitString value. Thanks Jon Hanna for patch and support.
[#1011326] Connection pooling timer (thus thread) is active even if connection pooling is disabled. Thanks Shay Rojansky for the patch.
[#1011001] Bug in NpgsqlConnectionStringBuilder affects on cache and connection pool. Thanks Shay Rojansky for the patch.
[#1011267] Monetary localization bug
[#1011085] Money format is not set in accordance with the system locale format

New features:

Add support for new error fields added in PostgreSQL 9.3. See here for more information about those fields: 
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=991f3e5ab3f8196d18d5b313c81a5f744f3baaea Thanks David Rowley for patch.

Initial support for Entity Framework 6. See http://fxjr.blogspot.com/2013/06/initial-ef-6-support-added-to-npgsql.html for more
information about it.

[#30] Improved connection timeout handling. Thanks Glen Parker.

[#41], [#52], [#77], [#72], [#80] Huge internal query handling which added a big performance boost for prepared statements and 
unprepared statements as well. Binary parameter codec infrastructure has been added, and several data types (currently bytea, text, 
boolean, integers, and gloats) can now use PG's binary coded support, including arrays of those types, which offers a dramatic 
performance boost for parameter and result values in prepared statements. Previously we didn't recommend using prepared statements 
with Npgsql, only for bytea data types. Thanks to Glen Parker, this is now a thing of the past.

Huge directory and project structure. Npgsql had its project layout restructured to easy management of different platforms Npgsql 
targets: .net 2.0, 3.5, 4.0, 4.5, entity framework prior 6.0, entity framework after 6.0. Huge structure changes to our testsuite. 
Before, our tests depended on an external script to setup database tables, now everything is done inside the tests setup. Thanks 
Shay Rojansky.

[#74] Use new "Discard all" syntax when releasing connection from pool. Thanks Chen Huajun.

New connection string parameter "AlwaysPrepare" to indicate to Npgsql to always prepare statements before executing.

[#110] Added support for Entity Framework before version 6.0 and after 6.0. They are totally different things regarding APIs and 
namespaces. Thanks Shay Rojansky and Kenji Uno.

Added nuget EFProvider installation. Thanks Shay Rojansky.

Added EF6 ConnectionFactory class. Thanks Shay Rojansky.

[#135] Fix for operators @@, @> and <@. Thanks Glen Parker and jjchiw.

[#117] Command timeout improvements. Thanks Glen Parker.

Final considerations:

This release wouldn't be possible without the help of two members: Glen Parker and Shay Rojansky.

Glen Parker has been working in the optimizations tasks since his first git commit. He is an optimization machine! From the 
changelog you can see his tireless work regarding each part of Npgsql which could be optimized. Thank you very much for your 
contributions, Glen!

Shay Rojansky has been helping as the mastermind of the project restructuring support. He contributed a lot of changes which made 
our lives working with Npgsql much better. Thanks to him we can compile Npgsql for different .net platform versions easily. He also 
got TeamCity build server working as well as github integration. He helped us to get EntityFramework pre-6 and pos-6 verions easily 
integrated. Thank you, Shay!

I also would like to thank Dave Page who helped us with the server where the TeamCity is installed. Without his help, I'm sure our 
TeamCity installation would be much more difficult. Thank you, Dave!

Change Log

commit 32530756b42e4e5d7696a36d0c3e4b3a9703fad4
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Wed Dec 25 18:33:33 2013 -0200

    Fix entity framework xml ids after change of RootNamespace
    (https://github.com/npgsql/Npgsql/commit/6e32569)
    
    After adding the root namespace, Npgsql Entity Framework xml files
    weren't being found anymore. This patch fixes the name of those ids used
    to find the files inside Npgsql assembly.
    
    Thanks jjchiw for the patch:
    https://github.com/jjchiw/Npgsql/commit/409a820e9f3265f9002de5bb37314e37a416a59c
    
    Only applied the part about NpgsqlProviderManifest.cs file.

commit d13d57d1e31cc4204eebb2ace9200d206f1ed0d1
Merge: c516abe 22d840c
Author: Shay Rojansky <roji@roji.org>
Date:   Wed Dec 25 19:53:59 2013 +0200

    Merge branch 'master' into release-2.1.0

commit c516abe4db5e93eb7d2708b25d38a1184802fc11
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Dec 6 11:38:35 2013 -0800

    Command timeout (merge PR #117)
    
    Send SET command_timeout = <timeout> to backend when needed.
    Extend the Socket.Poll() timeout by 5 seconds to try and guarantee that the backend's timeout error will occur before the frontend's timeout does.

commit cd459033b66ca5fefdaf6f514eff947f4ab20641
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Dec 22 14:48:54 2013 -0800

    NpgsqlParameter[Collection]
    
    Make parameters aware of their owning collection.
    Enforce a parameter can belong to any collection only once.
    On paremeter name change, invalidate owning collections's hash lookups.
    When a parameter's collection changes, also make sure it is marked as unbound.
    Add function to remove a parameter by name.

commit 7f2cd0f923cf65f70e201338dea64357a50fd459
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Dec 22 13:57:33 2013 -0800

    ParameterCollectionHashLookupParameterRenameBug()
    
    Add test to demonstrate the parameter rename bug that exists with the new hash-based parameter lookup.

commit 028d472d447d829876659985d30d48142931c531
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Dec 22 13:35:19 2013 -0800

    NpgsqlCommand.AppendCommandReplacingParameterValues()
    
    Remove a couple bits of redundant and ineffective code in the scanner.

commit d2e5b8c017ba4e6bd7040ab298e289b07d3de363
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Dec 21 15:18:54 2013 -0800

    NpgsqlCommand.AppendCommandReplacingParameterValues() and operators @@, @> and <@.
    
    Fix bug that would turn operators @@, @> and <@ in ::, :>, and <: respectively.
    Add tests for said operator butchery.

commit 22d840cfab1fd2c07492dbf531f557bcc06be94d
Merge: 7750b59 79e1ebc
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Dec 24 11:52:27 2013 -0800

    Merge pull request #135 from glenebob/fulltext_operator_fix
    
    Fix for operators @@, @> and <@.

commit 7750b591a1455cd0f57a327af9e0a0f244bf57d4
Merge: 6fc0065 76cfde1
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Dec 24 11:51:50 2013 -0800

    Merge pull request #136 from glenebob/param_name_change_bug
    
    Param name change bug

commit 6fc00650d6146e1bf3d23f8700a68524bbbae19f
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Dec 6 11:38:35 2013 -0800

    Command timeout (merge PR #117)
    
    Send SET command_timeout = <timeout> to backend when needed.
    Extend the Socket.Poll() timeout by 5 seconds to try and guarantee that the backend's timeout error will occur before the frontend's timeout does.

commit 76cfde1dab27dfe7835e81d68b15df4636fc8cef
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Dec 22 14:48:54 2013 -0800

    NpgsqlParameter[Collection]
    
    Make parameters aware of their owning collection.
    Enforce a parameter can belong to any collection only once.
    On paremeter name change, invalidate owning collections's hash lookups.
    When a parameter's collection changes, also make sure it is marked as unbound.
    Add function to remove a parameter by name.

commit 161562b6f74826df36d45122b0c92fa05544bc0d
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Dec 22 13:57:33 2013 -0800

    ParameterCollectionHashLookupParameterRenameBug()
    
    Add test to demonstrate the parameter rename bug that exists with the new hash-based parameter lookup.

commit 79e1ebcd23c7e42fa06447dff61af7fbd0e53c79
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Dec 22 13:35:19 2013 -0800

    NpgsqlCommand.AppendCommandReplacingParameterValues()
    
    Remove a couple bits of redundant and ineffective code in the scanner.

commit 90e4ae1b8eeced969eba73e25d95dc84bee396f7
Merge: c0f3877 cdfd9cc
Author: Shay Rojansky <roji@roji.org>
Date:   Sun Dec 22 08:08:30 2013 -0800

    Merge pull request #134 from roji/133
    
    Workaround for mono .NET 4.5 + ClaimsIdentity

commit 19876b22d0d83e4f6ffe26646b68608ce542ab0d
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Dec 21 15:18:54 2013 -0800

    NpgsqlCommand.AppendCommandReplacingParameterValues() and operators @@, @> and <@.
    
    Fix bug that would turn operators @@, @> and <@ in ::, :>, and <: respectively.
    Add tests for said operator butchery.

commit cdfd9cc16278d412e0c48085844384770ec98a94
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 23:55:00 2013 +0200

    Workaround for mono .NET 4.5 + ClaimsIdentity
    
    Made sure to never have the function accessing the
    WindowsIdentity type JITted under mono .NET 4.5.
    
    https://github.com/npgsql/Npgsql/issues/133

commit c0f38777d4f7bb5fdf3389d0f1f7c08083a01727
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 11:25:52 2013 +0200

    Fix loading of embedded NpgsqlMetaData.xml
    
    Required by the introduction of <RootNamespace> in
    6e3256916966b43780ae1387c236fd12e4cbab1e

commit a5a057e5ec368f8a9761ae63fb80745bb3960557
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 11:08:44 2013 +0200

    Added EF6 ConnectionFactory class

commit 6e3256916966b43780ae1387c236fd12e4cbab1e
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 10:56:25 2013 +0200

    Added missing RootNamespace in csprojs

commit 66640c15fc95ca92a9bcafa128c2539f4e6c8e40
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 10:39:40 2013 +0200

    Added nuget EFProvider installation
    
    Added nuget Powershell installation script for
    Npgsql.EntityFramework, which adds the Npgsql
    EF provider into the project's App.config, as
    recommended here:
    http://entityframework.codeplex.com/wikipage?title=Rebuilding%20EF%20providers%20for%20EF6
    
    Note that this wasn't done for legacy EF

commit 8404f098adba51ae673501fe0c9e3a306d3653f8
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 09:17:15 2013 +0200

    Added nuget dependencies for EntityFramework
    
    The two Npgsql.EntityFramework nugets were missing
    dependencies on EntityFramework itself, added those.

commit 9b74a8b9bb0148e674777a74b2f4d3a848728907
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 09:05:05 2013 +0200

    Added missing nuget dependency to EntityFrameworkLegacy

commit c6608745f2914eddde44d03c3e105c3c9136fff6
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 01:17:54 2013 +0200

    Exclude publisher policy DLL from nuget

commit 32b640fdd5137af55b11947aa81ec147e618b9a9
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Dec 21 01:06:20 2013 +0200

    Integrated publisher policy into build
    
    - Publisher policy creation can now be done via the csproj,
      with the PublisherPolicy target
    - Deleted old batch file method
    - Integrated new method into Npgsql, Npgsql.EntityFramework and
      Npgsql.EntityFrameworkLegacy
    - Updated version numbers
    
    Note: we still have to manually manage bumping the versions,
    need to find a proper solution for this

commit ff046f2951338c7626b8adff5741914cb5875c6e
Merge: 3cc1dac 88dab9c
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Dec 16 18:49:18 2013 -0800

    Merge pull request #118 from NoeGarcia/master
    
    Detection of Parameter Direction in DeriveParameters method.

commit 88dab9cfd7c3941aea07103cf1df0e8db9e59d44
Author: NoeGarcia <elnoegarcia@gmail.com>
Date:   Mon Dec 16 15:26:12 2013 -0700

    PR Updated with Shay's changes.
    
    See https://github.com/roji/Npgsql/commit/158eb05477a2acc32ca0a920a37af7c6997f727e
    and https://github.com/roji/Npgsql/commit/abe8a04e86a12c4d16cb882e2c1049506633803e

commit 9414ded20839dc8d2d9951a76f5aec9b2fe6fd59
Author: NoeGarcia <elnoegarcia@gmail.com>
Date:   Mon Dec 16 10:57:23 2013 -0700

    PR Updated with Shay's changes.
    
    See https://github.com/roji/Npgsql/commit/158eb05477a2acc32ca0a920a37af7c6997f727e
    and https://github.com/roji/Npgsql/commit/abe8a04e86a12c4d16cb882e2c1049506633803e

commit 3cc1dac36e1adfd8fbb6583787451ee8870df4ac
Merge: 2ede012 1450e15
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Dec 13 09:23:18 2013 -0800

    Merge pull request #73 from npgsql/fix-trivial-single-quote-test-string
    
    Fix string value to match its own description.

commit 2ede01227b5037997b9bb08798535f2e75b95707
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Dec 12 15:05:53 2013 -0800

    NpgsqlParameterCollection
    
    Remove IList<NpgsqlParameter> implementation.
    Change name lookup behavior to match SqlParameterCollection: Always return the first match.
    Optimize the non-indexed name lookup scan.
    Provide a more descriptive error on name lookup failure.
    Invalidate hash lookups in a slightly more self-documenting way, and hopefully in all required spots (previous commit had missed one spot I think).

commit f636d076116c12dc51eba9a66ae76df535b14d3e
Merge: ddac81a 77fd836
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Dec 12 14:58:54 2013 -0800

    Merge branch 'master' of https://github.com/Steven-Berry/Npgsql

commit ddac81a6406c6606cdb71d40459d31fec1651df6
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Dec 12 02:11:11 2013 +0200

    Added #if against LinqBridge
    
    In some cases the conditional csproj compilation rule for
    .NET 2.0 only did not work, added #if NET35 to reinforce

commit 58c9483b17ba3dea70565004025eb5948857d679
Author: NoeGarcia <elnoegarcia@gmail.com>
Date:   Wed Dec 11 08:59:43 2013 -0700

    DeriveParameters Test (updated)
    
    Update the test to work properly with versions of PostgreSql before 9.x

commit 77fd83695e4046fb0859a41b193c72ba9077ee2c
Author: Steven Berry <stevenb@dnstech.com.au>
Date:   Wed Dec 11 12:46:52 2013 +1100

    Performance tests for NpgsqlParameterCollection GetValue

commit a545aff1bc1fd25f6c2d64df80febe09a797e48c
Author: Steven Berry <stevenb@dnstech.com.au>
Date:   Wed Dec 11 09:29:42 2013 +1100

    Improve performance of NpgsqlParameterCollection GetValue by using a dictionary lookup instead of scanning the parameter list.

commit f7a79410317c34729aeef8d4fc7d39e28d8a9956
Author: ChenHuajun <chjischj@163.com>
Date:   Sat Oct 12 12:34:29 2013 +0800

    fix some bugs when throwing ArgumentOutOfRangeException
    
    Some fixups by roji
    
    Conflicts:
    
    	src/Npgsql/NpgsqlCommand.cs

commit fc25a2d8bf5c5d1dd654549826de68208dc95045
Author: Joshua Benjamin <jbenjamin@precisiondev.net>
Date:   Wed Oct 30 21:18:41 2013 -0700

    Fixed an issue where Time was being created as DateTime

commit 33a745273b886dcd31483d8fb5ddb1736334d21c
Author: NoeGarcia <elnoegarcia@gmail.com>
Date:   Fri Dec 6 16:16:05 2013 -0700

    Detection of Parameter Direction in DeriveParameters method.
    
    This detection is necessary because currently this method defaults all parameters with Input direction and when using functions that have OUT or INOUT parameters they aren't updated.
    (PR - updated for current master)

commit ff42d573a71c5e6b022665e699ef94634c419294
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Dec 6 11:32:43 2013 -0800

    Add XML comments to NpgsqlConnectionStringBuilder properties.

commit f56c3775a2578a5471ac0869038624153f60ce40
Merge: 6f124a5 086686b
Author: Shay Rojansky <roji@roji.org>
Date:   Fri Dec 6 07:43:37 2013 -0800

    Merge pull request #110 from roji/ef6
    
    Entity framework work for release 2.1.0

commit 086686b8d6a22cf25801d8f54399a5fe01b4d557
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Dec 5 19:28:14 2013 +0200

    A bit more tweaking on legacy EF support
    
    * Removed #ifdef ENTITIES, which doesn't exist anymore. We have just one Npgsql.dll.
    * If the user requests legacy EF but didn't install the EntityFrameworkLegacy package/dll,
      they get an informative exception including the nested exception (is the DLL missing? corrupt?)
    * If the required members inside Npgsql.EntityFramework.dll can't be found (e.g. Instance) throw
      an informative exception. This should never happen unless we mess up and release a bad DLL, but still.
    * Did not understand what the TargetProviderServices property added, so removed for now

commit 3af882b5a7f2f3945b08d23db159e7a6e54f509a
Author: KU <ku@digitaldolphins.jp>
Date:   Thu Dec 5 10:51:17 2013 +0900

    Fixed the strategy how to approach Npgsql.EntityFrameworkLegacy.
    
    If you request DbProviderServices, try to load tightly coupled Npgsql.EntityFrameworkLegacy first.
    
    And then query NpgsqlServices.TargetProviderServices property.
    
    We can know supported version of DbProviderServices by checking TargetProviderServices.
    
    We provide NpgsqlServices.Instance if we share same version of EntityFramework library.

commit 6f124a5632ebbdd2c96b2427ad4d82b5cd037085
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Dec 4 14:17:43 2013 -0800

    Glen Parker list twice; resolved.

commit 0265ccd95bdb96e522cee7260d075d5084e9f388
Author: KU <ku@digitaldolphins.jp>
Date:   Wed Dec 4 15:56:32 2013 +0900

    Fix for System.IO.FileNotFoundException in NpgsqlFactory.GetService
    
    Rewrote assembly and type resolving better.

commit dc4ad25bd4f4b2b56182b17f2f41ed2305fa2015
Author: Shay Rojansky <roji@roji.org>
Date:   Wed Dec 4 00:10:13 2013 +0200

    More tweaks to EntityFramework support
    
    - Tightened some details in the reflection loading of EntityFrameworkLegacy
      (thanks kenjiuno)
    - Did nuspecs entity framework projects
    - Corrected SLNs for 2012, 2010

commit 92ccb856224697242e5d79890f15373539b8ba6c
Author: KU <ku@digitaldolphins.jp>
Date:   Tue Dec 3 10:27:00 2013 +0900

    My fix to get EdmGen/EdmGen06 and my EFv6 app working.
    
    Tested on:
    - Windows 7 Home Premium SP1 64-bit
    - 3 assemblies got into gac.
      Debug-net45\Npgsql.dll
      Debug-net45\Npgsql.EntityFramework.dll
      Legacy-Debug-net45\Npgsql.EntityFrameworkLegacy.dll
    - machine.config modified.
    - my EFv6 app's App.config modified.

commit d7beea23f3407b38747cde05568a59ac87cdd121
Author: Shay Rojansky <roji@roji.org>
Date:   Mon Dec 2 22:16:55 2013 +0200

    Reorganized Entity Framework support
    
    - Reorganized the code into three projects/packages:
      1) The Npgsql "core", fully functional ADO.NET and no EF
      2) Npgsql.EntityFramework, an add-on for users of EF6 and above
      3) Npgsql.EntityFrameworkLegacy, an add-on for users of EF5 and below
    - All EF-related code has been split off from Npgsql and into
      the Npgsql.EntityFramework directory
    - The same EF code is built via two projects: Npgsql.EntityFramework
      (defining ENTITIES6 for the new EF6), and Npgsql.EntityFrameworkLegacy
      (not defining it for pre-EF6).
    
    Still to be done:
    - Npgsql.NpgsqlFactory doesn't yet do the reflection work to return the
      pre-EF6 NpgsqlServices
    - Only the 2013 sln is up to date
    - nuspecs

commit 2f8928e4dee59275767de0df2ec41a654744a3bc
Author: Shay Rojansky <roji@roji.org>
Date:   Sun Dec 1 08:07:23 2013 +0200

    Upgraded to EF6.0.1

commit eb13bfacff84d94e545036a83399fb020b318bcd
Author: Shay Rojansky <roji@roji.org>
Date:   Sun Dec 1 07:48:42 2013 +0200

    Delete old EF6

commit fdc921bb2ff9d47df5a84ec9c3a374508cd55089
Author: Shay Rojansky <roji@eaglets.co.il>
Date:   Sun Dec 1 20:15:55 2013 +0200

    Changes to project README and related
    
    * Updated license to 2013
    * Updated README.txt to point to github
    * Removed ChangeLog and RELEASENOTES

commit 40958a81c1984bd5b1bf116a2118301be85e6697
Author: Shay Rojansky <roji@eaglets.co.il>
Date:   Sun Dec 1 19:26:30 2013 +0200

    Bumped version to 2.1.0

commit 447fa070a44154b2f84d06f16201b8cd271610ba
Author: Shay Rojansky <roji@roji.org>
Date:   Sun Dec 1 07:55:24 2013 +0200

    Fixes to .gitattributes and .gitignore

commit 8a23e03ff2f2d4cc2a0447a7eb15e375dbf4d3a0
Merge: 106d8dd 46da28d
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Nov 30 13:11:44 2013 -0800

    Merge pull request #109 from roji/nuget
    
    Add nuget spec file + minor stuff

commit 46da28dbce6c4d460aa75761461ab9e792d2bc7b
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Oct 1 23:54:04 2013 +0300

    Added project nuspec

commit 0a1aa79de518a097411ad71e269bc08e2ed87275
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Nov 30 18:50:47 2013 +0200

    .gitattributes has packages/* set to binary
    
    To avoid git doing CRLF->LF in packages
    Also killed old .cvsignore

commit 5af7d7cb237249a1e41533511bd4b9f0c81682d8
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Nov 30 18:49:58 2013 +0200

    Build to bin instead of src/bin

commit 106d8dd3667ad28aca7608cc63dd351dfcaa82c4
Merge: cf995c6 dbcf134
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Nov 30 12:30:33 2013 -0800

    Merge pull request #108 from roji/parameterized_tests
    
    Work on unit tests for multiple backends

commit dbcf134b32b5c51cecb4278e270c29fedf18698a
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Nov 9 12:46:25 2013 -0500

    Work on unit tests for multiple backends
    
    - Unit tests now use the NUnit parameterized test suite feature
      to run multiple times on different backend versions
    - Each parameterized run consults a version-specific env var
      for the conn string (e.g. NPGSQL_TEST_DB_9.1)
    - If the version-specific env vars aren't defined, a compiled-in
      default connection string is used instead (simply run against
      localhost:5432). This would be the normal mode for developers.
    - As discussed on the devel list, removed testing for protocol 2

commit cf995c62bb129a3785672337b84c56b4c0ad82b2
Merge: 3b4a44f 8797ccf
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Nov 23 14:51:24 2013 -0800

    Merge pull request #105 from glenebob/prepare_execute_2
    
    Prepare/Execute optimzation

commit 8797ccfa726ff27cffd9db454ceba1116c948ff9
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Nov 22 18:48:30 2013 -0800

    Eliminate the portal Describe by fixing up the statement Describe row description.

commit 3b4a44f23aa2b03e94c1918431e936488f7f134b
Merge: 9b6fd47 cece8c7
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Nov 22 18:20:57 2013 -0800

    Merge pull request #86 from glenebob/command_param_sub
    
    Rewrite prepared query parameter substitution.

commit cece8c71e0289a4cf033e578d5a8b74bb40c4c2e
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Nov 22 17:29:57 2013 -0800

    Add an ASCIIByteArrays value for cr/lf line ending.

commit 1519b10b0359a28a60c8de5de5526e49f8fdfed6
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Nov 18 12:08:39 2013 -0800

    Split NpgsqlCommand.cs into bite-size pieces.

commit 6fb1a4c3305f8a2923cee7e6133df57b7bd26d06
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Nov 18 10:49:09 2013 -0800

    Cleanup
    
    Rename text => commandText, type => commandType.
    Move parameter name character lookup construction to its own function.

commit 83d86b0b70099a7afd648b581283320dfd1ca135
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Oct 31 13:34:24 2013 -0700

    Add speed test for Prepare().

commit ad62e0d64538cb4a04aaa4e550f9575330b8bfe2
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 30 13:37:42 2013 -0700

    Use a more efficient method to get at the individual queries in a command.

commit 06328fcab3ecf66835bde0feae9da2a0e6e8cb7c
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 30 11:28:03 2013 -0700

    Query rewrite code
    
    Unify all query rewrite code.
    Break all commands down into indivual queries.
    NpgsqlParse now takes a byte[] query string.

commit 40b2076c46f49c6373d1d21b3be50e9a58e1bb55
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Oct 29 15:25:04 2013 -0700

    Rewrite prepared query parameter substitution.

commit 9b6fd4718e1154b8fdc1bb9a315d0710246b55a0
Merge: ea434ea 8a5b49f
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Nov 21 07:54:58 2013 -0800

    Merge pull request #103 from franciscojunior/ignore-copyserializer-test-from-pr92-protocol-2
    
    Ignore InvariantCultureNpgsqlCopySerializer test when running under prot...

commit 8a5b49f3e7adf3a1da23060238fbbb26558cab9c
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu Nov 21 13:43:00 2013 -0200

    Ignore InvariantCultureNpgsqlCopySerializer test when running under protocol version 2
    
    The test created by #92 hangs when running under protocol 2. It seems NpgsqlCopySerializer has a problem with this protocol version.
    Ignored for while when running under protocol 2 until we verify why this is happening.

commit ea434eacb2312c7e37053a4898df454fba8c93ee
Merge: c3170a2 099278d
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Nov 21 06:02:02 2013 -0800

    Merge pull request #92 from djsubzero/master
    
    Added InvariantCulture to NpgsqlCopySerializer

commit 099278dc5a30853256f24ce4a2e31cab63dbb669
Merge: 33dcde2 ff33805
Author: djsubzero <info@djsubzero.be>
Date:   Thu Nov 21 05:49:19 2013 -0800

    Merge pull request #1 from franciscojunior/add-test-for-pr92
    
    Add test for pr92

commit ff33805933ce112f617018787603ac92223614ff
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu Nov 21 11:38:35 2013 -0200

    Add test for #92

commit c3170a25f187e0d2875344aff009836b36304b00
Merge: 0bf5942 92719fd
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Nov 19 10:06:32 2013 -0800

    Merge pull request #99 from glenebob/npgsql_error
    
    NpgsqlError fix and improvement

commit 0bf59429118a244e141de462b71b4d82913d9f1a
Merge: 09634e5 e4bb2c4
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Nov 18 10:16:47 2013 -0800

    Merge pull request #101 from glenebob/connection_string_builder_2
    
    Restore ConnectionStringBuilder["POOLING"] default value to true.

commit e4bb2c45a199cd697ea968f5f223725a46eb9fbe
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Nov 18 10:04:48 2013 -0800

    Restore ConnectionStringBuilder["POOLING"] default value to true.

commit 09634e5dbee07a6fd0dd6d53f89922a4e346bbbb
Merge: d2164d9 efc3038
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Nov 18 08:00:04 2013 -0800

    Merge pull request #77 from glenebob/bind
    
    Bind optimizations

commit efc3038a80d44323762f483dbfe9385ee5b5c95d
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Nov 16 17:48:26 2013 -0800

    Refactor NpgsqlFlush and NpgsqlSync, minor clean up.

commit 0754c12c6b4a44f29fdb0005df13592b2e883646
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Oct 25 12:53:14 2013 -0700

    Optimize NpgsqlExecute and NpgsqlSync just a bit more.

commit ff002fa6e530d359d7a72db392c39be5623c2808
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Oct 22 19:33:17 2013 -0700

    PG doesn't send a row description in response to Portal Describe if there's nothing to describe; handle this scenario properly.

commit 116dea7a4ff36e986c05f2fc71f1d98c25b0787b
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 19 16:49:01 2013 -0700

    Error handling
    
    Remove incorrect usage of the Sync message - its purpose is for directing PG in case there's an error, not recovering from an error after it happens.
    Remove useless try/catch constructs.

commit 1329542549a900e60e9357cff8496c851873b976
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Oct 18 20:07:21 2013 -0700

    Optimization
    
    Don't save lastRowDescription in the backend response handlers; save it in DataReader instead.
    Send Portal Describe only once; save the row description for subsequent Executes.
    Use a more efficient path to DataRow disposal on protocol version V3.
    Shorten plan and portal names for a small network bandwidth savings.
    Interlocked.Increment not needed for plan and portal number increments.
    Bump the buffer size on BufferedStream to 8192.

commit aeba0bc040db0a373f733d3d13a08c96c610f482
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 16 22:18:33 2013 -0700

    Add support for "Always Prepare"
    
    Add connection string value "AlwaysPrepare".
    Implement "AlwaysPrepare" support on NpgsqlCommand.
    Refactor Prepare code so that calling Prepare() from within GetReader() avoids redundant sanity checks.
    When a previously prepared statement command text is changed, automatically re-Prepare (if needed) before the next Execute.
    Complete implementation of "ApplicationName" connection string value (I hope).
    Hide enum DescribeTypeCode properly.

commit 539fe6aa609e9d0dd28fc68a81ef46be36b67409
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 16 15:00:10 2013 -0700

    Revert addition of redundant using (m_Connector.BlockNotificationThread()) from last commit.

commit 0b6dc1b2b9b0981f58b36bd02e2502551cf1ddb8
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Oct 15 15:30:15 2013 -0700

    Organization, cleanup, and optimization
    
    The Flush command is never used anymore, and it is easily confused with Stream.Flush(); remove support for it.
    Simplify and mske more consistent some of the query pathways.
    Avoid calling Stream.Flush() in multiple locations; call it in ProcessBackendResponses() instead.
    Remove a bunch of redundant/unused code.
    The two Process*BackendResponse*() functions are now the only entry points into that functionality.
    NopgsqlQuery now constructs with a connector and query text (byte[] or string).
    The "unknown" type supports binary decoding now.
    cancelRequestCalled parameter is never set true; remove it.
    Optimize ExecuteBlind() a little more.
    Make sure to block the notification thread before writing query messages to the wire.

commit 92719fd74830771559afd387ea371182e27bf0b7
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Nov 16 18:55:50 2013 -0800

    NpgsqlError
    
    Use enum for error message field codes.
    Restructure the message reader so the null terminator is handled in a more obvious way.

commit 126cd71a7540c0a88734d1a3cf6d796719c2a9e5
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Nov 16 18:04:23 2013 -0800

    NpgsqlError
    
    Fix bug that would cause NpgsqlError to stop reading error fields prematurally if it encountered a field type it doesn't understand.

commit 600d92c425b627d99d0420105fc0a2b03715d91e
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Oct 13 21:55:11 2013 -0700

    Organization and cleanup
    
    Improve OO design of NpgsqlDescribe by splitting it into an abstract base class and two sub classes.
    Split NpgsqlState by moving the two backend response handlers into their own files.
    Fix BackendEncoding.UTF8Encoding to be readonly.
    Minor cleanups.

commit 8b29e1959fa809c1fe92f183c5b9ed3e6592c8c5
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 12 17:57:11 2013 -0700

    Optimization and cleanup
    
    Rearrange and cleaned some of the extended query code for better readabliity and consistency.
    The Flush and Sync messages are now singletons, available by their static Default fields.
    The Describe and Execute messages now live across many Executes without change, and set _messageLength at constrution.
    No need for the Parse message to live outside of Prepare().

commit a08d6a78fd92ede0e91b7409032a2ec52780f2ab
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 12 12:07:35 2013 -0700

    Prepare and query
    
    Remove unneeded Sync()'s.
    BindComplete response should not yield, as it gives us no information we can use.

commit eccbf9ceb8354ec94ec5b7972ba6476edbbb2483
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Oct 11 19:10:09 2013 -0700

    Bind
    
    Optimize bind to cache message length.
    Only convert parameters for bind if needed.
    Do not Sync() after writing Bind to the wire; wait until after Execute.

commit d2164d994db15a3524973f8deba897a84930a52c
Merge: 5c4e4da 443ab7f
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Nov 15 08:09:03 2013 -0800

    Merge pull request #97 from roji/shorten_test
    
    Shortened unit test run time

commit 5c4e4da200af32f4be7ce3e6541d06531adb2ae8
Merge: d76127a 0e5a9f6
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Nov 15 08:03:35 2013 -0800

    Merge pull request #85 from glenebob/connection_string_builder_2
    
    Connection string builder

commit 0e5a9f6c5e68eed52b27d1eaf5ccd10d2cedf80f
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Nov 14 16:09:19 2013 -0800

    Connection string builder
    
    Add a class to describe a connection string value, which handles default values and some conversions.
    All values now get a descriptor with defaults.
    Remove field initializers, set all defaults using descriptors.
    Eliminate some redundant keyword table lookups.
    Simplify and make more efficient SetValue().
    Get values via this[] directly from the private fields rather than base class storage.

commit 443ab7f878fe0f481a52d2f8a5abce24d9a65ab3
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Nov 14 01:11:32 2013 +0200

    Shortened unit test run time
    
    ExceedConnectionInPool waited on the default 15 second
    connection timeout, reduced to 1 second

commit 8f559afa3170039740beb52b23fe121249103f7d
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Nov 12 12:49:03 2013 -0800

    Comments added for clarification.

commit d76127a672220fb5f0669652e54f51eb9dbcef39
Merge: 478da4d a26928e
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Nov 11 11:29:27 2013 -0800

    Merge pull request #83 from glenebob/pv_fallback_bugfix
    
    Fix backend protocol version fallback bug

commit 478da4d81ffba245c77649af0b55d9043ece3f7c
Merge: 1a7eb8b 900ed0a
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Nov 8 10:32:38 2013 -0800

    Merge pull request #94 from franciscojunior/false-parameter-value-passed-as-true
    
    Boolean binary backend encoding fix. By Glen Parker

commit 900ed0afc24f4f6d91edb3f230e3c05e220fe239
Merge: d7ed5fe c70967d
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Nov 8 10:16:15 2013 -0800

    Merge pull request #93 from glenebob/false-parameter-value-passed-as-true
    
    Boolean binary backend encoding fix

commit c70967d9126f6ba851114881fed72e9eccee306b
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Nov 7 13:47:27 2013 -0800

    Boolean binary backend encoding fix
    
    Send proper byte[] values for binary encoded boolean parameters.
    Expand new boolean parameter tests to include non-prepared, prepared, and prepared with suppressed binary.
    Mark TestBoolParameterPrepared2() ignored, as it is out of scope for this branch/fix.

commit d7ed5fe5e1eaf8a5a786306e5486eab8c3448e54
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu Nov 7 18:03:31 2013 -0200

    Add test for prepared queries with bool parameter.
    
    This test was created based on a report from Andrus Moor in the help forum:
    http://pgfoundry.org/forum/forum.php?thread_id=15672&forum_id=519&group_id=1000140

commit 33dcde220aa1b531a9b81f59504b1e55d22bd839
Author: djsubzero <info@djsubzero.be>
Date:   Tue Nov 5 19:26:49 2013 +0100

    Added InvariantCulture to NpgsqlCopySerializer
    
    PostgreSQL currently only supports SQL notation for decimal point (which
    is the same as InvariantCulture)
    Added static readonly CultureInfo field for use in string.Format to
    always use dot as decimal point.

commit 1a7eb8bad7985537b0eba052f7f2b34e0040fc46
Merge: d8f2c1a 4f01487
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Nov 2 11:58:44 2013 -0700

    Merge pull request #90 from roji/test_env_var
    
    Added env var for test DB conn string

commit 4f01487bcdbc7e4ce673a918a0e6554600794dfc
Author: Shay Rojansky <roji@roji.org>
Date:   Fri Nov 1 09:06:33 2013 +0200

    Added env var for test DB conn string
    
    The NPGSQL_TEST_DB environment variable can now
    optionally contain the connection string for the
    test database.

commit d8f2c1ae8004218067fcc819698ea9bd479eaac8
Merge: 7f6b2fd 504bd89
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Oct 30 20:14:20 2013 -0700

    Merge pull request #87 from ChenHuajun/connecttest
    
    add two speed tests for connection and disconnection

commit 7f6b2fd5a7e51dc6cd1e4d789d00a1290f9db73f
Merge: 8c4d9ce a067e40
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Oct 30 20:03:37 2013 -0700

    Merge pull request #74 from ChenHuajun/discardall2
    
    Release connection into pool with "Discard All"(new)

commit a067e400212fb3c00e63598cb684dea6c378908f
Author: ChenHuajun <chjischj@163.com>
Date:   Thu Oct 31 09:43:27 2013 +0800

    execute all inital queries in one muti-statment

commit 504bd8944b6c2dfd49dd0b150acc5abccc3a888b
Author: ChenHuajun <chjischj@163.com>
Date:   Wed Oct 30 22:01:08 2013 +0800

    add two speed tests for connection and disconnection

commit a8d60cafed4bbd88f07d3e12078c65409e8eab92
Author: ChenHuajun <chjischj@163.com>
Date:   Sat Oct 12 11:26:20 2013 +0800

    add comments for extra_float_digits

commit 596227e37e9a22ed7b5cfdd3445eb23e1b829b1f
Author: ChenHuajun <chjischj@163.com>
Date:   Tue Oct 8 23:24:42 2013 +0800

    Release connection into pool with "Discard All"
    This is a new patch to replace PR54

commit a26928ed968ee5b584eac48278519e74ce48db75
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 28 18:08:43 2013 -0700

    Streams
    
    Fix typo of stream name.
    Eliminate need for explicitly creating a delegate.
    Change Connector.Stream type to BufferedStream, which is what it always is.

commit 8c4d9cefcd72c66ecdba31b3b52e9ecd2feba873
Merge: af73af5 7ea1ff3
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Oct 28 08:25:12 2013 -0700

    Merge pull request #84 from glenebob/tests_datetime_parse_fix
    
    Fix DateTime.Parse() call for non-U.S. cultures.

commit 0eb6b8ab8aeefccf4c00d2c8cea9733ebdf74687
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 26 22:34:08 2013 -0700

    NpgsqlConnectionStringBuilder
    
    NpgsqlConnectionStringBuilder now defaults to protocol version Unknown.
    Make sure NpgsqlConnectionStringBuilder never writes "<key>=<empty value>" to a connection string.
    Add a constructor NpgsqlConnection(NpgsqlConnectionStringBuilder)
    Store password bytes in an encapulation that wipes old password out before storing new one.
    Remove most of the defaults; initialize the private fields instead.
    Don't put values into base unless they are different from the value default, and also from that type's default value.

commit 7ea1ff356e3393157a419dee4c769bebee0f53f5
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Oct 25 19:21:00 2013 -0700

    Fix DateTime.Parse() call for non-U.S. cultures.

commit f9dc2ecce7314243798074a06e956f9aeb99eedb
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Oct 25 18:57:29 2013 -0700

    Fix backend protocol version fallback bug
    
    NpgsqlNetworkStream.Dispose() no longer tries to close its Connector unless the Connector has been explicitly attached to it.
    Save the NpgsqlNetworkStream on Connector so it can be attached after successful startup.
    Cleaned up CloseState.Open().

commit af73af5c052e96d982ed915ed479bc8000cd9621
Merge: 4f4fc65 626466b
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Oct 25 14:06:48 2013 -0700

    Merge pull request #76 from glenebob/bug_datetime_array
    
    Add test demonstrating bug in datetime array encoding.

commit 4f4fc65c51d9527deee9661b5252a6b2ff671ef3
Merge: f2e99aa 7e15d41
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Oct 25 10:28:36 2013 -0700

    Merge pull request #81 from glenebob/backend_text_encoding
    
    Fix encoding bug caused by PR #80

commit 7e15d4194520291ab47a42183e9d8f26c95c6ed6
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Oct 25 10:10:53 2013 -0700

    Fix encoding bug caused by commit 54a0160c06fca6ef35eaf9b48875fedf83cb0d85
    
    Add tests exposing bad quoting of types other than text and bytea.
    Fix generic quoting code.

commit f2e99aac52d52226f902db92d2c8ea1d1bd5d39f
Merge: 06731d4 27038aa
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Oct 24 18:57:52 2013 -0700

    Merge pull request #79 from glenebob/speed_tests
    
    Speed tests
    
    I added a couple more speed tests, and added a metrics class to help track time and CPU usage and report results. I stole your "using()" idea :)
    
    -Glen

commit 06731d4e243c3b8c8012118ac4bd53260e276336
Merge: f71e559 5acede0
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Oct 24 18:55:26 2013 -0700

    Merge pull request #80 from glenebob/array_handling
    
    Array text encoding
    
    I ran the test suite against 7.3.21, and discovered that array text encoding did not work, because the array[] construct was new in 7.4. So, I re-wrote the array text value encoding code, yet again. What is that, 37 times now? Now it uses the more universal '{"", ""}' syntax. The result is that the array tests run cleanly on all final revisions back to 7.3.21.
    
    The different quoting and escaping combinations with plain text encoding will drive a person crazy.
    
    -Glen

commit 5acede00b05e363796a37945595fad6005cee10e
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Oct 24 18:26:05 2013 -0700

    String and bytea encoding optimization
    
    Expand use of the hash table to control all aspects of string and bytea quoting and escaping.
    Optimize the hash function to make as few decisions as possible on current PG version.

commit 4ae7c048a4f9ee74fb11d5c9eeb0afcb9b909839
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Oct 22 10:42:14 2013 -0700

    Replace the dynamic hash table with a very simple static one, negating the need for hash key comparisons in lookup operations.

commit d18cd91789afacc00d46a4fc38597eadf2a2c658
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 21 22:28:42 2013 -0700

    Restructure plain text backend encoder using a hash table rather than a big nested if/then construct.

commit 54a0160c06fca6ef35eaf9b48875fedf83cb0d85
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 21 18:12:00 2013 -0700

    Array text encoding
    
    Encode text arrays using the '{"", ""}' syntax, rather than the array['', ''] syntax.

commit 27038aa5d7f965215e731bc4e9b4915df93068a4
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 19 10:38:32 2013 -0700

    Speed tests
    
    Add test metrics class to help track and report speed test results.
    Add tests.

commit 626466b1414afaf1112b7d7de419c4191b4345b8
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Oct 13 19:19:05 2013 -0700

    Ignore DateTimeArray test, add comment explaining it.

commit be933400bba24812026875eeeaf11b64bd610b16
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 15:51:50 2013 -0700

    Add test demonstrating bug in datetime array encoding.

commit f71e559f999dfad6a6a64f3662ec9fa8eed19a82
Merge: 5467398 c861757
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sun Oct 13 14:17:43 2013 -0700

    Merge pull request #75 from glenebob/tests
    
    Tests
    
    I added some speed tests and made them all run for a certain length of time, rather than a certain number of iterations. Now you can run them against a local PG or one out on the Interwebs without having to mess with iteration counts.
    
    I also made the tests able to work on < 8.2 again. We get a lot of test failures the further back you go, but it's still quite useful.
    
    -Glen
    
    Modify CreateSchema() to work on PG < 8.2.
    Add speed tests.
    All speed tests now run for a centrally configured amount of time (currently 10 seconds), rather than a preset number of iterations, and report total queries executed and queries/second.

commit 54673986d32316267462d0ae47e32bbe9a6a50f9
Merge: 68fe257 7df6a4c
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sun Oct 13 14:04:40 2013 -0700

    Merge pull request #72 from glenebob/backend_encoders
    
    Optimization
    
    The main benefit of this PR is that it eliminates unneeded arbitrary string value escaping. This is particularly nice with bytea encoding, as the entire encoding operation, including quoting, is done in one scan, eliminating at least one potentially large copy operation. It also eliminates arbitrary escape scans on all types other than raw text (no need to escape a Timestamp value, for example). With arrays, the extra quoting and escaping operation that was being done in ArrayHandling.cs is now eliminated.
    
    -Glen
    
    Add backend converter for string text representation, with full escaping and quoting logic built in.
    Build quoting into the bytea text backend converter.
    Push the array element quoting and escaping down to the native to backend converters.
    Remove arbitrary escape scanners, as only text and bytea should ever need escaping.

commit 7df6a4c90b7cd7a98412179e5656e8e1d1d159b3
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 23:46:03 2013 -0700

    Avoid calling char?.Value over and over.

commit fb778192df256748313c46f07a0d395ae9eb089d
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 23:22:49 2013 -0700

    Pr-allocate destination buffer.

commit c861757e8d24e67a9e98eeb5b795dbd0e1a467f5
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 16:12:54 2013 -0700

    Add bytea and decimal array speed tests.

commit c40e01a9f7227c40d9c621e7d2e9d0ee9412da6f
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 15:39:42 2013 -0700

    Backend encoders
    
    Fix bug with quoting array elements of types such as DateTime and Decimal.
    Remove unused parameter.

commit e20689fefc5eec383bcb09038e24df4b04637a40
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 15:38:28 2013 -0700

    Add test for decimal arrays.

commit efa2418fca9601cdc2793682b9a0090ecc41107b
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 06:28:18 2013 -0700

    Tests
    
    Modify CreateSchema() to work on PG < 8.2.
    Add speed tests.
    All speed tests now run for a centrally configured amount of time (currently 10 seconds), rather than a preset number of iterations, and report total queries executed and queries/second.

commit 47f2753b4775547cf7d09d3337c0dc4ad362792d
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Oct 9 06:18:07 2013 -0700

    Remove unneeded code (turns our, "\x" is a valid zero-byte bytea value).

commit d364e1b8d3b77241c585f252b051e7cb0ff00c5a
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 20:48:31 2013 -0700

    String and bytea text format encoders
    
    Re-write the string and bytea text encoders for readability.
    Fix bug from previous commit that caused the encoders to fail against PG <= 8.4.
    Escape raw text before UTF encoding, not after; after doesn't work on multi-byte data.

commit 2823c3e582a1d0e578d7ff59c87791ffd5be8b65
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 20:42:08 2013 -0700

    Fix backend to native bytea hex format decoder to work on zero-length data.

commit 4ef2a015b41ac68fe5ccba3b91a2379dab632865
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 19:50:31 2013 -0700

    Add a test for zero-length bytea.

commit 8d733c72caf4e9d3f38f8667415c3b2eb2962e0f
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 19:29:04 2013 -0700

    Fix test that claims to Prepare(), to actually Prepare().

commit a3c830cddfbc4a4dc5b29fe05e8585467bf1f7d6
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 19:26:00 2013 -0700

    Add a test, and increase rigor on a couple others.

commit 491c2f743a4eab4689293d78a2acb20f013b35cc
Merge: cfa82b2 68fe257
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 14:59:33 2013 -0700

    Merge branch 'master' of https://github.com/franciscojunior/Npgsql2 into backend_encoders

commit cfa82b2d9f21008e9c02ef5d3996d86e1309950c
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Oct 7 14:58:56 2013 -0700

    Bugs, tests
    
    Fix bugs in bytea texr encoder on <= 8.4.
    Add tests, make a couple others more rigorous.
    Improve variable names for readability.

commit 1450e15b7c6a2c179a42565f8fac2354a0da7903
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon Oct 7 18:46:01 2013 -0300

    Fix string value to match its own description.
    
    The string value was saying it contained one single quote when in fact it contained two.
    It was using postgresql syntax of using 2 single quotes to represent 1 single quote.

commit 68fe2578196655095610c0c314f2849bf6095885
Merge: f2546b4 0a31a41
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Oct 7 13:49:58 2013 -0700

    Merge pull request #68 from franciscojunior/add-test-bytea-array-handling
    
    Add Bytea array handling test without calling NpgsqlCommand.Prepare() me...

commit f2546b470c9f8d339cdb7b1adb19414f2836f540
Merge: cf1984b cff78bb
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Oct 7 13:48:46 2013 -0700

    Merge pull request #69 from franciscojunior/fix-extra-float-digits-setup
    
    Fix extra_float_digit setup for Postgresql below 9.0

commit c25d20131e2810b65f6ecfe0d49b8b0e2928afae
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Oct 6 20:59:32 2013 -0700

    Cleanup
    
    Remove a bunch of reduntant code.
    General cleanup.

commit 854862aeb4ba2c7f6d6cd321baeddbddbeca74fd
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Oct 6 20:37:16 2013 -0700

    Native to backend converter optimizations
    
    Add backend converter for string text representation, with full escaping and quoting logic built in.
    Build quoting into the bytea text backend converter.
    Push the array element quoting and escaping down to the native to backend converters.
    Remove arbitrary escape scanners, as only text and bytea should ever need escaping.

commit cf1984bd0067678b01aa2f4bed559cd19911a699
Merge: 46a97cf 3ddfeea
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Oct 5 16:13:55 2013 -0700

    Merge pull request #70 from glenebob/bugs_8_4
    
    Fixes for older server versions
    
    Here are fixes for the array problem you found on 8.4, plus some changes to tests to make them run properly on more various versions.
    
    I tested Npgsql on every final version of 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, 9.2, and 9.3 :)
    
    -Glen

commit 46a97cf4ce0de57a8096b74afa6c9885e6bb7b1a
Merge: 4c6b90a 3644796
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Oct 5 15:53:30 2013 -0700

    Merge pull request #71 from glenebob/ef_convert_to_backend
    
    Fix EF call to ConvertToBackend() (which now returns byte[], not string)

commit 36447966a9f540ce9439e3dd6a526c62c2db004c
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 5 15:45:21 2013 -0700

    Fix EF call to ConvertToBackend() (which now returns byte[], not string).

commit 3ddfeea19d8d90bd57874e4ae704b81a4718058b
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 5 15:21:50 2013 -0700

    Moved some code out of a loop that doesn't need to execute on each iteration.

commit 69b0efd99b6caa2445e1d0e3a0b06486d1bd681b
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 5 14:08:06 2013 -0700

    More test selectivity; all tests pass on 8.3 and up.

commit 5dce30cfd01dcf5e920ad0c7a686e0af926162df
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Oct 5 12:50:45 2013 -0700

    Fixes for older server versions
    
    Correct array element escaping for all versions (tested >= 8.0).
    Execute server version dependant tests selectively.
    Added test for escape formatted bytea data.
    Added test for 'true'::boolean.

commit cff78bbc351c81b55715a78edc95ea9fba4c1339
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Fri Oct 4 19:12:39 2013 -0300

    Fix extra_float_digit setup for Postgresql below 9.0
    
    Npgsql was sending two commands at the same time to set the extra_float_digits parameter.
    The first one with value of 2 and the second one with a value of 3.
    The problem is that on postgresql below 9.0, there is no support for value of 3 and then neither
    command was being processed letting the parameter with the default value of 0.
    Now, Npgsql checks which version it is connected to and sends the correct command accordingly.

commit 0a31a4182884cb1b63b0eaa453ecadf0dbd2b0a1
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Fri Oct 4 18:05:17 2013 -0300

    Add Bytea array handling test without calling NpgsqlCommand.Prepare() method.

commit 4c6b90a7bf9c3b847171f5434f5c66dad9b6bef9
Merge: 137e73e 9f9d0df
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Oct 3 13:49:54 2013 -0700

    Merge pull request #66 from glenebob/npgsqltypes_files_refactor_3
    
    Npgsqltypes files refactor

commit 9f9d0dfef35e15c8e1f798bf9e91df9c48469adb
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Oct 3 13:27:09 2013 -0700

    Remove Messages.*, as the strings are not used at all anymore.

commit 137e73e56d2cd3d4674f2f33d830fb23cf32f0d2
Merge: 9a88a14 ebc931f
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Oct 2 11:08:55 2013 -0700

    Merge pull request #63 from roji/bug1011334
    
    GetSchema() connections are properly disposed

commit 9a88a14b463d4469c6c6b626bd12c93ef03d1d07
Merge: 1784558 b4169d7
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Oct 2 11:06:27 2013 -0700

    Merge pull request #61 from glenebob/async_notification
    
    Async notification fixes
    
    This will fix the CPU hog problem you were seeing, and eliminates the need for the odd Sleep() call in ProcessServerMessages().
    
    -Glen

commit b4169d7aebbcf447cca69c4d60bbb754d9b35591
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Oct 1 19:44:15 2013 -0700

    Remove compile time condition on Sleep() in ProcessServerMessages().

commit dd80b78e1f8de07c1748f75a71527af23840b2f9
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Oct 1 17:37:17 2013 -0700

    Npgsqltypes files refactor
    
    There should be no functional changes in this commit.
    Split NpgsqlTypesHelper.cs and NpgsqlTypeConverters.cs into more managable pieces.
    Move class ASCIIByteArrays{} to ASCIIBytes.cs.
    Move unused messages under NpgsqlTypesHelper.cs to Messages.cs.
    Changed file encoding (removed unneeded BOM, it's just ASCII) and copyright date on FastConverter.cs.

commit ebc931f987c7614767bdb243b26a70b8efff21bc
Author: Shay Rojansky <roji@roji.org>
Date:   Mon Sep 30 00:07:59 2013 +0300

    GetSchema() connections are properly disposed
    
    - NpgsqlConnection.GetSchema(...) now always disposes the temporary
      connection it allocates
    - Fixes bug #1011334
    - Converted NpgsqlSchema to the static class which it is
    - Added test for GetSchema() during read

commit 1784558b6a327c134261c7640f8d469d90969eb2
Merge: 8687382 724c819
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Oct 1 15:49:46 2013 -0700

    Merge pull request #62 from roji/build
    
    Work on the build system
    
    From @roji "As discussed on the mailing list, rearranged all the build files (sln/csproj) by framework and cleaned up lots of things - look at the commits for details."

commit 8687382cbba3cf3cc91b9be2639d6524506b4474
Merge: eb2835b f4923ed
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Oct 1 15:11:31 2013 -0700

    Merge pull request #65 from franciscojunior/revert-pull-request-54
    
    Revert "Merge pull request #54 from ChenHuajun/discardall"
    
    This reverts commit eb2835b, reversing
    changes made to 5e64504.
    
    There was a problem with pull request #54 and postgresql below 9.0 regarding extra_float_digits

commit f4923ed79ee6a47ef641773e45b57019c5bf2220
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Tue Oct 1 18:57:57 2013 -0300

    Revert "Merge pull request #54 from ChenHuajun/discardall"
    
    This reverts commit eb2835bd13aea7ca8bf7d0357d72491c9e5084cf, reversing
    changes made to 5e645045b0a5f48e6f8303f7760d59dd76b1ae1e.
    
    There was a problem with this pull request and postgresql below 9.0 regarding extra_float_digits

commit eb2835bd13aea7ca8bf7d0357d72491c9e5084cf
Merge: 5e64504 0459ddf
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Oct 1 12:50:40 2013 -0700

    Merge pull request #54 from ChenHuajun/discardall
    
    Release resources with "Discard All" when return connection into pool
    
    I had made a new patch to release resources clearly with "Discard ALL" when return a connection into the pool,which is based on the following discussion.
    http://pgfoundry.org/tracker/index.php?func=detail&aid=1011241&group_id=1000140&atid=592
    
    The major modificaions is as the following
    1)Release resources with "Discard ALL" if the backend is 8.3 or later and the protocol is V3.
    "Discard ALL" is introduced since 8.3 and it is not able to set session configulations via starup package while use protocol V2. So keep their behaviors as before.
    
    2)Refactor the code to send starup package.
    When use protocol V3,set session configulations via starup package,other than execute "set xxxx=yyy" later.
    
    3)Add a test case
    
    Regards,
    Chen Huajun

commit 0459ddf89d3be525497313e9f0aa9c4bca49192f
Author: ChenHuajun <skykiker@gmail.com>
Date:   Tue Oct 1 23:10:54 2013 +0800

    rename length to packet_size

commit 40ba3d6c718584660c55644dbecddea68f0f419c
Author: ChenHuajun <skykiker@gmail.com>
Date:   Tue Oct 1 23:00:07 2013 +0800

    store byte array instead of string in NpgsqlStartupPacket

commit fc1b7aa47c9cb83fdee269758590a3292c7b3db9
Author: ChenHuajun <skykiker@gmail.com>
Date:   Mon Sep 23 15:53:53 2013 +0800

    resolve conflict when merge PR52

commit d08805f0d1f6cca2151a4ab88fff3019d2114e2d
Author: ChenHuajun <skykiker@gmail.com>
Date:   Wed Sep 18 18:13:19 2013 +0800

    Release connection into pool with "Discard All"

commit 724c819ea0538f23da97f34a0ec03a5dd0a02321
Author: Shay Rojansky <roji@eaglets.co.il>
Date:   Tue Oct 1 03:03:54 2013 +0300

    Corrected debug build config of NpgsqlTests

commit 20c75ee9a68efe27467a16bb4edfa40b1854debb
Author: Shay Rojansky <roji@eaglets.co.il>
Date:   Tue Oct 1 00:13:03 2013 +0300

    Created .sln per VS version
    
    Important in order to exclude .NET 4.5 from VS2010 and allow
    for automatic opening of the correct VS version from explorer

commit 5e645045b0a5f48e6f8303f7760d59dd76b1ae1e
Merge: a778d05 c5956d0
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Sep 30 04:49:12 2013 -0700

    Merge pull request #64 from roji/bug1000515
    
    Added some very basic speed tests
    
    Created separate test class for speed tests, explicit only (will not run automatically with the rest)
    Currently only for insert and prepared insert (bug #1000515)

commit b7ed465a61e840c00926053a1f32392e0a5dde30
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Sep 28 19:40:31 2013 +0300

    Added Mono.Security for .NET 4.0
    
    The build configurations for .NET 4.0 and 4.5 now reference
    the 4.0 version of Mono.Security, while the configurations
    for .NET 2.0 and 3.5 reference the 2.0 version as before.

commit 904f465fcc814a497aee5becf358b550ae026342
Author: Shay Rojansky <roji@roji.org>
Date:   Mon Sep 30 09:10:53 2013 +0300

    Rearranged project build, single sln/csproj
    
    - We now have one sln and one csproj, with build configurations for
      .NET 2.0, 3.5, 4.0, 4.5
    - An additional build configuration produces .NET 4.5 with Entity
      Framework 6. EF6 was brought in via nuget as a dependency, but
      its DLLs are referenced conditionally based on the build config.
    - .NET 2.0 uses LINQBridge for extension method and LINQ support
    - Removed Visual Studio 2008 support
    - Deleted monodevelop mdp/mds, mono xbuild compiles the sln/csproj
      files just fine
    - Mono does not build config 3.5, 4.0, 4.5 because they rely on the
      old (non-opensource) Entity Framework. 4.5-EF6 builds fine.
    - Mono does not build config 2.0 because of a LINQ/LINQBridge issue

commit c5956d04dc8aaf552d0b885ad9b63043abb8d91e
Author: Shay Rojansky <roji@roji.org>
Date:   Mon Sep 30 09:03:36 2013 +0300

    Added some very basic speed tests
    
    - Created separate test class for speed tests, explicit only
      (will not run automatically with the rest)
    - Currently only for insert and prepared insert
      (bug #1000515)

commit 9237cc1627d530227e6cc45751ab3ad02edab8e9
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Sep 29 19:32:28 2013 -0700

    Mono specific workaround for seemingly buggy System.Threading.Monitor implementation.

commit 55c7ea9ff76c56d07ad6f153e8b90846e3366d81
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Sep 25 12:30:36 2013 -0700

    Async notification fixes
    
    Switch to the correct thread syncronization method, Monitor and lock{}.
    Use a reasonable timeout on Poll(), which take micrseconds, not milliseconds.

commit a778d051780c36c524340f1dac87ac038481ba3f
Merge: 7301af0 8fb7efd
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Sep 25 10:45:49 2013 -0700

    Merge pull request #53 from ChenHuajun/minpoolsize_bugfix
    
    fix bug for value checking of MinPoolSize

commit 8fb7efd352503cb47cb39eabcd9e49d6663f0563
Author: ChenHuajun <skykiker@gmail.com>
Date:   Tue Sep 17 20:01:10 2013 +0800

    fix bug for value checking of MinPoolSize

commit 7301af063b965c7c7135570fa2da1d308040a51e
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Tue Sep 24 21:57:25 2013 -0300

    Add missing file reference to VS.net 2008 and 2010 project files after pull request #57 commit.

commit 803fc80e8983fa1693e889d03da18d307b415b77
Merge: 3716dde 07dbaa2
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Sep 24 17:54:56 2013 -0700

    Merge pull request #59 from glenebob/bytea_backend_text_decoder
    
    Bytea backend text decoder

commit 07dbaa2d841cc7c24b32f4b05592776f3b5ed53e
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Sep 24 15:16:53 2013 -0700

    Bytea backend to native escape format decoder
    
    Optimize the bytea escape format decoder to operate directly on the byte[].
    Fix bug in escape format encoder (missing digit 7 in the lookup array).

commit e49ceaec80ea26ebb0a67a5b49163ba7a68511c4
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Sep 24 14:23:50 2013 -0700

    Bytea backend to native hex format decoder
    
    Optimize the hex format decoder to work directly on the byte[] backend data.
    Fix bug causing output byte[] to be one extra byte in length.

commit 3716dde941587a87dc1a70bfead9915f94455284
Merge: 5728a54 3ab4c07
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Sep 24 13:15:56 2013 -0700

    Merge pull request #57 from Rungee/master2
    
    ByteaTextToByteArray conversion optimization

commit 3ab4c07d775f854dafa3d4359f9a148bcdb4aff9
Author: Rungee <maksim.rylov@gmail.com>
Date:   Tue Sep 24 20:17:04 2013 +0200

    Headers formatting

commit d9457a2ff3d9e3a518dad167c9d9be2e04dabb49
Author: Rungee <maksim.rylov@gmail.com>
Date:   Tue Sep 24 19:54:26 2013 +0200

    Formatting

commit 6e3e7a49309a14e05406dcb2b641b2cafd62d779
Author: Rungee <maksim.rylov@gmail.com>
Date:   Tue Sep 24 19:47:37 2013 +0200

    Formatting

commit f81f713eb12274ca9788ef5a158ae089f611138a
Author: Rungee <maksim.rylov@gmail.com>
Date:   Tue Sep 24 19:26:20 2013 +0200

    Formatting

commit 5e0fbde15ed2ab671264033661aa65f3f6367f03
Author: Rungee <maksim.rylov@gmail.com>
Date:   Tue Sep 24 18:05:22 2013 +0200

    Formatting

commit d47869695089faeeaf926d2e5a9755b3927e589d
Author: Rungee <maksim.rylov@gmail.com>
Date:   Tue Sep 24 16:26:12 2013 +0200

    ByteaTextToByteArray conversion optimization

commit 5728a54cf0cb33aa35e09c86e5afae764d5b27d1
Merge: c821be5 89b99d4
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Sep 24 06:48:34 2013 -0700

    Merge pull request #58 from roji/update_row_source_test
    
    Ignore failing test UpdateRowSource for protocol 2

commit 89b99d4e541e7f5ea4e3e9914a1d8871b0b6fb4b
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Sep 24 16:20:50 2013 +0300

    Ignore failing test UpdateRowSource for protocol 2

commit c821be596cbeb0a7264c4cca600f72e2b3f7f3a6
Merge: 7b204c2 c8fb894
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Sep 24 05:51:31 2013 -0700

    Merge pull request #56 from roji/scope_fix
    
    Fix TransactionScope-related bug

commit 7b204c2adb62c6aafa605ca1debf9e929c5b4ae3
Merge: 8d25829 9b294ec
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Sep 24 05:43:07 2013 -0700

    Merge pull request #55 from roji/normalization
    
    Lots of normalization

commit c8fb894864fbe0450a9348bb485349c6c12d09b2
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Sep 24 09:49:42 2013 +0300

    Fix TransactionScope-related bug
    
    Closed connection within an active TransactionScope wrongly got
    disposed, caused hangs in some cases.
    
    Introduced in ade62ad43e846fc15d1b5eda51460d496fd9e9b9, sorry.
    Unit test which reproduces this already exists, a bigger pull request
    will be submitted later.

commit 9b294eced16820e57f5f61127b66e982f7ff8f8e
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Sep 24 01:05:59 2013 +0300

    Ran all cs files through git stripspace
    
    - Remove trailing whitespace from all lines
    - Collapse multiple consecutive empty lines into one empty line
    - Remove empty lines from the beginning and end of the input
    - Add a missing \n to the last line if necessary.

commit b3d5979a1d5b6bea2085d442db85d78f1f16a310
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Sep 24 00:59:37 2013 +0300

    Normalized all tabs to 4 spaces

commit 790ab4dc85da5de7221fcd1764ca7989f22f9edd
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Sep 24 00:47:53 2013 +0300

    Added .gitattributes to normalize line endings

commit 5aaed35d685c632d92b649eb5312e00d35044d53
Author: Shay Rojansky <roji@roji.org>
Date:   Tue Sep 24 00:43:42 2013 +0300

    Normalized line endings CRLF->LF

commit 8d258299549441703cfd43a13b84809612c9c948
Merge: 46cae97 8e05232
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Sep 23 06:36:54 2013 -0700

    Merge pull request #33 from franciscojunior/bug-1011346-thread-synchronization
    
    [#1011346] BUGFIX: Thread synchronization inside GetPooledConnector
    
    Bug report link: http://pgfoundry.org/tracker/?func=detail&atid=590&aid=1011346&group_id=1000140

commit 46cae97fb46904fa9a3e980277871f8f8ae360af
Merge: ec3635d b3313da
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Sat Sep 21 13:17:27 2013 -0700

    Merge pull request #52 from glenebob/text_backend_encoding_ascii
    
    Lots of optimization.

commit b3313da689e6ceb0d66d314d82a7db7048ef1a18
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Sep 20 13:20:11 2013 -0700

    Cleanup
    
    Removed stored strings that weren't being used.
    Un-comment outputStream.Flush() in NpgsqlQuery, as the problem is not well understaood.
    Changed some labels to be a bit more readable.

commit 80101a659c6d10f0469f353e36195e7ce0d90ff5
Merge: 4290997 ec3635d
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Sep 13 22:39:29 2013 -0700

    Merge branch 'master' of https://github.com/franciscojunior/Npgsql2 into text_backend_encoding_ascii

commit ec3635de154b7570934f3bd12ace178809acb2cf
Merge: f4bb764 14d3f2c
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Sep 13 11:39:47 2013 -0700

    Merge pull request #47 from glenebob/parameter_functions
    
    NpgsqlParameterCollection

commit f4bb764171d1b19addc4d14a8f1e5c9a7072c00f
Merge: f55f653 505f36c
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Sep 13 10:40:39 2013 -0700

    Merge pull request #48 from glenebob/gitignore
    
    Gitignore update since @roji's tests work

commit 4290997c96eb8d3f4936510da5b04ad3a7d6ae82
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Sep 11 20:45:16 2013 -0700

    Optimization, cleanup
    
    Added PGUtil.WriteLimBytes().
    Fluentize the WriteLim*Functions.
    StartupPacket optimized, fluentized, and reformatted.
    More fluentization to FastPath.

commit 9fc4f56a6d54963b320bf8824fb292f467fce667
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Sep 11 17:29:09 2013 -0700

    Optimization
    
    Optimize NpgsqlCommand.GetParseCommandText(), minus the part that subs parameters (see TODO note).

commit 425dc468db777bb5371493d1b0405dd12b189bfb
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Sep 11 15:56:18 2013 -0700

    PGUtil
    
    PGUtil.Write*() functions are now extensions to Stream, and follow the fluent pattern.
    Many updates to use the new pattern.
    Also some reformatting.

commit 96aa2bb690030c4cbe8766a0e7e7d7e0e77c98fd
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Sep 11 12:32:37 2013 -0700

    Optimizations
    
    Move the UTF8Encoding.GetBytes()/GetString() into the types converters.
    Optimize some of the type converters, such as ByteArrayToByteaText*(), to avoid the UTF16 encoded Strings; memory used to text encode bytea is now cut in half.
    Optimize Bind, Parse, Execute, Describe by eliminating calls to UTF8Encoding.GetByteCount().
    Queries and text arrays are now built directly to byte[] (MemoryStream), since text parameters are now all returned as UTF8 encoded byte[].
    Remove numerous instantiations of UTF8Encoding in favor of one global instantiation.
    Added an enum of commonly used ASCII characters (as byte) to avoid repeatedly running the encoding on their char counterparts.
    Added some commonly used ASCII strings (as byte[]).

commit eeed7511661f2a868dc35ddc6f30381822afb23a
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Sep 1 12:57:17 2013 -0700

    Type converter changes
    
    Add binary backend codecs for text, float and double.
    Add relevent tests.
    Demote oid to 32 bits, per its actual size in PG.

commit 505f36c112c490e784d49dbe038fd0161715a754
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 30 14:42:50 2013 -0700

    Quieter again.

commit bfc8840b6d1f5cb1e3d20f9b7f9fe10bed04ece9
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 30 14:21:50 2013 -0700

    New tests, fix for text array encoding
    
    Added tests to beat up binary integer array handling.
    Refactored out some duplicated test code.
    Properly double-quote and escape array elements in extended query text array formatter.

commit 87cf63a937c8fc11a572a37facb44045e673f9c8
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 30 10:05:10 2013 -0700

    Killed two compiler warnings in testsuite.

commit 9bc64afb5359fe5eb7ddceb9c1153b4c9b8ba79d
Merge: a36f02c f55f653
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 30 09:57:42 2013 -0700

    Merge branch 'master' into binary_array_handling

commit f55f653c233600108ab88e31bf648e618973892d
Merge: 5f6fab8 7a8dde2
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Aug 30 05:25:38 2013 -0700

    Merge pull request #44 from roji/test_cleanup
    
    Unit test overhaul

commit 14d3f2c5e97bde2799bbc5db74366e13a549aeca
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Aug 29 16:29:30 2013 -0700

    NpgsqlParameterCollection
    
    Add some AddWithValue() functions.
    Updated comments on Add(string, object) to be more obviously obsolete.

commit 7a8dde22b28acfbefd6d36423c3f6d48f6e0e65e
Author: Shay Rojansky <roji@roji.org>
Date:   Wed Aug 28 09:34:59 2013 +0300

    Missing renames in test project files

commit a36f02ccf4093b578aaee44383583bdf3990f5ae
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 23 11:19:18 2013 -0700

    Binary array support
    
    Support arbitrary lower bounds in binary arrays.
    Evidentally, the null map flag isn't used at all in the frontend/backend binary array representation.
    Don't use PGUtil.WriteBytes(), because it appends a 0-byte.

commit c34c618ce5449349a66dab426154da4cc7d021aa
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Aug 22 13:40:35 2013 +0100

    Overhaul of unit tests for isolation/efficiency
    
    - The test database schema is now created when the first fixture runs,
      no more scripts
    - Each test is now responsible for loading whatever data it needs into
      the database.
    - All the different tables have been merged into one, called data.
    - The data table is truncated before each test runs.
    - We no longer create two connections for each test (v2, v3), only one
    - General all-around refactoring

commit 450fa62a6db4a185f995ffbcd23654f538ab6e16
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Aug 22 13:09:21 2013 -0700

    Binary array handling
    
    Add support for binary array backend encoding.
    Move OID type mapping from Connector to ConverterOptions, defaulting to
    null.
    Add supporting util functions, some of which are intended for use by future binary backend codecs.
    Change version on default oid type mapping to somethimg safer.
    Revert recent changes to EF code in favor of a now defaulted parameter,
    since EF doesn't know anything about it.

commit 5f6fab8ea69a6dbf9a63958de10d434fd361c14b
Merge: 5a1f88c 404a219
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Aug 22 14:07:15 2013 -0700

    Merge pull request #43 from roji/test_cosmetics
    
    Cosmetic fixes in unit tests
    
    * Converted tabs to spaces as per new .editorconfig
    * Removed empty lines
    * Introduced implicit var typing
    * Introduced using() in many instances
    
    No substantial change made to any test, same list of failing/passing tests

commit 8de4b2c03611c1d56dc5780a5cff6810f08e7e5c
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Aug 22 10:08:34 2013 +0100

    Upgraded to NUnit 2.6.2 via nuget

commit 72860a9a65babd9add3965b503537a48f458906b
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Aug 22 09:00:59 2013 +0100

    Reorganized tests directory structure
    
    * Moved NUnit tests to tests/ directory, next to src
    * Moved all other old tests to tests/old
    * Moved solution files outside of src to project root
      (in view of nuget usage)

commit 404a2197ff3b33ea4e788b2dac3d4d626f03a1ac
Author: Shay Rojansky <roji@roji.org>
Date:   Thu Aug 22 08:27:30 2013 +0100

    Cosmetic fixes in unit tests
    
    * Converted tabs to spaces as per new .editorconfig
    * Removed empty lines
    * Introduced implicit var typing
    * Introduced using() in many instances
    
    No substantial change made to any test, same list of failing/passing tests

commit 5a1f88c83bb60b43b746473244109dcb654302d9
Merge: 5b03dde 03f0b73
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Aug 21 10:05:39 2013 -0700

    Merge pull request #42 from glenebob/tests-2
    
    Test comments

commit 5b03dde126ea631a77a4d4cc5013676f929f1618
Merge: 48d7117 e2c769b
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Aug 20 10:48:08 2013 -0700

    Merge pull request #41 from glenebob/binay-backend-format
    
    Add Binary backend format support patch by Glen Parker
    
    Added infrastructure to enable binary backend formatting.
    Added binary conversion handlers for int2, int4, and int8.
    Merged existing bytea binary support into new infrastructure, making it transparent.
    Renamed some of the conversion functions to be more descriptive.
    Fix bug where all connectors were using the same type converter options object
    Add copy constructor to NativeToBackendTypeConverterOptions.
    Keep distinct options object, initially == default, per connector.
    Optimize away unneeded calls to UTF8Encoding.GetCharCount(), UTF8Encoding.GetChars, and new string(char[]) in favor of UTF8Encoding.GetString().
    
    Binary test updates …
    Add internal flag that fully suppresses binary backend parameter and result formatting.
    Add reflection-based code to set and observer this flag in the test suite.
    Add a test that reports failure to bind to the flag.
    Add a couple tests that suppress binary backend encoding to make sure text encoding is tested on types that support binasy encoding.

commit e2c769be799648764a25f70b3572dc2e89319412
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Aug 18 14:29:41 2013 -0700

    Error message typo fixed.

commit 7841a979944781ae52f2f8c98792338a36e8755d
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Aug 17 09:36:23 2013 -0700

    Remove incorrectly placed redundant code.

commit 7af1167cd1764049bd0bbc32d58582a9edf48231
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 16 13:23:09 2013 -0700

    Binary backend encdoding suppression
    
    Refactored a bit the binary backend suppression.
    Added back a test which can provide descriptive error information if init fails.
    Error handling in InitBinaryBackendSuppression() is improved by avoiding a nebulous "null reference" exception.

commit e7aac96d297750bed655ada812d9258e06b37b94
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Aug 15 13:42:01 2013 -0700

    Reworked again
    
    SetUp() is called before every test, which I did not realize.
    Now suppression initialization is called exactly once per fixture.

commit 4da4c12031b7abb17481ea2a37aa52de1df7b6e3
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Aug 14 18:26:39 2013 -0700

    Reworked the binary backend encoding suppression code some more.

commit 3d264ae265222fc08d32558669f65220728b4a43
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Aug 14 13:00:48 2013 -0700

    Fix typo'd boolean value.

commit 97c1c4a195fa86067560f71eb02d9e756369d4a3
Author: Glen Parker <glenebob@gmail.com>
Date:   Wed Aug 14 11:19:24 2013 -0700

    Simplified the backend binary suppression support code.

commit a2eca98427205a6b491d317289c851444dce0f3e
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Aug 13 18:05:03 2013 -0700

    Binary test updates
    
    Add internal flag that fully suppresses binary backend parameter and result formatting.
    Add reflection-based code to set and observer this flag in the test suite.
    Add a test that reports failure to bind to the flag.
    Add a couple tests that suppress binary backend encoding to make sure text encoding is tested on types that support binasy encoding.

commit 9207a3818970b652c359148020a815b6bd1f41cb
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Aug 13 10:09:57 2013 -0700

    Added comments explaining the UseConformantStrings flag in more depth.

commit 7609f249483f59592c250befc51160c18467c4ca
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Aug 13 09:45:15 2013 -0700

    Update/correct formatting on recently added functions.

commit 66b18dec7025336e1a4a4a90ffbffd575665d717
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 12 20:02:54 2013 -0700

    NpgsqlConnector
    
    Added warning comment about E string prefix.
    ProcessServerVersion() now private, per FIXME.

commit 03f0b7341a74ca9e491444ce4aab70fd19d0731c
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 12 17:25:24 2013 -0700

    Test comments
    
    Added clarifications.
    Removed comment thar makes a now false statement.

commit 50b3ba71d8c13322c372ccd6c236bfe9b1144cd2
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 12 13:42:05 2013 -0700

    Make NativeToBackendTypeConverterOptions immutable and IClonable, kill the copy constructor.

commit c24070a92c3ce5ba2a9555976892a0260e196126
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 12 12:26:43 2013 -0700

    Optimize away unneeded calls to UTF8Encoding.GetCharCount(), UTF8Encoding.GetChars, and new string(char[]) in favor of UTF8Encoding.GetString().

commit 9b3ff01953ac50c10c12642df0a61b42541816ba
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 12 12:24:56 2013 -0700

    Fix bug where all connectors were using the same type converter options object
    
    Add copy constructor to NativeToBackendTypeConverterOptions.
    Keep distinct options object, initially == default, per connector.

commit cf603b8cb086e14382c1cffd68b97ea7dd381efb
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Aug 10 15:39:43 2013 -0700

    Added binary boolean backend encoding.

commit de3e6703a7f4b675ecfa456fb1b537a047aaeeb3
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 9 17:00:17 2013 -0700

    Binary backend format support
    
    Added infrastructure to enable binary backend formatting.
    Added binary conversion handlers for int2, int4, and int8.
    Merged existing bytea binary support into new infrastructure, making it transparent.
    Renamed some of the conversion functions to be more descriptive.

commit 48d7117bcb52e79bf9815a646c696feea2deb761
Merge: 9a516ec da59294
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Aug 9 15:01:36 2013 -0700

    Merge pull request #38 from glenebob/native-backend-convert-2
    
    Big rewrite and optimization of code which converts data from Npgsql to Postgresql. Native to backend conversion code.
    
    Fixed BasicNativeToBackendTypeConverter.ToBinary() (broken in commit d2b636a): Reverted back to the correct "\" when escaping byte values.
    Added class BackendToNativeTypeConverterOptions to describe UseConformantStrings, Supports_E_StringPrefix and SupportsHexByteFormat. Maintain one on each connector for use during encoding.
    Push E string prefix and escaping logic down the conversion stack so that array elements can use the same logic.
    Only escape \ if the backend is expecting non conformant strings.
    Implement string escapes in a function rather than using multiple string.Replace() calls.
    Do all bytea string escaping in ToBinary(), and then do not escape its output again.
    Encode bytea data in the new hex format when possible (>= 9.0), which cuts some such strings in half.
    Don't use the E prefix if the backend doesn't understand it.
    Assume non conformant strings on all version 2 connections, since we can't track changes to the setting. The E prefix causes this to work if the backend is expecting conformant strings.
    Expose UseConformantStrings, Supports_E_StringPrefix and SupportsHexByteFormat via NpgsqlConnection.

commit da59294c0553e95ecb6ef6b0cbd605aa63e23ae3
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Aug 9 11:54:14 2013 -0700

    Change to verskon 8.1 for E string prefix support, per documentation.

commit 3813ad409d2d3f6c1dcf23b707db51c07ff17487
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Aug 6 12:47:45 2013 -0700

    I was able to improve speed performance of ToBinaryHexFormst() a little more.

commit dcfc8c10d29a12e11ff5df1aabe6b7cba3df7dda
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 18:54:20 2013 -0700

    Removed unneeded paramater.

commit 9a516ec8fbc39383ef54bce4ad1707d7740ce38d
Merge: b4377ca e14d09f
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Aug 5 18:29:52 2013 -0700

    Merge pull request #36 from glenebob/tests
    
    More tests for Byte[] and bytea support.

commit eed27c3b7c56323e573a557f00d36296f1017345
Merge: 5772ba6 b4377ca
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 18:22:36 2013 -0700

    Merge https://github.com/franciscojunior/Npgsql2 into native-backend-convert-2
    
    Conflicts:
    	src/NpgsqlTypes/ArrayHandling.cs

commit 5772ba6c628244f5e9357bafbe85e1c414f42f69
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 18:06:43 2013 -0700

    ToBinary() changes
    
    Replace BitConverter.ToString() with a custom implentation.
    In ToBinaryEscaped(), start the StringBuilder at the same length as the source array, not 5 times as long.

commit b4377ca39af94d53773a20e10feee28dedd10ecc
Merge: 88d4f14 6924a76
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Aug 5 17:53:35 2013 -0700

    Merge pull request #35 from skykiker/bugfix1
    
    Fix bug for array handling when prepared

commit c46a1737073434de5fa702d338ee159a51b74eb8
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 13:15:20 2013 -0700

    Remove change from github pull request https://github.com/franciscojunior/Npgsql2/issues/35

commit 8a44b9fd15fa38e74512ce9af407906b4c9b54aa
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 12:13:34 2013 -0700

    Fixed backward class name.

commit 7f6234ddf331c1d8db39c77c46a12f53641a4a08
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 11:30:15 2013 -0700

    Removed Debug.WriteLine().

commit 273d355573207756981e41452c553e5255ec9c03
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Aug 5 11:05:16 2013 -0700

    Native to backend conversion code
    
    Fixed BasicNativeToBackendTypeConverter.ToBinary() (broken in commit d2b636a): Reverted back to the correct "\" when escaping byte values.
    Added class BackendToNativeTypeConverterOptions to describe UseConformantStrings, Supports_E_StringPrefix and SupportsHexByteFormat.  Maintain one on each connector for use during encoding.
    Push E string prefix and escaping logic down the conversion stack so that array elements can use the same logic.
    Only escape \ if the backend is expecting non conformant strings.
    Implement string escapes in a function rather than using multiple string.Replace() calls.
    Do all bytea string escaping in ToBinary(), and then do not escape its output again.
    Encode bytea data in the new hex format when possible (>= 9.0), which cuts some such strings in half.
    Don't use the E prefix if the backend doesn't understand it.
    Assume non conformant strings on all version 2 connections, since we can't track changes to the setting.  The E prefix causes this to work if the backend is expecting conformant strings.
    Expose UseConformantStrings, Supports_E_StringPrefix and SupportsHexByteFormat via NpgsqlConnection.

commit e14d09fb792bd0289ca58541963e9b14a1f90441
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Aug 4 18:30:57 2013 -0700

    Tests
    
    Change to a large array of random bytes in ByteaaLargeSupport(); hopefully this will resolve the test failing on mono.
    Added another small bytea test.

commit 7cd5cae30855f88dcce73ae85f966c923f9cf721
Author: Glen Parker <glenebob@gmail.com>
Date:   Sat Aug 3 16:21:09 2013 -0700

    Unit tests
    
    Added soke tests.
    Fixed broken VS2012 test project file (was referring to 2010 Npgsql project).

commit 6924a7636bc34474edf86f001590ee94f316f738
Author: Chen Huajun <skykiker@gmail.com>
Date:   Wed Jul 31 13:03:30 2013 +0800

    Fix bug for array handling when prepared

commit 88d4f141551dcd2d97cb00a0108d702eb7a36950
Merge: e9723e3 625eda5
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Mon Jul 29 05:41:50 2013 -0700

    Merge pull request #32 from glenebob/master
    
    Warnings and .gitignore

commit 625eda50aeedcef06256b802732facb17f32fffd
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Jul 28 13:25:16 2013 -0700

    .gitignore
    
    Added nunit *.log

commit b87dd7805e13ed18659a66f0eff085a197495447
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Jul 28 12:00:16 2013 -0700

    .gitignore addition
    
    Added testsuite/obj/

commit 283018de5f1eb0e759f748a8a4438ffb3d21f92d
Author: Glen Parker <glenebob@gmail.com>
Date:   Sun Jul 28 11:33:34 2013 -0700

    Kill warnings
    
    Killed all warnings other than 1591 (Missing XML Comment on public thingy).
    Reformatted a few spots to comply with four column space indentation.

commit e9723e3999c2898ddbc45d1cc470204b12bc6b47
Merge: d7e04bd a2c5fd2
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Jul 26 14:55:58 2013 -0700

    Merge pull request #31 from roji/editorconfig
    
    Added .editorconfig file

commit d7e04bd5c5e1848bb35dd4d260de848de59d5bd4
Merge: ca3e4dc aa0a411
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Jul 26 13:05:30 2013 -0700

    Merge pull request #30 from glenebob/master
    
    Project/solution files for vs2012, .gitignore updates and changes to connection timeout handling.
    
    Adding project/solution files for VS2012 and .gitignore stuff.
    
    Improved the error handling in NpgsqlClosedState.Open().
    
    Changed connection timeout handling to take in consideration the time spent in the dns lookup as well as the time to connect to the many ips addresses which can be returned from this dns lookup.

commit aa0a41186f66b8f283bfc95042aabc54f94bb887
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Jul 26 12:56:51 2013 -0700

    Clean up
    
    Removed unneeded using System.Diagnostics.
    Camel casing.

commit 3028a6d5a7b756dc4a0d44296c63772df3da7941
Author: Glen Parker <glenebob@gmail.com>
Date:   Fri Jul 26 12:05:44 2013 -0700

    Connect timeout work
    
    < int > Int32.
    Rather than giving each socket connect all remaining time, split the remaining time between the remaining ip's.

commit d94d552ee16d1aae8a7574af11f45290d69ba274
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Jul 25 12:37:00 2013 -0700

    Format fix

commit 6db1eff93e5aa4d3d1a3fe9a0d901bbf4d12f055
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Jul 25 12:28:37 2013 -0700

    ConnectionTimeout work
    
    Use the Dns.BeginGetHostName() so we can respect ConnectionTimeout.
    Keep track of how much time is left to connect so that multiple timeout-able calls will not cause it to be exceeded.
    On timeouts, throw TimeoutException.
    Removed ResolveIPHost() as it's called only from one spot.
    Added a new dns timeout message to NpgsqlState.resx; not localized.

commit 0f9225931aac7888c10f6bffbd407b54e6b7542f
Author: Glen Parker <glenebob@gmail.com>
Date:   Thu Jul 25 10:31:33 2013 -0700

    Formatting corrections

commit a2c5fd25ba9d978ece3b17e855a5ab93bb51536d
Author: Shay Rojansky <roji@eaglets.co.il>
Date:   Wed Jul 24 08:01:39 2013 +0100

    Added .editorconfig file
    
    A pretty standard way of specifying project indentation and line
    terminators across editors: http://editorconfig.org/
    
    Set to 4 character space indentation, LF line terminator.

commit 58bf33436de072d9cb12f3db091bb8ba46bc89b5
Author: Glen Parker <glenebob@gmail.com>
Date:   Tue Jul 23 13:45:19 2013 -0700

    Reverted back to a single .gitignore file.
    
    Removed /src/.gitignore.
    Updated /.gitignore.

commit ae0512829d18b34e10da5fb8b355187fbef43f22
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Jul 22 14:30:44 2013 -0700

    Re-implemented the exception wrapper, but in a better way.

commit a0ad8a65917e6bd7fca10a2c917b399fc3ddfd7a
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Jul 22 10:00:22 2013 -0700

    Save last socket connect exception so it can be rethrown after all attempts have failed, wrapped in NpgsqlException.
    Removed try/catch construct around almost entire Open() function as it's not apparently needed anymore.

commit 7e8885189e903a6848de37dfcb946541d471217a
Author: Glen Parker <glenebob@gmail.com>
Date:   Mon Jul 22 09:22:10 2013 -0700

    Added Visual Studio 2012 project and solution files.
    .gitignore goodness.

commit 8e05232bb780a811c1d9184fa2261f2a6ea9a352
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Fri Jul 19 15:45:40 2013 -0300

    [#1011346] BUGFIX: Thread synchronization inside GetPooledConnector
    
    Reworked UngetConnector to remove the connector from the Busy queue and add to the Available queue under the same lock.
    
    Thanks Ilya G for the heads up.

commit ca3e4dc4c2b3f866d2e28caad80e35a20cb71f7a
Merge: 0a63b88 1015859
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed Jul 17 07:05:22 2013 -0700

    Merge pull request #27 from dreamlax/master
    
    Replace Mono SslClientStream with .NET SslStream to fix SSL-related errors
    
    Initial fix of the feature requests:
    
    [#1000445] Single npgsql.dll
    http://pgfoundry.org/tracker/index.php?func=detail&aid=1000445&group_id=1000140&atid=593
    
    and
    
    [#1005312] Remove dependency toward Mono.Security.dll
    http://pgfoundry.org/tracker/index.php?func=detail&aid=1005312&group_id=1000140&atid=593

commit 0a63b88ccfd6f21db5119e1c9664a109985395e6
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Fri Jul 5 17:28:36 2013 -0300

    Fixed strange + sign which appeared in last commit.

commit b07ae852566a4ff62d005e1dbff60ceccda597b8
Merge: 3ba5213 f8a82fa
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Fri Jul 5 13:25:32 2013 -0700

    Merge pull request #28 from cody82/master
    
    Boolean constants converted to ETRUE instead of TRUE.
    
    This fixes a regression caused by https://github.com/magnitudo/Npgsql2/commit/864c2e937dffb8e0159a417edb42324677c1d05b

commit f8a82fadc9e9f5d6c95988020232107f62e83d2d
Author: cody82 <sebastian.kotulla@gmail.com>
Date:   Thu Jul 4 10:40:21 2013 +0200

    Bugfix: Boolean constants converted to ETRUE and EFALSE instead of TRUE and FALSE.
    
    Error output of EdmGen:
    
    EdmGen for Microsoft (R) .NET Framework version 4.5
    Copyright (C) Microsoft Corporation. All rights reserved.
    
    Loading database information...
    error 6003: Fehler beim Ausführen der Befehlsdefinition. Weitere Informationen finden Sie in der internen Ausnahme.
            FEHLER: 42703: Spalte »etrue« existiert nicht
    
    Generation Complete -- 1 errors, 0 warnings

commit 101585999206218e7c09b7b25e57a6d2d0b789da
Author: Dave Geering <dlgeering@gmail.com>
Date:   Sat Jun 29 02:19:22 2013 +1200

    Replaced SslClientStream with .NET SslStream
    
    This change fixes an issue when connecting to a PostgreSQL database
    configured to accept connections only with a valid client certificate.
    With Mono's SslClientStream, an encryption error would occur when trying
    to connect. WIth .NET's SslStream, the connection can be successfully
    opened. The Mono-based callbacks have been marked "Obsolete". The newer
    ValidateRemoteCertificateCallback is used automatically if it is
    provided.

commit 3ba521307c9e08da0686728a7edd6f95a6f22210
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Fri Jun 28 09:35:37 2013 -0300

    Fixed assembly version to the correct value of 2.0.13 beta 1.
    
    Internally the version numbers of the beta are coded with a vlue
    starting with 1x.9x where 12.91 is beta1, 12.92 is beta2 to indicate it is close
    to the final release 13.0. Incorrectly I used a wrong value.

commit 8374f6056a0524233fef7ed84966b11a0e454b56
Merge: 7f81dc0 43d81fb
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Thu Jun 27 20:21:44 2013 -0700

    Merge pull request #26 from jbcooley/master
    
    Update to policy file for 2.0.13 beta 1

commit 43d81fb8a19218fee4064cf408382eba56c1b9be
Author: Josh Cooley <jbnpgsql@tuxinthebox.net>
Date:   Thu Jun 27 22:14:48 2013 -0500

    Updated to Npgsql 2.0.13 beta 1 (2.0.13.91) release.

commit 7f81dc06e3a6696bda127f3646b8245567a059e8
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu Jun 27 23:36:03 2013 -0300

    Updated ReleaseNotes and Changelog file for 2.0.13 beta1 release.

commit 5215c273c6e7869107cf9023675465de37d30501
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu Jun 27 23:22:00 2013 -0300

    Updated AssemblyInfo version for 2.0.13 beta1 release.

commit 7fbbffca5cd39063739202418131352a00b3820f
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Tue Jun 25 13:43:22 2013 -0300

    Fix SimpleTransactionScope* tests when running on Mono version below 3.0
    
    Mono below 3.0 doesn't implement the transaction methods and so the code which checks for the added row was incorrectly being run.

commit ff0a4b905e5b0f7a9c505b1ca7c7a366673d358b
Author: Kevin Pullin <kevin.pullin@gmail.com>
Date:   Mon Jun 24 20:43:27 2013 -0700

    Reapplied ConnectionStringBuilder caching update

commit c8fe8e544801fad4e8d01d80d8dddaf82a2d8708
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon Jun 24 14:56:20 2013 -0300

    Modified last commit to not use a new connection.

commit 436d5b569050e1461d530bada3361c8b32c402eb
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon Jun 24 14:33:42 2013 -0300

    Fixed SimpleTransactionScope* methods to clean up data left in the tests.
    
    The data left in the tests were giving problems when the tests are run again.

commit 8af98d9965761723dd079adf59e02dad8df71c11
Author: yfakariya <yfakariya@gmail.com>
Date:   Sun Jun 9 01:19:44 2013 +0900

    Fix ParameterMarkerFormat value of the schema collection is not valid.
    
    Conflicts:
    	testsuite/noninteractive/NUnit20/ConnectionTests.cs

commit 30bcf4695304cc922c2939723bf1dda325fb3059
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Sat Jun 15 22:13:32 2013 -0300

    Developers should use NuGet to get EntityFramework.dll assembly for EF6
    support.

commit 63af6457c167d93163a772662f9fe8057d866b08
Author: Pēteris Ņikiforovs <p@mak.id.lv>
Date:   Sat May 4 12:25:00 2013 +0300

    Created a new project for Entity Framework 6 which uses the new namespaces

commit e6f6cf78e6b5a278319586604bae191902515a77
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon Jun 10 22:38:08 2013 -0300

    Add connection state change events for close and open. Thanks
    https://github.com/pdonald and https://github.com/maxbundchen for the
    patch.
    
    Npgsql didn't have connection state change events. According to
    maxbundchen: "the EF6 depends on open/close events in some cases (like
    update or insert) and Npgsql don't trigger this ones."
    https://github.com/franciscojunior/Npgsql2/pull/19#issuecomment-17627188
    
    Added tests about those events.

commit 17ad6263ceae23988a345a503807eab468a5147e
Merge: e3622de 183ed02
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Tue Jun 11 17:34:46 2013 -0700

    Merge pull request #24 from yfakariya/fix-policy-dll
    
    Policy DLL on NuGet package is not valid.

commit 183ed021bf59908238d34ef94ea597ba9a34921f
Author: yfakariya <yfakariya@gmail.com>
Date:   Tue Jun 11 23:20:54 2013 +0900

    Fix policyFileBuild.bat to be runnable in vs2010 dev env.

commit 1f4d6110fb89bb71ba057b9516f6dde1db8ecf22
Author: yfakariya <yfakariya@gmail.com>
Date:   Mon Jun 10 00:14:05 2013 +0900

    Fix policy-dll is always generated for clr4.

commit e3622de286d876a84869d7ddefdd563256f0ed0e
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon Jun 3 21:18:59 2013 -0300

    Fixed a little typo.

commit ed46f8d1950a5c46ad1f89f833c8c95abe7fa0cb
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Sat Jun 1 20:13:51 2013 -0300

    Added testcase based on bug report "[#1011085] Money format is not set in
    accordance with the system locale format"

commit f51b38cf51472d19a8873d986531359a7de3827c
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Sat Jun 1 15:00:40 2013 -0300

    Fixes [#1011267] and [#1011085]. Fixes problems with money support.
    
    Negative money support and other bugs were caused by representation format
    differences caused by the culture configured for the server. By forcing a
    culture agnostic format, we get a consistent behavior. From now on,
    Npgsql uses the 'C' locale for monetary.

commit 65fd96a72a63343bc5aae82eb58227f28dc7d032
Author: davidrowley <dgrowley@gmail.com>
Date:   Fri May 31 08:45:52 2013 +1200

    Tidy up of new test functions
    
    Renamed the 3 new test functions to give them more suitable names. Also
    added comment to explain why a domain is created to test the
    DataTypeName field. I would have guessed that we could see this
    populated by violating a NOT NULL constraint on a table's column, but
    this does not seem to be the case.

commit b26a430fba2a52fb460879ee882bce96ae666e3b
Author: davidrowley <dgrowley@gmail.com>
Date:   Fri May 31 08:35:21 2013 +1200

    Fix missing [Test] clauses from newly added test
    
    Also for the unique violation test I've added some asserts to ensure
    that the data type and column name are empty. These are not populated
    for unique violations, originally I removed the tests but on after
    thought it's probably better to ensure that they're empty strings.

commit ad4a59886d721001e5b5487df627e9652ec1947f
Author: davidrowley <dgrowley@gmail.com>
Date:   Thu May 30 13:40:22 2013 +1200

    Renamed newly added file and added copyright
    
    Renamed Exception.cs to ExceptionTests.cs and added copyright notice to
    the top of the file

commit 0a75dce32d26788a403844b9af221f3100d7dd0d
Author: davidrowley <dgrowley@gmail.com>
Date:   Thu May 30 06:47:00 2013 +1200

    Fixed wrong assumptions about new Exception Tests
    
    After reading the source code of PostgreSQL9.3, it seem that only
    certain errors relating to domain types will populate the DataTypeName
    field. This commit adds 2 new tests. 1 to test for the column name, as
    the previous uniqueviolation did not show the column name which unique
    constraint was violated. Perhaps this has to do with the fact that
    unique constraints can exist for >1 column. Test 2 checks the
    datatypename after a domain's NOT NULL constraint is violated.
    
    I've not yet run the tests. Though I did compare after setting psql \set
    VERBOSITY verbose

commit 99c48ead03fa976720d38722479283e82e6a6389
Author: davidrowley <dgrowley@gmail.com>
Date:   Wed May 29 14:57:59 2013 +1200

    Adds new test for newly added exception fields
    
    This code is untested as I've not yet worked out how to run the test
    suit.
    The constant values in the Assert.AreEqual() calls may need tweaked.
    The prime purpose of the patch is to test that the fields are properly
    being populated. There is no need to also test things like foreign key
    violation as its testing the same code in Npgsql.

commit d411ab516516fcefe63fb2d4f8f5827deca35eb3
Author: davidrowley <dgrowley@gmail.com>
Date:   Wed May 29 13:25:56 2013 +1200

    Add support for new error fields added in PostgreSQL 9.3
    
    This makes the new error information available in the Exception class
    which allows the calling code to, for example see which constraint would
    be violated by the request.
    See PostgreSQL commit message for more details on what extra information
    is available and when. This commit only captures the extra information
    when it's there.
    
    http://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=991f3e5ab3f8196d18d5b313c81a5f744f3baaea

commit 8780b65d9a20d47078e4a1605f34e9db98c2ac8a
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu May 30 12:00:27 2013 -0300

    Added [Ignore] to some tests which weren't working. Thanks Shay for
    feedback. See Pull Request 18.
    
    A lot of tests were not working and based on Shay's feedback
    https://github.com/franciscojunior/Npgsql2/pull/18 those [Ignore] flags
    were added in order to get all tests green. Those failing tests were
    giving us trouble to identify regressions.

commit 2991fc6dcd284c8ba2aee21dd7766c1fd329c26d
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Fri May 24 23:01:49 2013 -0300

    Changed NAnt build file to use App.config when running nunit tests. Also
    removed a trailing semicolon from the tests settings which was causing
    problems.
    
    By making NAnt use App.config file, Npgsql tests run either by NAnt
    console project file or by running nunit inside IDE (like Xaramrin
    Studio) will use the same file and changes will be reflected in both.
    Before that NAnt was using different files.
    
    A trailing semicolon in the app settings config for connection string
    was making Npgsql throw exceptions about bad formatting.

commit 3b921ae5671612ec27e0a442c45f43195a169f43
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu May 23 10:26:38 2013 -0300

    Fixed tests when running under mono.
    
    All transaction related tests were failing under Mono. A
    NotImplementedException was being raised. Now, those exceptions are
    catch and ignored so tests don't return errors.

commit 52952e1dc47b215fb24b0e04c25824c9fce69702
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu May 23 00:13:02 2013 -0300

    Fixed connection tests so they don't start to raise errors about
    too many used connections.
    
    Postgresql has a limit of max connections allowed. This fix keeps the
    connection usage inside the max value of connections in the pool which
    is 20. This way tests won't start raising errors about too many used
    connections

commit 1c561096d884047e07febe0d9d5ae3887deeed03
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 20 11:11:20 2013 -0300

    Fixed nunit assembly paths of NunitTests2010 project.

commit 52a6e1978d394fcc4b3302141dcc6e22ba47c122
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 20:56:49 2013 -0300

    Added conditional #ifdef ENTITIES to nunit tests related to EF. See
    https://github.com/franciscojunior/Npgsql2/pull/6 for more information.

commit c94a45b19de14e7fe0aa5afbf234e2c4ebcf54a4
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 20:49:53 2013 -0300

    Fixed more Monodevelop configurations mismatch. Mono-Debug, Release and
    Mono-Release. Last fix was only for Debug

commit 488d387c2b523f7cca331851b7a89a646870c3ce
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 14:59:35 2013 -0300

    Added some paths created by VS.Net to be ignored

commit 6eb3dc29d0cd706c04fc6b8ef42942aede622fc4
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 14:48:54 2013 -0300

    Fixed configuration mapping between solution file and project files on Monodevelop.
    
    Monodevelop was complaining about configurations mismatch. I redid the configuration matching and everything was ok again.

commit 3c415a7ab32dc4021e8397d156ec881e79e09925
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 14:42:15 2013 -0300

    Changed project settings to compile a library instead of executable.

commit 20fd444bc9df6f0f91aefa07802d1ec56a6d93ec
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 14:38:49 2013 -0300

    Merged https://github.com/franciscojunior/Npgsql2/pull/6 from roji.
    
    Pull origin: https://github.com/roji/Npgsql2.git branch xbuild
    
    Original commit message:
    
    Added Mono-Debug and Mono-Release msbuild configuration for use with xbuild
    
    Appears to build just fine! I also tried to muck around with MonoDevelop but it has some trouble with the EmbeddedResources, will try to take a look (less important). This could be a first step for getting rid of both the NAnt and the mdp/mds...
    
    Note that the unit test project doesn't build on Windows, seems like these need to be cleaned up
    : error CS2001: Source file xmlModel/XmlTest.ObjectLayer.cs' could not be found
    : error CS2001: Source filexmlModel/XmlTest.Views.cs' could not be found

commit 06c3aca239ce16388c6b78b3380832e3c733ee2c
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Mon May 13 11:29:52 2013 -0300

    Removed a line with a GUID value which was causing problems to be open by Monodevelop.
    
    More info about this problem can be found at: https://github.com/mono/monodevelop/pull/232

commit 3072ed30ec47ca56f473fce42694e5da04a769d8
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Sat May 11 14:13:23 2013 -0300

    Added Monodevelop per user  settings file to list of ignored files.

commit 62afedfd2fe4e5986493270ae817601735243409
Author: Francisco Figueiredo Jr <francisco@npgsql.org>
Date:   Thu May 9 10:53:25 2013 -0300

    Added ignored files.

commit 689e9ceeb10bd08b89acc2f32873daf3d7f21a9d
Merge: 3eb3685 59c4735
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed May 8 08:19:12 2013 -0700

    Merge pull request #17 from roji/bug1011001
    
    [#1011001] More consistent key/value parsing in NpgsqlConnectionStringBuilder.

commit 3eb36852c7091b610e5b2dfc3b82d73a0db2c668
Merge: f3eb384 bc6c3cf
Author: Francisco Figueiredo Jr. <francisco@npgsql.org>
Date:   Wed May 8 07:21:37 2013 -0700

    Merge pull request #16 from roji/decouple_pool
    
    Refactored pool/connection + pool timer on demand

commit 59c4735879702cb3f52f0e81ad906bc917fcccc0
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Apr 13 17:47:28 2013 +0300

    More consistent key/value parsing in NpgsqlConnectionStringBuilder
    
    .NET's DbConnectionStringBuilder, which NpgsqlConnectionStringBuilder extends,
    trims strings values and discards pairs with empty ones. However, NCSB's setter
    behaved differently, adding empty strings, leading to inconsistent behavior
    (bug #1011001).
    
    Modified NCSB's behavior to be consistent with DCSB - trim and discard empty.

commit 2d130517a32288e9979ec0394a72da12a7ad3dd5
Author: Shay Rojansky <roji@roji.org>
Date:   Sat Apr 13 17:11:21 2013 +0300

    Indentation and empty newlines in StringBuilder

commit bc6c3cf2646838bd2c0dfb22bb4d8c77689d427d
Author: Shay Rojansky <roji@roji.org>
Date:   Fri Apr 12 17:30:32 2013 +0300

    Refactored pool/connection + pool timer on demand
    
    - Allocating of non-pooling connections was being done
      in NpgsqlConnection, moved that code to NpsqlConnection.
    - Since the pool's timer was being started statically,
      opening a non-pooling connection would start the pool's timer
      (bug #1011326).
    - The pool's timer is now started on the demand, when a pooled
      connection is first requested. When no more connections remain,
      the timer is stopped.

commit f3eb38492b3bdcc08858e09c0968a6dccd46815e
Author: fxjr <>
Date:   Fri Apr 5 13:19:41 2013 +0000

    Added tests for BitString based on bug [#1011321] Wrong BitString value.

commit 557fccd2d94e9f2baa45dce6ea7b1f724cc10eed
Author: fxjr <>
Date:   Fri Apr 5 13:09:43 2013 +0000

    [#1011321] Wrong BitString value. Thanks Jon Hanna for patch and support.
    
    Jon Hanna also fixed another problem with the constructor of BitString which wasn't handling a case where the number of bits allocated were being rounded up to the nearest multiple of 32. So, to represent 35 bits, BitString was allocating 64. Thanks Jon for this fix.

commit ead830bd431ba5da9ecebf38f2d98c7db2c3348e
Author: fxjr <>
Date:   Sun Mar 31 16:33:08 2013 +0000

    [#1011325] Escaped strings don't work with EF. Thanks  Andrey Polyakov for patch and tests.
    
    Npgsql had a problem when hadling strings with escaped strings. This patch adds the proper syntax in order for this to work correctly. Check https://github.com/franciscojunior/Npgsql2/pull/10 for more info about this fix.

commit fae7f2ca4532ca68f4ed1336d25880798e48c0fd
Author: fxjr <>
Date:   Sat Mar 23 16:08:03 2013 +0000

    Implements DateTime canonical functions for EntityFramework. Thanks Andrey Polyakov for patch.
    
    See https://github.com/franciscojunior/Npgsql2/pull/10 and https://github.com/magnitudo/Npgsql2/commit/b922eee2839e9cf2ae33f5241e0d8721bb4a9113 for more information.

commit 4dd1a9b7397ef47c96c4b790aa0a9f663a5ff9e8
Author: fxjr <>
Date:   Sun Mar 10 17:34:46 2013 +0000

    Changed variable name as per patch request.

commit d999e45e4376877494f9c7687430924195280f04
Author: fxjr <>
Date:   Sun Mar 10 17:31:05 2013 +0000

    [#1011136]
    [#1011302]
    Applied patch [#1011316] ConnectionTimeout fix, bypass the 2147 seconds limit of Socket.Poll method. Thanks Tasos Mamaloukos for patch.
    
    Npgsql wouldn't allow a timeout higher than 2147 seconds. This patch fixes this limitation.

commit 5d5e42bb1a68ab993ca0a43c81e5fcd79f82ab64
Author: fxjr <>
Date:   Wed Feb 27 13:06:29 2013 +0000

    [#1011310] Command timeouts after the first are not handled. Applied patch [#1011311]. Thank you, Evan Martin, for bug report and patch!
    
    When a command inside a transaction times out the caller may roll back to a savepoint and try again. This works OK the first time. The second time it appears to work, but the rollback takes a long time. On the third attempt the command returns an empty result set. The attached console app reproduces the problem. On investigation, it appears that Npgsql is not cancelling any command after the first, once NpgsqlConnector.CancelRequestCalled is true.

commit ade62ad43e846fc15d1b5eda51460d496fd9e9b9
Author: fxjr <>
Date:   Sat Feb 16 21:40:15 2013 +0000

    Applied Shay Rojansky patch. [#1011305] Scope without prepared transactions. Check https://github.com/franciscojunior/Npgsql2/pull/8 for more info.

commit 78ec5ebcf03c7d5572ad2a411eaa594152f2ffc9
Author: fxjr <>
Date:   Sun Nov 18 14:23:45 2012 +0000

    Fixed possible datareader leak if the test fail. The datareader wouldn't be closed until it was collected.

commit c99438a7e6434cce191c7475057a7b615a1a8b2c
Author: fxjr <>
Date:   Sat Nov 10 00:17:28 2012 +0000

    [#1011271] NpgsqlSchema: Use InvariantCulture on all return DataTables with schema data.
    Thanks Oskar Berggren for patch. Also check https://github.com/franciscojunior/Npgsql2/pull/1 for the patch.

commit 94e64258f882173351975ae92eb068dca5c92582
Author: fxjr <>
Date:   Sun Nov 4 23:09:33 2012 +0000

    Fixed test data insertion and function creation script. Thanks Shay Rojansky for patches. See https://github.com/franciscojunior/Npgsql2/pull/7 for more information.

commit 142afd74f41f719b54d7e4e54a775e3b2ef17a92
Author: fxjr <>
Date:   Fri Sep 14 03:20:59 2012 +0000

    Fixed connection leaks.

commit bb771a0c6ba86598c13e3973c4507474030a40af
Author: fxjr <>
Date:   Fri Sep 14 03:18:46 2012 +0000

    Fixed more connection leaks in the tests.

commit 1f672d3c87eef117acbab3aec589ffba605d478b
Author: fxjr <>
Date:   Fri Sep 14 02:36:16 2012 +0000

    Fixed more connection leaks in the tests.
    
    Added some more tests.

commit 1a6bd466a47fb179e548181621f54aff4471c572
Author: fxjr <>
Date:   Fri Sep 14 02:07:30 2012 +0000

    Fixed some connection leaking tests.
    
    Added more datatype tests.
Powered By FusionForge