*2.1.1 (September 4th, 2008)*
- Fix script/about in production mode. 370 [Cheah Chu Yeow, Xavier Noria,
David Krmpotic]
- Add the gem load paths before the framework is loaded, so certain gems like
RedCloth and BlueCloth can be frozen.
- Fix discrepancies with loading rails/init.rb from gems.
- Plugins check for the gem init path (rails/init.rb) before the standard
plugin init path (init.rb) [Jacek Becela]
- Wrapped Rails.env in
StringInquirer so you can do Rails.env.development?
[DHH]
- Fixed that RailsInfoController wasn‘t considering all requests local
in development mode (Edgard Castro) [310 state:resolved]
*2.1.0 (May 31st, 2008)*
- script/dbconsole fires up the command-line database client. 102 [Steve
Purcell]
- Fix bug where plugin init.rb files from frozen gem specs weren‘t
being run. (pjb3) [122 state:resolved]
- Made the location of the routes file configurable with
config.routes_configuration_file (Scott Fleckenstein) [88]
- Rails Edge info returns the
latest git commit hash [Francesc Esplugas]
- Added Rails.public_path to
control where HTML and assets are expected to be loaded from (defaults to
Rails.root +
"/public") 11581 [nicksieger]
- rake time:zones:local finds correct base utc offset for zones in the
Southern Hemisphere [Geoff Buesing]
- Don‘t require rails/gem_builder during rails initialization,
it‘s only needed for the gems:build task. [rick]
- script/performance/profiler compatibility with the ruby-prof >= 0.5.0.
Closes 9176. [Catfish]
- Flesh out rake gems:unpack to unpack all gems, and add rake gems:build for
native extensions. 11513 [ddollar]
rake gems:unpack # unpacks all gems rake gems:unpack GEM=mygem # unpacks
only the gem ‘mygem‘
rake gems:build # builds all unpacked gems rake gems:build GEM=mygem #
builds only the gem ‘mygem‘
- Add config.active_support for future configuration options. Also, add more
new Rails 3 config settings to
new_rails_defaults.rb [rick]
- Add Rails.logger, Rails.root, Rails.env and Rails.cache shortcuts for
RAILS_* constants [pratik]
- Allow files in plugins to be reloaded like the rest of the application.
[rick]
Enables or disables plugin reloading.
config.reload_plugins = true
You can get around this setting per plugin. If reload_plugins? == false
(DEFAULT), add this to your plugin‘s init.rb to make it reloadable:
Dependencies.load_once_paths.delete lib_path
If reload_plugins? == true, add this to your plugin‘s init.rb to only
load it once:
Dependencies.load_once_paths << lib_path
- Small tweak to allow plugins to specify gem dependencies. [rick]
# OLD open_id_authentication plugin init.rb require ‘yadis’
require ‘openid’ ActionController::Base.send :include,
OpenIdAuthentication
# NEW config.gem "ruby-openid", :lib => "openid",
:version => "1.1.4" config.gem "ruby-yadis", :lib
=> "yadis", :version => "0.3.4"
config.after_initialize do
ActionController::Base.send :include, OpenIdAuthentication
end
- Added config.gem for specifying which gems are required by the application,
as well as rake tasks for installing and freezing gems. [rick]
Rails::Initializer.run do |config|
config.gem "bj"
config.gem "hpricot", :version => '0.6', :source => "http://code.whytheluckystiff.net"
config.gem "aws-s3", :lib => "aws/s3"
end
# List required gems. rake gems
# Install all required gems: rake gems:install
# Unpack specified gem to vendor/gems/gem_name-x.x.x rake gems:unpack
GEM=bj
- Removed the default .htaccess configuration as there are so many good
deployment options now (kept it as an example in README) [DHH]
- config.time_zone accepts TZInfo::Timezone
identifiers as well as Rails
TimeZone identifiers [Geoff Buesing]
- Rails::Initializer#initialize_time_zone raises an error if value assigned
to config.time_zone is not recognized. Rake time zone tasks only require
ActiveSupport instead of entire environment [Geoff Buesing]
- Stop adding the antiquated test/mocks/* directories and only add them to
the path if they‘re still there for legacy reasons [DHH]
- Added that gems can now be plugins if they include rails/init.rb 11444
[jbarnette]
- Added Plugin#about method to programmatically access the about.yml in a
plugin 10979 [lazyatom]
plugin = Rails::Plugin.new(path_to_my_plugin)
plugin.about["author"] # => "James Adam"
plugin.about["url"] # => "http://interblah.net"
- Improve documentation. [Radar, Jan De Poorter, chuyeow, xaviershay, danger,
miloops, Xavier Noria, Sunny Ripert]
- Added config.time_zone = ‘UTC’ in the default environment.rb
[Geoff Buesing]
- Added rake tasks time:zones:all, time:zones:us and time:zones:local for
finding time zone names for config.time_zone option [Geoff Buesing]
- Add config.time_zone for configuring the default Time.zone value. 10982
[Geoff Buesing]
- Added support for installing plugins hosted at git repositories 11294
[danger]
- Fixed that script/generate would not look for plugin generators in
plugin_paths 11000 [glv]
- Fixed database rake tasks to work with charset/collation and show proper
error messages on failure. Closes 11301 [matt]
- Added a -e/—export to script/plugin install, uses svn export. 10847
[jon@blankpad.net)]
- Reshuffle load order so that routes and observers are initialized after
plugins and app initializers. Closes 10980 [rick]
- Git support for script/generate. 10690 [ssoroka]
- Update scaffold to use labels instead of bold tags. Closes 10757
[zach-inglis-lt3]
- Resurrect WordNet synonym lookups. 10710 [tom./, matt]
- Added config.cache_store to environment options to control the default
cache store (default is FileStore if tmp/cache is present, otherwise
MemoryStore is used) [DHH]
- Added that rails:update is run when you do rails:freeze:edge to ensure you
also get the latest JS and config files 10565 [jeff]
- SQLite: db:drop:all doesn‘t fail silently if the database is already
open. 10577 [Cheah Chu Yeow, mrichman]
- Introduce native mongrel handler and push mutex into dispatcher. [Jeremy
Kemper]
- Ruby 1.9 compatibility. 1689, 10546 [Cheah Chu Yeow, frederico]
*2.0.2* (December 16th, 2007)
- Changed the default database from mysql to sqlite3, so now running
"rails myapp" will have a config/database.yml that‘s setup
for SQLite3 (which in OS X Leopard is installed by default, so is the gem,
so everything Just Works with no database configuration at all). To get a
Rails application
preconfigured for MySQL, just run "rails -d mysql myapp" [DHH]
- Turned on ActionView::Base.cache_template_loading by default in
config/environments/production.rb to prevent file system stat calls for
every template loading to see if it changed (this means that you have to
restart the application to see template changes in production mode) [DHH]
- Introduce `rake secret` to output a crytographically secure secret key for
use with cookie sessions 10363 [revans]
- Fixed that local database creation should consider <IP_ADDRESS> local 9026
[parcelbrat]
- Fixed that functional tests generated for scaffolds should use fixture
calls instead of hard-coded IDs 10435 [boone]
- Added db:migrate:redo and db:migrate:reset for rerunning existing
migrations 10431, 10432 [matt]
- RAILS_GEM_VERSION may be double-quoted also. 10443 [James Cox]
- Update rails:freeze:gems to work with RubyGems 0.9.5. [Jeremy Kemper]
*2.0.1* (December 7th, 2007)
*2.0.0* (December 6th, 2007)
- The test task stops with a warning if you have pending migrations. 10377
[Josh Knowles]
- Add warning to documentation about using transactional fixtures when the
code under test uses transactions itself. Closes 7548 [thijsv]
- Update Prototype to <IP_ADDRESS>. [sam]
- Update script.aculo.us to <IP_ADDRESS>. [madrobby]
- Added db:fixtures:identity as a way of locating what ID a foxy fixture was
assigned 10332 [jbarnette]
- Generated fixtures should not specify ids since theyre expected to be foxy
fixtures 10330 [jbarnette]
- Update to Prototype -r8232. [sam]
- Introduce SecretKeyGenerator for more secure session secrets than
CGI::Session‘s pseudo-random id generator. Consider extracting to
Active Support later. 10286 [Hongli Lai]
- RAILS_GEM_VERSION may be set to any valid gem version specifier. 10057
[Chad Woolley, Cheah Chu Yeow]
- Load config/preinitializer.rb, if present, before loading the environment.
9943 [Chad Woolley]
- FastCGI handler ignores unsupported signals like USR2 on Windows. [Grzegorz
Derebecki]
- Only load ActionMailer::TestCase if ActionMailer is loaded. Closes 10137
[defunkt]
- Fixed that db:reset would use migrations instead of loading db/schema.rb
[DHH]
- Ensure the plugin loader only loads plugins once. Closes 10102
[haruki_zaemon]
- Refactor Plugin Loader. Add
plugin lib paths early, and add lots of tests. Closes 9795 [lazyatom]
- Added —skip-timestamps to generators that produce models 10036 [Tim
Pope]
- Update Prototype to 1.6.0 and script.aculo.us to 1.8.0. [sam, madrobby]
- Added db:rollback to rollback the schema one version (or multiple as
specified by STEP) [Jeffrey Allan Hardy]
- Fix typo in test_helper. Closes 9925 [viktor tron]
- Request profiler. [Jeremy Kemper]
- config/boot.rb correctly detects RAILS_GEM_VERSION. 9834 [alexch,
thewoolleyman]
- Fixed incorrect migration number if script/generate executed outside of Rails root 7080 [jeremymcanally]
- Update Prototype to 1.6.0_rc1 and script.aculo.us to 1.8.0 preview 0. [sam,
madrobby]
- Generated fixtures use the actual primary key instead of id. 4343
[Frederick Ros, Tarmo Tänav]
- Extend the console helper method to allow you to include custom
helpers. e.g: >> helper :posts >>
helper.some_method_from_posts_helper(Post.find(1))
- db:create works with remote databases whereas db:create:all only creates
databases on localhost. 9753 [Trevor Wennblom]
- Removed calls to fixtures in generated tests as fixtures :all is now
present by default in test_helper.rb [DHH]
- Add —prefix option to script/server when using mongrel. [dacat]
*2.0.0 [Preview Release]* (September 29th, 2007) [Includes duplicates of
changes from 1.1.4 - 1.2.3]
- Fixed that installing plugins from SVN repositories that use trunk/ will
work 8188 [evan]
- Moved the SourceAnnotationExtractor
to a separate file in case libraries try to load the rails rake tasks
twice. [Rick]
- Moved Dispatcher to ActionController::Dispatcher.
[Jeremy Kemper]
- Changed the default logger from Ruby‘s own Logger with the clean_logger
extensions to ActiveSupport::BufferedLogger
for performance reasons [DHH]. (You can change it back with config.logger =
Logger.new("/path/to/log", level).)
- Added a default 422.html page to be rendered when ActiveRecord::RecordInvalid,
ActiveRecord::RecordNotSaved,
or ActionController::InvalidAuthenticityToken is raised [DHH]
- Added —skip-fixture option to script/generate model 6862 [sandofsky]
- Print Rails version when
starting console 7440 [eyematz]
- Fixed the placement of fixture files for nested models when generating
through script/generate model 7547 [jkit]
- Added TEMPLATE option to rake doc:app to set a custom output template 7737
[Jakob S]
- Added VERBOSE option to rake db:migrate to turn off output 8204 [jbarnette]
- Fixed that rake doc:app should use UTF-8 8906 [farzy]
- Fixes rake annotations to search erb and builder files as well 9150
[m.langenberg]
- Removed web_service generator [Koz]
- Added the :all option to config.plugins that‘ll include the rest of
the plugins not already explicitly named 9613 [Frederick Cheung]. Example:
# Loads :classic_pagination before all the other plugins
config.plugins = [ :classic_pagination, :all ]
- Added symbols as a legal way of specifying plugins in config.plugins 9629
[tom]
- Removed deprecated task names, like clear_logs, in favor of the new
namespaced style [DHH]
- Support multiple config.after_initialize blocks so plugins and apps can
more easily cooperate. 9582 [zdennis]
- Added db:drop:all to drop all databases declared in config/database.yml
[DHH]
- Use attribute pairs instead of the migration name to create add and remove
column migrations. Closes 9166 [Pratik Naik]
For example:
ruby script/generation migration AddSomeStuffToCustomers first_name:string last_name:string
or
ruby script/generation migration RemoveSomeStuffFromCustomers first_name:string last_name:string
- Add ActiveResource to
Rails::Info. Closes 8741 [kampers]
- use Gem.find_name instead of search when freezing gems. Prevent false
positives for other gems with rails in the name. Closes 8729 [wselman]
- Automatically generate add/remove column commands in specially named
migrations like AddLocationToEvent. Closes 9006 [zenspider]
- Default to plural table name in Rails Generator if ActiveRecord
is not present. Closes 8963 [evan]
- Added rake routes for listing all the defined routes in the system. 8795
[Josh Peek]
- db:create creates the database for the current environment if it‘s on
localhost. db:create:all creates local databases for all environments. 8783
[matt]
- Generators: look for generators in all gems, not just those suffixed with
_generator, in the gem‘s generators or rails_generators directory.
Allow use of the rails_generators directory instead of the standard
generators directory in plugins also. 8730 [Dr Nic, topfunky]
- MySQL, PostgreSQL: database.yml defaults to utf-8. 8701 [matt]
- Added db:version to get the current schema number [via Err The Blog]
- Added —skip-migration option to scaffold and resource generators 8656
[Michael Glaesemann]
- Fix that FCGIs would leave log files open when asked to shut down by USR2.
3028 [Sebastian Kanthak, Josh Peek]
- Fixed that dispatcher preparation callbacks only run once in production
mode. Mock Routes.reload so that dispatcher preparation callback tests run.
[Rick]
- Fix syntax error in dispatcher than wrecked failsafe responses. 8625
[mtitorenko]
- Scaffolded validation errors set the appropriate HTTP status for XML
responses. 6946, 8622 [Manfred Stienstra, mmmultiworks]
- Sexy migrations for the session_migration generator. 8561 [Vladislav]
- Console reload! runs to_prepare callbacks also. 8393 [f.svehla]
- Generated migrations include timestamps by default. 8501 [Shane Vitarana]
- Drop Action Web Service from rails:freeze:edge. [Jeremy Kemper]
- Add db:create, drop, reset, charset, and collation tasks. 8448 [matt]
- Scaffold generator depends on model generator instead of duplicating it.
7222 [bscofield]
- Scaffold generator tests. 8443 [pelle]
- Generated scaffold functional tests use assert_difference. 8421 [Norbert
Crombach]
- Update to Prototype 1.5.1. [Sam Stephenson]
- Update to script.aculo.us 1.7.1_beta3. [Thomas Fuchs]
- Generators use *.html.erb view template naming. 8278 [Tim Pope]
- Updated resource_scaffold and model generators to use short-hand style
migrations [DHH]
- Updated initializer to only load #{RAILS_ENV}.rb once. Added deprecation
warning for config.breakpoint_server. [Nicholas Seckar]
- Removed breakpointer and Binding.of_caller in favor of relying on
ruby-debug by Kent Sibilev since the breakpointer has been broken since
Ruby 1.8.4 and will not be coming back [DHH]
To use the new debugger, start your server with script/server
—debugger and insert a call to ‘debugger’ (instead of
‘breakpoint’) where you want to jump into the debugger.
BACKWARDS INCOMPATIBILITY NOTE: You must remove the default line 12 from
config/environments/development.rb:
config.breakpoint_server = true
This configuration option is no longer available. Rails will fail to start in
development mode as long as that‘s still present.
- Resource scaffolding returns the created entity.to_xml. [Jeremy Kemper]
- Resource scaffolding responds to new.xml. 8185 [Eric Mill]
- Include Active Resource in rails:freeze:edge rake task. [Thomas Fuchs]
- Include Active Resource instead of Action Web Service [DHH] You can add AWS
back with this in config/environment.rb:
config.load_paths += %W( #{RAILS_ROOT}/vendor/rails/actionwebservice/lib )
…or just gem ‘actionwebservice‘
- Give generate scaffold a more descriptive database message. Closes 7316
[jeremymcanally]
- Canonicalize RAILS_ROOT by using File.expand_path on Windows, which
doesn‘t have to worry about symlinks, and Pathname#realpath
elsewhere, which respects symlinks in relative paths but is incompatible
with Windows. 6755 [Jeremy Kemper, trevor]
- Deprecation: remove components from controller paths. [Jeremy Kemper]
- Add environment variable RAILS_DEFAULT_DATABASE, which allows the builtin
default of ‘mysql’ to be overridden. [Nicholas Seckar]
- Windows: include MinGW in RUBY_PLATFORM check. 2982<EMAIL_ADDRESS>Kaspar Schiess]
- Split out the basic plugin locator functionality into an abstract super
class. Add a FileSystemLocator to do the job of checking the plugin_paths
for plugins. Add plugin_locators configuration option which will iterate
over the set of plugin locators and load each of the plugin loaders they
return. Rename locater everywhere to locator. [Marcel Molina Jr.]
- Split plugin location and loading out of the initializer and into a new Plugin namespace, which includes
Plugin::Locater and Plugin::Loader. The loader class that is used can be
customized using the config.plugin_loader option. Those monkey patching the
plugin loading subsystem take note, the internals changing here will likely
break your modifications. The good news is that it should be substantially
easier to hook into the plugin locating and loading process now. [Marcel
Molina Jr.]
- Added assumption that all plugin creators desire to be sharing individuals
and release their work under the MIT license [DHH]
- Added source-annotations extractor tasks to rake [Jamis Buck]. This allows
you to add FIXME, OPTIMIZE, and TODO comments to your source code that can
then be extracted in concert with rake notes (shows all), rake notes:fixme,
rake notes:optimize and rake notes:todo.
- Added fixtures :all to test_helper.rb to assume that most people just want
all their fixtures loaded all the time [DHH]
- Added config/initializers where all ruby files within it are automatically
loaded after the Rails
configuration is done, so you don‘t have to litter the environment.rb
file with a ton of mixed stuff [DHH]
- For new apps, generate a random secret for the cookie-based session store.
[Jeremy Kemper]
- Stop swallowing errors during rake test [Koz]
- Update Rails Initializer to
use ActionController::Base#view_paths [Rick]
- Fix gem deprecation warnings, which also means depending on RubyGems 0.9.0+
[Chad Fowler]
- Plugins may be symlinked in vendor/plugins. 4245 [brandon,
<EMAIL_ADDRESS>- Resource generator depends on the model generator rather than duplicating
it. 7269 [bscofield]
- Add/Update usage documentation for script/destroy, resource generator and
scaffold_resource generator. Closes 7092, 7271, 7267. [bscofield]
- Update to script.aculo.us 1.7.0. [Thomas Fuchs]
- Update to Prototype 1.5.0. [Sam Stephenson]
- Generator: use destination path for diff tempfiles. 7015 [alfeld]
- Fixed that webrick would strip leading newlines and hang connection 4156
[psross]
- Ensure plugins are in the Dependencies.load_once_paths collection by
default. [Rick] If you really want your plugins to reload, add this to the
very top of init.rb:
Dependencies.load_once_paths.delete(lib_path)
- Allow config.to_prepare to work, make the dispatcher safe to ‘re
require’. [Koz, Nicholas Seckar]
- Fix scaffold_resource generator so it respects the —pretend argument
when creating the routes file. Closes 6852 [fearoffish]
- Fix Webrick Daemon dispatching bug regarding a bad current working
directory. Closes 4899 [Rick Olson]
- Make config.plugins affect the load path and the dependencies system.
Allows you to control plugin loading order, and keep disabled plugins off
the load path. [James Adam]
- Don‘t generate a components directory in new Rails apps. [Jeremy Kemper]
- Fixed script/process/spawner to work properly with Mongrel including in -r
(daemonize mode) [DHH]
- Added one-letter aliases for the three default environments to
script/console, so script/console p will load the production environment (t
for test, d for development) [DHH]
- Fixed that script/server running against Mongrel should tail the proper log
regardless of the environment [DHH]
- Update initializer to load Rails::VERSION as soon as possible. Closes 6698.
[Nicholas Seckar]
- Added ActiveRecord::Base.clear_active_connections! in development mode so
the database connection is not carried over from request to request. Some
databases won‘t reread the schema if that doesn‘t happen
(I‘m looking at you SQLite), so you have to restart the server after
each migration (= no fun) [DHH]
- Made RAILS_GEM_VERSION work for beta gems too, so specifying 1.1.6 will
give you <IP_ADDRESS>20 if available [DHH]
- Update to Prototype and script.aculo.us [5579]. [Thomas Fuchs]
- Made script/server work with -e and -d when using Mongrel [DHH]
- Update to Prototype 1.5.0_rc2 [5550] which makes it work in Opera again
[Thomas Fuchs]
- Make sure that exceptions which are thrown outside of the user code try
their best to be handeled in ApplicationController#rescue_action [Tobias
Luetke]
- Rails::VERSION::STRING should always be available without having to require
‘rails/version’. 6244 [fearoffish]
- Update to Prototype 1.5.0_rc2. [Sam Stephenson]
- Add grep-based fallback to reaper, to work in pidless setups [Jamis Buck]
- Only wrap request processing with our USR1 signal handler so FastCGI can
trap it and raise an exception while waiting for connections. Idle
processes exit immediately rather than waiting for another request; active
processes gracefully exit when the request is finished. [Jeremy Kemper]
- Alter prior change to use require_dependency instead of require_or_load.
Causes ApplicationController to be reloaded again. Closes 6587. [Nicholas
Seckar]
- Rake: use absolute paths to load lib and vendor tasks so they may be run
outside of RAILS_ROOT. 6584 [jchris]
- Remove temporary crutch to help ApplicationController be unloaded. Closes
6496. [Nicholas Seckar]
- scaffold_resource generator uses _path named routes and head instead of
render :nothing => true. 6545 [Josh Susser]
- Generator can show diff on file collision to help you decide whether to
skip or overwrite. 6364 [jeffw, Jeremy Kemper]
- Generated directories are recursively svn added, like mkdir -p. 6416
[NeilW]
- resource and scaffold_resource generators add a restful route to
config/routes.rb [Jeremy Kemper]
- Revert environment changes for autoload_paths. [Koz]
- Update to latest Prototype, which doesn‘t serialize disabled form
elements, adds clone() to arrays, empty/non-string Element.update() and
adds a fixes excessive error reporting in WebKit beta versions [Thomas
Fuchs]
- Clean up the output of rake stats, de-emphasise components and apis, and
remove the indents for tests [Koz]
- Added option to script/process/spawner of specifying the binding address
5133 [zsombor]
- Update environment.rb comments to include config.autoload_paths. Closes
6478 [caio]
- Update scaffold to use new form_tag block functionality. Closes 6480.
[BobSilva]
- Plugin generator: check for
class collisions. 4833<EMAIL_ADDRESS>- Mailer generator: handle mailers in modules, set mime_version in unit test.
[Jeremy Kemper]
- Set $KCODE to ‘u’ by default to enable the multibyte safe
String#chars proxy. [Koz]
- Added config.plugins to control which plugins are loaded 6269 [skaes]. By
default, everything in vendor/plugins will be loaded, but if you specify
config.plugins, only those will be loaded. Example:
config.plugins = %w[ routing_navigator simply_helpful ]
- Clean up html on included error pages. [Tim Lucas]
- Fixed default 404.html and 500.htmls to remove extreme ugliness and include
human language [DHH]
- Update to latest Prototype and script.aculo.us trunk versions [Thomas
Fuchs]
- PostgreSQL: db:test:purge closes open database connections first. 6236
[alex]
- Fixed test:uncommitted on Windows (backslash issue) 4999
<EMAIL_ADDRESS>- Fixed migration creation to work with namespaced models, so script/generate
model Gallery::Image will use create_table :gallery_images 6327 [BobSilva]
- Fixed rename_table on SQLite tables with indexes defined 5942
<EMAIL_ADDRESS>- Added default timeout setting of 5 seconds to SQLite3 database.yml
configurations [DHH]
- Added generated attribute options to script/generate model, like the one
found in scaffold_resource and resource [DHH]. Examples:
./script/generate model post title:string created_on:date body:text published:boolean
- Added script/generate resource which works just like scaffold_resource, but
creates empty placeholders instead of predefined [DHH]
- script/runner can run files, pass on arguments, and be used as a shebang.
6286 [Tuxie, dlpond]
#!/usr/bin/env /path/to/my/app/script/runner
# Example: just start using your models as if you are in script/console
Product.find(:all).each { |product| product.check_inventory }
- Look for rake tasks in plugin subdirs. 6259 [obrie]
- Added map.connect ’:controller/:action/:id.:format’ as a
default route to config/routes.rb [DHH]
- Updated prototype.js to 1.5.0_rc1 with latest fixes. [Rick Olson]
- XPATH support
- Make Form.getElements() return elements in the correct order
- fix broken Form.serialize return
- session_migration generator adds an index on updated_at. 6207 [grg]
- script/server creates the tmp/pids directory. 6204 [jonathan]
- Fix script/console —sandbox for internal transactions changes. 5738
<EMAIL_ADDRESS><EMAIL_ADDRESS>- Remove the uncanny default of adding all app/models/*/ directories to the
load path. This change will break application which expect the current
behavior. As
documented in initializer.rb, the workaround is:
config.autoload_paths += Dir[RAILS_ROOT + '/app/models/*/']
References 6031. [Nicholas Seckar]
- Update to script.aculo.us 1.6.3 [Thomas Fuchs]
- Update to Prototype 1.5.0_rc1 [sam]
- Formally Deprecate the old rake tasks. [Koz]
- Thoroughly test the FCGI dispatcher. 5970 [Kevin Clark]
- Remove Dir.chdir in the Webrick DispatchServlet#initialize method. Fix bad
path errors when trying to load config/routes.rb. [Rick Olson]
- Tighten rescue clauses. 5985<EMAIL_ADDRESS>- Cleaning up tests. [Kevin Clark, Jeremy Kemper]
- Add Dependencies.load_once_paths. [Nicholas Seckar]
- Updated to script.aculo.us 1.6.2 [Thomas Fuchs]
- Assign Routing.controller_paths; fix script/about and rails info
controller. [Nicholas Seckar]
- Don‘t warn dispatcher of Reloadable deprecations. [Nicholas Seckar]
- Rearrange application resetting and preparation, fix bug with leaking
subclasses hash in ActiveRecord::Base
[Rick Olson]
ActiveRecord::Base.reset_subclasses is called before Dependencies are
cleared and classes removed. ActiveRecord::Base.instantiate_observers is
called during a Dispatcher preparation callback.
- Add missing mock directories from the autoload_paths configuration. [Rick
Olson]
- Nested controller scaffolding also nests the generated layout. [iain d
broadfoot]
- Add "require ‘dispatcher’" to webrick server in the
continuing quest to squash webrick weirdness. [Nicholas Seckar]
- Add autoload_paths support to Initializer. [Nicholas Seckar]
- Fix Dispatcher.reset_application! so that AR subclasses are removed and
Observers re-initialized after Reloadable classes are removed.
Closes 5743. [Rick Olson]
- Clarify usage of script/plugin source. Closes 5344<EMAIL_ADDRESS>- Add Dispatcher.to_prepare and config.to_prepare to provide a pre-request
hook. [Nicholas Seckar]
- Tweak the Rails load order so
observers are loaded after plugins, and reloaded in development mode.
Closed 5279. [Rick Olson]
- Added that you can change the web server port in config/lighttpd.conf from
script/server —port/-p 5465<EMAIL_ADDRESS>- script/performance/profiler compatibility with the new ruby-prof, including
an option to choose the results printer. 5679<EMAIL_ADDRESS>- Fixed the failsafe response so it uses either the current recognized
controller or ApplicationController. [Rick Olson]
- Make sure script/reaper only reaps dispatcher pids by default, and not the
spawner‘s pid. [Jamis Buck]
- Fix script/plugin about so it uses about.yml and not meta.yml. [James Adam]
- Dispatcher processes rescued actions with the same controller that
processed the request. 4625<EMAIL_ADDRESS>- rails -d frontbase to create a new project with a frontbase database.yml.
4945<EMAIL_ADDRESS>- Ensure the logger is initialized. 5629<EMAIL_ADDRESS>- Added Mongrel-spawning capabilities to script/process/spawner. Mongrel will
be the default choice if installed, otherwise FCGI is tried [DHH].
Examples:
spawner # starts instances on 8000, 8001, and 8002 using Mongrel if available
spawner fcgi # starts instances on 8000, 8001, and 8002 using FCGI
spawner mongrel -i 5 # starts instances on 8000, 8001, 8002, 8003, and 8004 using Mongrel
spawner -p 9100 -i 10 # starts 10 instances counting from 9100 to 9109 using Mongrel if available
spawner -p 9100 -r 5 # starts 3 instances counting from 9100 to 9102 and attempts start them every 5 seconds
Also note that script/process/reaper is Mongrel capable. So the combination
of spawner and reaper is a built-in alternative to something like
mongrel_cluster.
- Update scaffolding functional tests to use :id => people(:first) instead
of :id => 1. 5612<EMAIL_ADDRESS>- db:test:clone should remove existing tables before reloading the schema.
5607<EMAIL_ADDRESS>- Fixed migration generation for class names like ACLController 5197
<EMAIL_ADDRESS>- Added show_source_list and show_call_stack to breakpoints to make it easier
to get context 5476<EMAIL_ADDRESS>Examples:
irb(#<TopController:0x40822a68>):002:0> show_source_list
0001 class TopController < ApplicationController
0002 def show
0003-> breakpoint
0004 end
0005
0006 def index
0007 end
0008
=> "/path/to/rails/root/app/controllers/top_controller.rb"
irb(#<TopController:0x40822a68>):004:0> show_call_stack 3
vendor/rails/railties/lib/breakpoint.rb:536:in `breakpoint'
vendor/rails/railties/lib/breakpoint.rb:536:in `breakpoint'
app/controllers/top_controller.rb:3:in `show'
=> "/path/to/rails/root/app/controllers/top_controller.rb:3"
- Generate scaffold layout in subdirectory appropriate to its module nesting.
5511<EMAIL_ADDRESS>- Mongrel: script/server tails the rails log like it does with lighttpd.
Prefer mongrel over lighttpd. 5541<EMAIL_ADDRESS>- Don‘t assume Active Record is available. 5497<EMAIL_ADDRESS>- Mongrel: script/server works on Win32. 5499<EMAIL_ADDRESS>- Remove opts.on { |options[:option_name] } style hash assignment. Closes
4440<EMAIL_ADDRESS>- Mongrel support for script/server. 5475<EMAIL_ADDRESS>- Fix script/plugin so it doesn‘t barf on invalid URLs [Rick]
- Fix plugin install bug at dir with space. (closes 5359) [Yoshimasa NIWA]
- Fix bug with ‘script/plugin install’ so it reports unknown
plugin names correctly. [Rick]
- Added uninstall.rb hook to plugin handling, such that plugins have a way of
removing assets and other artifacts on removal 5003<EMAIL_ADDRESS>- Create temporary dirs relative to RAILS_ROOT when running script/server
5014<EMAIL_ADDRESS>- Minor tweak to dispatcher to use recognize instead of recognize!, as per
the new routes. [Jamis Buck]
- Make "script/plugin install" work with svn+ssh URLs. [Sam
Stephenson]
- Added lib/ to the directories that will get application docs generated
[DHH]
- Add observer generator. Closes 5167<EMAIL_ADDRESS>- Session migration generator obeys pluralize_table_names. 5145
<EMAIL_ADDRESS>- rake test:recent understands subdirectories. 2925<EMAIL_ADDRESS>- The app generator detects the XAMPP package‘s MySQL socket location.
3832<EMAIL_ADDRESS>- The app generator sets a session key in application.rb so apps running on
the same host may distinguish their cookies. 2967 [rcoder,
<EMAIL_ADDRESS>- Distinguish the spawners for different processes [DHH]
- Added -n/—process to script/process/spawner name the process pid
(default is dispatch) [DHH]
- Namespaced OrderedHash so the Rails implementation does not
clash with any others. (fixes 4911) [Julian Tarkhanov]
- Replace Ruby‘s deprecated append_features in favor of included.
[Marcel Molina Jr.]
- Added script/process/inspector to do simple process status information on
Rails dispatchers keeping pid
files in tmp/pids [DHH]
- Added pid file usage to script/process/spawner and script/process/reaper
along with a directive in default config/lighttpd.conf file to record the
pid. They will all save their pid file in tmp/pids [DHH]
*1.2.3* (March 12th, 2007)
- Ruby 1.8.6 compatibility
- Windows: include MinGW in RUBY_PLATFORM check. 2982<EMAIL_ADDRESS>Kaspar Schiess]
- Stop swallowing errors during rake test [Koz]
*1.2.2* (February 5th, 2007)
- Fix gem deprecation warnings, which also means depending on RubyGems 0.9.0+
[Chad Fowler]
- Require the dispatcher for Rails::Configuration#to_prepare. [Rick]
*1.2.1* (January 16th, 2007)
- Updated to Active Record 1.15.1, Action Pack 1.13.1, Action Mailer 1.3.1,
Action Web Service 1.2.1
*1.2.0* (January 16th, 2007)
- Update to Prototype 1.5.0. [Sam Stephenson]
- Generator: use destination path for diff tempfiles. 7015 [alfeld]
- Fixed that webrick would strip leading newlines and hang connection 4156
[psross]
- Ensure plugins are in the Dependencies.load_once_paths collection by
default. [Rick] If you really want your plugins to reload, add this to the
very top of init.rb:
Dependencies.load_once_paths.delete(lib_path)
- Fix scaffold_resource generator so it respects the —pretend argument
when creating the routes file. Closes 6852 [fearoffish]
- Fix Webrick Daemon dispatching bug regarding a bad current working
directory. Closes 4899 [Rick Olson]
- Make config.plugins affect the load path and the dependencies system.
Allows you to control plugin loading order, and keep disabled plugins off
the load path. [James Adam]
- Don‘t generate a components directory in new Rails apps. [Jeremy Kemper]
- Fixed script/process/spawner to work properly with Mongrel including in -r
(daemonize mode) [DHH]
- Deprecated the name route "root" as it‘ll be used as a
shortcut for map.connect ’’ in Rails 2.0 [DHH]
- Fixed that script/server running against Mongrel should tail the proper log
regardless of the environment [DHH]
- Update initializer to load Rails::VERSION as soon as possible. Closes 6698.
[Nicholas Seckar]
- Added ActiveRecord::Base.clear_active_connections! in development mode so
the database connection is not carried over from request to request. Some
databases won‘t reread the schema if that doesn‘t happen
(I‘m looking at you SQLite), so you have to restart the server after
each migration (= no fun) [DHH]
- Made RAILS_GEM_VERSION work for beta gems too, so specifying 1.1.6 will
give you <IP_ADDRESS>20 if available [DHH]
- Update to Prototype and script.aculo.us [5579]. [Sam Stephenson, Thomas
Fuchs]
- Made script/server work with -e and -d when using Mongrel [DHH]
- Make sure that exceptions which are thrown outside of the user code try
their best to be handeled in ApplicationController#rescue_action [Tobias
Luetke]
- Rails::VERSION::STRING should always be available without having to require
‘rails/version’. 6244 [fearoffish]
- Add grep-based fallback to reaper, to work in pidless setups [Jamis Buck]
- Only wrap request processing with our USR1 signal handler so FastCGI can
trap it and raise an exception while waiting for connections. Idle
processes exit immediately rather than waiting for another request; active
processes gracefully exit when the request is finished. [Jeremy Kemper]
- Alter prior change to use require_dependency instead of require_or_load.
Causes ApplicationController to be reloaded again. Closes 6587. [Nicholas
Seckar]
- Rake: use absolute paths to load lib and vendor tasks so they may be run
outside of RAILS_ROOT. 6584 [jchris]
- scaffold_resource generator uses _path named routes and head instead of
render :nothing => true. 6545 [Josh Susser]
- Generator can show diff on file collision to help you decide whether to
skip or overwrite. 6364 [jeffw, Jeremy Kemper]
- Generated directories are recursively svn added, like mkdir -p. 6416
[NeilW]
- resource and scaffold_resource generators add a restful route to
config/routes.rb [Jeremy Kemper]
- Revert environment changes for autoload_paths. [Koz]
- Clean up the output of rake stats, de-emphasise components and apis, and
remove the indents for tests [Koz]
- Added option to script/process/spawner of specifying the binding address
5133 [zsombor]
- Update environment.rb comments to include config.autoload_paths. Closes
6478 [caio]
- Update scaffold to use new form_tag block functionality. Closes 6480.
[BobSilva]
- Plugin generator: check for
class collisions. 4833<EMAIL_ADDRESS>- Mailer generator: handle mailers in modules, set mime_version in unit test.
[Jeremy Kemper]
- Set $KCODE to ‘u’ by default to enable the multibyte safe
String#chars proxy. [Koz]
- Added config.plugins to control which plugins are loaded 6269 [skaes]. By
default, everything in vendor/plugins will be loaded, but if you specify
config.plugins, only those will be loaded. Example:
config.plugins = %w[ routing_navigator simply_helpful ]
- Clean up html on included error pages. [Tim Lucas]
- Fixed default 404.html and 500.htmls to remove extreme ugliness and include
human language [DHH]
- Update to latest Prototype and script.aculo.us trunk versions [Thomas
Fuchs]
- PostgreSQL: db:test:purge closes open database connections first. 6236
[alex]
- Fixed test:uncommitted on Windows (backslash issue) 4999
<EMAIL_ADDRESS>- Fixed migration creation to work with namespaced models, so script/generate
model Gallery::Image will use create_table :gallery_images 6327 [BobSilva]
- Fixed rename_table on SQLite tables with indexes defined 5942
<EMAIL_ADDRESS>- Added default timeout setting of 5 seconds to SQLite3 database.yml
configurations [DHH]
- Added generated attribute options to script/generate model, like the one
found in scaffold_resource and resource [DHH]. Examples:
./script/generate model post title:string created_on:date body:text published:boolean
- Added script/generate resource which works just like scaffold_resource, but
creates empty placeholders instead of predefined [DHH]
- script/runner can run files, pass on arguments, and be used as a shebang.
6286 [Tuxie, dlpond]
#!/usr/bin/env /path/to/my/app/script/runner
# Example: just start using your models as if you are in script/console
Product.find(:all).each { |product| product.check_inventory }
- Look for rake tasks in plugin subdirs. 6259 [obrie]
- Added map.connect ’:controller/:action/:id.:format’ as a
default route to config/routes.rb [DHH]
- session_migration generator adds an index on updated_at. 6207 [grg]
- script/server creates the tmp/pids directory. 6204 [jonathan]
- Fix script/console —sandbox for internal transactions changes. 5738
<EMAIL_ADDRESS><EMAIL_ADDRESS>- Remove the uncanny default of adding all app/models/*/ directories to the
load path. This change will break application which expect the current
behavior. As
documented in initializer.rb, the workaround is:
config.autoload_paths += Dir[RAILS_ROOT + '/app/models/*/']
References 6031. [Nicholas Seckar]
- Update to script.aculo.us 1.6.3 [Thomas Fuchs]
- Formally Deprecate the old rake tasks. [Koz]
- Thoroughly test the FCGI dispatcher. 5970 [Kevin Clark]
- Remove Dir.chdir in the Webrick DispatchServlet#initialize method. Fix bad
path errors when trying to load config/routes.rb. [Rick Olson]
- Tighten rescue clauses. 5985<EMAIL_ADDRESS>- Cleaning up tests. [Kevin Clark, Jeremy Kemper]
- Add Dependencies.load_once_paths. [Nicholas Seckar]
- Assign Routing.controller_paths; fix script/about and rails info
controller. [Nicholas Seckar]
- Don‘t warn dispatcher of Reloadable deprecations. [Nicholas Seckar]
- Rearrange application resetting and preparation, fix bug with leaking
subclasses hash in ActiveRecord::Base
[Rick Olson]
ActiveRecord::Base.reset_subclasses is called before Dependencies are
cleared and classes removed. ActiveRecord::Base.instantiate_observers is
called during a Dispatcher preparation callback.
- Add missing mock directories from the autoload_paths configuration. [Rick
Olson]
- Nested controller scaffolding also nests the generated layout. [iain d
broadfoot]
- Add "require ‘dispatcher’" to webrick server in the
continuing quest to squash webrick weirdness. [Nicholas Seckar]
- Add autoload_paths support to Initializer. [Nicholas Seckar]
- Fix Dispatcher.reset_application! so that AR subclasses are removed and
Observers re-initialized after Reloadable classes are removed.
Closes 5743. [Rick Olson]
- Clarify usage of script/plugin source. Closes 5344<EMAIL_ADDRESS>- Add Dispatcher.to_prepare and config.to_prepare to provide a pre-request
hook. [Nicholas Seckar]
- Tweak the Rails load order so
observers are loaded after plugins, and reloaded in development mode.
Closed 5279. [Rick Olson]
- Added that you can change the web server port in config/lighttpd.conf from
script/server —port/-p 5465<EMAIL_ADDRESS>- script/performance/profiler compatibility with the new ruby-prof, including
an option to choose the results printer. 5679<EMAIL_ADDRESS>- Fixed the failsafe response so it uses either the current recognized
controller or ApplicationController. [Rick Olson]
- Make sure script/reaper only reaps dispatcher pids by default, and not the
spawner‘s pid. [Jamis Buck]
- Fix script/plugin about so it uses about.yml and not meta.yml. [James Adam]
- Dispatcher processes rescued actions with the same controller that
processed the request. 4625<EMAIL_ADDRESS>- rails -d frontbase to create a new project with a frontbase database.yml.
4945<EMAIL_ADDRESS>- Ensure the logger is initialized. 5629<EMAIL_ADDRESS>- Added Mongrel-spawning capabilities to script/process/spawner. Mongrel will
be the default choice if installed, otherwise FCGI is tried [DHH].
Examples:
spawner # starts instances on 8000, 8001, and 8002 using Mongrel if available
spawner fcgi # starts instances on 8000, 8001, and 8002 using FCGI
spawner mongrel -i 5 # starts instances on 8000, 8001, 8002, 8003, and 8004 using Mongrel
spawner -p 9100 -i 10 # starts 10 instances counting from 9100 to 9109 using Mongrel if available
spawner -p 9100 -r 5 # starts 3 instances counting from 9100 to 9102 and attempts start them every 5 seconds
Also note that script/process/reaper is Mongrel capable. So the combination
of spawner and reaper is a built-in alternative to something like
mongrel_cluster.
- Update scaffolding functional tests to use :id => people(:first) instead
of :id => 1. 5612<EMAIL_ADDRESS>- db:test:clone should remove existing tables before reloading the schema.
5607<EMAIL_ADDRESS>- Fixed migration generation for class names like ACLController 5197
<EMAIL_ADDRESS>- Added show_source_list and show_call_stack to breakpoints to make it easier
to get context 5476<EMAIL_ADDRESS>Examples:
irb(#<TopController:0x40822a68>):002:0> show_source_list
0001 class TopController < ApplicationController
0002 def show
0003-> breakpoint
0004 end
0005
0006 def index
0007 end
0008
=> "/path/to/rails/root/app/controllers/top_controller.rb"
irb(#<TopController:0x40822a68>):004:0> show_call_stack 3
vendor/rails/railties/lib/breakpoint.rb:536:in `breakpoint'
vendor/rails/railties/lib/breakpoint.rb:536:in `breakpoint'
app/controllers/top_controller.rb:3:in `show'
=> "/path/to/rails/root/app/controllers/top_controller.rb:3"
- Generate scaffold layout in subdirectory appropriate to its module nesting.
5511<EMAIL_ADDRESS>- Mongrel: script/server tails the rails log like it does with lighttpd.
Prefer mongrel over lighttpd. 5541<EMAIL_ADDRESS>- Don‘t assume Active Record is available. 5497<EMAIL_ADDRESS>- Mongrel: script/server works on Win32. 5499<EMAIL_ADDRESS>- Remove opts.on { |options[:option_name] } style hash assignment. Closes
4440<EMAIL_ADDRESS>- Mongrel support for script/server. 5475<EMAIL_ADDRESS>- Fix script/plugin so it doesn‘t barf on invalid URLs [Rick]
- Fix plugin install bug at dir with space. (closes 5359) [Yoshimasa NIWA]
- Fix bug with ‘script/plugin install’ so it reports unknown
plugin names correctly. [Rick]
- Added uninstall.rb hook to plugin handling, such that plugins have a way of
removing assets and other artifacts on removal 5003<EMAIL_ADDRESS>- Create temporary dirs relative to RAILS_ROOT when running script/server
5014<EMAIL_ADDRESS>- Minor tweak to dispatcher to use recognize instead of recognize!, as per
the new routes. [Jamis Buck]
- Make "script/plugin install" work with svn+ssh URLs. [Sam
Stephenson]
- Added lib/ to the directories that will get application docs generated
[DHH]
- Add observer generator. Closes 5167<EMAIL_ADDRESS>- Session migration generator obeys pluralize_table_names. 5145
<EMAIL_ADDRESS>- rake test:recent understands subdirectories. 2925<EMAIL_ADDRESS>- The app generator detects the XAMPP package‘s MySQL socket location.
3832<EMAIL_ADDRESS>- The app generator sets a session key in application.rb so apps running on
the same host may distinguish their cookies. 2967 [rcoder,
<EMAIL_ADDRESS>- Distinguish the spawners for different processes [DHH]
- Added -n/—process to script/process/spawner name the process pid
(default is dispatch) [DHH]
- Namespaced OrderedHash so the Rails implementation does not
clash with any others. (fixes 4911) [Julian Tarkhanov]
- Replace Ruby‘s deprecated append_features in favor of included.
[Marcel Molina Jr.]
- Added script/process/inspector to do simple process status information on
Rails dispatchers keeping pid
files in tmp/pids [DHH]
- Added pid file usage to script/process/spawner and script/process/reaper
along with a directive in default config/lighttpd.conf file to record the
pid. They will all save their pid file in tmp/pids [DHH]
*1.1.6* (August 10th, 2006)
- Additional security patch
*1.1.5* (August 8th, 2006)
- Mention in docs that config.frameworks doesn‘t work when getting Rails via Gems. 4857 [Alisdair
McDiarmid]
- Change the scaffolding layout to use yield rather than @content_for_layout.
[Marcel Molina Jr.]
- Includes critical security patch
*1.1.4* (June 29th, 2006)
- Remove use of opts.on { |options[:name] } style hash assignment. References
4440<EMAIL_ADDRESS>- Updated to Action Pack 1.12.3, ActionWebService 1.1.4, ActionMailer 1.2.3
*1.1.3* (June 27th, 2006)
- Updated to Active Record 1.14.3, Action Pack 1.12.2, ActionWebService
1.1.3, ActionMailer 1.2.2
*1.1.2* (April 9th, 2006)
- Mention in docs that config.frameworks doesn‘t work when getting Rails via Gems. Closes 4857.
[Alisdair McDiarmid]
- Change the scaffolding layout to use yield rather than @content_for_layout.
[Marcel Molina Jr.]
- Added rake rails:update:configs to update config/boot.rb from the latest
(also included in rake rails:update) [DHH]
- Fixed that boot.rb would set RAILS_GEM_VERSION twice, not respect an
uncommented RAILS_GEM_VERSION line, and not use require_gem [DHH]
*1.1.1* (April 6th, 2006)
- Enhances plugin#discover allowing it to discover svn:// like URIs (closes
4565<EMAIL_ADDRESS>- Update to Prototype 1.5.0_rc0 [Sam Stephenson]
- Fixed that the -r/—ruby path option of the rails command was not
being respected 4549<EMAIL_ADDRESS>- Added that Dispatcher exceptions should not be shown to the user unless a
default log has not been configured. Instead show public/500.html [DHH]
- Fixed that rake clone_structure_to_test should quit on pgsql if the dump is
unsuccesful 4585<EMAIL_ADDRESS>- Fixed that rails —version should have the return code of 0 (success)
4560<EMAIL_ADDRESS>- Install alias so Rails::InfoController is accessible at /rails_info. Closes
4546. [Nicholas Seckar]
- Fixed that spawner should daemonize if running in repeat mode [DHH]
- Added TAG option for rake rails:freeze:edge, so you can say rake
rails:freeze:edge TAG=rel_1-1-0 to lock to the 1.1.0 release [DHH]
- Applied Prototype $() performance patches (4465, 4477) and updated
script.aculo.us [Sam Stephenson, Thomas Fuchs]
- Use —simple-prompt instead of —prompt-mode simple for console
compatibility with Windows/Ruby 1.8.2 4532<EMAIL_ADDRESS>- Make Rails::VERSION implicitly loadable 4491. [Nicholas Seckar]
- Fixed rake rails:freeze:gems 4518<EMAIL_ADDRESS>- Added -f/—freeze option to rails command for freezing the application
to the Rails version it was
generated with [DHH]
- Added gem binding of apps generated through the rails command to the gems
of they were generated with [Nicholas Seckar]
- Added expiration settings for JavaScript, CSS, HTML, and images to default
lighttpd.conf [DHH]
- Added gzip compression for JavaScript, CSS, and HTML to default
lighttpd.conf [DHH]
- Avoid passing escapeHTML non-string in Rails’ info controller
[Nicholas Seckar]
*1.1.0* (March 27th, 2006)
- Allow db:fixtures:load to load a subset of the applications fixtures. [Chad
Fowler]
ex.
rake db:fixtures:load FIXTURES=customers,plans
- Update to Prototype 1.5.0_pre1 [Sam Stephenson]
- Update to script.aculo.us 1.6 [Thomas Fuchs]
- Add an integration_test generator [Jamis Buck]
- Make all ActionView helpers available in the console from the helper method
for debugging purposes. n.b.: Only an 80% solution. Some stuff won‘t
work, most will. [Marcel Molina Jr.]
ex.
>> puts helper.options_for_select([%w(a 1), %w(b 2), %w(c 3)])
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
=> nil
- Replaced old session rake tasks with db:sessions:create to generate a
migration, and db:sessions:clear to remove sessions. [Rick Olson]
- Reject Ruby 1.8.3 when loading Rails; extract version checking
code. [Chad Fowler]
- Remove explicit loading of RailsInfo and RailsInfoController. [Nicholas
Seckar]
- Move RailsInfo and RailsInfoController to Rails::Info and
Rails::InfoController. [Nicholas Seckar]
- Extend load path with Railties’ builtin directory to make adding
support code easy. [Nicholas Seckar]
- Fix the rails_info controller by explicitly loading it, and marking it as
not reloadable. [Nicholas Seckar]
- Fixed rails:freeze:gems for Windows 3274<EMAIL_ADDRESS>- Added ‘port open?’ check to the spawner when running in repeat
mode so we don‘t needlessly boot the dispatcher if the port is
already in use anyway 4089<EMAIL_ADDRESS>- Add verification to generated scaffolds, don‘t allow get for unsafe
actions [Michael Koziarski]
- Don‘t replace application.js in public/javascripts if it already
exists [Cody Fauser]
- Change test:uncommitted to delay execution of `svn status` by using
internal Rake API‘s. [Nicholas Seckar]
- Use require_library_or_gem to load rake in commands/server.rb. Closes 4205.
<EMAIL_ADDRESS>- Use the Rake API instead of shelling out to create the tmp directory in
commands/server.rb. [Chad Fowler]
- Added a backtrace to the evil WSOD (White Screen of Death). Closes 4073.
TODO: Clearer exceptions [Rick Olson]
- Added tracking of database and framework versions in script/about 4088
<EMAIL_ADDRESS>Olson]
- Added public/javascripts/application.js as a sample since it‘ll
automatically be included in javascript_include_tag :defaults [DHH]
- Added socket cleanup for lighttpd, both before and after [DHH]
- Added automatic creation of tmp/ when running script/server [DHH]
- Added silence_stream that‘ll work on both STDERR or STDOUT or any
other stream and deprecated silence_stderr in the process [DHH]
- Added reload! method to script/console to reload all models and others that
include Reloadable without quitting the console 4056<EMAIL_ADDRESS>- Added that rake rails:freeze:edge will now just export all the contents of
the frameworks instead of just lib, so stuff like rails:update:scripts,
rails:update:javascripts, and script/server on lighttpd still just works
4047 [DHH]
- Added fix for upload problems with lighttpd from Safari/IE to
config/lighttpd.conf 3999<EMAIL_ADDRESS>- Added test:uncommitted to test changes since last checkin to Subversion
4035<EMAIL_ADDRESS>- Help script/about print the correct svn revision when in a non-English
locale. 4026<EMAIL_ADDRESS>- Add ‘app’ accessor to script/console as an instance of
Integration::Session [Jamis Buck]
- Generator::Base#usage takes an optional message argument which defaults to
Generator::Base#usage_message. [Jeremy Kemper]
- Remove the extraneous AR::Base.threaded_connections setting from the
webrick server. [Jeremy Kemper]
- Add integration test support to app generation and testing [Jamis Buck]
- Added namespaces to all tasks, so for example load_fixtures is now
db:fixtures:load. All the old task names are still valid, they just point
to the new namespaced names. "rake -T" will only show the
namespaced ones, though [DHH]
- CHANGED DEFAULT: ActiveRecord::Base.schema_format is now :ruby by default
instead of :sql. This means that we‘ll assume you want to live in the
world of db/schema.rb where the grass is green and the girls are pretty. If
your schema contains un-dumpable elements, such as constraints or
database-specific column types, you just got an invitation to either 1)
patch the dumper to include foreign key support, 2) stop being db specific,
or 3) just change the default in config/environment.rb to
config.active_record.schema_format = :sql — we even include an
example for that on new Rails
skeletons now. Brought to you by the federation of opinionated framework
builders! [DHH]
- Added -r/—repeat option to script/process/spawner that offers the
same loop protection as the spinner did. This deprecates the
script/process/spinner, so it‘s no longer included in the default Rails skeleton, but still
available for backwards compatibility 3461<EMAIL_ADDRESS>- Added collision option to template generation in generators 3329
<EMAIL_ADDRESS>Examples:
m.template "stuff.config" , "config/stuff.config" , :collision => :skip
m.template "auto-stamping", "config/generator.log", :collision => :force
- Added more information to script/plugin‘s doings to ease debugging
3755 [Rick Olson]
- Changed the default configuration for lighttpd to use tmp/sockets instead
of log/ for the FastCGI sockets [DHH]
- Added a default configuration of the FileStore for fragment caching if
tmp/cache is available, which makes action/fragment caching ready to use
out of the box with no additional configuration [DHH]
- Changed the default session configuration to place sessions in
tmp/sessions, if that directory is available, instead of /tmp (this
essentially means a goodbye to 9/10 White Screen of Death errors and should
have web hosting firms around the world cheering) [DHH]
- Added tmp/sessions, tmp/cache, and tmp/sockets as default directories in
the Rails skeleton [DHH]
- Added that script/generate model will now automatically create a migration
file for the model created. This can be turned off by calling the generator
with —skip-migration [DHH]
- Added -d/—database option to the rails command, so you can do
"rails —database=sqlite2 myapp" to start a new application
preconfigured to use SQLite2 as the database. Removed the configuration
examples from SQLite and PostgreSQL from the default MySQL configuration
[DHH]
- Allow script/server -c /path/to/lighttpd.conf [Jeremy Kemper]
- Remove hardcoded path to reaper script in script/server [Jeremy Kemper]
- Update script.aculo.us to V1.5.3 [Thomas Fuchs]
- Added SIGTRAP signal handler to RailsFCGIHandler
that‘ll force the process into a breakpoint after the next request.
This breakpoint can then be caught with script/breakpointer and give you
access to the Ruby image inside that process. Useful for debugging memory
leaks among other things [DHH]
- Changed default lighttpd.conf to use CWD from lighttpd 1.4.10 that allows
the same configuration to be used for both detach and not. Also ensured
that auto-repeaping of FCGIs only happens when lighttpd is not detached.
[DHH]
- Added Configuration#after_initialize for registering a block which gets
called after the framework is fully initialized. Useful for things like
per-environment configuration of plugins. [Michael Koziarski]
- Added check for RAILS_FRAMEWORK_ROOT constant that allows the Rails framework to be found in a
different place than vendor/rails. Should be set in boot.rb. [DHH]
- Fixed that static requests could unlock the mutex guarding dynamic requests
in the WEBrick servlet 3433<EMAIL_ADDRESS>- Fixed documentation tasks to work with Rake 0.7.0 3563
<EMAIL_ADDRESS>- Update to Prototype 1.5.0_pre0 [Sam Stephenson]
- Sort the list of plugins so we load in a consistent order [Rick Olson]
- Show usage when script/plugin is called without arguments<EMAIL_ADDRESS>- Corrected problems with plugin loader where plugins set ‘name’
incorrectly 3297<EMAIL_ADDRESS>- Make migration generator only report on exact duplicate names, not partial
dupliate names. 3442<EMAIL_ADDRESS>Marcel Molina Jr.]
- Fix typo in mailer generator USAGE. 3458<EMAIL_ADDRESS>- Ignore version mismatch between pg_dump and the database server. 3457
<EMAIL_ADDRESS>- Reap FCGI processes after lighttpd exits. [Sam Stephenson]
- Honor ActiveRecord::Base.pluralize_table_names when creating and destroying
session store table. 3204<EMAIL_ADDRESS>Marcel Molina Jr.]
*1.0.0* (December 13th, 2005)
- Update instructions on how to find and install generators. 3172. [Chad
Fowler]
- Generator looks in vendor/generators also. [Chad Fowler]
- Generator copies files in binary mode. 3156<EMAIL_ADDRESS>- Add builtin/ to the gemspec. Closes 3047. [Nicholas Seckar, Sam Stephenson]
- Add install.rb file to plugin generation which is loaded, if it exists,
when you install a plugin. [Marcel Molina Jr.]
- Run initialize_logger in script/lighttpd to ensure the log file exists
before tailing it. [Sam Stephenson]
- Make load_fixtures include csv fixtures. 3053<EMAIL_ADDRESS>- Fix freeze_gems so that the latest rails version is dumped by default.
[Nicholas Seckar]
- script/plugin: handle root paths and plugin names which contain spaces.
2995<EMAIL_ADDRESS>- Model generator: correct relative path to test_helper in unit test. [Jeremy
Kemper]
- Make the db_schema_dump task honor the SCHEMA environment variable if
present the way db_schema_import does. 2931. [Blair Zajac]
- Have the lighttpd server script report the actual ip to which the server is
bound. 2903. [Adam]
- Add plugin library directories to the load path after the lib directory so
that libraries in the lib directory get precedence. 2910.
<EMAIL_ADDRESS>- Make help for the console command more explicit about how to specify the
desired environment in which to run the console. 2911. [anonymous]
- PostgreSQL: the purge_test_database Rake task shouldn‘t explicitly
specify the template0 template when creating a fresh test database. 2964
<EMAIL_ADDRESS>- Introducing the session_migration generator. Creates an add_session_table
migration. Allows generator to specify migrations directory. 2958, 2960
[Rick Olson]
- script/console uses RAILS_ENV environment variable if present. 2932 [Blair
Zajac<EMAIL_ADDRESS>- Windows: eliminate the socket option in database.yml. 2924 [Wayne Vucenic
<EMAIL_ADDRESS>- Eliminate nil from newly generated logfiles. 2927 [Blair Zajac
<EMAIL_ADDRESS>- Rename Version constant to VERSION. 2802 [Marcel Molina Jr.]
- Eliminate Subversion dependencies in scripts/plugin. Correct install
options. Introduce —force option to reinstall a plugin. Remove
useless —long option for list. Use —quiet to quiet the download
output and —revision to update to a specific svn revision. 2842 [Chad
Fowler, Rick Olson]
- SQLite: the clone_structure_to_test and purge_test_database Rake tasks
should always use the test environment. 2846 [Rick Olson]
- Make sure that legacy db tasks also reference :database for SQLite 2830
<EMAIL_ADDRESS>- Pass FILE when evaluating plugins’ init.rb. 2817
<EMAIL_ADDRESS>- Better svn status matching for generators. 2814 [François Beausoleil
<EMAIL_ADDRESS>Blair Zajac
<EMAIL_ADDRESS>- Don‘t reload routes until plugins have been loaded so they have a
chance to extend the routing capabilities [DHH]
- Don‘t detach or fork for script/server tailing [Nicholas Seckar]
- Changed all script/* to use #!/usr/bin/env ruby instead of hard-coded Ruby
path. public/dispatcher.* still uses the hard-coded path for compatibility
with web servers that don‘t have Ruby in path [DHH]
- Force RAILS_ENV to be "test" when running tests, so that
ENV["RAILS_ENV"] = "production" in
config/environment.rb doesn‘t wreck havok [DHH] 2660
- Correct versioning in :freeze_gems Rake task. 2778<EMAIL_ADDRESS>Jeremy Kemper]
- Added an omnipresent RailsInfoController with a properties action that
delivers an HTML rendering of Rails::Info (but only when local_request? is
true). Added a new default index.html which fetches this with Ajax. [Sam
Stephenson]
*0.14.3 (RC4)* (November 7th, 2005)
- Add ‘add_new_scripts’ rake task for adding new rails scripts to
script/* [Jamis Buck]
- Remove bogus hyphen from script/process/reaper calls to ‘ps’.
2767 [anonymous]
- Copy lighttpd.conf when it is first needed, instead of on app creation
[Jamis Buck]
- Use require_library_or_gem ‘fcgi’ in script/server [Sam
Stephenson]
- Added default lighttpd config in config/lighttpd.conf and added a default
runner for lighttpd in script/server (works like script/server, but using
lighttpd and FastCGI). It will use lighttpd if available, otherwise
WEBrick. You can force either or using ‘script/server lighttpd’
or ‘script/server webrick’ [DHH]
- New configuration option config.plugin_paths which may be a single path
like the default ‘vendor/plugins’ or an array of paths:
[‘vendor/plugins’, ‘lib/plugins’]. [Jeremy Kemper]
- Plugins are discovered in nested paths, so you can organize your plugins
directory as you like. [Jeremy Kemper]
- Refactor load_plugin from load_plugins. 2757<EMAIL_ADDRESS>- Make use of silence_stderr in script/lighttpd, script/plugin, and
Rails::Info [Sam Stephenson]
- Enable HTTP installation of plugins when svn isn‘t avaialable. Closes
2661. [Chad Fowler]
- Added script/about to display formatted Rails::Info output [Sam Stephenson]
- Added Rails::Info to catalog assorted information about a Rails application‘s
environment [Sam Stephenson]
- Tail the logfile when running script/server lighttpd in the foreground [Sam
Stephenson]
- Try to guess the port number from config/lighttpd.conf in script/server
lighttpd [Sam Stephenson]
- Don‘t reap spawn-fcgi. 2727<EMAIL_ADDRESS>- Reaper knows how to find processes even if the dispatch path is very long.
2711<EMAIL_ADDRESS>- Make fcgi handler respond to TERM signals with an explicit exit [Jamis
Buck]
- Added demonstration of fixture use to the test case generated by the model
generator [DHH]
- If specified, pass PostgreSQL client character encoding to createdb. 2703
[Kazuhiko<EMAIL_ADDRESS>- Catch CGI multipart parse errors. Wrap dispatcher internals in a failsafe
response handler. [Jeremy Kemper]
- The freeze_gems Rake task accepts the VERSION environment variable to
decide which version of Rails
to pull into vendor/rails. [Chad Fowler, Jeremy Kemper]
- Removed script.aculo.us.js, builder.js and slider.js (preperation for move
of scriptaculous extensions to plugins, core scriptaculous will remain in
Railties) [Thomas Fuchs]
- The freeze_edge Rake task does smarter svn detection and can export a
specific revision by passing the REVISION environment variable. For
example: rake freeze_edge REVISION=1234. 2663 [Rick Olson]
- Comment database.yml and include PostgreSQL and SQLite examples. [Jeremy
Kemper]
- Improve script/plugin on Windows. 2646 [Chad Fowler]
- The *_plugindoc Rake tasks look deeper into the plugins’ lib
directories. 2652<EMAIL_ADDRESS>- The PostgreSQL :db_structure_dump Rake task limits its dump to the schema
search path in database.yml. [Anatol Pomozov
<EMAIL_ADDRESS>- Add task to generate rdoc for all installed plugins. [Marcel Molina]
- Update script.aculo.us to V1.5_rc4 [Thomas Fuchs]
- Add default Mac + DarwinPorts MySQL socket locations to the app generator.
[Jeremy Kemper]
- Migrations may be destroyed: script/destroy migration foo. 2635 [Charles M.
Gerungan<EMAIL_ADDRESS>Jamis Buck, Jeremy Kemper]
- Added that plugins can carry generators and that generator stub files can
be created along with new plugins using script/generate plugin <name>
—with-generator [DHH]
- Removed app/apis as a default empty dir since its automatically created
when using script/generate web_service [DHH]
- Added script/plugin to manage plugins (install, remove, list, etc) [Ryan
Tomayko]
- Added test_plugins task: Run the plugin tests in vendor/plugins/**/test (or
specify with PLUGIN=name) [DHH]
- Added plugin generator to create a stub structure for a new plugin in
vendor/plugins (see "script/generate plugin" for help) [DHH]
- Fixed scaffold generator when started with only 1 parameter 2609
<EMAIL_ADDRESS>- rake should run functional tests even if the unit tests have failures [Jim
Weirich]
- Back off cleanpath to be symlink friendly. Closes 2533 [Nicholas Seckar]
- Load rake task files in alphabetical order so you can build dependencies
and count on them 2554 [Blair Zajac]
*0.14.2 (RC3)* (October 26th, 2005)
- Constants set in the development/test/production environment file are set
in Object
- Scaffold generator pays attention to the controller name. 2562
<EMAIL_ADDRESS>- Include tasks from vendor/plugins/*/tasks in the Rakefile 2545 [Rick Olson]
*0.14.1 (RC2)* (October 19th, 2005)
- Don‘t clean RAILS_ROOT on windows
- Remove trailing ’/’ from RAILS_ROOT [Nicholas Seckar]
- Upgraded to Active Record 1.12.1 and Action Pack 1.10.1
*0.14.0 (RC1)* (October 16th, 2005)
- Moved generator folder from RAILS_ROOT/generators to
RAILS_ROOT/lib/generators [Tobias Luetke]
- Fix rake dev and related commands [Nicholas Seckar]
- The rails command tries to deduce your MySQL socket by running
`mysql_config


This is a sample application. It doesn't Tweet by itself, rather it uses functionality exposed by a plethora of applications.
This sample application is designed to show you how easy it is to interact with external applications, that have registered for the "shorten" action.
The application starts by creating the browser channel, it then attempts to discover some URL shorteners (or services that offer "shorten"). If it finds any the list is populated.
I have not tried to be too clever, for example the app doesn't automatically shorten a url it finds, instead, just click the "Shorten URL's" button. This method will then work with the currently selected shortener.


prelims
folder. Note that this was needed since using the Knit button in RStudio with {thesisdown} does not appear to allow for the rmd_files
argument to be used in building theses.index.Rmd
to ensure references pass through in Gitbookflights.csv
included data to prepare for sending to CRANthesisdown::gitbook()
(#84)Imports
instead of Depends
for best practice
index
instead of skeleton
to match with gitbook requirements00--prelim.Rmd
and changed abstract.Rmd
to 00-abstract.Rmd
to match with renaming of files so that index.Rmd
always comes last alphabetically


| pluralization {cli} | R Documentation |
CLI pluralization
cli has tools to create messages that are printed correctly in singular and plural forms. This usually requires minimal extra work, and increases the quality of the messages greatly. In this document we first show some pluralization examples that you can use as guidelines. Hopefully these are intuitive enough, so that they can be used without knowing the exact cli pluralization rules.
If you need pluralization without the semantic cli functions, see the
pluralize()
function.
In the simplest case the message contains a single {}
glue
substitution, which specifies the quantity that is used to select
between the singular and plural forms. Pluralization uses markup that is
similar to glue, but uses the {?
and }
delimiters:
library(cli) nfile <- 0; cli_text("Found {nfile} file{?s}.")
#> Found 0 files.
nfile <- 1; cli_text("Found {nfile} file{?s}.")
#> Found 1 file.
nfile <- 2; cli_text("Found {nfile} file{?s}.")
#> Found 2 files.
Here the value of nfile
is used to decide whether the singular or
plural form of file
is used. This is the most common case for English
messages.
If the plural form is more difficult than a simple s
suffix, then the
singular and plural forms can be given, separated with a forward slash:
ndir <- 1; cli_text("Found {ndir} director{?y/ies}.")
#> Found 1 directory.
ndir <- 5; cli_text("Found {ndir} director{?y/ies}.")
#> Found 5 directories.
For readability, it is better to use the no()
helper function to
include a count in a message. no()
prints the word “no” if the count
is zero, and prints the numeric count otherwise:
nfile <- 0; cli_text("Found {no(nfile)} file{?s}.")
#> Found no files.
nfile <- 1; cli_text("Found {no(nfile)} file{?s}.")
#> Found 1 file.
nfile <- 2; cli_text("Found {no(nfile)} file{?s}.")
#> Found 2 files.
With the auto-collapsing feature of cli it is easy to include a list of objects in a message. When cli interprets a character vector as a pluralization quantity, it takes the length of the vector:
pkgs <- "pkg1" cli_text("Will remove the {.pkg {pkgs}} package{?s}.")
#> Will remove the pkg1 package.
pkgs <- c("pkg1", "pkg2", "pkg3") cli_text("Will remove the {.pkg {pkgs}} package{?s}.")
#> Will remove the pkg1, pkg2, and pkg3 packages.
Note that the length is only used for non-numeric vectors (when
is.numeric(x)
return FALSE
). If you want to use the length of a
numeric vector, convert it to character via as.character()
.
You can combine collapsed vectors with “no”, like this:
pkgs <- character() cli_text("Will remove {?no/the/the} {.pkg {pkgs}} package{?s}.")
#> Will remove no packages.
pkgs <- c("pkg1", "pkg2", "pkg3") cli_text("Will remove {?no/the/the} {.pkg {pkgs}} package{?s}.")
#> Will remove the pkg1, pkg2, and pkg3 packages.
When the pluralization markup contains three alternatives, like above, the first one is used for zero, the second for one, and the third one for larger quantities.
When the text contains multiple glue {}
substitutions, the one right
before the pluralization markup is used. For example:
nfiles <- 3; ndirs <- 1 cli_text("Found {nfiles} file{?s} and {ndirs} director{?y/ies}")
#> Found 3 files and 1 directory
This is sometimes not the the correct one. You can explicitly specify
the correct quantity using the qty()
function. This sets that quantity
without printing anything:
nupd <- 3; ntotal <- 10 cli_text("{nupd}/{ntotal} {qty(nupd)} file{?s} {?needs/need} updates")
#> 3/10 files need updates
Note that if the message only contains a single {}
substitution, then
this may appear before or after the pluralization markup. If the message
contains multiple {}
substitutions after pluralization markup, an
error is thrown.
Similarly, if the message contains no {}
substitutions at all, but has
pluralization markup, an error is thrown.
The exact rules of cli’s pluralization. There are two sets of rules. The
first set specifies how a quantity is associated with a {?}
pluralization markup. The second set describes how the {?}
is parsed
and interpreted.
{}
substitutions define quantities. If the value of a {}
substitution is numeric (i.e. is.numeric(x)
holds), then it has to
have length one to define a quantity. This is only enforced if the
{}
substitution is used for pluralization. The quantity is defined
as the value of {}
then, rounded with as.integer()
. If the value
of {}
is not numeric, then its quantity is defined as its length.
If a message has {?}
markup but no {}
substitution, an error is
thrown.
If a message has exactly one {}
substitution, its value is used as
the pluralization quantity for all {?}
markup in the message.
If a message has multiple {}
substitutions, then for each {?}
markup cli uses the quantity of the {}
substitution that precedes
it.
If a message has multiple {}
substitutions and has pluralization
markup without a preceding {}
substitution, an error is thrown.
Pluralization markup starts with {?
and ends with }
. It may not
contain {
and }
characters, so it may not contain {}
substitutions either.
Alternative words or suffixes are separated by /
.
If there is a single alternative, then nothing is used if
quantity == 1
and this single alternative is used if quantity != 1
.
If there are two alternatives, the first one is used for quantity == 1
, the second one for quantity != 1
(including 'quantity == 0
).
If there are three alternatives, the first one is used for quantity == 0
, the second one for quantity == 1
, and the third one
otherwise.
Other pluralization:
no()
,
pluralize()


[CHAPTER 327H]
PAIN PATIENT'S BILL OF RIGHTS
Section
327H-1 Pain patient's bill of rights; findings
327H-2 Bill of rights
Law Journals and Reviews
Holding Hawaii Nursing Facilities Accountable for the Inadequate Pain Management of Elderly Residents. 27 UH L. Rev. 233.


notarization fund: bLaBSUDFCBTLnTZNQs1xnos77j7oAPUt8C
dev fund: bDEV1RkHmDWx9PvHpyabcNQW2bJqk9Dt6J
4of7 Tony, Joker, Cris, gt, smk, CHMEX, Alright
both tested and ready to accept coins
Pinned a message.
blackjok3r05-Aug-19 08:59 AM
I think I made some good progress today on iguana. I have a network of only 6 nodes, but I found a few bugs with how utxos are sent and calcuated that may just fix all the issues.
3
blackjok3r05-Aug-19 09:16 AM
cant be 100% sure, but it seems that nodes are caculating best consensus litterally as soon as they select their utxos, which means that nodes who reposnd slower are simply ignored.
commenting the line out appears to have made a massive diffrence
daemonfox05-Aug-19 12:17 PM
ok
what line
would be nice to get more then 2-3 a day
ComputerGenie 👴👴👴05-Aug-19 12:27 PM
it's a secret line and you must be properly selected by the Illuminati, the masons, the deep state, and NWO all at the same time in order to be told
2
zatJUM05-Aug-19 12:39 PM
Russians too?
2
ComputerGenie 👴👴👴05-Aug-19 12:42 PM
the oligarchs joined the NWO a while back
daemonfox05-Aug-19 12:52 PM
its Monday I expect nothing less
also i dont know the "rules" of how a block is selected as notary and then what notaries get to be included. Seems random based on latency so a lot of missed chances for no reason other than geo location.
Maybe the NN system should rotate through the NNs and have each act as the first notary and the rest be on as received so all NNs get a min cycle?
ComputerGenie 👴👴👴05-Aug-19 12:57 PM
for no reason other than geo location.
that's the whole bit joker's been working on for 3 weeks
daemonfox05-Aug-19 12:58 PM
1440/22 right now would be avg expected
I cant think of any reason that cant work.
ComputerGenie 👴👴👴05-Aug-19 12:59 PM
code it up and submit a PR
daemonfox05-Aug-19 01:01 PM
i wish I had the knowledge to do so... I have zero idea how to code it for a PR
ComputerGenie 👴👴👴05-Aug-19 01:02 PM
and that's why it takes so long to fix, we currently only have 1 person working on that code
daemonfox05-Aug-19 01:02 PM
i would have to take time to learn what ive been hacking at instead so i knew what i was actually doing
and ive tried navigating some of these githubs before to find specific elements on my own and im bad at it(edited)
like frustratingly lol
but if thats where all Jokers commits are aimed recently that should be easy enough right?
so ill take a look and maybe something makes sense to me... its Monday who knows
ComputerGenie 👴👴👴05-Aug-19 01:06 PM
gets the sense that @daemonfox doesn't really get what's going on and what iguana is
daemonfox05-Aug-19 01:10 PM
that's exactly what i was insinuating when I said Id have to take time to learn what ive been hacking at so I actually understand it
So yes I do not have a full grasp of how Iguana works at all
and like someone said a few days ago... i didnt realize this was what I was getting into when I started playing the STAKED game... but im enjoying it and need to spend more time on it
ComputerGenie 👴👴👴05-Aug-19 01:13 PM
If you fully understand everything that iguana does and exactly how all of it works, you'll literally be the only one
iguana isn't just one app and many things can be borked by changing just 1 or 2 lines
it's a code base that has evolved over many years, both into and out of many things (keep in mind that the start params is the difference between being a NN app and being a mm trader app)(edited)
1
daemonfox05-Aug-19 01:15 PM
Im imagining SuperNET as a hyperconnected spaghetti network and made myself laugh
ComputerGenie 👴👴👴05-Aug-19 01:17 PM
fettuccine alfredo is a tasty dish
CrisF05-Aug-19 04:23 PM
Many thanks to @phm87 for donating a portion of his KMD NN mining to KMDLabs.
His generosity can be seen here
@daemonfox I'm working on it. I spent 24h straight working on this yesterday, its no easy task. I will spend probably another 15h on it today now I've had some sleep. I understand things arr not working great with the previous fix, but I have a new one that closes all known attack vectors with iguana and Also forces all nodes to agree to the average of the last 10 revcvmasks. This means that all online and working nodes must wait for all the nodes to respond to them before best mask is decided. If this works without breaking things with large amounts of nodes it will he a matter of days. If u really want u can try going back to an older commit.(edited)
1
2
daemonfox06-Aug-19 04:15 PM
TY for all you do Joker.
It seems to be behaving much better today
and I did a git pull for Iguana manually yesterday too so maybe something was still not in sync with my LABS and Iguana
blackjok3r06-Aug-19 04:20 PM
yeah iguans auto updates are not exactly reliable...
it just does git pull... and checks if there is a pull
not accurate atv all(edited)
phm8706-Aug-19 04:21 PM
On my KMDLabs NN setup, KMD stopped to work the morning and LABS stopped the afternoon. I don't know if other ppl had this problem. I'll try to find a log or a gdb backtrace
blackjok3r06-Aug-19 04:22 PM
I got mighty distracted today lol... I worked out how to validate vins inside iguana but its taking me a LONG time to get it actally working lol
daemonfox06-Aug-19 04:23 PM
is that leveraging nSPV?
blackjok3r06-Aug-19 04:23 PM
Yes I used the code from nSPV to do it... but its not compatible with the iguana data streuctures... so I have to convert it all over (edited)
phm8706-Aug-19 04:23 PM
Courage @blackjok3r You are one of our best code-warrior.  I did this yesterday : https://github.com/jl777/SuperNET/pull/1113
[ I will test your FSM branch on KMDLabs NN or my 3P srv. I failed to test it on a normal node (I have difficulties to identify address from the node because there is no NNaddress defined.) ](edited)
Now, I think that the iguana calls stopcoin and startcoin works without creating curl errors into iguanaTV.
Before this change, if we call stopcoin on iguana then we stop chips daemon, these errors...
blackjok3r06-Aug-19 04:26 PM
iguana is just hard... Until I get this working 70% properly all I will do is waste everyones time.
nice PR ther btw!
phm8706-Aug-19 04:28 PM
Thank you ^^
blackjok3r06-Aug-19 04:31 PM
So far I have:
1) iguana working with blocknotify for all dpowd coins. which means it no longer has to poll getchaintip constantly hundreds of times a second. (also it will update chaintip as soon as vblock arrives, reducing nodes starting dpow round at diffent times)
2) revcmask is required to have X nodes matching before they will create bestmask. This has a few issues though as I need some way of tracking the online nodes so it has a target to aim at.
3) almost have notariesfastverify from nSPV working in iguana, so if a notary is submitting bad sigs and breaking notarizations we cna ban them temporarily.(edited)
phm8706-Aug-19 04:33 PM
How to make sure that no malicious NN try to hack the point 2 ? Create bestmask with fewer nodes. What information brings the additional NN that is required to calculate the bestmask ?
blackjok3r06-Aug-19 04:33 PM
Its consensus code
if one node submits a bstmaks before the rest do, it wont match
so will be ignored
phm8706-Aug-19 04:34 PM
ok
so as far as there is no group of 13 malicious NN, it should be fine
blackjok3r06-Aug-19 04:34 PM
notaries are not really designed for there to be bad actors... bnut thest changes go quite a long way to make sure they cant
no
13 wont be enough
phm8706-Aug-19 04:35 PM
ok
blackjok3r06-Aug-19 04:35 PM
it stats at 48
and slowly reduce over time
until it gets to 13
but there needs to be a better way do it.
because notas could be very slow with the first attempt I made
if there are not many nodes online
phm8706-Aug-19 04:36 PM
I explained wrong : I mean what if a group of 13 malicious NN is using a special version of iguana ? (hopefully no NN is malicious this year)
Thank you for the explanations
blackjok3r06-Aug-19 04:38 PM
if 13 NN make their own network., they could make notarizations with it.... not sure what that would acheive tho
basically, there was a bug
phm8706-Aug-19 04:38 PM
yes
blackjok3r06-Aug-19 04:38 PM
that allowed bestmask to be calculated, before recvmask was fully known
I knew about this for a long time... but its been horrible a slow going to find it
had to learn many new skills
phm8706-Aug-19 04:40 PM
I also need to learn a lot to be able to do interesting stuff (now, I do simple things as the PR that I did)
blackjok3r06-Aug-19 04:42 PM
I had to learn all the bitwise stuff... not sure why I put it off for so long, really isnt that hard
blackjok3r06-Aug-19 04:55 PM
simple things like that are very helpful
phm8706-Aug-19 04:57 PM
Thank you. I feel appreciated
ComputerGenie 👴👴👴06-Aug-19 05:41 PM
the sooner you giter dun is the sooner I can notarize KMD with utility
blackjok3r06-Aug-19 05:48 PM
Well.... seems its hard forking I figured I may as well fix all of it...(edited)
getting somewhere finally lol..
daemonfox07-Aug-19 01:17 PM
damn i love seeing LABS PoS snowball like a downhil avalanche
ComputerGenie 👴👴👴07-Aug-19 02:03 PM
@daemonfox huh?
PHBA206107-Aug-19 02:22 PM
last time I saw that is when I was on my own fork
daemonfox07-Aug-19 03:10 PM
went to bed and hadnt staked a block in nearly 1K blocks... woke up to over a dozen new stakes
and even the 8 coin blocks are staking now
ComputerGenie 👴👴👴07-Aug-19 03:11 PM
can help you get less by turning his staking node back on if you like....
I've been really bad; I don't think I've had my staker running in like 2-3 weeks
Bar_F1sh_Rel07-Aug-19 04:52 PM
I'm up slightly - but not a huge amount.
CrisF07-Aug-19 06:59 PM
At this rate in 1 week I'll be back to the point I was at when I lost all my coins Fortunately I managed to get a few thousand back otherwise it would be much longer
Think green @ComputerGenie 👴👴👴 Save that mining energy!
ComputerGenie 👴👴👴07-Aug-19 07:22 PM
fek "green", there's still plenty of dead dinosaurs for me to burn up
1
blackjok3r08-Aug-19 07:38 AM
OK I am getting very close to needing tresters for this iguana. Finally have the sigcheck working, that took about an entire day
I will first spin up my own nodes using AWS to make sure what I have done actually works with lots of nodes.


Impact
Communication Channels
Movement and Identity
Shared values, purposes, & experiences that connect to Internet health
Movement Journey
Engagement and Action
People
Target Audience and Collaborators
Data and Platforms
Resources Required
Organizing
Remixed from Mozilla shared under a CC-BY License originally remixed from Lean Canvas Movement Building Campus


Ryan Leung
Home
About Me
Study
Programing
Skills
Outreach
Photo Works
Ryan Leung © 2017
Made by HTML5 | CSS3 | JavaScript | Bootstrap
Skills


Headed to the Elasticsearch meetup to speak with @WardCunningham about what my team's been building. Should be fun! http://www.meetup.com/The-Portland-ElasticSearch-Meetup-Group/events/228064228/
3/28/2016, 5:34:47 PM
Favs: 2
Retweets: 0
link--- layout: tweet ---
Headed to the Elasticsearch meetup to speak with @WardCunningham about what my team's been building. Should be fun! http://www.meetup.com/The-Portland-ElasticSearch-Meetup-Group/events/228064228/
3/28/2016, 5:34:47 PM
Favs: 2
Retweets: 0
link