Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/freerange/sauron

The All Seeing Eye
https://github.com/freerange/sauron

Make it clearer that the client only returns inbox messages

Also, they're not raw; the client knows no other kind.

3258701ae34975844bceedab99c9f200f634e19b authored almost 13 years ago
Avoid n+1 selects when retrieving messages.

Rather than using uid_fetch once for each message, we can use it once for all messages we want t...

c25248321578e9081845ee38ba311ec864307976 authored almost 13 years ago
The connect_as method no longer exists, so doesn't need to be stubbed

a4399142314597622978c00bba6f79c938f200eb authored almost 13 years ago
Update to latest recap

38e64645487b68d7f16c1c4a604632ae9b88dc50 authored almost 13 years ago
Merge pull request #11 from freerange/fakes-not-mocks

These are more accurately 'fakes' not 'mocks'.

e7c2d0b01da29056f1b79ad2a193599bc83bea58 authored almost 13 years ago
Serve the app using unicorn, not webrick

It looks as though webrick doesn't shut down correctly when upstart attempts to kill it, causing...

00c980fc063465ca41931aa29d547f3660d583aa authored almost 13 years ago
Functionality in this file has been incorporated into GmailImapClient.

af533ef048c3d3dea99812d88e8d9619bcfc79cf authored almost 13 years ago
These are more accurately 'fakes' not 'mocks'.

Although Rails used to call classes like this 'mocks' [1], they are more
accurately 'fakes' [2] ...

3f4b93edeeca6654da4dfccaf82dcf3205c76398 authored almost 13 years ago
Update README.

We think it's useful to describe the purpose of Sauron so that we can
refer back to it when disc...

df2340cf64e206539e09566c1ec18635837c6938 authored almost 13 years ago
Add a header.

This is really to get assurance that our deployment works.

e1f414fdf0d6c1bbb50ba1d6280507d651ec3b75 authored almost 13 years ago
Use foreman to run the app in a simple way.

e6148ae0255227b02d7548d6d519215b232bca6d authored almost 13 years ago
Add recap for deployment.

17125bb07542c84bea67925f41d5c088043da470 authored almost 13 years ago
Remove cruft in the Gemfile.

8af31f00bf8ff766761b572d5ae6261581e6d216 authored almost 13 years ago
Add .travis.yml.

0878a7858466b223a6ff3a04c3e71630cff8f2e0 authored almost 13 years ago
Display date and sender for each message.

dc28f8d729fd9b4f605ff0c8747fe4d78deda4e2 authored almost 13 years ago
Merge pull request #9 from freerange/whats-better-than-a-million-models

Whats better than a million models

37bf84e5f1efa1ae912c5587543dcfc5947d5565 authored almost 13 years ago
Remove example performance test

19a2b9c7877406dc6be72b887e6d926e7f85b7a0 authored almost 13 years ago
Introduce a mock gmail server and connection, for use in full-stack tests.

This might be misguided, but I thought it would be useful to have the cucumber tests exercise al...

79e2dfa3d772feb094f97aae13cf0661741adafa authored almost 13 years ago
cucumber-rails should only be required from features/support/env.rb

d1ccf6e564f70b696a088a8f135d6151a0a29390 authored almost 13 years ago
Use a dedicated class to manage the imap connection

A new class gives us a new target to test, breaking tests into those that build the connection a...

14bde1535dfdfc82427b6cde418ee4f9a5dd3a16 authored almost 13 years ago
GmailAccount should correctly use GmailImapClient.

This (hopefully) fixes issues raised in the previous commit.

7db473e49c82c5219712c357ed973d78f95f231e authored almost 13 years ago
Pass the IMAP connection into the GmailImapClient initializer

I felt that the client shouldn't be responsible for both instantiating and using the IMAP connec...

927a9acc7bf4f50730edeea57e7d010caad198ef authored almost 13 years ago
Allow us to pass an imap client to GmailAccount.

This is purely to avoid having to stub GmailImapClient.new in our tests.

6b5668d87ef7e8f781fa00a2a01023ad06293ecc authored almost 13 years ago
Split imap knowledge out into its own class.

We believe that returning big mail strings from an IMAP server is a
natural interface, and shoul...

4d46f851de88686d9437e290a6931cbefef580ce authored almost 13 years ago
Turn playaround into some actual software.

We added a very simple feature first, but left the steps as pending. Then we wrote a functional ...

2e99c0f2142a1084965e9c8e4b0cf975c2e9b415 authored almost 13 years ago
Add rails

The result of running `rails new sauron` on the existing codebase

8a71e99ae6508b3bc2a70d8ae17efa45966e89d1 authored almost 13 years ago
Playing around with connecting to a gmail IMAP folder and retrieving the messages

To try the playaround code out, run the following command:

EMAIL=<gmail-address> PASSWORD=<...

58ed5b2158533c83c71fc59182fe3b815dc7082b authored almost 13 years ago
Remove spike version of the app.

464377b0b86e858eee6ace2d8bfc3b78db3f7807 authored almost 13 years ago
Fix updating of Thread#most_recent_message_at.

For some reason using the `any?` predicate on Thread#messages doesn't
work (at least in Ruby 1.9...

efa674dfe7874eb98d727032ad0637716d752af3 authored about 13 years ago
Recompiled assets.

be06fcc29749d9cb66b6a964a8354b842e776e1d authored over 13 years ago
Try to get the asset pipeline working.

cbed55678285bb95d8a20507a27e88ef6d06f94c authored over 13 years ago
Attempt to fix the missing thread issue #2

I suspect the mongoid doesn't call the before_save callback on creation.

444d05cbe530fc918f760f696da716577d5f9aab authored over 13 years ago
Keep deploy to same location for now

a0c57e16bca45107978d02a22f96ca66e4b38f10 authored over 13 years ago
tomafro-deploy becomes recap

5bc1325c111b479cc2567f837984dfe7bc32b7d8 authored over 13 years ago
Import seems to be failing.

aaebd78fef2654b654395ab518c27347cfd3749f authored over 13 years ago
If there are no unread messages, don't store anything.

4f4a83c38db350916d0129aa621264db5cf7a368 authored over 13 years ago
Remove obsolete add_account script

This doesn't work anymore, and I think it is just a relic of the older spike code.. Just use rai...

d913310ea9772f191212bfb9a489d668a91e9791 authored over 13 years ago
Leave unread messages as unread.

0955f2284fcb58c0f066af738c6014193374a760 authored over 13 years ago
Simplify deploy now the app user's env is good

We don't need to pass an explicit PATH, or use sudo to edit the crontab for the app user. Nice.

e9ea753befec4dbcdf94c59f7dc018a93104e17d authored over 13 years ago
USERNAME is a shell variable used by zsh.

65e2c598bf6470cbc973ce259e86faa832579f4b authored over 13 years ago
Another attempt at asset precompilation.

bf9607c420aa1a53a4ae065ba94dfc74e52719b1 authored over 13 years ago
Another attempt at getting these assets across.

495c0f5743e51bf0c25d85f2fe270d49814e7ed0 authored over 13 years ago
Refresh the assets.

b391e8faa782a81d577e5294017d0f080685d32b authored over 13 years ago
Minor quoting tweak. Still nowhere near perfect.

b938ed31f1eda7b74fc5660c45659c9bf04dfd6b authored over 13 years ago
Show if it was multipart, so we can debug better.

c2d88fb1f1d3bc5c3761dbdb38d041cd66e8df9f authored over 13 years ago
Better selection of message body and hiding quoted parts.

0b4e82a7232d977696e49742178e4089ec4fba4b authored over 13 years ago
Don't break over spaces in names.

1c5f2bb92bc036b3e7c3828ef230fc15149518bd authored over 13 years ago
Prettier message views.

098178e7b28569f93e2355f4c0214669040ffd9c authored over 13 years ago
Better contact message view.

d8003e5c561a658964b98a5f5a08e7a42dcaf64e authored over 13 years ago
Friendlier contacts.

ba9e72e378a049b97f5b51ce0641bec8f2f6dae3 authored over 13 years ago
Me look twitter pretty yes?

ed44dbc60734bd9c996c0448749bc91eecae1993 authored over 13 years ago
Keep the environment file where Foreman seems to expect it.

2ce4e59acea242f9fd2b10b4acc95faa4fc4afaf authored over 13 years ago
Attempt to run the app via Foreman.

58795cef3e70a20692640014735533789e5eabe1 authored over 13 years ago
Install the cron job to import new messages.

Note that because I'm using sudo to install it for a specific user, we need to import the new PA...

3db7b45ca03681164038af78946f68b0480decfd authored over 13 years ago
Unify the updating into a single method to make it easier to call from a runner.

2b44a29af050f5c374a64bad94164ae59fa0eb4d authored over 13 years ago
Clarify the messages a bit.

e67ded2c837505fd56820b102eab0b4c2e6cc72c authored over 13 years ago
Use filename extensions to track which messages have been imported.

680dfedd7724b0700327c53b0116b8e0f691f2ac authored over 13 years ago
Updated to the latest tomafro-deploy.

The previous version didn't allow me to deploy (after James A's original deploy) due to a permis...

