protobuf/api/datastore_v3.proto (19 lines): - line 159: // TODO: Remove this field. - line 180: // TODO: Consider pulling all the items after this point into a - line 202: // TODO: support hints with composite indexes; currently composite - line 227: // TODO: choose better name when switching to plannable cursors. - line 228: // TODO: Change the type of this field to bytes? - line 232: // TODO: Change the type of this field to bytes? - line 257: // TODO: I believe this field is ignored. Remove it. - line 425: // TODO: serialize in memory filters as well - line 426: // TODO: serialize in memory sort as well - line 457: // TODO: rename to "encoded_key" - line 458: // TODO: consider removing after 1.4.5 - line 632: // TODO: We should eventually switch this default value to false. - line 657: // TODO: This field is unused. Remove it. - line 660: // TODO: Remove once sequential auto id deprecation period expires. - line 693: // TODO: This field is unused. Remove it. - line 725: // TODO: This field is unused. Remove it. - line 801: // TODO: Change the type of this field to bytes? - line 823: // TODO: Change the type of this field to bytes? - line 827: // TODO: Change the type of this field to bytes? api_dev/src/main/java/com/google/appengine/api/datastore/dev/LocalDatastoreService.java (10 lines): - line 154: // TODO Improve this implementation such that it's backed by - line 349: // TODO: Replace the use of the Clock with Stopwatch. - line 729: // TODO: Add a unit test for this. - line 1666: // TODO: persist actions as a part of the transactions when - line 2383: // TODO: remove this field and rely instead on the list of unappliedJobs in EntityGroup. - line 2794: /* TODO: This is not actually how compiled cursors behave in - line 2878: // TODO: maybe support those extra modes. - line 3336: // TODO: map to SHARED_READ in spanner mode. - line 3338: // TODO: map to SHARED_READ in spanner mode. - line 3339: // TODO: map to PESSIMISTIC in megastore mode. lib/tools_api/src/main/java/com/google/appengine/tools/admin/Application.java (7 lines): - line 167: // TODO: this should probably move somewhere else, although having - line 267: // TODO: validateXml(webXml.getFilename(), new File(SDKDOCS, "servlet.xsd")); - line 325: // TODO: consider validating the auto-generated file too, in case - line 372: // TODO If path is a WAR file, explode to temporary directory first. - line 498: // TODO If path is a WAR file, explode to temporary directory first. - line 818: // TODO Should we really be failing if parent doesn't exist, perhaps mkdirs here? - line 825: // TODO Are soft links okay? I don't know, disable for now api_dev/src/main/java/com/google/appengine/api/taskqueue/dev/LocalTaskQueue.java (7 lines): - line 203: // TODO Consider reloading queue.xml if changed. - line 277: // TODO Have DevAppServer install a shutdown hook and guarantee - line 306: // TODO need to special case the default queue and limit - line 318: // TODO Need to check consistency with production, may - line 330: // TODO: Consider whether we could do something more general here. - line 625: // TODO: To keep track of retry count, we can replace TaskQueueAddRequest with - line 698: // TODO: Investigate config options for the scheduler like api/src/main/java/com/google/appengine/api/datastore/DatastoreServiceGlobalConfig.java (7 lines): - line 102: // TODO: remove the second conditional when GAE_ENV makes it to prod Java 7 - line 124: // TODO and call it here. - line 176: // TODO This call should _only_ happen in the setConfig() call. - line 270: // TODO: Remove once no customers are configuring the SDK using environment - line 280: // TODO: Remove once no customers are configuring the SDK using environment - line 284: // TODO: Remove once no customers are configuring the SDK using environment - line 367: // TODO: Once DatastoreServiceGlobalConfig is made public, log warnings when the api/src/main/java/com/google/appengine/api/utils/FutureWrapper.java (5 lines): - line 111: // TODO: We should really be catching InterruptedException here - line 117: // TODO: See TODO above, we shouldn't be catching this here - line 154: // TODO: We should really be catching InterruptedException and - line 160: // TODO: See TODO above, we shouldn't be catching this here - line 166: // TODO: See TODO above, we shouldn't be catching this here runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee10/AppEngineWebAppContext.java (5 lines): - line 77: // TODO: This should be some sort of Prometheus-wide - line 147: // TODO: Can we change to a jetty-core handler? what to do on ASYNC? - line 160: /* TODO only does this for logging? - line 162: // TODO: maybe not needed when there is no securrity manager. - line 275: // TODO: this finally approach is ok until async request handling is supported api_dev/src/main/java/com/google/appengine/tools/development/ApiProxyLocalImpl.java (5 lines): - line 239: // TODO Do something more intelligent here. - line 305: // TODO When we fix DevAppServer to support hot redeployment, - line 342: // TODO: Consider looking on the superclass and interfaces. - line 393: // TODO Consider making a copy of environment here - line 408: // TODO return the same error message we return in prod runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee8/EE8AppVersionHandlerFactory.java (4 lines): - line 128: // TODO: because of the shading we do not have a correct - line 146: // TODO: uncomment when shaded org.eclipse.jetty.ee8.webapp.Configuration is fixed. - line 162: // TODO: review which configurations are added by default. - line 290: // TODO: an invalid html dispatch (404) will mask the exception api_dev/src/main/java/com/google/appengine/tools/development/AbstractContainerService.java (4 lines): - line 130: * Latch that will open once the module instance is fully initialized. TODO: This is used by some - line 251: // TODO: Support a mode where we combine this classpath with the - line 307: // TODO: shutdown is generally called for application level shutdown. - line 348: // TODO: we may want to make this configurable. local_runtime_shared_jetty9/src/main/java/com/google/apphosting/utils/servlet/TaskQueueViewerServlet.java (4 lines): - line 175: // TODO Pull this function into a utils class for use by other servlets. - line 185: // TODO Pull this function into a utils class for use by other servlets. - line 200: // TODO Pull this into a common utils class. - line 217: // TODO Pull this into a common utils class. utils/src/main/java/com/google/apphosting/utils/config/AppEngineWebXml.java (4 lines): - line 136: // TODO: Set this to true at some future point. - line 143: // TODO: Revert once sequential auto id deprecation period expires. - line 152: // TODO: Add a test emitting an error if "env" is present but it has an invalid value. - line 1075: // TODO: convert to AutoValue. That means getting rid of the mutable Map field. runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee8/AppEngineWebAppContext.java (4 lines): - line 78: // TODO: This should be some sort of Prometheus-wide - line 188: /* TODO only does this for logging? - line 190: // TODO: maybe not needed when there is no securrity manager. - line 308: // TODO: this finally approach is ok until async request handling is supported api_dev/src/main/java/com/google/appengine/api/users/dev/ee10/LocalOAuthAuthorizeTokenServlet.java (4 lines): - line 46: // TODO: Validate that the token exists. - line 54: // TODO: Move to a JSP? - line 73: // TODO: Mark the token as approved. - line 80: // TODO: Move to a JSP? local_runtime_shared_jetty12/src/main/java/com/google/apphosting/utils/servlet/TaskQueueViewerServlet.java (4 lines): - line 175: // TODO Pull this function into a utils class for use by other servlets. - line 185: // TODO Pull this function into a utils class for use by other servlets. - line 200: // TODO Pull this into a common utils class. - line 217: // TODO Pull this into a common utils class. api/src/main/java/com/google/appengine/api/datastore/Key.java (4 lines): - line 46: // TODO: Disable serialization if !isComplete(). - line 47: // TODO: Reconsider storing a full-fledged Key as the parent. - line 50: // TODO: Make the file GWT-compatible (remove non-gwt-compatible - line 136: // TODO: Is there any reason to support an incomplete parent key? local_runtime_shared_jetty12/src/main/java/com/google/apphosting/utils/servlet/ee10/TaskQueueViewerServlet.java (4 lines): - line 175: // TODO Pull this function into a utils class for use by other servlets. - line 185: // TODO Pull this function into a utils class for use by other servlets. - line 200: // TODO Pull this into a common utils class. - line 217: // TODO Pull this into a common utils class. runtime/impl/src/main/java/com/google/apphosting/runtime/ApiProxyImpl.java (4 lines): - line 150: // TODO: We may want a nicer interface for exposing this - line 243: // TODO There's a circular dependency here: - line 826: // TODO: In the next API version, we should always get - line 1194: // TODO: It would be nice if UPRequest had a bool for this. api_dev/src/main/java/com/google/appengine/api/users/dev/LocalOAuthAuthorizeTokenServlet.java (4 lines): - line 46: // TODO: Validate that the token exists. - line 54: // TODO: Move to a JSP? - line 73: // TODO: Mark the token as approved. - line 80: // TODO: Move to a JSP? runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee10/EE10AppVersionHandlerFactory.java (4 lines): - line 133: // TODO: because of the shading we do not have a correct - line 150: // TODO: uncomment when shaded org.eclipse.jetty.ee10.webapp.Configuration is fixed. - line 163: // TODO: review which configurations are added by default. - line 276: // TODO: an invalid html dispatch (404) will mask the exception runtime/local_jetty12_ee10/src/main/java/com/google/appengine/tools/development/jetty/ee10/JettyContainerService.java (4 lines): - line 366: // TODO: WHAT IS THIS connector.setSoLingerTime(0); - line 498: // TODO: consider scanning the whole web-inf - line 535: // TODO: Resource.setDefaultUseCaches(false); - line 732: // TODO remove when api/src/main/java/com/google/appengine/api/datastore/BaseAsyncDatastoreServiceImpl.java (3 lines): - line 104: // TODO: Seems like this should be doing a defensive copy (especially since - line 206: // TODO: The handling of the Keys is pretty ugly. We get an Iterable from the - line 408: // TODO The code that is commented out auto-enlists ancestor queries local_runtime_shared_jetty12/src/main/java/com/google/apphosting/utils/servlet/DatastoreViewerServlet.java (3 lines): - line 282: // TODO: Implement pagination - line 382: // TODO Handle creation case - line 565: // TODO: implement this api_dev/src/main/java/com/google/appengine/api/urlfetch/dev/LocalURLFetchService.java (3 lines): - line 370: // TODO set these timeouts according to the RPC deadline. - line 394: // TODO: Should we check on PUT/PATCH? What would the default be? - line 468: // TODO: Default behavior reverted to not validating cert for protobuf/api/entity.proto (3 lines): - line 429: // TODO: ORDERED = 1; (or something to that effect) - line 430: // TODO: DYNAMIC = 2; (or something to that effect) - line 576: // TODO: Add something to this message to indicate what kind of api/src/main/java/com/google/appengine/api/datastore/Entities.java (3 lines): - line 29: // TODO: Document the types of filters we support and the structure - line 34: // TODO: Document the types of filters we support and the structure - line 39: // TODO: Document the types of filters we support and the structure api/src/main/java/com/google/appengine/api/datastore/AsyncCloudDatastoreV1ServiceImpl.java (3 lines): - line 388: // TODO: We don't actually respect the user provided timeout well. The - line 423: // TODO: Share this code with v3 impl. Add timeout logic to multifuture? - line 489: // TODO: What should we do here? shared_sdk_jetty12/src/main/java/com/google/apphosting/runtime/jetty/DatastoreSessionStore.java (3 lines): - line 66: // TODO The id startsWith check is only needed while sessions created - line 72: // TODO The id startsWith check is only needed while sessions created - line 313: // TODO: avoid this data copy runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineWebAppContext.java (3 lines): - line 77: // TODO: This should be some sort of Prometheus-wide - line 168: // TODO: maybe not needed when there is no securrity manager. - line 290: // TODO: this finally approach is ok until async request handling is supported local_runtime_shared_jetty12/src/main/java/com/google/apphosting/utils/servlet/ee10/DatastoreViewerServlet.java (3 lines): - line 282: // TODO: Implement pagination - line 382: // TODO Handle creation case - line 565: // TODO: implement this runtime/local_jetty12/src/main/java/com/google/appengine/tools/development/jetty/JettyContainerService.java (3 lines): - line 359: // TODO: WHAT IS THIS connector.setSoLingerTime(0); - line 490: // TODO: consider scanning the whole web-inf - line 527: // TODO: Resource.setDefaultUseCaches(false); runtime/local_jetty12_ee10/src/main/java/com/google/appengine/tools/development/jetty/ee10/AppEngineWebAppContext.java (3 lines): - line 37: // TODO: This should be some sort of Prometheus-wide - line 79: // TODO: Override the default HttpServletContext implementation (for logging)?. - line 136: TODO fix logging. api_dev/src/main/java/com/google/appengine/tools/development/BackendServersBase.java (3 lines): - line 205: // TODO: Note monitor on stateHolder is NOT held between tests - line 703: // TODO: Avoid repeatedly issuing the same environment mismatch errors with - line 726: // TODO: Pass backend name which should be the current server api_dev/src/main/java/com/google/appengine/api/search/dev/LuceneQueryTreeVisitor.java (3 lines): - line 200: // TODO: Use ComparisonOp.EQ and adjust text query generation. - line 292: // TODO: if we ever add more functions, this simple rule may not suffice - line 576: // TODO: Fix this for CJK text. api/src/main/java/com/google/appengine/api/datastore/MultiQueryBuilder.java (3 lines): - line 62: // TODO: consider allowing the order in which components are - line 96: // TODO: is this a stable sort? a stable sort would probably be - line 122: // TODO: if there are no inequality filters and we have no api/src/main/java/com/google/appengine/api/datastore/ShortBlob.java (3 lines): - line 29: // TODO: Make the file GWT-compatible (remove non-gwt-compatible - line 52: // TODO Fail fast when array is too big. - line 83: // TODO Consider printing hex-encoded bytes since the size is api_dev/src/main/java/com/google/appengine/api/datastore/dev/LocalCompositeIndexManager.java (3 lines): - line 387: // TODO: Should we be doing more validation here? - line 388: // TODO: surely we should instead be reusing the parse - line 826: // TODO check file mod timestamp so that we can pick up api/src/main/java/com/google/appengine/api/datastore/DataTypeTranslator.java (3 lines): - line 79: // TODO Like {@link EntityTranslator}, we'd like to make this - line 820: // TODO: I believe this is sometimes incorrect. In this method type Value is Cloud - line 1668: // TODO: Figure out how to do partial serialization. runtime_shared/src/main/java/com/google/apphosting/api/ApiProxy.java (3 lines): - line 285: // TODO: The rest of the methods should neither be visible - line 324: // TODO: Make this method public. - line 441: // TODO: In the next API version, remove this method and local_runtime_shared_jetty9/src/main/java/com/google/apphosting/utils/servlet/DatastoreViewerServlet.java (3 lines): - line 282: // TODO: Implement pagination - line 382: // TODO Handle creation case - line 565: // TODO: implement this protobuf/api/log_service.proto (3 lines): - line 61: // depends on them in their present state. TODO: Solidify protos. - line 342: // TODO: Replace above fields with a general way to filter inside the - line 437: // TODO: Replace this with a repeated LogModuleVersion field. shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/DatastoreSessionStore.java (3 lines): - line 66: // TODO The id startsWith check is only needed while sessions created - line 72: // TODO The id startsWith check is only needed while sessions created - line 303: // TODO: avoid this data copy api/src/main/java/com/google/appengine/api/datastore/CloudDatastoreV1ClientImpl.java (2 lines): - line 194: // TODO: Evaluate whether to keep this optimization. - line 321: // TODO: Remove this special case and defer to Application Default Credentials api/src/main/java/com/google/appengine/api/datastore/Text.java (2 lines): - line 22: // TODO: deprecate in favor of an unindexed String. - line 52: // TODO: V2 throw NPE if the arg is null. api/src/main/java/com/google/appengine/api/datastore/PreparedMultiQuery.java (2 lines): - line 216: // TODO: consider making this iterator respect limit to - line 515: // TODO Return a LazyList here. Simple solution involves some runtime/lite/src/main/java/com/google/appengine/runtime/lite/RequestManager.java (2 lines): - line 501: // TODO: Add a try-catch block to every instrumented - line 745: // TODO what if there's other app/versions in this VM? api/src/main/java/com/google/appengine/api/datastore/KeyTranslator.java (2 lines): - line 56: // TODO: consider throwing an exception if this is not the last - line 91: // TODO: Assert that the rest of the key matched? api/src/main/java/com/google/appengine/api/blobstore/ee10/BlobstoreServiceImpl.java (2 lines): - line 302: // TODO: add log - line 305: // TODO: add log api_dev/src/main/java/com/google/appengine/tools/development/InstanceHelper.java (2 lines): - line 222: // TODO: Set version to backend name after confirming with ludo@ - line 265: // TODO: This calls user code, can we do this outside the synchronized block. runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee10/TransactionCleanupListener.java (2 lines): - line 39: // TODO: this implementation uses reflection so that the datasource instance - line 44: // TODO: this implementation assumes only a single thread services the utils/src/main/java/com/google/apphosting/utils/config/EarHelper.java (2 lines): - line 142: // TODO: Add support for an application id override. - line 143: // TODO: consider inserting an app id prefix here if relevant api/src/main/java/com/google/appengine/api/datastore/Query.java (2 lines): - line 777: // TODO Add an AncestorFilter so (ancestor is A OR ancestor is B) is possible. - line 899: // TODO It may be desirable to disallow Key type api_dev/src/main/java/com/google/appengine/tools/development/AbstractModule.java (2 lines): - line 35: // TODO: Verify above comment is no longer needed and hopefully remove it. - line 78: // TODO: Investigate removing this multiple configuration protection. runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/delegate/internal/DelegateConnection.java (2 lines): - line 115: // TODO: We want to recycle the channel instead of creating a new one every time. - line 116: // TODO: Implement the NestedChannel with the top layers HttpChannel. api/src/main/java/com/google/appengine/api/blobstore/BlobstoreServiceImpl.java (2 lines): - line 295: // TODO: add log - line 298: // TODO: add log runtime/impl/src/main/java/com/google/apphosting/runtime/RuntimeLogSink.java (2 lines): - line 40: *

