PostSharp – Release Notes

In this document

Documentation

For documentation and installation instruction, see http://doc.postsharp.net/.

What's New?

If you're looking for a high-level overview of new features, see http://doc.postsharp.net/whats-new.

Requirements

Development Workstations

The current release requires the following software packages on development machines:

Build Servers

End-User Devices

Different components of PostSharp are compatible with different end-user devices:

Component .NET Framework Windows (WinRT) Windows Phone (Silverlight) Windows Phone (WinRT) Silverlight
PostSharp 3.5 SP1, 4.0, 4.5 8.0, 8.1 8.0, 8.1 8.1 5.0
PostSharp.Patterns.Common 4.0, 4.5 8.0, 8.1 8.0, 8.1 8.1  
PostSharp.Patterns.Model 4.0, 4.5 8.0, 8.1 8.0, 8.1 8.1  
PostSharp.Patterns.Threading 4.0, 4.5  
PostSharp.Patterns.Diagnostics 4.0, 4.5  

Known issues

Type ID Description

Changes in the 4.0 branch

Build Date Type ID Description
4.0.45 2015-04-16 Bug 11228 Calling IsReadOnly, IsSynchronized on AdvisableCollection or AdvisableDictionary throws NullReferenceException.
4.0.45 2015-04-16 Bug 11044 Aspects: [CompilerGenerated] and [DebuggerNonUserCode] are added to original constructor instead of the generated one with ConstructorDepth argument.
4.0.45 2015-03-31 Bug 11083 Multicasting task applies attributes to nested classes of compiler generated classes.
4.0.44 2015-03-26 Bug 10911 ThreadAware aspects are not compatible with Code Contracts invariants.
4.0.44 2015-03-16 Bug 10935 Attaching AdvisableCollection with items to Aggregatable parent throws InvalidCastException.
4.0.44 2015-03-19 Bug 11082 ReaderWriterSynchronized: Calling Writer method from another Writer method causes writer to lock to be released prematurely.
4.0.44 2015-03-23 Bug 10969 Aggregatable: Hybrid AdvisableCollection with parent does not act as parent surrogate regardless of IsParentSurrogate setting.
4.0.44 2015-03-23 Bug 10968 Aggregatable: Hybrid AdvisableCollection does not act as parent again after being detached (IsParentSurrogate=false).
4.0.44 2015-03-11 Bug 10992 VSiX: It is possible to build project with PostSharp 4.0 when only 3.1 VSiX is installed.
4.0.43 2015-02-26 Bug 8674 ThreadAwareAdvice: NullConcurrencyController can be observed when controller of advisable collection is being changed.
4.0.43 2015-02-26 Bug 8672 ThreadAware: Hybrid AdvisableCollection should have it's own controller if it has no parent.
4.0.43 2015-02-23 Bug 10835 When ImportMemberAdvice with invalid LocationInfo uses incorrect error message with incorrect arguments.
4.0.43 2015-02-23 Bug 9835 PostSharp30 task crashes when .NET 4.5 is not installed.
4.0.43 2015-02-16 Bug 10930 Disposable aspect disposes indirect children twice.
4.0.42 2015-02-12 Bug 10898 Existing IImmutable interface is not ignored by the ImmutableAttribute.
2015-02-09 Bug 7606 VSIX: exception when trying to contact invalid license server URL.
4.0.41 2015-01-26 Bug 8806 OutOfMemory exception when multiple items are added into AdvisableCollection with CollectionChanged observer.
4.0.40 2015-01-19 Bug 8706 Manual installation page is missing in 4.0 wizard.
4.0.40 2015-01-06 Bug 8665 ThreadingModels: Incorrect controller acquire pattern.
4.0.40 2015-01-06 Bug 8664 ThreadingModels: Deadlock due to invalid order of acquiring locks.
4.0.40 2015-01-05 Bug 7409 ThreadAware: When ancestor of parent surrogate changes, its controller does not change.
4.0.40 2015-01-05 Bug 7644 IntroduceInterfaceTransformation uses interface method generic parameters instead of new method parameters.
4.0.39 2014-12-16 Bug 7570 Undo/redo: clicking on operation in Undo button does not work.
4.0.39 2014-12-15 Bug 7406 Threading: message THR020 includes the wrong parameter.
4.0.39 2014-12-12 Bug 7575 INPC: PropertyChangedTracker does not properly store prefix trees into a dictionary.
4.0.37 2014-12-05 Bug 7398 Threading: LockRecursionException when adding to a collection and collection enumerator is not disposed.
4.0.37 2014-12-03 Bug 7478 AssertionFailedException when multicasting attribute to protected internal method.
4.0.37 2014-12-03 Bug 7480 Aspect Contracts.Required, Model.INPC and Diagnostics.Log form a dependency cycle.
4.0.37 2014-11-26 Bug 7396 BindingException trying to get system MethodInfo for Type.get_Name.
4.0.37 2014-11-26 Bug 7094 ThreadingModels: Do not CheckAccess on readonly fields.
4.0.37 2014-11-26 Bug 7299 ReaderWriterSynchronized: Access level attribute ignored on protected methods.
4.0.37 2014-11-21 Bug 7410 Attaching a collection with items as a surrogate must update the parent of the collection's items.
4.0.37 2014-11-21 Bug 7229 ThreadAware: When AdvisableCollection is being attached to ThreadAware parent, adding new collection item can throw an exception.
4.0.36 2014-11-13 Bug 7345 Recordable: PostSharp exception when member relationship attribute is not used.
4.0.37 2014-11-26 Bug 7397 Recordable: operation names are empty by default for method execution.
4.0.37 2014-11-25 Bug 7337 Recordable: PostSharp build time exception for classes with two indexers.
4.0.35 2014-11-01 Bug 7309 OnMethodBoundaryAspect on async method: OnExit is called with null in MethodExecutionArgs argument.
4.0.35 2014-10-30 Bug 7298 INPC: location cache does not properly handle aspect being applied on generic type definition.
4.0.34 2014-10-23 Bug 7245 Embedded interop types cause PostSharp to crash at build time.
4.0.33 2014-10-19 Bug 7214 Aggregatable: Data races during parallel attaching collection to parent and assigning to it.
4.0.33 2014-10-20 Bug 7177 Integration: ThreadAware is not properly yielded when INPC changes are being notified.
4.0.33 2014-09-29 Bug 7187 Threading models: async methods must have [Reentrant] attribute.
4.0.33 2014-10-18 Bug 7174 Recordable: Aggregatable aspect is provided twice if both [Aggregatable] and [Recordable] are present on the same type.
4.0.33 2014-10-17 Bug 7228 Aggregatable: Change DynamicAdviceList from linked list to transacted array to prevent concurrency issues.
4.0.33 2014-10-16 Bug 7215 Aggregatable: refactoring of ChildVisitor to allow for higher performance usage.
4.0.33 2014-10-16 Bug 7213 Build-time exception when serializing null default parameter value.
4.0.33 2014-10-14 Bug 7203 Threading: Data race on ThreadAware.concurrencyController when a method is executed.
4.0.33 2014-10-14 Bug 7202 Threading: Data race on DynamicAdvice.Next.
4.0.33 2014-10-14 Bug 7201 Threading: Data race on ThreadAwareAdvice.concurrencyController.
4.0.33 2014-10-14 Bug 7199 Memory barrier is not used in PortableThreadingApi in portable profiles - use Interlocked.MemoryBarrier.
4.0.33 2014-10-10 Bug 7123 ThreadAware: Two data races occur when multiple children are assigned to one parent.
4.0.33 2014-10-10 Bug 7122 Aggregatable: Data race when attaching a parent.
4.0.33 2014-10-14 Bug 7114 ThreadingModels: ConcurrencyToken CheckAccess fails after large number of threads is used.
4.0.33 2014-10-13 Bug 7213 Rename IAspectRepositoryService.AspectsDiscoveryCompleted to AspectDiscoveryCompleted.
4.0.33 2014-10-13 Bug 7206 OnInstanceInitialized should be renamed OnInstanceConstructed.
4.0.32 2014-09-29 Bug 7108 Actor: Non-state machine method is dispatched even if executing in context of the actor
4.0.32 2014-10-01 Bug 7106 DeadlockDetection: deadlock not detected if [Dispatched] method closes the cycle.
4.0.32 2014-09-26 Issue 7111 ThreadingModels: After AdvisableCollection is removed as a child, it keeps ThreadAware advice and the controller.
4.0.32 2014-09-26 Bug 7056 Post.Cast makes PostSharp crash when used on generic interfaces.
4.0.32 2014-09-26 Bug 7056 Post.Cast makes PostSharp crash when used on generic interfaces.
4.0.32 2014-09-26 Bug 6981 Threading models: System.Decimal not properly detected as immutable.
4.0.32 2014-09-26 Enhancement 7105 Threading Models: IsSynchronizationRoot must be method not a property.
4.0.32 2014-09-26 Bug 7093 Documentation of ExplicitlySynchronizedAttribute is misleading.
4.0.32 2014-09-22 User Story 7081 ModuleReader: FieldRVA table reading crashes on some mixed assemblies.
4.0.32 2014-09-22 User Story 6892 ImageWriter: Generate compliant WinRT assemblies.
4.0.32 2014-09-19 Enhancement 7061 Refactor IDispatcher to use the delegate+state pattern instead of interface.
4.0.32 2014-09-22 Issue 6920 AggregatableClientAttribute: don't set isInitialized to true before the object is fully deserialized.
4.0.32 2014-09-08 User Story 6628 AdvisableKeyedCollection is not serializable.
4.0.30 2014-09-08 User Story 6953 Remove support for .NET Framework 2.0, Windows Phone 7, Silverlight 4, Visual Studio 2010.
4.0.30 2014-09-08 Issue 6867 ThreadingModels: ActorDispatcher produces a livelock in certain situations.
4.0.30 2014-09-05 Issue 6871 TypeInitializationManager searches for System.Runtime.Serialization.DataContractSerializer but is unable to find it on .NETCore.
4.0.30 2014-09-05 Issue 6864 ThreadingModels: Actor cannot contain Child with SharedController (ThreadUnsafe or PrivateThreadAware) in a collection.
4.0.30 2014-09-02 Issue 6612 INPC: missing OnMethodResume and OnMethodYield advices cause crash in runtime.
4.0.30 2014-09-02 Issue 6282 Support for state machines in OnExceptionAspect.
4.0.30 2014-08-26 Issue 6674 ThreadingModels: ActorDispatcher does not guarantee serialization of tasks.
4.0.30 2014-09-11 Issue 6842 "Add logging" is missing in Smart Tag.
4.0.29 2014-08-21 Issue 6640 Smart tags not offered for Windows Phone 8.1.
4.0.29 2014-08-21 Issue 6639 VSiX does not recognize portable profiles as they are added by Microsoft.
4.0.29 2014-08-13 User Story 6618 Deadlock detection revamping.
4.0.29 2014-08-13 Bug 6608 DeadlockDetection: WaitHandle.WaitOne method is intercepted but does not Proceed for non-Mutex WaitHandles.
4.0.29 2014-08-13 Bug 6607 DeadlockDetection: incorrect pointcut for Mutex.ReleaseMutex (basically ignores the method).
4.0.29 2014-08-13 Bug 6606 DeadlockDetection: WaitHandle.SignalAndWait is not supported.
4.0.29 2014-08-13 Bug 6574 DeadlockDetection: Monitor.TryEnter produces false positives if timeout is finite.
4.0.29 2014-08-20 Enhancement 6630 Remove support for Silverlight and Windows Phone 7 from PostSharp.Patterns.Model.
4.0.29 2014-08-15 Issue 6585 Core WinRT types loaded from Windows.XXX.winmd instead of Windows.winmd during build time.
4.0.29 2014-08-10 Issue 6586 FieldAccessException when public field is advised and loaded by reference from different class.
4.0.29 2014-08-10 Story 6584 Dynamic interface introduction advice (IntroduceInterfaceAdviceInstance).
4.0.29 2014-08-10 Story 6583 Dynamic method introduction advice (IntroduceMethodAdviceInstance).
4.0.29 2014-08-10 Story 6582 Dynamic method import advice (ImportMethodAdviceInstance).
4.0.29 2014-08-10 Bug 6581 [Protected] emits warning even when declaration used in derived type.
4.0.29 2014-08-08 Bug 6579 MulticastPointcut may include helper fields added by PostSharp.
4.0.29 2014-08-06 Bug 6569 Threading models: support for async methods (blocking).
4.0.29 2014-08-06 Bug 6572 [InternalImplement] and [Internal] do not honor [InternalVisibleTo].
4.0.29 2014-08-06 Bug 6573 Error LA0135 is displayed on master advices instead of master advice.
4.0.29 2014-08-05 Bug 6225 Aspects Log, Recordable, NotifyPropertyChanged form a dependency cycle.
The branch was renamed from 3.2 to 4.0.
3.2.26 2014-07-09 Bug 6196 Ultimate features are described as available in Professional version in XML documentation.
3.2.25 2014-07-07 Bug 6431 WinRT language projections are not respected.
3.2.25 2014-07-07 Bug 5852 TypeLoadException when user code references a custom WinRT component (.winmd).
3.2.25 2014-07-10 Bug 6419 Exception when processing an assembly that has a reference to a C++ assembly.
3.2.24 2014-06-17 Bug 6124 INPC: Notifications for properties with complex dependencies are not raised on WinRT.
3.2.24 2014-06-17 Bug 5953 INPC: performance optimization.
3.2.23 2014-05-28 Bug 6226 Remove interface IDisposableEx.
3.2.21 2014-05-13 User Story 6127 ModuleDeclaration.FindType(string) generates invalid AssemblyRef.
3.2.20 2014-05-02 User Story 5995 Facility for late validation/initialization of aspects.
3.2.20 2014-04-24 User Story 5980 Define properties to enable/disable run-/build- time verification.
3.2.17 2014-04-17 Issue 6041 Field/property getters may silently failed to be invoked when there is no get advice.
3.2.17 2014-04-17 Issue 6040 ReaderWriterSynchronizedController.AcquireAccess does not support Unchecked.
3.2.17 2014-04-17 Issue 6038 Importing locations into an aspect collection field may create dependency conflicts.
3.2.17 2014-04-17 Issue 6037 TypeInitializationManager.GetSortedClients returns array with null values.
3.2.15 2014-04-15 Issue 6029 Message location resolution does not work for accessors of automatic properties/events and for implicit constructors.
3.2.15 2014-04-15 Issue 6027 Portable formatter generates incomplete serialization when serialized type has cross-assembly type inheritance.
3.2.14 2014-04-14 Issue 6025 Licensing unit tests occasionally fail on build server.
3.2.14 2014-04-13 Issue 6023 OnInstanceInitialized: [CompilerGenerated] added to wrong constructor.
3.2.14 2014-04-09 Issue 6021 OnInstanceInitialized: invalid MSIL generated when many classes derive a single TypeRef.
3.2.14 2014-04-09 Enhancement 3937 VSiX: Disable logging when the logging window is disabled.
3.2.13 2014-02-24 Issue 5942 IntroduceMember generates invalid MSIL when the advise method is virtual.
3.2.13 2014-02-24 Issue 5932 Message location resolution does not work for custom attributes.
3.2.13 2014-02-24 Issue 5931 Error messages related to attribute multicast are reported with incorrect types.
3.2.7 2014-02-19 Issue 5822 Aspect dependencies not loaded from base types.
3.2.5 2014-02-13 Issue 4801 Incorrect type equality comparer algorithm for WinRT, resulting in binding errors.
3.2.4 2014-02-10 Issue 4778 NotifyPropertyChanged: build-time exception when a type has two properties of the same name.
3.2.1 2014-02-05 Issue 4716 NotifyPropertyChanged will raise events at bad time if user handler throws exception.
3.2.1 2014-02-05 Issue 4706 NotifyPropertyChange tracks changes done from the constructor.
3.2.1 2014-01-29 Issue 4693 AssemblyLoadException when using a PCL project using toolkits from a .NET project.
3.2.1 2014-01-29 Issue 4700 MethodBodyReader throws ArgumentOutOfRangeException when decoding a method body with zero instructions.
3.2.1 2014-01-28 Issue 4697 Remove warning PS0069: " Cannot weave the initialization of the field X because it is initialized outside the constructor".
3.2.1 2014-01-27 Issue 4692 ModuleReader throws NullReferenceException when importing an undefined default value.
3.2.1 2014-01-28 Issue 4393 AssemblyLoadException when using a PCL project using toolkits from a .NET project.

