Skip to content

Commit 84d4b1f

Browse files
author
Robert Stam
committed
Added 1.8.2 change logs.
1 parent 9d5806b commit 84d4b1f

File tree

3 files changed

+199
-1
lines changed

3 files changed

+199
-1
lines changed

CSharpDriver-2010.sln

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
Microsoft Visual Studio Solution File, Format Version 12.00
3-
# Visual Studio 2010
3+
# Visual Studio 2012
44
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MongoDB.Bson", "MongoDB.Bson\MongoDB.Bson.csproj", "{0E9A3A2A-49CD-4F6C-847C-DC79B4B65CE6}"
55
EndProject
66
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MongoDB.BsonUnitTests", "MongoDB.BsonUnitTests\MongoDB.BsonUnitTests.csproj", "{10A5FAC2-E26F-4726-B888-26D5B849F805}"
@@ -38,6 +38,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Release Notes", "Release No
3838
Release Notes\Change Log v1.8-Driver.txt = Release Notes\Change Log v1.8-Driver.txt
3939
Release Notes\Change Log v1.8.1-Bson.txt = Release Notes\Change Log v1.8.1-Bson.txt
4040
Release Notes\Change Log v1.8.1-Driver.txt = Release Notes\Change Log v1.8.1-Driver.txt
41+
Release Notes\Change Log v1.8.2-Bson.txt = Release Notes\Change Log v1.8.2-Bson.txt
42+
Release Notes\Change Log v1.8.2-Driver.txt = Release Notes\Change Log v1.8.2-Driver.txt
4143
Release Notes\Release Notes v0.11.txt = Release Notes\Release Notes v0.11.txt
4244
Release Notes\Release Notes v0.7.txt = Release Notes\Release Notes v0.7.txt
4345
Release Notes\Release Notes v0.9.txt = Release Notes\Release Notes v0.9.txt
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
BSON library changes from 1.8.1 to 1.8.2
2+
3+
BsonBinaryWriter.cs
4+
added cached strict UTF8Encoding instance
5+
6+
BsonBuffer.cs
7+
WriteCString now throws if value contains nulls
8+
9+
BsonWriter.cs
10+
WriteName now throws if name contains nulls
11+
12+
ConventionProfile.cs
13+
GetNewConventions now appends the DefaultConventionPack
14+
15+
StandardDiscriminatorConvention.cs
16+
Constructor now throws if elementName contains nulls
17+
18+
ArraySerializer.cs
19+
EnumerableSerializer.cs
20+
QueueSerializer.cs
21+
ReadOnlyCollectionSerializer.cs
22+
StackSerializer.cs
23+
These classes are all now implemented in terms of EnumerableSerializerBase
24+
25+
EnumerableSerializerBase.cs
26+
New base class containing optimizations applicable to many enumerable serializers
27+
Only lookup serializer for nominalType once
28+
Only lookup serializer for runs of the same actualType once
29+
Don't bother with discriminatorConventions for value types because they can't have subclasses
30+
Subclasses implement abstract methods: AddItem, CreateInstance, EnumerateItemsInSerializationOrder and FinalizeResult
31+
32+
ThreeDimensionalArraySerializer.cs
33+
TwoDimensionalArraySerializer.cs
34+
These classes have been optimized individually with optimizations similar to those in the new EnumerableSerializerBase class
35+
36+
BsonClassMap.cs
37+
Freeze now freezes the declared member maps also
38+
39+
BsonMemberMap.cs
40+
added Freeze method
41+
add SetDefaultValue overload that takes a delegate to create new instances of default values (important if default value is mutable)
42+
SetElementName now throws if elementName contains nulls
Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
C#/.NET driver changes from 1.8.1 to 1.8.2
2+
3+
ConnectedInstancesCollection.cs
4+
Removed GetPrimary method (no longer used, replace by _primary field in ReplicaSetMongoServerProxy)
5+
GetPrimaryAndSecondaries is now passed in the current primary
6+
7+
DirectMongoServerProxy.cs
8+
Added ProxyType property
9+
10+
DiscoveringMongoServerProxy.cs
11+
Added ProxyType property
12+
Added ReplicaSetName property
13+
Added internal WrappedProxy property
14+
15+
IMongoServerProxy.cs
16+
Added ProxyType property
17+
18+
MongoServerProxyType.cs
19+
New enum that represents the proxy types
20+
21+
MultipleInstanceServerProxy.cs
22+
Added abstract ProxyType property
23+
Added virtual ProcessDisconnectedInstanceStateChange method
24+
ProcessInstanceStateChange now calls ProcessDisconnectedInstanceStateChange when appropriate
25+
26+
ReplicaSetMongoServerProxy.cs
27+
Added _primary field to track the current primary reliably
28+
Added Primary property
29+
Added ProxyType property
30+
ChooseServerInstance now uses the new _primary field
31+
Added ProcessDisconnectedInstanceStateChange to set _primary to null if primary disconnects
32+
ProcessConnectedPrimaryStateChange now sets the new _primary field
33+
ProcessConnectedPrimaryStateChange now unsets the Primary flag on the old primary when a new primary is discovered
34+
35+
ShardedMongoServerProxy.cs
36+
Added ProxyType property
37+
38+
WindowsGssapiImplementation.cs
39+
Transition step no longer checks the server response length when running on Windows XP (to work around an XP issue)
40+
41+
MongoCRAuthenticationProtocol.cs
42+
Authenticate uses new private RunCommand method
43+
Added private RunCommand method
44+
45+
SaslAuthenticationProtocol.cs
46+
Authenticate uses new private RunCommand method
47+
Added private RunCommand method
48+
49+
MongoConnection.cs
50+
Removed RunCommandAs method to simplify MongoConnection class
51+
SendMessage is now only responsible for sending the message (WriteOperation handles the WriteConcern)
52+
53+
MongoServerInstance.cs
54+
Added internal UnsetPrimary and UnsetPrimarySecondary helper methods
55+
LookupServerInformation uses the new private RunCommandAs method
56+
Ping uses the new private RunCommandAs method
57+
Ping calls UnsetPrimaryAndSecondary if Ping fails
58+
Added private RunCommandAs helper method
59+
60+
MongoGridFS.cs
61+
Removed fields that referenced a MongoDatabase or MongoCollection so MongoGridFS is more independent of those classes
62+
Added _databaseName field
63+
Added _server field
64+
Modified constructors to reflect new and removed fields
65+
Added DatabaseName property
66+
Added Server property
67+
Added private ApplyDefaultValues, GetDatabaseName and GetServer helper methods
68+
AppendText now uses RequestStart
69+
Create and CreateText now uses RequestStart
70+
Delete now uses RequestStart
71+
EnsureIndexes no longer uses the IndexCache (which was removed)
72+
Find and FindOne now use RequestStart
73+
Open, OpenRead, OpenText and OpenWrite now use RequestStart
74+
Added several new internal and private helper methods
75+
76+
MongoGridFSFileInfo.cs
77+
Added _server field to track which cluster the file info was fetched from
78+
Added _serverInstance field to track which instance the file info was fetched from
79+
Added _databaseName field to specify which database holds the GridFS collections
80+
Added _settings field to hold the settings (so we can drop the reference to a MongoGridFS instance)
81+
Removed _gridFS field
82+
Modified construtors accordingly
83+
Added DatabaseName property
84+
Added GridFSSettings property
85+
Added Server and ServerInstance properties
86+
Added several new internal and private helper methods
87+
CopyTo now ensures that we are using the primary instance
88+
Delete now ensures that we are using the primary instance
89+
MoveTo now ensures that we are using the primary instance
90+
Refresh now uses RequestStart
91+
Added several new internal and private helper methods
92+
93+
MongoGridFSSettings.cs
94+
Added more settings (they used to be fetched from the database settings but we don't want a reference to a database any more)
95+
Added internal ApplyDefaultValues helper method
96+
97+
MongoGridFSStream.cs
98+
removed reference to MongoGridFS object
99+
AddMissingChunks now uses RequestStart
100+
LoadChunk and LoadChunkNoData now uses RequestStart
101+
OpenAppend, OpenCreate and OpenTruncate now uses RequestStart
102+
SaveChunk now uses RequestStart
103+
UpdateMetadata now uses RequestStart
104+
Added several new internal and private helper methods
105+
106+
ExpressionNormalizer.cs
107+
VisitBinary now normalizes VB comparisons to Nothing
108+
109+
PredicateTranslator.cs
110+
BuildInQuery now handles ICollection<> as well as classes that implement ICollection<>
111+
112+
BsonSerializationInfoHelper.cs
113+
GetItemSerializationInfo handles ArraySerializationOptions specially
114+
115+
Operations classes
116+
A set of new classes that holds the basic logic for insert, update, remove and commands
117+
118+
CanCommandBeSentToSecondary.cs
119+
This class used to be in MongoCursorEnumerator but now is in its own file
120+
121+
IndexCache.cs
122+
This class has been removed
123+
We now always let the server decide if the index already exists or not
124+
125+
MongoCollection.cs
126+
Removed _commandCollection field
127+
Changed various methods to use the new RunCommandAs helper method
128+
Obsoleted CreateIndex overloads (use EnsureIndex instead)
129+
Changed non-generic Geo methods to Invoke the generic method
130+
Changed InsertBatch to use new InsertOperation
131+
Changed Remove to use new RemoveOperation
132+
Changed Update to use new UpdateOperatiion
133+
Reimplemented RunCommandAs helper method to use new CommandOperation
134+
135+
MongoCredential.cs
136+
CreateGssapiCredential now uses an instance of ExternalEvidence instead of null
137+
138+
MongoCursor.cs
139+
GetEnumerator now uses the new QueryOperation
140+
Added MongoCursorConnectionProvider nested class for use with QueryOperation
141+
142+
MongoCursorEnumerator.cs
143+
Moved static CanCommandToBeSentToSecondary class to its own file
144+
MongoCursorEnumerator class is no longer used by the driver but is kept for backward compatibility
145+
146+
MongoDatabase.cs
147+
Removed _commandCollection field
148+
Changed various methods to use new RunCommandsAs helper method
149+
Reimplemented RunCommandAs helper method to use new CommandOperation
150+
151+
MongoServer.cs
152+
Removed _indexCache field
153+
Reimplemented Primary property to be more robust
154+
Fixed ReplicaSetName property to work when using DiscoveringMongoServerProxy

0 commit comments

Comments
 (0)