TODO: This class is designed to be used in a single-threaded runtime. If multiple requests are - line 112: // TODO work with the appserver team to autoflush the log api/src/main/java/com/google/appengine/api/datastore/GeoPt.java (2 lines): - line 26: // TODO: Make the file GWT-compatible (Float.floatToIntBits(float) - line 125: // TODO: shall we make this an instance method (it feels similar in structure to api/src/main/java/com/google/appengine/api/users/UserService.java (2 lines): - line 48: // TODO: As with User.authDomain, it would be "friendlier" to - line 93: // TODO: As with User.authDomain, it would be "friendlier" to api/src/main/java/com/google/apphosting/utils/remoteapi/RemoteApiServlet.java (2 lines): - line 334: // TODO: Consider supporting deferred gets here. - line 373: // TODO: Shouldn't this use allocateIds instead? api/src/main/java/com/google/apphosting/utils/remoteapi/EE10RemoteApiServlet.java (2 lines): - line 334: // TODO: Consider supporting deferred gets here. - line 373: // TODO: Shouldn't this use allocateIds instead? api_dev/src/main/java/com/google/appengine/tools/development/ApplicationConfigurationManager.java (2 lines): - line 246: // TODO: Avoid repeating warnings for repeated calls. - line 424: // TODO: Get WAR files to work. runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee8/TransactionCleanupListener.java (2 lines): - line 36: // TODO: this implementation uses reflection so that the datasource instance - line 41: // TODO: this implementation assumes only a single thread services the api_dev/src/main/java/com/google/appengine/api/search/dev/SnippetExpression.java (2 lines): - line 169: // TODO: language dependent - line 340: // TODO: language dependent api/src/main/java/com/google/appengine/api/datastore/AsyncDatastoreServiceImpl.java (2 lines): - line 325: // TODO: We don't actually respect the user provided timeout well. The - line 423: // TODO: What should we do here? runtime/local_jetty12/src/main/java/com/google/appengine/tools/development/jetty/AppEngineWebAppContext.java (2 lines): - line 41: // TODO: This should be some sort of Prometheus-wide - line 84: // TODO: Override the default HttpServletContext implementation (for logging)?. utils/src/main/java/com/google/apphosting/utils/config/IndexesXml.java (2 lines): - line 47: // TODO: rename this class, because it's now encapsulating - line 77: // TODO: consider representing by proper subclasses of class Index api_dev/src/main/java/com/google/appengine/api/images/dev/LocalImagesService.java (2 lines): - line 176: // TODO: Do we need to set both fields *and* throw an - line 503: // TODO Figure out why the following line causes this remoteapi/src/main/java/com/google/appengine/tools/remoteapi/RemoteDatastore.java (2 lines): - line 54: * remote app id. TODO: consider updating this. - line 92: // TODO Support AddActions. api_dev/src/main/java/com/google/appengine/api/search/dev/LuceneUtils.java (2 lines): - line 317: // TODO: Lucene docs insist on reusing the same NumericFields across documents. - line 419: // TODO: delete support for passing ISO 8601 formatted strings when runtime/impl/src/main/java/com/google/apphosting/runtime/TraceWriter.java (2 lines): - line 83: // TODO: Set trace id properly. This can't be done until we define a way to parse - line 305: * End the API span. TODO: Remove this function which is the same as endSpan. api_dev/src/main/java/com/google/appengine/tools/development/DevAppServerFactory.java (2 lines): - line 32: // TODO: Describe the difference between standalone and testing servers. - line 193: // TODO change AppMakerDevServer after a push of the SDK. runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/TransactionCleanupListener.java (2 lines): - line 37: // TODO: this implementation uses reflection so that the datasource instance - line 42: // TODO: this implementation assumes only a single thread services the api_dev/src/main/java/com/google/appengine/tools/development/Modules.java (2 lines): - line 44: // TODO: Explore wiring this into ApiProxy.Environment - line 164: // TODO: Include backends in ModulesController. api/src/main/java/com/google/apphosting/utils/security/urlfetch/URLFetchServiceStreamHandler.java (2 lines): - line 316: // TODO We are using a proxy, but should we really return true? - line 322: // TODO Is this relevant for URLFetchService? api_dev/src/main/java/com/google/appengine/api/capabilities/dev/LocalCapabilitiesService.java (2 lines): - line 48: // TODO handle FUTURE date value in the next CL - line 97: // TODO what about status = SummaryStatus.SCHEDULED_FUTURE; api/src/main/java/com/google/appengine/api/datastore/RawValue.java (2 lines): - line 142: // TODO: return a short blob? (not currently possible to get here). - line 145: // TODO: return a Date? (not currently possible to get here). api/src/main/java/com/google/appengine/api/memcache/AsyncMemcacheServiceImpl.java (2 lines): - line 476: // TODO replace MemcacheServiceException with new MemcachePutException - line 486: *