Changes in the 3.1 branch

Build Date Type ID Description
3.1.63 2015-04-17 Bug 11196 VS2015: BufferOverflowException while parsing PDB file.
3.1.62 2015-03-20 Bug 11003 Build-time issues when "FIPS compliance" enforced on developer machine.
3.1.62 2015-03-17 Bug 10926 Weaver: invalid IL generated in value type methods when a field of that value type is encapsulated.
3.1.62 2015-03-16 Bug 11054 Aspect optimizer crashes on methods without a method body.
3.1.62 2015-03-16 Bug 7054 Post.Cast produces invalid MSIL when type parameter has constraint on interface or base type.
3.1.62 2015-03-11 Bug 10987 VSiX: fields enhanced by OnLocationGetValueAdvice/OnLocationSetValueAdvice are not underlined.
3.1.62 2015-03-10 Bug 11053 OnResume advice is ignored without corresponding OnYield advice.
3.1.60 2015-03-03 Bug 8760 INPC: Changes to the properties of generic fields of constrained type are not detected.
3.1.60 2015-03-03 User Story 10998 Syntax decompiler: exposing assignment flow.
3.1.60 2015-03-02 Bug 10963 OnMethodExit advice is not invoked if exception is thrown after await.
3.1.60 2015-03-01 Bug 10994 NotifyPropertyChanged: BindingException with volatile fields.
3.1.60 2015-02-28 Bug 7591 Location of automatic property backing field is not properly resolved.
3.1.59 2015-01-27 Bug 7587 Invalid serialization of a generic type instance referenced from custom attribute parameter.
3.1.58 2015-01-21 Bug 8720 Invalid code generated when weaving field accesses generated by C# 6.0 CTP 5.
3.1.58 2015-01-21 Bug 8718 Exception when parsing PDB generated by C# 6.0 CTP 5.
3.1.58 2015-01-19 Bug 8710 PostSharp HQ process can stay open but invisible when started with command line /notify-ceip.
3.1.58 2015-01-06 Bug 7605 ReflectionSerializationProvider looks for by-convention serializer class name, fails with obfuscation.
3.1.57 2014-12-12 Bug 7411 Message location resolution does not work properly with when async method is being located.
3.1.57 2014-12-12 Bug 7481 Location of automatic property getter/setter is resolved to the property identifier instead of get/set keyword.
3.1.57 2014-12-12 Bug 7581 Location of explicit property getter/setter is not resolved.
3.1.57 2014-12-12 Bug 7582 Location of explicit event and its adder/remover is not resolved.
3.1.57 2014-12-12 Bug 7441 INPC: Property changes are not propagated from base class to a derived class.
3.1.56 2014-12-03 Bug 7065 OnMethodBoundaryAspect.OnException has unexpected behavior with async methods in Silverlight 5.
3.1.56 2014-12-03 Bug 7361 Aspect with a field of a delegate type causes runtime exception during aspect deserialization.
3.1.56 2014-11-24 Bug 7435 OnMethodBoundaryAdviceWeaver fails if state machine fields were optimized out by compiler.
3.1.55 2014-11-14 Bug 7335 PostSharp.HQ 3.1 cannot find VSIX on VS gallery.
3.1.55 2014-11-14 Bug 7364 Mixed CLR v2.0 assemblies cannot be loaded by the managed host.
3.1.55 2014-11-13 Bug 7358 Reading the whole PDB fails when a single custom stream is unknown.
3.1.55 2014-11-05 Bug 7129 Iterators: add 'this' field and method arguments to state machine if optimized out by compiler.
3.1.55 2014-11-05 User Story 6345 Support for C# 6.0 and VB 14 state machines.
3.1.54 2014-10-27 Bug 7063 Unexpected type on the stack error when DispatchedAttribute is applied to async method.
3.1.54 2014-10-27 Bug 7192 Typos in Roslyn installation UI.
3.1.54 2014-10-27 Enhancement 7242 Option to disable the copy of dependencies for FxCop analysis.
3.1.54 2014-10-27 Enhancement 7242 Option to run FxCop on PostSharp output, not input.
3.1.53 2014-10-20 Bug 7090 StateMachineInfo.GetFromPublicMethod throws exception when method is abstract.
3.1.53 2014-10-20 Bug 7088 Error when parsing Constructor with ISyntaxReflectionService.
3.1.53 2014-10-20 Bug 7091 OnMethodBoundaryAdvice can be added to abstract method, causing exceptions instead of error/warning.
3.1.52 2014-10-03 Bug 6507 Invalid psproj file throws exception and should be handled properly.
3.1.52 2014-10-02 User Story 6821 UI to download and install missing libraries for resolving error and warning line numbers.
3.1.52 2014-10-01 Issue 6718 Advising an async state machine does not work with VB.
3.1.52 2014-09-29 Issue 6487 Patterns.Threading: Incorrect error message reported when declaring a field in a class with [ReaderWriterSynchronized] aspect.
3.1.52 2014-09-29 Issue 4164 Ensure there is no exception in the UI when using PostSharp in a VB project.
3.1.52 2014-09-26 Issue 6537 Async: add 'this' field and method arguments to state machine if optimized out by compiler.
3.1.52 2014-09-26 Issue 6677 "Error creating 'Namespace provider' object" in CSharpLanguageAdapter.
3.1.52 2014-09-26 Issue 3930 The PostSharp configuration dialog is hidden underneath VS window when installing via NuGet package.
3.1.52 2014-09-26 Issue 6670 ArgumentOutOfRangeException in QuietPeriodTimer.OnTick.
3.1.52 2014-09-26 Issue 6676 ArgumentOutOfRangeException in AddAspectsSmartTagger.UpdateCurrentCodeElement.
3.1.52 2014-09-26 Issue 6673 ArgumentOutOfRangeException in CSharpCodeParser.Tokenize.
3.1.52 2014-09-26 Issue 7092 StateMachines: When OnMethodBoundaryAspect is applied before Actor, assertion fails instead of producing error message.
3.1.52 2014-09-26 Issue 5916 Attribute applied to an interface using AttributeTargetAssemblies does not result in an abstract attribute instance.
3.1.52 2014-09-23 Issue 7004 Async state machine exception advice does not work when C# optimizations are enabled.
3.1.52 2014-09-23 Issue 6472 DotNetPlatform.GetSymbolWriter throws COMException when target PDB file is in use.
3.1.52 2014-09-23 Issue 6672 InvalidCastException in PackageDependencyManager.PopulateTransitiveReferences.
3.1.52 2014-09-23 Issue 6467 DocumentInfoReference.Get throws NullReferenceException.
3.1.52 2014-09-23 Issue 6465 VsPackage.IsProjectSupported throws NullReferenceException
3.1.52 2014-09-23 Issue 6184 Make email validation more permissive on the registration form
3.1.51 2014-09-19 Issue 7062 NotifyPropertyChanged: internal delegates get GCed causing missed property notifications.
3.1.50 2014-09-10 Issue 6478 VSIX: TextMarkerLayer.ctor throws ArgumentNullException.
3.1.50 2014-09-10 Issue 6479 VSIX: TextMarkerLayer.ScanSnapshot throws ArgumentOutOfRangeException (TrackingSpan.ctor).
3.1.50 2014-09-10 Issue 6475 VSIX: TextMarkerLayer.ScanSnapshot throws ArgumentOutOfRangeException.
3.1.50 2014-09-09 Issue 6550 OnMethodInvokeAdvice crashes if the advice method does return a value (produce an error).
3.1.50 2014-09-09 Issue 6497 INPC: Dependency analysis reports an error with text that doesn't make sense in one of the possible contexts.
3.1.50 2014-08-27 Issue 6588 INPC: memory leaks through NotifyChildPropertyChanged event.
3.1.49 2014-08-18 Issue 6616 CEIP ClientId is generated unreliably.
3.1.48 2014-07-18 Issue 4700 MethodBodyReader throws ArgumentOutOfRangeException when decoding a method body with zero instructions.
3.1.48 2014-07-09 Issue 6435 VSIX: AddAspectsSmartTagger.GetTags throws "The snapshot is out of date..." exception.
3.1.48 2014-07-09 Issue 4518 Display user-friendly error message when validation attribute is applied on a read-only property.
3.1.48 2014-07-08 Issue 6199 Migration of the message resolution facility to Roslyn.
3.1.48 2014-07-04 Issue 6417 Managed host fails to load dependencies when assembly is loaded ReflectionOnly..
3.1.47 2014-07-14 User Story 6451 License server: unconditional license delivery for build servers.
3.1.47 2014-07-14 Issue 6432 Type forwarding resolution doesn't work for nested types.
3.1.47 2014-07-14 Issue 6473 Multicasting task can apply attributes to anonymous methods.
3.1.47 2014-07-09 Issue 6448 License audit writer outputs more than one license per log line.
3.1.46 2014-06-26 Issue 6326 VSIX: Nothing happens when Add Policy is clicked and no policy is available on the project.
3.1.46 2014-06-26 Issue 6357 Hosting: PostSharp task indefinitely waits for pipe server startup.
3.1.46 2014-06-26 Issue 6250 Licensing: When projects are compiled in parallel, PostSharp licensing sometimes fails to get license when using PostSharp.config.
3.1.46 2014-06-25 Issue 6353 Strong-named assembly is not re-signed if AssemblyKeyFileAttribute specifies absolute path.
3.1.45 2014-06-20 Issue 6139 MSBuild: Concurrency issue in extracting PostSharpTools.exe.
3.1.45 2014-06-18 Issue 6177 VSiX: cannot give focus to Visual Studio after the "logging profile" dialog has been opened and VS lost focus.
3.1.45 2014-06-18 Issue 6075 TypeLevelAspect applied to interface causes introduction of a static ctor on that interface.
3.1.45 2014-06-19 Issue 6330 BindingOptions.ForExecution flag is lost when a new binding cache key is created.
3.1.45 2014-06-19 Issue 6327 Portable PostSharp assembly cannot be loaded for reflection only.
3.1.45 2014-06-17 Issue 4272 NativeDotNetPlatform.OnReflectionOnlyAssemblyResolve handler can return assembly loaded for execution.
3.1.43 2014-05-23 Issue 6203 CompiledImages are broken in build 3.1.41.
3.1.44 2014-06-09 Issue 6245 State machine transformation transfers control to incorrect AwaitOnCompleted branch.
3.1.44 2014-06-09 Issue 6246 DispatchedAttribute cannot be used with Threading Library license.
3.1.44 2014-05-30 Issue 6235 NullReferenceException in UserLicenseManager if user license has incorrect format.
3.1.44 2014-05-29 Issue 6239 PostSharp license string is cleaned before checking whether it contains URL.
3.1.43 2014-05-28 User Story 6020 Support for Windows Phone App 8.1.
3.1.43 2014-05-27 User Story 6121 Support for .NET 4.5.2 target platform.
3.1.43 2014-05-26 Issue 6216 Error message "DOM002" refers to non-existing IdempotentMethodAttribute.
3.1.43 2014-05-21 Issue 4741 AdviceAnalyzer fails while trying to analyze abstract method's body.
3.1.43 2014-05-20 Issue 6063 VSIX: FileNotFoundException when *.pssln file has been deleted but is still present in the solution explorer
3.1.43 2014-05-20 Issue 6181 VSIX: "Add->PostSharp Policy..." is shown when "Add PostSharp to project is hidden"
3.1.43 2014-05-20 Issue 6056 VSIX: Extension installation fails if NuGet is not installed in VS 2013
3.1.42 2014-05-23 Issue 6203 Compiled images manager attempts to install missing Nova.CodeDOM.dll.
3.1.41 2014-05-21 Issue 6195 Remove dependency on Nova.CodeDOM.
3.1.41 2014-05-19 Issue 6183 Allow Professional license to be used with the License Server.
3.1.40 2014-05-15 Issue 6173 MessageFormatter fails when a format argument is a Type instance that resolves to TypeSignature.
3.1.40 2014-05-15 Issue 6110 "Project / Add policy" should not be available on Shared project.
3.1.40 2014-05-15 Issue 6133 Define MSBuild property to disable PostSharpChangeAppConfig target.
3.1.40 2014-05-15 Issue 5964 Updating NLog diagnostics package removes "Using" from psproj file.
3.1.40 2014-05-14 Issue 6016 Multiple instances of ComponentInternalAttribute and similar are not allowed on a single code element but are allowed on parameters and return values.
3.1.40 2014-05-09 Issue 5849 INPC: property depending on a virtual method call causes an error "[DOM011]. No message text found!"
3.1.40 2014-05-09 Issue 5888 NotifyPropertyChanged: operators must be considered pure methods by default.
3.1.39 2014-05-06 Issue 6041 Field/property getters may silently failed to be invoked when there is no get advice.
3.1.39 2014-05-06 Issue 6113 Array of generic type is incorrectly treated as a generic type definition in ModuleDeclaration.FindType.
3.1.38 2014-04-22 Issue 6057 Assembly with two references to mscorlib causes NullReferenceException in TypeRefDeclaration.get_DeclaringAssembly.
3.1.37 2014-04-18 Issue 5935 AssemblyBindingPolicyManager.LoadXml fails when config file has empty dependentAssembly section.
3.1.37 2014-04-18 Issue 5914 ArgumentsWriter.EmitLoadArguments can throw InvalidOperationException during ImplementOnExitAdvice.
3.1.36 2014-04-15 Issue 6029 Message location resolution does not work for accessors of automatic properties/events and for implicit constructors.
3.1.36 2014-04-15 User Story 6026 Support for Windows Phone Silverlight 8.1.
3.1.35 2014-04-09 Issue 5967 Error LA0060 "member already defined in base type" is reported when the base type member is private.
3.1.34 2014-04-02 Issue 5897 State machines: OnResume may be invoked before OnYield.
3.1.34 2014-04-02 Issue 5898 Build fails if the message location resolver cannot find a file with the target code element.
3.1.34 2014-03-28 Issue 5878 INPC: run-time exception when the property depends on a static read-only field of immutable type.
3.1.33 2014-02-26 Issue 5825 Multicast attribute applied on the abstract method's parameter through inheritance must result in an abstract attribute instance.
3.1.33 2014-02-25 Issue 5842 PostSharp assembly is not copied to the build output folder when compiled images are installed in GAC.
3.1.32 2014-02-21 Issue 4710 NullReferenceException when instance level aspect with registered type initialization client is applied on an interface.
3.1.32 2014-02-19 Issue 5822 Aspect dependencies not loaded from base types.
3.1.32 2014-02-19 Issue 4801 Incorrect type equality comparer algorithm for WinRT, resulting in binding errors.
3.1.32 2014-02-19 Issue 4778 NotifyPropertyChanged: build-time exception when a type has two properties of the same name.
3.1.32 2014-02-18 Regression 4709 State machine transformation fails when method parameter fields are removed by compiler optimizations.
3.1.32 2014-02-17 Issue 4660 VSIX: newly created logging profiles are not stored in the configuration file.
3.1.32 2014-02-17 Issue 5808 RegularExpressionAttribute includes the regular expression into the error message without escaping.
3.1.32 2014-02-14 Issue 4803 Forbid to add several instances of NotifyPropertyChanged custom attribute.
3.1.31 2014-02-12 Issue 4791 NuGet install/uninstall throws "The node is not parented by this object so it cannot be removed from it.".
3.1.31 2014-02-12 Issue 4715 CodeTypeRefExtensions.IsReferenceType throws ArgumentOutOfRangeException.
3.1.31 2014-02-12 Issue 4714 VSIX: BaseTypeFilter.Matches(CodeType) throws exception.
3.1.31 2014-02-12 Issue 4704 Querying NuGet service can slow down VS start-up considerably when the service is unresponsive.
3.1.30 2014-02-10 Issue 4698 Aspect field of type LocationInfo is not serialized correctly.
3.1.30 2014-02-10 Issue 4709 State machine transformation fails when method parameter fields are removed by compiler optimizations.
3.1.30 2014-02-05 Issue 3444 TextMarkerLayer.AddAdornments throws NullReferenceException.
3.1.29 2014-01-16 Issue 4483 VSX SmartTags: Fix filtering in DispatchedAttribute quick action.
3.1.29 2014-01-16 Issue 2997 Warning PS0088 cannot be disabled using a custom attribute.
3.1.29 2014-01-16 Issue 3939 Setting log provider in wizard to "Trace" will set the provider to "Console" in configuration file.
3.1.29 2014-01-16 Issue 3940 Disable the "tooltips info" checkbox in VS extention options when the code underlying is disabled.
3.1.29 2014-01-16 Issue 4639 PostSharp30ChangeAppConfig target is not executed for WinForms projects.
3.1.29 2014-01-16 Issue 4516 The type 'System.Runtime.Serialization.DataContractAttribute' does not exist in the target platform (when project targets .NET 3.5).
3.1.28 2014-01-06 Issue 4342 NuGetService.IsPackageInstalled throws ArgumentException: The path is not of a legal form.
3.1.28 2014-01-06 Issue 4350 ProjectExtension.GetProjectOutputName throws NotSupportedException.
3.1.28 2014-01-06 Issue 4341 BaseLanguageAdapter.PopulateInterfaceImplementationsRecursive throws InvalidOperationOperation.
3.1.28 2014-01-06 Issue 4344 SnapshotSpan.EnsureSnapshot throws ArgumentException.
3.1.28 2014-01-06 Issue 4130 Implicit event accessor methods are treated as UserGenerated instead of CompilerGenerated by the multicasting algorithm.
3.1.28 2013-12-19 Issue 4340 AddAspectsSmartTagger.UpdateCurrentCodeElement throws COMException.
3.1.28 2013-12-19 Issue 3621 VSiX: IVariableDeclaratorNode.get_Declaration() throws TargetException.
3.1.28 2013-12-19 Issue 4267 Logging: values of the output parameters are never included in the log message.
3.1.27 2013-12-19 Issue 4510 Updating PostSharp from 3.0 to 3.1 causes compilation error: The assembly 'whatever.dll' uses non-licensed features (State Machine Support).
3.1.27 2013-12-19 Enhancement 3686 Normalize executable metadata and sign them.
3.1.27 2013-12-18 Issue 4269 Logging: PostSharp's LogLevel.Debug maps to NLog's Trace level.
3.1.27 2013-12-18 Issue 4494 ApplyToStateMachine doesn't work with iterators that return non-generic IEnumerable.
3.1.27 2013-12-18 Issue 4489 Assignment distance from value type to ValueType is different for intrinsic value types and other value types (DateTime, enums, ...).
3.1.25 2013-12-12 Issue 4487 Logging is free for PostSharp Express, but relies on a feature found in PostSharp Pro.
3.1.25 2013-12-12 Issue 4219 Adding logging with third-party backend causes assembly loading exception at run-time.
3.1.24 2013-12-09 Enhancement 4261 If an aspect class has a [Metric] attribute, the features used by this aspect should not be metered.
3.1.24 2013-12-09 Issue 4477 Logging backend packages contain references to specific versions of backend packages.
3.1.24 2013-12-09 Enhancement 3584 Upgrade the license server to PostSharp 3.
3.1.24 2013-12-09 Issue 3579 An error occurs when click "Subscribe to a license server".
3.1.23 2013-12-09 Enhancement 4211 VSiX: In the logging profile dialog - disable the exception level selector if "When the method enters" option is selected.
3.1.23 2013-12-09 Issue 4209 VSiX: Deleting a logging profile in the logging configuration wizard does not remove the profile from pssln.
3.1.23 2013-12-09 Enhancement 4227 CEIP: Collect licensed products, license types, native and target framework monikers.
3.1.23 2013-12-09 Enhancement 4364 VSiX: Deprecate the feature "See enhanced source code".
3.1.23 2013-12-09 Enhancement 4264 Add advices for OnYield and OnResume.
3.1.22 2013-11-29 Enhancement 4376 Replace RequiresPostSharp.cs by an MSBuild target.
3.1.22 2013-11-29 Enhancement 4381 Core license keys should be stored in the same registry location as v3.0.
3.1.21 2013-11-16 Enhancement 4301 Load any configuration file named postsharp.config in parent directories.
3.1.21 2013-11-16 Bug 4302 Advice analyzer throws NullReferenceException.
3.1.21 2013-11-16 Enhancement 4303 New element License in configuration file.
3.1.20 2013-11-13 Issue 2936 VSIX: file templates are not offered.
3.1.20 2013-11-13 Issue 3847 FileNotFoundException at runtime with projects linked to .NET 3.5.
3.1.20 2013-11-13 Issue 4221 Location of methods cannot be resolved: sequence points located boundary brackets cause issues.
3.1.19 2013-11-11 Issue 4275 OnMethodBoundaryTransformationInstance throws NullReferenceException when a state-machine aspect reads ReturnValue.
3.1.19 2013-11-11 Enhancement 4233 Toolkit licenses must automatically provide Express features .
3.1.17 2013-11-01 Enhancement 4224 Add support for MethodExecutionArgs.YieldValue.

