CHANGELOG.md in lotusrb-0.5.0 vs CHANGELOG.md in lotusrb-0.6.0
- old
+ new
@@ -1,11 +1,54 @@
# Lotus
A complete web framework for Ruby
+## v0.6.0 - 2016-01-12
+### Added
+- [Luca Guidi] Introduced configurable assets compressors
+- [Luca Guidi] Introduced "CDN mode" in order to serve static assets via Content Distribution Networks
+- [Luca Guidi] Introduced "Digest mode" in production in order to generate and serve assets with checksum suffix
+- [Luca Guidi] Introduced `lotus assets precompile` command to precompile, minify and append checksum suffix to static assets
+- [Luca Guidi] Send `Content-Cache` HTTP header when serving static assets in production mode
+- [Luca Guidi] Support new env var `SERVE_STATIC_ASSETS="true"` in order to serve static assets for the entire project
+- [Luca Guidi] Generate new applications by including `Web::Assets::Helpers` in `view.prepare` block
+- [Luca Guidi] Introduced new Rake tasks `:preload` and `:environment`
+- [Luca Guidi] Introduced new Rake tasks `db:migrate` and `assets:precompile` for Rails/Heroku compatibility
+- [Tadeu Valentt & Lucas Allan Amorin] Added `lotus destroy` command for apps, models, actions, migrations and mailers
+- [Lucas Allan Amorim] Custom initializers (`apps/web/config/initializers`) they are ran when the project is loaded and about to start
+- [Trung Lê] Generate mailer templates directory for new projects (eg. `lib/bookshelf/mailers/templates`)
+- [Tadeu Valentt] Alias `--database` as `-d` for `lotus new`
+- [Tadeu Valentt] Alias `--arch` as `-a` for `lotus new`
+- [Sean Collins] Let `lotus generate action` to guess HTTP method (`--method` arg) according to RESTful conventions
+- [Gonzalo Rodríguez-Baltanás Díaz] Generate new applications with default favicon
+
+### Fixed
+- [Neil Matatall] Use "secure compare" for CSRF tokens in order to prevent timing attacks
+- [Bernardo Farah] Fix support for chunked response body (via `Rack::Chunked::Body`)
+- [Lucas Allan Amorim] Add `bundler` as a runtime dependency
+- [Lucas Allan Amorim] Ensure to load properly Bundler dependencies when starting the application
+- [Luca Guidi] Ensure sessions to be always available for other middleware in Rack stack of single applications
+- [Ken Gullaksen] Ensure to specify `LOTUS_PORT` env var from `.env`
+- [Andrey Deryabin] Fix `lotus new .` and prevent to generate the project in a subdirectory of current one
+- [Jason Charnes] Validate entity name for model generator
+- [Caius Durling] Fixed generator for nested actions (eg. `lotus generate action web domains/certs#index`)
+- [Tadeu Valentt] Prevent to generate migrations with the same name
+- [Luca Guidi] Ensure RSpec examples to be generated with `RSpec.describe` instead of only `describe`
+- [Andrey Deryabin] Avoid `lotus` command to generate unnecessary `.lotusrc` files
+- [Jason Charnes] Convert camel case application name into snake case when generating actions (eg. `BeautifulBlossoms` to `beautiful_blossoms`)
+- [Alfonso Uceda Pompa] Convert dasherized names into underscored names when generating projects (eg. `awesome-project` to `awesome_project`)
+
+### Changed
+- [Sean Collins] Welcome page shows current year in copyright notes
+- [Luca Guidi] Add `/public/assets*` to `.gitignore` of new projects
+- [Luca Guidi] Removed support for `default_format` in favor of `default_request_format`
+- [Luca Guidi] Removed support for `apps/web/public` in favor of `apps/web/assets` as assets sources for applications
+- [Luca Guidi] Removed support for `serve_assets` for single applications in order to global static assets server enabled via `SERVE_STATIC_ASSETS` env var
+- [Luca Guidi] `assets` configuration in `apps/web/application.rb` now accepts a block to configure sources and other settings
+
## v0.5.0 - 2015-09-30
### Added
-- [Ines Coelho & Rosa Faria] Mailers
+- [Ines Coelho & Rosa Faria] Introduced mailers support
- [Theo Felippe] Added configuration entries: `#default_request_format` and `default_response_format`
- [Rodrigo Panachi] Introduced `logger` configuration for applications, to be used like this: `Web::Logger.debug`
- [Ben Lovell] Simpler and less verbose RSpec tests
- [Pascal Betz] Introduced `--method` CLI argument for action generator as a way to specify the HTTP verb
@@ -24,11 +67,11 @@
- [Trung Lê] Alias `--database` as `--db` for `lotus new`
### Fixed
- [Alfonso Uceda Pompa] Ensure to load correctly apps in `lotus console`
- [Alfonso Uceda Pompa] Ensure to not duplicate prefix for Container mounted apps (eg `/admin/admin/dashboard`)
-- [Alfonso Uceda Pompa] Ensure generator for application arch to generate session secret
+- [Alfonso Uceda Pompa] Ensure generator for "application" architecture to generate session secret
- [Alfonso Uceda Pompa & Trung Lê & Hiếu Nguyễn] Exit unsuccessfully when `lotus generate model` doesn't receive a mandatory name for model
- [Miguel Molina] Exit unsuccessfully when `lotus new --database` receives an unknown value
- [Luca Guidi] Ensure to prepend sessions middleware, so other Rack components can have access to HTTP session
## v0.4.0 - 2015-06-23
@@ -47,11 +90,11 @@
### Changed
- [Luca Guidi] `.env`, `.env.development` and `.env.test` are generated and expected to be placed at the root of the project.
- [Luca Guidi] Remove database mapping from generated apps.
- [Trung Lê & Luca Guidi] Remove default generated from new apps.
-- [Luca Guidi] New application should depend on `lotus-model ~> 0.4`
+- [Luca Guidi] New projects should depend on `lotus-model ~> 0.4`
## v0.3.2 - 2015-05-22
### Added
- [Alfonso Uceda Pompa] Automatic secure cookies if the current connection is using HTTPS.
- [Alfonso Uceda Pompa] Routing helpers for actions (via `#routes`).
@@ -77,13 +120,13 @@
## v0.3.0 - 2015-03-23
### Added
- [Luca Guidi] Introduced action generator. Eg. `bundle exec lotus generate action web dashboard#index`
- [Alfonso Uceda Pompa] Allow to specify default coookies options in application configuration. Eg. `cookies true, { domain: 'lotusrb.org' }`
- [Tom Kadwill] Include `Lotus::Helpers` in views.
-- [Linus Pettersson] Allow to specify `--database` CLI option when generate a new application. Eg. `lotus new bookshelf --database=postgresql`
-- [Linus Pettersson] Initialize a Git repository when generating a new application
-- [Alfonso Uceda Pompa] Produce `.lotusrc` when generating a new application
+- [Linus Pettersson] Allow to specify `--database` CLI option when generate a new project. Eg. `lotus new bookshelf --database=postgresql`
+- [Linus Pettersson] Initialize a Git repository when generating a new project
+- [Alfonso Uceda Pompa] Produce `.lotusrc` when generating a new project
- [Alfonso Uceda Pompa] Security HTTP headers. `X-Frame-Options` and `Content-Security-Policy` are now enabled by default.
- [Linus Pettersson] Database console. Run with `bundle exec lotus db console`
- [Luca Guidi] Dynamic finders for relative and absolute routes. It implements method missing: `Web::Routes.home_path` will resolve to `Web::Routes.path(:home)`.
### Changed
@@ -93,24 +136,24 @@
## v0.2.1 - 2015-02-06
### Added
- [Huy Đỗ] Introduced `Lotus::Logger`
- [Jimmy Zhang] `lotus new` accepts a `--path` argument
-- [Jimmy Zhang] Application generator for the current directory (`lotus new .`). This is useful to provide a web deliverable for existing Ruby gems.
-- [Trung Lê] Add example mapping file for application generator: `lib/config/mapping.rb`
-- [Hiếu Nguyễn] RSpec support for application generator: `--test=rspec` or `--test=minitest` (default)
+- [Jimmy Zhang] Project generator for the current directory (`lotus new .`). This is useful to provide a web deliverable for existing Ruby gems.
+- [Trung Lê] Add example mapping file for project generator: `lib/config/mapping.rb`
+- [Hiếu Nguyễn] RSpec support for project generator: `--test=rspec` or `--test=minitest` (default)
### Fixed
- [Luca Guidi] `lotus version` to previx `v` (eg `v0.2.1`)
-- [Rob Yurkowski] Ensure application name doesn't contain special or forbidden characters
+- [Rob Yurkowski] Ensure project name doesn't contain special or forbidden characters
- [Luca Guidi] Ensure all the applications are loaded in console
-- [Trung Lê] Container architecture: preload only `lib/<appname>/**/*.rb`
-- [Hiếu Nguyễn] Fixed `lotus new` to print usage when application name isn't provided
+- [Trung Lê] Container architecture: preload only `lib/<projectname>/**/*.rb`
+- [Hiếu Nguyễn] Fixed `lotus new` to print usage when project name isn't provided
## v0.2.0 - 2014-06-23
### Added
-- [Luca Guidi] Introduced `lotus new` as a command to generate applications. It supports "container" architecture for now.
-- [Luca Guidi] Show a welcome page when the application doesn't have routes
+- [Luca Guidi] Introduced `lotus new` as a command to generate projects. It supports "container" architecture for now.
+- [Luca Guidi] Show a welcome page when one mounted Lotus application doesn't have routes
- [Luca Guidi] Introduced `Lotus::Application.preload!` to preload all the Lotus applications in a given Ruby process. (Bulk `Lotus::Application.load!`)
- [Trung Lê] Allow browsers to fake non `GET`/`POST` requests via `Rack::MethodOverride`
- [Josue Abreu] Allow to define body parses for non `GET` HTTP requests (`body_parsers` configuration)
- [Alfonso Uceda Pompa] Allow to toggle static assets serving (`serve_assets` configuration)
- [Alfonso Uceda Pompa] Allow to serve assets from multiple sources (`assets` configuration)