TODO This is too conservative; need to revisit. The docs are conflating item size limit with protobuf/api/datamodel.proto (2 lines): - line 35: // TODO: Rename this field once the appstats client code is out of the - line 120: // TODO: Rename this field once the appstats client code is out of the lib/tools_api/src/main/java/com/google/appengine/tools/admin/AppYamlTranslator.java (2 lines): - line 352: // TODO: Consider whether we should be adding the - line 376: // TODO: Verify script: is required. api_dev/src/main/java/com/google/appengine/api/images/dev/ee10/LocalBlobImageServlet.java (2 lines): - line 89: // TODO: Revisit and possibly re-enable once b/7031367 is understood - line 97: // // TODO: Make this an error by returning SC_NOT_FOUND once runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/JettyServletEngineAdapter.java (2 lines): - line 173: // TODO Should we also call ApplyCloneSettings()? - line 204: // TODO: Should we have a wrapper exception for this remoteapi/src/main/java/com/google/appengine/tools/remoteapi/RemoteApiInstaller.java (2 lines): - line 68: // TODO: Can we just depend on that class? - line 76: // TODO: Support something other than console handler for when we're api/src/main/java/com/google/appengine/api/taskqueue/QueueApiHelper.java (2 lines): - line 158: // TODO It may be more interesting to throw a - line 176: // TODO: Return a different exception when the Java API is able to provoke this runtime/impl/src/main/java/com/google/apphosting/runtime/AppLogsWriter.java (2 lines): - line 64: *