Changes in the 3.0 branch

Build Date Type ID Description
3.0.42 2013-11-29 Bug 4392 SerializationIntrinsicTypeExtensions.IsPrimitiveIntrinsic throws ArgumentOutOfRangeException.
3.0.42 2013-11-27 Bug 3576 Aspect optimizer emits warning LA0036 on public classes with private interface implementation.
3.0.42 2013-11-27 Bug 4351 Warning AR0101 when a type has the aspect [NotifyPropertyChanged].
3.0.42 2013-11-27 Enhancement 4365 Do not provide tooltips and code adornments to Express users.
3.0.42 2013-11-27 Bug 4368 INotifyPropertyChanged: performance improvement, use OnEntry/OnExit instead of OnInvoke.
3.0.41 2013-11-18 Bug 4165 Runtime System.MissingMethodException when a method/field signature contains ValueType.
3.0.40 2013-10-30 Bug 4206 AssemblyRefDeclaration.GetSystemAssembly throws NullReferenceException instead of AssemblyLoadException.
3.0.39 2013-10-28 Bug 4167 VSIX: installation of the extension in VS2013 fails if there is also SSMS2012 installed on the machine.
3.0.39 2013-10-28 Bug 4166 Incorrect generic arguments of the generic LocationType in LocationInterceptionAspect.
3.0.38 2013-10-27 Bug 3325 Field of struct is not set if LocationInterceptionAspect is applied.
3.0.38 2013-10-27 Bug 4102 Build-time InvalidCastException when introducing closed generic interface.
3.0.37 2013-09-20 Story 3838 Support for Windows Store 8.1 and PCL 4.6.
3.0.37 2013-09-19 Bug 3935 [NotNull] constraint cannot be added to parameter of generic parameter with constraint.
3.0.36 2013-09-06 Bug 3874 LogAttribute properties do not fallback to documented defaults when not set, fallback to None instead.
3.0.36 2013-09-06 Bug 3846 Cannot register an evaluation license key if the automatic evaluation period has ended.
3.0.36 2013-09-06 Bug 3909 Custom serializers not discovered when object type relies outside of the referencing type.
3.0.36 2013-09-06 Bug 3908 Cannot have several ImportSerializer attributes on the same declaration.
3.0.35 2013-08-27 Bug 3871 AspectPriority ignored in ordering of CompositionAspect.CreateImplementationObject.
3.0.35 2013-08-27 Bug 3870 Invalid MSIL generation when there are several generic instances of the same generic aspect type.
3.0.35 2013-08-27 Bug 3869 Possible conflict when PostSharpExtractDirectory is set manually.
3.0.34 2013-08-09 Bug 3856 CSharpLanguageAdapter.GetCodeElementAtCaret throws TargetException.
3.0.34 2013-08-09 Bug 3855 CodeParsingService.GetEnhancedCodeElements throws ObjectDisposedException.
3.0.34 2013-08-09 Bug 3851 Some advises are not included in tooltips.
3.0.34 2013-08-09 Bug 3850 Null value passed to parameter 'languageAdapter' of QuickInfoContentProvider.GetHyperLink.
3.0.34 2013-08-09 Bug 3848 QuietPeriodTimer.OnTick throws ArgumentOutOfRangeException.
3.0.34 2013-08-09 Regression 3619 VSiX: VsCodeLocationService.GetAssemblyName throws NullReferenceException or ArgumentException.
3.0.33 2013-08-03 Bug 3834 NotifyPropertyChanged throws KeyNotFoundException when a class is derived from a generic class with a field or property.
3.0.32 2013-07-24 Bug 3714 PostSharp.MSBuild.dll requires .NET 2.0 instead of .NET 4.0.
3.0.32 2013-07-24 Bug 3765 StackOverflowException at runtime when IReaderWriterSynchronized is implemented by the user.
3.0.32 2013-07-24 Bug 3756 Actor aspect do not build with async methods of C# 5.0.
3.0.31 2013-07-03 Bug 3684 Licensing component generates invalid command line when registering license for all users.
3.0.31 2013-07-03 Bug 3683 Package 'PostSharp.Patterns.Diagnostics.EnterpriseLibrary' refers to an invalid version of package 'EnterpriseLibrary.Logging'.
3.0.30 2013-06-27 Bug 3673 Support for .NET 4.5.1.
3.0.30 2013-06-27 Bug 3671 VSiX: support for Visual Studio 2013.
3.0.30 2013-06-25 Bug 3657 VSiX: text buffer not re-scanned after change.
3.0.30 2013-06-25 Bug 3656 VSiX: VsCodeLocationService/GetAssemblyName throws NullReferenceException.
3.0.30 2013-06-25 Bug 3655 VSiX: Exception when accessing NuGet if Resharper 8 is installed.
3.0.29 2013-06-25 Bug 3640 INPC: dependency analysis should accept and ignore dependencies on read-only intrinsic fields.
3.0.29 2013-06-25 Bug 3639 Add contracts StrictlyPositive and StrictlyGreaterThan.
3.0.29 2013-06-25 Bug 3648 DotNetStrongNameApi throws COMException - out of memory.
3.0.28 2013-06-25 Bug 3652 VSiX: clicking on smart tag "add aspects" to get the wizard throws exception.
3.0.28 2013-06-12 Bug 3628 Cannot get reflection method in there is a method with same name, same number of parameters, and generic parameters with different constraints.
3.0.28 2013-06-11 Bug 3624 VSiX: ProjectPropertyComboBox.FindItem throws InvalidCastException.
3.0.28 2013-06-11 Bug 3623 VSiX: MethodCodeLocator.GetHeader throws InvalidCastException.
3.0.28 2013-06-11 Bug 3622 VSiX: DteHelpers.ToDteProject throws ArgumentException.
3.0.28 2013-06-11 Bug 3620 ISymUnmanagedWriter.Initialize throws COMException.
3.0.28 2013-06-11 Bug 3619 VSiX: VsCodeLocationService.GetAssemblyName throws NullReferenceException.
3.0.28 2013-06-11 Bug 3585 Logging toolkit generates bad logger category name for nested and generic classes.
3.0.28 2013-06-10 Bug 3613 ILocationValidationAspect: Invalid code generation when parameter type is a struct cast to an interface.
3.0.27 2013-06-03 Bug 3579 VSiX: VsPackage.GetSelectedProject() throws InvalidCastException.
3.0.27 2013-06-03 Bug 3588 Build-time exception when applying [NotifyPropertyChanged] to an abstract class.
3.0.27 2013-06-03 Bug 3587 LocationValidation aspects and advices do not support generic parameters.
3.0.26 2013-05-16 Bug 3548 PostSharp.Patterns.Diagnostics.NLog causes build error because current NLog version is 2.0.1.
3.0.26 2013-05-16 Bug 3545 VSiX: old version of NuGet may hide a new one.
3.0.26 2013-05-16 Bug 3562 Error when adding a contract to a parameter and overriding the method in a different assembly.
3.0.25 2013-05-07 Bug 3541 Trial message of the RTM displays the preview warning.
3.0.25 2013-05-07 Bug 3540 VSiX: Misleading error message requiring NuGet 2.2.
3.0.25 2013-05-07 Bug 3539 TeamCity fails to clean the temporary directory because of file lock.
3.0.24 2013-05-02 Bug 3530 VsiX: NuGet not detected when running from a non-admin user.
3.0.23 2013-04-29 Bug 3507 Exception when serializing parameters of a generic method instance.
3.0.23 2013-04-29 Regression 3505 Licensing error when building a PCL dependency that depends on an assembly with redistribution license.
3.0.22 2013-04-22 Bug 3505 Licensing error when building a PCL dependency that depends on an assembly with redistribution license.
3.0.21 2013-04-22 Enhancement 3503 Add registry setting "OEM" that disables license prompt on startup.
3.0.21 2013-04-20 Issue 3492 Anonymous licenses are not recognized as valid licenses.
3.0.21 2013-04-20 Issue 3491 VSiX: NuGetService.InstallPackage throws exception if NuGet is absent even if the UI is enabled.
3.0.21 2013-04-20 Issue 3490 VSiX: Button "Add PostSharp" of project properties tab crashes VS.
3.0.20 2013-04-16 Regression 3455 Infinite loop in NuGet installation after PostSharp upgrades NuGet 2.0 to 2.2.
3.0.20 2013-04-15 Bug 3465 Splash screen of PostSharp HQ may cause GPF.
3.0.19 2013-04-14 Bug 3459 Add logging to NuGet detection algorithm.
3.0.19 2013-04-14 Bug 3458 If there is an issue with NuGet detection, users cannot start Visual Studio.
3.0.18 2013-04-11 Bug 3455 Infinite loop in NuGet installation after PostSharp upgrades NuGet 2.0 to 2.2.
3.0.18 2013-04-11 Enhancement 3453 Option to disable NuGet dependency checking before build.
3.0.17 2013-04-10 Regression 3028 AddAspectsSmartTagger.UpdateCurrentCodeElement throws NullReferenceException.
3.0.17 2013-04-10 Regression 3030 CSharpLanguageAdapter.GetCodeElement throws COMException.
3.0.17 2013-04-10 Issue 3438 VsPackage.GetSelectedProject throws ArgumentNullException.
3.0.17 2013-04-10 Issue 3438 VsPackage.GetSelectedProject throws ArgumentNullException.
3.0.17 2013-04-10 Issue 3439 DefaultCodeLocator.GetCodeLocation throws ArgumentException.
3.0.17 2013-04-10 Issue 3440 NuGetService throws exceptions when the solution is not saved.
3.0.17 2013-04-10 Issue 3441 VsCodeLocationService.IsCodePositionAvailable throws ArgumentException.
3.0.17 2013-04-10 Issue 3442 CSharpLanguageAdapter.VisitCodeProperty throws InvalidOperationException.
3.0.17 2013-04-10 Issue 3443 CSharpLanguageAdapter.GetCodeElementAtCaret throws ObjectDisposedException.
3.0.17 2013-04-10 Issue 3444 TextMarkerLayer.AddAdornments throws NullReferenceException.
3.0.17 2013-04-10 Issue 3268 "Loggin Profile Definition" should changed as "Logging Profile Definition".
3.0.16 2013-04-09 Regression 3431 Incorrect serialization of boolean fields in license key.
3.0.15 2013-04-09 Bug 3433 Aspect [PSerializable] checks for licensing, but should not.
3.0.15 2013-04-09 Bug 3432 References to PostSharp.dll are not recognized during XAML prebuild, causing #error.
3.0.15 2013-04-09 Bug 3431 Incorrect serialization of boolean fields in license key.
3.0.15 2013-04-08 Bug 3427 Silverlight assemblies with [NotifyPropertyChanged] have reference to System.Core v4.0.0.0.
3.0.15 2013-04-08 Bug 3426 VSiX must require NuGet 2.2 because of a bug in NuGet 2.1.
3.0.15 2013-04-08 Enhancement 3425 Add binding redirections for PostSharp.Patterns.Diagnostics.Weaver.
3.0.15 2013-04-08 Bug 3423 Licensing enforced on build servers.
3.0.15 2013-03-25 Bug 3380 Build-time ArgumentException when trying to multicast an aspect to all types.
3.0.15 2013-04-05 Bug 3383 When clicking "I need a licnese key" after "I have a license key" or "I want to try PostSharp" is clicked, the improper actions are trigered.
3.0.15 2013-03-29 Bug 3233 Add logging wizard: Next button should be inactive when no item select
3.0.15 2013-03-29 Bug 3409 VSiX: NullReferenceException thrown when unloading project
3.0.15 2013-03-29 Bug 3401 VSiX: Erronous behaviour when disabling postsharp in project properties fo all configurations
3.0.15 2013-03-28 Bug 3396 Smart tag for "[InternalImplement] is missing
3.0.15 2013-03-28 Bug 3398 NotifyPropertyChangedAspect calls GetHashCode in user code
3.0.15 2013-03-28 Bug 3372 If don't run as administrator, the wizard doesn't pop up to require installing Nuget.
3.0.15 2013-03-25 Bug 3378 When applying "Acquire an upgradable reader lock" threading model, errors are reported that there is no reference code
3.0.15 2013-03-22 Bug 3373 AssertionFailedException when serializing a PropertyInfo defined outside the current project.
3.0.14 2013-03-24 Bug 3376 Invalid code generated when serializing a MethodInfo representing a new MethodSpec.
3.0.14 2013-03-22 Bug 3314 The aspects in "add postsharp policy" are not displayed according to eligibiloty of project types.
3.0.14 2013-03-22 Bug 3313 The Exception level is always "Warning" in the “logging profile definition" dialog.
3.0.14 2013-03-22 Bug 3331 When adding logging profile, there is no restrictions on the profile name
3.0.14 2013-03-22 Bug 3353 When the aspects are not supported by current platform, they should not be offered in the smart tags
3.0.14 2013-03-22 Bug 3317 The star is misleading in different context than Smart Tag Manager - must be hidden
3.0.14 2013-03-22 Bug 3247 When registering the license, the publisher of PostSharp is reported not signed
3.0.14 2013-03-18 Bug 3249 If not permitted, register license process should go back to License agreement page
3.0.13 2013-03-20 Bug 3327 VsixInstaller fails to install our extension if NuGet 2.2 is installed.
3.0.13 2013-03-20 Bug 3324 ReaderWriterSynchronizedAttribute: fields may fail to be set or get if runtime verification is enabled.
3.0.13 2013-03-20 Bug 3321 ThreadUnsafeAttribute: fields may fail to be set is runtime verification is enabled.
3.0.13 2013-03-22 Bug 3318 In the list of smart tags of the wizard, selection is not reset when category is collapsed
3.0.13 2013-03-18 Bug 3160 Get new license:The state of Previous and Cancel should be improved during License Registration process.
3.0.13 2013-03-18 Bug 3159 Get new license: "Previous" should be active on Trial Registration page
3.0.13 2013-03-18 Bug 3158 Get new license: The next button should not be enabled after checking off any radio button in the License Agreement page.
3.0.13 2013-03-15 Bug 3234 Add logging wizard: Previous button should be active
3.0.13 2013-03-15 Bug 3233 Add logging wizard: Next button should be inactive when no item select
3.0.13 2013-03-15 Bug 3200 Smart Tag does not locate on events with implicit implementation
3.0.13 2013-03-15 Bug 3188 PostSharp is not configured properly for all local users on this machine
3.0.13 2013-03-15 Bug 3186 When license server is not available, "Subscribe to a license server" should be in grey.
3.0.13 2013-03-11 Bug 2904 Adapt INPC to new MemberwiseClone support
3.0.13 2013-03-11 Bug 2724 VSIX: Underline is present after deleting aspect and rebuild
3.0.12 2013-03-10 Bug 2966 [Protected] constraint generates build-time error when added on a type.
3.0.12 2013-03-10 Enhancement 3172 Add support for interface ICloneAwareAspect.
3.0.12 2013-03-10 Bug 2934 Host app.config is not updated when PostSharpHostConfigurationFile items are updated.
3.0.12 2013-03-10 Bug 2998 When app.config is marked as a project item of type PostSharpHostConfigurationFile, it is not copied to the output directory any more.
3.0.12 2013-03-10 Bug 3171 Assembly binding policies added several times to app.config.
3.0.12 2013-03-08 Bug 3084 PostSharp Extension cannot be disabled/removed in Extension Manager - added about box
3.0.12 2013-03-07 Bug 2905 Issue error when base and derived aspects contain method with the same name and both methods are decorated by advices
3.0.12 2013-03-07 Bug 3097 Not all Smart Tags are offered on client profile
3.0.12 2013-03-07 Bug 3099 The CEIP wizard pops up every time when starting VS 2010/ 2012 if not participate it.
3.0.12 2013-03-07 Bug 3106 Logging toolkit fails to rethrow the exception if the message is not logged.
3.0.12 2013-03-05 Bug 3101 VSIX: FrameworkVersionFilter works improperly when targeting portable including NET40
3.0.12 2013-03-05 Bug 3023 VSIX: in tooltips, hyperlinks are created for all targets, even when we cannot navigate to that target
3.0.11 2013-02-29 Bug 3026 MSBuild task generates an invalid command line when invoking the native host.
3.0.11 2013-02-29 Bug 2722 VSIX: Inserting comment into method name moves underline to left
3.0.11 2013-02-29 Bug 3092 VSIX: Adding multiple Log attribute to namespaces in one projects results in invalid GlobalAspects.cs file
3.0.11 2013-02-29 Bug 3029 On PostSharp Tutorials, clicking the item link opens two same pages.
3.0.11 2013-02-29 Bug 3067 When putting mouse in the smart tag list region( see attachment), the scroll bar does not support mouse wheel events.
3.0.10 2013-02-29 Bug 3049 There are two "Register a license" links in PostSharp| Options| PostSharp| License
3.0.11 2013-02-29 Bug 3068 In smart tag, the star button state is hardly recognized when clicking on it repeatedly without moving away mouse.
3.0.11 2013-02-29 Bug 3078 The email address can not be entered in PostSharp| Options| PostSharp| Error reporting
3.0.11 2013-02-29 Bug 3074 PostSharp Explorer : "Go to Definition" does not work on Namespace
3.0.11 2013-02-28 Bug 3069 When there is no aspect in the current solution, the second line in Postsharp Explorer does not wrap automatically
3.0.11 2013-02-28 Bug 3081 PostSharp Explorer : "Copy" does not work on namespace and project name
3.0.11 2013-02-28 Bug 3076 PostSharp Explorer : "Reload" does not work -- Icon should be removed
3.0.11 2013-02-28 Bug 2933 VSIX: dark theme support
3.0.11 2013-02-28 Bug 2953 VSIX: tooltips are focusable in VS 2012
3.0.10 2012-02-28 User Story 3055 Automatically update app.config with binding redirections for PostSharp.
3.0.10 2012-02-28 Issue 2950 VSIX: tooltips not displayed for implicit event adders.
3.0.10 2012-02-28 Issue 2952 VSIX: smart tag is offered on the "operator" keyword, but the next keyword is underlined.
3.0.10 2012-02-28 Issue 2969 VSIX: Changing option "Underline enhanced code" has no effect on already-open files.
3.0.10 2012-02-28 Issue 2968 VSIX: Disabling option "Add PostSharp information to tooltips" has no effect.
3.0.10 2012-02-28 Issue 2967 VSIX: Disabling option "Add PostSharp actions to smart tags" has no effect.
3.0.10 2012-02-28 Issue 3082 Performance issue with INPC -- excessive O(n) complexity for child property notifications.
3.0.10 2012-02-28 Enhancement 2933 VSIX: dark theme support.
3.0.10 2012-02-28 Issue 3004 HQ: wizard page following License Agreement skips automatically.
3.0.10 2012-02-28 Issue 3024 After deleting the new logging profile, the next button should be disabled and the new logging profile should not be added.
3.0.10 2012-02-28 Issue 3013 Smart tags should not appear in projects targeting platforms that are not available.
3.0.10 2012-02-28 Issue 3028 AddAspectsSmartTagger.UpdateCurrentCodeElement throws NullReferenceException.
3.0.10 2012-02-28 Issue 3030 CSharpLanguageAdapter.GetCodeElement throws COMException.

