Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Tree: d96257b6a3
Fetching contributors…

Cannot retrieve contributors at this time

210 lines (200 sloc) 11.8 KB
- Removed script loading APIs from Script class in mscorlib
(moved them to Loader class in Script.Web)
- Removed script startup functionality from mscorlib.js ... all script
loading is now in ssloader.js (and included into the Runtime nuget
- Removed Script.Alert/Confirm/Prompt from mscorlib and moved them to
Window in Script.Web
- Moved SetTimeout, SetInterval and ClearTimeout, ClearInterval from
Window object to Script object in mscorlib.
- Removed some methods from Type as part of cleanup (AddHandler,
GetProperty, RemoveHandler, SetProperty, IsEnum, IsFlags, IsNamespace,
GetInterfaces, Parse)
- Removed window dependency in mscorlib.js
- Debug class now maps directly to console
- Moved GetField, HasField, DeleteField, HasMethod, InvokeMethod,
CreateInstance, GetScriptType off Type and onto Script while
HasProperty, GetProperty, SetProperty, AddHandler, RemoveHandler are gone
- Optimize generation of static ctors to use a function scope only when
static ctors have a local variable reference.
Should help optimize generation of jQuery scripts, by reducing one extra
function scope.
- Removed Aggregate method from Array, ArrayList and List. Use Reduce instead.
Removed the corresponding custom implementation from mscorlib.js.
- [git #131] Correctly detect member references within array initializers
- [git #161] Add Slice, Splice, Shift, Unshift, Reduce, ReduceRight to
Array, ArrayList and List.
- [git #228] Restore ability to generate public resource classes
(Change Custom Tool property of resx file to
- [git #230] Add String.IsNullOrWhitespace
- [git #234] Knockout API update - added CompareResult status enum
- DOM metadata update (readyState property on Document,
plugins on Navigator)
- jQuery API update (on/off methods)
- Knockout API updates for missing APIs
- Addition of support for jQuery validation plugin
- jQueryUI added!
- [git #130] ReadyState property on Document
- [git #132] DOM metadata for plugins
- [git #139] jQuery on/off APIs
- [git #141] Bing maps metadata missing APIs
- [git #145] Knockout additions
- [git #152] Knockout additions
- [git #155] ReadyState property on Document
- [git #156] Changed projects (incl. templates) to target .net framework v2.0
- [git #166] Fix generic Deffered API on jQuery
- [git #169] Missing jQuery API overload added
- [git #170] Fix bing maps metadata bug
- [git #173] Fix StringBuilder and appending empty string/isEmpty interaction
- [git #178] Issues with string extensions
- [git #180] Added workaround: Better error message for namespace-qualified name gotcha
- [git #183] Various DOM metadata additions (eg. ClassList)
- [git #187] Support for writing 'new Image()'
- [git #189] Fixed jQuery.when metadata
- [git #201] Strongly typed some Knockout API (KnockoutMapping)
- Nuget packages for compiler, and individual import libraries
- VSIX-based approach for getting script# and associated templates
- Breaking changes:
- In a csproj, the TemplateFile property has been changed to ScriptTemplate
- When creating a project there is no prompt to setup a DeploymentPath
... but for now, msbuild support continues to exist (via manual edit)
... will potentially be replaced eventually.
- No more support for WebAppParitioning. If you were compiling multiple script
files out of a single c# project, this feature is gone. You can switch your
msbuild scripts to use the ScriptCompilerExecTask, instead of ScriptCompilerTask
and invoke the compiler multiple times for each script file, passing in exactly
the right set of sources for each script file to be generated.
- Removed Script.Windows.dll and gadget project
- Fix/update bing maps metadata bug
- Fix observable bug where access to an observed property without an observer
registration would drop existing observers.
- Remove /copyRefs flag from ssc.exe (script references are no longer copied to output folder)
Same applies to ScriptCompilerExec task. The normal ScriptCompilerTask continues to provide
this capability.
- Added Sharpen.dom.js - a minimal set of helper APIs on top of HTML5 DOM APIs.
- Some enum related changes:
ToString/Enum parsing support removed (it didn't work for internal enums anyway)
ToString on named enums (and on strings) skipped as it is redundant
Inline enum values in generated script
Skip generating internal enum types
- [git #25] Importing multi-dimensional arrays
- [git #56] Switch statement when used with more then 6 cases will generate a compile error
- [git #62] Compile error due to assembly name sort order (with generic types being
imported, assembly load order starts to matter)
- [git #66] Support Nullable.GetValueOrDefault which is needed for ?? operator on
- [git #67] BREAKING CHANGE: DateTime -> Date. Date is also no longer a value type.
(partially fixes #67, and also makes Date more representative of script semantics
which are not that of a value type)
- [git #84] Raise error for code which calls Type.CreateInstance with the results of a method
call/property access directly.
- [git #92] Don't generate internal consts since their values have been inlined
even in debug builds (for symmetry with release builds)
Also, at the same type skip generating types for internal enums marked
as Named/NumericValues, since their values have been inlined as well.
Also fixes [git #42] indirectly.
- [git #93] Error compiling cross-referenced projects in 0.7.3
Fix by requiring explicit references, and reporting failure on not doing so
instead of silent failure (this is temporary ... there must be a better
msbuild way of including transitive closure of assemblies, but even
referencing indirect references in the targets file raises an error to
include explicit references).
- [git #94] Raise error for code which calls Type.CreateInstance with the results of a method
call/property access directly.
- [git #96] Handle '+' unary operator
- [git #97] Unable to generate code for projects that don't reference Script.Web.dll.
- [git #103] Fix generation of custom delegates to use "Function" as generated script name
- [git #107] ScriptAlias is not respected on types defined in the current assembly
- [git #114] Window.ApplicationCache.Status.ToString() generates invalid JavaScript
v0.7.3.0 [8/14/2011]
- [git #71] Fix formatting of GMT dates
- [git #70] Support for const decimal
- [git #69] Fix LocaleFormat typo
- [git #76] Compiler crash in 0.7.2 defining decimal type with non-integer value
- [git #75] Defining a local variable 'ss' hides the Script# ss global
- [git #60] List constructor with params for creating literal array
- [git #74] Fix date formatting to make it more in sync with .net
- [git #63] Fix internal partial class generation
- [git #65] Calling ToString() on a constant breaks minified script
- [git #73] Creating Record objects from another library
- [git #80] The decimal type is missing the Parse method
- [git #84] if(<var> is <type>) not compiled properly when <type> is a delegate.
- Enable creating derived jQueryEvent objects
- Knockout API updates (ability to create binding handlers for example)
- Propagate ScriptNamespace to generic instance class
- DOM API metadata updates
- Separate out msbuild tasks into ScriptSharp.Build.dll and Visual Studio generators
into ScriptSharp.VisualStudio.dll
v0.7.2.0 [5/22/2011]
- Revert null equality check to non-falsey check
- Switch String.empty references to in generated script to string literal
- Fix delegate optimization bug involving Type.InvokeMember with first parameter being null
- Remove hack in metadata importer to try import generic types first
(instead design imported apis carefully so type don't have instance of generic type
as return type of a member)
- To fix above bug:
- jQueryXmlHttpRequest<TData> replaced with jQueryDataHttpRequest<TData>
and jQueryXmlHttpRequest is now non-generic
- Added non-generic versions of various jQuery ajax callbacks
- Improve jQuery deferred APIs
- jQuery 1.6.1 APIs and other missing APIs added
- [git #36] Misc jQuery apis added
- [git #50] Fix GeoLocation API: WatchCurrentPosition -> WatchPosition
- Added AudioElement
- Added Tuple, Callback, various component model interfaces
- FxCop rules for CSS Selector validation, Script.Literal usage and public fields
- [git #45] Apply [PreserveName] semantics in debug builds as well
- [git #52] DocumentFragment related API updates
- [git #54] DateTime metadata update
v0.7.1.0 [5/2/2011]
- [git #19] Add CssFloat to Style
- [git #22] Fix issue with importing generic delegates - generic types were getting
created before their members were being imported.
- [git #20] If/While/For statements can have an no body statement when compiling in release
mode, and the only statement in source code is a debug-conditional statement.
- [git #27] Optimize generated script for checking equality against null, 0, true/false, empty
string by generating a check that works against false-y values
- [git #28] Fix jQueryAjaxOptions metadata
- [git #29] Add Select() to InputElement
- Added Observable<T> and mscorlib infrastructure for observables, and change notification
- Added ObservableCollection and ObservableCollection<T> along with mscorlib implementation
- Added Script.IsValue (equivalent of !Script.IsNullOrUndefined)
- Added Nullable<T> and T? syntax support; .HasValue -> Script.IsValue, .Value is a no-op at runtime
- Added ElementQuery, ElementListQuery, and ElementReference helper classes for emitting script
expressions when using AddScriptlet
- [git #7] Add missing jQueryObject.Html overload
- Add Document.ElementFromPoint
- DOM events API added
- [git #3] Fixed anonymous delegation creation by detecting use of 'this' context for
variable declaration
- [git #9] String literal optimization
- [git #11] Added SCRIPTSHARP to the defines list in the project template
- Remove Script.Windows.js and move the functionality into gadget project template.
- Add ss.init/ss.ready to mscorlib.js as well, in case page is not using ssloader.js.
- [git #4] Fixed typo in mscorlib.js
- Fix typo in web.config in nuget package
- Fix bug with jQuery.InArray signature
v0.7.0.0 [4/13/2011]
- Added basic generic support - ability to consume some generic types such as List<T>, Dictionary<K, V>,
Action<T>, Func<T> etc.
- Fix bug with NamedValues enum not working with [ScriptName]
- New script loader
- New mvc integration
- Updates to project templates to match new script loader
- Various metadata updates - eg. Canvas, Image, Document etc.
- Replace ContextualCallback with Action<T>
- Replace CancelEventHandler with EventHandler<T>
- Replace Delegate.Null -> Delegate.Empty
- ScriptCompilerTask msbuild task removes "DEBUG" define for release build even when building
in Debug mode from an msbuild perspective.
- Some namespace changes (eg. System.Globalization)
- Nuget package
- Replace XmlDocumentParser class with parseXml method
Jump to Line
Something went wrong with that request. Please try again.