Djblets 1.0 RC 1 Release Notes¶
Release date: November 6, 2017
This release contains all bug fixes and features found in Djblets version 0.9.9.
To install this release, run the following:
$ sudo pip install \ -f https://downloads.reviewboard.org/releases/Djblets/1.0/ \ --pre -U Djblets
$ sudo easy_install \ -f https://downloads.reviewboard.org/releases/Djblets/1.0/ \ -U Djblets
We do not recommend upgrading a production server with this version of Djblets. This version is still in development, and is not guaranteed to have API stability.
uglify-jspackage from NPM is now used instead of the legacy
Removed dead space causing clicking issues in the datagrid’s Edit Columns menu.
Fixed a deadlock bug in
RelationCounterFieldin 0.10 Beta 2.
Fixed deserializing form data in
Added support for configuring certain extension IDs to auto-enable when newly scanned by the extension manager.
settings.EXTENSIONS_ENABLED_BY_DEFAULTcan be set to a list of extension IDs that should be auto-enabled when first found by the extension manager.
Disabling these extensions will not cause them to re-enable automatically in future scans.
Added a new
BaseRegistryMultiItemHookfor hooks that need to register multiple items at once in a registry.
This is an alias for
Integration.integration_id, allowing code (such as hooks) to more easily work with either an extension or an integration.
The list of integrations are now sorted in the administration UI.
JSON Merge Patches are used to apply a set of changes to a JSON-compatible data structure. They allow for adding new values (which may be complex JSON documents) to dictionaries, removing keys from dictionaries, or replacing existing values of any type.
The patching operation also allows for specifying a function to govern write access to keys, preventing calls from overwriting or deleting parts of a JSON document.
This can be used by API resources that need to allow callers to modify complex JSON documents.
A JSON Patch is another method of applying a set of changes to a JSON document. Unlike JSON Merge Patches, a JSON patch is specified as a list of operations to perform on a target JSON document, all of which must succeed for the patch to be completed. These patches allow for adding data to dictionaries or within arrays, removing data from dictionaries or arrays, replacing values, copying or moving data, and testing/sanity-checking certain values before allowing a patch to complete.
This also allows for specifying separate functions that govern read or write access to keys, helping protect data from being altered or used as a source for a copy/move/test.
This is also intended for use in API resources that want to provide more fine-grained modifications to JSON documents.
JSON Pointers are a way of referencing data within a JSON document, navigating dictionaries and arrays, based on a path.
json_resolve_pointer()takes a fully-resolvable JSON Pointer path and returns the value at that location, raising an exception if the path is not valid.
json_get_pointer_info()resolves as much of a JSON Pointer path as possible, returning information on what it was able to resolve, what was left, and what data was found.
Calculation of OAuth2 scopes from API resources is now performed on demand instead of at application launch time.
Added new signals for notifying on API token creation and updating.
This flag does not directly affect token generation, but rather is passed to the signals so that consuming applications can handle the creation of manually-generated tokens separately from auto-generated tokens (for instance, sending an e-mail to a user only if manually-generated).
Djblets.enableRetinaImages()function for enabling
<img srcset="...">support on older browsers.
srcsetsupport can call this on a container after adding any new images (or after loading the whole page) to process any images with
srcseton browsers that don’t otherwise support it.
For browsers that do natively support
srcset, this function won’t do anything at all, and won’t impact performance.
Removed the old
This has been replaced with
Added new mixins for high-DPI image support in stylesheets.
static/djblets/css/mixins/retina.lesshas been added that supports high-DPI images (at 2x and greater DPI ratios). It accepts a
@max-ratioparameter that specifies the highest DPI ratio that there are images for, and a
@has-svgboolean parameter that specifies whether a
.svgfile is available for higher DPIs.
static/djblets/css/retina.lessis still available for backwards-compatibility.