aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeLines
* Mark all events for the fixed requests as needing a reindex.release/0.13Louise Crow2013-08-20-9/+16
|
* Merge branch 'feature/further-request-event-fixes' into rails-3-developLouise Crow2013-08-15-0/+30
|\
| * Add task for cleaning up bad request histories.Louise Crow2013-08-15-0/+30
| |
* | Only check commonlib, don't try to split the response into segments (as @mhl ↵Louise Crow2013-08-08-7/+8
| | | | | | | | points out, the case where the initial character is a space is somewhat confusing), just grab the first character of the whole string and check it against expected values.
* | Call it an error, not a warning.Louise Crow2013-07-30-4/+4
| |
* | Get first character in a way that will work in Ruby 1.8 and 1.9Louise Crow2013-07-30-1/+1
| |
* | Add a rake task to print a warning if the state of a submodule is not what ↵Louise Crow2013-07-30-0/+27
|/ | | | we expect it to be.
* Merge branch 'feature/localisation-fixes' into rails-3-developLouise Crow2013-07-29-7/+39
|\
| * Move some more config into AlaveteliLocalization so that it can be called ↵Louise Crow2013-07-24-0/+8
| | | | | | | | outside initialization e.g. in tests.
| * Clarify comment.Louise Crow2013-07-23-1/+1
| |
| * Patch Globalize to compensate for the way gettext_i18n_rails patches ↵Louise Crow2013-07-23-6/+17
| | | | | | | | 118n.locale in the handling of locales with underscores. Fixes #999.
| * Extract code for setting locales in FastGettext and I18nLouise Crow2013-07-18-0/+13
| |
* | Merge branch 'hotfix/0.12.0.1' into rails-3-developLouise Crow2013-07-29-0/+9
|\ \ | |/ |/| | | | | | | Conflicts: locale/he_IL/app.po locale/nb_NO/app.po
| * Backport https://github.com/mikel/mail/pull/405 to prevent stack overflow ↵0.12.0.1hotfix/0.12.0.1Louise Crow2013-07-26-0/+9
| | | | | | | | errors when parsing large mails with envelopes on memory limited systems.
* | Add test case and fix for unrecognized encoding in subject lineLouise Crow2013-06-25-0/+15
| |
* | Handle the case where an encoding is extracted that iconv doesn't handle.Louise Crow2013-06-25-1/+4
|/
* Merge branch 'hotfix/0.11.0.13' into rails-3-developLouise Crow2013-06-17-1/+1
|\ | | | | | | | | Conflicts: spec/mailers/outgoing_mailer_spec.rb
| * Fix a security vulnerability: eval used in quoting display name0.11.0.12Mark Longair2013-06-17-1/+1
| | | | | | | | | | | | | | | | | | This use of eval allows arbitrary remote code execution on parsing of a maliciously formed email. Two tests are updated to match the behaviour of the new code to return the display name - these introduce extra escaping, so should be innocous.
* | Add a rake task to re-extract any missing attachmentsMark Longair2013-06-12-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | You can see the number of emails that would be reparsed by doing: bundle exec rake temp:reextract_missing_attachments To actually reparse the incoming emails and rextract attachments for any that were missing, you would do: bundle exec rake temp:reextract_missing_attachments[commit] (In fact, the 'commit' can be any non-empty string.)
* | Merge branch 'hotfix/0.11.0.7' into rails-3-developLouise Crow2013-06-10-39/+69
|\| | | | | | | | | Conflicts: spec/models/info_request_spec.rb
| * Add extra debug linehotfix/0.11.0.7Louise Crow2013-06-10-0/+1
| |
| * Fix syntax errors, add some debug output.Louise Crow2013-06-10-8/+22
| |
| * Add a task for cleaning up user accounts that were created with a space in ↵Louise Crow2013-06-10-0/+65
| | | | | | | | the email address.
| * Remove old temp tasks.Louise Crow2013-06-10-50/+0
| |
* | Allow the donation url to be configured. Closes #909.Louise Crow2013-06-07-0/+1
| |
* | Merge remote-tracking branch 'origin/themes-install-refactor' into ↵Louise Crow2013-06-05-5/+7
|\ \ | | | | | | | | | rails-3-develop
| * | themes:install: minor refactoring of checking out a refMark Longair2013-05-24-5/+7
| | |
* | | Merge branch 'release/0.11' into rails-3-developLouise Crow2013-06-04-3/+31
|\ \ \ | | |/ | |/|
| * | Backport ruby 1.9 fix for trailing = sign in message headers from mail 2.5release/0.11Louise Crow2013-06-04-0/+16
| | |
| * | Parse the 'to' address as if on a real mail to trigger quoted string encoding.Louise Crow2013-06-03-1/+3
| | |
| * | Fix for subject lines with invalid UTF-8 as the last characterMark Longair2013-06-03-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This seems to be the bug mentioned here: http://po-ru.com/diary/fixing-invalid-utf-8-in-ruby-revisited/ That explains that some versions of Iconv don't ignore invalid characters when converting to UTF-8 even with //IGNORE if that invalid character happens to be at the end of the string. In fact, as Matthew Somerville pointed out, with some versions of iconv (e.g. 1.14 on Mac OS, apparently) it's necessary to add and remove more than one space at the end, in case the first character of the byte sequence indicates a long sequence. We add and remove 4 to be on the safe side.
* | | Merge remote-tracking branch ↵Louise Crow2013-06-04-7/+5
|\ \ \ | |/ / |/| | | | | 'openaustralia_github/inline_search_method_refactor' into rails-3-develop
| * | Inline method InfoRequest.full_searchMatthew Landauer2013-03-25-7/+5
| | |
* | | Remove the (we think) now unneeded will_paginate customizationMark Longair2013-05-29-59/+0
| | | | | | | | | | | | | | | | | | | | | | | | We believe that this customization is no longer needed, and in any case would need to be rewritten for will_paginate 3.0.4. If any pagination bugs do arise, a test should be added that reproduces that problem, since currently the tests pass without this extension.
* | | Merge branch 'tmail-to-mail-tests' into rails-3-developMark Longair2013-05-28-12/+303
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | This merge brings in a number of tests and fixes for the handling of mail under Mail / Rails 3 instead of TMail / Rails 2. Conflicts: config/initializers/alaveteli.rb
| * | | Suppress STDERR noise from the tnef binaryMark Longair2013-05-22-1/+1
| | | |
| * | | Move the mapi requires to where they're really neededMark Longair2013-05-22-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Handling of outlook-packed attachments would fail from rake tasks or in the console without requiring 'mapi/msg' and 'mapi/convert' beforehand. Instead, require them in the source file where they're actually used.
| * | | Retain old handling of malformed addresses in To and Cc linesMark Longair2013-05-21-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The behaviour of the TMail backend's 'to' and 'cc' methods where there was a malformed To: or Cc: line was to return nil, whereas Mail returns a version of the string anyway. We'd have to change quite a lot of code to deal with an extra possible class of returned objects, so it's simplest for the moment to monkey-patch Mail::Message's 'to' and 'cc' methods to restore the old behaviour.
| * | | Cope with emails with a missing final MIME boundaryMark Longair2013-05-17-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Mail gem deals with multipart messages that look as if they should have 1 part but are missing the final MIME boundary, by make the parts list empty and setting part.body to the text of the email. Rather than throwing an exception in this case, we just pretend that part is text/plain and return it, so that the page doesn't error and we still have a chance of some useful text being displayed. Note that we haven't investigated yet the case of emails that have more than one start boundary, but no final boundary. Fixes #921
| * | | Only set original_charset when a charset has been defined for the mail part. ↵Louise Crow2013-05-16-3/+8
| | | | | | | | | | | | | | | | Fixes #942.
| * | | Add a helper function for dumping text to diskMark Longair2013-05-16-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This function is useful for investigating problems with handling of emails, attachments and the related character encoding issues. It can safely be removed later, but is currently useful to have for debugging purposes.
| * | | Make efforts to ensure that we're usually dealing with UTF-8 stringsMark Longair2013-05-16-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of these changes is to make sure that the Mail backend, like the TMail backend it replaces, will return text parts encoded in UTF-8 if possible. The other change is to ensure that when text attachments are reloaded from disk, we attempt to convert them to UTF-8.
| * | | Add functions for converting from arbitrary text data to UTF-8Mark Longair2013-05-16-0/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Throughout the codebase it is simplest and most consistent if we could assume that all text/* attachments are represented by UTF-8 strings, and this was largely true with the TMail backend which ensured that all returned text parts were in UTF-8. We have to change the replacement Mail-backed to similarly attempt to convert text parts to UTF-8. This commit introduces two functions which are useful for this. The normalize_string_to_utf8 function will try various encodings, either suggested or guessed (with charlock_holmes) to convert the passed string to UTF-8, and if it can't find a suitable encoding will throw an exception. Unfortunately, the current behaviour of the site is that uninterpretable text/* attachments are still passed around and mangled to UTF-8 just before display. To mimic this it's also useful to have the convert_string_to_utf8_or_binary function, which tries to convert the string to UTF-8 with normalize_string_to_utf8, but if that's not possible just returns the original string. (In Ruby 1.9, encoding will be set to UTF-8 or ASCII-8BIT appropriately.)
| * | | Ignore common TNEF attachment parsing errorsMark Longair2013-05-16-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This also introduces a custom error class so that we don't accidentally catch other problems. Fixes #920
| * | | Remove an unnecessary use of 'which' in backticksMark Longair2013-05-16-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The use of backticks in `which tnef` means that which(1) is invoked under /bin/sh, and returns the first executable matching 'tnef' in the default PATH for /bin/sh. In this usage, however, Popen also uses /bin/sh to execute the command, which would run that same executable if just a bare 'tnef' were used. In summary, I can't see any reason for the convolution of: IO.popen("#{`which tnef`.chomp} -K -C #{dir}", "wb") do |f| ... over just: IO.popen("tnef -K -C #{dir}", "wb") do |f| ... so switch to the latter.
| * | | Add rake tasks for checking the parsing of a random sample of emailsMark Longair2013-05-16-0/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the upgrade from Rails 2 to Rails 3, we want to check that existing emails are parsed correctly. One of these tasks (temp:random_attachments_hexdigests) is for dumping a CVS file of details about each attachment, and its hexdigest, and a list of the randomly selected raw emails. (It's intended that you run this on an old Rails 2 install of Alaveteli. The other task (temp:recompute_attachments_hexdigests) is intended to be run on a Rails 3 install of Alaveteli, with the previous files as input, to check that the same results are obtained.
* | | | Disable referential integrity disabling in the test database, if a config ↵Louise Crow2013-05-28-0/+110
| |_|/ |/| | | | | | | | param 'constraint_disabling' is set to false in the test section of database.yml, and pay attention to the order in which fixtures are defined when deleting and loading them.
* | | Merge remote-tracking branch 'origin/hotfix/0.9.0.3' into rails-3-developLouise Crow2013-05-16-1/+6
|\ \ \ | |/ / |/| | | | | | | | | | | | | | Conflicts: Rakefile app/models/contact_mailer.rb spec/models/contact_mailer_spec.rb
| * | Limit memory available to wvText, which calls elinksIan Chard2013-05-15-1/+2
| | |
| * | Add option to limit memory available to external commandsIan Chard2013-05-15-0/+4
| | |