5ba8aa5854
Commit 37d1429ab1d introduced the DummyERB to avoid loading the environment when running `rake -T`. The DummyCompiler simply replaced all output from `<%=` with a fixed string and removed everything else. This worked okay when it was used for YAML values. When using `<%=` within a YAML key, it caused an error in the YAML parser, making it impossible to use ERB as you would expect. For example a `database.yml` file containing the following should be possible: development: <% 5.times do |i| %> shard_<%= i %>: database: db/development_shard_<%= i %>.sqlite3 adapter: sqlite3 <% end %> Instead of using a broken ERB compiler we can temporarily use a `Rails.application.config` that does not raise an error when configurations are accessed which have not been set as described in #35468. This change removes the `DummyCompiler` and uses the standard `ERB::Compiler`. It introduces the `DummyConfig` which delegates all known configurations to the real `Rails::Application::Configuration` instance and returns a dummy string for everything else. This restores the full ERB capabilities without compromising on speed when generating the rake tasks for multiple databases. Deprecates `config.active_record.suppress_multiple_database_warning`. |
||
---|---|---|
.. | ||
app | ||
bin | ||
db/migrate | ||
lib | ||
test | ||
.gitignore | ||
actiontext.gemspec | ||
CHANGELOG.md | ||
MIT-LICENSE | ||
package.json | ||
Rakefile | ||
README.md | ||
rollup.config.js |
Action Text
Action Text brings rich text content and editing to Rails. It includes the Trix editor that handles everything from formatting to links to quotes to lists to embedded images and galleries. The rich text content generated by the Trix editor is saved in its own RichText model that's associated with any existing Active Record model in the application. Any embedded images (or other attachments) are automatically stored using Active Storage and associated with the included RichText model.
You can read more about Action Text in the Action Text Overview guide.
Development
The JavaScript for Action Text is distributed both as a npm module under @rails/actiontext and via the asset pipeline as actiontext.js (and we mirror Trix as trix.js). To ensure that the latter remains in sync, you must run yarn build
and checkin the artifacts whenever the JavaScript source or the Trix dependency is bumped. CSS changes must be brought over manually to app/assets/stylesheets/trix.css
License
Action Text is released under the MIT License.