Skip to content

sourcecred v0.9.2

Compare
Choose a tag to compare
@blueridger blueridger released this 26 Aug 22:39
· 110 commits to main since this release
77e6898

Summary

⚠️ ⚠️ Warning⚠️ ⚠️

This release has bugs in the build. To use the awesome features from this release, please upgrade to 0.9.3.


Support for adding text descriptors to certain Discord and Discourse config attributes

Now, you can add text descriptors to certain attributes by adding // and any description you want afterwards at the end of the attribute key. Example:
"477551557723029514//general channel": 2,
The attributes that support this are:

  • Discourse category ids
  • Discord role ids
  • Discord channel ids

ExternalPlugin: flexible/powerful 3rd-party plugins

The ExternalPlugin is used for loading a graph and optionally a declaration and
identityProposals from either:

  1. the plugin config folder on disk
    • To use this method, simply place the files into the
      config/plugins/external/X folder.
  2. a base url that statically serves the files
    • To use this method, simply serve the files statically with cross-origin
      enabled, and add a config.json file in the
      instance's config/plugins/external/X folder with form:
      { "graphUrl": "https://www.myhost.com/path/to/graph", "declarationUrl": "https://www.myhost.com/path/to/declaration", "identityProposalsUrl": "https://www.myhost.com/path/to/proposals" }

Supported files for either method are:

  1. graph.json/graph (required) - works whether or not it is
    compressed using our library
  2. declaration.json (optional) - if omitted, a default declaration with
    minimal node/edge types is used, but also graphs don't have to adhere to the
    declaration if they don't desire to be configured using our
    Weight Configuration UI.
  3. identityProposals.json (optional) - if omitted, no identities are proposed

The External plugin can be used multiple times, because it simply uses the
PluginId pattern "external/X" where X can be any name an instance admin chooses.

We are working on this tutorial for developers to work with the ExternalPlugin. It should be done by the end of August 2021.
https://observablehq.com/@sourcecred/external-plugin-tutorial

Option to write JSON outputs without compression

If you want to get the non-compressed JSON of your credGraph, credGrainView, or other compressed output files, you can simply run:

yarn sourcecred graph --no-zip
yarn sourcecred credrank --no-zip

Contributions

77e6898 Add --no-zip flag to CLI, deprecate gzip suffix (#3162)
41d6044 Add ConstructorPlugin for ExternalPlugin testing (#3154)
5270b58 CredGrainView: Add advice to common error message (#3164)
14d7d07 Add Cache version suffix in circleCI (#3159)
82378e5 Use combo parser instead of compat for PluginDeclaration (#3153)
4d468ac Bsodenkamp allocation identities refactor (#3115)
c124d7b Revert "UI: Add Filtering to to Ledger View (#3122)" (#3147)
d4df10d Create External Plugin that reads from disk or url (#3114)
ea05c00 Add support for a text descriptor in number strings in config files (#3145)
c347f5a Set up Grain Integration support in Config API (#3079)
56aa079 UI: Add Filtering to to Ledger View (#3122)
3d3eb21 Implement CSV Grain Integration Plugin (#3078)
9f11c25 Update the root clean cmd to remove all node_modules (#3124)
57ecb9c Update Grain Integration to Accept file output (#3077)
1b723b1 UI: Fixed react leak on identities page (#3104)
216e1c7 converted immediate policy to CredGrainView (#3102)