- 22 Feb, 2012 3 commits
-
-
Sharon Perl authored
affected tests (and was caught by FileExporterImplTest). I changed one loop into two (one inside a transaction and one outside) but didn't remove the incrementing of a file counter from one of the loops. Now only count the entries that actually go into the zip. Also, removed some redundant checks for which files to put in the zip.
-
Hal Abelson authored
-
Hal Abelson authored
Change wording of "this is not a project archive" error message. Change title of designer page from experimental to beta.
-
- 21 Feb, 2012 1 commit
-
-
Sharon Perl authored
diagnose intermittent server errors related to blobs. It also updates the App Engine libraries to 1.6.2.1 (which may also help with the errors but we're not sure about that---it seems like a good idea in any case). In particular: - Make sure *all* blob key lookups happen outside of transactions. A previous fix did not handle the blob reads in ObjectifyStorageIo.exportProjectSourceZip. - Log an error if we get a RuntimeException while trying to export source zip. Hopefully we won't be getting these as much, or at all, once the blob read is not causing it. - Use the Blobstore API to read bytes instead of going through FileService and Channels. I'm hoping this will get rid of some of the timeouts. - Update the App Engine libraries to 1.6.2.1. We know that there were bug fixes in the latest version and we were on a really old version (1.5.3) so it seems like a good idea to update, in case that is contributing to any of our problems.
-
- 16 Feb, 2012 1 commit
-
-
Sharon Perl authored
(https://code.google.com/p/app-inventor/issues/detail?id=86) about setting the file name for blobs and 91 (https://code.google.com/p/app-inventor/issues/detail?id=91) about deleting orphaned blobs when we delete a project or fail during project creation. When we have blobs that we know we won't need (e.g., a project creation that needs to be retried or a project that is deleted) we need to collect up the blob keys and then delete the blobs outside of any transaction that is running on the datastore. It seems that there is no way to use the blobstore file API without having it default to using the existing transactions, and that leads to errors about transactions on multiple entity groups. As part of this change I also set the name of a created blob to include its project id and file name. We don't use the blob name in the code, but it does help when browsing the datastore and blobstore from the admin console.
-
- 15 Feb, 2012 1 commit
-
-
jis@mit.edu authored
line. Synchronous entries to the buildserver now only work if --debug is specified. If --requiredHosts are supplied (multiple hosts permitted), only those hosts may use the buildserver.
-
- 13 Feb, 2012 1 commit
-
-
andrew.f.mckinney authored
-
- 11 Feb, 2012 1 commit
-
-
Ellen Spertus authored
that of the other files generated by the annotation processor.
-
- 09 Feb, 2012 1 commit
-
-
Sharon Perl authored
in the Images Bundle. This allows us to customize the logo image after the App Engine app has been compiled, avoiding the problem where we'd have a released version of the system with a "+" in its Mercurial version number.
-
- 08 Feb, 2012 3 commits
-
-
Liz Looney authored
-
Liz Looney authored
the server Fixed issue 96: Code should not continue after failing to decrypt user/project id In Security.java, changed decryptUserId and decryptProjectId to throw EncryptionException instead of ignoring it and returning bogus values. Updated ReceiveBuildServlet and SecurityTest. In JavaWebStart.java: Added inner class DecryptedIds. Modified getWebStartProjectPath to use the mercurial build version as a prefix. Added method decryptWebStartProjectPath that decrypts a project path and checks whether the version included in the project path matches the current Mercurial build version. In WebStartFileServlet doGet and doPost, if it catches EncryptionException while decrypting the project path, reply with SC_GONE. In doPost (not doGet where we have to return the requested file's contents), if the post succeeds, but the version from the project path does not match the current Mercurial build version, reply with SC_CONFLICT. In YaCodeblocksController, for all cases where a request is sent to the appengine server, check the response code. If it's either HTTP_GONE and HTTP_CONFLICT, show a message to the user that says that the app engine server has been updated and they need to refresh the designer and restart the blocks editor. Updated YaHttpServerMainTest. In YaHttpServerMain, if downloading the phone app failed, warn the user that this error can occur if they've tried to start the blocks editor with a previously downloaded .jnlp file. In FeedbackReporter.showErrorMessageWithExit, removed the trailing " + " at the end of the message. Updated the appengine build so that it doesn't rebuild AiSharedLib if it is already up-to-date.
-
andrew.f.mckinney authored
-
- 07 Feb, 2012 1 commit
-
-
Sharon Perl authored
userid or email address and projectid or project name. Notes: - I added the Admin pulldown menu in the My Projects page. It only appears when the logged-in user has admin privileges (which I tested!). I suppose we could have put it on the Debugging page, but it seemed to fit nicely with the other download source options. - If either the user or project can't be found this fails without any indication (other than not downloading anything) since the download is asynchronous and we don't currently have an easy way to report the failure in the UI. There will be an error message in the server log, though. Since this functionality is only for admins, I figure this is okay for now.
-
- 01 Feb, 2012 1 commit
-
-
Hal Abelson authored
-
- 31 Jan, 2012 1 commit
-
-
Liz Looney authored
-
- 30 Jan, 2012 1 commit
-
-
Jesse Sharps authored
-
- 27 Jan, 2012 1 commit
-
-
Sharon Perl authored
were erroneously converting too many to FileNotFound, which was confusing. Also, changes a couple of places where blob writes were non-fatal to make them fatal. Log better error messages when we get exceptions from Blobstore. Previously we were erroneously converting too many to FileNotFound, which was confusing. Also, changes a couple of places where blob writes were non-fatal to make them fatal.
-
- 26 Jan, 2012 1 commit
-
-
Liz Looney authored
-
- 24 Jan, 2012 1 commit
-
-
Hal Abelson authored
-
- 19 Jan, 2012 2 commits
-
-
Liz Looney authored
-
Liz Looney authored
-
- 18 Jan, 2012 1 commit
-
-
Debby Wallach authored
-
- 17 Jan, 2012 2 commits
-
-
Liz Looney authored
components/build.xml Improved the dependency checking for the ai.apt task. This solves the problem where changing a Java file in the annotations, common, or scripts package, or changing a .txt file in scripts/templates did not cause the annotation processor targets to be re-built. build-common.xml: Improved the dependency checking for the ai.javac task. This solves the problem where changing a "public static final" variable in one Java file did not cause another Java file that uses the variable to be recompiled. Changed the ai.javac presetdef to a macrodef so it can run a <depend> task before the <javac> task. appengine/build.xml: In the AiServerLib ai.javac task, exclude AiServerLib.jar from the classpath to prevent the dependency checking from thinking that the code always needs to be recompiled. buildserver/build.xml: In the BuildServer ai.javac task, exclude BuildServer.jar from the classpath to prevent the dependency checking from thinking that the code always needs to be recompiled. JSONUtilTest.java: Encoded all non-ascii characters as \uXXXX so that this file can be compiled with javac option encoding=utf-8.
-
markf@google.com authored
-
- 13 Jan, 2012 3 commits
-
-
Debby Wallach authored
-
Debby Wallach authored
presumably compilation) more efficient.
-
Ellen Spertus authored
-
- 12 Jan, 2012 3 commits
-
-
Liz Looney authored
-
Liz Looney authored
-
Liz Looney authored
The default limit is 10, but this can be overridden with the command line option --maxSimultaneousBuilds. When the build server is at maximum capacity, it will respond immediately to any additional build-all-from-zip-async requests with response code 503 (service unavailable). According to rfc2616, section 10, 503 means "The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay." Added NonQueuingExecutor.java and NonQueuingExecutorTest.java Modified YoungAndroidProjectService (appengine server code) so that if the response code for a build-all-from-zip-async request is not 200 (OK), it will include the response code in the RpcResult that it sends back to the client code. Modified BuildCommand (appengine client code) so that if the RpcResult from the server contains the response code 503, it shows the message "The build server is currently busy. Please try again in a few minutes." in yellow at the top of the page. Modified WaitForBuildResultCommand (appengine client code) so that it doesn't print a different date/time each time it updates the debugger messages. Other changes to BuildServer.java: The command line options are now processed in the main method. Added --maxSimultaneousBuilds command line option. Added support for two new requests: buildserver/health and buildserver/vars. buildserver/health simply returns "ok" if the build server is alive. buildserver/vars returns a list of helpful values related to runtime, OS, memory, build requests, and build tasks.
-
- 11 Jan, 2012 2 commits
-
-
Hal Abelson authored
-
Andrew McKinney authored
-
- 10 Jan, 2012 3 commits
-
-
andrew.f.mckinney authored
-
Sharon Perl authored
Enable all GWT client permuations to be built by commenting out the lines that specify specific clients.
-
Sharon Perl authored
-
- 09 Jan, 2012 1 commit
-
-
Liz Looney authored
build.xml Added YailGenerator target to appinventor/buildserver/build.xml. In BuildServer target, added task to copy YailGenerate.jar to the build/classes/files directory so it can be loaded as a resource at runtime. In CopyToRunLibDir, removed fileset entry that copied OpenBlocks.jar to the build/run/lib directory. The buildserver no longer needs it there. BuildServer.java: Fixed problems where temp files were not being deleted. Fixed problem in buildAllFromZipFileAsync where the FileInputStream for the outputZip was never closed. Added code to print out the amount of memory being used after each build. ProjectBuilder.java: Launch the YailGenerator as a separate process. The YailGenerator has a memory leak and by launching it as a separate process, the buildserver process doesn't leak memory. Added static inner class YailGenerationException.java. Result.java: Added constant int GENERAL_FAILURE with value 1 and use it instead of ~SUCCESS. This matches what the appengine client code (in WaitForBuildResultCommand.java) expects for a general build failure value. YailGenerator.java: Moved YailGenerator.java from appinventor/buildserver/src/com/google/appinventor/buildserver to appinventor/buildserver/src/com/google/appinventor/yailgenerator. Updated package statement. YailGenerationException.java: Removed unneeded formName field, getFormName method, and constructor with formName argument from the blockslib exception class YailGenerationException. (appinventor/blockslib/src/openblocks/yacodeblocks/YailGenerationException.java)
-
- 04 Jan, 2012 1 commit
-
-
Liz Looney authored
-
- 28 Dec, 2011 1 commit
-
-
Mark Friedman authored
-
- 17 Dec, 2011 2 commits
-
-
Ellen Spertus authored
fixing issue 26: warning users if they are running a version of App Engine earlier than 1.6.2, which will have the fix for the problem with blobs on local dev servers. Also converted tab to space in appengine-web.xml
-
Liz Looney authored
build server (stdout). Include the Mercurial build id in the CrashReport extra info. Added java class MercurialBuildId, which is generated during the ant build from a template file called MercurialBuildId.template and the results of executing "hg id -n -i". Made a new target in common/build.xml called CommonVersion, which builds CommonVersion.jar and CommonVersion-gwt.jar. These jars contain classes named AppInventorFeatures and MercurialBuildId. These jars have no external dependencies and can be used on Java 5. Moved AppInventorFeatures from CommonUtils.jar (which contains some other classes that require Java 6) to CommonVersion.jar so that it can be used by any part of App Inventor, including the blocks editor running on Java 5.
-