Changes in the 2.1 branch

Build Date Type ID Description
2.1.7.32 2013-11-26 Enhancement 3358 In-product registration for PostSharp Express.
2.1.7.29 2012-02-20 Issue 3008 MulticastPointcutEngine throws InvalidCastException when the aspect is applied on something different than a type.
2.1.7.29 2013-02-20 Issue 3006 Invalid metadata generated when member/type name differ in Unicode but are equal under InvariantCulture.
2.1.7.29 2012-12-18 Issue 2539 MulticastAttributeTasks.BuildMulticastAttributeUsageAttribute throws AssertionFailedException.
2.1.7.28 2012-12-11 Issue 2629 Invalid custom attribute copied from dependent assembly to the custom attribute pool.
2.1.7.27 2012-12-11 Issue 2548 Add more logging in the MSBuild pipe client.
2.1.7.27 2012-12-11 Issue 2589 NuGet PostSharp 2.x package restore asks to install the PostSharp 2.x VS extension although the PostSharp 3 CTP VSIX has already been installed.
2.1.7.26 2012-12-03 Issue 2546 Got message: Version of file "postsharp.srv.4.0-x86.exe" is 0.0.0.0, but version 2.1.7.25 was expected.
2.1.7.25 2012-11-30 Enhancement 2538 Check the pipe server version before starting the process.
2.1.7.24 2012-11-29 Issue 2532 Leases from the license server are improperly read from the lease cache.
2.1.7.24 2012-11-29 Issue 2520 License server throws HttpException - Request timed out.
2.1.7.23 2012-11-27 Issue 2463 IntroduceInterface may override the wrong member.
2.1.7.23 2012-11-27 Issue 2278 Update check should not be performed when running unattended.
2.1.7.23 2012-11-26 Issue 2305 CompilerGeneratedAttribute missing from MulticastImplementationDetails.
2.1.7.23 2012-11-26 Issue 2310 MoveOrCopyWithRetry.IsLockException throws NullReferenceException.
2.1.7.22 2012-10-22 Enhancement 2128 Post-compilation fails when there is an error with debugging symbols of a single method.
2.1.7.21 2012-10-15 Issue 2099 Trial registration: email validation rejects addresses with upper case.
2.1.7.21 2012-10-15 Enhancement 2102 Support for StructLayoutAttribute and FieldOffsetAttribute in CustomAttributeIntroductionAspect.
2.1.7.20 2012-10-10 Regression 1952 No guard prevents LocationInterceptionAspect to be applied on abstract members.
2.1.7.20 2012-10-10 Issue 1828 PostSharp executable not found when MSBuild runs in 32-bit but PostSharp in 64-bit.
2.1.7.20 2012-10-10 Regression 1826 MSBuild caches PostSharp.MSBuild.[Build].dll and creates versioning conflitcs.
2.1.7.20 2012-10-10 Issue 2046 VSX files not included in the ZIP distributions.
2.1.7.19 2012-10-09 Regression 1918 Class HostServiceProvider should hold RemotingAccessors, not directly MBRO.
2.1.7.18 2012-09-27 Issue 1950 Nuget install.ps1 for Patterns incorrectly handles escaped characters in reference to PostSharp.targets (fixed).
2.1.7.17 2012-09-27 Issue 1826 MSBuild caches PostSharp.MSBuild.{Build}.dll and creates versioning conflitcs.
2.1.7.17 2012-09-27 Issue 1950 Nuget install.ps1 for Patterns incorrectly handles escaped characters in reference to PostSharp.targets.
2.1.7.17 2012-09-27 Issue 1952 No guard prevents LocationInterceptionAspect to be applied on abstract members.
2.1.7.16 2012-09-19 Issue 1918 Class HostServiceProvider should hold RemotingAccessors, not directly MBRO.
2.1.7.15 2012-09-19 Issue 1858 Symbolic sequence points incorrectly written when a method contains instructions from several documents.
2.1.7.15 2012-09-18 Issue 1854 Aspect Initialization throws exception with obfuscation awareness is enabled.
2.1.7.13 2012-09-13 Issue 1847 Nested exported types are not supported.
2.1.7.13 2012-09-13 Issue 1846 Exception when writing an assembly that contains exported types.
2.1.7.13 2012-09-11 Issue 1831 Error from RequiresPostSharp.cs even when PostSharp is included in the build process.
2.1.7.12 2012-09-04 Issue 1816 Invalid code generation: tail.call need to be transformed into a non-tail.call when in a protected block.
2.1.7.12 2012-09-04 Issue 1819 Cannot set license server URL through MSBuild property.
2.1.7.11 2012-08-21 Issue 1811 License service generated test keys for production customers since 2011-08.
2.1.7.8 2012-08-17 Issue 1796 Inappropriate error message: ScalarConstraint does not have MulticastAttributeUsage.
2.1.7.8 2012-08-17 Issue 1769 Setting user-profile registry keys may throw exceptions.
2.1.7.8 2012-08-17 Issue 1793 MetricAttribute missing from the Windows Phone build of PostSharp.dll
2.1.7.9 2012-08-17 Issue 1792 ModuleDeclaration.FindType works incorrectly with pointer types.
2.1.7.8 2012-08-17 Issue 1792 ModuleDeclaration.FindType works incorrectly with pointer types.
2.1.7.8 2012-08-17 Issue 1791 Type forwarders are not reversely resolved when mapping reflection types to metadata.
2.1.7.8 2012-08-17 Issue 1790 AssemblyLoadException when loading an assembly into the CLR if the reference assembly has a different identity than the GAC assembly.
2.1.7.7 2012-08-15 Issue 1777 "Learn PostSharp" toolbox always opens itself at startup.
2.1.7.6 2012-07-29 Issue 1769 Setting user-profile registry keys may throw exceptions.
2.1.7.5 2012-07-25 Issue 1760 Invalid validation of email address in trial registration.
2.1.7.5 2012-07-25 Issue 1759 ArgumentException when several AspectWeaverPlugIn instances are added to a project.
2.1.7.5 2012-07-25 Issue 1758 MulticastPointcutEngine throws exception when aspect applied to TypeRef for PostSharp Development.
2.1.7.4 2012-07-13 Issue 1726 Reference assemblies are loaded from GAC instead of from the reference directory.
2.1.7.4 2012-07-13 Story 1374 Support for NuGet Restore.
2.1.7.3 2012-07-09 Issue 1709 Incorrect version of ActiPro is included in the software .
2.1.7.3 2012-07-09 Issue 950 Fix issue introduced in solving issue 950 in previous build.
2.1.7.2 2012-06-29 Issue 1697 Require registration to start the evaluation period.
2.1.7.2 2012-06-29 Issue 950 PostSharp executable not found when MSBuild is sandboxed.
2.1.7.1 2012-06-08 Issue 1665 Tasks are initializing in undeterministic order, causing dependency (ordering) issues.
2.1.7.1 2012-06-08 Enhancement 1664 Remove automatic opening of the Learning Path toolbox in evaluation mode.
2.1.7.1 2012-06-08 Enhancement 1663 Add-ins can be included from an MSBuild project using the @PostSharpAddIn item.
2.1.7.1 2012-06-08 User Story 1572 Decompilation to expression tree.
2.1.6.16 2012-05-31 Issue 1644 PostSharp HQ can enter trial mode without the license agreement dialog.
2.1.6.16 2012-05-31 Enhancement 1643 Code optimizer should be disabled with HappyMonday licenses.
2.1.6.16 2012-05-31 Issue 1642 Relocation table is incorrect, causing programs to be unable to load when Symantec Endpoint Protection is installed.
2.1.6.16 2012-05-31 Issue 1640 ImageReader throws exception when the CorMetadataRoot1 is not aligned on 4-byte boundary.
2.1.6.16 2012-05-31 Issue 1616 Pipe server form should be hidden, not minimized.
2.1.6.15 2012-05-15 Issue 1601 MSBuild target PostSharp21CopyOutputToCodeAnalysis tries to copy vhost.exe and violates lock.
2.1.6.15 2015-05-15 Enhancement 1602 Automatic detection of DotPeek to see decompiled source code.
2.1.6.14 2012-04-25 Enhancement 1565 NameMapper can map name of intrinsics.
2.1.6.14 2012-04-25 Issue 1513 Cannot install on Windows 7 in some scenarios: .NET 3.5 SP1 not detected.
2.1.6.13 2012-04-02 Issue 1535 XML Multicast task generates AttributePriority values automatically.
2.1.6.13 2012-04-02 Issue 1524 Invalid MSIL generated when aspect applied on public extern methods contained in a nested private class.
2.1.6.12 2012-03-28 Issue 1503 MethodExecutionArgs.ReturnValue must be populated when the property is written (not only read) by an advice.
2.1.6.12 2012-03-28 Issue 1507 OnMethodBoundaryTransformationInstance.Implementation.ImplementOnException throws NullReferenceException.
2.1.6.12 2012-03-28 Issue 1506 AssemblyLoadException when assemblies have the flag 32BITPREFERRED.
2.1.6.11 2012-03-21 Issue 739 WriteWeavingSymbolsTask.Execute throws UnauthorizedAccessException.
2.1.6.11 2012-03-21 Issue 256 Win32Exception in PostSharp.VisualStudio.HWndDispatcher.BeginInvoke.
2.1.6.11 2012-03-21 Issue 1436 AspectWeaver.AspectWeaverTask.Execute throws InvalidCastException.
2.1.6.11 2012-03-21 Issue 229 NullReferenceException in QuickInfoTracker.OnMouseMove.
2.1.6.11 2012-03-21 Issue 1435 PointcutAwareAdviceGroup.EvaluatePointcuts throws InvalidCastException.
2.1.6.11 2012-03-21 Issue 1434 CustomAttributeHelper.ConstructRuntimeObject reports exception in user code to CEIP.
2.1.6.11 2012-03-21 Issue 1433 EnvDTE.Project.get_Name() throws COMException.
2.1.6.11 2012-03-21 Issue 1413 Make AspectConfigurationAttributeType public.
2.1.6.11 2012-03-20 Issue 1464 ArgumentException from ISymUnmanagedWriter.GetDebugInfo with non-ASCII paths.
2.1.6.10 2012-03-20 Issue 1460 Invalid detection of the x64 platform on Visual Basic.
2.1.6.10 2012-03-20 Issue 1461 Invalid PE header: 64-bit assemblies cannot allocate more than 2GB.
2.1.6.9 2012-03-16 Issue 1431 Missing assembly redirection for Silverlight 5.0 with RIA.
2.1.6.9 2012-03-06 Issue 1395 Compatibility issue with projects targeting .NET 4.5 (PostSharp.targets).
2.1.6.9 2012-03-06 Issue 1395 Compatibility issue with projects targeting .NET 4.5 (PostSharp.targets).
2.1.6.8 2012-02-29 Issue 1376 Property 'PropertyWrapper.PropertyType' throws NullReferenceException for properties of unbound generic type.
2.1.6.8 2012-02-29 Issue 1359 VSX installation check runs even in unattended mode, causing locking issues.
2.1.6.7   Issue 1336 Invalid code generation when OnExceptionAspect follows a MethodInterceptionAspect.
2.1.6.6   Regression 1119 Debugging symbols: local variable symbols lost in implicit iterators.
2.1.6.3   Bug 1283 Setup Wizard displays error "VSX already installed" when trying to update.
2.1.6.3   Bug 1285 Setup Wizard fails to upgrade the VSX if files are locked. Must ask to close applications.
2.1.6.3   User Story 1282 Adding MulticastAttributes from XML project data for PostSharp Development.
2.1.6.3   User Story 1281 Project files can contain XML data islands.
2.1.6.3   Bug 1273 Tasks with AutoInclude can be added twice and create duplication conflicts.
2.1.6.2   Bug 1269 Disable pipe server when the build runs unattended.
2.1.6.2   Bug 1268 Licensing is enforced on build servers, altought it should not.
2.1.6.2   User Story 1266 Add services to a project without referencing PostSharp SDK.
2.1.6.2   User Story 1247 Unify Projects and PlugIns in the project loader system.
2.1.5.13   Bug 950 PostSharp executable not found when MSBuild is sandboxed.
2.1.5.13   User Story 1239 Track feature usage (aspect types, advice types, pointcut types).
2.1.5.13   User Story 1222 Prepare support for feature tracking in user aspects.
2.1.5.13   User Story 1236 Report usage of redistribution licenses through CEIP.
2.1.5.13   Bug 1205 Debugging sequence points are damaged with Code Contracts Runtime Checker.
2.1.5.13   Bug 1238 Redistribution licenses issued for 2.0 have missing features under 2.1.
2.1.5.12   Bug 1215 Visual Studio package cannot be loaded (because of fix 1188).
2.1.5.11   Bug 1213 Aspects be initialized too late -- upon first use instead of upon class initialization.
2.1.5.10   Bug 1207 Bug in PostSharp.Reflection.LocationInfo.IsStatic.
2.1.5.10   Bug 1204 BaseLanguageAdapter.VisitCodeType throws ArgumentException.
2.1.5.10   Bug 1201 IClrMetaHost.EnumerateLoadedRuntimes throws COMException in static constructor of DotNet40Api.
2.1.5.10   Bug 1186 Aspect Browser causes a crash in Visual Studio 2008.
2.1.5.10   Bug 1188 Strong name signatures removed from PostSharp.VisualStudio.*.dll.
2.1.5.10   Bug 1179 Binding issues with Silverlight 5 RTM - more assembly redirections must be configured.
2.1.5.10   Bug 1156 Domain.FindDeclaration throws NullReferenceException (Silverlight).
2.1.5.10   Bug 967 Incorrect MSIL generation for OnMethodBoundary - generic method definition instead of generic method instance.
2.1.5.9   Bug 1182 ObjectConstruction throws an exception if an attribute contains named arguments.
2.1.5.8   Bug 1137 Purely event-level aspects (such as CustomAttributeIntroductionAspect) are ignore
2.1.5.7   Bug 1128 FileNotFoundException when trying to load a project embedded in an assembly with the ';' separator.
2.1.5.7   Bug 1134 GAC assemblies not found in post-obfuscation processing.
2.1.5.7   User Story 1130 Easy integration of PostSharp VSX with external decompilers.
2.1.5.6   Bug 1119 Debugging symbols: local variable symbols lost in implicit iterators.
2.1.5.6   Bug 1118 Debugging symbols: namespace references not preserved.
2.1.5.6   Bug 1092 Merge bug fixes from Microsoft CCI into PostSharp.
2.1.5.5   Bug 1090 Unmanaged resources could get corrupted.
2.1.5.4   Bug 1068 'PostSharp' project property tab cannot be scrolled
2.1.5.4   Bug 1059 Issue with assembly-level IgnoreWarningAttribute
2.1.5.4   Bug 1067 Invalid assembly generation due to reentrance on blob creation
2.1.5.3   Bug 1066 Invalid generation of method bodies: MaxStack must be computed before choosing the header type
2.1.5.2   Bug 1048 Compile tab missing in VB project properties of VS 2010
2.1.5.2   Bug 1051 Invalid assembly binding identity generated for assemblies linked to .NET 1.*
2.1.5.2   Bug 1049 PostSharp HQ fails to register license for all users when the license key contains spaces

Inclusion of third-party products

PostSharp includes parts of the following products developer by third parties:

Product Url Version Rights Owner License Dependency Kind Usage Description
Microsoft Common Compiler Infrastructure (CCI) http://ccimetadata.codeplex.com/ January 2011 Microsoft Corporation Microsoft Public License Source code: modified and integrated with our product Reading and writing debugging symbols.
Microsoft.CodeAnalysis
Microsoft.CodeAnalysis.CSharp
https://github.com/dotnet/roslyn November 2014 Microsoft Open Technologies, Inc MIT License Source code: unchanged but recompiled with original strong name keys, used as binary dependencies, IL-merged inside our own libraries Resolving file/line/column of errors and warnings
System.Collections.Immutable
System.Reflection.Metadata
https://github.com/dotnet/corefx November 2014 Microsoft Corporation Apache License, Version 2.0 Source code: unchanged but recompiled with different strong name keys, used as binary dependencies, IL-merged inside our own libraries
MD5 http://dlaa.me/blog/post/10100917 December 2010 David Anson & RSA Data Security, Inc. Apache License, Version 2.0 Source code: modified and compiled inside our dependencies Computing non-secure unique hashes.