4.1.2 (2017-01-09)
- css: fix stylus-loader options (641646c)
- eslint: hides global variable warnings (#2448) (6aae4f5)
- sql: Fix form field not displaying sequalize error (d2cc15a), closes #2400
- webpack:css: disable css-loader sourceMap option (d48f0b0), closes #2188
4.1.1 (2016-12-08)
- Upgraded to Angular 1.6
4.1.0 (2016-09-30)
- We've bumped some of the Babel deps to
^6.16.0
. This should fix the issues everyone's been seeing with class properties being stripped when using the default settings of Babel without Flow types.
- client:footer:
- gen:gulp: port changelog code to gulp (045abfb)
4.0.5 (2016-09-15)
- client:auth: fix hasOwnProperty instances, fix User usage (#2232) (f41e420), closes #2232 #2212
- client:oauthButtons: add ngInject (#2209) (9ce58e8), closes #2206
- endpoint:controller: fix findOneAndUpdate syntax (1c2a219), closes #2221
- heroku: Changed port variable to capital letters so heroku recognize it (44dccba), closes #2185
- karma: remove extra
require
(c188229), closes #2219 - server:twitter: make sure IDs are strings (5991a72), closes #1997
- socket: add ngInject (#2208) (b530695), closes #2203
4.0.4 (2016-09-01)
- webpack:
4.0.3 (2016-09-01)
- gen: fix doc img generation\n\nAdd gulp task to copy images to gh-pages (5bb43be)
- gen:heroku: fix module export, gen base (8e50326), closes #2148
- webpack: fix bootstrap-sass import path (bae1c86)
4.0.2 (2016-09-01)
- client:socket.service: import lodash named exports (231e500)
- gulp:build: remove protractor typings (#2144) (b9abc58)
- docs: add daux.io docs (f1e7a87)
- gen:app:
- gen:gulp: add TODO tasks in gulpfile. rm 2 old grunt tasks (1e25de7)
4.0.0 (2016-08-08)
- No more Bower
- Webpack is a Module Bundler for the front-end.
- Everything starts in
client/app.js
. It imports (using CommonJS / ES2015 imports) everything else needed from there. - Whenever we create a new Angular 1 module, we export its name, and import that name in another module up the tree, all the way to
client/app.js
. This design pattern allows for easy lazy-loading.
Grunt has been removed.
- Gulp is significantly faster to run
- Gulp focuses on programmatic configuration, which makes it a breeze to configure compared to Grunt's JSON-config-focused configuration.
- Gulp development is much more active, with Gulp 4.0.0 hopefully being released soon.
JSHint + JSCS have been replaced with ESLint. ESLint provides a gigantic amount of rules, and is easily pluggable with many plugins. It uses Espree. Also, JSCS has merged with ESLint.
Flow support has been added. TypeScript type errors have been fixed.
The following methods from the client Auth service have been split into two: getCurrentUser
, isLoggedIn
, hasRole
, isAdmin
. The reason that these methods could be both synchronous and asynchronous depending on how many arguments were passed is because they were called from Angular templates. Now, the Angular templates call the sync form of these methods (e.x. getCurrentUserSync
), and the original functions are now only async.
The task runner no longer takes care of creating an Angular module for config constants. It is taken care of by webpack now (the shared.js
files is now just require
d)
PUT now defaults to an upsert. PATCH now actually does an HTTP PATCH.
Livereload has been removed in favor of Browsersync
3.8.0 (2016-09-15)
- authorization: header workaround for IE11 (2362103), closes #2051
- endpoint:controller: wrap saveUpdates in an if(entity) statement (31c0a79), closes #2052 #2059
- grunt:
- gulp: fix plain css generation (#2013) (54479fc), closes #2013
- gulpfile: gulp-filter@4.0.0 need "dot:true" option (1fbf24b), closes #2146 #2151
- server: return express stuff (81ea8fa)
3.7.6 (2016-06-21)
- Add deprecation warning about Grunt
- Bumped a few generator dependencies
3.7.5 (2016-06-02)
3.7.4 (2016-05-25)
- build: fix up PR 1896 (3113a3e)
- ie: IE11 log in works for ports 80 and 443 (414b80a), closes #1880 #1896
3.7.2 (2016-05-15)
3.7.1 (2016-05-15)
3.7.0 (2016-05-15)
- The Angular component sub-generator from generator-ng-component was added
- The generator no longer uses the babel require hook at runtime
- The generator's template files are now passed through Babel at scaffold time. This allows for things like removing type annotations if the user so chooses.
- TypeScript uses typings instead of tsd
- client: remove no-empty from tslint.json (eafc4e0)
- client:navbar.controller: refactor EJS, exclude constructor if empty (a75b1d4)
- e2e:main: fix yeoman.png regex (4b4db99)
- express: import
connect-mongo/es5
if node < 4 (63fb77f), closes #1844 - gen:app: only include
typings.json
with TS (6f82220) - gen:endpoint:
- gen:grunt: update paths (104efc6)
- gen:gulp:babel: return the two merged streams (3748953)
- gen:gulp:clean: also clean test dir (aedb37e)
- gen:gulp:updateFixtures: fix saving as private/public (a2cecab)
- gen:test:endpoint:
jshint
function also checks that the file exists (17d9985) - gen:test:main: fix sql e2e (a9d238c)
- grunt: exclude jshint config if using TypeScript (54d4ebd)
- gulp: fix racing condition for copy:constant (f07b451), closes #1830
- package:
- server:
- server:oauth:
- fix mongoose validation when re-login using twitter oauth (5f8805d)
- client:auth: add first type definition (
callback: Function
) (7ed2585) - gen:
- gen:app: run all client files through Babel & JS Beautifier (1d4ce11)
- gen:gulp:
- gen:test:
- grunt:less: add sourcemap options (#1868) (55c9a18), closes #1765
- gulp:ts: inject client .ts test files automatically into config file. (17cb4e4), closes #1828
3.6.1 (2016-04-23)
3.6.0 (2016-04-21)
- gen:heroku: allow for grunt or gulp (954baa4)
- gen:openshift: allow for grunt or gulp (2f1a229)
- gulp: build images before rev-replace (4139694)
- gulp:copy:constant: fix output dir (a5e31cf), closes #1748
- gulp:inject: prevent
'inject:css'
from showing up twice (09b4f01) - gulp:inject:css: remove leading
/
(6de6272) - gulp:jshint: include jshint alongside gulp-jshint (978f6ba)
- gulp:serve:
- gulp:styles: fix styles task for plain CSS (dc72c33), closes #1747
- gulp:test:client: move around some
'tsd'
tasks (86c7510) - gulp:wiredep: copy
exclude
array code from Grunt (2997e34), closes #1739 - livereload: ignore api routes and specific non-html files (c6a396b), closes #1636 #1764
- server:user:spec: replace
context
withdescribe
(5716660) - ts:
- user: fix email and password validation (474a3a1)
- GitHub: add issue and PR templates (79b1db7)
- gulp:
3.5.0 (2016-03-20)
A lot of various dependencies were updated
- gen:
- grunt: update rev-ed images in css as well as js (5a24b83), closes #977
- grunt:filerev: don't rev assets/fonts/ (5228536)
- gulp: add inject:tsconfig to inject task (bb045c5)
- gulp:build: exclude local.env.sample.js (429d5f3), closes #1570
- jshint: capitalize MongoStore (310cb22)
- model:user: add missing
return
statements (f6ca289)
3.4.2 (2016-03-12)
- gen: add Insight stat tracker (fdf35b3)
3.4.1 (2016-03-11)
- gen: shim determineAppname, use name argument if provided (bdaeb5a), closes #1682
- grunt: update rev-ed images in css as well as js (5a24b83), closes #977
- grunt:filerev: don't rev assets/fonts/ (5228536)
- gulp: add inject:tsconfig to inject task (bb045c5)
- gulp:build: exclude local.env.sample.js (429d5f3), closes #1570
3.4.0 (2016-03-09)
- Updated Angular to 1.5 (the main page now uses an Angular 1.5 component)
- Updated generator-ng-component to ~0.2.1. Angular subgenerators will now generate ES6 code and TypeScript code.
- Updated angular-bootstrap to ~1.1.2
- Updated bluebird to ^3.3.3, and set mongoose to use bluebird instead of mpromise. This allows us to remove promisification of mongoose APIs.
- Updated PhantomJS to ^2.1.4
- deps:
- gen: fix Stylus & Sass extensions (37d6c46), closes #1609
- grunt:babel: exclude local.env.sample.js (3e0518b)
- grunt:injector: sort js/ts modules (fe6aba2)
- gulp: add inject:tsconfig, change script watcher (978e07e)
- gulp:build:
- gulp:ts: fix gulp not using latest typescript config after changed (6a6afd9)
- gulp:tslint: exclude both typings and test_typings (2e83bd1)
- gulp:watch: re-compile jade to .tmp (18412a7)
- server:oauth: fix sequelize syntax (221f7a4), closes #1654
- tslint: fix no-trailing-comma (d7cd347)
- gen: add 'es6' to generator-ng-component filters (65530b3)
3.3.0 (2016-02-02)
- TypeScript support
- Gulp support
- client: move navbar and footer directive usage to around the router view directive in index.html (c429adb)
- gulp:
- grunt:
- gen:test: make sure we overwrite conflicts, add missing options from mock prompt options (d6aeacf)
- npm: make sure to include mocha for server tests (6c4e926)
3.3.0-beta.0 (2016-01-06)
- client:util.urlParse: special treatment for IE (869b45b)
- gulp:
- client: Add initial TypeScript support (22d46d5)
3.2.0 (2016-01-03)
- app: fix .gitattributes (6b17ef7)
- gulp
- e2e: force e2e tests to wait for angular (842ab55)
- gen: fix styleExt being
sass
instead ofscss
(8f99a8f) - gen: set scriptExt, templateExt, & styleExt when re-using a .yo-rc.json (6e59229)
- gulp:
- inject angular modules before other scripts (c0d5a14)
- clean .tmp folder in build task (9596ba4)
- add missing gulp-env package (cf017de)
- get client tests working (0cb4a4b)
- use different transpile options for server and client (bb67961)
- make sure tests and main app file are not injected (0171112)
- make sure
.htaccess
is copied on build (3602406) - call
wiredep:test
before running tests (103adb2) - inject:css: fix string that should be template string (bb92502)
3.1.1 (2015-12-15)
- client:auth.decorator: fix Auth.isLoggedIn not having a noop arg (0e9f302)
3.1.0 (2015-12-13)
- client:auth: fix auth 'decorator' (56d12fc), closes #1492
- gulp:
- navbar: fix controller constructor with ng-route + auth (4b59e1f), closes #1462
- admin: spruce up the look of the user list (38bb6b8)
- gulp: add experimental Gulp support (c70fd47)
yo angular-fullstack --gulp
3.0.2 (2015-12-05)
- api:user: remove
password
before sending user objects instead ofhashedPassword
(c08bd95), closes #1459 - client:auth: remove decorator logic (3229acd), closes #1455
3.0.1 (2015-12-04)
This version just changes the recommended Node version to ^4.2.3, since it fixes some vulnerabilities. Also, the Travis-CI config has been changed to loosely test Node 5.1.1 instead of 5.0.0.
3.0.0 (2015-12-06)
- Sequelize - You can now choose between MongoDB + Mongoose or SQLite3 + Sequelize
- Babel - We now include Babel transpiler support, with plans to add TypeScript in the future
- Lusca - Lusca Security Middleware is included by default
- Angular Modules - A few components of the front-end have been broken out into their own Angular modules, such as
auth
,admin
, and a newutil
module - Modern Angular Best-Practices - We have moved a lot of the code to take advantage of the
controllerAs
syntax, as well as ES6/ES7 Classes - Mongoose Bluebird Promises
- Node >= 4.2.2 - We now support versions of Node 4.2.2 and up. Since this is a generator for scaffolding out a new project, it makes sense to move support to the 4.2.2 Long Term Support (LTS) version of Node, since it is the most supported release by Node. It is likely that the generator will work with earlier versions of Node, but it is not recommended.
CoffeeScript,Vanilla JS- Removed CoffeeScript and vanilla JS support. CoffeeScript has served its purpose and been replaced by much better transpilers. Vanilla JS doesn't provide a lot of the features that enable good, modern code. We now only support Babel 5.8.x, and plan to add TypeScript support in the future.- Removed some backwards-compatibility support code
To see the full list of changes, click the '3.0.0' title to view the GitHub compare between 3.0.0 and 2.1.1
2.1.1 (2015-07-29)
- app:
- app:test: include
client/components
in babel preprocessing (6b575d1), closes DaftMonk/generator-angular-fullstack#1081 - build: exclued
bower_components
from the grunt rev and usemin blocks (7ae43ae), closes #522 - test:
2.1.0 (2015-07-15)
- app: missing event.preventDefault (c90d762)
- app-logout: add blank templates to logout route/state (650d244), closes #570
- app-signup: switch button classes (5898e0c)
- demo: include bootstrap in demo (19e2133)
- deps: use angular ~1.2 before migrated to 1.3 (6a196e2), closes #654
- endpoint:
- endpoint:thing: use Express 4 syntax (c7b48a5)
- endpoint:user: refactor validationError for promise use (c98cb5d)
- express: support new options of updated connect-mongo (727d661)
- gen:
- gen:build: Adds missing slash (bb4d92e)
- gen:endpoint: Fix JSCS stuff and use Express 4 syntax (1bcffd6)
- git: Remove old text=auto (e0350cc)
- jshint: Removed 'regexp' from server and client jshintrc (I couldn't find it in the docs (e02f094)
- model: fix update bugs with mongoose and sequelize (1805975)
- npm: Remove git diff comment (349b6d3)
- oauth:
- return a 404 when no user is found fixes #711 (38c0d7c), closes #711
- openshift: fix processing of rhc app show output (dedf46c)
- server: server should launch in dev mode if production env var is not specified (9cdcc90), closes #590
- server-tests:
test:coverage
task (5198685) - test:
- travis:
- app:
- add grunt jscs task for maintaining consistent code style (8a1a245)
- add mongodb error handling to quit app if unable to connect with mongodb server (31bee73)
- additional app generator option for ES6 preprocessing using babel (bc03aba)
- additional app generator option for ES6 preprocessing using babel (cbb06a4)
- implement footer as directive (cf298a7)
- implement navbar as directive (24171aa)
- app-auth: Improve client-side Auth service (65d03fc), closes #456
- app-routing: improve app routing (6aadee6), closes #331
- build: add gitter webhook for travis (6b88efd)
- gen:
- generator: use sauce labs for running e2e tests with travis CI (50ca41d), closes #572
- model: abstract model events to a standard EventEmitter (91657d7), closes #857 #490
- readme: add david-dm badge & move badges to new line (f8f32f4)
- server:
- server-tests: code coverage and e2e (dbbaa20)
- travis-ci: enable container builds and caching (00317a8)
2.0.13 (2014-08-29)
- gen:
- auth: make crypto async (6aecdf7)
2.0.11 (2014-08-26)
- app-config: Use parentheses to fix string concat in config (c6a50ce), closes #466
- app-jshint: improve jshint usage (35fcf49), closes #463 #486
- gen: use more restrictive version range for ng-component (1969897)
- app-socket.io: build socket.io into vendor.js (06f2e46)
- docs: Inform users/developers of the
canary
branch (7469362) - gen: make generator tests faster, and easier to run (84acb74)
- gen-travis: add additional node version to travis.yml (e4f00b0)
2.0.10 (2014-08-16)
- server: undefined domain env variable causing issues (cb683dd)
2.0.9 (2014-08-16)
- app:
- app:api:user: Missing user response code (c176660), closes #438
- gen:app:socket: use
''
insteadnull
as URL to open ioSocket (0f0d0fd) - gruntfile: incorrect path to index.html for cdnify (0ad646c)
- openshift: fix issues with openshift deployment (ace0723)
- gen: add automatic demo releases with grunt task (4485223)
- server: add sample env config file that can be tracked by git (c9f80bc)
- uibootstrap-modal: add basic modal service and template when using uibootstrap (7c14bed)
2.0.8 (2014-07-31)
- coffee: update socket service to match javascript version (c27cefe)
- gen: Fixed missing
oauth
property in.yo-rc.json
after 2.0.5 update (11d324b) - travis: install sass gem if sass is enabled (ceeac27)
- twitter: revert mongoose connection change (8675a00)
- user-management: use the User $resource to populate users for the admin page (708f072)
2.0.7 (2014-07-28)
- gruntfile: grunt tasks should run if no local config exists (422d6bc)
- server: fix setting TTL index on collection : sessions error (0581ed0)
2.0.6 (2014-07-27)
- app-dependency: change ngmin to ng-annotate (dd023fa)
- bootstrap: removed styles breaking responsiveness for high-res screens (053fedb)
- responsive:
things
made a little bit more responsive (58aa7a4) - socketio: fallback for servers where
socket.handshake.address
is not provided (f6a1934) - stylus: remove bootstrap css import in stylus when bootstrap is not selected (f7c3d0a), closes #368
- heroku: provide prompt to set the deployment region (13cd5e7)
- oauth: multiple strategies per account; changeable email (ef06272)
2.0.5 (2014-07-18)
- account: add authentication requirement for settings view (9105c0f), closes #327
- app:
- app:server:thing.controller: missing
res
param for handleError added (eb7d50c) - app:styles: use correct path for font awesome and glyphicons (1917ba3)
- dependencies: include certain dependencies only when answering yes to their respective prompts (040c57d)
- server:
- app: added oath buttons to signup page (a408f58)
- gen:
- oauth: remove code according to user prompts (316bd9d)
2.0.4 (2014-07-09)
- app: fix dependency injection minsafe problem in auth service (03742a8)
- gen: heroku and openshift generators requiring .yo-rc file to work (88ebfc8), closes #318
2.0.3 (2014-07-04)
- server: only enable sessions if twitter oauth was selected (bcd00dc)
- gen: make bootstrap and bootstrap ui optional (f50d094)
2.0.2 (2014-07-03)
- gen:endpoint:
2.0.1 (2014-07-02)
- server: local env not being copied (f65b393)
- app:
- Follow googles AngularJS project recommendations to make a very modular app structure.
- New look for generated app
- Add basic crud interface to app
- Support for UI Router
- Support for LESS
- Built in support for protractor e2e tests
- Add angular-bootstrap and lodash to default app
- More consistent and understandable naming conventions for files
- server:
- Modular project structure for express server
- Support for social auths with facebook/twitter/google
- Role based authentication
- Replace session based authentication with JWT authentication
- Optional integration with socket.io
- Added config file, ignored by git, for setting local environment variables, api keys, secrets.. etc.
- gruntfile:
- Optimizations to the gruntfile
- Automate injection of new scripts into index file with grunt
- Use ng-templates to concatenate all the html/jade views into the javascript payload
- gen:
- Abstract client-side generators into generator-ng-component, use new composition feature of yeoman to keep them available in the generator.
- Add useful tests to the generator, start using travis CI
- use .yo-rc file to keep track of generated configurations
- Add endpoint generator to angular-fullstack, generates model / route / controller / test / socket updates
- New project structure
- Deprecated value and constant sub generators
- Sub-generators generate components in a single directory and don't inject themselves into the index file (this is done by a grunt task now)
- config: fix issue where
config.ip
is undefined in non-production environments (087f5bca) - package: update connect-mongo to correct version
- app: add require attribute to login.html inputs so it validates on client side
- gen: use lowercase filenames for scripts
- gen: typo in heroku generator was preventing it from working on unix based systems (9d3b5738)
- server:
- server: updated Express to v4.x
- app: matching angular dependencies to the latest verison, now that bower excludes pre-releases (94c0c636)
- gen:
- Added
angular-fullstack:openshift
generator, for deploying your app to OpenShift - Added
angular-fullstack:heroku
generator, which improves upon the former:deploy
generator for deploying to Heroku
- Added
- server: fixed possible DB flushing when mochaTest is called by watch, first call 'env:test' task before 'mochaTest' (2f0320fe)
- The
angular-fullstack:deploy
generator is deprecated. Instead useangular-fullstack:heroku
orangular-fullstack:openshift
.
- server: enable response compression (1547ac6f)
- config: change default port in config to 9000 (480515f6)
- gruntfile:
- package: update required generator-karma dependency to the correct version (0c0e8a52)
- package.json: updated dependencies that were causing issues with npm install (1874cdf1)
- gruntfile: configured jshint for client tests (4ee92b9a)
- grunt:
- fixed clean:dist task (e390cac0)
- server:
- app:
- server:
- server: undefined api routes now return a 404 (ec829fe2)
- app:
- grunt: include partial sub-directories in htmlmin (77564ba3)
- server:
- deps: upgrade angular to 1.2.11, and jquery to 1.11.0 (cd5c3030)
- app: switched sass-bootstrap to offical bootstrap-sass (024fee88)
- app:
- server:
- gen: updated generator dependencies (115008d3)
- grunt: fixed incorrect templating expression (2a59e070)
- app: fixed jshint warning in user model (f668fdc7)
- app:
- app:
- server: added jshint error checking before livereload occurs (7e001d31)
- gen: added passport question for scaffolding out user account creation (87841064)
- app: removed async dependency (d5636d71)
- gitignore: fix app/views being ignored by git (7fa82ff9)
- server:
grunt heroku
is deprecated. Usegrunt build
instead.
- views:
- Replaced deprecated jade tags.
- app:
- Updgrade to AngularJS 1.2.6
- app:
- build: deselecting ngRoute does remove route stuff (a358c1ae, closes #486)
- gen:
- package: fix imagemin for windows users (b3cec228)
- views:
- app:
- gen:
- server:
- Added middleware for development mode that disables caching of script files (c082c81c)
- Moved express configuration code out of server.js and into config folder to make it a more high level bootstrap.
- Deselecting ngRoute adds controller and ng-include to index.html (a358c1ae)
--minsafe
flag is now deprecated.grunt server
is now deprecated. Usegrunt serve
instead
- coffee: updated coffescript templates to point to partials (f98e84ef)
- build:
- deps: upgrade dependencies (3a57216f)
- gen:
- Fixed jshint errors that were breaking grunt task (c6ae81c8)
- app:
- gen:
- build:
angular-fullstack:route
angular-fullstack:view
Will now generate views and routes in the views/partials folder.
For existing projects:
For generating routes and views, install generator-angular and use it's sub-generators.
They are exactly the same as the generators that you have been using. Example usage: yo angular:route helloworld
.
For New projects:
Continue to use angular-fullstack route and view sub-generators.
The reason for this change in folder structure was to support server page rendering.
Closes #18, #17 (5ccdeb7a)
grunt server
is being deprecated (ef056319)
- bootstrap: some plugins have ordering dependencies (3da4a130)
- build: only include sass if sass is selected (597b8b5c, closes #449)
- css: remove merge conflicts (d558af35)
- gen:
- styles: update path to icon images (8daad4f2)
- template: remove redundant closing tag (d1e560e0, closes #441)
- app:
- gen:
- allow app names to have custom suffix (09f0f7b3)