Commit Graph

892 Commits

Author SHA1 Message Date
kozbial
466a0db809 Migrate core/utils/rect.js to goog.module 2021-07-14 16:13:58 -07:00
Aaron Dodson
0ac3994343 Merge pull request #5062 from gonfunko/svg
Migrate core/utils/svg_paths.js to goog.module syntax
2021-07-14 15:59:43 -07:00
kozbial
06cbde1dba Migrate core/utils/math.js to goog.module 2021-07-14 15:06:03 -07:00
Aaron Dodson
72a0761312 Migrate core/utils/svg_paths.js to goog.module 2021-07-14 14:43:15 -07:00
alschmiedt
92bc3bba0f Merge pull request #5056 from alschmiedt/migrate_idgenerator
Migrate core/utils/idgenerator.js to goog.module syntax
2021-07-14 13:29:50 -07:00
alschmiedt
08911510d2 Migrate core/utils/idgenerator.js to goog.module 2021-07-14 13:23:57 -07:00
Aaron Dodson
bad4b7036f Merge pull request #5057 from gonfunko/object
Migrate object.js to goog.module syntax
2021-07-14 11:19:47 -07:00
kozbial
2bf717019f Migrate core/utils/deprecation.js to goog.module 2021-07-14 11:16:32 -07:00
kozbial
632ef12ed5 Migrate core/utils/keycodes.js to goog.module 2021-07-14 09:48:23 -07:00
Aaron Dodson
d224a2341d Migrate object.js to goog.module 2021-07-13 15:30:56 -07:00
Christopher Allen
d313ec804a Merge branch 'develop' into goog.module-prep
This resolves a conflict in `blockly_uncompressed.js`, and missing
updates to `test/deps.js`, caused by PR #5041.
2021-07-13 22:16:35 +01:00
jschanker
de1b3214be Enforce connection preconditions for setParent (#4999)
* Fix error conditions for setParent #4989

* Error now thrown when calling `a.setParent(b)` on non-null b if the output/previous connection of a is not connected to an input/next connection of b without removing block from old parent's child list.
* Commented out error for when calling `a.setParent(null)` if a is connected to superior block.
* Adjusted comment to reflect that blocks were no longer being disconnected in this method.
* Also changed == to === per #4924 (`newParent` and `this.parentBlock_` must both be instances of `Blockly.Block`).

* Fix error conditions for setParent #4989

* Error now thrown when calling `a.setParent(b)` on non-null b if the output/previous connection of a is not connected to an input/next connection of b without removing block from old parent's child list.
* Error now thrown when calling `a.setParent(null)` if a is connected to a superior block.
* Adjusted comment to reflect that blocks were no longer being disconnected in this method.
* Also changed == to === per #4924 (`newParent` and `this.parentBlock_` must both be instances of `Blockly.Block`).

* Fix error conditions for setParent #4989

* Error now thrown when calling `a.setParent(b)` on non-null b if the output/previous connection of a is not connected to an input/next connection of b without removing block from old parent's child list.
* Commented out error for when calling `a.setParent(null)` if a is connected to superior block.
* Adjusted comment to reflect that blocks were no longer being disconnected in this method.
* Also changed == to === per google#4924 (`newParent` and `this.parentBlock_` must both be instances of `Blockly.Block`).
* Fixed lint errors.

* Fix error conditions for setParent google#4989

* Error now thrown when calling `a.setParent(b)` on non-null b if the output/previous connection of a is not connected to an input/next connection of b without removing block from old parent's child list.
* Commented out error for when calling `a.setParent(null)` if a is connected to superior block.
* Adjusted comment to reflect that blocks were no longer being disconnected in this method.
* Also changed == to === per google#4924 (`newParent` and `this.parentBlock_` must both be instances of `Blockly.Block`).
* Fixed lint errors.
* Adjusted comment.

* Removed unnecessary set to null/added tests

* One is failing (commented out), will investigate later

* Lint fix

* Removed failing test that correctly fails

* Update comments to conform to style guide

Capitalize first letter, period at end
2021-07-13 13:56:42 -07:00
Monica Kozbial
0af6bc4b01 Remove unused parameters from test helpers (#5032) 2021-07-13 13:13:06 -07:00
Monica Kozbial
e2d0498db2 Add flag to webdriverio options (#5035)
* Add flag to webdriverio options

* update indentation of code
2021-07-13 09:31:21 -07:00
Monica Kozbial
2c83652733 Add missing whitespace to test files (#5031)
* Add missing spaces

* undo incorrect replaces in utils tests
2021-07-12 15:11:33 -07:00
Christopher Allen
f5a9f2cf2b Load dependency graph from tests/deps.js in uncompiled mode
* New gulp task buildDeps (npm run build:deps) to create tests/deps.js.
* Old gulp task buildUncompressed is deleted.
* blockly_uncompressed.js is now handwritten.
  * And simplified; in particular, BLOCKLY_BOOT is gone.
  * And linted!
* For consistency with the Closure documentation and base.js,
  consistently refer to what blockly_uncompressed.js is used for as
  "uncompiled mode" rather than "uncompressed mode" (but don't yet
  rename it to blockly_uncompiled.js)
2021-07-12 02:28:09 +01:00
Christopher Allen
899493e36d Merge pull request #4968 from cpcallen/build-elsewhere
Build in a temporary directory
2021-07-09 23:16:38 +01:00
Christopher Allen
1306e41d3b Load playground.html etc. from local http server
Unlike goog.provide packages, goog.module modules are loaded using
XMLHttpRequest in uncompiled mode.  Because browsers treat file: URLs
as each being a separate, unique origin, this means that CORS rules
prevent goog.module modules being loaded from a file URL.

To work around this, use the http-server npm to serve the repository
root directory on localhost:8080.

Provide a script so that you can type `npm start` to start the local
http server and automatically open a browser window pointing at
tests/playground.html.

Modify the setBackgroundColour function in the playgrounds to provide
the usual lilac background on locahost URLs and a sickly green one
if using a file: URL, all of which will soon stop working.

(The background doesn't actually appear to be visible in the advanced
playground.)
2021-07-09 23:11:19 +01:00
Christopher Allen
9e72378b69 Finish renaming BUILD_DIR; make tests more error-prone
I had forgotten that I needed to change the value of BUILD_DIR
in several different places.

Added comments warning future editors about this as well as filing
issue #5007 to track fixing this properly.

Despite being misconfigured and therefore failing, the typescript
and metadata test scripts were exiting with status 0, indicating
successful completion.  These have been fixed so they should fail
on any error, including misconfiguration.
2021-07-09 14:06:59 +01:00
Christopher Allen
ec14cc3ed8 Package build output; fix node tests.
- Reconfigure package_tasks.js to use BUILD_DIR from config.js
  (i.e., build/) rather than repository root as source of files to
  package.

  - Add check to packageTasks.package to ensure that certain required
    files exist in BUILD_DIR, to verify that buildTasks.build and
    typings.typings have been run.

  - Fix packageUMDBundle to use generated, rather than checked-in
    version of en.js.

  - Fix packageDTS to use the generated (rather than checked-in)
    versions of blockly.d.ts and msg/*.d.ts.

- Modify run_all_tests.sh to run packageTasks.package before running
  node tests, since they depend on it.  Previously this was only
  working because 'npm install' runs the 'prepare' script, which would
  run the 'package' script - so the code being tested by the node tests
  was not the current source but whatever precomipled code had
  previously been checked in.

- Remove the 'prepare' script from package.json, since it is no longer
  needed (and is now broken, since it requires that build and typings
  have been done first.)  Note that no scripts at all are included in
  the version of package.json that is created in dist/ and subsequently
  included in the published npms, so this deletion does not affect what
  happens when the Blockly npm in installed - it only affects what
  happens when 'npm install' is run after the blockly repo is cloned.

- Factor out the actual recompilation steps from releaseTasks.recompile.

- Rename releaseTasks.recomple to recompileDevelop, since it deals
  specifically with the develop branch.  (The npm script name is
  unchanged.)

- Ensure that a full recompile and repackage is done before publishing
  (beta and non-beta) npms.
2021-07-08 16:34:50 +01:00
Christopher Allen
c265eb87b5 Update metadata sizes for Q2 2021 release
Transcribed (with tweaks) from PR #4986.
2021-07-02 10:23:10 +01:00
Christopher Allen
37ecce8d80 Have npm run typings use built directory; fix typescript tests
* Modify scripts/gulpfiles/typings.js to write typings to BUILD_DIR.
* Modify tests/scripts/compile_typings.sh to check compilability of
  resulting output from BUILD_DIR.
* Rename checkin script to checkin:built, add a checkin:typings script
  to do the same for .d.ts files, and a new checkin script to do both.
* Have recompile run checkin:typings.
2021-06-30 15:34:54 +01:00
Christopher Allen
1aa35ef438 Merge branch 'develop' into build-elsewhere 2021-06-29 16:22:13 +01:00
Christopher Allen
96da5ed014 Fix metadata tests
- Do not run npm install.
- Do not re-run build that has already been run by a previous test.
- Check files in built/ instead repo root.
- Fix formatting, styleguide issues.
2021-06-24 12:09:06 +01:00
Beka Westberg
13bb9f5bf6 Refactor connect logic (#4880)
* Refactor connect logic.

* Fixup from rebase

* Fix build

* PR Comments
2021-06-18 09:53:43 -07:00
Neil Fraser
c8bea1ff3a Remove return value from Field dropdownCreate_ (#4915)
These functions have side effects and set all kinds of private fields.  It is misleading for them to return the top-level element, for the caller to assign to a private field.
2021-06-18 08:22:25 -07:00
Aaron Dodson
245a44b030 Merge pull request #4920 from gonfunko/capture-warning
Use captureWarning helper from dev-tools instead of mocha/test_helpers.js implementation
2021-06-17 16:04:23 -07:00
Monica Kozbial
a15bbf1700 Revert #4697 (#4917) 2021-06-16 09:36:39 -07:00
jschanker
672574b056 Require field name to be string, test changes
* Now throws error for getField/getFieldValue/setFieldValue if provided name is not a string
* Changed error to more specific TypeError
* Type checking and error message moved up to getField
* Tests added/modified to check that non-string types for field names produce type errors
2021-06-16 10:46:05 +01:00
jschanker
f9c5260fb0 Added tests/setFieldValue error message
* Added tests for getting/setting field (values) when names are not supplied and test for getting a field value, setting it to a new value, and getting it again.
* Added more user-friendly error message for setFieldValue telling the developer that he/she is missing the name rather than Field "undefined" not found.
2021-06-16 10:46:05 +01:00
Aaron Dodson
355c54f70a Use captureWarning helper from dev-tools instead of mocha/test_helpers.js implementation. 2021-06-15 19:10:13 +00:00
Aaron Dodson
5cd2d375ef Updated comment for runGeneratorsInBrowser to refer to Chrome instead of Firefox. 2021-06-14 19:06:28 +00:00
Aaron Dodson
df7da795a3 Use selenium-standalone-service to automatically start and stop Selenium when running the test suite. 2021-06-14 11:52:49 -07:00
Christopher Allen
f477db2251 Remove unneeded macOS setup
Chrome comes pre-installed on GitHub hosted macOS runners, and while
`Xvfb` does not seem to be installed neither does it seem to be needed.
2021-06-14 19:41:12 +01:00
Christopher Allen
ab33cd567a Update test setup for GitHub Actions
- Do the (hopefully now) correct test to check we are on macOS.
- Fix brew command-line syntax for installing google-chrome.
2021-06-14 19:41:12 +01:00
Neil Fraser
96315ad449 Fix removal of spaces near parens inside strings
Extra spaces should only be stripped from the inside of paren tokens.  Parens in strings (and other static content) should not be edited.
2021-06-09 22:16:35 -07:00
Monica Kozbial
8e7cb406f9 Handle overriding components in ComponentManager (#4856) 2021-06-08 12:28:59 -07:00
Monica Kozbial
6f7ead6e9c Fix error caused by extra teardown call (#4877) 2021-06-08 10:19:08 -07:00
Beka Westberg
ab5616cff7 Add tests for connecting blocks (#4853) 2021-06-07 08:14:13 -07:00
alschmiedt
e4f15898d0 Update chrome version (#4866) 2021-06-03 17:57:40 -07:00
Neil Fraser
37a1ee55b8 Remove useless variable declarations in PHP. (#4849) 2021-05-27 21:40:04 -07:00
Neil Fraser
a385f3c2a6 Enable extraction of names from name DB.
Also gets rid of hacky name_realm contatination.
2021-05-27 21:30:26 -07:00
Neil Fraser
2f2252f588 Rename variableDB_ to nameDB_
There is significant confusion in names and comments with regards to variables and procedures.  `Blockly.Generator.prototype.variableDB_` is a Blockly.Names database, not a variable map.  This rename introduces a getter and setter so deprecated references still work.  This commit also fixes some comments which are either outright wrong or misleading regarding variable and procedure names.
2021-05-27 21:30:26 -07:00
Beka Westberg
5ffd43824f Change lastConnectionInRow to getPlaceForOrphanedOutput - Take 2 (#4851)
* Change lastConnectionInRow to getPlaceForOrphanedOutput

* PR comments
2021-05-26 09:16:33 -07:00
Beka Westberg
9fbf06c5df PR Comments 2021-04-27 15:59:25 -07:00
Beka Westberg
43e95af14e Fix getDefinition being too restrictive 2021-04-25 14:46:51 -07:00
Monica Kozbial
5139057664 Merge consecutive viewport change events (#4792) 2021-04-23 10:56:52 -07:00
Sam El-Husseini
d83279008b Remove dark theme in favour of @blockly/theme-dark (#4697)
* Remove dark theme in favour of @blockly/theme-dark
2021-04-21 13:33:59 -07:00
Rachel Fenichel
e8d95c9137 Remove compile.sh 2021-04-13 14:28:54 -07:00
alschmiedt
91c060f872 Update metadata March 2021 (#4738) 2021-03-25 17:53:29 -07:00