Releases: icsharpcode/CodeConverter
Releases · icsharpcode/CodeConverter
8.5.0
[8.5.0] - 2022-04-10
Known issue: In VS2017, right clicking a single file to convert in the solution explorer throws an error.
Workaround: Open the file, select its whole contents, right click and convert.
Vsix
- Last version supporting VS2017 and some earlier VS2019 versions (15.7-16.9)
VB -> C#
- Xml Namespace Imports now converted #836
- Use explicit cast when integral numeric types are casted to enum #861
- Correct inconsistent casing of event handlers #854
C# -> VB
[8.4.7] - 2022-03-12
- Command line no longer silently exits for dot net framework projects
- Log messages now include timestamps
[8.4.6] - 2022-03-02
Vsix
VB -> C#
- Fix method arguments when calling a parametrized property with named arguments. #833
- Fix access modifiers for explicit interface implementations. #819
- Fix code generation for explicit interface implementations. #813
- Add support for converting multiple selected files and folders. #485
- Replace VB-specific library methods with idiomatic framework alternatives #814
- Remove redundant break expressions in switch-case statements. #432
- Generate out parameter instead of ref for implementations of external methods. #831
- When passing a property ByRef, don't try to assign it back afterwards #843
C# -> VB
- Improve snippet detection #825
[8.4.5] - 2022-01-26
Vsix
- Only trigger build for converted project where possible #816
VB -> C#
- Convert Exit Try to a do while false loop with a break statement #779
- Fix missing parenthesis for null coalescing operator #811
- No longer throws NRE for VB Static variable without initializer. See comment on #623
- Convert nested xml literals to new XElement #253
C# -> VB
[8.4.4] - 2022-01-09
Vsix
VB -> C#
- No longer throws NRE for embedded resources with no LastGenOutput #804
- Append CompareMethod.Text for Strings methods when needed #655
- Convert op_Implicit/op_Explicit calls to casts #678
- Use Conversions.ToString when concatenating a DateTime with a string #806
- Ensure named arguments are correctly named when followed by an omitted argument #808
- Convert static variables into fields #623
- Ensure query syntax join conditions are swapped to the necessary C# order #752
- Convert nested exit statements to if statements #690
C# -> VB
- More terse conversion in for loop with literal end value #798
[8.4.3] - 2021-12-23
Vsix
VB -> C#
- Convert extension methods on ByRef reference types to static invocations #785
- Wire up events for WithEvents fields in an ancestor class #774
- Only create delegating property for WithEvents fields if there is a known write usage or descendant class Due to feedback on #615
C# -> VB
[8.4.2] - 2021-12-11
Vsix
- Attempt to improve VS2017 compatibility
VB -> C#
- Convert with blocks using structs to a local ref variable#634
- Ensure xml-doc at start of file is kept #663
C# -> VB
[8.4.1] - 2021-10-02
Vsix
VB -> C#
- Convert VB exclamation mark into C# indexer #765
- Deal with nullable bools in binary expressions #712
- No longer tries to qualify type parameters (e.g. in generic delegates) #771
C# -> VB
[8.4.0] - 2021-09-05
Vsix
- VS2017 compatibility improvement
- VS2022 Preview 3.1 compatibility
VB -> C#
C# -> VB
[8.3.1] - 2021-08-22
Vsix
- Provided workaround in options for some assembly loading issues #741
VB -> C#
- Convert
orderby distinct
in linq #736 - Convert nested Select queries in linq #635
Chr
converted toStrings.Chr
where code page aware conversion needed #745
C# -> VB
- Guess some common using statements for incomplete fragments #743
[8.3.0] - 2021-07-02
Vsix
- Support for VS2022
8.2.5
8.1.7
[8.1.7] - 2020-08-16
- Timeout cosmetic operations (formatting/comments) after 15 minutes of inactivity #598
Vsix
- Options page to adjust timeout
VB -> C#
- Convert parameterized properties with optional parameters #597
- Convert bitwise negation #599
- No longer adds incorrect "base" qualification for virtual method calls #600
- Don't generate unnecessary properties for WithEvents fields #572
- Add type conversion where needed for externally declared loop control variable #609
- Convert string operators in common cases #608
- Type convert parameterized property in assignment #610
C# -> VB
[8.1.6] - 2020-07-12
Vsix
- Fix file extension and location of single converted file #589
VB -> C#
- Correct logic for conversion "objectWithOverloadedEquals Is Nothing" #591
- Coercing enum to a string now correctly uses its numeric value #590
- Correct conversion for equality of overloaded types #594
- Correct conversion when for loop variable is a class member #601
- Correct conversion when for loop "To" expression is a boolean #602
C# -> VB
VS 16.7 compatibility
Vsix
- Workaround Visual Studio 16.7+ that was causing VB->CS conversion to fail #586
VB -> C#
- Handle Option Compare Text case insensitive comparisons in switch statements #579
- Fix compilation error when switching with enum cases #549
- Improve numeric casts #580
- Add ref to conversion of RaiseEvent where needed #584
- Rename clashing type memvers #420
- Fix conversion for string implicitly converted to enum #476
C# -> VB
8.1.4 Minor fixes
8.1.3 VB -> CS Improvements
VB -> C#
- Improve post-conversion experience for designer files - #569
- Optimize away some redundant casts and conversions with strings/chars - #388
- Improve performance of single file conversion - #546
- Add AsEnumerable where needed in linq "in" clause - #544
- Remove redundant empty string coalesce in string comparison - #500
- Convert VB comparison operators - #396
- Convert Redim Preserve of 1D array to Array.Resize - #501
- Use C#7.3 compatible null check
8.1.2 VB -> CS improvements
VB -> C#
- Improve multi-declaration field conversion for arrays - #559
- Add parentheses around ternary statement - #565
- When converting ForEach loop, avoid duplicate variable compilation issue #558
- Improvements to for loop with missing semantic info - #482
- Fix logic issue when converting property passed byref - #324
- Fix logic issue when converting expression passed in byref within conditional expression - #310
- Added constructors now only added to the relevant type - not other types in the same file
- Converted non-static field initializers moved to constructor - #281
- Convert assignments using "Mid" built-in function
- Improve conversion of array initializer types
VS 2017 hotfix
Fixes conversion in VS2017
Command line tool release
Command line tool released, get it with dotnet tool install ICSharpCode.CodeConverter.codeconv --global
Known issue: Not compatible with VS2017 (use next release)
VB -> C#
- Convert files with legacy vb6 file extensions (e.g. .cls, .frm)
- Fix for converting For...Next...Step loops with a variable step that's sometimes negative #453
- Fix for abstract readonly/writeonly property conversion including a private accessor
- Generated parameterless constructors are now public by default
- Multiple classes in the same file no longer affect each other's constructors
- Cast expressions are now parenthesized when converted
- Fix nullref fatal error dialog for delegates with omitted argument types #560
VB -> CS hotfix
VB -> C#
- Fixes error thrown when converting single file from VB project with resx files