All Versions
13
Latest Version
Avg Release Cycle
91 days
Latest Release
1999 days ago

Changelog History
Page 2

  • v0.2.1 Changes

    May 27, 2013
    • Add ability to narrow scope to custom channel for sync_new publishes

    Example Usage:

    View:

    <%= sync_new partial: 'todo_list_row', resource: Todo.new, scope: [@project, :staff] %>
    

    Controller/Model:

    sync_new @todo, scope: [@project, :staff]
    
  • v0.2.0 Changes

    May 26, 2013

    🔀 This solves the issues of syncing partials across different users when the partial requires the session's context (ie. current_user).

    Ex: View: Add refetch: true to sync calls, and place partial file in a 'refetch' subdirectory in the model's sync view folder:

    The partial file would be located in app/views/sync/todos/refetch/_list_row.html.erb

    <% @project.todos.ordered.each do |todo| %>
      <%= sync partial: 'list_row', resource: todo, refetch: true %>
    <% end %>
    <%= sync_new partial: 'list_row', resource: Todo.new, scope: @project, refetch: true %>
    

    Notes 🐎 While this approach works very well for the cases it's needed, syncing without refetching should be used unless refetching is absolutely necessary for performance reasons. For example,

    ⚡️ A sync update request is triggered on the server for a 'regular' sync'd partial with 100 listening clients:

    • number of http requests 1
    • number of renders 1, pushed out to all 100 clients via pubsub server.

    ⚡️ A sync update request is triggered on the server for a 'refetch' sync'd partial with 100 listening clients:

    • number of http requests 100
    • number of renders 100, rendering each request in clients session context.
  • v0.1.13

    May 23, 2013