not really known
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

437 lines
18 KiB

  1. 1.0
  2. * Enable passing argments to actions.
  3. * Sugar datastore/toolbar support (Michael)
  4. * Array indexing in heap
  5. * Fixed problem with palette entries that cannot be clicked.
  6. * New action blocks appear at top of palette.
  7. * New box blocks appear at top of palette.
  8. * Changed boxes palette label to boxes.
  9. * New-style clamp for fill and hollow line clamps.
  10. * Reordered NEWS so that recent changes are at the top.
  11. * GPL->AGPL as it was meant to be from the get-go.
  12. * Don't connect to collapsed blocks.
  13. * Fixed flow bug when nesting clamps.
  14. * Added ArgClamps to list of blocks that are expanded on load.
  15. * Fixed problem with selected blocks from bottom of palette.
  16. 0.9
  17. * Added How to Guide.
  18. * Added URL argument to run projects i.e., ?file=foo.tb&run=True
  19. (w/Amit Kumar Jha).
  20. * Improved design of conditional blocks to stack more compactly.
  21. * Found/fixed cornercase where named calcArg blocks didn't appear on
  22. the Actions palette.
  23. * Fixed regression in clearing images on erase
  24. * Fixed problem with stray vspace blocks
  25. * Fixed problem with disappearing palette entries
  26. 0.8
  27. * Fixed namespace collisions with plugin globals.
  28. * No longer overwriting existing plugin globals when adding new ones.
  29. * Fixed memory leak in while and until blocks.
  30. * Fixed multiple problems with Break (Stop) block.
  31. * Defined a break behaviour from within stacks.
  32. * Fixed problem with SVG arcs in saved output.
  33. * Fixed problem with negative radius on arcs.
  34. * Fixed problem with copying stacks with nameddo blocks.
  35. * Fixed problem with copying stacks with namedbox blocks.
  36. * Added no background block for SVG output (useful for icons, et al.).
  37. * Added hollow-line rendering.
  38. * Added disabled protoblock attritribute.
  39. * Added onload, onstart, onstop support to plugins.
  40. * Added hollow-line rendering for arcs.
  41. * Turn off block scrolling by default.
  42. * Added neg block (so as to insert negative numbers on Android).
  43. * Added missing strings to POT file.
  44. * Tweaked some strings to work better with JS localization package.
  45. * Added blocks.changeDisabledStatus() method for changing appearance of
  46. blocks whose status can change, e.g., Butia sensor blocks.
  47. * Added support for arg clamp blocks (doArg, calcArg, etc.)
  48. * Fixed sizing issue with arg clamps.
  49. * Renaming action blocks takes into account type of action block.
  50. * Added support for passing args to actions and returning values
  51. (w/Amit Kumar Jha).
  52. 0.7
  53. * Removed drag to rotate.
  54. * Fixed scaling when dragging turtle.
  55. * Disable drag while running.
  56. * Don't wait for adjustBlocks to position vspace blocks.
  57. * Raise stack to top when disconnectiong from parent stack.
  58. * Fixed problem with disappearing protoblock.
  59. * New documentation folder (w/Amitjha).
  60. * Added short press detection for Android text and number blocks.
  61. * Improvements? to color model.
  62. * Improvements to GMAP plugin.
  63. * Added city to long/city to lat block to gmap plugin (Yash).
  64. * Added heap empty? block to HEAP plugin.
  65. 0.6
  66. * i18n for planet (Ignacio)
  67. * setfont block (Abhinav Anurag)
  68. * Set default font to 'sans-serif' (w/Sam Parkinson).
  69. * Move entire drag group when bouncing blocks out of a connection.
  70. * Put vspace blocks in trash after removing them.
  71. * Expand two-arg blocks on load.
  72. * More eye-candy by Sam Parkinson
  73. * Bad/missing thumbnails no longer break the Planet (Abhinav Anurag).
  74. * Restored booleanOneArg protoblocks.
  75. * Now adding store in blocks when needed on loading new projects.
  76. * Fixed one more corner case in auto-block expansion when loading new
  77. projects.
  78. * Split ever expanding boxes palette into boxes and actions palettes.
  79. * Added Named do blocks (similar to named boxes).
  80. * Allow for clicking on Action Blocks.
  81. * Added graphical error messages.
  82. * Fixed logic error when searching for turtles to run.
  83. * Added Block-size scaling.
  84. * Resized font in DOM for number and text blocks when resizing blocks.
  85. * Box and action error messages include name.
  86. * Collapsable blocks are rendered properly after block resize.
  87. * Collapse button now works after block-size is scaled.
  88. * Fixed problem with expandable blocks rendered double after resize.
  89. * Fillscreen block implemented.
  90. * Fixed problem with break block continuing flow after loop.
  91. * Properly position text labels on all parameter blocks (after resize).
  92. * Use spanner to open preferences panel for adding plugins and setting
  93. block size.
  94. * Display rubrics.
  95. * Added more error message artwork.
  96. * Updated help to include spanner, copy, save stack.
  97. 0.5
  98. * Eliminated joyride since it doesn't work on Android.
  99. * Fixed problem with help container scaling.
  100. * Added broadcast and on event blocks.
  101. * Fixed problem with events not triggering if turtle has stopped.
  102. * Added three-arg flow blocks.
  103. * Added named boxes.
  104. * Fixed problem selecting blocks from the blocks palettes.
  105. * Made separate heaps for each turtle.
  106. * Reopen palettes after palette updates.
  107. * Fixed problem running with no start block.
  108. * Fixed some regressions in macro block palette.
  109. * Eliminated deprecated code in palettes.
  110. * Added buttons to palettes for scrolling.
  111. * Turtles dispatch a click event so that they can be used as buttons.
  112. * Fixed problem with tour background (on first load and on small displays).
  113. * Resize Turtle hit area when updating turtle shell.
  114. * Added Music block plugin (Ignacio Rodriguez)
  115. * Added text from Show Block to exported SVG (Abhinav Anurag)
  116. * Do block is now labeled 'do' on palette
  117. * Update label of named boxes when box name changes.
  118. * Update label of named boxes on palette when name changes.
  119. * Added Named Do Blocks.
  120. * Fixed regression in restoring plugins from local storage.
  121. * Properly position and scale text exported to SVG.
  122. * Restored delete all button to secondary menu (yes, you can do the
  123. same thing from the planet, but that is often inconvenient).
  124. * Fixed problem with bad URL in planet (Ignacio Rodriguez).
  125. * Restored image click in planet.
  126. * Fixed alignment problem with Turtle skin hit area.
  127. 0.4
  128. * Write SVG generator
  129. * Auto-guestimate block width (need to set label name before creating artwork)
  130. * Added splash-screen animation (Sam Parkinson)
  131. * Fixed collapse bug which manifests itself when loading custom stacks
  132. * Use ellipsis on action and do labels (including do blocks in palette)
  133. * Fixed layout problem in boxes palette
  134. * Fixed regression in loading macros (NaN)
  135. * Set proper z-order for palettes, blocks, turtles, and canvas (Sam Parkinson)
  136. * Fixed problem with expanding booleans not docking to parents
  137. * Fixed race condition with collapsibles
  138. * Fixed problem with start block turtle decoration positioning
  139. * Removed event handler after load so that when you change the image
  140. associted a media block, other media blocks don't also change
  141. * Scale imported bitmaps to maximum of 1200x900
  142. 0.3
  143. * Major refactoring of block handling to better compartmentalize the code
  144. * Blocks in a stack being dragged should be on top of everything else
  145. * Refactoring of input for Android (Sam Parkinson)
  146. 0.2
  147. * Major overhaul of SVG generation: async
  148. (Works with Firefox, Safari, Chrome)
  149. * Added paging to samples downloads
  150. * Added Easeljs caching throughout
  151. * Added URL block
  152. * Repositioned palettes when toolbar is unavailable so as not to overlap
  153. with on-canvas buttons
  154. * Using png for thumbnails
  155. * Added project name input when not using Sugar toolbars
  156. * Added print block
  157. * Consolidated various show blocks into one block
  158. * Added 'any' docking parameter
  159. * Fixed bug with new start block after clear all
  160. * Show parameter values on blocks when running in debig mode
  161. * Show and hide blocks
  162. * Added keyboard short cuts
  163. * Added keyboard sensor
  164. * Fixed issue with break block scope
  165. * Label box values during debug mode
  166. * Fixed some race conditions
  167. * Fill broken in save to SVG
  168. * Fixed race condition in palettes load
  169. * Hover to invoke copy stack
  170. * While block (GCI - drakosvlad)
  171. * Not block (GCI - Daksh Shah)
  172. * And block (GCI - Ignacio Rodriguez)
  173. * If-then-else block (GCI - Ignacio Rodriguez)
  174. * Camera block for Firefox (GCI - Rafael Cordano)
  175. * Video block for Firefox (GCI - Rafael Cordano)
  176. * Speak block for Firefox (GCI - Rafael Cordano)
  177. * Media blocks in Chrome
  178. * Implement if-then-else, while, until
  179. * Implement and or not
  180. * Fixed problem with block resizing
  181. * Drag palette items
  182. * Query turtle blocks
  183. * Confirm on clear
  184. * Save dialog
  185. * Palettes open by default
  186. * Default start block position needs to move
  187. * Copy stack copies instances instead of making new blocks?
  188. * Enable number names for actions
  189. * Enable number names for turtles
  190. * Enable docking to any for boxes, equal
  191. * Enable number names for boxes
  192. * Fixed the problem with prototypes on the blocks palette
  193. * Fixed highlighting of boolean blocks
  194. * Global collapse stack button
  195. * Smoother hand-off between palette and canvas when dragging blocks
  196. * Work-around for number/string conversion error
  197. * Adjust docks for vspace added outside of stacks
  198. * Added mashape palette
  199. * Translation blocks (w/Ignacio Rodriguez)
  200. * Color forces max chroma; hue just sets hue.
  201. * Preserve collapse state between save/load (w/Ignacio Rodriguez)
  202. * Swipe to page samples viewer (w/Ignacio Rodriguez)
  203. * Internationalization support (w/Ignacio Rodriguez)
  204. * Mashape blocks (w/Ignacio Rodriguez and Sam Parkinson)
  205. * Save/restore turtle state (w/Ignacio Rodriguez)
  206. * Plugin mechanism
  207. * Save colors; allow overwriting plugins
  208. * Mechansim for removing plugins (w/Sam Parkinson)
  209. * Rotate turtles with gesture (w/Sam Parkinson)
  210. * Use busy cursor where approporate (w/Ignacio Rodriguez)
  211. * Can open same file twice in a row (w/Ignacio Rodriguez)
  212. * Fixed palettes on Firefox (w/Ignacio Rodriguez)
  213. * Added plugins to parameter update table
  214. * Number block values are being set to string (Sam Parkinson)
  215. * Fixed problems with layering (Sam Parkinson)
  216. * More sensors (accelerometer w/Ignacio Rodriguez)
  217. * Read pixels (w/Ignacio Rodriguez)
  218. * Find an approach to cameras and microphone that work on Android
  219. (w/Sam Parkinson)
  220. * Remove unused do blocks (when associated action is removed)
  221. (w/Ignacio Rodriguez)
  222. * Clean up palette buttons layout after removing a plugin
  223. (w/Ignacio Rodriguez)
  224. * Use snap to pixels
  225. * Added images to blocks (w/Ignacio Rodriguez)
  226. * Reorganize palettes and plugins
  227. * Fixed positioning problem with palettes due to multiple copies of the
  228. protoblocks being added to the protoList
  229. * Expand boolean blocks
  230. * Save stacks to personal palette
  231. * Use nop blocks when encountering unknown blocks during load
  232. * Scroll palette buttons with a gesture when there are too many
  233. (Sam Parkinson)
  234. * Only show save on action blocks
  235. * Only show copy/save menu from top block
  236. * Plugin for RoDi (w/Martin Abente)
  237. * Fixed problem with reloading camera or media block getting double image
  238. * Fixed coordinate grids offset due to scaling
  239. * Step-by-step playback mode
  240. * Sometimes scrolling menus does not work (Sam Parkinson)
  241. * Update plugins to new logo "class"
  242. * Allow for changes to playback mode while running
  243. * Fixed problem with saveName
  244. * Fixed multiple problems with collapsed stacks
  245. * Change color of stroke when highlighting blocks
  246. * Added image, and palette-stroke-highlight args to rtps files.
  247. * Combine various run modes (switch between fast, slow, and step on the fly)
  248. * Fixed size of palette highlight (Sam Parkinson)
  249. * Fixed value box label in DOM (Sam Parkinson)
  250. * Factory-branch fixes
  251. - proper updating of labels
  252. - proper resizing
  253. - proper calculation of hit area
  254. * Fixed mouse button code & don't move stage when running code (Ignacio)
  255. * Don't allow text in number blocks
  256. * Expand blocks horizontally (for long labels)
  257. * Added value display to math blocks
  258. * Added value to boolean blocks
  259. * Added default args to math blocks (Ignacio)
  260. * Fine tune value display positioning
  261. * Fixed problem with action block collapsed bounds
  262. 0.1
  263. * New project: a Javascript version of Turtle Blocks
  264. * Basic block manipluation
  265. * Basic block execution
  266. * Expandable blocks working
  267. * Cascading of expandable blocks
  268. * Added arithmetic functions (arg parsing)
  269. * Rotate turtle using easeljs rotation
  270. * Implemented actions (stacks)
  271. * Implemented boxes
  272. * Added booleans
  273. * Added slowmo playback
  274. * Only one stack
  275. * Added protoblocks for new boxes
  276. * Added protoblock for new stacks
  277. * Added time block
  278. * Added mouse x, mouse y blocks
  279. * Added controls for rabbit vs turtle
  280. * Added controls for show/hide
  281. * Added eraser button
  282. * Added coordinate grids
  283. * Fixed palette updates from block palette
  284. * Added penup/down
  285. * Added fill
  286. * Implemented Load blocks
  287. * Added click on block to run
  288. * Added arc
  289. * Added setxy
  290. * Added set heading
  291. * Added x, y, heading
  292. * Added lots-o-sample projects
  293. * Expanding arithmetic blocks
  294. * Expanding 2-arg blocks
  295. * Implemented color model (Munsell)
  296. * Fixed Munsell 2.5 tables
  297. * Added set background color
  298. * Added trash
  299. * Moved labels to container
  300. * Set expandable blocks on load
  301. * Fixed repeat docking bug
  302. * Fixed filler hide bug
  303. * Added real block highlighting
  304. * Fixed problem with cascading arithmetic operators
  305. * Trigger events on containers, not bitmaps
  306. * Added multiple turtles (one for each start block)
  307. * Added show text
  308. * Added show image
  309. * Different colors for each turtle
  310. * Added turtle shell (aka sprites)
  311. * Erase media (remove children)
  312. * Reset turtle skin on clear
  313. * Added scale text, images, turtle shell
  314. * Center images on turtle
  315. * Fixed turtle layering bug
  316. * Fixed action name bug
  317. * Open file from window location
  318. * Major refactoring of code
  319. * Prevent CR in numeric text area
  320. * Added restore from trash
  321. * Added wait block
  322. * Added save/restore session
  323. * Added stop turtle
  324. * First pass on a palette strategy
  325. * Added save file to turtle.sugarlabs.org (when running from server) w/tch
  326. * Added svg output to window
  327. * Added menu to trash for restore and clear all
  328. * Fixed block/turtle/canvas layering
  329. * Fixed mouse down logic
  330. * Figured out how to do inline svg with easeljs...
  331. beginning to convert to svg factory methods.
  332. * Using container caching on blocks
  333. * Fixed labels on random block
  334. * Fixed label on less block (use <)
  335. * Fixed infinite loop problem when searching for expandables
  336. * Fixed more issues with caching
  337. * Reload media thumbnails on load
  338. * Added collapsible stacks
  339. * Added copy/paste of stacks
  340. * Rename action blocks when loading projects
  341. * Added palette entries when encountering new storein blocks
  342. * Allow dragging from collapse button
  343. * Added forever block
  344. * Added 'stop action' (AKA break)
  345. * Fixed several format issues with saved SVG
  346. * Saving SVG thumbnail to server along with project file
  347. * Seeding SVG with bg color on run
  348. * Failed experimenting with zoom and scroll settings
  349. * Fixed rounding bug in repeat code
  350. * Fixed menu tearing issues
  351. * Fixed placement of new items in Blocks menu
  352. * Improved highlight logic
  353. * Fixed labels on collapsed stacks
  354. * Better compartmentalization of block code
  355. (using a dictionary for the code associated with each "advanced" block)
  356. * Fixed scaling issues with SVG output
  357. * Implemented selectable menu of samples (for server version)
  358. * Check to see if running from a server or a local copy
  359. * Implemented selectable menu of samples (for local filesystem version)
  360. * Added paging to samples viewer
  361. * Fixed crash due to uncaching something that hasn't been cached
  362. (2arg adjustable blocks)
  363. * Hide stop button when running from server
  364. TODO:
  365. * Better model and view distinction in code
  366. * Browser for plugins
  367. * Save errors
  368. * Save to javascript
  369. * RTL support
  370. * Make expand an array, one element for each arg or slot
  371. * User-defined block types
  372. * Artwork beautification?
  373. * Try to detect difference between unknown flow and arg blocks
  374. * What palette/block features from the Python version do we need to port?
  375. * Do we need to add support for plugins init, quit, etc.?
  376. * Better interoperability with Python version
  377. * Unit tests
  378. * Make error messages extendable with plugins.
  379. * Improve design of boolean blocks a la conditional blocks.
  380. FEATURE IDEAS:
  381. * Local variables? (e.g., boxes only defined inside an action?) Note that
  382. we can use turtlename to create instance variables.
  383. * Color mixer that outputs a stack: set hue; set value; set chroma.
  384. ISSUES:
  385. * Find a scalable approach to drawing on the canvas
  386. KNOWN BUGS:
  387. * Text rotation not saved properly in SVG output.
  388. * Text inserted mid-path breaks SVG output.
  389. * Block colors in documentation don't match current design.
  390. * Deleting palette entries when renaming actions is not working properly.
  391. * Sometimes change in size of arg blocks not auto-cascaded.
  392. * Not all blocks highlight when using step-by-step mode.
  393. * Sometimes returning to backgrounded project results in empty project.
  394. * Loading macros there is a funny collapsed state sometimes.
  395. * Somehow we end up in a browser resize loop??? (2842 console messages are
  396. not shown js/activity.js:770)
  397. * Python show block not compatible with JS show block.
  398. * Not serious, but there is still a race condition when creating
  399. if-then-else blocks (so there is a work-around in place).
  400. * Sometimes clamp block highlight scale is too large.
  401. * Sometimes docking position is not scaled properly when dragging block
  402. after block resize.
  403. * Polar coordinate grid not centered under some circumstances.
  404. * Sometimes long press puts menu in wrong place.
  405. * Multiple copy/paste cycles sometime concatenate clipboard stack.
  406. * P5-related blocks no longer working -- P5 does not init properly.
  407. * Turtle and Music Blocks should use separate local storage
  408. * Turtle and Music Blocks should use separate name space on server
  409. ANDROID-SPECIFIC BUGS:
  410. * Camera doesn't work on Android
  411. * Tone block doesn't work on Android
  412. * Cannot open plugins loader on Android
  413. * Cannot import images on Android (fileChooser doesn't appear)
  414. * On some Android systems, when all blocks are dragged, a copy is
  415. left on the canvas.
  416. * Lots of freezing on some Android systems.
  417. SUGAR-SPECIFIC BUGS:
  418. * No access to camera or microphone on XO.
  419. WINDOWS-SPECIFIC BUGS:
  420. * Loudness block doesn't work on Windows (tested in Chrome)
  421. * Tone block doesn't work on Windows (tested in Chrome)