Conversation
pelikhan
added a commit
that referenced
this pull request
Apr 3, 2019
* Move conversion to worker * Allow .md and .py files in "Add new file" * Include markdown and python syntax in monaco * Account for py files * Add missing markdown/py monaco support * Add pyprj support * Pass preferred editor to compiler in sim * Do a triple toggle for now * Make the triple-toggle work * add support for python in experiments * Pass apiInfo to converter * Add preferredEditor to pxt.json * Hook up preferred editor logic * Hooking up error reporting * Start on reflecting TS in PY * More work on importing TS apis * Build fix * Start switching to SymbolInfo from py.AST for global symbols * More friendly type strings in APIs info * Better TS type parsing * Add debug target * Export constructors in APIs info * Work on functions * Handle array and module lookups * Cleanup * Mark optional arguments with "undefined" as initializer * Typecheck calls * starting pydecompiler tests by duping block decompiler tests (for now) * wip on python decompiler outer infra * start with ts as baseline template * can diff baseline with test case * Add test program * starting to discrimiate on statement types * Improve parameter type inference * Symbol type cleanup * Remove some data duplication * Get rid of FieldDesc * More example * wip on decompiler * new game test file * add a dope file watcher helper script for continuous testing * progress on decompiler * progress on classes * handles most of game.py * handle blank lines * handle if statement * detect enum classes * remove dead code * better newline handling * wip * remove unported test cases * make the webapp work again * Skip apiInfos from main.ts * Remove VarDesc * Run conversion until fixpoint of type state * Test a few more features * handle anonymous functions * starting for statement; added (disabled) test case for shadowing * handle simple "for in range(x, y)" loops; handle unary exp; handle while loop * handle more expressions and operators * cleanup * handle else if * add 4 more tests; handle constructors * Support len(); deal with access levels and inheritance * handle new; handle for (;;); blacklist shadowing tests for now * handle weird for loops; passing 13 tests * handle multiline literals * Move apiInfo logic to service.ts * add python experiment * revert experiment * handle undefined; handle arrow fns * handle >>, << * handle for..of * handle .length -> len() improperly * safer handling of ++ -- * unary ops * determine const expr; more flexible for-in-range handling * handle if else empty body * handle != * handle comments * handle some math fns * runner improvements * visitExp helper; better ++ and -- * more plubming * adds many pydecompiler tests; passing 59 failing 61 * basic ts -> py plumbing * make showConversionFailedDialog aware of python * add loader dialog * basic enum support * fix saving logic * fixing py->blocks * re-enable toolbox for python * basic toolbox support in python * added python to docs * Start on diags * fixing docs issues * Pipe diagnostics up; introduce error numbers * Return conversion diagnostics in allDiags * fix snippet highlighting * linting * don't crash on decompilation, log error * few more toolbox fixes * handle enum * handle tagged templates; compiles falling duck! * add falling duck test! * fix escaping issues * added analytics * disable sig in python * Make sure to save failed conversion result * Support for tagged templates * Tagged template test * Test b'...' literal * handle console.log * emit init types * use correct icon for blocks * add loader dialog when switching editors * adding a quick note about static python * adding experiment url * bump to 5.7 * typo * removed hardcoded python * 5.7.1 * enable squiggles * moving interfaces in pxtarget.d.ts (#5391) * moving interfaces in pxtarget.d.ts * const enum * fixing pxtpy.js build dependency * fix conversion error message * 5.7.2 * Fix column offset * Pass up parser diagnostics * implement shortcut when ts unmodified * 5.7.3 * Better parser error recovery * Cleanup * Friendlier operator names * decompiler cleanup * cleanup * handle empty while loop * passing program info into pydecompiler * better state management * handle string concat * spelling * handle return stmt * fix blocks -> py conversion * Py field editors (#5394) * passing filetype in field editor interface * fix regex * generate python when needed * 5.7.4 * Remove space in tagged literals * Monaco toolbox for python (#5397) * moving snippet generation in service * fix py generation * simplify insertion logic * liniting * more linting * move snippet generation * dead code * fix tests * moving snippet generation to service and on demand * fixes * lint * 5.7.5 * Remove space after hex in translation of b'...' * track killed message accross restarts. Fix for https://github.com/Microsoft/pxt/issues/5398 * emit lambda fns * progres on fns * update template tests * when a file is empty, use empty line instead of space * handle switching between empty files * add a new test for scopes * rename * unify block handling * 5.7.6 * Add snakeifyied names in SymbolInfo * Fix merge * Fixing name lookup (and function calls) * 5.7.7 * remove outdated api * Snakeify APIs * snakify toolbox * 5.7.8 * completion plumbing * guard * use blocks decompiler renameMap; improve scope stack; more tests for var scope edge cases * 5.7.9 * add some dialog when conversion fails * Make the top-level (non-member) completion kind-of work * Adding member completion * fix for debug to start from python (#5406) * 5.7.10 * more filtering * fixing 2 crashes in updateToolbox * 5.7.11 * fix exmaple load issue * Tutorial tracking (#5409) * track tutorial state in header * towards rendering tutorial progress * hookup * fix rendering * color * reload steps when open script * 5.7.12 * better sorting + dummy servies * adding support for snippet info in comments * Hook up locals conversion * default image to 16x16 * Implement basic hover provider * Start on signature helper * 5.7.13 * add option to skip localization of particular packages * 5.7.14 * move pydecompiler into pxtpy * add TODO * typo * 5.7.15 * clarifyin comments & TODOs * move watch .sh script into test folder * rename * add fswatch guard * cleanup TODOs in pydecompiler * start builtinsMap.ts with some thoughts on mapping between python and ts * more thoughts on handling builtins * de-duplicate test cases with blocks decompiler tests (removes ~120 unnecessary files) * updated image opt script * convert gifs to mp4 * overwrite mp4 * comment out mp4 generation * fix double sim on share * 5.7.16 * updated error message * 5.7.17 * snaking in toolbox * add note about function name @darzu * support for ```spy in docs * 5.7.18 * added spy macro
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The display on the monaco toolbox is more basic but the service is now completely lazy. Signatures are generated on demand when a user drags the block for either JS/Py.