docs: def get_extra(request):
      """Return information about a module / collection that cannot be cached."""
      settings = get_current_registry().settings
      exports_dirs = settings['exports-directories'].split()
      args = request.matchdict
      if args['page_ident_hash']:
          context_id, context_version = split_ident_hash(args['ident_hash'])
          try:
              id, version = split_ident_hash(args['page_ident_hash'])
          except IdentHashShortId as e:
              id = get_uuid(e.id)
              version = e.version
          except IdentHashMissingVersion as e:
              # Ideally we would find the page version
              # that is in the book instead of latest
              id = e.id
              version = get_latest_version(e.id)
      else:
          context_id = context_version = None
          id, version = split_ident_hash(args['ident_hash'])
      results = {}
      with db_connect() as db_connection:
          with db_connection.cursor() as cursor:
              results['downloads'] = \
                  list(get_export_allowable_types(cursor, exports_dirs,
                                                  id, version))
              results['isLatest'] = is_latest(id, version)
              results['latestVersion'] = get_latest_version(id)
              results['headVersion'] = get_head_version(id)
              results['canPublish'] = get_module_can_publish(cursor, id)
              results['state'] = get_state(cursor, id, version)
              results['books'] = get_books_containing_page(cursor, id, version,
                                                           context_id,
                                                           context_version)
              formatAuthors(results['books'])
  
      resp = request.response
      resp.content_type = 'application/json'
      resp.body = json.dumps(results, default=json_serial)
      return resp