TODO: In the future we may wish to initiate flushes from a scheduled future which would happen - line 307: // thread. See the TODO above. api_dev/src/main/java/com/google/appengine/api/images/dev/LocalBlobImageServlet.java (2 lines): - line 88: // TODO: Revisit and possibly re-enable once b/7031367 is understood - line 96: // // TODO: Make this an error by returning SC_NOT_FOUND once api/src/main/java/com/google/appengine/api/datastore/QueryResultIteratorImpl.java (2 lines): - line 156: // TODO: Refactor the handling of offset and simplify this code. - line 212: // TODO: seems like we could support this... api/src/main/java/com/google/appengine/api/datastore/Batcher.java (2 lines): - line 142: // TODO: the max time this can take is actually N * timeout. Consider fixing this. - line 163: // TODO: See if we can make these values immutable and store them on the batcher. appengine_testing/src/main/java/com/google/appengine/tools/development/testing/DevAppServerTestRunner.java (2 lines): - line 101: // TODO: Consider injecting the port into the test class if they've - line 111: // TODO: This is really fragile. See if we can do this with a series runtime/impl/src/main/java/com/google/apphosting/runtime/RequestManager.java (2 lines): - line 558: // TODO: Add a try-catch block to every instrumented - line 862: // TODO what if there's other app/versions in this VM? api/src/main/java/com/google/appengine/api/search/Field.java (2 lines): - line 289: // TODO: use self descriptive DOUBLE as a name. - line 628: // TODO: use binary number representation instead api_dev/src/main/java/com/google/appengine/tools/development/SharedMain.java (2 lines): - line 105: // TODO - document this once a method to validate the keys are in place (the key - line 167: // TODO Consider reading properties from a file, or api_dev/src/main/java/com/google/appengine/api/search/dev/LocalSearchService.java (2 lines): - line 439: // TODO: make this configurable: b/12370828 - line 888: // TODO: check the priority in backend runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppVersionHandlerFactory.java (1 line): - line 303: // TODO: an invalid html dispatch (404) will mask the exception api_dev/src/main/java/com/google/appengine/tools/info/Jetty12Sdk.java (1 line): - line 148: for (String subdir : new String[] {"ee8-annotations"}) { // TODO: "ee8-jaspi" for Jetty12 remoteapi/src/main/java/com/google/appengine/tools/remoteapi/AppEngineClient.java (1 line): - line 112: // TODO: After these two methods reach third_party, change api_dev/src/main/java/com/google/appengine/api/search/dev/SimpleScorer.java (1 line): - line 35: // TODO: scorer limit is ignored api_dev/src/main/java/com/google/appengine/tools/development/testing/LocalServiceTestHelper.java (1 line): - line 560: // TODO it feels like calling the requestEndListerns should happen before runtime/main/src/main/java/com/google/apphosting/runtime/JavaRuntimeMain.java (1 line): - line 118: // TODO: This syntax ("-foo bar" instead of "-foo=bar") doesn't appear to be used utils/src/main/java/com/google/apphosting/utils/config/AppEngineWebXmlProcessor.java (1 line): - line 49: *

