ivy

package module
v0.0.0-...-8029388 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2018 License: MIT Imports: 12 Imported by: 0

README

Build Status

ivy-status-api

https://ivy-status-api.appspot.com/v1/status

Introduction

Ivy is the new Angular renderer focused on speed and size reduction. It is published as an experimental API as of Angular 6. As of April 30th 2018, Ivy is under active development by the Angular team.
Ivy status is regularly updated by the Angular team in a dedicated STATUS.md

The goal of this project is to parse this file and return the status as a JSON API.

The project

An API written in go deployed using Google Cloud Platform. It can be accessed through the URL: https://ivy-status-api.appspot.com/v1/status

Response structure
{
    "API": {
        "version": 1
    },
    "errors": null,
    "data": {
        "featureGroup": {
            "data": {
                "name": "root",
                "features": []
            },
            "featureGroups":[
                
            ]
        },
        "lastUpdateDate": "2018-04-29T12:21:22"
    }
}
// FeatureGroup can hold child feature groups. It is in reality a tree. e.g.
//                 [Implementation Status]
//                          / \
//                         /   \
//                        /     \
//                       /       \
//     [`@angular/compiler-cli`  [`@angular/compiler` changes]
//                changes]
//                  /
//                 /
//   [`ngtsc` TSC compiler transformer]

In the current documentation status, more information can be found in the models defined in the source code

Every feature group consists of one or several features. In the following example, the Decorators feature group consists of three features whose status is granular according to Runtime, Spec, Compiler and Back Patch

Annotation defineXXX() Run time Spec Compiler Back Patch
@Component defineComponent()
@Directive defineDirective()
@Directive defineAbstractDirective()

The first feature in this example will be returned by the API in this form


                  {
                    "name": "`@Component`",
                    "status": {
                      "completed": false,
                      "categories": [
                        "Annotation",
                        "`defineXXX()`",
                        "Run time",
                        "Spec",
                        "Compiler",
                        "Back Patch"
                      ],
                      "granularStatuses": [
                        {
                          "category": "`defineXXX()`",
                          "code": "IMPLEMENTED",
                          "description": "`defineComponent()`"
                        },
                        {
                          "category": "Run time",
                          "code": "IMPLEMENTED",
                          "description": "Run time"
                        },
                        {
                          "category": "Spec",
                          "code": "IMPLEMENTED",
                          "description": "Spec"
                        },
                        {
                          "category": "Compiler",
                          "code": "IMPLEMENTED",
                          "description": "Compiler"
                        },
                        {
                          "category": "Back Patch",
                          "code": "NOT_IMPLEMENTED",
                          "description": "Back Patch"
                        }
                      ]
                    },
                    "childFeatures": null}
                 

Contribution

Please feel free to open an issue.
Pull requests with the fix and a test are welcome.
To launch tests: scripts.test.sh

License

MIT licensed.
Copyright (c) 2018 Oussama Ben Brahim

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
utils

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL