Page tree
Skip to end of metadata
Go to start of metadata


Angular meeting



  •  Backchannel on #angular-ui in Slack. Join us at
  • Testing works and has been merged
    • Tests have been added for the reducers in the code
  • The way actions work has changed to make better use of typescript
    • They're now classes, with a type property for their key and the constructor to create them. (example)
    • That way we can use type checking to ensure the reducer only works with the correct actions. (example)
  • npm-shrinkwrap was added
    • adds npm-shrinkwrap.json to the project: a file that tracks all dependency versions
    • every new install will use those exact versions
    • From now on, if you install a new package
      • using "npm install some-package --save", you don't have to do anything, shrinkwrap will run automatically
      • by modifying package.json manually, you'll have to run npm run rewrap to update npm-shrinkwrap.json
  • Configuration. What do we want to use:
    • Typescript or Javascript
    • JSON (no comments allowed)
    • YAML (but not frequently used with JS projects?)
    • Maybe we go with Javascript for now (as widely understood & simple). We could always translate something else to JS later
  • PR for a PageNotFound component:
  • PR for a Spinner (loading) component:
    • adds SpinnerService with an activate and deactivate method
    • If you create a spinner that has to wait on an async call (a response from REST), call activate() before the call, and deactivate() when the call completes
  • PR for a Serializer (translate from REST to models & back):
    • There's an interface, and an implementation for JSON API
    • If the rest team doesn't go with JSON API, the changes should be limited to that class
  • Style guide now has guidelines for separate modules!#04-09
    • create a separate module for each feature
    • use a SharedModule for pipes and directives that are shared across the app
    • use a CoreModule for singletons that are needed across the app
      • Note that not every service needs to be in this module, if it's only need across a subset of the app, move it up to the first module that encompasses them all, not further
    • Art will create an issue to refactor our code to match this structure
  • Need more help reviewing code
    • Tim can create a small Review team in GitHub so we can @ mention them in tickets
  • Slack #angular-ui channel now gets GitHub ticket / PR updates
  • Question on Debugging code? What do we use?

REST meeting




Most of the discussion has been around the document available here. We ask all the interested developers to add their comments and thoughts:


  • Backchannel on #rest-api on Slack
  • Need priority list. What is highest priority for DSpace 7
  • Andrea: My priority is first 3 bullets, but these may even be achieved on current REST platform
    • all the functionalities required by the AngularUI are in place
    • maintain the REST API code is easy and enjoyable by… DSpace-JAVA developers or JAVA developers?
    • REST API are well tested and documented
  • HAL vs JSON-API format (highest priority question)
    • Spring REST uses HAL more frequently, lots of tutorials
    • JSON-API is broader standard, but is it too complex for our needs? 
    • We have mockups of JSON-API already that angular team is working from (Art)
    • Art: But advantage is you don't need to parse it yourself. Client builds automatically
    • Andrea thinks you'd get similar benefits from HAL (e.g. HAL browser)
    • Art seems to favor JSON-API, while Andrea seems to favor HAL
    • We need to work from the REST API Spec, but we need a decision on format. Have UI developers work against format mockups?
  • ACTION (Art, Andrea & James): Need a HAL mockup for testing Angular2 against
    • Art, Andrea & James will move this forward
    • Start in the #rest-api channel over the next week. Others interested, please also take part
    • The big question here is does HAL give us what we need/want for Angular2? If so, we should go with it, as it seems to have a decent following in Spring community
  • Others can start to look at the Mockups for samples of the formats (to give feedback on them). Keep in mind, even within HAL and JSON-API, we may be able to configure formats to return data in different ways.
  • ACTION (Andrea/4Science): Spring Data Rest protoype updates to add a DTO layer
  • Questions around Use of Solr for REST API

    • Different endpoints for browse/search that use Solr to find individual objects

    • But at a single object level, the endpoint would just use the Database to load properties, etc.

    • Current Jersey API is "flawed" in that it only uses Database (even for browse).

  • Next meeting in Two weeks (Feb 9)

    • In meantime, discussions on Slack

    • Stay on Google Hangouts for now (until we hit 15 people limit)

    • Invite to go to dspace-devel list & on Slack

  • No labels