TODO: Add a real link to the xsd once it exists and do schema validation. utils/src/main/java/com/google/apphosting/utils/config/IndexYamlReader.java (1 line): - line 225: // TODO Remove this method once b/3244938 is fixed. runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee8/ResourceFileServlet.java (1 line): - line 136: // TODO: I suspect we should allow error handlers here somehow. api/src/main/java/com/google/appengine/api/datastore/FilterMatcher.java (1 line): - line 145: // TODO: devise a more elegant way to support geo-spatial api_dev/src/main/java/com/google/appengine/tools/util/ClientCookie.java (1 line): - line 214: // TODO: we are disregarding secure_ and ports api_dev/src/main/java/com/google/cloud/datastore/core/exception/DatastoreException.java (1 line): - line 26: // TODO: This class is used outside Datastore. api/src/main/java/com/google/appengine/api/datastore/IMHandle.java (1 line): - line 29: // TODO: Make the file GWT-compatible (import java.net is not local_runtime_shared_jetty9/src/main/java/com/google/apphosting/utils/servlet/CapabilitiesStatusServlet.java (1 line): - line 47: // TODO move that in an official public place runtime/local_jetty9/src/main/java/com/google/appengine/tools/development/jetty9/JettyContainerService.java (1 line): - line 460: // TODO: consider scanning the whole web-inf protobuf/runtime_rpc.proto (1 line): - line 35: // TODO: Consider changing the interface to not suggest that it can local_runtime_shared_jetty12/src/main/java/com/google/apphosting/utils/servlet/CapabilitiesStatusServlet.java (1 line): - line 47: // TODO move that in an official public place api/src/main/java/com/google/appengine/api/taskqueue/QueueImpl.java (1 line): - line 141: // TODO This assumes that the unicode characters are all ASCII. api/src/main/java/com/google/appengine/api/search/DateUtil.java (1 line): - line 158: // TODO: remove this code to capture "yyyy-MM-dd" formatted dates when the API protobuf/appinfo.proto (1 line): - line 159: // TODO: Consider populating this field directly, in Zeus. lib/tools_api/src/main/java/com/google/appengine/tools/admin/UpdateSuccessEvent.java (1 line): - line 32: // TODO Add some sort of information in here that indicates api/src/main/java/com/google/appengine/api/datastore/AppIdNamespace.java (1 line): - line 27: // TODO - The onestore schema now does support a first api/src/main/java/com/google/appengine/api/datastore/CompositeIndexUtils.java (1 line): - line 42: // TODO: revisit if we ever need the ability to add more than one extra attribute. api/src/main/java/com/google/appengine/api/taskqueue/DatastoreDeleteDeferredTask.java (1 line): - line 26: // TODO: Currently only used by our session management code. Consider api_dev/src/main/java/com/google/appengine/tools/development/LocalCapabilitiesEnvironment.java (1 line): - line 127: // TODO what about status = SummaryStatus.SCHEDULED_FUTURE; api_dev/src/main/java/com/google/appengine/api/users/dev/ee10/LocalLoginServlet.java (1 line): - line 67: // TODO: We may want to move this to a JSP. shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineAuthentication.java (1 line): - line 420: // TODO: I'm not sure this will happen in api_dev/src/main/java/com/google/appengine/tools/development/DevAppServerImpl.java (1 line): - line 391: // TODO: Do an actual graceful shutdown rather than just delaying. api_dev/src/main/java/com/google/appengine/api/search/dev/ExpressionBuilder.java (1 line): - line 180: // Strip quotes, TODO: implement proper unescape once Expression.g runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/delegate/DelegateConnector.java (1 line): - line 44: // TODO: recover existing endpoint and connection from WeakReferenceMap with request as key, or protobuf/api/memcache_service.proto (1 line): - line 98: // TODO: Remove uses of deprecated fields once the new memcache runtime/impl/src/main/java/com/google/apphosting/runtime/JavaRuntimeFactory.java (1 line): - line 69: // TODO: This logic should really move down to runtime/impl/src/main/java/com/google/apphosting/runtime/JavaRuntimeParams.java (1 line): - line 158: // TODO: this flag is no longer used and should be deleted runtime/local_jetty12/src/main/java/com/google/appengine/tools/development/jetty/StaticFileFilter.java (1 line): - line 137: // TODO: how to release runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/http/HttpApiHostClient.java (1 line): - line 66: // TODO: study the different limits that we have for different transports and runtime/local_jetty12_ee10/src/main/java/com/google/appengine/tools/development/jetty/ee10/StaticFileUtils.java (1 line): - line 306: // TODO If we wish to support the corresponding logic runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/http/JettyHttpHandler.java (1 line): - line 296: // TODO: Consider checking for other subclasses of api/src/main/java/com/google/appengine/api/search/checkers/IndexChecker.java (1 line): - line 40: // TODO: add regex constraint runtime/local_jetty12/src/main/java/com/google/appengine/tools/development/jetty/DevAppEngineWebAppContext.java (1 line): - line 111: // TODO An extremely heinous way of helping the DevAppServer's api/src/main/java/com/google/appengine/api/blobstore/BlobInfoFactory.java (1 line): - line 143: // TODO : Remove this check once b/3483289 is fixed. protobuf/api/taskqueue_service.proto (1 line): - line 452: // TODO: Change this to int32. api/src/main/java/com/google/appengine/api/datastore/NormalizedQuery.java (1 line): - line 50: // TODO: consider sharing this code with MegastoreQueryPlanner api_dev/src/main/java/com/google/appengine/api/search/dev/LuceneDirectoryMap.java (1 line): - line 157: // TODO: persist index params; otherwise user can alter them in api_dev/src/main/java/com/google/appengine/api/users/dev/ee10/LocalOAuthRequestTokenServlet.java (1 line): - line 45: // TODO: Validate the incoming request and issue an actual token, api/src/main/java/com/google/appengine/api/datastore/FetchOptions.java (1 line): - line 69: // TODO: Remove this in the next API version. It is here api/src/main/java/com/google/appengine/api/datastore/DatastoreService.java (1 line): - line 29: // TODO that does not take a transaction should shared_sdk_jetty12/src/main/java/com/google/apphosting/runtime/jetty/AppEngineSessionData.java (1 line): - line 47: // TODO: Direct access to the mutable map is required to maintain binary api_dev/src/main/java/com/google/appengine/api/users/dev/LocalUserService.java (1 line): - line 57: // TODO: Provide an implementation that deals with actual api/src/main/java/com/google/appengine/api/log/LogQueryResult.java (1 line): - line 41: // TODO: Implement Serializable properly (b/5681093). runtime/local_jetty9/src/main/java/com/google/appengine/tools/development/jetty9/AppEngineWebAppContext.java (1 line): - line 42: // TODO: This should be some sort of Prometheus-wide api_dev/src/main/java/com/google/appengine/api/search/dev/MatchScorer.java (1 line): - line 40: // TODO: limit and match_scorer_parameters are ignored runtime/impl/src/main/java/com/google/apphosting/runtime/AppVersionFactory.java (1 line): - line 447: // TODO: We should probably return an api_dev/src/main/java/com/google/appengine/tools/development/BackgroundThreadFactory.java (1 line): - line 56: // TODO: Only allow this to be used from a backend. api/src/main/java/com/google/appengine/api/taskqueue/QueueConstants.java (1 line): - line 28: // TODO These should not be constants. These values api_dev/src/main/java/com/google/appengine/api/modules/dev/LocalModulesService.java (1 line): - line 54: // TODO: Try to define this in one place only without violating dependency rules. runtime/local_jetty9/src/main/java/com/google/appengine/tools/development/jetty9/DevAppEngineWebAppContext.java (1 line): - line 103: // TODO An extremely heinous way of helping the DevAppServer's runtime_shared/src/main/java/com/google/appengine/api/LifecycleManager.java (1 line): - line 25: // TODO Ideally this should not be a shared class. That would runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/JettyServletEngineAdapter.java (1 line): - line 137: // TODO Should we also call ApplyCloneSettings()? shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/AppEngineSessionData.java (1 line): - line 47: // TODO: Direct access to the mutable map is required to maintain binary runtime/impl/src/main/java/com/google/apphosting/runtime/Logging.java (1 line): - line 149: // TODO: Investigate if LogPrintStream can be replaced with a PrintStream with protobuf/api/group.proto (1 line): - line 50: // TODO: Check the claim about being runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/http/JettyRequestAPIData.java (1 line): - line 225: /* TODO: what to do here? api/src/main/java/com/google/appengine/api/datastore/Rating.java (1 line): - line 23: // TODO: Make the file GWT-compatible (the method api/src/main/java/com/google/appengine/api/datastore/ValidatedQuery.java (1 line): - line 73: // TODO: Consider removing this check and relying on the backend to do this sort runtime/local_jetty12_ee10/src/main/java/com/google/appengine/tools/development/jetty/ee10/DevAppEngineWebAppContext.java (1 line): - line 111: // TODO An extremely heinous way of helping the DevAppServer's api/src/main/java/com/google/appengine/api/taskqueue/DatastorePutDeferredTask.java (1 line): - line 23: // TODO: Currently only used by our session management code. Consider api_dev/src/main/java/com/google/appengine/api/datastore/dev/KeyFilteredPseudoKind.java (1 line): - line 140: // TODO: implement get using queries once we support resumable get in the real datastore runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/jetty/ee10/ResourceFileServlet.java (1 line): - line 135: // TODO: I suspect we should allow error handlers here somehow. api/src/main/java/com/google/appengine/api/taskqueue/TaskOptions.java (1 line): - line 226: // TODO - could optimize this to produce smaller payload. api_dev/src/main/java/com/google/appengine/api/mail/dev/LocalMailService.java (1 line): - line 66: // TODO: Provide an implementation that delegates to javax.mail so that runtime/impl/src/main/java/com/google/apphosting/runtime/ApiDeadlineOracle.java (1 line): - line 37: // TODO: Rename this class to something less deadline-specific. api/src/main/java/com/google/appengine/api/datastore/DatastoreCallbacksImpl.java (1 line): - line 348: // TODO: Check whether it is possible for this to be null runtime/local_jetty9/src/main/java/com/google/appengine/tools/development/jetty9/StaticFileUtils.java (1 line): - line 305: // TODO If we wish to support the corresponding logic runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/JettyHttpHandler.java (1 line): - line 348: // TODO: Consider checking for other subclasses of runtime/impl/src/main/java/com/google/apphosting/runtime/RequestRunner.java (1 line): - line 149: // TODO: Consider checking for other subclasses of api/src/main/java/com/google/appengine/api/modules/ModulesServiceImpl.java (1 line): - line 406: // TODO: When b/12034257 is fixed remove this wrapper and use the new api_dev/src/main/java/com/google/appengine/api/users/dev/LocalLoginServlet.java (1 line): - line 67: // TODO: We may want to move this to a JSP. api_dev/src/main/java/com/google/appengine/tools/development/SystemPropertiesManager.java (1 line): - line 183: // TODO: Consider just calling shared_sdk_jetty12/src/main/java/com/google/apphosting/runtime/jetty/MemcacheSessionDataMap.java (1 line): - line 143: // TODO: avoid this data copy protobuf/api/queue.proto (1 line): - line 118: // TODO: Check the claim about being runtime/impl/src/main/java/com/google/apphosting/runtime/timer/CpuSpeedExtractorFactory.java (1 line): - line 41: // TODO: If this happens in production we should api/src/main/java/com/google/appengine/api/datastore/Index.java (1 line): - line 33: // TODO: Support mode? shared_sdk_jetty12/src/main/java/com/google/apphosting/runtime/jetty/AppEngineAuthentication.java (1 line): - line 397: // TODO: I'm not sure this will happen in api/src/main/java/com/google/apphosting/utils/servlet/TransactionCleanupFilter.java (1 line): - line 69: // TODO: In the dev appserver, capture a stack trace whenever a protobuf/app_logs.proto (1 line): - line 27: // TODO: Remove AppLogLine/Group in favor of those in log_service.proto. api_dev/src/main/java/com/google/appengine/tools/util/ClientCookieManager.java (1 line): - line 70: // TODO: add RFC 2965 (V2) support. shared_sdk_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/MemcacheSessionDataMap.java (1 line): - line 143: // TODO: avoid this data copy api/src/main/java/com/google/appengine/api/search/checkers/DocumentChecker.java (1 line): - line 68: // TODO should both this and checkValid() be public (checkValid() api/src/main/java/com/google/appengine/api/datastore/DataTypeUtils.java (1 line): - line 243: // TODO: Change this to an exception in API V2 api/src/main/java/com/google/appengine/api/search/query/ParserUtils.java (1 line): - line 215: // TODO: replace this with a call to some standard date-parsing library, api_dev/src/main/java/com/google/appengine/api/taskqueue/dev/DevPushQueue.java (1 line): - line 103: // TODO See if Quartz can catch this for us. runtime/local_jetty12/src/main/java/com/google/appengine/tools/development/jetty/StaticFileUtils.java (1 line): - line 306: // TODO If we wish to support the corresponding logic lib/tools_api/src/main/java/com/google/appengine/tools/admin/AppCfg.java (1 line): - line 89: // TODO: Break up this constructor so this code is more api/src/main/java/com/google/appengine/api/datastore/EnvProxy.java (1 line): - line 26: // TODO: Remove reflective use of this class from api/src/main/java/com/google/appengine/api/search/SortExpression.java (1 line): - line 180: // TODO: check that backend could provide default values if required. local_runtime_shared_jetty12/src/main/java/com/google/apphosting/utils/servlet/ee10/CapabilitiesStatusServlet.java (1 line): - line 47: // TODO move that in an official public place api_dev/src/main/java/com/google/appengine/tools/development/ApiProxyLocal.java (1 line): - line 51: // TODO When we fix DevAppServer to support hot redeployment, runtime/runtime_impl_jetty12/src/main/java/com/google/apphosting/runtime/http/HttpApiHostClient.java (1 line): - line 66: // TODO: study the different limits that we have for different transports and api/src/main/java/com/google/apphosting/utils/servlet/ee10/TransactionCleanupFilter.java (1 line): - line 69: // TODO: In the dev appserver, capture a stack trace whenever a protobuf/api/app_identity_service.proto (1 line): - line 87: // TODO: reserve these two fields once all the depending codes api/src/main/java/com/google/appengine/api/datastore/PreQueryContext.java (1 line): - line 28: // TODO: Allow users to add entities to the result set and have them merged api/src/main/java/com/google/appengine/api/search/Query.java (1 line): - line 264: // TODO: put in url to publically available documentation about api/src/main/java/com/google/appengine/api/datastore/DatastoreNeedIndexException.java (1 line): - line 29: // TODO: Remove the hint once we fix http://b/2330779 api/src/main/java/com/google/appengine/api/datastore/PreparedQueryImpl.java (1 line): - line 39: // TODO Move this check and the one that follows into the api/src/main/java/com/google/appengine/api/datastore/AdminDatastoreService.java (1 line): - line 327: // TODO: instead of implementing all of AsyncDatastoreService methods consider using api/src/main/java/com/google/appengine/api/memcache/MemcacheSerialization.java (1 line): - line 313: // TODO: as all types except Serialization are final we could api/src/main/java/com/google/appengine/api/datastore/Link.java (1 line): - line 50: // TODO Fail fast when string is too long. api/src/main/java/com/google/appengine/api/memcache/ConsistentErrorHandler.java (1 line): - line 26: // TODO: This is a "hack" to make ErrorHandler behave as expected api_dev/src/main/java/com/google/appengine/api/users/dev/ee10/LocalOAuthAccessTokenServlet.java (1 line): - line 45: // TODO: Validate the incoming request and issue an actual token, api/src/main/java/com/google/appengine/api/urlfetch/HTTPRequest.java (1 line): - line 110: // TODO: Document any header sanitization done by the shared_sdk/src/main/java/com/google/apphosting/runtime/SessionManagerUtil.java (1 line): - line 55: // TODO: It seems strange that we need to do this. It runtime/local_jetty12/src/main/java/com/google/appengine/tools/development/jetty/LocalResourceFileServlet.java (1 line): - line 200: // TODO: how to release protobuf/api/blobstore_service.proto (1 line): - line 109: // TODO: Support negative indexes for "from blob end" fetches. runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/ResourceFileServlet.java (1 line): - line 118: // TODO: I suspect we should allow error handlers here somehow. api/src/main/java/com/google/appengine/api/appidentity/AppIdentityServiceImpl.java (1 line): - line 276: // TODO: Even the case of multi-scope is not going to match api/src/main/java/com/google/appengine/api/datastore/Entity.java (1 line): - line 185: // TODO - A note from ryanb on transaction support: runtime/local_jetty12_ee10/src/main/java/com/google/appengine/tools/development/jetty/ee10/StaticFileFilter.java (1 line): - line 139: // TODO: how to release runtime/local_jetty12_ee10/src/main/java/com/google/appengine/tools/development/jetty/ee10/LocalResourceFileServlet.java (1 line): - line 204: // TODO: how to release api_dev/src/main/java/com/google/appengine/api/taskqueue/dev/UrlFetchJob.java (1 line): - line 192: // TODO Figure out what to do about following redirects in the api_dev/src/main/java/com/google/appengine/tools/info/AppengineSdk.java (1 line): - line 227: // TODO: Read a description out of a README file. api/src/main/java/com/google/appengine/api/search/FacetRefinement.java (1 line): - line 197: // TODO: add a unit test for this method. api/src/main/java/com/google/appengine/spi/ServicesFile.java (1 line): - line 32: // TODO Move all service provider code into some package api_dev/src/main/java/com/google/appengine/api/users/dev/LocalOAuthRequestTokenServlet.java (1 line): - line 45: // TODO: Validate the incoming request and issue an actual token, api/src/main/java/com/google/appengine/api/datastore/Cursor.java (1 line): - line 96: // TODO: consider exposing to users api/src/main/java/com/google/appengine/api/datastore/IndexTranslator.java (1 line): - line 32: // TODO: Support mode? and unspecified direction. api/src/main/java/com/google/appengine/api/users/User.java (1 line): - line 34: // TODO: We don't really need to expose this to user code api/src/main/java/com/google/appengine/api/images/CompositeImpl.java (1 line): - line 72: // TODO: What is the purpose of this map? lib/tools_api/src/main/java/com/google/appengine/tools/enhancer/EnhancerLoader.java (1 line): - line 87: // TODO Could make this faster than O(MxN), but M and N will always be small remoteapi/src/main/java/com/google/appengine/tools/remoteapi/HostedRemoteApiDelegate.java (1 line): - line 65: // TODO: Handle async calls when running inside an App Engine utils/src/main/java/com/google/apphosting/utils/config/GenerationDirectory.java (1 line): - line 29: // TODO: Move this to com.google.appengine.tools, post launch. api_dev/src/main/java/com/google/appengine/api/users/dev/LocalOAuthAccessTokenServlet.java (1 line): - line 45: // TODO: Validate the incoming request and issue an actual token, api/src/main/java/com/google/appengine/api/log/LogServiceImpl.java (1 line): - line 50: // TODO: Update LogQueryResult to accept the Future so we can api_dev/src/main/java/com/google/cloud/datastore/core/names/Kinds.java (1 line): - line 21: // TODO: Move the property name/path stuff to its own class. runtime/runtime_impl_jetty9/src/main/java/com/google/apphosting/runtime/jetty9/JettyRequestAPIData.java (1 line): - line 230: /* TODO: what to do here? api_dev/src/main/java/com/google/appengine/api/log/dev/LocalLogService.java (1 line): - line 399: // TODO: This should be a LinkedHashMap, or we should at runtime/impl/src/main/java/com/google/apphosting/runtime/NullRpcPlugin.java (1 line): - line 61: // TODO: do we need to do something special?