IMAP's `fetch` results with extreme memory usage and computer freezing.
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 38/100
- Tipo de issue
- Error
- Claridad
- Necesita aclaración
- Estado de actividad
- Tranquilo
- Stack tecnológico
- haskell
- Área
- networking
Línea de trabajo
Start by reproducing retrieveCSV with fetch con lastMsg and compare its memory use with fetchHeader and fetchSize. Trace the HaskellNet IMAP fetch entry point to determine whether the library or caller causes the excessive allocation; done means establishing the cause and verifying a focused fix or documented explanation.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I have written the following function using the HaskellNet and HaskellNet-SSL libraries.
Using the "fetch" function results with memory usage blowing up and extreme swapping.
What am I doing wrong? Might it be a bug?
import qualified Data.ByteString.Char8 as SB8
import Network.HaskellNet.IMAP
import Network.HaskellNet.IMAP.SSL
main = retrieveCSV
retrieveCSV = do
con <- connectIMAPSSL imapServer
login con username password
select con mailbox
lastMsg <- last <$> search con [ALLs]
-- this works:
_ <- fetchHeader con lastMsg
-- this works:
_ <- fetchSize con lastMsg
-- this blows up in memory usage:
_ <- fetch con lastMsg
undefined
where
imapServer = "imap.gmail.com"
username = "example" -- imagine this username is real
password = "example" -- imagine this password is real
mailbox = "example" -- imagine this mailbox is real
- Lenguaje dominante
- Haskell
- Estrellas
- 92
- Forks
- 57
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de qnikst/HaskellNet
-
Dificultad 2/5 Menos de una hora Aptitud para principiantes 65/100
qnikst/HaskellNet#125 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
qnikst/HaskellNet#107 · 1 comentario ·
-
Support for UIDPLUS extensionAbiertofeature
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
qnikst/HaskellNet#84 ·
-
feature
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
qnikst/HaskellNet#80 ·
-
feature help needed
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
qnikst/HaskellNet#77 ·
Todos los issues de qnikst/HaskellNet
Issues similares
-
enhancement triage
Dificultad 1/5 1-3 horas Aptitud para principiantes 66/100
simplex-chat/simplex-chat#8043 ·
Los mantenedores suelen responder en 1 día
-
area:zones rules-correctness
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
needs triage type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
haskell/cabal#12525 · 1 comentario ·
Los mantenedores suelen responder en 3 días
-
validateXmirOptions error message is missing the word 'option'Posiblemente ocupada @opusstudiohq-max la tomó hace 1 día. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
objectionary/phino#2256 ·
Los mantenedores suelen responder en 1 día
-
30-minutes algorithm any-language codewars dart easy elixir hackerrank hacktoberfest haskell help wanted interview-prep julia leetcode lua open-source r scala students zig
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Huerte/algo-solutions-python#163 ·
Los mantenedores suelen responder en 1 día