Fails to build with valac 0.35.1

Bug #1644243 reported by Rico Tzschichholz
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mail
Fix Released
High
Rico Tzschichholz

Bug Description

Pantheon-mail does not build with valac 0.35.1 which has more complete/stricter type-checking and therefore throws errors for e.g. non-compatible generic-type usages.

pantheon-mail/src/engine/imap/response/imap-fetch-data-decoder.vala:102.33-102.37: error: Argument 1: Cannot convert from `Gee.List<Geary.Imap.Flag>?' to `Gee.Collection<Geary.Imap.MessageFlag>'
        return new MessageFlags(flags);
                                ^^^^^
pantheon-mail/src/engine/db/db-database.vala:258.35-258.80: error: Access to non-public constructor `Geary.Db.TransactionAsyncJob.new' denied
        TransactionAsyncJob job = new TransactionAsyncJob(type, cb, cancellable);
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1963.22-1966.37: error: Access to non-public constructor `Geary.ImapDB.Attachment.new' denied
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1583.59-1584.54: error: Assignment: Cannot convert from `Gee.HashMap<Geary.EmailIdentifier,Geary.EmailFlags>' to `Gee.Map<Geary.ImapDB.EmailIdentifier,Geary.EmailFlags>?'
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1594.13-1594.15: error: The name `map' does not exist in the context of `Geary.ImapDB.Folder.do_get_email_flags'
            map.set(location.email_id,
            ^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1598.17-1598.19: error: The name `map' does not exist in the context of `Geary.ImapDB.Folder.do_get_email_flags'
        return (map.size > 0) ? map : null;
                ^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1598.33-1598.35: error: The name `map' does not exist in the context of `Geary.ImapDB.Folder.do_get_email_flags'
        return (map.size > 0) ? map : null;
                                ^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1598.33-1598.35: error: var declaration not allowed with non-typed initializer
        return (map.size > 0) ? map : null;
                                ^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1097.42-1097.90: error: Assignment: Cannot convert from `Gee.ArrayList<Geary.EmailIdentifier>' to `Gee.List<Geary.ImapDB.EmailIdentifier>?'
        Gee.List<ImapDB.EmailIdentifier> list = new Gee.ArrayList<Geary.EmailIdentifier>();
                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1100.13-1100.16: error: The name `list' does not exist in the context of `Geary.ImapDB.Folder.list_email_fields_by_id_async'
            list.add(iter.get());
            ^^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1101.17-1101.20: error: The name `list' does not exist in the context of `Geary.ImapDB.Folder.list_email_fields_by_id_async'
            if (list.size < LIST_EMAIL_FIELDS_CHUNK_COUNT && iter.has_next())
                ^^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1126.13-1126.16: error: The name `list' does not exist in the context of `Geary.ImapDB.Folder.list_email_fields_by_id_async'
            list.clear();
            ^^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1128.16-1128.19: error: The name `list' does not exist in the context of `Geary.ImapDB.Folder.list_email_fields_by_id_async'
        assert(list.size == 0);
               ^^^^
pantheon-mail/src/engine/imap-db/imap-db-folder.vala:1130.9-1130.43: error: Return: Cannot convert from `Gee.HashMap<Geary.EmailIdentifier,Geary.Email.Field>?' to `Gee.Map<Geary.ImapDB.EmailIdentifier,Geary.Email.Field>?'
        return (map.size > 0) ? map : null;
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pantheon-mail/src/engine/imap-engine/replay-ops/imap-engine-mark-email.vala:45.74-45.80: error: Argument 1: Cannot convert from `Gee.List<Geary.EmailIdentifier>' to `Gee.Collection<Geary.ImapDB.EmailIdentifier>'
        original_flags = yield engine.local_folder.get_email_flags_async(to_mark, cancellable);
                                                                         ^^^^^^^
pantheon-mail/src/engine/imap-engine/imap-engine-generic-account.vala:749.70-749.85: error: Argument 1: Cannot convert from `Gee.Map<Geary.FolderPath,Geary.Folder>' to `Gee.Iterable<Gee.Map.Entry<Geary.FolderPath,Geary.Imap.Folder>>'
            = Geary.traverse<Gee.Map.Entry<FolderPath, Imap.Folder>>(existing_folders)
                                                                     ^^^^^^^^^^^^^^^^
pantheon-mail/src/engine/imap-engine/imap-engine-generic-account.vala:776.39-776.86: error: Assignment: Cannot convert from `Gee.ArrayList<Geary.Folder>' to `Gee.Collection<Geary.ImapEngine.MinimalFolder>?'
        Gee.Collection<MinimalFolder> engine_added = new Gee.ArrayList<Geary.Folder>();
                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pantheon-mail/src/engine/imap-engine/imap-engine-generic-account.vala:777.9-777.20: error: The name `engine_added' does not exist in the context of `Geary.ImapEngine.GenericAccount.update_folders_async'
        engine_added.add_all(build_folders(folders_to_build));
        ^^^^^^^^^^^^
pantheon-mail/src/engine/imap-engine/imap-engine-generic-account.vala:799.13-799.24: error: The name `engine_added' does not exist in the context of `Geary.ImapEngine.GenericAccount.update_folders_async'
        if (engine_added.size > 0 || engine_removed.size > 0)
            ^^^^^^^^^^^^
pantheon-mail/src/engine/imap-engine/imap-engine-generic-account.vala:800.55-800.66: error: The name `engine_added' does not exist in the context of `Geary.ImapEngine.GenericAccount.update_folders_async'
            notify_folders_added_removed(sort_by_path(engine_added), sort_by_path(engine_removed));
                                                      ^^^^^^^^^^^^
Compilation failed: 20 error(s), 0 warning(s)

Related branches

Changed in pantheon-mail:
importance: Undecided → High
Changed in pantheon-mail:
status: New → In Progress
assignee: nobody → Rico Tzschichholz (ricotz)
milestone: none → juno-beta1
RabbitBot (rabbitbot-a)
Changed in pantheon-mail:
status: In Progress → Fix Committed
Cody Garver (codygarver)
Changed in pantheon-mail:
milestone: juno-beta1 → 1.0.4
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.