Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #33829 from mtsmfm/encode-filename | Kasper Timm Hansen | 2018-09-23 | 1 | -1/+4 |
|\ | | | | | Encode Content-Disposition filenames on send_data and send_file | ||||
| * | Encode Content-Disposition filenames on send_data and send_file | Fumiaki MATSUSHIMA | 2018-09-13 | 1 | -1/+4 |
| | | |||||
* | | Configure Active Storage route prefix | Chris Bisnett | 2018-09-14 | 1 | -0/+1 |
|/ | | | | | | | | | | | Applications can configure the route prefix prepended to the Active Storage routes. By default this maintains the previous prefix `/rails/active_storage` but supports custom prefixes. Before this change the route for serving blobs is fixed to `/rails/active_storage/blobs/:signed_id/*filename`. After this change it's possible to configure the route to something like `/files/blobs/:signed_id/*filename`. | ||||
* | Handle only specifically relevant Azure HTTPErrors | Cameron Bothner | 2018-08-23 | 1 | -5/+7 |
| | | | | | | | | | The Azure gem uses `Azure::Core::Http::HTTPError` for everything: checksum mismatch, missing object, network unavailable, and many more. (https://www.rubydoc.info/github/yaxia/azure-storage-ruby/Azure/Core/Http/HTTPError). Rescuing that class obscures all sorts of configuration errors. We should check the type of error in those rescue blocks, and reraise when needed. | ||||
* | Revert "Merge pull request #33667 from ↵ | George Claghorn | 2018-08-23 | 1 | -13/+7 |
| | | | | | | | cbothner/azure-service-swallowing-all-errors" This reverts commit b204d167c5cfebd59f771d406178e371811ac43a, reversing changes made to de6a200f82a3de399fa685d583503bc88dbc5e9f. | ||||
* | Handle only specifically relevant Azure HTTPErrors | Cameron Bothner | 2018-08-23 | 1 | -7/+13 |
| | | | | | | | | | The Azure gem uses `Azure::Core::Http::HTTPError` for everything: checksum mismatch, missing object, network unavailable, and many more. (https://www.rubydoc.info/github/yaxia/azure-storage-ruby/Azure/Core/Http/HTTPError). Rescuing that class obscures all sorts of configuration errors. We should check the type of error in those rescue blocks, and reraise when needed. | ||||
* | Translate service-specific missing object exceptions into a generic one | Cameron Bothner | 2018-08-21 | 5 | -18/+72 |
| | | | | | | | | | `ActiveStorage::Blob#download` and `ActiveStorage::Blob#open` raise `ActiveStorage::FileNotFoundError` when the corresponding file is missing from the storage service. Services translate service-specific missing object exceptions (e.g. `Google::Cloud::NotFoundError` for the GCS service and `Errno::ENOENT` for the disk service) into `ActiveStorage::FileNotFoundError`. | ||||
* | Document all Active Storage error classes [ci skip] | George Claghorn | 2018-08-10 | 1 | -0/+8 |
| | |||||
* | Add a generic base class for Active Storage exceptions | George Claghorn | 2018-08-10 | 1 | -4/+7 |
| | | | | | | Closes #33292. [Andrei Makarov & George Claghorn] | ||||
* | Extract transformers | George Claghorn | 2018-08-10 | 3 | -0/+119 |
| | |||||
* | Camelize instead of classifying | George Claghorn | 2018-08-06 | 1 | -1/+1 |
| | | | | | | | Avoid mangling service names that end in S: "GCS".classify # => "GC" "GCS".camelize # => "GCS" | ||||
* | Improve ActiveStorage service adapter error handling | Joel Taylor | 2018-08-06 | 1 | -1/+3 |
| | |||||
* | Fix uploading Tempfiles to Azure Storage | George Claghorn | 2018-08-03 | 1 | -1/+1 |
| | | | | Closes #32530. | ||||
* | Remove another unused require | George Claghorn | 2018-08-02 | 1 | -2/+0 |
| | |||||
* | Remove unused require | George Claghorn | 2018-08-01 | 1 | -2/+0 |
| | |||||
* | Ignore concurrently-deleted files when deleting by prefix from GCS | George Claghorn | 2018-07-30 | 1 | -1/+7 |
| | |||||
* | Update ActiveStorage::Previewer docs | George Claghorn | 2018-07-29 | 1 | -2/+2 |
| | | | | PDFPreviewer became MuPDFPreviewer in 0b717c2. Previewers are simple enough that we can just provide a single example. | ||||
* | Log streaming downloads | George Claghorn | 2018-07-26 | 1 | -0/+2 |
| | |||||
* | Remove unused attribute | George Claghorn | 2018-07-21 | 2 | -5/+5 |
| | |||||
* | Fix replacing many attachments via assign and attach | George Claghorn | 2018-07-17 | 1 | -0/+4 |
| | |||||
* | Fix that successive ActiveStorage::Attached::Many#attach calls would ↵ | George Claghorn | 2018-07-16 | 1 | -1/+11 |
| | | | | overwrite previous attachments | ||||
* | Support HTTP Range downloads from disk | George Claghorn | 2018-07-15 | 1 | -4/+4 |
| | | | | Closes #32193. | ||||
* | Clear attachment changes on reload | George Claghorn | 2018-07-13 | 1 | -0/+4 |
| | |||||
* | Implement ActiveStorage::Attached::{One,Many}#attach in terms of changes | George Claghorn | 2018-07-13 | 5 | -38/+30 |
| | |||||
* | Fix that detaching could purge | George Claghorn | 2018-07-13 | 2 | -2/+2 |
| | |||||
* | Fix analyzing new blobs from uploaded files on attach | George Claghorn | 2018-07-13 | 1 | -18/+4 |
| | |||||
* | Raise an ArgumentError instead of a RuntimeError | George Claghorn | 2018-07-08 | 1 | -1/+1 |
| | |||||
* | Store newly-uploaded files on save rather than assignment | George Claghorn | 2018-07-07 | 12 | -138/+326 |
| | |||||
* | Fix that models can clobber each others' attachment reflections | George Claghorn | 2018-07-07 | 1 | -2/+2 |
| | | | | | | | | | | | | | | Consider the following model definitions: class User < ApplicationRecord has_one_attached :avatar end class Group < ApplicationRecord has_one_attached :avatar end If you attempt to reflect on the User model's avatar attachment via User.reflect_on_attachment, you could receive a reflection for the Group model's avatar attachment. Fix this by ensuring that each model class uses its own Hash object to track attachment reflections. | ||||
* | Remove vestigial require on ActiveStorage GCSService | Bibek Shrestha | 2018-07-04 | 1 | -1/+0 |
| | | | | | | | | | | | | The file `filename.rb` as mentioned in `require "active_storage/filename"` belongs to the `app` folder while GCSService belongs to the lib folder. Looking at the git blame, it was added in commit https://github.com/rails/rails/commit/ccac681122db9747fec9512076772bca345e24b9#diff-bda6a610ef1575b2c8458c96b7f12578 where ActiveStorage::Filename was actually used. But it is no longer required on master and therefore can be removed. This allows anyone to use GCSService directly without enabling ActiveStorage engine. | ||||
* | Tweak Previewer::PopplerPDFPreviewer#pdftoppm_exists? | utilum | 2018-06-29 | 1 | -1/+1 |
| | | | | Does not warn `instance variable @pdftoppm_exists not initialized`. | ||||
* | Update service.rb | ishanray | 2018-06-24 | 1 | -1/+1 |
| | |||||
* | Permit configuring the default service URL expiry | George Claghorn | 2018-06-21 | 2 | -2/+1 |
| | |||||
* | Update ffmpeg -> FFmpeg, mutools|mupdf -> muPDF | utilum | 2018-06-08 | 2 | -3/+3 |
| | | | | [ci skip] | ||||
* | Exclude upload time from instrumented preview time | George Claghorn | 2018-06-03 | 1 | -5/+10 |
| | |||||
* | Merge pull request #33018 from kddeisz/defined-attachments | Rafael França | 2018-06-01 | 3 | -0/+85 |
|\ | | | | | ActiveStorage reflection | ||||
| * | Ensure reflection_class_for is private | Kevin Deisz | 2018-05-31 | 1 | -12/+13 |
| | | |||||
| * | Move ActiveStorage reflection logic entirely into ActiveStorage | Kevin Deisz | 2018-05-31 | 2 | -0/+72 |
| | | |||||
| * | Reflection for attachments | Kevin Deisz | 2018-05-30 | 1 | -0/+12 |
| | | | | | | | | Add the ability to reflect on the attachments that have been defined using ActiveRecord::Reflection. | ||||
* | | Include blob ID in tempfile name for debugging convenience | George Claghorn | 2018-05-30 | 1 | -5/+1 |
|/ | |||||
* | Fix reference | George Claghorn | 2018-05-28 | 1 | -1/+1 |
| | |||||
* | Verify integrity after chunked download | George Claghorn | 2018-05-28 | 3 | -2/+11 |
| | |||||
* | Change video preview format from PNG to JPG | Javan Makhmali | 2018-05-23 | 1 | -3/+2 |
| | |||||
* | Permit opening a blob in a custom tempdir | George Claghorn | 2018-05-17 | 3 | -7/+12 |
| | |||||
* | Generate getter and setter methods in mixin | Josh Susser | 2018-05-17 | 1 | -2/+2 |
| | | | | | | | | | | | Generated attachment getter and setter methods are created within the model's `GeneratedAssociationMethods` module to allow overriding and composition using `super`. Includes tests for new functionality. Co-authored-by: Josh Susser <josh@hasmanythrough.com> Co-authored-by: Jamon Douglas <terrildouglas@gmail.com> | ||||
* | Remove unused `require "active_support/core_ext/string/filters"` | Ryuta Kamizono | 2018-05-17 | 1 | -2/+0 |
| | |||||
* | Add ActiveStorage::Previewer#tempdir | George Claghorn | 2018-05-16 | 1 | -1/+5 |
| | |||||
* | Add missing block parameters | George Claghorn | 2018-05-16 | 2 | -2/+2 |
| | |||||
* | Add ActiveStorage::Blob#open | George Claghorn | 2018-05-16 | 4 | -7/+59 |
| | | | | [David Robertson & George Claghorn] | ||||
* | Support streaming downloads from Google Cloud Storage | George Claghorn | 2018-05-01 | 1 | -19/+25 |
| |