Giter VIP home page Giter VIP logo

latticework / jali Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 580 KB

Semantics-driven serverless microservice DevOps framework and infrastructure

Home Page: http://jali-ms.io/

License: MIT License

Ruby 1.40% JavaScript 2.48% HTML 0.26% TypeScript 95.86%
berkshelf chef cloud-development ecmascript jali latticework microservice nodejs-development serverless typescript vagrant virtual-box zenhub

jali's People

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

surgeforward

jali's Issues

[JS] Iterator Functions ▢️️ 𝍖 βœ…

Enhancement feat

  • Completed by #7

Definition

In order to use any iterator as easily as an array in JavaScript,

As a Developer,

I want to use functions for any iterable that correspond to those of Array

Features

  • Iterable functions
    • asArray
    • asIterable
    • concat
    • every
    • filter
    • find
    • includes
    • map
    • reduce
    • slice
    • some
    • toMap
  • util/iterables module

Tasks

  • Create error types.
  • Create unit tests.
  • Create examples.
  • Create manual documentation.

Acceptance Criteria

  • Unit tests with maximal code coverage
  • Complete documentation
    • example code
    • reference documentation
      • esdoc code comments
      • esdoc manual

Incorrect output for example 🐞 πŸ”§ 🎁

Bug fix

Details

Version Severity
v0.1.0 5 Documentation Error

Description

Example jali_ms_util_errors item β‘€ is not correct.

Steps to Reproduce

  1. Execute npm docs
  2. Open dist/docs/index.html
  3. Navigate to **Manual | Example jali_ms_util | jali_ms_util_errors

Defective Behavior

Note that error message for Example (5) is `Error: Error in argument 'notWhitespaceString'

image

Desired Behavior

Error should be Error: Argument must be between 10 and 19. Yours is '20'

An in-range update of tslint is breaking the build 🚨

Version 4.5.1 of tslint just got published.

Branch Build failing 🚨
Dependency tslint
Current Version 4.5.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As tslint is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • βœ… bitHound - Dependencies No failing dependencies. Details

  • βœ… bitHound - Code No failing files. Details

  • ❌ semaphoreci The build failed on Semaphore. Details

Release Notes v4.5.1
  • [enhancement] Updated recommended rules to include ban-types and no-duplicate-super (#2271)
  • [bugfix] object-literal-key-quotes handle negative number property name (#2273)
Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

[JS] Build Process ▢️️ πŸ”¨ βœ…

Enhancement chore

  • Completed by #7
  • Completed by #88

Definition

In order to contribute to jali,
As a Jali Contributor,
I want to build a single NPM package.

Features

  • tsc support in build script.
  • Babel to build script.
  • Webpack 2 to build script.
  • Typings support.
  • TAP-based test code.
  • code coverage.
  • API documentation.
  • Package published to NPM.

Acceptance Criteria

  • Demonstrate the ability for Jali Contributor to use npm run build to build a single NPM package.
  • Packages must be a scoped to the NPM jali-ms organization.
  • The build process must use Webpack 2, Typescript, Babel and follow ng2 style for scoped modules.
  • Demonstrate usage of module from NPM.

Project Shell ▢️️ πŸ”¨ βœ…

Enhancement chore

  • Completed by #3
  • Replaced by #122

Definition

In order to quickly get started developing as a Jali Contributor I want to clone and provision a Jali project development environment.

Features

  • Vagrantfile
    • Provides the jali Ubuntu 14.04 graphical guest operating system using the VirtualBox provider.
    • Provisions the jali box using the chef_zero provisioner
  • main cookbook in site-cookbooks that uses Berksfile to provision the jali box
    • The following components are provisioned.
      • Docker Service
      • The Hack font
      • git
      • NodeJS
      • Sphinx
      • VSCode
      • The latticework/jali GitHub repo

Acceptance Criteria

  • Cloning and provisioning jali produces a fully initialized node project in a Vagrant graphical Unbuntu environment on Windows 10.

[JS] Invalid State Error ▢️️ 𝍖 βœ…

Enhancement feat

  • Completed by #7

Definition

In order to fail-fast irrecoverable errors,

As a developer,

I want to throw an error that indicates the system is in an invalid state to continue.

Features

  • InvalidStateError type. Subclass of Error.
  • util/errors module

Tasks

  • Create error types.
  • Create unit tests.
  • Create examples.
  • Create manual documentation.

Acceptance Criteria

  • Unit tests with maximal code coverage
  • Complete documentation
    • example code
    • reference documentation
      • esdoc code comments
      • esdoc manual

An in-range update of eslint is breaking the build 🚨

Version 3.16.1 of eslint just got published.

Branch Build failing 🚨
Dependency eslint
Current Version 3.16.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As eslint is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ


Status Details
  • βœ… dependency-ci Dependencies checked Details

  • βœ… bitHound - Dependencies No failing dependencies. Details

  • βœ… bitHound - Code No failing files. Details

  • ❌ semaphoreci The build failed on Semaphore. Details

Release Notes v3.16.1
  • ff8a80c Fix: duplicated autofix output for inverted fix ranges (fixes #8116) (#8117) (Teddy Katz)
  • a421897 Docs: fix typo in arrow-parens.md (#8132) (Will Chen)
  • 22d7fbf Chore: fix invalid redeclared variables in tests (#8130) (Teddy Katz)
  • 8d95598 Chore: fix output assertion typos in rule tests (#8129) (Teddy Katz)
  • 9fa2559 Docs: Add missing quotes in key-spacing rule (#8121) (Glenn Reyes)
  • f3a6ced Build: package.json update for eslint-config-eslint release (ESLint Jenkins)
Commits

The new version differs by 8 commits .

  • 589ab67 3.16.1
  • 4fec5b2 Build: package.json and changelog update for 3.16.1
  • ff8a80c Fix: duplicated autofix output for inverted fix ranges (fixes #8116) (#8117)
  • a421897 Docs: fix typo in arrow-parens.md (#8132)
  • 22d7fbf Chore: fix invalid redeclared variables in tests (#8130)
  • 8d95598 Chore: fix output assertion typos in rule tests (#8129)
  • 9fa2559 Docs: Add missing quotes in key-spacing rule (#8121)
  • f3a6ced Build: package.json update for eslint-config-eslint release

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Bad README Links 🐞 πŸ”¨ βœ…

Bug chore

Completed by #97

Details

Version Severity
v0.0.1 5 Documentation Error

Description

Several links are not working from the /README.md page.

Steps to Reproduce

  1. Click on some links

Defective Behavior

Note the ones that do not go to their desired destination.

Desired Behavior

  • Links work normally.

An in-range update of nyc is breaking the build 🚨

Version 10.3.2 of nyc just got published.

Branch Build failing 🚨
Dependency nyc
Current Version 10.3.1
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As nyc is β€œonly” a devDependency of this project it might not break production or downstream projects, but β€œonly” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this πŸ’ͺ

Status Details
  • βœ… dependency-ci Dependencies checked Details,- βœ… semaphoreci The build passed on Semaphore. Details,- ❌ bitHound - Dependencies 1 failing dependency. Details,- βœ… bitHound - Code No failing files. Details

Commits

The new version differs by 2 commits0.

  • e062a86 chore(release): 10.3.2
  • 213206f fix: we should not create a cache folder if cache is false (#567)

false

See the full diff

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

[JS] Support ES2015+ features ▢️️ πŸ”¨ ☰

Enhancement feat

Definition

In order to JavaScript develop software forward-compatibly,

As a developer,

I want to develop from the list specified in
ECMASCRIPT-PROPOSALS.md,

Whereas currently compatibility is not tested.

Tasks

  • Add tests for EcmaScript proposals.
  • Make changes (polyfills, TS -lib..., Babel plugins, etc) to reasonably support proposals.
  • Rationalize ECMASCRIPT-PROPOSALS.md to conform to reality.
  • Enable ESNext features in esdoc config.

Acceptance Criteria

  • As many of ES2015, ES2016. and ES2017 proposals are supported as possible.
  • Stage 2 and Stage 3 proposals are supported as reasonable.
  • Class and Property decorators are supported.

Eslintrc Error 🐞 πŸ”§ ☰

Bug fix

Details

Version Severity
v0.0.1 3 Incorrect Behavior

Description

.eslintrc has configuration error that shows up in Code Climate

Steps to Reproduce

  1. Click the link to the Code Climate run above.

Defective Behavior

Error with message appears:

Error: /code/.eslintrc.json:
	Configuration for rule "spaced-comment" is invalid:
	Value "error" is the wrong type.

Desired Behavior

Code Climate runs without error.

Project Documentation ▢️️ πŸ”¨ 🚢

Enhancement devenv

Definition

In order to manage the Jali project,

As a Developer,

I want to maintain a full set of project documentation.

Features

  • .github/ISSUE_TEMPLATE.md
  • CHANGELOG.md
  • CONTRIBUTING.md
  • LICENCE
  • README.md
  • project/CHANGELOG-TEMPLATE.md
  • project/CREDITS.md
  • project/DESIGN.md
  • project/ISSUE-TEMPLATE-INSTRUCTIONS.md
  • project/PROCEDURES.md
  • project/QUERIES.md
  • project/ROADMAP.md

New Features [feat]

  • CHANGELOG.md
  • project/CHANGELOG-TEMPLATE.md
  • project/PROCEDURES.md
  • project/QUERIES.md
  • project/ROADMAP.md

Updated Features [change]

  • Changed supporting documents
    • Moved documents
      • to project/CREDITS.md
      • to project/DESIGN.md
      • to project/ISSUE-TEMPLATE-INSTRUCTIONS.md

Tasks

  • Complete standard documents
  • Complete supporting documents
  • Update EcmaScript status TS 2018-05 (#153 )
  • Update EcmaScript status to TC 2018-07 / TS 3.0 (#189)

Acceptance Criteria

  • Reviewed documents for completeness.

Missing util TypeGuard esdoc comments 🐞 πŸ”§ 🎁

Bug fix

Details

Version Severity
0.1.0-prealpha.1 5 Documentation Error

Description

Missing esdoc comments for type-guards.ts

Steps to Reproduce

  1. Open type-guards.ts (link above).
  2. Notice missing esdoc comments.

Defective Behavior

  • Missing documentation

Acceptance criteria.

  • Adequate documentation on type-guards.ts
  • Successful esdoc build
  • Overview updated with function summary.
  • Documentation site is correct.

[JS] @jali-ms/util Type Guards ▢️️ 𝍖 βœ…

Enhancement feat

  • Completed by #7

Definition

In order to facilitate working with union types in TypeScript,

As a developer,

I want to use User-Defined Type Guards for common JavaScript types and idioms.

Features

  • Type guards
    • isError
    • makeIsIterable: Generates deep-checking type guard for iterable of given type
    • isIterable
  • util/type-guards module

Tasks

  • Create type guards
  • Create unit tests.
  • Create examples.
  • Create manual documentation.

Acceptance Criteria

  • Unit tests with maximal code coverage
  • Complete documentation
    • example code
    • reference documentation
      • esdoc code comments
      • esdoc manual

Canary Builds ▢️️ πŸ”¨ βœ…

Enhancement chore

Definition

In order to ensure support of the latest dependency versions,

As a developer,

I want to have the DevOps system automatically test the latest versions of dependencies.

Features

  • Greenkeeper GitHub integration.

Tasks

Acceptance Criteria

  • Greenkeeper automatically branches main, updates to latest dependency version, builds system, and creates pull request if build/test is successful.

Project Roadmap

Jali Project Roadmap

v0.1.0 (2017-02)

  • ✨ New Features [feat]
    • πŸ”¨ [devenv] (#2) Project Documentation (#120)
      • CHANGELOG.md
      • project/CHANGELOG-TEMPLATE.md
      • project/PROCEDURES.md
      • project/QUERIES.md
  • πŸ”§ Bug Fixes [fix]
    • 𝍖 [jali-util] (#82) Fix Known Test Failures (#103)
    • πŸ“„ [doc] (#81) Bad scope in doc links (#92)
    • πŸ“„ [doc] (#81) Manual page garbled for esdoc 0.5.x (#80)
    • πŸ”¨ [devenv] (#2) Mute Status Check Issue (#110)
    • πŸ”¨ [devenv] (#2) Fix bitHound Issues (#105)
    • πŸ”¨ [devenv] (#2) Bad Contributing Document Formatting (#96)
    • πŸ”¨ [devenv] (#2) Bad README Links (#91)
    • πŸ”¨ [devenv] (#2) Enhancement link broken (#85)

v0.0.1 (2017-01)

  • ✨ [feat] New Features
    • 𝍖 [jali-util] (#82) [JS] Argument validation functions (#90)
    • 𝍖 [jali-util] (#82) [JS] Iterator Functions (#87)
    • 𝍖 [jali-util] (#82) [JS] @jali-ms/util Type Guards (#86)
    • 𝍖 [jali-util] (#82) [JS] Invalid State Error (#84)
    • 𝍖 [jali-util] (#82) [JS] Argument Errors (#83)
    • πŸ”¨ [devenv] (#2) Project Shell (#1, #122)
    • πŸ”¨ [devenv] (#2) Project Documentation (#5, #119)
    • πŸ”¨ [devenv] (#2) Canary Builds (#113)
    • πŸ”¨ [devenv] (#2) [JS] Build Process (#4)

Add OpenHub Support ▢️️ πŸ”¨ 🎁

Enhancement devenv

Definition

In order to visualize project code analytics,

As a developer,

I want to provide a Jali branch that contains source code that OpenHub can analyze.

Tasks

  • Create open-hub branch.
  • Configure the OpenHub Jali project to reference the OpenHub branch.
  • Monitor OpenHub project to ensure that the project is re-analyzed.

Acceptance Criteria

  • The OpenHub site shows the correct number of lines of code.

Discussion

OpenHub does not recognize TypeScript source code. Therefore to provide OpenHub source code that
it can process, A branch should be created that preserves the JavaScript generated by the build process.

A future version if this Enhancement can require automated updates to the branch.

Project Shell ▢️️ πŸ”¨ βœ…

Enhancement devenv

  • Replaces #1
  • Completed by #7

Definition

In order to quickly get started developing as a Jali Contributor I want to clone and provision a Jali project development environment.

Features

  • Vagrantfile
    • Provides the jali Ubuntu 16.04 graphical guest operating system using the VirtualBox provider.
    • Provisions the jali box using the chef_zero provisioner
  • main cookbook in site-cookbooks that uses Berksfile to provision the jali box
    • The following components are provisioned.
      • Docker Service
      • The Hack font
      • git
      • NodeJS
      • Sphinx
      • VSCode
      • The latticework/jali GitHub repo

Changed Features [chore]

  • Provides Ubuntu 16.04 instead of 14.04

Tasks

  • Update Vagrantfile to Provide Ubuntu 16.04
  • Test provisioned configurations to ensure working result

Acceptance Criteria

  • Cloning and provisioning jali produces a fully initialized node project in a Vagrant graphical Unbuntu environment on Windows 10.

[JS] Argument validation functions ▢️️ 𝍖 βœ…

Enhancement feat

  • Completed by #7

Definition

In order to fail-fast argument errors,

As a Developer,

I want to utilize standard argument validation functions that throw consistent errors.

Features

  • validation functions
    • verifyArgument
    • verifyArray
    • verifyBoolean
    • verifyDefined
    • verifyFunction
    • verifyIterable
    • verifyNonEmpty
    • verifyNonZero
    • verifyNotNull
    • verifyNotWhitespace
    • verifyNumber
    • verifyObject
    • verifyString
    • verifyTrue
    • verifyTruthy
  • util/errors module

Tasks

  • Create error types.
  • Create unit tests.
  • Create examples.
  • Create manual documentation.

Acceptance Criteria

  • Unit tests with maximal code coverage
  • Complete documentation
    • example code
    • reference documentation
      • esdoc code comments
      • esdoc manual

Enhancement link broken 🐞 πŸ”¨ βœ…

Bug chore

Completed by #97

Details

Version Severity
0.0.1 5 Documentation Error

Description

In ISSUE-TEMPLATE-INSTRUCTIONS.md, links to the Enhancement form don't work

Steps to Reproduce

  1. Navigate to ISSUE-TEMPLATE-INSTRUCTIONS.md.
  2. Click on the two links to the enhancement form.

Defective Behavior

Links don't navigate to the form.

Desired Behavior

Links should navigate to the form.

Manual page garbled for esdoc 0.5.x 🐞 πŸ”§ βœ…

Bug fix

Completed by #101

Details

Version Severity
v0.0.1-prealpha 4 Incorrect Display

Description

When building with esdoc v0.5.2 or esdoc v0.5.1, Top navbar missing and all top level tree nodes missing.

Steps to reproduce

  1. First, set esdoc version to 0.5.2 by installing that version.
  2. Next, run npm run docs and navigate to ./dist/docs/manual/index.html

Defective behavior

image

Desired behavior

Expected view as build by esdoc v0.4.8:

image

Fix Known Test Failures 🐞 πŸ”§ βœ…

Bug fix

Completed by #104

Details

Version Severity
v0.0.1 3 Incorrect Behavior

Description

7 unit tests are marked as known failures. The should be fixed

Bug Fixes [fix]

  • @jali-ms/util/src/iterables_reduce
    • initialValue can now be null
  • @jali-ms/util/src/iterables_slice
    • begin and end can now be null
  • @jali-ms/util/src/iterables_slice
    • now works if begin or end is negative

Steps to Reproduce

  1. Run: npm test

Defective Behavior

Out put shows 7 known failures

Desired Behavior

All tests pass as designed.

[JS] Argument Errors ▢️️ 𝍖 βœ…

Enhancement feat

  • Completed by #7

Definition

In order to consistently handle function argument errors,

As a developer,

I want to throw a specific error type for all common argument errors.

Features

  • Error types
    • Argument error are subclasses of more general error types.
    • ArgumentError. Subclass of Error
    • ArgumentFalsyError. Subclass of ArgumentError
    • ArgumentEmptyStringError. Subclass of ArgumentFalsyError
    • ArgumentFalseError. Subclass of ArgumentFalsyError
    • ArgumentNanError. Subclass of ArgumentFalsyError
    • ArgumentNullError. Subclass of ArgumentFalsyError
    • ArgumentUndefinedError. Subclass of ArgumentFalsyError
    • ArgumentUndefinedError. Subclass of ArgumentFalsyError
    • ArgumentZeroError. Subclass of ArgumentFalsyError
    • ArgumentWhitespaceStringError. Subclass of ArgumentError
    • ArgumentTypeError. Subclass of ArgumentError
  • util/errors module

Tasks

  • Create error types.
  • Create unit tests.
  • Create examples.
  • Create manual documentation.

Acceptance Criteria

  • Unit tests with maximal code coverage
  • Complete documentation
    • example code
    • reference documentation
      • esdoc code comments
      • esdoc manual

Project Documentation ️️️️▢️️ πŸ”¨ βœ…

Enhancement devenv

  • Replaces #5
  • Completed by #7
  • Completed by #88

Definition

In order to manage the Jali project,

As a Developer,

I want to maintain a full set of project documentation.

Features

  • .github/ISSUE_TEMPLATE.md
  • CONTRIBUTING.md
  • CREDITS.md
  • DESIGN.md
  • ISSUE-TEMPLATE-INSTRUCTIONS.md
  • LICENCE
  • README.md

New Features

  • CONTRIBUTING.md
  • CREDITS.md
  • DESIGN.md
  • ISSUE-TEMPLATE-INSTRUCTIONS.md
  • LICENCE
  • README.md

Tasks

  • Complete standard documents
  • Complete supporting documents

Acceptance Criteria

  • Documents reviewed for completeness

Fix bitHound Issues 🐞 πŸ”¨ βœ…

Bug chore

Completed by #106

Details

Version Severity
v0.0.1 5 Documentation Error

Description

Fix various bitHound issues.

Steps to Reproduce

  1. Merge to master

Defective Behavior

Desired Behavior

All issues resolved.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.