Projects
Kolab:16:Testing:Candidate
erlang-eimap
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 17
View file
erlang-eimap.spec
Changed
@@ -8,7 +8,7 @@ %define lock_version() %{1}%{?_isa} = %(rpm -q --queryformat "%%{VERSION}" %{1}) Name: erlang-%{realname} -Version: 0.4.2 +Version: 0.4.3 Release: 1%{?dist} Summary: Erlang IMAP client Group: Development/Libraries @@ -77,6 +77,9 @@ %changelog +* Wed Oct 28 2020 Christian Mollekopf <mollekopf@kolabsys.com> - 0.4.3-1 +- Upstream release 0.4.3 + * Wed Apr 15 2020 Christian Mollekopf <mollekopf@kolabsys.com> - 0.4.2-1 - Upstream release 0.4.2
View file
debian.changelog
Changed
@@ -1,3 +1,9 @@ +erlang-eimap (0.4.3-1.1) unstable; urgency=medium + + * Package the 0.4.3 release + + -- Christian Mollekopf <mollekopf@kolabsys.com> Wed, 28 Oct 2020 00:44:10 +0200 + erlang-eimap (0.4.2-2.1) unstable; urgency=medium * Package the 0.4.2 release
View file
erlang-eimap-0.4.2.tar.gz/CHANGELOG.md -> erlang-eimap-0.4.3.tar.gz/CHANGELOG.md
Changed
@@ -11,6 +11,13 @@ ### Fixed ### Security +## 0.4.3 - 2020-10-28 +### Fixed +- Throttle reading of responses if the target process's inbox is getting full. + +## 0.4.2 - 2020-04-24 +### Fixed +- Workaround for metadata request breaking other commands (required for guam) ## 0.4.1 - 2020-03-28 ### Added
View file
erlang-eimap-0.4.3.tar.gz/LICENSE
Added
@@ -0,0 +1,13 @@ +Copyright 2017-2019 Kolab Systems AG + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License.
View file
erlang-eimap-0.4.2.tar.gz/rebar.config -> erlang-eimap-0.4.3.tar.gz/rebar.config
Changed
@@ -13,7 +13,7 @@ %%{require_otp_vsn, "17"}. {pre_hooks, {clean, "rm -rf ebin priv erl_crash.dump"}}. -{ relx, { release, { eimap, "0.4.2" }, eimap}, +{ relx, { release, { eimap, "0.4.3" }, eimap}, { dev_mode, false }, { include_erts, false }
View file
erlang-eimap-0.4.2.tar.gz/src/eimap.app.src -> erlang-eimap-0.4.3.tar.gz/src/eimap.app.src
Changed
@@ -2,7 +2,7 @@ {application, eimap, { description, "IMAP client implementation" }, - { vsn, "0.4.2" }, + { vsn, "0.4.3" }, { registered, }, { applications, kernel,
View file
erlang-eimap-0.4.2.tar.gz/src/eimap.erl -> erlang-eimap-0.4.3.tar.gz/src/eimap.erl
Changed
@@ -146,6 +146,21 @@ disconnected(Command, State) when is_record(Command, command) -> { next_state, disconnected, enque_command(Command, State) }. + +%Throttle if the target process is getting overloaded. +%This allows the socket buffers to fill up eventually, +%so regular congestion control can kick in. +throttle(Receiver, Limit) -> + {_, MessageQueueLength} = process_info(Receiver, message_queue_len), + if + MessageQueueLength > Limit -> + SleepDuration = trunc(MessageQueueLength / 2), + lager:debug("Throttling for ~p with queue length ~p", SleepDuration, MessageQueueLength), + timer:sleep(SleepDuration), + throttle(Receiver, Limit); + true -> false + end. + passthrough(flush_passthrough_buffer, #state{ passthrough_send_buffer = Buffer } = State) -> %lager:info("Passing through ~p", Buffer), passthrough({ passthrough, Buffer }, State#state{ passthrough_send_buffer = <<>> }); @@ -159,6 +174,8 @@ { next_state, passthrough, State }; passthrough({ data, Data }, #state{ passthrough_recv = Receiver } = State) -> %lager:info("Passing back ~p", Data), + + throttle(Receiver, 100), Receiver ! { imap_server_response, Data }, { next_state, passthrough, State }; passthrough(Command, State) when is_record(Command, command) ->
View file
erlang-eimap.dsc
Changed
@@ -2,7 +2,7 @@ Source: erlang-eimap Binary: erlang-eimap Architecture: any -Version: 0.4.2-2.1 +Version: 0.4.3-1.1 Maintainer: Christoph Erhardt <kolab@sicherha.de> Homepage: https://git.kolab.org/diffusion/EI/eimap.git Standards-Version: 3.9.6 @@ -10,5 +10,5 @@ Package-List: erlang-eimap deb devel extra Files: - 00000000000000000000000000000000 0 erlang-eimap-0.4.2.tar.gz + 00000000000000000000000000000000 0 erlang-eimap-0.4.3.tar.gz 00000000000000000000000000000000 0 debian.tar.gz
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.