{"action":"closed","issue":{"url":"https://api.github.com/repos/google/closure-templates/issues/44","labels_url":"https://api.github.com/repos/google/closure-templates/issues/44/labels{/name}","comments_url":"https://api.github.com/repos/google/closure-templates/issues/44/comments","events_url":"https://api.github.com/repos/google/closure-templates/issues/44/events","html_url":"https://github.com/google/closure-templates/issues/44","id":90413904,"number":44,"title":"Setting `autoescape` on a template causes the template to silently fail.","user":{"login":"ChrisNeveu","id":1002726,"avatar_url":"https://avatars.githubusercontent.com/u/1002726?v=3","gravatar_id":"","url":"https://api.github.com/users/ChrisNeveu","html_url":"https://github.com/ChrisNeveu","followers_url":"https://api.github.com/users/ChrisNeveu/followers","following_url":"https://api.github.com/users/ChrisNeveu/following{/other_user}","gists_url":"https://api.github.com/users/ChrisNeveu/gists{/gist_id}","starred_url":"https://api.github.com/users/ChrisNeveu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChrisNeveu/subscriptions","organizations_url":"https://api.github.com/users/ChrisNeveu/orgs","repos_url":"https://api.github.com/users/ChrisNeveu/repos","events_url":"https://api.github.com/users/ChrisNeveu/events{/privacy}","received_events_url":"https://api.github.com/users/ChrisNeveu/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2015-06-23T15:08:07Z","updated_at":"2015-08-17T16:31:23Z","closed_at":"2015-08-17T16:31:23Z","body":"We have several templates with an `autoescape` value set. Including any of these templates in a `SoyFileSet` causes all templates to fail with `com.google.template.soy.tofu.SoyTofuException: Attempting to render undefined template`.\r\n\r\nAn example:\r\n```\r\n// foo.soy\r\n{namespace foo}\r\n\r\n/**\r\n * Template with contextual autoescape.\r\n */\r\n{template .manualAutoEscape autoescape=\"false\"}\r\n\tManual AutoEscape\r\n{/template}\r\n```\r\n```\r\n// bar.soy\r\n{namespace bar}\r\n\r\n/**\r\n * Hello World\r\n */\r\n{template .helloWorld}\r\n\tHello World\r\n{/template}\r\n```\r\n```scala\r\n// test.scala\r\nval testFiles = SoyFileSet.builder\r\n   .add(new URL(\"file:foo.soy\"))\r\n   .add(new URL(\"file:bar.soy\"))\r\n   .build\r\n   .compileToTofu\r\n\r\n   println(testFiles.newRenderer(\"foo.manualAutoEscape\").render)\r\n   println(testFiles.newRenderer(\"bar.helloWorld\").render)\r\n```\r\nBoth templates fail with `Attempting to render undefined template`. Removing the `autoescape=\"false\"` from `.manualAutoEscape` causes both to succeed."}}