API-CHANGES.txt 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645
  1. 0.18.3:
  2. * Move {add,remove}Element from Array.prototype to kernel API.
  3. + Collection >>
  4. + copyWithout:
  5. + amber/boot api >>
  6. + addElement
  7. + removeElement
  8. + wrapJavaScript
  9. + CharacterArray >>
  10. + asSymbolPrintOn:
  11. + symbolPrintString
  12. + String >>
  13. + isSelector
  14. + StringStream >>
  15. + print:
  16. + printSymbol:
  17. - Association >>
  18. - importsString
  19. - String >>
  20. - importsString
  21. - AbstractExporter
  22. - classNameFor:
  23. - Exporter >>
  24. - jsClassNameFor:
  25. 0.18.2:
  26. * Add Platform-DOM package with DOM-related stuff.
  27. * Platform-DOM not loaded by default. Packages that will use it will import it.
  28. + PlatformDom class >>
  29. + isFeasible
  30. + isDomNode:
  31. + newCustomEvent:detail:
  32. + toArray:
  33. + CharacterArray >>
  34. + asDomNode
  35. + Collection >>
  36. + asDomNode
  37. + JSObjectProxy
  38. + asDomNode
  39. + String
  40. + htmlTextContent
  41. 0.18.1:
  42. + ASTNode >>
  43. + withTail:
  44. - SendNode >>
  45. - valueWithReceiver:
  46. 0.18.0:
  47. * Remove class RethrowErrorHandler (hack for cli before 0.12.3).
  48. * Add Kernel-Dag package with abstract DAG-node and DAG-node visitor.
  49. * Some internal API changes in Compiler-* (including the move to DAG-node).
  50. - Object >>
  51. - throw:
  52. 0.17.0:
  53. * Remove classes InterfacingObject, PlatformInterface.
  54. * Deprecate $boot.nil (use $boot.nilAsReceiver).
  55. + amber/boot api >>
  56. + nilAsReceiver
  57. - NativeFunction class >>
  58. - constructor:
  59. - constructor:value:
  60. - constructor:value:value:
  61. - constructor:value:value:value:
  62. 0.16.1:
  63. * Deprecate $boot.dnu (use $boot.nilAsClass).
  64. + amber/boot api >>
  65. + nilAsClass
  66. 0.16.0:
  67. * Deprecate ClassBuilder >> setupClass:
  68. * $core.initialize now returns a Promise
  69. * $core.addClass now returns the class
  70. + amber/boot api >>
  71. + send2
  72. + traverseClassTree
  73. + Promise class >>
  74. + new
  75. - amber/boot api >>
  76. - wrapClassName
  77. - send
  78. - allSubclasses
  79. - AbstractCodeGenerator
  80. - classNameFor:
  81. 0.15.1:
  82. * Thenable class added
  83. * Promise class added, wraps JS Promise, subclass of Thenable
  84. + Thenable >>
  85. + catch:
  86. + on:do:
  87. + on:do:catch:
  88. + then:
  89. + then:catch:
  90. + then:on:do:
  91. + then:on:do:catch:
  92. + JSObjectProxy >>
  93. + catch:
  94. + on:do:
  95. + on:do:catch:
  96. + then:
  97. + then:catch:
  98. + then:on:do:
  99. + then:on:do:catch:
  100. + amber/boot api
  101. + seamless
  102. + Promise class >>
  103. + new:
  104. + forBlock:
  105. + value:
  106. + signal:
  107. + all:
  108. + any:
  109. 0.14.18:
  110. * Some internal API changes in Compiler-*.
  111. 0.14.14:
  112. * InterfacingObject >> ajax: deprecated
  113. * PlatformInterface class deprecated
  114. * Class BrowserInterface removed
  115. * Class Terminal, BrowserTerminal added
  116. * Class Platform, BrowserPlatform added
  117. + Environment >>
  118. + renamePackage:to:
  119. + Platform class >>
  120. + globals
  121. + newXhr
  122. + Terminal class >>
  123. + alert:
  124. + confirm:
  125. + prompt:
  126. + prompt:default:
  127. SmalltalkImage >>
  128. + existsJsGlobal:
  129. - PlatformInterface class >>
  130. - initialize
  131. - setWorker:
  132. 0.14.12:
  133. + JSObjectProxy >>
  134. + putOn:
  135. + ProtoStream >>
  136. + nextPutJSObject:
  137. 0.14.11:
  138. * Basic streaming protocol extracted from Stream to ProtoStream
  139. + Object >>
  140. + in:
  141. + JSObjectProxy >>
  142. + in:
  143. 0.14.10:
  144. + JSObjectProxy class >>
  145. + addObjectVariablesTo:ofProxy:
  146. + compareJSObjectOfProxy:withProxy:
  147. + forwardMessage:withArguments:ofProxy:
  148. + jsObject:ofProxy:
  149. + lookupProperty:ofProxy:
  150. - JSObjectProxy >>
  151. - jsObject:
  152. - lookupProperty:
  153. - compareJSObjectWith:
  154. - addObjectVariablesTo:
  155. - forwardMessage:withArguments:
  156. 0.14.4:
  157. + AmdExporter >>
  158. + importsForOutput:
  159. + AbstractCodeGenerator >>
  160. + currentPackage
  161. + currentPackage:
  162. + Compiler >>
  163. + currentPackage
  164. + currentPackage:
  165. + compile:forClass:protocol:
  166. + compileNode:forClass:package:
  167. + SemanticAnalyzer >>
  168. + thePackage
  169. + thePackage:
  170. + isVariableUndefined:inPackage:
  171. - Compiler >>
  172. - compile:
  173. - compile:forClass:
  174. - compileExpression:
  175. - SemanticAnalyzer >>
  176. - isVariableGloabllyUndefined:
  177. - Behavior >>
  178. - compile:
  179. 0.14.3:
  180. * #heliosClass is now #classTag
  181. + Compiler >>
  182. + eval:forPackage:
  183. + Behavior >>
  184. + packageOfProtocol:
  185. + Exporter >>
  186. + exportPackageContextOf:on:
  187. + exportPackageImportsOf:on:
  188. + Package >>
  189. + basicImports
  190. + imports
  191. + imports:
  192. + importsDefinition
  193. + importsFromJson:
  194. + importsAsJson
  195. + sortedImportsAsArray
  196. + validateImports:
  197. + Package class >>
  198. + named:imports:transport:
  199. + Association >>
  200. + importsString
  201. + String >>
  202. + importsString
  203. + ProtoObject >>
  204. + ifNil:
  205. + ifNil:ifNotNil:
  206. + ifNotNil:
  207. + ifNotNil:ifNil:
  208. + isNil
  209. + notNil
  210. - Object >>
  211. - ifNil:
  212. - ifNil:ifNotNil:
  213. - ifNotNil:
  214. - ifNotNil:ifNil:
  215. - isNil
  216. - notNil
  217. 0.14.1:
  218. * NativeFunction class >> constructor:[value:...] deprecated
  219. + NativeFunction class >>
  220. + constructorNamed:
  221. + constructorNamed:value:
  222. + constructorNamed:value:value:
  223. + constructorNamed:value:value:value:
  224. + constructorOf:
  225. + constructorOf:value:
  226. + constructorOf:value:value:
  227. + constructorOf:value:value:value:
  228. + functionNamed:
  229. + functionNamed:value:
  230. + functionNamed:value:value:
  231. + functionNamed:value:value:value:
  232. + functionNamed:valueWithArgs:
  233. + functionOf:
  234. + functionOf:value:
  235. + functionOf:value:value:
  236. + functionOf:value:value:value:
  237. + functionOf:valueWithArgs:
  238. + methodOf:this:
  239. + methodOf:this:value:
  240. + methodOf:this:value:value:
  241. + methodOf:this:value:value:value:
  242. + methodOf:this:valueWithArgs:
  243. + SmalltalkImage >>
  244. + optOut:
  245. + cancelOptOut:
  246. 0.14.0:
  247. + Object >>
  248. + asJQuery
  249. + asJQueryInContext:
  250. + BlockClosure >>
  251. + asJQuery
  252. + asJQueryInContext:
  253. - AnnouncementSubscription >>
  254. - block
  255. - block:
  256. - Collection >>
  257. - contains:
  258. - String >>
  259. - asSelector
  260. - asJavaScriptSelector
  261. - SmalltalkImage >>
  262. - at:
  263. - at:ifAbsent:
  264. - at:put:
  265. - current
  266. - vm
  267. - createPackage:properties:
  268. - MethodContext >>
  269. - temps
  270. - Object >>
  271. - try:catch:
  272. 0.13.2:
  273. + SourceArea class >>
  274. + codeMirror
  275. 0.13.1:
  276. * String >> asSelector is now String >> asJavaScriptMethodName
  277. * String >> asJavaScriptSelector is now String >> asJavaScriptPropertyName
  278. * smalltalk.selector is now smalltalk.st2js
  279. * smalltalk.convertSelector is now smalltalk.js2st
  280. * Collection >> ifEmpty:ifNotEmpty: family passes self to ifNotEmpty: block
  281. * Smalltalk vm is now Smalltalk core
  282. * boot.js's .vm is now .api
  283. * amber load sets' .vm is now .api
  284. * Internal variables smalltalk/globals/_st are now $core/$globals/$recv
  285. + smalltalk.
  286. + accessJavaScript
  287. + Object >>
  288. + postMessageTo:
  289. + postMessageTo:origin:
  290. + Class >>
  291. + heliosClass
  292. + SmalltalkImage >>
  293. + core
  294. + amber/boot exports
  295. + api
  296. + amber/{devel,deploy,lang} exports
  297. + api
  298. - ProtoObject class >>
  299. - heliosClass
  300. - Object class >>
  301. - heliosClass
  302. 0.12.6:
  303. + String >>
  304. + value:
  305. + ProtocolAnnouncement >>
  306. + package
  307. + Behavior >>
  308. + isTestClass
  309. + Package >>
  310. + isTestPackage
  311. + amber/{devel,deploy,lang} exports
  312. + nil
  313. + amber/helpers exports
  314. + nil
  315. 0.12.4:
  316. * Package Canvas renamed to Web
  317. * Object >> try:catch: deprecated in favour of BlockClosure >> tryCatch:
  318. + Announcer >>
  319. + on:do:for:
  320. + Node >>
  321. + navigationNodeAt:ifAbsent:
  322. + BlockClosure >>
  323. + tryCatch:
  324. + Environment >>
  325. + evaluate:for:
  326. + AmberCli >>
  327. + version:
  328. + Object >>
  329. + deprecatedAPI:
  330. - Environment >>
  331. - eval:on:
  332. - evaluateString:on:
  333. 0.12.3:
  334. * Package Import-Export renamed to Kernel-ImportExport
  335. * A dozen of methods moved from Object to ProtoObject
  336. * HashedCollection >> at:ifAbsentPut: pushed up to SequenceableCollection
  337. * HashedCollection >> , is now allowed (removed shouldNotImplement)
  338. * HashedCollection and Dictionary both subclasses of AssociativeCollection
  339. * Smalltalk class moved to SmalltalkImage class, Smalltalk is now global var
  340. * Smalltalk current deprecated in favour of Smalltalk
  341. * Smalltalk at:[put:] deprecated in favour of Smalltalk globals at:[put:]
  342. * <smalltalk.ClassName> deprecated in favour of <globals.ClassName>
  343. + CompiledMethod >>
  344. + defaultProtocol
  345. + Behavior >>
  346. + compile:protocol:
  347. + removeProtocolIfEmpty:
  348. + Package >>
  349. + load
  350. + loadFromNamespace:
  351. + Package class >>
  352. + load:
  353. + load:fromNamespace:
  354. + PackageTransport >> load
  355. + PackageHandler >> load:
  356. + AmdPackageHandler >> load:
  357. + Set >> removeAll
  358. + AssociativeCollection class
  359. + BucketStore class
  360. + SmalltalkImage >>
  361. + globals
  362. + vm
  363. + settings
  364. + Setting class
  365. + String >>
  366. + asSetting
  367. + asSettingIfAbsent:
  368. + settingValue
  369. + settingValueIfAbsent:
  370. + settingValue:
  371. + Smalltalk global variable
  372. - CompiledMethod >>
  373. - category: (use #protocol:)
  374. - defaultCategory
  375. - Behavior >> compile:category:
  376. - HTMLCanvas class >>
  377. - browserVersion
  378. - isMSIE
  379. - isMozilla
  380. - isOpera
  381. - isWebkit
  382. 0.12.2:
  383. * Collection >> contains: is deprecated in favor of anySatisfy:
  384. + Announcer >> on:doOnce:
  385. + String >>
  386. + uriEncoded
  387. + uriDecoded
  388. + uriComponentEncoded
  389. + uriComponentDecoded
  390. + Collection >>
  391. + removeAll
  392. + ifEmpty:ifNotEmpty:
  393. + ifNotEmpty:ifEmpty:
  394. + anyOne
  395. + noneSatisfy:
  396. + anySatisfy:
  397. + allSatisfy:
  398. 0.12.0:
  399. * SmalltalkMethodContext.prototype.fillBlock() takes a third 'index' parameter
  400. * Existing classes moved to new KernelInfrastructure package
  401. * ImporterExporter
  402. * are now StreamExporters
  403. * aware of AMD namespaces
  404. * support transport types and commit channels
  405. + Node >>
  406. + nextChild
  407. + method
  408. + postCopy
  409. + isCascadeNode
  410. + isLastChild
  411. + BlockNode >>
  412. + nextNode:
  413. + nextChild
  414. + SendNode >>
  415. + isCascadeSendNode
  416. + shouldBeAliased
  417. + CompiledMethod >> sendTo:arguments:
  418. + Array >>
  419. + addFirst:
  420. + removeLast
  421. + Number >>
  422. + ceiling
  423. + floor
  424. + asNumber
  425. + //
  426. + cos
  427. + sin
  428. + tan
  429. + arcCos
  430. + arcSin
  431. + arcTan
  432. + log
  433. + log:
  434. + raisedTo:
  435. + sign
  436. + **
  437. + ln
  438. + e
  439. + String class >> esc
  440. + String >>
  441. + asMutator
  442. + capitalized
  443. + isCapitalized
  444. + JSProxy >> printString
  445. + Behavior >>
  446. + ownProtocols
  447. + ownMethods
  448. + JSStream >> nextPutSendIndexFor:
  449. + InterfacingObject class
  450. + Interpreter class
  451. + DocumentFragmentTag class
  452. + AbstractExporter class
  453. + PlatformInterface class
  454. - Node >> extent
  455. - JSStream >> nextPutStatement:with:
  456. - Smalltalk.installSuperclass()
  457. - ClassReferenceNode class (now handled via VariableNode)
  458. 0.11.0:
  459. * AnnouncementSubscription use #valuable: instead of #block: (deprecated)
  460. * AbstractCodeGenerator inherits from Object, not NodeVisitor
  461. * Object>>printString
  462. * replace >>printString with >>printOn:
  463. * replace >>storeString with >>printString
  464. * PackageLoader is now PackageHandler (>>commit: >>setupPackagenamed:prefix: >>ajaxPutAt:data:
  465. * Package>>fetch: is now Package>>load:
  466. * Package>>fetch:prefix: is now Package>>load:prefix:
  467. * Queue>>front replaced by Queue>>next
  468. * Queue>>frontIfAbsent: replaced by Queue>>nextIfAbsent:
  469. * Queue>>back: replaced by Queue>>nextPut:
  470. * smalltalk.addMethod() does not use explicit JS selector
  471. * JSObjectProxy>>canForwardMessage: replaced by use of JSObjectProxy>>lookupProperty: with asJavaScriptSelector
  472. * JSObjectProxy>>forwardMessage: replaced by explicit JSObjectProxy>>forwardMessage:withArguments:
  473. * String>>asJavaScriptSelector moved to Kernel-Objects package
  474. + Object>>asString
  475. + Object>>putOn:
  476. + String>>isVowel
  477. + Collection>>putOn:
  478. + CharacterArray>>putOn:
  479. + Stream>><<
  480. + Stream>>write
  481. + SequenceableCollection>>newStream
  482. + SequenceableCollection>>readStream
  483. + SequenceableCollection>>stream
  484. + SequenceableCollection>>streamClass
  485. + SequenceableCollection>>writeStream
  486. + Collection>>isImmutable
  487. + Stream>>nextPutString:
  488. + StringStream>>nextPutString:
  489. + JSStream>>nextPutClassRefFunction:
  490. + String>>crlfSanitized
  491. + inlined Block now also responds to >>value:
  492. + Parser: split literal into runtimeLiteral and parseTimeLiteral
  493. + Parser: write #(4 #(5 6 #()) 7) as #(4 (5 6 ()) 7)
  494. + Parser: write #(#on:do: #Object) as #(on:do: Object)
  495. + Parser: Symbols for binarie selectores
  496. + Package>>commit
  497. + AIContext>>initializeLocals
  498. + ASTInterpreter>>withBlockContext:
  499. + smalltalk.allSelectors()
  500. + Object>>isCompiledMethod
  501. + Object>>isPackage
  502. + Object>>isBehavior
  503. + ClassMoved Announcemen class
  504. + Behavior>>includesBehavior:
  505. + Environment>>classes
  506. + Environment>>allSelectors
  507. + Environment>>removeProtocol:
  508. + Environment>>renameProtocol:to:in:
  509. + CompiledMethod>>protocol:
  510. + Smalltalk>>globalJsVariables
  511. + Smalltalk>>addGlobalJsVariable:
  512. + Smalltalk>>deleteGlobalJsVariable:
  513. - Object>>storeOn:
  514. - Object>>log:block:
  515. - Object>>printNl
  516. - Compiler-IR.st >>javascriptSelector
  517. - Compiler-IR.st >>nextPutVar:
  518. - Kernel-Collections.st >>asSuperSelector
  519. - Collection>>readStream
  520. - Collection>>stream
  521. - Collection>>streamClass
  522. - Collection>>writeStream
  523. - Symbol class (replaced with String)
  524. - IRInlinedNonLocalReturn class
  525. - IRInlinedSend>>nonLocalReturnInliner
  526. - IRNonLocalReturnInliner class
  527. - Package>>dependencies
  528. - Package>>dependencies:
  529. - Package>>properties
  530. - Package>>jsProperties
  531. - Package>>jsProperties:
  532. - Package>>propertiesAsJSON
  533. - Package>>propertyAt:
  534. - Package>>propertyAt:ifAbsent:
  535. - Package>>propertyAt:put:
  536. - Browser>>ajaxPutAt:data: