def js_product_info(): """Return JSON-serialized information on the product. This will include the product name, version (human-readable and raw version information), release status, and the URL to the manual, in a form that can be directly embedded into a template's JavaScript section. Since the data won't change between calls without performing an upgrade and restart, result is cached in the process. Repeated calls will return the cached information. Returns: django.utils.safestring.SafeText: The JSON-serialized product information. """ global _product_info_str # We're caching the results, since this isn't going to ever change # between requests while the process is still running. if _product_info_str is None: _product_info_str = json_dumps({ 'isRelease': is_release(), 'manualURL': get_manual_url(), 'name': settings.PRODUCT_NAME, 'version': get_version_string(), 'versionInfo': VERSION[:-1], }) return _product_info_str
def get_server_info(request=None): """Return server information for use in the API. This is used for the root resource and for the deprecated server info resource. Args: request (django.http.HttpRequest, optional): The HTTP request from the client. Returns: dict: A dictionary of information about the server and its capabilities. """ return { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': get_server_url(request=request), 'administrators': [{ 'name': name, 'email': email, } for name, email in settings.ADMINS], 'time_zone': settings.TIME_ZONE, }, 'capabilities': get_capabilities(request=request), }
def get(self, request, *args, **kwargs): """Returns the information on the Review Board server.""" site = Site.objects.get_current() siteconfig = SiteConfiguration.objects.get_current() url = '%s://%s%s' % (siteconfig.get('site_domain_method'), site.domain, local_site_reverse('root', request=request)) return 200, { self.item_result_key: { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': url, 'administrators': [{'name': name, 'email': email} for name, email in settings.ADMINS], 'time_zone': settings.TIME_ZONE, }, 'capabilities': { 'diffs': { 'base_commit_ids': True, 'moved_files': True, }, 'scmtools': { 'perforce': { 'moved_files': True, }, }, }, }, }
def get_server_info(request=None): """Returns server information for use in the API. This is used for the root resource and for the deprecated server info resource. """ capabilities = _capabilities_defaults.copy() capabilities.update(_registered_capabilities) return { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': get_server_url(request=request), 'administrators': [{ 'name': name, 'email': email, } for name, email in settings.ADMINS], 'time_zone': settings.TIME_ZONE, }, 'capabilities': capabilities }
def get_server_info(request=None): """Return server information for use in the API. This is used for the root resource and for the deprecated server info resource. Args: request (django.http.HttpRequest, optional): The HTTP request from the client. Returns: dict: A dictionary of information about the server and its capabilities. """ return { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': get_server_url(request=request), 'administrators': [ { 'name': name, 'email': email, } for name, email in settings.ADMINS ], 'time_zone': settings.TIME_ZONE, }, 'capabilities': get_capabilities(request=request), }
def main(): if not os.path.exists("setup.py"): sys.stderr.write("This must be run from the root of the " "Review Board tree.\n") sys.exit(1) load_config() if not is_release(): sys.stderr.write("This version is not listed as a release.\n") sys.exit(1) cur_dir = os.getcwd() git_dir = clone_git_tree(cur_dir) build_settings() build_targets() build_checksums() upload_files() os.chdir(cur_dir) shutil.rmtree(git_dir) tag_release() register_release()
def version(request): return { 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), 'version_raw': VERSION, }
def get_server_info(request=None): """Returns server information for use in the API. This is used for the root resource and for the deprecated server info resource. """ capabilities = _capabilities_defaults.copy() capabilities.update(_registered_capabilities) return { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': get_server_url(request=request), 'administrators': [ { 'name': name, 'email': email, } for name, email in settings.ADMINS ], 'time_zone': settings.TIME_ZONE, }, 'capabilities': capabilities }
def version(request): return { 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), 'version_raw': VERSION, 'RB_MANUAL_URL': get_manual_url(), }
def get_server_info(request=None): """Returns server information for use in the API. This is used for the root resource and for the deprecated server info resource. """ site = Site.objects.get_current() siteconfig = SiteConfiguration.objects.get_current() url = '%s://%s%s' % (siteconfig.get('site_domain_method'), site.domain, local_site_reverse('root', request=request)) return { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': url, 'administrators': [ { 'name': name, 'email': email, } for name, email in settings.ADMINS ], 'time_zone': settings.TIME_ZONE, }, 'capabilities': { 'diffs': { 'base_commit_ids': True, 'moved_files': True, }, 'review_requests': { 'commit_ids': True, }, 'scmtools': { 'git': { 'empty_files': True, }, 'mercurial': { 'empty_files': True, }, 'perforce': { 'moved_files': True, 'empty_files': True, }, 'svn': { 'empty_files': True, }, }, 'text': { 'markdown': True, }, } }
def _get_branch_for_version(): """Return the branch or tag for the current version of Review Board.""" if VERSION[4] == 'final' or VERSION[5] > 0: if reviewboard.is_release(): return 'release-%s.%s.%s' % (VERSION[0], VERSION[1], VERSION[2]) else: return 'release-%s.%s.x' % (VERSION[0], VERSION[1]) else: return 'master'
def version(request): """Return a dictionary with version information.""" return { 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), 'version_raw': VERSION, 'RB_MANUAL_URL': get_manual_url(), }
def get_server_info(request=None): """Returns server information for use in the API. This is used for the root resource and for the deprecated server info resource. """ return { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': get_server_url(request=request), 'administrators': [ { 'name': name, 'email': email, } for name, email in settings.ADMINS ], 'time_zone': settings.TIME_ZONE, }, 'capabilities': { 'diffs': { 'base_commit_ids': True, 'moved_files': True, }, 'review_requests': { 'commit_ids': True, }, 'scmtools': { 'git': { 'empty_files': True, }, 'mercurial': { 'empty_files': True, }, 'perforce': { 'moved_files': True, 'empty_files': True, }, 'svn': { 'empty_files': True, }, }, 'text': { 'markdown': True, 'per_field_text_types': True, 'can_include_raw_values': True, }, } }
def main(): python_check_can_release(is_release()) rbwebsite_load_config() with git_use_clone('.'): build_settings() built_files = build_targets() s3_upload_files(RELEASES_BUCKET_NAME, RELEASES_BUCKET_KEY, built_files) git_tag_release(__version__) register_release()
def main(): python_check_can_release(is_release()) rbwebsite_load_config() with git_use_clone("."): build_settings() built_files = build_targets() s3_upload_files(RELEASES_BUCKET_NAME, RELEASES_BUCKET_KEY, built_files) git_tag_release(__version__) register_release()
def linkcode_resolve(domain, info): version = reviewboard.VERSION if version[4] == 'final' or version[4] > 0: if reviewboard.is_release(): branch = 'release-%s.%s.%s' % (version[0], version[1], version[2]) else: branch = 'release-%s.%s.x' % (version[0], version[1]) else: branch = 'master' return github_linkcode_resolve(domain=domain, info=info, allowed_module_names=['reviewboard'], github_org_id='reviewboard', github_repo_id='reviewboard', branch=branch)
def main(): if not os.path.exists("setup.py"): sys.stderr.write("This must be run from the root of the " "Review Board tree.\n") sys.exit(1) if not is_release(): sys.stderr.write("This version is not listed as a release.\n") sys.exit(1) clean() build_targets() upload_files() tag_release() if VERSION[3] == 'final': register_release()
def version(request): """Return a dictionary with version information. Args: request (django.http.HttpRequest): The current HTTP request. Returns: dict: State to add to the context. """ return { 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), 'version_raw': VERSION, 'RB_MANUAL_URL': get_manual_url(), }
def server_info(request): site = Site.objects.get_current() siteconfig = site.config.get() url = "%s://%s%s" % (siteconfig.get("site_domain_method"), site.domain, settings.SITE_ROOT) return WebAPIResponse( request, { "product": { "name": "Review Board", "version": get_version_string(), "package_version": get_package_version(), "is_release": is_release(), }, "site": {"url": url, "administrators": [{"name": name, "email": email} for name, email in settings.ADMINS]}, }, )
def server_info(request): site = Site.objects.get_current() siteconfig = site.config.get() url = '%s://%s%s' % (siteconfig.get('site_domain_method'), site.domain, settings.SITE_ROOT) return WebAPIResponse(request, { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': url, 'administrators': [{'name': name, 'email': email} for name, email in settings.ADMINS], }, })
def _get_branch_for_version(): """Return the branch or tag for the current version of Review Board.""" if VERSION[4] == 'final' or VERSION[5] > 0: branch = 'release-%s.%s' % (VERSION[0], VERSION[1]) if reviewboard.is_release(): if VERSION[2] > 0: branch += '.%s' % VERSION[2] if VERSION[4] != 'final': branch += VERSION[4] if VERSION[5] > 0: branch += '%s' % VERSION[5] else: branch += '.x' return branch else: return 'master'
def compare_item(self, item_rsp, obj): self.assertIn('product', item_rsp) self.assertIn('site', item_rsp) self.assertIn('capabilities', item_rsp) product_rsp = item_rsp['product'] self.assertEqual(product_rsp['name'], 'Review Board') self.assertEqual(product_rsp['version'], get_version_string()) self.assertEqual(product_rsp['package_version'], get_package_version()) self.assertEqual(product_rsp['is_release'], is_release()) site_rsp = item_rsp['site'] self.assertTrue(site_rsp['url'].startswith(get_server_url())) self.assertEqual(site_rsp['administrators'], [{ 'name': name, 'email': email, } for name, email in settings.ADMINS]) self.assertEqual(site_rsp['time_zone'], settings.TIME_ZONE) self.assertEqual(item_rsp['capabilities'], get_capabilities())
def get(self, request, *args, **kwargs): """Returns the information on the Review Board server.""" site = Site.objects.get_current() siteconfig = SiteConfiguration.objects.get_current() url = '%s://%s%s' % (siteconfig.get('site_domain_method'), site.domain, local_site_reverse('root', request=request)) return 200, { self.item_result_key: { 'product': { 'name': 'Review Board', 'version': get_version_string(), 'package_version': get_package_version(), 'is_release': is_release(), }, 'site': { 'url': url, 'administrators': [{ 'name': name, 'email': email } for name, email in settings.ADMINS], 'time_zone': settings.TIME_ZONE, }, 'capabilities': { 'diffs': { 'base_commit_ids': True, 'moved_files': True, }, 'scmtools': { 'perforce': { 'moved_files': True, }, }, }, }, }
def compare_item(self, item_rsp, obj): self.assertIn('product', item_rsp) self.assertIn('site', item_rsp) self.assertIn('capabilities', item_rsp) product_rsp = item_rsp['product'] self.assertEqual(product_rsp['name'], 'Review Board') self.assertEqual(product_rsp['version'], get_version_string()) self.assertEqual(product_rsp['package_version'], get_package_version()) self.assertEqual(product_rsp['is_release'], is_release()) site_rsp = item_rsp['site'] self.assertTrue(site_rsp['url'].startswith(get_server_url())) self.assertEqual(site_rsp['administrators'], [ { 'name': name, 'email': email, } for name, email in settings.ADMINS ]) self.assertEqual(site_rsp['time_zone'], settings.TIME_ZONE) self.assertEqual(item_rsp['capabilities'], get_capabilities())
def finalize_options(self): # By the time finalize_options is called, install.install_lib is # set to the fixed directory, so we set the installdir to install_lib. # The # install_data class uses ('install_data', 'install_dir') instead. self.set_undefined_options('install', ('install_lib', 'install_dir')) install_data.finalize_options(self) if sys.platform == "darwin": cmdclasses = {'install_data': osx_install_data} else: cmdclasses = {'install_data': install_data} PACKAGE_NAME = 'ReviewBoard' if is_release(): download_url = 'http://downloads.reviewboard.org/releases/%s/%s.%s/' % \ (PACKAGE_NAME, VERSION[0], VERSION[1]) else: download_url = 'http://downloads.reviewboard.org/nightlies/' # Build the reviewboard package. setup(name=PACKAGE_NAME, version=get_package_version(), license="MIT", description="Review Board, a web-based code review tool", url="http://www.reviewboard.org/", download_url=download_url, author="The Review Board Project", author_email="*****@*****.**", maintainer="Christian Hammond",
#latex_appendices = [] # If false, no module index is generated. #latex_use_modindex = True latex_show_urls = 'inline' latex_show_pagerefs = True # Determine the branch or tag used for code references. rb_version = reviewboard.VERSION if rb_version[3] == 'final' or rb_version[5] > 0: git_branch = 'release-%s.%s' % (rb_version[0], rb_version[1]) if reviewboard.is_release(): if rb_version[2]: git_branch += '.%s' % rb_version[2] if rb_version[3]: git_branch += '.%s' % rb_version[3] if version[4] != 'final': git_branch += rb_version[4] if rb_version[5]: git_branch += '%d' % rb_version[5] else: git_branch += '.x' else: git_branch = 'master'
# Documents to append as an appendix to all manuals. #latex_appendices = [] # If false, no module index is generated. #latex_use_modindex = True latex_show_urls = True latex_show_pagerefs = True # Determine the branch or tag used for code references. rb_version = reviewboard.VERSION if rb_version[4] == 'final' or rb_version[4] > 0: if reviewboard.is_release(): git_branch = 'release-%s.%s.%s' % rb_version[:3] else: git_branch = 'release-%s.%s.x' % rb_version[:2] else: git_branch = 'master' # Check whether reviewboard.org intersphinx lookups should use the local # server. if os.getenv('DOCS_USE_LOCAL_RBWEBSITE') == '1': rbwebsite_url = 'http://localhost:8081' else: rbwebsite_url = 'https://www.reviewboard.org'
latex_show_urls = True latex_show_pagerefs = True # Determine the branch or tag used for code references. rb_version = reviewboard.VERSION if rb_version[3] == 'final' or rb_version[5] > 0: git_branch = 'release-%s.%s' % (rb_version[0], rb_version[1]) if rb_version[2]: git_branch += '.%s' % rb_version[2] if rb_version[3]: git_branch += '.%s' % rb_version[3] if reviewboard.is_release() and version[3] != 'final': git_branch += rb_version[4] if rb_version[5]: git_branch += '%d' % rb_version[5] else: git_branch += '.x' else: git_branch = 'master' # Check whether reviewboard.org intersphinx lookups should use the local # server. if os.getenv('DOCS_USE_LOCAL_RBWEBSITE') == '1': rbwebsite_url = 'http://localhost:8081' else: rbwebsite_url = 'https://www.reviewboard.org'
dest='tag_major', help='disable tagging the image with the "X.Y" major version tag') argparser.add_argument( '--upload', action='store_true', help='upload the image after build') options = argparser.parse_args() package_version = get_package_version() major_version = '%s.%s' % VERSION[:2] image_version = package_version # If this is a development release, check if a built package has been # placed in the packages/ directory. if not is_release(): package_version = '%s.dev0' % package_version package_path = os.path.join(docker_dir, 'packages', 'ReviewBoard-%s-py2.py3-none-any.whl' % package_version) if not os.path.exists(package_path): sys.stderr.write( 'To build a Docker image for an in-development ' 'version of Review Board, you will\n' 'need to build a development and place it at:\n' '\n' '%s\n' % package_path) sys.exit(1)
# By the time finalize_options is called, install.install_lib is # set to the fixed directory, so we set the installdir to install_lib. # The # install_data class uses ('install_data', 'install_dir') instead. self.set_undefined_options("install", ("install_lib", "install_dir")) install_data.finalize_options(self) if sys.platform == "darwin": cmdclasses = {"install_data": osx_install_data} else: cmdclasses = {"install_data": install_data} PACKAGE_NAME = "ReviewBoard" if is_release(): download_url = "http://downloads.reviewboard.org/releases/%s/%s.%s/" % (PACKAGE_NAME, VERSION[0], VERSION[1]) else: download_url = "http://downloads.reviewboard.org/nightlies/" # Build the reviewboard package. setup( name=PACKAGE_NAME, version=get_package_version(), license="MIT", description="Review Board, a web-based code review tool", url="http://www.reviewboard.org/", download_url=download_url, author="The Review Board Project", author_email="*****@*****.**",
latex_show_pagerefs = True # Determine the branch or tag used for code references. rb_version = reviewboard.VERSION if rb_version[3] == 'final' or rb_version[5] > 0: git_branch = 'release-%s.%s' % (rb_version[0], rb_version[1]) if rb_version[2]: git_branch += '.%s' % rb_version[2] if rb_version[3]: git_branch += '.%s' % rb_version[3] if reviewboard.is_release() and version[3] != 'final': git_branch += rb_version[4] if rb_version[5]: git_branch += '%d' % rb_version[5] else: git_branch += '.x' else: git_branch = 'master' # Check whether reviewboard.org intersphinx lookups should use the local # server. if os.getenv('DOCS_USE_LOCAL_RBWEBSITE') == '1': rbwebsite_url = 'http://localhost:8081' else: