June 2018 (version 1.14.0-beta)
1.14.0 Update
Hello!
We've missed you. While we have been hard at work supporting Vue.js, we inevitably skipped a release on May to provide more rules.
Please kindly go ahead with the highlights for this release.
Release Summary
This version includes a number of updates that we hope you’ve found some of them helpful.
The key highlights are:
- Updating privacy policy - Updates to our Privacy Policy.
- Vue.js support - Now we start to support Vue.js specialized rules!
- New rules - New rules for React propTypes.
Updates to Privacy Policy
Previously we stored your GitHub email, name and account when you signed up via GitHub OAuth. For your better privacy, we changed to store only GitHub email and account so name was completely deleted from our server. As a result, 'Issue History' and email to share were changed to show an account instead of name.
Also as part of our ongoing commitment to transparency, we're updating our privacy policy.
- What information we collect. The updates to our policy describe clearer which personal and non-personal information we collect.
- More information to policy. To make the policy easier to understand and more reliable, we provide information about the person responsible for privacy, archives of our policies, and retention policy in detail.
If you want to read the full policy, check it out here.
The new Privacy Policy will take effect on June 8, 2018. By using our services on or after that date, you'll be agreeing to these updates.
Vue.js Support
We started a basic support for Vue.js since this year. Now we take the first step toward specialized rules for Vue.js.
Hope this helps.
- VUE_BAD_API_RETURN_VALUE - Check for an invalid return value of a function-typed Vue option
- VUE_BAD_ARROW_FUNC - Check for an arrow function with
this
accesses used as a Vue instance option - VUE_BAD_COMPONENT_NAME - Check for an invalid string as a Vue component name
- VUE_BAD_DIRECTIVE_FORMAT - Check for an invalid format of Vue directive
- VUE_BAD_DYNAMIC_COMPONENT - Check for an
is
attribute of of a Vue dynamic component - VUE_DUPLICATE_ATTRIBUTE - Check for duplicate attributes with the same name
- VUE_MISMATCHED_TYPE_OF_ARG - Check for argument types of Vue API
- VUE_MISPLACED_OPTION - Check for Vue options
el
andpropsData
- VUE_OPTION_TYPO - Check for typo in Vue options
New Rules
New rules introduced in this release:
- REACT_MISMATCHED_TYPE_OF_PROP - Check for a prop value which does not match its
propTypes
declaration
Extended Language Support
We have added support for useful language features currently in proposal stages.
You can use those features in your project with Babel 7.0 and now detect code issues with DeepScan. Newly supported features with the corresponding Babel links are as follows:
Miscellaneous
- JSX fragment syntax is now supported
- UNUSED_REQUIRE issues are now detected for
require
usage inside ES6 modules - LoC(Lines of Code) metric now includes code inside the
<template>
of.vue
files .vue
files without<script>
are not excluded because we now detect issues at<template>
Bug Fixes
- Analysis seems to hang although it's finished in Internet Explorer
- A false alarm for MISSING_RETURN_VALUE may occur when an arrow function is used as IIFE
- A false alarm for REACT_USELESS_PROP_TYPES may occur when a component is used with higher-order component
- A false alarm for UNINVOKED_ARRAY_CALLBACK may occur when argument spread is used
Thank You
Thank you to the following folks who help to make DeepScan better:
- @SteveALee: A false alarm for MISSING_RETURN_VALUE may occur when an arrow function is used as IIFE