5fe94240475df4e2c757b6f9d46f5d82d363e77b authored over 13 years ago
Updated the assets

* I ran 'rake assets:precompile'.

cc6eee451c2673a2db740ee19707be86b5d96254 authored over 13 years ago
Added instructions to help get the app running locally.

* Added an .rvmrc so that we automatically use the correct ruby if using RVM.
* Added a default ...

9ba78803417dbb56c7dee8536cdba35df7d522d5 authored over 13 years ago
Using #include? is inefficient for contacts with lots of messages (i.e. us)

54072fae157592800a187884bde2ccc53482d93a authored over 13 years ago
Index contacts by email.

3402cd667505c7fb6f2ed8bd00e5ccd62f24924b authored over 13 years ago
Don't expose all our emails to the outside world.

406318d3baeab723e6bfacb488e5fea907f523d0 authored over 13 years ago
Import the messages in order.

It's still possible that the in_reply_to message won't be imported, I think, but this will at le...

4d347f74d9adf6913595735c2737f1ed07ff206b authored over 13 years ago
Making the parts clearer.

200ea6c91614d78d139191c49713a6ba07db3eca authored over 13 years ago
Split up downloading mails from importing them, and create better associations in the final message object.

2cb2b421d3868c32c2de724d56f661a6d85a2aeb authored over 13 years ago
Reversing doesn't really work if we don't download them all.

b32be52a8381801dd2e7dfa4874a00f834e77fee authored over 13 years ago
Download the more recent emails first, as they are more likely to be useful.

830b8fa6939629d86ca6c8a3d9f43ef5658dc2a5 authored over 13 years ago
Messages were failing to import

Failed to import message 184
too much data for sort() with no index
Failed to import...

3ad5b855cb8bcee981697c161fa3f58b4345af09 authored over 13 years ago
Use a thread for each account.

82edfdeada1bda03dba7b646dc111c2001cdf083 authored over 13 years ago
Not all gmail accounts have the same imap root.

Kalvs, for example.

66fe612e33a0e7d8307e227f86adbdb7b68c76d3 authored over 13 years ago
Don't set the timestamp if there are no messages.

607597370ff5e1323bb817dbdae4258b05eddae3 authored over 13 years ago
Output the actual issue too.

b40b8d3252fb684e5286490a19be2e4c84f25f76 authored over 13 years ago
Tom has a message that's so messed up it still fails.

[email protected]: fetching [5879, 5880, 5881, 5882, 5883, 5884, 5885, 5886, 5888, 58...

582e8df1708e584c1ff8e1f8457ba3e6f57423e8 authored over 13 years ago
Paginate threads by most recent.

ed882bf1a4127db300e809505d19aea94669d965 authored over 13 years ago
Don't install the cron yet.

This is because this job will currently run for a *long* time, and we don't want it starting up ...

444ad1839c67c120a45b4380435860133f4621c6 authored over 13 years ago
Set a default route.

176374a650fffe28c49f38adfbb18205e90006f3 authored over 13 years ago
Messages with the same UID but different accounts could fail to import.

656870d7521a3c3b7aaba0c44c63a411f1161422 authored over 13 years ago
Log which account we're downloading mails for.

51b693ba1d4d23539fd86b3c7add32249d4355f2 authored over 13 years ago
We can't compile assets on production.

d5861489ccc953a89942a39faff1b953c3989b88 authored over 13 years ago
Start the updates automatically, and get the assets in place too.

82f5e5d74649bca113faa7a951c434348d244d41 authored over 13 years ago
Don't crash if we can't log in.

144b5f7c74d78d2ebb74743db6549790cad66005 authored over 13 years ago
Use a hard-coded mongo configuration for now.

ecdce3cba571cd1273bec354cd6f267bc6900f5d authored over 13 years ago
Basic thread display and import robustness.

93ead4f912f97e15dfe924dfb679cb864d9dcb33 authored over 13 years ago
Initial commit merging the import and interface apps.

I feel far less strongly about the separation.

e7ba622130375ffa92432accd1c2424e256e26d1 authored over 13 years ago
Allow other people to add accounts.

644e63234108701fb8663a2931477d50596d1e4c authored over 13 years ago
Make deployable.

8f478590ec860472182f9aba08123a02fe842e56 authored over 13 years ago
Initial spike.

1eecbeb375b4f3b1e6bd5eaeef346aba34e494ab authored over 13 years ago