From: Carsten Schoenert Date: Wed, 11 Nov 2020 19:06:07 +0000 (+0000) Subject: Import thunderbird_78.4.2-1~deb10u1.debian.tar.xz X-Git-Tag: archive/raspbian/1%78.4.2-1_deb10u1+rpi1^2~44^3 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=f48aa0658a53e59492b8ffcc0cb13e57e27feee3;p=thunderbird.git Import thunderbird_78.4.2-1~deb10u1.debian.tar.xz [dgit import tarball thunderbird 1:78.4.2-1~deb10u1 thunderbird_78.4.2-1~deb10u1.debian.tar.xz] --- f48aa0658a53e59492b8ffcc0cb13e57e27feee3 diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000000..d21c8449ea --- /dev/null +++ b/README.Debian @@ -0,0 +1,253 @@ +WebExtension AddOn interface in Thunderbird >= 68.0 +--------------------------------------------------- + +Starting with version 68.0 the only supported interface for Add-ons is the +WebExtension interface. No old XUL-based, sometimes called legacy Add-ons will +work anymore. Starting with 78.0 also no legacy WebExtensions will not work +any more. + +This sentence is not only true for Debian packaged extensions but also for +previously pulled Add-ons from addons.thunderbird.net or some other external +resources. +If you encounter any incompatible packaged Add-ons please open a bug report for +the package, if not already a bug report is created. + +If you are developing own WebExtension based Add-ons you might help to migrate +other still not ready to use Add-ons. Help is really appreciated in any way. + +The API documentation of WebExtension can be found here. + + https://thunderbird-webextensions.readthedocs.io/en/68 + +Some guideline how to migrate to WebExtension from a Legacy Add-on you will +find here. + + https://developer.thunderbird.net/add-ons/tb68 + +Christopher Leidigh (a full-time Thunderbird contributor) has collected a list +of available Add-ons and their status. So you might find his list useful. + + https://cleidigh.github.io/ThunderKdB/index.html + +OpenPGP support within Thunderbird >= 78.0 +------------------------------------------ + +By dropping even support of the legacy WebExtension API in 78.x the typical +used Add-on Enigmail for GPG encryption would not fully working any more. This +is basically grounded on limitations of the WebExtension API to restrict full +access on file system level. +The developer ob Enigmail and MZLNA decided to include OpenPGP support within +Thunderbird directly starting with Thunderbird 78.0. But this now included +native OpenPGP support has some downside, Thunderbird is using it's own key +storage system within the users profile. This means, OpenPGG is working +independently of installed GPG related packages! Also no automatically sync +between Thunderbird and $(HOME)/.gnupg will happen! + +Migration from Enigmail to native OpenPGP support: +This step is optional but user are encouraged to use the migration wizard of +Enigmail. +The Enigmail developer did create a final Enigmail version 2.2.x which is +helping to migrate from the old Enigmail supported workflow over to the OpenPGP +included support. +To use this migration wizard you will need to install Enigmail >= 2.2 as Debian +package (if available) or install this extension by using the menu +'Tools' -> 'Add-ons' and search for it. +There will be a pop up window directly after the installation which is asking +the user if he wanted to be guided through the GPG migration. The user can also +start the migration wizard later at any time by calling it from the 'Tool' menu +the entry 'Migrate Enigmail Settings'. + +You can found more information about the OpenPGP support on the following web +resources. + + https://wiki.mozilla.org/Thunderbird:OpenPGP + https://wiki.mozilla.org/Thunderbird:OpenPGP:2020 + https://wiki.mozilla.org/Thunderbird:OpenPGP:Smartcards + https://wiki.mozilla.org/Thunderbird:OpenPGP:Status + https://www.thunderbird.net/en-US/thunderbird/78.0/releasenotes/ + https://www.enigmail.net/index.php/en/home/news + https://addons.thunderbird.net/en/thunderbird/addon/enigmail/ + + -- Carsten Schoenert Sun, 20 Oct 2020 9:05:00 +0200 + +De-Branding of Icedove, Reintroduce Thunderbird in Debian +--------------------------------------------------------- + +Debian and Mozilla has done some new rethinking and talking about the old legal +questions about trademark issues [1]. +Based on this revaluation the Debian project got now an agreement from Mozilla +Corp. that the rebranded packages Iceweasel, Debian rebranded version for +Firefox, and Icedove, Debian rebranded version for Thunderbird are no longer +needed. + +The maintainers of the Iceweasel package followed that agreement and did a +de-branding of Iceweasel back to Firefox. More information on this process can +be found on [1]. +For Icedove the maintainers followed too the new agreement and remove the old +branding after almost 10 years for Icedove and Iceowl-Extension and switched +back to the official branding from Mozilla. The according bug for this process +can be found under [2]. + +For versions greater 1:45.6.0-2 the following packages were introduced as a +replacement. + +old package .... --> new package usage +--------------------------------------------------------------------------------- +icedove ........ --> thunderbird (Thunderbird Main application) +icedove-dev .... --> thunderbird-dev (Thunderbird Development files) +icedove-dbg .... --> thunderbird-dbg (Thunderbird with debugging symbols) +iceowl-extension --> lightning (Lightning, aka Calendar for Thunderbird) +icedove-l10n-* . --> thunderbird-l10n-* (l10n localization for Thunderbird) +iceowl-l10n-* .. --> lightning-l10n-* (l10n localization for Lightning) + +The old packages were changed to transitional packages and can be safely +removed after the automatically installation of the new packages. + += Profile Migration = +===================== + +Due the removing of the rebranding for Icedove Thunderbird will use the default +profile folder $HOME/.thunderbird for storing all the various user related +stuff! +With the new Thunderbird packages there is a wrapper script included, placed as +/usr/bin/thunderbird that will do a adoption of the existing profile folder +$HOME/.icedove into the new default folder for the user profile +$HOME/.thunderbird by setting up a symlink to the existing profile if possible. + +The automatism in the script will check the following parts: + + 1. Check if there is a folder or a symbolic link $HOME/.icedove existing and + there is NO folder or symbolic link $HOME/.thunderbird. + + 2. Create a symlink from $HOME/.thunderbird to $HOME/.icedove . + + 3. Fixing Mime type registration for' http(s)' and 'file' inside mimeTypes.rdf + if they registered for iceweasel. Before starting the fixup a backup will + be created name $FILE.backup_thunderbird_migration-${DATE}. + + 4. Also check for desktop type registrations of 'userapp-icedove*.desktop' in + '$HOME/.config/mimeapps.list' and $HOME/.local/share/applications/mimeapps.list, + but only if this file exists, users of tiling window managers won't have + this file. Read further for more information on this. + Like above, a backup of the existing file with same schema will be created + if needed. + + 7. If all was going well, starting Thunderbird. + + 8. If there is no folder $HOME/.icedove or $HOME/.thunderbird exists the + wrapper script will start Thunderbird without any extra action. + + 9. The above steps from 3.) will be also done if you already have a symlink + $HOME/.thunderbird that is pointing to $HOME/.icedove or the opposite, + $HOME/.thunderbird is pointing to $HOME/.icedove. + + So if you don't have one of the following four cases the wrapper script + will exit with a error message. + + 1. $HOME/.icedove is existing and holds valid profile data + 2. $HOME/.thunderbird points to $HOME/.icedove and 1. is true + 3. $HOME/.icedove points to $HOME/.thunderbird and 1. is true + 4. $HOME/.thunderbird is existing and holds valid profile data + (Note: Not the script, but Thunderbird will error out here if no + profiles are found!) + +If there is anything going wrong there will be splash screens displayed with +some additional notes, the logger mechanism will write some information about +what's going wrong into /var/log/syslog. + +So don't panic if there is something not working automatically. If the starter +script can't do the adoptions you will need to look by yourself and solve the +situation. Mostly there can be already a folder or symlink $HOME/.thunderbird +that prevents a automatic migration by the script. In such a case save a +existing folder $HOME/.thunderbird else where if needed and restart the +Thunderbird application. Other things like extra special mountpoints by the +system administrator can't also be handled by the script. Please ask the +service desk if you have trouble then. + +What else can you do? +You can call '/usr/bin/thunderbird --verbose' from a command line to see a +verbose output of the wrapper script. For more options of the wrapper script +and how to use them call '/usr/bin/thunderbird --help'. + +The Debian wiki is holding also extra information about the migration of +Icedove to Thunderbird. + + https://wiki.debian.org/Thunderbird + +For backward compatibility whithin the Stretch release there will be that +migration functionality until the release of Buster (aka Debian 10). +Afterwards you can still do this on your on by moving the folders manually. + += Avoid the pop-up information about migration globally = +========================================================= + +Within some use cases (e.g. bigger company environments) it can sometimes not +be useful that a user will see the dialogue window about the profile migration +as this can be more confusing than helpful. +To avoid this dialogue for all users on the system the administrator can create +a file '/etc/thunderbird/no_migration_popup' and the starting wrapper will +not pop-up the information dialogue if the migration isn't already done. + += User specific MIME Associations = +=================================== + +The desktop environment (usually Gnome, KDE, Mate etc.) is holding the +specific associations between MIME types and applications in various +places. In order the user can override system settings and adding new +ones the according place in the users home is the file +'$(HOME)/.config/mimeapps.list'. + +The migration is taking care for old 'icedove.desktop' associations and +is rewriting them to 'thunderbird.desktop'. +Like already done for the user profile, there will be always a backup +of the existing file created before the replacement can be done. In case +of problems you can safely move back to the original file. You will lost +then the needed association for the thunderbird binary. + +You can call '/usr/bin/thunderbird --show-backup' to see created backups from +the various possible modified files while the profile adoption. + +See also: + + https://specifications.freedesktop.org/mime-apps-spec/mime-apps-spec-1.0.html + += Migration of global configurations = +====================================== + +If you have some own special preferences files placed in '/etc/icedove/pref/' +they will be moved to '/etc/thunderbird/pref/'. +In case you have a modified file '/etc/icedove/pref/icedove.js' it will be +moved to '/etc/thunderbird/pref/icedove.js.dpkg-backup' to keep your changes. +Please adjust this file to the Thunderbird specific configuration file +'/etc/thunderbird/pref/thunderbird.js'. The old folder '/etc/icedove' is gone +be removed only if it is completely empty. + +There are still some corner cases where this automatism with configuration +files in /etc/thunderbird/pref is not fully working. Please note #806955 [4] +about such issues. + +[1] https://en.wikipedia.org/wiki/Mozilla_software_rebranded_by_Debian +[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815006 +[3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=816679 +[4] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=806955 + + -- Carsten Schoenert Sun, 21 Aug 2016 10:12:00 +0200 + +Mozilla Crash Reporter for Thunderbird +-------------------------------------- + +The crash reporter for Thunderbird is enabled since version > 1:45.6.0-3. By +this a possible crash could be automatically send to Mozilla if the user is +accepting this. There is nothing send to Mozilla without a user action. More +information about the crash reporter can be found on: + +https://support.mozilla.org/en-US/kb/mozilla-crash-reporter-tb + +Please consider to use the crash reporter for getting crashes reported +upstream, this also helps the maintainers if Thunderbird to get crash reports +send upstream. +Submitted crash reports can be found, if any was send, in + + ~/.thunderbird/Crash Reports/submitted/ + + -- Carsten Schoenert Sun, 29 Jan 2017 14:15:00 +0100 diff --git a/README.apparmor b/README.apparmor new file mode 100644 index 0000000000..3974689953 --- /dev/null +++ b/README.apparmor @@ -0,0 +1,30 @@ +AppArmor policy +--------------- + +The thunderbird package includes an AppArmor profile +(/etc/apparmor.d/usr.bin.thunderbird). This profile is disabled by +default because it has to break a number of common use cases in order +to provide meaningful application confinement. + +If you want to trade additional security against potential +functionality breakage, you can enable this profile by running: + + sudo rm /etc/apparmor.d/disable/usr.bin.thunderbird && \ + sudo apparmor_parser -r -T -W /etc/apparmor.d/usr.bin.thunderbird + +To display the current state of the Thunderbird profile, run: + + sudo apt install jq && \ + sudo aa-status --pretty-json | jq .profiles.thunderbird + +To debug issues with this AppArmor profile, see: + + https://wiki.debian.org/AppArmor/Debug + +This AppArmor profile is maintained collaboratively, in +a cross-distribution manner, within the AppArmor upstream project. +You can report issues or propose improvements there: + + https://gitlab.com/apparmor/apparmor-profiles + + -- Carsten Schoenert Sun, 3 Dec 2017 18:03:00 +0200 diff --git a/README.source b/README.source new file mode 100644 index 0000000000..0d5de1d62a --- /dev/null +++ b/README.source @@ -0,0 +1,90 @@ +This package is maintained with git-buildpackage(1). + +It uses pristine-tar(1) to store enough information in git to generate +bit identical tarballs when building the package without having +downloaded an upstream tarball first. + +When working with patches it is recommended to use "gbp pq import" to +import the patches, modify the source and then use "gbp pq export +--commit" to commit the modifications. + +The changelog is generated using "gbp dch" so if you submit any +changes don't bother to add changelog entries but rather provide +a nice git commit message that can then end up in the changelog. + +It is recommended to build the package with pbuilder using: + + gbp builpackage --git-pbuilder + +For information on how to set up a pbuilder environment see the +git-pbuilder(1) manpage. In short: + + DIST=sid git-pbuilder create + gbp clone + cd + gbp buildpackage --git-pbuilder + +src:thunderbird uses component tarballs for the l10n packages (see below). + + +Creating a source tarball thunderbird +===================================== + +Download the source from the Mozilla CDN [1], then use debian/repack.py +to repackage the Thunderbird upstream tarball: + + debian/repack.py -p thunderbird -u 52.4.0 -c xz ../thunderbird-52.4.0.source.tar.xz + +[1] http://ftp.mozilla.org/pub/thunderbird/releases/ + + +Creating a source tarball thunderbird-l10n +========================================== + +We need to create the component tarball for the thunderbird l10n: + + thunderbird_[xx].orig-thunderbird-l10n.tar.xz + +using + + debian/create-thunderbird-l10n-tarball.sh + +You need to run the script on top of the Thunderbird Git repository. + +Importing the source tarballs +============================= + +Since version 45.0 the source package Icedove was using component +tarballs to include the l10n source for iceowl-extension and thunderbird. +The same is now also true for src:thunderbird starting with 52.4.0 with +lightning and thunderbird l10n component tarballs. + +git-buildpackage supports component tarballs since version 0.8.0 so +you can import the tarballs using "gbp import-orig". Make sure the +component tarballs are placed in the same folder as +thunderbird_[version].orig.tar.xz then import the new upstream version as +usual: + + gbp import-orig --sign-tags [--verbose] /path/to/thunderbird_[version].orig.tar.xz + + +Pre-shipped Font file(s) +======================= +The source of Firefox is shipping a pre-build font EmojiOneMozilla.ttf in +the folder + + mozilla/browser/fonts/ + +Currently this font isn't provided by any package in Debian but Thunderbird is +needing this font as well in case users are working and using the HTML modus for +email reading or writing. Thus we ship that font starting with > 52.4.0-1 in + + /usr/lib/thunderbird/font + +Once the font is provided by a package we can drop the shipped file. There is +RFP #881475 about packaging the EmojiOne font. + +See also bug reports #849602 and #881299 + + https://bugs.debian.org/849602 + https://bugs.debian.org/881299 diff --git a/account-autoconfig/riseup.net.xml b/account-autoconfig/riseup.net.xml new file mode 100644 index 0000000000..75952efad1 --- /dev/null +++ b/account-autoconfig/riseup.net.xml @@ -0,0 +1,45 @@ + + + + riseup.net + + Riseup Networks Mail + Riseup + + + imap.riseup.net + 993 + SSL + %EMAILLOCALPART% + plain + + + + pop.riseup.net + 995 + SSL + plain + %EMAILLOCALPART% + + + + mail.riseup.net + 465 + SSL + %EMAILLOCALPART% + plain + true + false + + + + + + + Configure Thunderbird for Riseup Mail + + + + + diff --git a/apparmor/usr.bin.thunderbird b/apparmor/usr.bin.thunderbird new file mode 100644 index 0000000000..5c69ecdf9f --- /dev/null +++ b/apparmor/usr.bin.thunderbird @@ -0,0 +1,433 @@ +# vim:syntax=apparmor +# Author: Simon Deziel +# This apparmor profile is derived from firefox profile +# by Jamie Strandboge + +# Declare an apparmor variable to help with overrides +@{MOZ_LIBDIR}=/usr/lib/thunderbird + +#include + +profile thunderbird /usr/lib/thunderbird/thunderbird{,-bin} { + #include + #include + #include + # TODO: finetune this for required accesses + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + + # Backported from the mesa abstraction, available in AppArmor >2.13 + # System files + /dev/dri/ r, # libGLX_mesa.so calls drmGetDevice2() + + # User files + owner @{HOME}/.cache/ w, # if user clears all caches + owner @{HOME}/.cache/mesa_shader_cache/ w, + owner @{HOME}/.cache/mesa_shader_cache/index rw, + owner @{HOME}/.cache/mesa_shader_cache/??/ w, + owner @{HOME}/.cache/mesa_shader_cache/??/* rw, + # End of backported mesa abstraction + + # Backported from the dri-enumerate abstraction, available in AppArmor 2.13 + /sys/devices/pci[0-9]*/**/{device,subsystem_device,subsystem_vendor,uevent,vendor} r, + + # Allow opening attachments + # TODO: create and use abstractions for opening various file formats + /{usr/local/,usr/,}bin/* Cx -> sanitized_helper, + /usr/lib/libreoffice/program/soffice Cxr -> sanitized_helper, + + # Allow opening links + # GDesktopAppInfo in GLib 2.64.x uses a very small shell script + # to launch .desktop files, instead of gio-launch-desktop + /{usr/,}bin/{dash,bash} ixr, + # With older GLib we might still be on the fallback code path + # (remove this after Debian 11 and Ubuntu 20.04) + /usr/lib/@{multiarch}/glib-[0-9]*/gio-launch-desktop ix, + + # For Xubuntu to launch the browser + /usr/bin/exo-open ixr, + /usr/lib/@{multiarch}/xfce4/exo-[1-9]/exo-helper-[1-9] ixr, + /etc/xdg/xdg-xubuntu/xfce4/helpers.rc r, + /etc/xdg/xfce4/helpers.rc r, + owner @{HOME}/.config/xfce4/helpers.rc r, + + # for crash reports? + ptrace (read,trace) peer=@{profile_name}, + + /usr/lib/thunderbird/thunderbird{,-bin} ixr, + + # Pulseaudio + /usr/bin/pulseaudio Pixr, + + owner @{HOME}/.{cache,config}/dconf/user rw, + owner @{HOME}/.cache/thumbnails/** r, + owner /run/user/[0-9]*/dconf/user rw, + owner @{HOME}/.config/gtk-3.0/bookmarks r, + deny owner @{HOME}/.local/share/gvfs-metadata/* r, + + # potentially extremely sensitive files + audit deny @{HOME}/.gnupg/** mrwkl, + audit deny @{HOME}/.ssh/** mrwkl, + + # rw access to HOME is useful when sending/receiving attachments + owner @{HOME}/[^.]** rw, + + # other commonly used locations + /{data,media,mnt,srv}/** r, + owner /{data,media,mnt,srv}/** rw, + owner @{HOME}/.signature* r, + + # Required for LVM setups + /sys/devices/virtual/block/dm-[0-9]*/uevent r, + + # Addons (too lax for thunderbird) + ##include + + # for networking + network inet stream, + network inet6 stream, + @{PROC}/[0-9]*/net/if_inet6 r, + @{PROC}/[0-9]*/net/ipv6_route r, + @{PROC}/[0-9]*/net/dev r, + @{PROC}/[0-9]*/net/wireless r, + @{PROC}/[0-9]*/net/arp r, + + # should maybe be in abstractions + /etc/ r, + /etc/mime.types r, + /etc/mailcap r, + /etc/xdg/*buntu/applications/defaults.list r, # for all derivatives + /etc/xfce4/defaults.list r, + /usr/share/xubuntu/applications/defaults.list r, + owner /dev/shm/org.chromium.* rw, # for Chromium IPC + owner /dev/shm/org.mozilla.ipc.[0-9]*.[0-9]* rw, # for Chromium IPC + owner @{HOME}/.cache/fontconfig/*.cache-* rwk, + owner @{HOME}/.local/share/applications/defaults.list r, + owner @{HOME}/.local/share/applications/mimeapps.list r, + owner @{HOME}/.local/share/applications/mimeinfo.cache r, + owner @{HOME}/.recently-used r, + /tmp/.X[0-9]*-lock r, + /etc/udev/udev.conf r, + # Doesn't seem to be required, but noisy. Maybe allow 'r' for 'b*' if needed. + # Possibly move to an abstraction if anything else needs it. + deny /run/udev/data/** r, + + /etc/timezone r, + /etc/wildmidi/wildmidi.cfg r, + + # thunderbird specific + /etc/thunderbird/ r, + /etc/thunderbird/** r, + /etc/xul-ext/** r, + /etc/xulrunner-2.0*/ r, + /etc/xulrunner-2.0*/** r, + /etc/gre.d/ r, + /etc/gre.d/* r, + + # noisy + deny @{MOZ_LIBDIR}/** w, + deny /usr/lib/thunderbird-addons/** w, + deny /usr/lib/xulrunner-addons/** w, + deny /usr/lib/xulrunner-*/components/*.tmp w, + deny /.suspended r, + deny /boot/initrd.img* r, + deny /boot/vmlinuz* r, + deny /var/cache/fontconfig/ w, + + # noisy file dialog: + # + # TODO: remove these rules when file dialogs becomes "trusted helpers" that can + # read anything, or ability to override `deny` rules is implemented [0]. + # + # NOTE: modify `local/usr.bin.thunderbird` to add `deny` rules for cases not + # mentioned here when `DENIED` messages appear for dot files in kernel (or audit) + # logs. If that case is believed to be common enough, please report bug against + # package shipping this profile in order to extend this list. + # + # [0] https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/451422 + deny @{HOME}/.KiCad r, + deny @{HOME}/.abbrev_defs r, + deny @{HOME}/.aspell.*.{prepl,pws} r, + deny @{HOME}/.bashrc r, + deny @{HOME}/.bash_logout r, + deny @{HOME}/.bbdb r, + deny @{HOME}/.caffrc r, + deny @{HOME}/.colordiffrc r, + deny @{HOME}/.cvpcb r, + deny @{HOME}/.cvspass r, + deny @{HOME}/.devscripts r, + deny @{HOME}/.directory r, + deny @{HOME}/.dpt.conf r, + deny @{HOME}/.dput.cf r, + deny @{HOME}/.dupload.conf r, + deny @{HOME}/.eeschema r, + deny @{HOME}/.emacs r, + deny @{HOME}/.emacs.bmk r, + deny @{HOME}/.emacs.desktop* r, + deny @{HOME}/.fehbg r, + deny @{HOME}/.forward r, + deny @{HOME}/.gbp.conf r, + deny @{HOME}/.gerbview r, + deny @{HOME}/.gitconfig r, + deny @{HOME}/.gitk r, + deny @{HOME}/.gtk-recordmydesktop r, + deny @{HOME}/.gtkrc-2.0 r, + deny @{HOME}/.i18n r, + deny @{HOME}/.ido.last r, + deny @{HOME}/.iftoprc r, + deny @{HOME}/.inputrc r, + deny @{HOME}/.jigdo-lite r, + deny @{HOME}/.kicad r, + deny @{HOME}/.kicad_common r, + deny @{HOME}/.lesshst r, + deny @{HOME}/.listadmin.ini r, + deny @{HOME}/.minicpanrc r, + deny @{HOME}/.mostrc r, + deny @{HOME}/.mrconfig r, + deny @{HOME}/.mrlog r, + deny @{HOME}/.mrtrust r, + deny @{HOME}/.my.cnf r, + deny @{HOME}/.newsrc-dribble r, + deny @{HOME}/.newsrc.eld r, + deny @{HOME}/.notmuch-config r, + deny @{HOME}/.offlineimaprc r, + deny @{HOME}/.pam_environment r, + deny @{HOME}/.pbuilderrc r, + deny @{HOME}/.pcbnew r, + deny @{HOME}/.perldb r, + deny @{HOME}/.perltidyrc r, + deny @{HOME}/.pgadmin3 r, + deny @{HOME}/.pgadmin_histoqueries r, + deny @{HOME}/.pgpass r, + deny @{HOME}/.python_history r, + deny @{HOME}/.pythonhist r, + deny @{HOME}/.quiltrc r, + deny @{HOME}/.reportbug-ng r, + deny @{HOME}/.reportbugrc r, + deny @{HOME}/.rnd r, + deny @{HOME}/.screenrc r, + deny @{HOME}/.selected_editor r, + deny @{HOME}/.steam/bin{32,64}/steam r, # through a symlink + deny @{HOME}/.steam/steam.pid r, # through a symlink + deny @{HOME}/.steam/ubuntu12_{32,64}/steam r, # through a symlink + deny @{HOME}/.sudo_as_admin_successful r, + deny @{HOME}/.swp r, + deny @{HOME}/.taskrc r, + deny @{HOME}/.tmux.conf r, + deny @{HOME}/.vboxclient-*.pid r, + deny @{HOME}/.vimrc r, + deny @{HOME}/.wget-hsts r, + deny @{HOME}/.xchm r, + deny @{HOME}/.xfce4-session.verbose-log* r, + deny @{HOME}/.xim.template r, + deny @{HOME}/.xinitrc.template r, + deny @{HOME}/.xinputrc r, + deny @{HOME}/.xscreensaver r, + deny @{HOME}/.xsession*errors* r, + deny @{HOME}/.xsessionrc r, + deny @{HOME}/.Xresources r, + deny @{HOME}/.Xsession r, + deny @{HOME}/.zcompdump r, + deny @{HOME}/.zlogout r, + deny @{HOME}/.zshrc r, + + # TODO: investigate + deny /usr/bin/gconftool-2 x, + + # Deny proprietary NVIDIA driver optimizations + # TODO: remove once it can be disabled via conditionals set up in nvidia abstraction + deny /tmp/#[0-9][0-9][0-9][0-9][0-9][0-9][0-9] m, + deny /tmp/.gl?????? mrw, + deny @{HOME}/#[0-9][0-9][0-9][0-9][0-9][0-9][0-9]{,[0-9]} m, + deny @{HOME}/.nv/.gl?????? mrw, + + owner @{PROC}/[0-9]*/mountinfo r, + owner @{PROC}/[0-9]*/stat r, + owner @{PROC}/[0-9]*/task/[0-9]*/stat r, + /sys/devices/pci[0-9]*/**/uevent r, + /sys/devices/pci*/**/config r, + /sys/devices/system/node/node[0-9]*/meminfo r, + /etc/mtab r, + /etc/fstab r, + + # Needed for the crash reporter + owner @{PROC}/[0-9]*/environ r, + owner @{PROC}/[0-9]*/auxv r, + owner @{PROC}/[0-9]*/status r, + owner @{PROC}/[0-9]*/cmdline r, + /etc/lsb-release r, + /etc/ssl/openssl.cnf r, + /usr/lib/thunderbird/crashreporter ix, + /usr/bin/expr ix, + /sys/devices/system/cpu/ r, + /sys/devices/system/cpu/** r, + + # about:memory + owner @{PROC}/[0-9]*/statm r, + owner @{PROC}/[0-9]*/smaps r, + + # Needed for container to work in xul builds + /usr/lib/xulrunner-*/plugin-container ixr, + + # allow access to documentation and other files the user may want to look + # at in /usr and /opt + /usr/ r, + /usr/** r, + /opt/ r, + /opt/** r, + + # so browsing directories works + / r, + /**/ r, + + # per-user thunderbird configuration + owner @{HOME}/.{icedove,thunderbird}/ rw, + owner @{HOME}/.{icedove,thunderbird}/** rw, + owner @{HOME}/.{icedove,thunderbird}/**/storage.sdb k, + owner @{HOME}/.{icedove,thunderbird}/**/*.{db,parentlock,sqlite}* k, + owner @{HOME}/.{icedove,thunderbird}/plugins/** rm, + owner @{HOME}/.{icedove,thunderbird}/**/plugins/** rm, + owner @{HOME}/.cache/thunderbird/ rw, + owner @{HOME}/.cache/thunderbird/** rw, + + # system emails + owner /var/mail/* rwlk, + + # + # Extensions + # /usr/share/.../extensions/... is already covered by '/usr/** r', above. + # Allow 'x' for downloaded extensions, but inherit policy for safety + owner @{HOME}/.{icedove,thunderbird}/**/extensions/** mixrw, + owner @{HOME}/.mozilla/ rw, + owner @{HOME}/.mozilla/extensions/ rw, + owner @{HOME}/.mozilla/extensions/** mixr, + /usr/share/xul-ext/**/*.sqlite rk, + /usr/lib/mozilla/plugins/*.so rm, + /usr/lib/xul-ext/**/*.sqlite rk, + /usr/lib/thunderbird-addons/extensions/**/*.sqlite rk, + + deny @{MOZ_LIBDIR}/update.test w, + deny /usr/lib/mozilla/extensions/**/ w, + deny /usr/lib/xulrunner-addons/extensions/**/ w, + deny /usr/share/mozilla/extensions/**/ w, + deny /usr/share/mozilla/ w, + + /usr/bin/gpg Cx -> gpg, + /usr/bin/gpg2 Cx -> gpg, + /usr/bin/gpgconf Cx -> gpg, + /usr/bin/gpg-connect-agent Cx -> gpg, + /usr/lib/gnupg/gpg-wks-client ix, + /{,usr/}bin/ps ix, + + # TB tries to create this file but has no business doing so + deny @{HOME}/.gnupg/gpg-agent.conf w, + + profile gpg { + #include + + # Required to import keys from keyservers + #include + #include + + /usr/share/xul-ext/enigmail/chrome/** r, + + # silence noise from enigmail 1.9+ + deny owner @{HOME}/.{icedove,thunderbird}/*/.parentlock w, + deny owner @{HOME}/.{icedove,thunderbird}/*/panacea.dat w, + deny owner @{HOME}/.{icedove,thunderbird}/*/*.mab w, + deny owner @{HOME}/.{icedove,thunderbird}/**/*.msf w, + deny owner @{HOME}/.cache/thunderbird/**/_CACHE_* w, + + # noise from inherited files + deny @{HOME}/.{icedove,thunderbird}/*/ImapMail/*/INBOX w, + deny /usr/{lib,share}/thunderbird/omni.ja r, + deny /usr/share/thunderbird/extensions/** r, + + # For smartcards? + /dev/bus/usb/ r, + /dev/bus/usb/[0-9]*/ r, + /dev/bus/usb/[0-9]*/[0-9]* r, + + # LDAP key servers + /etc/ldap/ldap.conf r, + + /usr/bin/gpg mr, + /usr/bin/gpg2 mr, + /usr/bin/gpgconf mr, + /usr/bin/gpg-connect-agent mr, + /usr/lib/gnupg/gpgkeys_* ix, + /usr/lib/gnupg2/gpg2keys_* ix, + owner @{HOME}/.gnupg/ rw, + owner @{HOME}/.gnupg/gpg.conf r, + owner @{HOME}/.gnupg/random_seed rwk, + owner @{HOME}/.gnupg/pubring.{gpg,kbx}{,~} rw, + owner @{HOME}/.gnupg/secring.gpg rw, + owner @{HOME}/.gnupg/trustdb.gpg rw, + owner @{HOME}/.gnupg/tofu.db{,-journal} rwk, + owner @{HOME}/.gnupg/S.gpg-agent rw, + owner @{HOME}/.gnupg/S.dirmngr rw, + owner @{HOME}/.gnupg/*.{gpg,kbx}.{lock,tmp} rwl, + owner @{HOME}/.gnupg/.gpg-*.lock rwl, + owner @{HOME}/.gnupg/gnupg_spawn_*.lock rwl, + owner @{HOME}/.gnupg/.#*[0-9] rw, + owner @{HOME}/.gnupg/.#*[0-9]x rwl, + owner @{HOME}/.gnupg/.#lk0x[0-9a-f]* rwl, + owner @{HOME}/.gnupg/.gpg-v[0-9]*-migrated rw, + owner @{HOME}/.gnupg/openpgp-revocs.d/{,[A-F0-9]*.rev} rw, + owner @{HOME}/** r, + owner @{PROC}/@{pids}/mountinfo r, + + # For gpgconf + owner @{PROC}/@{pids}/fd/ r, + + owner /run/user/[0-9]*/keyring-*/gpg rw, + + # For encryption + signature + owner /tmp/gpgOutput.* rw, + + # for inline pgp + owner /tmp/encfile rw, + owner /tmp/encfile-[0-9]* rw, + + # for key import + owner /tmp/enigmail_import/.#lk0x[0-9a-f]* rw, + owner /tmp/enigmail_import/.#lk0x[0-9a-f]*x rwl, + owner /tmp/enigmail_import/{keyring,trustdb}.lock rwl, + owner /tmp/enigmail_import/{keyring,trustdb}{,~,.tmp} rw, + /usr/bin/dirmngr ix, + owner @{PROC}/@{pids}/task/@{tid}/comm rw, + + # for revocation certificate generation in the Enigmail setup wizard + owner @{HOME}/.{icedove,thunderbird}/*/0x[A-F0-9]*_rev.asc rw, + # for revocation certificate generation in the Enigmail key manager + owner @{HOME}/*0x[A-F0-9]**.asc rw, + + # for signature generation + owner /tmp/nsemail.eml w, + owner /tmp/nsemail-[0-9]*.eml w, + + # for signature verifications + owner /tmp/data.sig r, + owner /tmp/data-[0-9]*.sig r, + + owner /tmp/gpg-[a-zA-Z0-9]*/S.gpg-agent rw, + + /usr/share/sounds/** r, + } + + # Site-specific additions and overrides. See local/README for details. + #include +} + diff --git a/changelog b/changelog new file mode 100644 index 0000000000..7bae772e6a --- /dev/null +++ b/changelog @@ -0,0 +1,6769 @@ +thunderbird (1:78.4.2-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + (Closes: #973660) + [ Emilio Pozuelo Monfort ] + * [3d58cc1] d/control: reenable the armhf build on buster + + -- Carsten Schoenert Wed, 11 Nov 2020 20:06:07 +0100 + +thunderbird (1:78.4.2-1) unstable; urgency=medium + + * [c7f4ed2] New upstream version 78.4.2 + Fixed CVE issues in upstream version 78.4 (MFSA 2020-49): + CVE-2020-26950: Write side effects in MCallGetProperty opcode not + accounted for + * [c3a617d] rebuild patch queue from patch-queue branch + added patch: + fixes/Bug-1663715-Update-syn-and-proc-macro2-so-that-Firefox-ca.patch + * [8e4e7ad] thunderbird-l10n-all: add thunderbird-l10n-cy + (Closes: #974127) + + -- Carsten Schoenert Tue, 10 Nov 2020 21:19:15 +0100 + +thunderbird (1:78.4.1-1) unstable; urgency=medium + + * [cf8bf1e] New upstream version 78.4.1 + * [529000c] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1650299-Unify-the-inclusion-of-the-ICU-data-file.-r-f.patch + fixes/Don-t-build-ICU-in-parallel.patch + Patches are picked from Firefox and fixing FTBFS on s390x within buster. + + -- Carsten Schoenert Fri, 06 Nov 2020 21:53:24 +0100 + +thunderbird (1:78.4.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Fri, 23 Oct 2020 20:44:21 +0200 + +thunderbird (1:78.4.0-1) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * [652f8de] install the apparmor profile in thunderbird.install + + [ Carsten Schoenert ] + * [5240d53] Revert "thunderbird.install: adjust.desktop renamed file name" + (Closes: #972601) + * [861b21a] Revert "Rename .desktop file for AppStream compliance" + (Closes: #972578) + * [ffc5818] New upstream version 78.4.0 + Fixed CVE issues in upstream version 78.4 (MFSA 2020-47): + CVE-2020-15969: Use-after-free in usersctp + CVE-2020-15683: Memory safety bugs fixed in Thunderbird 78.4 + * [81396e3] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + porting-mips/Bug-1649655-MIPS-Add-CodeGenerator-visitWasmRegisterResul.patch + porting/Bug-1666646-Bump-CodeAlignment-to-8-in-MacroAssembler-non.patch + + modified patches: + fixes/Appdata-Adding-some-German-translations.patch + fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch + + Minor fine tuning to the AppStream specific parts but also revert some + translation entries as they are not intend to be translatable. + These modification also in correlation with the mentioned bug reports above + which are closed by the other adjustments. + + -- Carsten Schoenert Thu, 22 Oct 2020 18:48:25 +0200 + +thunderbird (1:78.3.3-1) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * [6f18974] Remove duplicated --disable-debug-symbols flag + * [1119d50] Print a verbose build log by not calling the mach wrapper + * [fcf7c11] Exclude -g from CXXFLAGS as well + + [ Carsten Schoenert ] + * [9eb159f] New upstream version 78.3.3 + * [47171dc] rebuild patch queue from patch-queue branch + added patches: + fixes/Appdata-Adding-some-German-translations.patch + fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch + * [1474d91] Rename .desktop file for AppStream compliance + * [10e49a9] thunderbird.install: adjust.desktop renamed file name + * [018bbc1] thunderbird.pc: remove left over cruft + + -- Carsten Schoenert Sun, 18 Oct 2020 08:49:20 +0200 + +thunderbird (1:78.3.2-1) unstable; urgency=medium + + * [0b2f19f] d/rules: remove hand crafted icu build + Cherry-picked from debian/buster branch. + The possible required build of the ICU if the usage of an external ICU + library is now handled by the upstream build system. + * [1583517] d/rules: rewrite dpkg_buildflags to remove option '-g' + Cherry-picked from debian/buster branch. + We need to remove the option '-g' from the dpkg_buildflags variable for + real if we want a build without debugging information (e.g. on 32bit + architectures). + * [fb4c9c4] New upstream version 78.3.2 + * [9d5e2b9] d/rules: install the language Add-ons into /u/l/t/e + Do not install the thunderbird-l10n packages into /usr/share/thunderbird + any more, install them directly into /usr/libt/thunderbird/extensions. + This simplifies the package structures as there is no real need to install + the packages into /usr/share/thunderbird and linking them back. + + -- Carsten Schoenert Fri, 09 Oct 2020 19:49:45 +0200 + +thunderbird (1:78.3.1-2~deb10u2) stable-security; urgency=medium + + * [72d9abd] d/rules: rewrite dpkg_buildflags to remove option '-g' + * [adb263e] d/rules: disable dbgsym package on i386 for stable-security + + -- Carsten Schoenert Mon, 05 Oct 2020 18:59:20 +0200 + +thunderbird (1:78.3.1-2~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + * [cc92401] d/rules: remove hand crafted icu build + + -- Carsten Schoenert Sat, 03 Oct 2020 17:41:36 +0200 + +thunderbird (1:78.3.1-2) unstable; urgency=medium + + * [649f664] rebuild patch queue from patch-queue branch + added patches: + fixes/reduce-the-rust-debuginfo-level-on-selected-architectures.patch + porting-s390x/Explicitly-instantiate-TIntermTraverser-traverse-TIntermN.patch + + -- Carsten Schoenert Wed, 30 Sep 2020 19:10:27 +0200 + +thunderbird (1:78.3.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [6bd965f] New upstream version 78.3.1 + Fixed CVE issues in upstream version 78.3.1 (MFSA 2020-44): + CVE-2020-15677: Download origin spoofing via redirect + CVE-2020-15676: XSS when pasting attacker-controlled data into a + contenteditable element + CVE-2020-15678: When recursing through layers while scrolling, an iterator + may have become invalid, resulting in a potential + use-after-free scenario + CVE-2020-15673: Memory safety bugs fixed in Thunderbird 78.3 + * [8ba13c5] rebuild patch queue from patch-queue branch + added patches(picked from firefox packaging): + fixes/Add-missing-bindings-for-mips-in-the-authenticator-crate.patch + porting-mips/Bug-1642265-MIPS64-Add-branchTestSymbol-and-fallibleUnbox.patch + porting-mips/Bug-1649655-MIPS-Add-CodeGenerator-visitWasmRegisterResul.patch + porting/Bug-1666646-Bump-CodeAlignment-to-8-in-MacroAssembler-non.patch + removed patch(fixed upstream): + fixes/Bug-1664607-Don-t-try-to-load-what-s-new-page-when-built-.patch + * [c6d282d] calendar-google-provider*: removing left over cruft + There are two left over sequencer files from the calendar-google-package, + not need any more since 1:68.2.2-1 + * [cf37615] d/README.Debian: Update and adding new information + Some updated information regarding the now included OpenPGP support, also + updating some grammar for 'Add-on'. + * [faf225b] thunderbird.NEWS: Add hint about integration of OpenPGP support + Giving the user a information about the OpenPGP status within Thunderbird + since the version 78.0. + * [d6f4f0e] Revert "d/tb.lintian-overrides: ignore warning about none + versioned breaks" + * [9e6cbec] d/copyright: update content + + -- Carsten Schoenert Sun, 27 Sep 2020 09:08:29 +0200 + +thunderbird (1:78.2.2-1) experimental; urgency=medium + + * [c6592e8] New upstream version 78.2.2 + * [28f5fce] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1664607-Don-t-try-to-load-what-s-new-page-when-built-.patch + porting-s390x/Use-more-recent-embedded-version-of-sqlite3.patch + * [4866c06] d/mozconfig.default: add extra config options for ppc64el + + -- Carsten Schoenert Sun, 13 Sep 2020 08:58:44 +0200 + +thunderbird (1:78.2.1-1) experimental; urgency=medium + + * [1f3f76b] d/rules: drop C{,XX}FLAGS originally intended for GCC6 + * [4490e37] d/mozconfig.default: add options for mips64el + * [17b4e5c] d/rules: Don't build debug symbols on 32Bit arch + * [6dff7e0] d/rules: adding -Wl,--as-needed to linker flags + * [a213a7f] New upstream version 78.2.1 + + -- Carsten Schoenert Sun, 30 Aug 2020 14:38:17 +0200 + +thunderbird (1:78.2.0-1) experimental; urgency=medium + + [ intrigeri ] + * [f6fcafd] d/control: drop hard dependency on libgtk2.0-0 + (Closes: #908654) + * [85b7a2e] autopkgtests: fix typo in comment + * [4bd70ae] d/mozconfig.default: fix typos in comments + * [d986a6d] d/control: allow Enigmail 2.2.0 and newer + (Closes: #968707) + + [ Carsten Schoenert ] + * [52b4006] d/control: increase B-D for libnss3 + (Closes: #966805) + * [7794563] New upstream version 78.2.0 + Fixed CVE issues in upstream version 78.2.0 (MFSA 2020-41): + CVE-2020-15663: Downgrade attack on the Mozilla Maintenance Service could + have resulted in escalation of privilege + CVE-2020-15664: Attacker-induced prompt for extension installation + CVE-2020-15670: Memory safety bugs fixed in Thunderbird 78.2 + * [623f853] rebuild patch queue from patch-queue branch + No modifications made, just updating the index. + + -- Carsten Schoenert Wed, 26 Aug 2020 20:41:28 +0200 + +thunderbird (1:78.1.1-1) experimental; urgency=medium + + * [5fb842b] d/mozconfig.default: adding new option regarding Add-Ons + Adding additional options --allow-addon-sideload and + --with-unsigned-addon-scopes=app,system. These option are adopted and + taken from the firefox package. + * [8de0b35] New upstream version 78.1.1 + * [4abe5ed] d/copyright: update content + Some small updates to the copyright information. + * [3caa541] d/control: adding new B-D for botan and json-c + The upstream source now offers the possibility to use the system + libraries for botan and json-c, for this we need to have both libraries + installed for building Thunderbird. + * [251d524] d/mozconfig.default: use botan and json-c system libraries + Turn on the configuration flags for botan and also for json-c that let + the build use the installed provided system libraries instead of using + internal versions. + * [a32a163] rebuild patch queue from patch-queue branch + removed patch: + debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + Upstream has now (again) a configure option for using a installed system + bzip2 library that makes our added patch for this not needed anymore. + * [16c91c0] lintian: remove override for embedded bzip2 in librnp.so + + -- Carsten Schoenert Sat, 08 Aug 2020 19:16:08 +0200 + +thunderbird (1:78.1.0-1) experimental; urgency=medium + + * [c4099cd] New upstream version 78.1.0 + Fixed CVE issues in upstream version 78.1.0 (MFSA 2020-33): + CVE-2020-15652: Potential leak of redirect targets when loading scripts in + a worker + CVE-2020-6514: WebRTC data channel leaks internal address to peer + CVE-2020-15655: Extension APIs could be used to bypass Same-Origin Policy + CVE-2020-15653: Bypassing iframe sandbox when allowing popups + CVE-2020-6463: Use-after-free in ANGLE gl::Texture::onUnbindAsSamplerTexture + CVE-2020-15656: Type confusion for special arguments in IonMonkey + CVE-2020-15658: Overriding file type when saving to disk + CVE-2020-15657: DLL hijacking due to incorrect loading path + CVE-2020-15654: Custom cursor can overlay user interface + CVE-2020-15659: Memory safety bugs fixed in Thunderbird 78.1 + + -- Carsten Schoenert Fri, 31 Jul 2020 19:35:57 +0200 + +thunderbird (1:78.0.1-1) experimental; urgency=medium + + * [5450d8d] d/control: increase B-D for libnss3 + * [9749d1d] d/control: drop B-D on python2 and move over to python3 + * [b31360b] d/xpi-pack.sh: adding xpi-pack shell script + * [89ede80] Drop mozilla-devscripts as B-D + * [f3b2ced] New upstream version 78.0.1 + * [1847202] d/tb.lintian-overrides: ignore warning about none versioned + breaks + * [d56c922] d/lightning.links: removing left over sequencer file + + -- Carsten Schoenert Wed, 22 Jul 2020 20:11:25 +0200 + +thunderbird (1:78.0-1) experimental; urgency=medium + + * [1016cc5] New upstream version 78.0 + Fixed CVE issues in upstream version 78.0 (MFSA 2020-29): + CVE-2020-12415: AppCache manifest poisoning due to url encoded character + processing + CVE-2020-12416: Use-after-free in WebRTC VideoBroadcaster + CVE-2020-12417: Memory corruption due to missing sign-extension for + ValueTags on ARM64 + CVE-2020-12418: Information disclosure due to manipulated URL object + CVE-2020-12419: Use-after-free in nsGlobalWindowInner + CVE-2020-12420: Use-After-Free when trying to connect to a STUN server + CVE-2020-15648: X-Frame-Options bypass using object or embed tags + CVE-2020-12402: RSA Key Generation vulnerable to side-channel attack + CVE-2020-12421: Add-On updates did not respect the same certificate trust + rules as software updates + CVE-2020-12422: Integer overflow in nsJPEGEncoder::emptyOutputBuffer + CVE-2020-12424: WebRTC permission prompt could have been bypassed by a + compromised content process + CVE-2020-12425: Out of bound read in Date.parse() + CVE-2020-12426: Memory safety bugs fixed in Thunderbird 78 + * [ad66b04] rebuild patch queue from patch-queue branch + reworked patch: + porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + * [4a2039c] d/mozconfig.default: enable OpenPGP feature build + + -- Carsten Schoenert Thu, 16 Jul 2020 19:15:25 +0200 + +thunderbird (1:78.0~b2-1) experimental; urgency=medium + + * [c8da927] d/source.filter: fix obviously happen typo + * [c513a96] New upstream version 78.0~b2 + * [6e9104e] d/control: tb, adding binary version to lightning provides + Make the Provides for Lightning a versioned provide. + * [8adec8f] enigmail: let any version of Enigmail break + We now can break on any Enigmail version, the Enigmail functions are now + included in Thunderbird and don't want to have an Enigmail package get + installed in parallel. + * [696b1fc] xul-ext-*/webext-*: adding more extensions to break + Quite all of the current packaged Thunderbird extensions will not work + for now with Thunderbird 78.*, adding/renaming the current know packages + with recent versions to Breaks for thunderbird. + * [e488d0c] thunderbird: remove some non-existing packages from Breaks + The listed packages + xul-ext-foxyproxy-standard + xul-ext-gnome-keyring + xul-ext-nostalgy + aren't in any supported release so we don't need them any more within a + Breaks for thunderbird. + * [039ee90] thunderbird: remove outdated myspell packages from Breaks + All previously listed myspell packages in Breaks for thunderbird aren't + reachable with the given version any more. We can remove them safely. + * [08ea0ba] thunderbird: remove outdated hunspell packages from Breaks + The same is true for the hunspell packages that were listed in the Breaks + field for thunderbird. + + -- Carsten Schoenert Sat, 20 Jun 2020 18:04:59 +0200 + +thunderbird (1:78.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [625efa9] d/source.filter: some updates to filtering list + Recent modification of the shipped files in the upstream tarball do + require small updates of the filter list we use to repack the tarball. + * [967ee19] New upstream version 78.0~b1 + * [240991e] rebuild patch queue from patch-queue branch + removed patch: + debian-hacks/use-icudt-b-l-.dat-depending-on-architecture.patch + This will require some additional adjustment later for the stable-security + uploads as this patch was required to get a recent ICU version build + before the build of the thunderbird sources did start. + reworked patch: + debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + * [07cab53] d/mozconfig.default: remove no longer existing options + By this release a lot of old configure options are kicked out, some of + them we have used until now. We need to remove these from the config. + * [df2e99b] d/copyright: update content + As usual some required update of the copyright file, more files are not + shipped anymore. + + [ intrigeri ] + * [82a4b03] AppArmor: update profile from upstream at commit 860d2d9 + (cherry-picked from unstable) + + -- Carsten Schoenert Sat, 13 Jun 2020 20:01:39 +0200 + +thunderbird (1:77.0~b3-1) experimental; urgency=medium + + * [82de2f6] New upstream version 77.0~b3 + * [8beaf6f] rebuild patch queue from patch-queue branch + removed patch (included upstream): + fixes/Bug-1634994-fix-disable-av1-r-tnikkel.patch + * [ab2d7a2] d/copyright: Add license for appstream xml file + * [1533187] d/source.filter: Remove some *.wasm files as well + * [7cdfe03] d/thunderbird.lintian-overrides: Some more needed overrides + We need currently the included bzip library. Also add a false positive + about the misread postinst script. + * [9385fd4b] d/control: Remove doubled listed package libglib2.0-dev + Drop a doubled listed package libglib2.0-dev within B-D. + + -- Carsten Schoenert Wed, 20 May 2020 20:58:09 +0200 + +thunderbird (1:77.0~b2-1) experimental; urgency=medium + + * [185d4f7] New upstream version 77.0~b2 + * [e918036] rebuild patch queue from patch-queue branch + removed patch: + fixes/Bug-1635671-Upgrade-typename-to-1.12.0.-r-emilio.patch + * [c1979ce] d/mozconfig.default: Remove obsolete options + Drop the options '--with-distribution-id' and '--with-user-appdir'. + The former is basically only supporting the given default 'org.mozilla' + and the latter was set to the default '.mozilla' anyway. + + -- Carsten Schoenert Sat, 16 May 2020 14:04:02 +0200 + +thunderbird (1:77.0~b1-1) experimental; urgency=medium + + * [ee06e6e] New upstream version 77.0~b1 + * [a21b649] rebuild patch queue from patch-queue branch + removed patches (not needed any more): + lower-down-required-version-on-NSS3.patch + + added patches: + fixes/Bug-1634994-fix-disable-av1-r-tnikkel.patch + fixes/Bug-1635671-Upgrade-typename-to-1.12.0.-r-emilio.patch + * [295cc4d] d/control: increase B-D for libnss3 + The build requires now libnss3-dev >= 2:3.52. + * [f998baf] lintian-overrides: remove overrides for kinto-http-client.js + No override needed for this file, it's not included any more. + + -- Carsten Schoenert Fri, 08 May 2020 15:18:44 +0200 + +thunderbird (1:76.0~b2-1) experimental; urgency=medium + + * [87988db] d/control: increase B-D for cargo to 0.42 + * [b9b0dfd] rebuild patch queue from patch-queue branch + removed patch: + debian-hacks/Ignore-version-check-for-cargo.patch + * [8386db0] d/control: Remove B-D on libjson-dev and libsqlite3-dev + The built uses internal copies for libjson and libsqlite as there are + made modifications to them. For now we can decrease the list of build + dependencies by removing this two packages. + * [6324222] New upstream version 76.0~b2 + * [629b3bb] d/rules: Remove default compiler flag + No needed for '-Wl,--as-needed' any more, it's default now. + + -- Carsten Schoenert Mon, 27 Apr 2020 09:55:43 +0200 + +thunderbird (1:76.0~b1-1) experimental; urgency=medium + + * [b52cd52] d/c-thunderbird-l10n-tarball.sh: change upstream resource + Upstream has changed the folder were we can find the language providing + XPI packages. They simply moved over from linux-i686 to linux-x86_64. + * [22e697a] d/rules: drop set up of LIGHTNING_VERSION variable + We don't need this variable any more for building the packages (like all + the lightning-foo named stuff), there is no dedicated Lighting named stuff + around. + * [4ad871b] d/gbp.conf: Remove additional tarball for lightning-l10n + git-buildpackage won't find this additional tarball as it's not needed + starting by the import of the next upstream version (this is 76.0b1). + * [25d8d42] d/c-l-l10n-t.sh: Remove helper script + We also don't need to build the l10n specific additional tarball for + Lighting related parts any more. Dropping this helper script. + * [9d33d06] d/README.source: Remove part of lightning-l10n + * [b063d7f] New upstream version 76.0~b1 + * [e7a23ec] rebuild patch queue from patch-queue branch + removed patches (not needed or included upstream): + debian-hacks/Build-against-system-libjsoncpp.patch + debian-hacks/Downgrade-SQlite-version-to-3.27.2.patch + fixes/Bug-1531309-Don-t-use-__PRETTY_FUNCTION__-or-__FUNCTION__.patch + fixes/Bug-1560340-Only-add-confvars.sh-as-a-dependency-to-confi.patch + + added patches: + debian-hacks/Ignore-version-check-for-cargo.patch + lower-down-required-version-on-NSS3.patch + * [94d8593] d/control: adding new packages thunderbird-l10n-{cak,kab,uz} + After the final release of Thunderbird 68.0 new l10n support for the + languages Kacqhikel, Georgian and Uzbek was added. Reflect this by adding + new binary packages for those languages. + * [5397182] d/mozconfig.default: remove option for system-sqlite + Upstream is using their own version of an modified SQLite now and has + dropping the additional configure option about this. + * [abb0ded] d/control: increase various versions in B-D + The current source requires some more recent versions of the helping tools + for building the sources as usual. + * [abfc8b2] d/rules: remove any action related to old lightning stuff + As the sources doesn't have any Lightning specific parts any more we need + to adjust the build process within debian/rules a bit. Thus dropping all + the rules around Lighting things. + * [f95b3ad] d/control: Turn lightning into transitional package + For now switch the behaviour of the lightning package into a transitional + one. We might can drop the whole package rather soon. + * [c3062cb] d/thunderbird.install: Remove blocklist.xml + Don't install the file blocklist.xml any more, it's now not shipped by + upstream any more. + * [856e99e] d/mozconfig.thunderbird: Remove --enable-calendar + Previously the build of the Lightning extension was needed to get enabled + to built this as an extension. Now it's fully integrated into the core + this configure option isn't needed any longer. + * [5551a8a] d/copyright: update content + As usual there is some moving within the source code between the major + versions, reflect this by adjusting the content of the copyright file. + * [21e9b7f] lintian-overrides: adjust overrides for needed files + Also the override file for the source is needing some adjustments. + * [f25ddc4] d/source.filter: update the filter sequences + The control for filtering non needed stuff from the upstream tarball must + also get adjusted due changed versions, moved folders etc. + * [e4a81ba] d/thunderbird.install: Install also appdata.xml + Upstream is providing an AppStream data file which we want install mow + also. + * [80385c9] d/source.filter: Sorting entries alphabetically + No functional modifications, just sorting entries to find stuff more easily. + * [585cf0a] d/thunderbird.lintian-overrides: update after config changes + We also need to modify the content for Lintian overrides for the + thunderbird package a bit. Thunderbird comes now (again) with own versions + of the libraries libtheora and libjsoncpp. Mostly because Mozilla has made + some own modifications within these libraries. + + -- Carsten Schoenert Sat, 18 Apr 2020 08:28:25 +0200 + +thunderbird (1:68.12.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + * [32b3711] Revert "d/xpi-pack.sh: adding xpi-pack shell script" + * [b50609a] Revert "Drop mozilla-devscripts as B-D" + * [fd054fc] Revert "Drop python-{minimal,ply} from B-D" + * [5a2a88c] Revert "d/control: tb manually set dep on libnss3 to 2:3.55" + + -- Carsten Schoenert Sat, 29 Aug 2020 08:52:22 +0200 + +thunderbird (1:68.12.0-1) unstable; urgency=medium + + * [103cab7] New upstream version 68.12.0 + Fixed CVE issues in upstream version 68.11.0 (MFSA 2020-35): + CVE-2020-15663: Downgrade attack on the Mozilla Maintenance Service could + have resulted in escalation of privilege + CVE-2020-15664: Attacker-induced prompt for extension installation + CVE-2020-15669: Use-After-Free when aborting an operation + + -- Carsten Schoenert Thu, 27 Aug 2020 21:23:55 +0200 + +thunderbird (1:68.11.0-3) unstable; urgency=medium + + * [28707fd] d/xpi-pack.sh: adding xpi-pack shell script + As we can't depend on mozilla-devscripts anymore we pick up the shell + script from that package as this builds XPI files we need. + * [037212e] Drop mozilla-devscripts as B-D + mozilla-devscripts isn't ported to Python3 yet and depends on Python2 so. + We don't need that package as B-D as we picked the main shell script from + that and we can drop that package from the build dependencies. + * [31eda41] Drop python-{minimal,ply} from B-D + These packages are removed from teh archive and we don't need them for + building Thunderbird as long we have python2 as package available. + (Closes: #967223) + + -- Carsten Schoenert Tue, 04 Aug 2020 19:06:20 +0200 + +thunderbird (1:68.11.0-2) unstable; urgency=medium + + * [110a375] d/control: increase B-D for libnss3 + * [73fa23e] d/control: tb manually set dep on libnss3 to 2:3.55 + (Closes: #966806) + + -- Carsten Schoenert Sun, 02 Aug 2020 20:12:49 +0200 + +thunderbird (1:68.11.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Sat, 01 Aug 2020 09:04:25 +0200 + +thunderbird (1:68.11.0-1) unstable; urgency=medium + + * [093b080] New upstream version 68.11.0 + Fixed CVE issues in upstream version 68.11.0 (MFSA 2020-35): + CVE-2020-15652: Potential leak of redirect targets when loading scripts + in a worker + CVE-2020-6514: WebRTC data channel leaks internal address to peer + CVE-2020-6463: Use-after-free in ANGLE gl::Texture::onUnbindAsSamplerTexture + CVE-2020-15659: Memory safety bugs fixed in Thunderbird 68.11 + + -- Carsten Schoenert Wed, 29 Jul 2020 22:26:14 +0200 + +thunderbird (1:68.10.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Sat, 04 Jul 2020 15:29:15 +0200 + +thunderbird (1:68.10.0-1) unstable; urgency=medium + + * [7537684] New upstream version 68.10.0 + Fixed CVE issues in upstream version 68.10.0 (MFSA 2020-26): + CVE-2020-12417: Memory corruption due to missing sign-extension for + ValueTags on ARM64 + CVE-2020-12418: Information disclosure due to manipulated URL object + CVE-2020-12419: Use-after-free in nsGlobalWindowInner + CVE-2020-12420: Use-After-Free when trying to connect to a STUN server + MFSA-2020-0001: Automatic account setup leaks Microsoft Exchange login + credentials + CVE-2020-12421: Add-On updates did not respect the same certificate trust + rules as software updates + + -- Carsten Schoenert Sat, 04 Jul 2020 10:55:31 +0200 + +thunderbird (1:68.9.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + (Closes: #960465) + + -- Carsten Schoenert Wed, 06 May 2020 14:04:32 +0200 + +thunderbird (1:68.9.0-1) unstable; urgency=medium + + [ intrigeri ] + * [fd13825] AppArmor: update profile from upstream at commit 860d2d9 + (Closes: #960465) + + [ Carsten Schoenert ] + * [c310c40] New upstream version 68.9.0 + Fixed CVE issues in upstream version 68.9.0 (MFSA 2020-22): + CVE-2020-12399: Timing attack on DSA signatures in NSS library + CVE-2020-12405: Use-after-free in SharedWorkerService + CVE-2020-12406: JavaScript Type confusion with NativeTypes + CVE-2020-12410: Memory safety bugs fixed in Thunderbird 68.9.0 + CVE-2020-12398: Security downgrade with IMAP STARTTLS leads to + information leakage + + -- Carsten Schoenert Fri, 05 Jun 2020 20:29:35 +0200 + +thunderbird (1:68.8.1-1) unstable; urgency=medium + + * [7495e7a] New upstream version 68.8.1 + + -- Carsten Schoenert Fri, 22 May 2020 19:04:20 +0200 + +thunderbird (1:68.8.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Wed, 06 May 2020 14:04:32 +0200 + +thunderbird (1:68.8.0-1) unstable; urgency=medium + + * [9b5ae46] New upstream version 68.8.0 + Fixed CVE issues in upstream version 68.8.0 (MFSA 2020-18): + CVE-2020-12397: Sender Email Address Spoofing using encoded Unicode + characters + CVE-2020-12387: Use-after-free during worker shutdown + CVE-2020-6831: Buffer overflow in SCTP chunk input validation + CVE-2020-12392: Arbitrary local file access with 'Copy as cURL' + CVE-2020-12393: Devtools' 'Copy as cURL' feature did not fully escape + website-controlled data, potentially leading to command + injection + CVE-2020-12395: Memory safety bugs fixed in Thunderbird 68.8.0 + + -- Carsten Schoenert Tue, 05 May 2020 20:47:29 +0200 + +thunderbird (1:68.7.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Sun, 12 Apr 2020 10:21:40 +0200 + +thunderbird (1:68.7.0-1) unstable; urgency=medium + + * [c0052af] New upstream version 68.7.0 + Fixed CVE issues in upstream version 68.7.0 (MFSA 2020-14): + CVE-2020-6819: Use-after-free while running the nsDocShell destructor + CVE-2020-6820: Use-after-free when handling a ReadableStream + CVE-2020-6821: Uninitialized memory could be read when using the WebGL + copyTexSubImage method + CVE-2020-6822: Out of bounds write in GMPDecodeData when processing large + images + CVE-2020-6825: Memory safety bugs fixed in Thunderbird 68.7 + + -- Carsten Schoenert Sun, 12 Apr 2020 07:40:41 +0200 + +thunderbird (1:68.6.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Tue, 17 Mar 2020 16:24:05 +0100 + +thunderbird (1:68.6.0-1) unstable; urgency=medium + + * [5709774] New upstream version 68.6.0 + Fixed CVE issues in upstream version 68.6.0 (MFSA 2020-10): + CVE-2019-20503: Out of bounds reads in sctp_load_addresses_from_init + CVE-2020-6805: Use-after-free when removing data about origins + CVE-2020-6806: BodyStream::OnInputStreamReady was missing protections + against state confusion + CVE-2020-6807: Use-after-free in cubeb during stream destruction + CVE-2020-6811: Devtools' 'Copy as cURL' feature did not fully escape + website-controlled data, potentially leading to + command injection + CVE-2020-6812: The names of AirPods with personally identifiable + information were exposed to websites with camera or + microphone permission + CVE-2020-6814: Memory safety bugs fixed in Thunderbird 68.6 + + -- Carsten Schoenert Mon, 16 Mar 2020 20:01:29 +0100 + +thunderbird (1:68.5.0-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + (Closes: #891848) + + -- Carsten Schoenert Sat, 15 Jan 2020 17:48:09 +0100 + +thunderbird (1:68.5.0-1) unstable; urgency=medium + + * [d79bf82] New upstream version 68.5.0 + Fixed CVE issues in upstream version 68.5.0 (MFSA 2020-07): + CVE-2020-6793: Out-of-bounds read when processing certain email messages + CVE-2020-6794: Setting a master password post-Thunderbird 52 does not + delete unencrypted previously stored passwords + CVE-2020-6795: Crash processing S/MIME messages with multiple signatures + CVE-2020-6798: Incorrect parsing of template tag could result in + JavaScript injection + CVE-2020-6792: Message ID calculcation was based on uninitialized data + CVE-2020-6800: Memory safety bugs fixed in Thunderbird 68.5 + (Closes: #891848) + * [0884df6] d/control: increase Standards-Version to 4.5.0 + No further changes needed. + + -- Carsten Schoenert Thu, 13 Feb 2020 17:58:44 +0100 + +thunderbird (1:68.4.2-1) unstable; urgency=medium + + * [7ab7786] d/gbp.conf: add some more files we need to filter out + * [9c02c34] New upstream version 68.4.2 + + -- Carsten Schoenert Sun, 26 Jan 2020 13:13:49 +0100 + +thunderbird (1:68.4.1-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + + -- Carsten Schoenert Sat, 15 Jan 2020 17:48:09 +0100 + +thunderbird (1:68.4.1-1) unstable; urgency=medium + + * [a00f3e9] New upstream version 68.4.1 + Fixed CVE issues in upstream version 68.4.1 (MFSA 2020-04): + CVE-2019-17026: IonMonkey type confusion with StoreElementHole and + FallibleStoreElement + CVE-2019-17015: Memory corruption in parent process during new content + process initialization on Windows + CVE-2019-17016: Bypass of @namespace CSS sanitization during pasting + CVE-2019-17017: Type Confusion in XPCVariant.cpp + CVE-2019-17022: CSS sanitization does not escape HTML tags + CVE-2019-17024: Memory safety bugs fixed in Thunderbird 68.4.1 + * [6b1fd82] rebuild patch queue from patch-queue branch + removed patch (included upstream) + fixes/Update-bindgen-in-ESR68.-r-glandium-a-RyanVM.patch + + -- Carsten Schoenert Fri, 10 Jan 2020 18:33:43 +0100 + +thunderbird (1:68.3.1-1) unstable; urgency=medium + + [ Emilio Pozuelo Monfort ] + * [6f59313] Fix MOZ_BUILD_DATE to have the expected format + + [ Carsten Schoenert ] + * [5d0f4b1] d/rules: don't use SOURCE_DATE_EPOCH for MOZ_BUILD_DATE + (Closes: #946588) + * [1467af5] New upstream version 68.3.1 + + -- Carsten Schoenert Wed, 18 Dec 2019 15:54:44 +0100 + +thunderbird (1:68.3.0-2~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + [ Emilio Pozuelo Monfort ] + * [de88895] Fix MOZ_BUILD_DATE to have the expected format + (cherry-picked from debian/sid) + + [ Carsten Schoenert ] + * [a077b71] d/rules: don't use SOURCE_DATE_EPOCH for MOZ_BUILD_DATE + (cherry-picked from debian/sid) + (Closes: #946588) + + -- Carsten Schoenert Sat, 14 Dec 2019 10:31:09 +0100 + +thunderbird (1:68.3.0-2) unstable; urgency=medium + + * [0625d30] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1531309-Don-t-use-__PRETTY_FUNCTION__-or-__FUNCTION__.patch + fixes/Update-bindgen-in-ESR68.-r-glandium-a-RyanVM.patch + * [ea8d98c] Breaks: add versioned birdtray package + + -- Carsten Schoenert Mon, 09 Dec 2019 18:22:15 +0100 + +thunderbird (1:68.3.0-1) unstable; urgency=medium + + * [fe289ec] /u/b/thunderbird: export variable DICPATH before start + (Closes: #944295) + * [a9a48c6] New upstream version 68.3.0 + Fixed CVE issues in upstream version 68.3 (MFSA 2019-38): + CVE-2019-17008: Use-after-free in worker destruction + CVE-2019-13722: Stack corruption due to incorrect number of arguments in + WebRTC code + CVE-2019-11745: Out of bounds write in NSS when encrypting with a block + cipher + CVE-2019-17009: Updater temporary files accessible to unprivileged + processes + CVE-2019-17010: Use-after-free when performing device orientation checks + CVE-2019-17005: Buffer overflow in plain text serializer + CVE-2019-17011: Use-after-free when retrieving a document in + antitracking + CVE-2019-17012: Memory safety bugs fixed in Firefox 71, Firefox ESR + 68.3, and Thunderbird 68.3 + * [fb23473] d/control: increase B-D version on NSS to 3.44.3 + * [6f59938] Breaks: adding more non compatible packaged AddOns + + -- Carsten Schoenert Thu, 05 Dec 2019 10:03:22 +0100 + +thunderbird (1:68.2.2-1~deb10u1) stable-security; urgency=medium + + * Rebuild for buster-security + * [2c1bd00] d/mozconfig.default: use internal version of + nspr, nss, sqlite and icu + * [94d6ae4] d/control: remove lib{nspr4,nss3,sqlite3}-dev from B-D + + -- Carsten Schoenert Sat, 16 Nov 2019 12:58:00 +0100 + +thunderbird (1:68.2.2-1) unstable; urgency=medium + + * [198d539] xul-ext-compactheader: allow also version << 3.0.0 + * [0e93753] d/control: add incompatibility with jsunit << 0.2.2 + * [87c84cb] New upstream version 68.2.2 + This upstream version has removed the source for calendar-google-provider, + thus we can't provide the related binary package any more. + * [a3cea2a] rebuild patch queue from patch-queue branch + rebuild patch queue from patch-queue branch + + removed patches (included upstream): + debian/patches/fixes/Bug-1470701-Use-run-time-page-size-when-changing-map.patch + debian/patches/fixes/Bug-1505608-Try-to-ensure-the-bss-section-of-the-elf.patch + debian/patches/fixes/Bug-1526744-find-dupes.py-Calculate-md5-by-chunk.patch + debian/patches/fixes/Build-also-gdata-provider-as-xpi-file.patch + debian/patches/fixes/rust-ignore-not-available-documentation.patch + debian/patches/porting-kfreebsd-hurd/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + debian/patches/porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + debian/patches/porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + debian/patches/porting-powerpc/powerpc-Don-t-use-static-page-sizes-on-powerpc.patch + debian/patches/porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + * [1730f5f] d/control: remove references to calendar-google-provider + Don't build calendar-google-provider any more and remove any references + from other binary packages. + * [1b0bbb8] d/rules: remove any calendar-google-provider stuff + * [92f681c] thunderbird.NEWS: Adding hint about removal of gdata + Give out an announcement about the removal of a possible previously + installed package calendar-google-provider. + + -- Carsten Schoenert Sun, 10 Nov 2019 12:09:17 +0100 + +thunderbird (1:68.2.1-1) unstable; urgency=medium + + [ intrigeri ] + * [c48e2cb] AppArmor: update profile from upstream at commit a27a1a5 + (Closes: #941290) + + [ Carsten Schoenert ] + * [98497ae] New upstream version 68.2.0 + Fixed CVE issues in upstream version 68.2 (MFSA 2019-35): + CVE-2019-15903: Heap overflow in expat library in XML_GetCurrentLineNumber + CVE-2019-11757: Use-after-free when creating index updates in IndexedDB + CVE-2019-11758: Potentially exploitable crash due to 360 Total Security + CVE-2019-11759: Stack buffer overflow in HKDF output + CVE-2019-11760: Stack buffer overflow in WebRTC networking + CVE-2019-11761: Unintended access to a privileged JSONView object + CVE-2019-11762: document.domain-based origin isolation has + same-origin-property violation + CVE-2019-11763: Incorrect HTML parsing results in XSS bypass technique + CVE-2019-11764: Memory safety bugs fixed in Thunderbird 68.2 + (Closes: #925841) + * [a104c51] d/control: increase Standards-Version to 4.4.1 + * [6c9d012] xul-ext-dispmua: set current min usable version + * [b3bf16f] New upstream version 68.2.1 + * [8f89b90] d/control: decrease build architecture list + Decreasing the current list of build architectures. Not meant to keep this + forever, removed RC architectures needing support and volunteering to get + them back. + (Closes: #921258) + + -- Carsten Schoenert Fri, 01 Nov 2019 20:36:59 +0100 + +thunderbird (1:68.1.2-1~exp1) experimental; urgency=medium + + * [81f4144] xul-ext-compactheader: increase minimal usable version + * [a815589] Update the global information about TB in Debian + * [bb5f5f7] rebuild patch queue from patch-queue branch + * [6fe7d3f] xul-ext-sogo-connector: increase minimal usable version + * [2e29af5] New upstream version 68.1.2 + + -- Carsten Schoenert Sat, 26 Oct 2019 08:41:50 +0200 + +thunderbird (1:68.0~b1-1) experimental; urgency=medium + + * [0eabe70] New upstream version 68.0~b1 + * [2febf67] rebuild patch queue from patch-queue branch + added patch: + debian-hacks/Downgrade-SQlite-version-to-3.27.2.patch + * [cfa5973] d/s/lintian-overrides: adjust overrides for needed files + * [46077e2] d/copyright: update after upstream changes + + -- Carsten Schoenert Sun, 16 Jun 2019 10:28:52 +0200 + +thunderbird (1:67.0~b3-1) experimental; urgency=medium + + [ intrigeri ] + * [9ad75ad] d/rules: drop useless usage of dpkg-parsechangelog + + [ Carsten Schoenert ] + * [d6f6747] New upstream version 67.0~b3 + * [90f73be] rebuild patch queue from patch-queue branch + removed patch: + fixes/Bug-1515641-Turn-enable-av1-around.-r-nalexander.patch + * [7dd5c54] d/control: increase various B-D versions + Increasing the version for the build depending packages of cargo, cbindgen, + libnspr4-dev, libnss3-dev, libsqlite3-dev and rustc. + + -- Carsten Schoenert Tue, 11 Jun 2019 19:36:00 +0200 + +thunderbird (1:66.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [afe31d9] New upstream version 66.0~b1 + * [4ec53cc] apparmor: update profile from upstream (commit 7ace41b1) + (cherry-picked from debian/sid) + * [b3657a0] d/rules: make dh_clean more robust + Remove some regenerated files in dh_clean to the build will not fail in + case the build needs to be started twice within the same build environment. + (cherry-picked from debian/sid) + * [dceb027] d/rules: move disable debug option into configure step + Adding the option '--disable-debug-symbols' to the file mozconfig.default + in case the build is running on a 32bit architecture instead of expanding + the variable 'CONFIGURE_FLAGS'. The configuration approach for this option + taken from firefox-esr was not working for the thunderbird package. + (cherry-picked from debian/sid) + * [f7f02a9] d/rules: reorder LDFLAGS for better readability + Make the used additional options for LDFLAGS better readable by reordering + the various used options. Also adding the option '-Wl, --as-needed' to the + list of used options here. + (cherry-picked from debian/sid) + * [79801fb] d/rules: use 'compress-debug-sections' only on 64bit + Do not set 'LDFLAGS += -Wl,--compress-debug-sections=zlib' globally, lets + use this option only if we are on a 64bit architecture as otherwise the + build is failing on 32bit architectures again. We don't want to build any + debug information on 32bit anyway so we don't need this option on these + platforms. + (cherry-picked from debian/sid) + * [11f9e14] d/mozconfig.default: adding option for mipsel + We don't have set up any options for the mipsel platform before, but the + build needs some additional options too on this platform to succeed. + (cherry-picked from debian/sid) + * [e46e178] d/mozconfig.default: disable ion on mips and mipsel + The build will fail on mips{,el} if we have enabled ION, the JavaScript + JIT compiler on these platforms will loose some performance by this. + (cherry-picked from debian/sid) + + [ Alexander Nitsch ] + * [31b87e9] Make the logo SVG square + The original SVG source isn't completely square, modifying the SVG file + so all generated other files from the input are also exactly square. + * [c0f19a3] Add script for generating PNGs from logo SVG + * [c153c5f] Update icon PNGs to be properly scaled + + [ Carsten Schoenert ] + * [c372e1f] d/source.filter: add some configure scripts + Filter out some files that are named 'configure', they are rebuild later + anyway. The filtering of these files is moved from gbp.conf to + source.filter. + (cherry-picked from debian/sid) + * [a40c5df] d/c-lightning-l10n-t.sh: drop version checking + Remove an old check for a version string within the file install.rdf. + It's not created any more by upstream since > 60.0. + * [05b325e] d/source.filter: don't ignore files in root folder + Try to not ignore files which are in the top root folder of the upstream + source tarball. + * [d2ca267] rebuild patch queue from patch-queue branch + added patch: + fixes/Bug-1515641-Turn-enable-av1-around.-r-nalexander.patch + + modified (refreshed) patches: + porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch + porting-armel/Bug-1463035-Remove-MOZ_SIGNAL_TRAMPOLINE.-r-darchons.patch + porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch + porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + porting-m68k/Add-m68k-support-to-Thunderbird.patch + + removed patches (applied upstream): + fixes/Fix-big-endian-build-for-SKIA.patch + porting-kfreebsd-hurd/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + * [cb1dde9] d/control: increase version in B-D for libsqlite3-dev + * [54e8890] d/mozconfig.default: add new configure option + We need to disable the usage of libav1 for an successful build. The used + configure option was added by the new added patch to the patch queue. + * [ecd3ade] d/copyright: update after upstream changes + * [af58ed8] d/source.filter: add extra content to ignore + + -- Carsten Schoenert Sun, 17 Feb 2019 10:58:46 +0100 + +thunderbird (1:65.0~b1-1) experimental; urgency=medium + + * [e5956ef] Merge tag 'debian/1%60.4.0-1' into debian/experimental + * [389748b] d/source.filter: adjust files to filter while repack + Rework of the file filter list due new upstream version but also to no + filter out files we obviously need later, e.g. for the omni.jar archive. + * [4b86a78] New upstream version 65.0~b1 + * [3db29ed] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + debian-hacks/icu-use-locale.h-instead-of-xlocale.h.patch + debian-hacks/shellutil.py-ignore-tilde-as-special-character.patch + fixes/Build-also-gdata-provider-as-xpi-file.patch + fixes/Use-msse-2-fpmath-C-CXXFLAGS-only-on-x86_64-platforms.patch + porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + + removed patches (dropped for Debian specific build): + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + adjusted patches: + + debian-hacks/Add-another-preferences-directory-for-applications-p.patch + debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + patches/fixes/Fix-big-endian-build-for-SKIA.patch (but currently disabled) + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + * [e918c6c] d/control: increase versions in B-D + New Thunderbirds version typically need other packages available with + higher versions like NSS, NSPR, rust ... + Also adding cbindgen and nodejs()!!). + * [b6c63bf] d/mozconfig.default: remove dead options + More old configure options are now not available any more and we need to + drop them. + * [0f959ad] remove GCC specific options + LLVM's clang is now widely used, and clang isn't knowing the GCC options + '-fno-schedule-insns2' and '-fno-lifetime-dse', removing these options + from CFLAGS and CXXFLAGS. + * [d0b1f4b] d/rules: work around about strong quotings in .mk files + After the configuration of the source some Makefiles in the build folder + 'obj-thunderbird' have a strong qouting on some entries. This will + later provoke a build failure if we don't remove the single quotes + before in the Makefiles. + * [093053e] copyright: update after upstream changes + * [95eaacf] d/s/lintian-overrides: adjust overrides for needed files + + -- Carsten Schoenert Sun, 20 Jan 2019 15:48:06 +0100 + +thunderbird (1:60.9.0-1~deb10u1) buster-security; urgency=medium + + * Rebuild for buster-security + * [9802e1d] Revert "Use gcc-8 and g++-8 due broken build with GCC-9" + + -- Carsten Schoenert Thu, 12 Sep 2019 16:52:34 +0200 + +thunderbird (1:60.9.0-1) unstable; urgency=medium + + * [5f7ba31] New upstream version 60.9.0 + Fixed CVE issues in upstream version 60.8.0 (MFSA 2019-29) + CVE-2019-11746: Use-after-free while manipulating video + CVE-2019-11744: XSS by breaking out of title and textarea elements using + innerHTML + CVE-2019-11742: Same-origin policy violation with SVG filters and canvas + to steal cross-origin images + CVE-2019-11752: Use-after-free while extracting a key value in IndexedDB + CVE-2019-11743: Cross-origin access to unload event attributes + CVE-2019-11740: Memory safety bugs fixed in Firefox 69, Firefox ESR 68.1, + Firefox ESR 60.9, and Thunderbird 60.9 + + -- Carsten Schoenert Wed, 11 Sep 2019 17:54:10 +0200 + +thunderbird (1:60.8.0-1~deb10u1) buster-security; urgency=medium + + [ Carsten Schoenert ] + * Rebuild for buster-security + + -- Carsten Schoenert Sat, 13 Jul 2019 08:27:42 +0200 + +thunderbird (1:60.8.0-1) unstable; urgency=medium + + [ intrigeri ] + * [3f49653] AppArmor: update profile from upstream at commit ed52e4a + + [ Carsten Schoenert ] + * [348f476] New upstream version 68.0~b5 + * [2a2f101] New upstream version 68.1.1 + Fixed CVE issues in upstream version 68.1 (MFSA 2019-20): + CVE-2019-11711: Script injection within domain through inner window reuse + CVE-2019-11712: Cross-origin POST requests can be made with NPAPI plugins + by following 308 redirects + CVE-2019-11713: Use-after-free with HTTP/2 cached stream + CVE-2019-11714: NeckoChild can trigger crash when accessed off of main + thread + CVE-2019-11729: Empty or malformed p256-ECDH public keys may trigger a + segmentation fault + CVE-2019-11715: HTML parsing error can contribute to content XSS + CVE-2019-11716: globalThis not enumerable until accessed + CVE-2019-11717: Caret character improperly escaped in origins + CVE-2019-11719: Out-of-bounds read when importing curve25519 private key + CVE-2019-11720: Character encoding XSS vulnerability + CVE-2019-11721: Domain spoofing through unicode latin 'kra' character + CVE-2019-11730: Same-origin policy treats all files in a directory as + having the same-origin + CVE-2019-11723: Cookie leakage during add-on fetching across private + browsing boundaries + CVE-2019-11724: Retired site input.mozilla.org has remote troubleshooting + permissions + CVE-2019-11725: Websocket resources bypass safebrowsing protections + CVE-2019-11727: PKCS#1 v1.5 signatures can be used for TLS 1.3 + CVE-2019-11728: Port scanning through Alt-Svc header + CVE-2019-11710: Memory safety bugs fixed in Firefox 68 and Thunderbird 68 + CVE-2019-11709: Memory safety bugs fixed in Firefox 68, Firefox ESR 60.8, + and Thunderbird 68 + + Fixed CVE issues in upstream version 68.1 (MFSA 2019-20): + CVE-2019-11739: Covert Content Attack on S/MIME encryption using a crafted + multipart/alternative message + CVE-2019-11746: Use-after-free while manipulating video + CVE-2019-11744: XSS by breaking out of title and textarea elements using + innerHTML + CVE-2019-11742: Same-origin policy violation with SVG filters and canvas + to steal cross-origin images + CVE-2019-11752: Use-after-free while extracting a key value in IndexedDB + CVE-2019-11743: Cross-origin access to unload event attributes + CVE-2019-11740: Memory safety bugs fixed in Firefox 69, Firefox ESR 68.1, + Firefox ESR 60.9, Thunderbird 68.1, and Thunderbird 60.9 + + Fixed CVE issues in upstream version 68.1.1 (MFSA 2019-32): + CVE-2019-11755: Spoofing a message author via a crafted S/MIME message + + * [9342624] rebuild patch queue from patch-queue branch + added patches: + debian-hacks/Set-program-name-from-the-remoting-name.patch + debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch + debian-hacks/Work-around-Debian-bug-844357.patch + fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch + fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch + fixes/Bug-1560340-Only-add-confvars.sh-as-a-dependency-to-confi.patch + porting-armhf/Bug-1526653-Include-struct-definitions-for-user_vfp-and-u.patch + + removed patch (fixed upstream): + porting-mips/Fix-CPU_ARCH-test-for-libjpeg-on-mips.patch + porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch + + * [25cb500] d/control: increase various versions in B-D + * [ee5b713] d/control: remove B-D on librust-cbindgen-dev + Use librust-toml-dev instead, we only need some files from this package, + librust-cbindgen-dev is a metapackage which is broken while packaging. + * [442a6b1] d/rules: work around cargo needs a HOME dir + * [4894a4c] d/control: increase Standards-Version to 4.4.0 + No further changes needed. + * [bb47b68] d/control: update upstream homepage for Thunderbird + Since some time Mozilla Thunderbird has a new homepage placed on URI + https://www.thunderbird.net/ + * [a3b680e] d/source.filter: update the filter sequences + New Thunderbird upstream versions bringing some new unwanted files within + the source. + * [7290ff4] d/control: remove transitional lightning l10n packages + The Lightning l10n packages moved into transitional packages before Buster + was released, now after the Buster release removing these transitional + packages. All required l10n files are available in the packages + thunderbird-$(locale) even for Lightning. + * [3d1d27d] enigmail: increase minimal usable version + Thunderbird 68.x needs at least Enigmal in version 2.1, but increase the + version on Enigmail to the most recent version which is released while + packaging. + * [66069d9] calendar-exchange-provider: removed from Breaks + This package isn't alive in unstable and testing. + * [3b9f936] d/control: remove Xb-Xul-AppId field + Thunderbird don't has any Xul based AddOns since version 68.0 + * [7d8cd7d] lintian-overrides: remove not needed overrides + + -- Carsten Schoenert Sat, 28 Sep 2019 15:38:28 +0200 + +thunderbird (1:60.8.0-2) unstable; urgency=medium + + * [41e9047] d/rules: work around carge needs a HOME dir + * [c67707c] Use gcc-8 and g++-8 due broken build with GCC-9 + + -- Carsten Schoenert Fri, 23 Aug 2019 20:30:17 +0200 + +thunderbird (1:60.8.0-1~deb10u1) buster-security; urgency=medium + + [ Carsten Schoenert ] + * Rebuild for buster-security + + -- Carsten Schoenert Sat, 13 Jul 2019 08:27:42 +0200 + +thunderbird (1:60.8.0-1) unstable; urgency=medium + + * [49f4e91] New upstream version 60.8.0 + Fixed CVE issues in upstream version 60.8.0 (MFSA 2019-23) + CVE-2019-9811: Sandbox escape via installation of malicious language pack + CVE-2019-11711: Script injection within domain through inner window reuse + CVE-2019-11712: Cross-origin POST requests can be made with NPAPI plugins + by following 308 redirects + CVE-2019-11713: Use-after-free with HTTP/2 cached stream + CVE-2019-11729: Empty or malformed p256-ECDH public keys may trigger a + segmentation fault + CVE-2019-11715: HTML parsing error can contribute to content XSS + CVE-2019-11717: Caret character improperly escaped in origins + CVE-2019-11719: Out-of-bounds read when importing curve25519 private key + CVE-2019-11730: Same-origin policy treats all files in a directory as + having the same-origin + CVE-2019-11709: Memory safety bugs fixed in Firefox 68, Firefox ESR 60.8, + and Thunderbird 60.8 + + -- Carsten Schoenert Tue, 09 Jul 2019 22:09:04 +0200 + +thunderbird (1:60.7.2-1) unstable; urgency=medium + + * [d6c79ed] New upstream version 60.7.2 + Fixed CVE issues in upstream version 60.7.2 (MFSA 2019-20) + CVE-2019-11707: Type confusion in Array.pop + CVE-2019-11708: sandbox escape using Prompt:Open + + -- Carsten Schoenert Fri, 21 Jun 2019 18:48:43 +0200 + +thunderbird (1:60.7.1-1) unstable; urgency=high + + * [f791dee] New upstream version 60.7.1 + Fixed CVE issues in upstream version 60.7.1 (MFSA 2019-17) + CVE-2019-11703: Heap buffer overflow in icalparser.c + CVE-2019-11704: Heap buffer overflow in icalvalue.c + CVE-2019-11705: Stack buffer overflow in icalrecur.c + CVE-2019-11706: Type confusion in icalproperty.c + + -- Carsten Schoenert Fri, 14 Jun 2019 07:25:35 +0200 + +thunderbird (1:60.7.0-1) unstable; urgency=medium + + * [f6dd130] New upstream version 60.7.0 + Fixed CVE issues in upstream version 60.7.0 (MFSA 2019-15) + CVE-2019-9816: Type confusion with object groups and UnboxedObjects + CVE-2019-9817: Stealing of cross-domain images using canvas + CVE-2019-9819: Compartment mismatch with fetch API + CVE-2019-9820: Use-after-free of ChromeEventHandler by DocShell + CVE-2019-11691: Use-after-free in XMLHttpRequest + CVE-2019-11692: Use-after-free removing listeners in the event listener + manager + CVE-2019-11693: Buffer overflow in WebGL bufferdata on Linux + CVE-2019-7317: Use-after-free in png_image_free of libpng library + CVE-2019-9797: Cross-origin theft of images with createImageBitmap + CVE-2018-18511: Cross-origin theft of images with + ImageBitmapRenderingContext + CVE-2019-11698: Theft of user history data through drag and drop of + hyperlinks to and from bookmarks + CVE-2019-5798: Out-of-bounds read in Skia + CVE-2019-9800: Memory safety bugs fixed in Firefox 67, Firefox ESR 60.7, + and Thunderbird 60.7 + * [4106d54] rebuild patch queue from patch-queue branch + added patch: + fixes/rust-ignore-not-available-documentation.patch + + -- Carsten Schoenert Thu, 23 May 2019 17:03:27 +0200 + +thunderbird (1:60.6.1-1) unstable; urgency=medium + + [ intrigeri ] + * [2013645] d/rules: drop useless usage of dpkg-parsechangelog + + [ Carsten Schoenert ] + * [daf1252] New upstream version 60.6.1 + Fixed CVE issues in upstream version 60.6.0 (MFSA 2019-11) + CVE-2019-9790: Use-after-free when removing in-use DOM elements + CVE-2019-9791: Type inference is incorrect for constructors entered + through on-stack replacement with IonMonkey + CVE-2019-9792: IonMonkey leaks JS_OPTIMIZED_OUT magic value to script + CVE-2019-9793: Improper bounds checks when Spectre mitigations are disabled + CVE-2019-9794: Command line arguments not discarded during execution + CVE-2019-9795: Type-confusion in IonMonkey JIT compiler + CVE-2019-9796: Use-after-free with SMIL animation controller + CVE-2018-18506: Proxy Auto-Configuration file can define localhost access + to be proxied + CVE-2019-9788: Memory safety bugs fixed in Firefox 66, Firefox ESR 60.6, + and Thunderbird 60.6 + Fixed CVE issues in upstream version 60.6.1 (MFSA 2019-12) + CVE-2019-9810: IonMonkey MArraySlice has incorrect alias information + CVE-2019-9813: Ionmonkey type confusion with __proto__ mutations + * [f88a505] rebuild patch queue from patch-queue branch + added patch: + fixes/Bug-1526744-find-dupes.py-Calculate-md5-by-chunk.patch + + -- Carsten Schoenert Wed, 27 Mar 2019 18:22:51 +0100 + +thunderbird (1:60.5.1-1) unstable; urgency=medium + + [ Alexander Nitsch ] + * [c9775d4] Make the logo SVG square + The original SVG source isn't completely square, modifying the SVG file + so all generated other files from the input are also exactly square. + * [6096812] Add script for generating PNGs from logo SVG + * [4e9e5cc] Update icon PNGs to be properly scaled + + [ Carsten Schoenert ] + * [9e5527d] d/source.filter: add some configure scripts + Filter out some files that are named 'configure', they are rebuild later + anyway. The filtering of these files is moved from gbp.conf to + source.filter. + * [b63f2a2] Revert "d/gbp.conf: ignore configure script while importing" + Reverting this commit as we need to move the files to filter to + source.filter as the behaviour wasn't the expected outcome. + * [4965c2a] New upstream version 60.5.1 + Fixed CVE issues in upstream version 60.5.1 (MFSA 2019-06) + CVE-2018-18356: Use-after-free in Skia + CVE-2019-5785: Integer overflow in Skia + CVE-2018-18335: Buffer overflow in Skia with accelerated Canvas 2D + CVE-2018-18509: S/MIME signature spoofing + + -- Carsten Schoenert Thu, 14 Feb 2019 20:01:03 +0100 + +thunderbird (1:60.5.0-3) unstable; urgency=medium + + * [3e274d8] d/rules: move disable debug option into configure step + Adding the option '--disable-debug-symbols' to the file mozconfig.default + in case the build is running on a 32bit architecture instead of expanding + the variable 'CONFIGURE_FLAGS'. The configuration approach for this option + taken from firefox-esr was not working for the thunderbird package. + * [b3d82d3] d/rules: reorder LDFLAGS for better readability + Make the used additional options for LDFLAGS better readable by reordering + the various used options. Also adding the option '-Wl, --as-needed' to the + list of used options here. + * [62d11e3] d/rules: use 'compress-debug-sections' only on 64bit + Do not set 'LDFLAGS += -Wl,--compress-debug-sections=zlib' globally, lets + use this option only if we are on a 64bit architecture as otherwise the + build is failing on 32bit architectures again. We don't want to build any + debug information on 32bit anyway so we don't need this option on these + platforms. + * [6225c44] d/mozconfig.default: adding option for mipsel + We don't have set up any options for the mipsel platform before, but the + build needs some additional options too on this platform to succeed. + * [4e348d9] d/mozconfig.default: disable ion on mips and mipsel + The build will fail on mips{,el} if we have enabled ION, the JaveScript + JIT compiler on these platforms will loose some performance by this. + + -- Carsten Schoenert Tue, 05 Feb 2019 17:11:25 +0100 + +thunderbird (1:60.5.0-2) unstable; urgency=medium + + * [aa2dbe3] d/changelog: update MFSA information for 60.5.0 + The MFSA gut published shortly after the upload of the previous version. + Adding the CVE numbers for MFSA 2019-03 to the changelog accordingly like + happen for 1:60.4.0-1 too. + * [71807dc] rebuild patch queue from patch-queue branch + Due greater changes to the source the previous rebuild and refreshing of + the patch queue wasn't correctly nor complete. Some more rework was needed + and some patches got cherry-picked from firefox-esr. + readded patches (not included upstream): + porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + cherry-picked from firefox-esr: + fixes/Bug-1470701-Use-run-time-page-size-when-changing-map.patch + fixes/Bug-1505608-Try-to-ensure-the-bss-section-of-the-elf.patch + porting-powerpc/powerpc-Don-t-use-static-page-sizes-on-powerpc.patch + removed patches (included upstream): + porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + * [eaa065b] apparmor: update profile from upstream (commit 7ace41b1) + * [c761425] d/rules: make dh_clean more robust + Remove some regenerated files in dh_clean to the build will not fail in + case the buils needs to be started twice within the same build environment. + * [aa7b033] d/gbp.conf: ignore configure script while importing + The shipped scripts '*configure' in the toplevel folder and also in js/src + aren't needed and we can them filter out while importing the tarballs. + These scripts got (re)created by dh_auto_configure nevertheless. + * [9f0acb2] d/rules: tweek LDFLAGS more to reduce RAM usage + Reduce RAM usage while linking by using compressed sections. + (picked from firefox-esr) + * [62f195d] d/rules: Don't build debug symbols on non 64bit platforms + Reduce even more RAM usage while linking by don't build debugging symbols + if we build on non 64bit architectures. + (picked from firefox-esr) + + -- Carsten Schoenert Fri, 01 Feb 2019 09:24:30 +0100 + +thunderbird (1:60.5.0-1) unstable; urgency=medium + + * d/source.filter: update filter list + Updating the list of files to filter out while repacking the upstream + tarball based on recent work done in debian/experimental. + Unfortunately a lot of semi minimized *.js files from the original + upstream tarball are later needed within some integrated consoles like the + AddOn debugger or the error console. Don't filter out such files for now. + (Closes: #911198) + * [edab34d] d/changelog: update MFSA information for 60.4.0 + While releasing and uploading the Debian version 1:60.4.0-1 no MFSA + information was available, adding this information now into the changelog + entry for 1:60.4.0-1. + * [f3f44a3] New upstream version 60.5.0 + Fixed CVE issues in upstream version 60.5.0 (MFSA 2019-03) + CVE-2018-18500: Use-after-free parsing HTML5 stream + CVE-2018-18505: Privilege escalation through IPC channel messages + CVE-2016-5824: DoS (use-after-free) via a crafted ics file + CVE-2018-18501: Memory safety bugs fixed in Firefox 65, Firefox ESR 60.5, + and Thunderbird 60.5 + * [ccac089] rebuild patch queue from patch-queue branch + removed patches (included upstream): + porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + removed patches (dropped by us): + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + refreshed patches: + debian-hacks/Add-another-preferences-directory-for-applications-p.patch + porting-armel/Bug-1463035-Remove-MOZ_SIGNAL_TRAMPOLINE.-r-darchons.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + porting-m68k/Add-m68k-support-to-Thunderbird.patch + porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + * [43c28c2] d/s/lintian-overrides: more files to ignore + Related to [4201f43] the override list for the source needs to be adjusted + as we have now more files included there Lintian is complaining about + missing source. These files are no 'real' minimized JS files, but the have + mostly some long lines that are triggered the Lintian check. + + -- Carsten Schoenert Tue, 29 Jan 2019 20:24:29 +0100 + +thunderbird (1:60.4.0-1) unstable; urgency=medium + + * [2e5a9d0] d/control: don't hard code LLVM packages in B-D + (Closes: #912797) + * [3aaa4a6] New upstream version 60.4.0 + Fixed CVE issues in upstream version 60.4.0 (MFSA 2018-31) + CVE-2018-17466: Buffer overflow and out-of-bounds read in ANGLE library + with TextureStorage11 + CVE-2018-18492: Use-after-free with select element + CVE-2018-18493: Buffer overflow in accelerated 2D canvas with Skia + CVE-2018-18494: Same-origin policy violation using location attribute and + performance.getEntries to steal cross-origin URLs + CVE-2018-18498: Integer overflow when calculating buffer sizes for images + CVE-2018-12405: Memory safety bugs fixed in Firefox 64, Firefox ESR 60.4, + and Thunderbird 60.4 + (Closes: #913645) + * [12d3be3] debian/control: increase Standards-Version to 4.3.0 + No further changes needed. + + -- Carsten Schoenert Mon, 24 Dec 2018 17:04:10 +0100 + +thunderbird (1:60.3.1-1) unstable; urgency=medium + + * [e1b489a] New upstream version 60.3.1 + * [f376b38] lightning: use ${source:Version} in Breaks and Recommends + (Closes: #914175) + * [7e560b3] Revert "lintian: adding a semi automated lintian-override" + The override about a misspelled word Synopsys isn't needed any more. + * [893c0e6] rebuild patch queue from patch-queue branch + modified patches: + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + * [20d8827] d/source.filter: update the filter sequences + + -- Carsten Schoenert Sun, 25 Nov 2018 10:02:50 +0100 + +thunderbird (1:60.3.0-1) unstable; urgency=medium + + [ intrigeri ] + * [7949b31] AppArmor: update profile from upstream at commit f3d9a8b + (Closes: #903898) + * [e31dc14] AppArmor: update profile from upstream at commit 81c9457 + (Closes: #908206) + + [ Carsten Schoenert ] + * [0dcbe22] d/control: add xul-ext-gnome-keyring to Breaks for thunderbird + (Closes: #907979) + * [65db00d] armel: adding extra LDFLAGS so rust compiler isn't confused + The settings that are builtin within rust are conflicting with the GCC. + * [9c65884] New upstream version 60.3.0 + Fixed CVE issues in upstream version 60.3.0 (MFSA 2018-28) + CVE-2018-12392: Crash with nested event loops + CVE-2018-12393: Integer overflow during Unicode conversion while loading + JavaScript + CVE-2018-12389: Memory safety bugs fixed in Firefox ESR 60.3 and + Thunderbird 60.3 + CVE-2018-12390: Memory safety bugs fixed in Firefox 63, Firefox ESR 60.3, + and Thunderbird 60.3 + * [8726bb1] rebuild patch queue from patch-queue branch + removed patches (included upstream) + fixes/Bug-1479540-Accept-triplet-strings-with-only-two-parts-in.patch + fixes/Bug-1492064-Disable-baseline-JIT-when-SSE2-is-not-support.patch + fixes/Bug-1492065-Use-Swizzle-fallback-when-SSE2-is-not-support.patch + porting-mips/Add-struct-ucred-for-Linux-on-MIPS.patch + + -- Carsten Schoenert Thu, 01 Nov 2018 12:19:34 +0100 + +thunderbird (1:60.2.1-1) unstable; urgency=medium + + * [ba75ca3] logo: move old TB graphics into dedicated folder + * [ba47234] logo: adding new TB icon *.png graphics + Like Firefox Thunderbird has also got a reworked logo. As we use some own + icon created from a SVG graphic this commit adds the new icons in the + various sizes. The source of the SVG graphic is taken from + https://demo.identihub.co/thunderbird#/view/icon/element/612 + (Closes: #909108) + * [0b16a87] d/source.filter: don't remove react files from source + (Closes: #909046) + * [d01dfd6] rebuild patch queue from patch-queue branch + added patches: + fixes/Bug-1479540-Accept-triplet-strings-with-only-two-parts-in.patch + fixes/Bug-1482248-don-t-crash-on-empty-file-name-in-nsMsgLocalS.patch + fixes/Bug-1492064-Disable-baseline-JIT-when-SSE2-is-not-support.patch + fixes/Bug-1492065-Use-Swizzle-fallback-when-SSE2-is-not-support.patch + (Closes: #909628, #909039, #906816) + * [bf64065] New upstream version 60.2.1 + Fixed CVE issues in upstream version 60.2.1 (MFSA 2018-25) + CVE-2018-12377: Use-after-free in refresh driver timers + CVE-2018-12378: Use-after-free in IndexedDB + CVE-2018-12379: Out-of-bounds write with malicious MAR file + CVE-2018-12376: Memory safety bugs fixed in Firefox 62 and Firefox ESR 60.2 + CVE-2018-12385: Crash in TransportSecurityInfo due to cached data + CVE-2018-12383: Setting a master password post-Firefox 58 does not delete + unencrypted previously stored passwords + * [b4712af] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + fixes/Bug-1482248-don-t-crash-on-empty-file-name-in-nsMsgLocalS.patch + * [79057f6] d/control: make lightning-l10n packages transitional + The l10n content for Lightning and a specific language is now much more + related to the Thunderbird l10n content. By this the existing lightning + l10n packages are not really useful any more as we move the Lightning + l10n content into the respective Thunderbird l10n package a we need to + turn the existing Lightning l10n packages into transitional packages. + * [a0ac3b7] d/control: adding Replaces, Breaks, Provides to thunderbird-l10n-* + Related to the previous commit the Thunderbird l10n packages need some + more fields in the control file so the transition from lightning-l10n into + thunderbird-l10n can work. + * [c82ee7c] d/rules: install lightning l10n into thunderbird-l10n-* packages + The content for the lightning l10n stuff needs now to be installed into + thunderbird-l10n packages. + * [72cd535] d/control: add thunderbird-l10n-cy + Oops, seems like we never have introduced this language for Thunderbird + before. Now required to provide the l10n content for Lightning. + * [510bea6] d/thunderbird-wrapper.sh: improve GDB switch + Since TB 60 upstream isn't installing the old wrapper script + run-mozilla.sh any more. By this we need to adjust our starting wrapper + so the call to start Thunderbird within the GDB debugger is working. + + -- Carsten Schoenert Fri, 05 Oct 2018 17:43:49 +0200 + +thunderbird (1:60.0-3) unstable; urgency=medium + + * [daa0dd7] locale: use 'intl.locale.requested' correctly + Thanks to hint from Sven Joachim we can use the preference setting + 'intl.locale.requested' in way that users don't need to use this setting + within their prefs.js to control the language of the Thunderbird UI. + 'intl.locale.requested' is somehow the successor of 'intl.locale.matchOS'. + (Closes: #908034) + * [f8ac1b2] debian/control: increase Standards-Version to 4.2.1 + No further changes needed. + * [a001579] d/control: remove empty 'Replaces' in thunderbird-l10n-da + We can remove that line of Replaces without any key. + + -- Carsten Schoenert Thu, 06 Sep 2018 18:46:31 +0200 + +thunderbird (1:60.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [71ac5e7] rebuild patch queue from patch-queue branch + added patches: + porting-mips/Add-struct-ucred-for-Linux-on-MIPS.patch + porting-mips/Bug-1444303-MIPS-Fix-build-failures-after-Bug-1425580-par.patch + porting-mips/Bug-1444834-MIPS-Stubout-MacroAssembler-speculationBarrie.patch + * [d94e5dc] d/control: B-D on {lib}clang-6.0* and llvm-6.0-dev + (Closes: #906707) + + -- Carsten Schoenert Mon, 20 Aug 2018 17:57:07 +0200 + +thunderbird (1:60.0-1) unstable; urgency=medium + + [ Cyril Brulebois ] + * [4f1fcd4] Bump B-D libsqlite3-dev version + Upstream requires a more recent version that is already available in + unstable but not in Stretch later e.g. + * [5a790c2] Add libicu-dev to Build-Depends (required for icu-i18n.pc) + This package was pulled from some other package already but we need this + explicit now again as we don't use the internal ICU version any more. + * [8c86207] Bump libhunspell-dev version + The same as for libsqlite3-dev, adding the correct B-D version. + (Closes: #905465) + + [ Carsten Schoenert ] + * [901f257] New upstream version 60.0 + Fixed CVE issues in upstream version 60.0 (MFSA 2018-19) + CVE-2018-12359: Buffer overflow using computed size of canvas element + CVE-2018-12360: Use-after-free when using focus() + CVE-2018-12361: Integer overflow in SwizzleData + CVE-2018-12362: Integer overflow in SSSE3 scaler + CVE-2018-5156: Media recorder segmentation fault when track type is + changed during capture + CVE-2018-12363: Use-after-free when appending DOM nodes + CVE-2018-12364: CSRF attacks through 307 redirects and NPAPI plugins + CVE-2018-12365: Compromised IPC child process can list local filenames + CVE-2018-12371: Integer overflow in Skia library during edge builder + allocation + CVE-2018-12366: Invalid data handling during QCMS transformations + CVE-2018-12367: Timing attack mitigation of PerformanceNavigationTiming + CVE-2018-5187: Memory safety bugs fixed in Firefox 61, Firefox ESR 60.1, + and Thunderbird 60 + CVE-2018-5188: Memory safety bugs fixed in Firefox 61, Firefox ESR 60.1, + Firefox ESR 52.9, and Thunderbird 60 + * [44ab834] rebuild patch queue from patch-queue branch + removed patches (applied upstream): + porting-arm64/Bug-1453892-Only-use-SkJumper-s-arm64-half-float-optimiza.patch + porting-arm64/Bug-1463036-Use-HAVE_ARM_NEON-instead-of-BUILD_ARM_NEON-f.patch + porting-armel/Bug-1463036-Add-mfloat-abi-softfp-to-NEON_FLAGS-when-it-m.patch + * [3168b29] debian/control: increase Standards-Version to 4.2.0 + No further changes needed. + * [f2f206e] d/rules: use MOZ_LANGPACK_ID instead of hard coding + * [996352a] d/rules: ensure l10n MOZ_LANGPACK_ID matches variable from + makefile + Previous beta versions for the thunderbird-l10n data have used + '@firefox.mozilla.org' within their application.id setting. Thunderbird + now expects '@thunderbird.mozilla.org' instead. Make the build more + flexible so we can detect mismatches here. + (Closes: #906176) + + -- Carsten Schoenert Sun, 19 Aug 2018 11:32:11 +0200 + +thunderbird (1:60.0~b10-1) experimental; urgency=medium + + [ intrigeri ] + * [596869d] AppArmor: update profile from upstream (at commit edc9487) + (Closes: #901471) + + [ Carsten Schoenert ] + * [57195ff] New upstream version 60.0~b10 + * [770c9a6] rebuild patch queue from patch-queue branch + added patches: + porting-arm64/Bug-1463036-Use-HAVE_ARM_NEON-instead-of-BUILD_ARM_NEON-f.patch + porting-armel/Avoid-using-vmrs-vmsr-on-armel.patch + porting-armel/Bug-1463035-Remove-MOZ_SIGNAL_TRAMPOLINE.-r-darchons.patch + porting-armel/Bug-1463036-Add-mfloat-abi-softfp-to-NEON_FLAGS-when-it-m.patch + * [7fa6ebd] debian/control: increase Standards-Version to 4.1.5 + No further changes needed. + * [22e701c] c-l-l10n-t.sh: adjust the path to the python helper + Adjust the shell script helper to use the changed path to makeversion.py. + * [90a1d9e] sticky prefs: use the new syntax in vendor.js + The syntax for locked preferences has been changed a while ago, it's + time to adjust the entry within vendor.js to disable automatic updates + for AddOns. + + -- Carsten Schoenert Thu, 12 Jul 2018 17:52:27 +0200 + +thunderbird (1:60.0~b9-2) experimental; urgency=medium + + [ intrigeri ] + * [eb7cb44] Revert "apparmor: allow access to @{HOME}/.gnupg/tofu.db" + * [4cd8baf] AppArmor: update profile from upstream + (Closes: #900840) + * [807eb99] AppArmor: update profile from upstream (at commit 104da32) + + [ Carsten Schoenert ] + * [c980546] rebuild patch queue from patch-queue branch + added patch: + porting-arm64/Bug-1453892-Only-use-SkJumper-s-arm64-half-float-optimiza.patch + + -- Carsten Schoenert Sun, 01 Jul 2018 19:15:00 +0200 + +thunderbird (1:60.0~b9-1) experimental; urgency=medium + + * [be64a3e] d/source.filter: update due upstream changes + Writing the import filter file source.filter mostly complete new from + scratch. Needed because upstream has changed the structure of the source + completely. + * [c4b9113] New upstream version 60.0~b9 + * [3dc900a] rebuild patch queue from patch-queue branch + Related to the changed source structure the patches for the patch queue + needs to be adjusted to the new folders and their structure. Thanks to + git this wasn't that painful as git did all of the job. Two new patches + are needed to add. + added patches: + fixes/Build-also-gdata-provider-as-xpi-file.patch + debian-hacks/Don-t-build-testing-suites-and-stuff-part-2.patch + * [e50ae04] d/rules: remove references to folder 'mozilla' + To get the source built some targets in debian/rules are needed to be + modified. All references to the old used folder 'mozilla/' are removed + now. + * [a650500] ICU: don't build the Paragraph Layout library + Disable the build of the Paragraph Layout library, we don't need them if + we need to built the ICU stuff. Cherry-picked from current ESR 52 + packaging. + * [977b7fe] d/mozconfig.default: use the ICU package from system + The Debian packages of icu are recent enough so we don't need to build + own dedicated ICU binaries. + * [0c7ed7e] adjust the configuration of the built + Because of the modified source structure some more adjustments are needed + while going through the built targets like different paths, and built + calls of the Thunderbird source. + * [1c09011] adjust the install temporary folder + Upstream is now wrapping all internal make calls through a Python wrapper + called 'mach'. This also involves a changed behavior for installing the + Thunderbird files into the temporary folder we later use by the debhelper + sequencer. + * [bfbc9ca] d/s/lintian-overrides: update content due changed source.filter + The modified file debian/source.filter make some adjustments needed in + the lintian-overrides file for the source files related part. + * [44a4c5a] d/thunderbird.lintian-overrides: update after config changes + Like before some adjustments are needed for the lintian override rules + for the source files. + * [dd48091] d/copyright: adjust the content due folder changes + And one more file that needs to be adjusted due the changed source files. + + -- Carsten Schoenert Sun, 01 Jul 2018 16:12:33 +0200 + +thunderbird (1:60.0~b6-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [3d91710] create-lightning-l10n: adjust folder structure + To build more easy lightning-l10n packages let's modify the helper script + for building the additional tarball. Change the content structure so we + can simple copy the needed l10n stuff into the l10n packages. + * [f1d6031] New upstream version 60.0~b6 + * [6643c31] Revert the linking into /u/l/tb/d/extensions + Thunderbird in Debian won't detecting extension which are placed in + /usr/lib/thunderbird/distribution/extensions, going back to the old + folder /usr/lib/thunderbird/extensions to link extensions into + Thunderbird. + * [26549a3] lightning: turning package into Architecture all + Change the architecture for the lightning package from 'any' to 'all'. + Lightning is only build by Javascript, CSS, JSM and other text based + files and we don't need to build and install it as a architecture + dependent package. + * [86cd48f] mozconfig.default: disable webrtc build and inclusion + Let's drop the build of support for WebRTC, Thunderbird isn't able to use + this as there is no component which is depending on this. The chat + component would be a potential use case but right now it lacks any + functionality by webrtc features. + + -- Carsten Schoenert Sat, 05 May 2018 13:56:36 +0200 + +thunderbird (1:60.0~b5-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [b8625ea] New upstream version 60.0~b5 + + -- Carsten Schoenert Sat, 28 Apr 2018 19:15:07 +0200 + +thunderbird (1:60.0~b4-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [62ae939] New upstream version 60.0~b4 + + -- Carsten Schoenert Mon, 23 Apr 2018 18:19:11 +0200 + +thunderbird (1:60.0~b3-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [94f8505] debian/control: increase Standards-Version to 4.1.4 + No further changes needed.f2f206eb34a619f7a684d1216fcd918454135d41 + * [3ba10c6] rebuild patch queue from patch-queue branch + added patches: + porting-sparc64/Bug-1434726-Early-startup-crash-on-Linux-sparc64-in-HashI.patch + fixes/Use-msse-2-fpmath-C-CXXFLAGS-only-on-x86_64-platforms.patch + fixes/Fix-big-endian-build-for-SKIA.patch (re-added) + Thanks Andreas Glaubitz for providing these patches! + * [dabf294] New upstream version 60.0~b3 + * [24f8a38] re-enable usage of lib{nspr4,nss3}-dev while built + The available versions of these libraries now recent enough so we can + drop the usage of the embedded code copies. + + -- Carsten Schoenert Sun, 15 Apr 2018 12:47:43 +0200 + +thunderbird (1:60.0~b2-1) experimental; urgency=medium + + [ Agustin Henze ] + * [3639717] apparmor: allow access to @{HOME}/.gnupg/tofu.db + (Closes: #894907) + + [ intrigeri ] + * [3895bba] AppArmor: fix empty black windows in Thunderbird 58+ + (Closes: #887973) + * [353ca25] AppArmor: update profile from upstream + (Closes: #882048, #882122) + + [ Carsten Schoenert ] + * [37e0bbe] New upstream version 59.0~b1 + * [d75c4be] rebuild patch queue from patch-queue branch + added patches: + fixes/Fix-build-against-libcairo2-dev-1.15.10.patch + patches/fixes/Fix-big-endian-build-for-SKIA.patch + + removed patches: + debian-hacks/Allow-usage-of-libnspr4-dev-4.16.patch + fixes/Bug-1418598-Make-cargo-linker-properly-handle-quoted-stri.patch + thunderbird/Thunderbird-fix-installdir-for-icons.patch + * [9615d6a] New upstream version 60.0~b1 + * [431006c] d/source.filter: update due upstream changes + Update the list of files we filter out, Upstream added various new files + mostly used for auto-testing we don't use. + * [2cb4635] d/s/lintian-overrides: remove entries about brace expansion + We can remove the override about brace expansion in dh sequencer files. + * [4c9f185] debian/rules: using 'rm -f' because probably non existing files + The file app.ini isn't existing in some l10n folders for lightning, + simply use '-f' for convenience. + * [ed00442] debian/rules: fix typo to grep app ID of calendar-g-p + * [4a993c5] adding additional packages to Breaks with thunderbird + The packages calendar-exchange-provider and enigmail + xul-ext-sogo-connector aren't compatible to the webextension interface + and we need to add a versioned Breaks. + * [9bd8286] adjust Breaks for enigmail + Also enigmail needs an adjusted version for Breaks. + * [24382c2] Revert "Use gcc-6 and g++-6 due broken GUI with GCC-7" + (Closes: #892404) + * [f0ac8a5] rebuild patch queue from patch-queue branch + removed patches: + debian-hacks/Allow-to-override-ICU_DATA_FILE-from-the-environment.patch + debian-hacks/remove-non-free-W3C-icon-valid.png.patch + fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch + fixes/Fix-build-against-libcairo2-dev-1.15.10.patch + + modified patches: + debian-hacks/Build-against-system-libjsoncpp.patch + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + * [6ab35ad] d/mozconfig.default: don't use nspr and nss from system + We need to switch back to the embedded source for NSS and NSPR, the + versions in unstable aren't usable. + * [055ed65] d/mozconfig.default: remove no longer alive option + The option '--enable-system-cairo' is gone with TB 60. + * [663d6f1] lightning-l10n-bn-bd: remove Bengali (Bangladesh) l10n package + * [02b21cb] lightning-l10n-pa-in: remove Punjabi (India) l10ng package + * [0cc0b5d] lightning-l10n-ta-lk: remove Tamil (Sri Lanka) l10n package + * [62f23a5] thunderbird-l10n-bn-bd: remove (Bangladesh) l10n package + * [61bfdf4] thunderbird-l10n-pa-in: remove Punjabi (India) l10n package + * [a361750] thunderbird-l10n-ta-lk: remove Tamil (Sri Lanka) l10n package + * [8ba5b0d] debian/control: add new packages for *-kk language + * [e4280ac] debian/control: add new packages for *-ms language + * [aaef9fe] adjust Vcs fields to salsa.debian.org + * [144c492, 009b145] debian/copyright: update after upstream changes + Upstream removed some files/folders, which reflects in needed adjustments + for the copyright file. + * [3623f84] d/thunderbird.lintian-overrides: add libnspr4.so and libnss3.so + We now need to ship (again) embedded libraries for NSPR and NSS. + * [0d3de65] lightning: move linking into /u/l/tb/distribution/extensions + Following upstream with the folder for the Lightning to not differ. + * [4d6cefe] New upstream version 60.0~b2 + * [e1c40a7] rebuild patch queue from patch-queue branch + removed patches: + fixes/Fix-big-endian-build-for-SKIA.patch + * [4834a1d] add entries to README and NEWS for thunderbird + Adding notes about the current situation foe the l10n packages and their + integration into the UI of Thunderbird and Lightning. + + -- Carsten Schoenert Sat, 07 Apr 2018 11:12:37 +0200 + +thunderbird (1:58.0~b3-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [d114338] d/source.filter: update due upstream changes + Update the filtering list for excluding some unwanted source files as + usual while preparing new major upstream versions. + * [91d23a9] New upstream version 58.0~b3 + * [f34e555] rebuild patch queue from patch-queue branch + added patches: + debian-hacks/Allow-usage-of-libnspr4-dev-4.16.patch + debian-hacks/icu-use-locale.h-instead-of-xlocale.h.patch + debian-hacks/shellutil.py-ignore-tilde-as-special-character.patch + fixes/Bug-1418598-Make-cargo-linker-properly-handle-quoted-stri.patch + + modified patches: + debian-hacks/Build-against-system-libjsoncpp.patch + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + porting-m68k/Add-m68k-support-to-Thunderbird.patch + porting-sh4/Add-sh4-support-to-Thunderbird.patch + porting/Disable-optimization-on-alpha-for-the-url-classifier.patch + prefs/Don-t-auto-disable-extensions-in-system-directories.patch + prefs/Set-javascript.options.showInConsole.patch + + obsolete patches (included somehow or fixed upstream): + debian-hacks/Force-use-the-i686-rust-target.patch + porting-alpha/FTBFS-alpha-adjust-some-source-to-prevent-build-issues.patch + patches/porting-alpha/fix-FTBFS-on-alpha.patch + patches/porting-arm64/Bug-1257055-Use-jit-arm64-Architecture-arm64.h-on-non-JIT.patch + patches/porting-hppa/FTBFS-hppa-xpcshell-segfaulting-during-make-install.patch + porting-kfreebsd-hurd/FTBFS-hurd-adding-GNU-Hurd-to-the-list-of-OS-systems.patch + porting-mips/FTBFS-mips-add-missing-char-variable.patch + porting/ppc-fix-divide-page-size-in-jemalloc.patch + thunderbird-l10n/thunderbird-l10n-disable-external-extension-update.patch + * [bd45d47] debian/control: adding new Build-Depends + Since this is the first version > 52 we need now cargo, clang, rustc and + llvm development files. + * [c63a03f] d/mozconfig.default: remove no longer alive options + Some old options like --disable-gnomeui, --enable-gio, and + --with-default-mozilla-five-home are history now. + * [609dbbe] l10n lightning: modify script to work with recent version + We still need to use the shellscript create-lightning-l10n-tarball.sh + (and also *-thunderbird-l10n-*) to create the additional tarballs. + * [2f276b7] thunderbird-l10n: change tb-l10n package installation + Due the changed structure from upstream for the thunderbird l10n files + the packaging needs also to be adopted. + * [ee476f8] d/thunderbird.install: update install sequencer file + Also small adjustments are needed for the installation of the thunderbird + binary files. The old script run-mozilla.sh (which we didn't have used + within the Debian packaging) isn't shipped now, and there is now a new + folder gtk2 which includes the libmozgtk library linked against GTK2. + * [ced9d18] thunderbird-dev: remove the package and adjustments on this + The complete content that was packaged previously in thunderbird-dev + isn't created and installed now. Thus makes the old package + thunderbird-dev obsolete. + * [484a142] autopkgtests: disable tests around thunderbird-dev + Disable all autopkgtests which have used thunderbird-dev. + * [0aa2546] switch to system libraries back + We can now use the system libararies libnspr4, libnss3 and libsqlite3 + again, the version of libicu is still to old for usage within the + package build. + * [858ae82] d/control: thunderbird, remove variable ${gnome:Depends} + * [7c3a258] d/control: lightning, remove variable ${shlibs:Depends} + * [aabf0d4] debian/source/lintian-overrides: update entries + * [94b00db] debian/control: increase Standards-Version to 4.1.3 + No further changes needed. + * [245e8c2] debian/copyright: update after upstream changes + Also almost needed with new major upstream versions reflect the + changes from upstream in the copyright file. + * [72507b2] d/control: enigmail < 1.9.9 isn't working with TB > 55 + Due the new plugin interface some old plugins doesn't work with this + thunderbird version anymore, or behaving unexpected. Enigmal is one of + the this (known) plugins which needs to be at least in version 2.0a2pre + installed to work with Thunderbird. + * [6cf0133] lightning-l1on: change l10n installation + Related to [4abc7f2] the various thunderbird-l10n packages need to be + installed differently to old package installations. + * [6af7054] calendar-google-provider: tweak installation a bit + More a hack but the Mozilla plugin installation by mozilla-devscripts + isn't prepared for the new webextension logic by Mozilla. Symlinking the + c-g-p plugin for now directly from the thunderbird extension folder. + + -- Carsten Schoenert Sun, 21 Jan 2018 14:03:39 +0100 + +thunderbird (1:52.9.1-1) unstable; urgency=high + + [ intrigeri ] + * [1259eaa] AppArmor: update profile from upstream (at commit edc9487) + (Closes: #901471) + + [ Carsten Schoenert ] + * [d706f5b] debian/control: increase Standards-Version to 4.1.5 + No further changes needed. + * [f5a3eb2] New upstream version 52.9.1 + (Closes: #903160) + + -- Carsten Schoenert Tue, 10 Jul 2018 19:40:41 +0200 + +thunderbird (1:52.9.0-1) unstable; urgency=high + + [ intrigeri ] + * [c33dba2] Revert "apparmor: allow access to @{HOME}/.gnupg/tofu.db" + * [cb64397] AppArmor: update profile from upstream (Closes: #900840) + * [b5d6545] AppArmor: update profile from upstream (at commit 104da32) + + [ Carsten Schoenert ] + * [099b525] d/source.filter: add some more files to filter + There are some more files we want to filter out. + * [376e5f3] New upstream version 52.9.0 + Fixed CVE issues in upstream version 52.9 (MFSA 2018-18) + CVE-2018-12359: Buffer overflow using computed size of canvas element + CVE-2018-12360: Use-after-free when using focus() + CVE-2018-12372: S/MIME and PGP decryption oracles can be built with HTML + emails + CVE-2018-12373: S/MIME plaintext can be leaked through HTML reply/forward + CVE-2018-12362: Integer overflow in SSSE3 scaler + CVE-2018-12363: Use-after-free when appending DOM nodes + CVE-2018-12364: CSRF attacks through 307 redirects and NPAPI plugins + CVE-2018-12365: Compromised IPC child process can list local filenames + CVE-2018-12366: Invalid data handling during QCMS transformations + CVE-2018-12374: Using form to exfiltrate encrypted mail part by pressing + enter in form field + CVE-2018-5188: Memory safety bugs fixed in Firefox 60, Firefox ESR 60.1, + Firefox ESR 52.9, and Thunderbird 52.9 + * [83a9c9b] rebuild patch queue from patch-queue branch + As we have filtered more files out from the source we need to modify the + list of tests we won't to built while built the source too so a small + adjustment on that. + Also fixing some spelling issues which Lintian has found. + modified patches: + debian-hacks/Don-t-build-testing-suites-and-stuff.patch + porting-alpha/fix-FTBFS-on-alpha.patch + porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + renamed patches: + Allow-to-override-ICU_DATA_FILE-from-the-environment.patch -> + Allow-one-to-override-ICU_DATA_FILE-from-the-environment.patch + fix-function-nsMsgComposeAndSend-to-to-respect-Replo.patch -> + fix-function-nsMsgComposeAndSend-to-respect-ReploToSend.patch + * [d5254e2] Removed unneded lintian override about brace expansion + + -- Carsten Schoenert Wed, 04 Jul 2018 21:44:26 +0200 + +thunderbird (1:52.8.0-1) unstable; urgency=high + + [ intrigeri ] + * [4656ebf] AppArmor: update profile from upstream + (Closes: #882048, #882122) + + [ Agustin Henze ] + * [840cbc8] apparmor: allow access to @{HOME}/.gnupg/tofu.db + (Closes: #894907) + + [ Carsten Schoenert ] + * [514e9e8] New upstream version 52.8.0 + Fixed CVE issues in upstream version 52.8 (MFSA 2018-13) + CVE-2018-5183: Backport critical security fixes in Skia + CVE-2018-5184: Full plaintext recovery in S/MIME via chosen-ciphertext + attack (aka Efail) + CVE-2018-5154: Use-after-free with SVG animations and clip paths + CVE-2018-5155: Use-after-free with SVG animations and text paths + CVE-2018-5159: Integer overflow and out-of-bounds write in Skia + CVE-2018-5161: Hang via malformed headers + CVE-2018-5162: Encrypted mail leaks plaintext through src attribute + (aka Efail) + CVE-2018-5170: Filename spoofing for external attachments + CVE-2018-5168: Lightweight themes can be installed without user + interaction + CVE-2018-5178: Buffer overflow during UTF-8 to Unicode string conversion + through legacy extension + CVE-2018-5185: Leaking plaintext through HTML forms (aka Efail) + CVE-2018-5150: Memory safety bugs fixed in Firefox 60, Firefox ESR 52.8, + and Thunderbird 52.8 + (Closes: #898631) + * [7845229] ICU: don't build the Paragraph Layout library + Disable the build of the layout library in the internal ICU build as we + don't need this and can cause build issues. + * [e0a79fc] debian/control: increase Standards-Version to 4.1.4 + No further changes needed. + + -- Carsten Schoenert Thu, 17 May 2018 21:04:15 +0200 + +thunderbird (1:52.7.0-1) unstable; urgency=medium + + * [9eb2692] New upstream version 52.7.0 + Fixed CVE issues in upstream version 52.7 (MFSA 2018-09) + CVE-2018-5127: Buffer overflow manipulating SVG animatedPathSegList + CVE-2018-5129: Out-of-bounds write with malformed IPC messages + CVE-2018-5144: Integer overflow during Unicode conversion + CVE-2018-5146: Out of bounds memory write in libvorbis + CVE-2018-5125: Memory safety bugs fixed in Firefox 59, Firefox ESR 52.7, + and Thunderbird 52.7 + CVE-2018-5145: Memory safety bugs fixed in Firefox ESR 52.7 and + Thunderbird 52.7 + * [a01cf4b] Revert "Use gcc-6 and g++-6 due broken GUI with GCC-7" + Switching now back to GCC7 as we don't have any longer issues with + broken visuals in the GUI. + (Closes: #892404) + + -- Carsten Schoenert Mon, 26 Mar 2018 17:21:40 +0200 + +thunderbird (1:52.6.0-1) unstable; urgency=high + + * [97e1cd7] New upstream version 52.6.0 + Fixed CVE issues in upstream version 52.6 (MFSA 2018-04) + CVE-2018-5095: Integer overflow in Skia library during edge builder + allocation + CVE-2018-5096: Use-after-free while editing form elements + CVE-2018-5097: Use-after-free when source document is manipulated + during XSLT + CVE-2018-5098: Use-after-free while manipulating form input elements + CVE-2018-5099: Use-after-free with widget listener + CVE-2018-5102: Use-after-free in HTML media elements + CVE-2018-5103: Use-after-free during mouse event handling + CVE-2018-5104: Use-after-free during font face manipulation + CVE-2018-5117: URL spoofing with right-to-left text aligned left-to-right + CVE-2018-5089: Memory safety bugs fixed in Firefox 58, Firefox ESR 52.6, + and Thunderbird 52.6 + * [0300242] rebuild patch queue from patch-queue branch + Added patch debian-hacks/icu-use-locale.h-instead-of-xlocale.h.patch + that fixes the build of the included ICU source against glibc 2.26. + (Closes: #887766) + * [4bf22e0] debian/control: increase Standards-Version to 4.1.3 + No further changes needed. + * [3616443] adjust Vcs fields to salsa.debian.org + The Vcs for Thunderbird packaging live now on Salsa as Alioth will be + shutdown in the future. + * [c2f3e14] lintian: ignore non multiarch install folder for thunderbird.pc + Ignore a lintian warning about unavailable pkg-config file thunderbird.pc + as the ESR versions 52.x are the last series which will have a + thunderbird-dev. The next ESR version will be 60.x which uses + webextension and makes thunderbird-dev obsolete. + + -- Carsten Schoenert Thu, 25 Jan 2018 20:21:10 +0100 + +thunderbird (1:52.5.2-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [f597157] Revert "d/thunderbird.postinst: reload AA profile on updates" + The trigger automatics for appamor already is handling the + needed reload on profile updates for the applications. + (Closes: #885158) + * [8ebdb96] debian/control: increase Standards-Version to 4.1.2 + No further changes needed. + * [81a8c00] use inverse logic on version for AA profile status check + By this change we don't enforce the disabled profile from the + previous version in some cases and can also handle possible + version strings from -security and -backports. + (Closes: #885157) + + -- Carsten Schoenert Tue, 26 Dec 2017 14:56:40 +0100 + +thunderbird (1:52.5.2-1) unstable; urgency=high + + [ intrigeri ] + * [b791221] AppArmor: support new thunderbird executable path + (Closes: #883561, #884217) + + [ Carsten Schoenert ] + * [1f46308] New upstream version 52.5.2 + Fixed CVE issues in upstream version 52.5 (MFSA 2017-30) + CVE-2017-7829: Mailsploit part 1: From address with encoded null character + is cut off in message header display + CVE-2017-7846: JavaScript Execution via RSS in mailbox:// origin + CVE-2017-7847: Local path string can be leaked from RSS feed + CVE-2017-7848: RSS Feed vulnerable to new line Injection + * [0dd21b9] d/thunderbird.postinst: reload AA profile on updates + * [8c57218] don't disable AA profile on package updates + As people want to re-enable the AA profile a update of + thunderbird doesn't have to disable this again. + (Closes: #884191) + + -- Carsten Schoenert Sun, 24 Dec 2017 11:30:09 +0100 + +thunderbird (1:52.5.0-1) unstable; urgency=high + + [ intrigeri ] + * [48e6b65] AppArmor: fix the Crash Reporter and avoid noisy denial logs + (Closes: #880953) + * [ad8b3b5] AppArmor: fix compatibility with NVIDIA hardware + (Closes: #880532) + * [d8ff6b6] Disable the AppArmor profile by default + Due the various side effects by the enabled AppArmor profile in + Thunderbird it's currently better for a user experience we + disabling the AppArmor profile for to not get people get mad with + to many broken things. + Users can always enable the profile by themselves again. + (Closes: #882672) + * [e50eac5] README.Debian: document how to opt-in for AppArmor confinement + * [860d325] README.Debian: document how one can debug the AppArmor profile + + [ Guido Günther ] + * [50a8f60] Drop myself from maintainers + Thank you Guido for always helping out if we had some questions! + + [ Carsten Schoenert ] + * [b64509b] New upstream version 52.5.0 + Fixed CVE issues in upstream version 52.5 (MFSA 2017-26) + CVE-2017-7828: Use-after-free of PressShell while restyling layout + CVE-2017-7830: Cross-origin URL information leak through Resource Timing API + CVE-2017-7826: Memory safety bugs fixed in Firefox 57, Firefox ESR 52.5, + and Thunderbird 52.5 + * [3166018] thunderbird.links: let thunderbird pointing to thunderbird-bin + (Closes: #856492) + * [6fff70c] [buster] tb-wrapper: searching the correct dbgsym package + * [4763ca6] adding a NEWS file for thunderbird package + Giving a note about the now disabled AppArmor profile. + * [0b9d656] disabling crashreporter for now + Also don't build and ship the Crashreporter any more, it's useless + until we can collect all symbols correctly. + * [a285647] move AppArmor specific things into own README file + Put all AppArmor related information into one dedicated file. + * [5d56439] d/thunderbird.js: prepare a line for extra X-Debbugs-Cc + A really old bug report ... building a compromise and put the + requested extra header config into the configuration file but keep + it deactivated as default. + (Closes: #379304) + + -- Carsten Schoenert Sun, 03 Dec 2017 19:58:57 +0100 + +thunderbird (1:52.4.0-2~exp1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [a3e73e9] disable usage of libgnomeui parts + The libgnomeui stuff (only relevant for GTK+2) is deprecated + for a long time and will be removed in buster, and we don't need + this at all. + See https://lists.debian.org/debian-devel/2017/10/msg00299.html + * [9efc5c9] debian/watch: switch to https + * [bd5a635] rebuild patch queue from patch-queue branch + Fixup for [da3c5cc], add ppc64 to the list of BE architectures. + Thanks Adrian Glaubitz for pointing the issue. (Closes: #879270) + * [42f5ab5] apparmor: update profile from upstream (Closes: #876333, #855346) + + [ intrigeri ] + * [d7febc8, b026d28] AppArmor: update profile from upstream + (Closes: #880425, #877324) + * [377e7b5] README.Debian: fixing small typo + * [3b0a63a] AppArmor: fix importing public OpenPGP keys from file + (Closes: #880715) + + [ Carsten Schoenert ] + * [241690e] d/control: s/Icedove/Thunderbird in desc's for lightning-l10n-* + The lightning-l10n package were still using the name 'Icdeove' + instead of 'Thunderbird'. + * [f17f735] debian/control: moving transitional packages at bottom + * [91f9897] autopkg: adjust icedove to thunderbird depends + Now move over to depend in favor of thunderbird for some of + the autopkg tests. + * [8ae2ad7] autopkg: adjust icedove-dev to thunderbird-dev depends + Doing the same as before for thunderbird-dev as the native + replacement for icedove-dev. + * [fa0134c] bump debhelper >= 10.2.5 + * [8752789] debian/rules: try to build extensions reproducible + The two extensions (lightning and calendar-google-provider) + don't build reproducible right now. Trying to fix this by using + the timestamp from the changelog entry for the files. May not + work correctly and we need to tune more. + * [1496368] d/thunderbird.install: also install the fonts folder + Recent versions of Thunderbird needing the font EmojiOne which + isn't provided by any other package. + (Closes: #881299) + + The following changes are take effect in removing all transitional packages + related to the old icedove packaging only for buster. We still need all the + transitional packages in wheezy, jessie and stretch! + * [54c8a9b] [buster] remove transitional iceowl-l10n-* packages + * [c338630] [buster] remove Replace, Breaks and Provides for iceowl-l10n-* + * [4311683] [buster] remove transitional icedove-l10n-* packages + * [f6e3a01] [buster] remove Replace, Breaks and Provides for icedove-l10n-* + * [a9117e4] [buster] remove transitional iceowl-extension package + * [5aed012] [buster] remove Replace, Breaks and Provides for iceowl-extension + * [27fc04b] [buster] remove transitional icedove-dbg package + * [53b4825] [buster] remove transitional icedove-dev package + * [e2d808f] [buster] remove Replace, Breaks and Provides for icedove-dev + * [97edfbe] [buster] remove transitional icedove package + * [3748054] [buster] remove Replace and Breaks for icedove + * [611a704] [buster] move thunderbird-dbg into *-dbgsym package + + -- Carsten Schoenert Sun, 12 Nov 2017 16:01:07 +0100 + +thunderbird (1:52.4.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [da3c5cc] Simplify endianness selection for ICU + Since we need to build ICU on the various Debian releases we + need to ensure the architecture detection isn't to strict. + Thanks Guido for helping out here! + + [ Carsten Schoenert ] + * [47748ca] debian/control: be more relaxed on Breaks for enigmail + * [6a54666] thunderbird-wrapper: fix small typo in help output + A small typo was happen in the example call with the JS console. + * [6d5266e] README.Debian: update info around tls fallback-limit + The default behavior on the TLS fallback has changed some + versions ago, document this accordingly. + * [24ad883] debian/control: change maintainer + Thanks Christoph for the work over the past years! + * [c78200e] debian/control: move src pkg name to thunderbird + By this version we move the source package name also back to + thunderbird. This follows the changes that are already made to + the binary package names and we can call the source package now + also again thunderbird. + (Closes: #857075) + * [c26133d] debian/gbp.conf: rename components to real used names + Due the changes of the source package the names for the + sub-folders within the additional tarballs can also be changed + to be closer on the real upstream used names. + * [a5ce4f7] New upstream version 52.4.0 + (Closes: #878845, #878870) + Fixed CVE issues in upstream version 52.4 (MFSA 2017-23) + CVE-2017-7793: Use-after-free with Fetch API + CVE-2017-7818: Use-after-free during ARIA array manipulation + CVE-2017-7819: Use-after-free while resizing images in design mode + CVE-2017-7824: Buffer overflow when drawing and validating elements with + ANGLE + CVE-2017-7805: Use-after-free in TLS 1.2 generating handshake hashes + CVE-2017-7814: Blob and data URLs bypass phishing and malware protection + warnings + CVE-2017-7825: OS X fonts render some Tibetan and Arabic unicode characters + as spaces + CVE-2017-7823: CSP sandbox directive did not create a unique origin + CVE-2017-7810: Memory safety bugs fixed in Firefox 56 and Firefox ESR 52.4, + and Thunderbird 52.4 + * [104b4e5] rebuild patch queue from patch-queue branch + * [d63662a] lintian: move oldlibs/extra -> oldlibs/optional + By moving all transitional package to oldlibs/optional we can + help deborphan to detect better not needed packages. + * [fb56001] d/rules: reflect changes from renamed component tarballs + The additional tarballs are stored in folders which reflect + the upstream names of those components. This also needs to be + respected for the build instructions of the package. + * [61288fb] debian/control: change Vcs* fields due the src name change + Addressing the changed source package name in the Git Vcs urls. + * [ef95ab5] debian/control: increase Standards-Version to 4.1.1 + No further changes needed. + * [45e8fe2] apparmor: update profile from upstream + Thanks to Simon Deziel and intrigeri we can simply use the + apparmor profile changes done for the Ubuntu releases. + * [6b1649c] lintian: adding a override for thunderbird-l10n-all + * [ceab93f] debian/README.source: reflect src package name change + + -- Carsten Schoenert Tue, 17 Oct 2017 18:20:29 +0200 + +icedove (1:52.3.0-4) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3ddf57b] rebuild patch queue from patch-queue branch + * [3bd845d] debian/control: increase Standards-Version to 4.1.0 + + -- Carsten Schoenert Tue, 29 Aug 2017 16:17:24 +0200 + +icedove (1:52.3.0-3) unstable; urgency=medium + + [ Carsten Schoenert ] + * [c08f005] rebuild patch queue from patch-queue branch + * [f658cab] debian/rules: enable verbose build for ICU + + -- Carsten Schoenert Mon, 28 Aug 2017 19:44:07 +0200 + +icedove (1:52.3.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [d544a01] debian/rules: correct icu build sequence + + -- Carsten Schoenert Tue, 22 Aug 2017 18:57:36 +0200 + +icedove (1:52.3.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [8e852be] New upstream version 52.3.0 + Fixed CVE issues in upstream version 52.3 (MFSA 2017-20) + CVE-2017-7800: Use-after-free in WebSockets during disconnection + CVE-2017-7801: Use-after-free with marquee during window resizing + CVE-2017-7809: Use-after-free while deleting attached editor DOM node + CVE-2017-7784: Use-after-free with image observers + CVE-2017-7802: Use-after-free resizing image elements + CVE-2017-7785: Buffer overflow manipulating ARIA attributes in DOM + CVE-2017-7786: Buffer overflow while painting non-displayable SVG + CVE-2017-7753: Out-of-bounds read with cached style data and + pseudo-elements + CVE-2017-7787: Same-origin policy bypass with iframes through page reloads + CVE-2017-7807: Domain hijacking through AppCache fallback + CVE-2017-7792: Buffer overflow viewing certificates with an extremely + long OID + CVE-2017-7804: Memory protection bypass through WindowsDllDetourPatcher + CVE-2017-7791: Spoofing following page navigation with data: protocol and + modal alerts + CVE-2017-7782: WindowsDllDetourPatcher allocates memory without DEP + protections + CVE-2017-7803: CSP containing 'sandbox' improperly applied + CVE-2017-7779: Memory safety bugs fixed in Firefox 55, Firefox ESR 52.3, + and Thunderbird 52.3 + * [0b7243b] debian/rules: build icudt5*.dat on our own if needed + If we need to use the internal sources of ICU (triggered by + using --with-system-icu) we need to build the platform depended file + icudt*[b,l].dat before we can call the configure run. + This is needed as Mozilla only ships a precompiled little endian version + of the file icudt*.dat and all platforms with big endianness are failing + later due issues related to the wrong endianness. + * [1964469] debian/mozconfig.default: enable i18n on big endian + * [6b58ac5] debian/control: increase Standards-Version to 4.0.1 + * [e59cf81] rebuild patch queue from patch-queue branch + removed patche(s) (applied upstream): + - fixes/Bug-1308908-Compare-the-whole-accessible-name-when-checki.patch + updated/refreshed patches (no changes): + - porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + + [ Simon Deziel ] + * [a574010] apparmor/usr.bin.thunderbird: small update to avoid noise + + -- Carsten Schoenert Sat, 19 Aug 2017 18:27:19 +0200 + +icedove (1:52.2.1-5) unstable; urgency=high + + [ Carsten Schoenert ] + * [133a574] Use gcc-6 and g++-6 due broken GUI with GCC-7 + The usage of the GCC-7 suite introduces a broken GUI currently that make + using thunderbird mostly impossible. + (Closes: #871629) + * [3ebacd1] d/rules: use DEB_* variables for entries from changelog + By using variables that are prepared by dpkg we don't need to manually + search for dates and versions. etc. + * [52c2b83] d/copyright: MPL-1.1 and MPL-2.0 now provided by common-licenses + Since policy 4.0.0 the two Mozilla related licenses are included and don't + need to be added extra. + * [3f37967] adjust X-Debian-Homepage to existing Thunderbird page + * [41b5c03] debian/control: increase Standards-Version to 4.0.0 + * [e3c3994] mozconfig.default: use proper disabled options + * [2d4b846] debian/control: increase Breaks for enigmail version + (Closes: #869789) + + [ John Paul Adrian Glaubitz ] + * [4879401] sh4: disable option --disable-pie (Closes: #867553) + + [ Carsten Schoenert ] + * [2646f3f] autpkgtests: disable the idlTest.sh test case + + -- Carsten Schoenert Fri, 11 Aug 2017 22:02:47 -0400 + +icedove (1:52.2.1-4) unstable; urgency=medium + + [ Guido Günther ] + * [04de899] Don't use different profile folder for jessie and wheezy + + [ Carsten Schoenert ] + * [692d3ce] rebuild patch queue from patch-queue branch (Closes: #867013) + added patch (provided by Adrian): + - porting-alpha/FTBFS-alpha-adjust-some-source-to-prevent-build-issues.patch + removed patch: + - porting-hurd/FTBFS-hurd-adding-GNU-to-the-configure-platform-detection.patch + (wrong approach, the Python wrapper around configure isn't yet smart enough) + + [ John Paul Adrian Glaubitz ] + * [5153ce2] mips: final fixups to prevent FTBFS + + -- Carsten Schoenert Thu, 06 Jul 2017 16:53:30 +0200 + +icedove (1:52.2.1-3) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * [99b323a] d/mozconfig.default: fixups for --without-intl-api + + -- Carsten Schoenert Sat, 01 Jul 2017 10:18:05 +0200 + +icedove (1:52.2.1-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [e8ce299] disabling ICU support on some big endian systems + This hack should enable at least successful building of all RC platforms + and needs to be solved in a not such agressive way without loosing ICU + support on the problematic platforms. + Thanks John Paul Adrian Glaubitz for catching the root of the issue. + * [a66e812] rebuild patch queue from patch-queue branch + Adding a small needed fix for getting mips* out od FTBFS. Also GNU/Hurd + should pass the configure script now. + + -- Carsten Schoenert Fri, 30 Jun 2017 19:38:28 +0200 + +icedove (1:52.2.1-1) unstable; urgency=medium + + [ Guido Günther ] + * [4e87d6b] d/rules: Make sure DIST is not passed on to configure + + [ Carsten Schoenert ] + * [35b84ef] rebuild patch queue from patch-queue branch + added patches: + - porting-mips/Fix-CPU_ARCH-test-for-libjpeg-on-mips.patch + - porting-s390x/FTBFS-s390x-Use-jit-none-AtomicOperations-sparc.h-on-s390.patch + (Closes: #864974) + * [c818874] New upstream version 52.2.1 + (Closes: #861840) + * [8c776c9] Icedove2Thunderbird: add opt out for dialogue pop-up + (Closes: #860381) + + -- Carsten Schoenert Wed, 28 Jun 2017 20:01:44 +0200 + +icedove (1:52.2.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [9ebc11d] mozconfig.default: remove configure option + '--disable-methodjit' on armel + This options isn't alive any more and was forgotten to removed on the + previous upload. + [ Simon Deziel ] + * [d8e5d42] usr.bin.thunderbird: merge gpg(1) and gpg2 subprofiles + (Closes: #859179) + * [f18884e] usr.bin.thunderbird: allow accessing gpgconf in gpg subprofile + * [e73afbb] usr.bin.thunderbird: allow accessing any gpg2keys providers + + [ Carsten Schoenert ] + * [066ddb9] mozconfig.default: switch back to internal libjpeg + Going back and using the libjpeg library that's shipped by Mozilla, the + system library probably provoking broken builds on various platforms. + As we prepare the uploads for (old-)stable-security we need to use the + internal libjpeg library at all. + * [ff92bfa] rebuild patch queue from patch-queue branch + modified patches: + - porting-m68k/Add-m68k-support-to-Thunderbird.patch + - porting-sh4/Add-sh4-support-to-Thunderbird.patch + (Closes: #859271, #859508) + * [0a89f76] New upstream version 52.2.0 + Fixed CVE issues in upstream version 52.2 (MFSA 2017-17) + CVE-2017-5472: Use-after-free using destroyed node when regenerating trees + CVE-2017-7749: Use-after-free during docshell reloading + CVE-2017-7750: Use-after-free with track elements + CVE-2017-7751: Use-after-free with content viewer listeners + CVE-2017-7752: Use-after-free with IME input + CVE-2017-7754: Out-of-bounds read in WebGL with ImageInfo object + CVE-2017-7756: Use-after-free and use-after-scope logging XHR header + errors + CVE-2017-7757: Use-after-free in IndexedDB + CVE-2017-7778: Vulnerabilities in the Graphite 2 library + CVE-2017-7758: Out-of-bounds read in Opus encoder + CVE-2017-7764: Domain spoofing with combination of Canadian Syllabics and + other unicode blocks + CVE-2017-5470: Memory safety bugs fixed in Firefox 54 and Firefox ESR 52.2, + and Thunderbird 52 + * [e03380e] rebuild patch queue from patch-queue branch + modified patch: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + + -- Carsten Schoenert Fri, 16 Jun 2017 20:37:06 +0200 + +icedove (1:52.1.1-1) experimental; urgency=medium + + [ Guido Günther ] + * [db8d0db] Tighten meta package dependencies + Be more strict on depends and add a version to all related + Thunderbird specific packages. + * [defb689] Copy-edit thunderbird-wrapper-helper.sh + * [54b35d4] Allow one to override the location of the wrapper-helper + Make $TB_HELPER more flexible and give the variable a default value, so a + user can override it with it's own. + * [a187364] dh-exec: avoid multiple spaces around filenames + * [a85bc7a] thunderbird-wrapper: robustness when sourcing helper + * [eee56ab] Drop replaces on packages no longer in any release + + [ Carsten Schoenert ] + * [1d85980] rebuild patch queue from patch-queue branch + added patches: + - porting-mk68/Add-m68k-support-to-Thunderbird.patch + - porting-sparc64/Add-sparc64-support-to-Thunderbird.patch + (Closes: #859151, #859271) + * [2717849] tb-wrapper: call thunderbird starting with exec + (Closes: #858100) + * [8afa31b] d/gbp.conf: adjust upstream branch to new ESR version + * [43d2e70] New upstream version 52.1.1 + Fixed CVE issues in upstream version 52.1 (MFSA 2017-09) + CVE-2017-5413: Segmentation fault during bidirectional operations + CVE-2017-5414: File picker can choose incorrect default directory + CVE-2017-5416: Null dereference crash in HttpChannel + CVE-2017-5426: Gecko Media Plugin sandbox is not started if seccomp-bpf + filter is running + CVE-2017-5418: Out of bounds read when parsing HTTP digest authorization + responses + CVE-2017-5419: Repeated authentication prompts lead to DOS attack + CVE-2017-5405: FTP response codes can cause use of uninitialized values + for ports + CVE-2017-5421: Print preview spoofing + CVE-2017-5422: DOS attack by using view-source: protocol repeatedly in one + hyperlink + CVE-2017-5399: Memory safety bugs fixed in Thunderbird 52 + Fixed CVE issues in upstream version 52.1 (MFSA 2017-13) + CVE-2017-5433: Use-after-free in SMIL animation functions + CVE-2017-5435: Use-after-free during transaction processing in the editor + CVE-2017-5436: Out-of-bounds write with malicious font in Graphite 2 + CVE-2017-5461: Out-of-bounds write in Base64 encoding in NSS + CVE-2017-5459: Buffer overflow in WebGL + CVE-2017-5466: Origin confusion when reloading isolated data:text/html URLs + CVE-2017-5434: Use-after-free during focus handling + CVE-2017-5432: Use-after-free in text input selection + CVE-2017-5460: Use-after-free in frame selection + CVE-2017-5438: Use-after-free in nsAutoPtr during XSLT processing + CVE-2017-5439: Use-after-free in nsTArray Length() during XSLT processing + CVE-2017-5440: Use-after-free in txExecutionState destructor during XSLT + processing + CVE-2017-5441: Use-after-free with selection during scroll events + CVE-2017-5442: Use-after-free during style changes + CVE-2017-5464: Memory corruption with accessibility and DOM manipulation + CVE-2017-5443: Out-of-bounds write during BinHex decoding + CVE-2017-5444: Buffer overflow while parsing application/http-index-format + contents + CVE-2017-5446: Out-of-bounds read when HTTP/2 DATA frames are sent with + incorrect data + CVE-2017-5447: Out-of-bounds read during glyph processing + CVE-2017-5465: Out-of-bounds read in ConvolvePixel + CVE-2016-10196: Vulnerabilities in Libevent library + CVE-2017-5454: Sandbox escape allowing file system read access through + file picker + CVE-2017-5469: Potential Buffer overflow in flex-generated code + CVE-2017-5445: Uninitialized values used while parsing + application/http-index-format content + CVE-2017-5449: Crash during bidirectional unicode manipulation with + animation + CVE-2017-5451: Addressbar spoofing with onblur event + CVE-2017-5462: DRBG flaw in NSS + CVE-2017-5467: Memory corruption when drawing Skia content + CVE-2017-5430: Memory safety bugs fixed in Firefox 53, Firefox ESR 52.1, + Thunderbird 52.1 + CVE-2017-5429: Memory safety bugs fixed in Firefox 53, Firefox ESR 45.9, + Firefox ESR 52.1, and Thunderbird 52.1 + (Closes: #855344, #495372, #861480, #682208, #698244, #859909, #857593, + #837771) + * [de561ef] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/Allow-to-override-ICU_DATA_FILE-from-the-environment.patch + - debian-hacks/Build-against-system-libjsoncpp.patch + - debian-hacks/Don-t-build-testing-suites-and-stuff.patch + - debian-hacks/Force-use-the-i686-rust-target.patch + - fixes/Bug-1308908-Compare-the-whole-accessible-name-when-checki.patch + (Closes: #826325) + - porting-sh4/Add-sh4-support-to-Thunderbird.patch + (Closes: #859508) + removed patches (obsoleted by upstream changes): + - debian-hacks/Don-t-build-example-component.patch + - debian-hacks/fix-identification-of-ObjdirMismatchException.patch + - fixes/Bug-1245076-Don-t-include-mozalloc.h-from-the-cstdlib-wra.patch + - fixes/Bug-1273020-Add-missing-null-checks-in-ApplicationAccessi.patch + - fixes/Bug-1277295-Remove-obsolete-reference-to-storage-service-.patch + - fixes/Bug-1340724-fix-SMTP-server-name-output-in-SMTP-logging.-.patch + - fixes/Bug-497488-Implement-verify-mode-in-the-subscribe-dialog-.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit-1.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit.patch + - porting-arm64/Bug-1091515-Don-t-set-64KB-page-size-on-aarch64.-r-glandi.patch + - porting-kfreebsd-hurd/CrossProcessMutex.h-fix-build-on-kfreebsd-and-GNU-hurd.patch + - porting-kfreebsd-hurd/FTBFS-hurd-adding-the-HURD-platform-to-the-configure.patch + - porting-kfreebsd-hurd/correcting-file-inclusion-for-kfreebsd-and-hurd.patch + - porting-mips/Fix-build-error-in-MIPS-SIMD-when-compiling-with-mfp.patch + - porting-mips/libyuv_disable-mips-assembly-for-MIPS64.patch + - porting-powerpcspe/FTBFS-powerpcspe-disable-AltiVec-instructions.patch + - porting-sparc64/Add-sparc64-support-to-Thunderbird.patch + (unclear state, will be added later again) + - porting/Add-xptcall-support-for-SH4-processors.patch + (Closes: #859362) + - debian-hacks/Move-profile.patch + modified or adjusted patches: + - debian-hacks/changing-the-default-search-engine.patch + - debian-hacks/stop-configure-if-with-system-bz2-was-passed-but-no-.patch + - icedove-l10n/disable-extension-update-extension-is-managed-by-apt.patch + --> icedove-l10n/thunderbird-l10n-disable-external-extension-update.patch + (renamed to and modified due new languages) + - icedove/fix-installdir.patch + --> debian-hacks/Thunderbird-fix-installdir-for-icons.patch + * [684ad58] d/source.filter: update due upstream changes + * [d005649] debian/control: modify various B-D + * [7a8a98d] debian/rules: add some extra C*FLAGS + Adding '-fno-lifetime-dse' to not enable dead store elimination of + objects within their lifetime, some parts of the source is relying + on the persistent values of such objects. + Some other distributions as Ubuntu, Fedora and Arch e.g. use this flag too + (at least with ESR52) to prevent possible segfaults. + * [56f8f4b] debian/rules: adding hack to preserve correct config.status + * [fb500a6] mozconfig.default: remove no longer existing options + * [c9a3e60] mozconfig.default: some minor adjustments to configure options + * [f584857] mozconfig.default: enable GTK3 theme explicit + (Closes: #857593) + * [3cbe1fb] debian/control: add packages for *-dsb language + * [8317735] debian/control: add packages for *-hsb language + * [39d90c1] debian/control: add packages for *-kab language + * [82b4f50] debian/control: add missing packages for *-ast language + * [0edde96] debian/rules: include also l10n folder with 3 characters + * [47f17a4] lintian-overrides: modify the list for the js files to ignore + * [8872d34] debian/copyright: update after upstream changes + * [6755547] mozconfig.default: use some internal libraries + Use libicu-dev, libnspr4-dev, libnss3-dev, libsqlite3-dev from + shipped source as Stretch versions not recent enough. + * [5b04b32] thunderbird.install: pick up icu*.dat if around + * [edf24d7] debian/control: mark thunderbird-dbg as Multi-Arch: same + * [5d5392b] apparmor/usr.bin.thunderbird: update for version 52 + (cherry-picked from upstream) + (Closes: #859179) + * [f49ad79] apparmor/usr.bin.thunderbird: grant access to commonly used + locations (cherry-picked from upstream) + * [510fd6f] debian/rules: install lightning-l10n files into correct place + * [d70ade4] lightning-l10n: adjust min/max version for ESR 52 cycle + With the new ESR version tweaking the extension version of l10n packages + for lightning > 52.0 and < 52.*. + * [c0dd18f] debian/rules: install icudt5*.dat file more flexible + * [b5136f7] autopkg: improve the output of idlTest.sh + * [7ac04f6] autopkg: add extra test icudatfileTest.sh + + [ Christoph Goehre ] + * [13f5178] lintian-overrides: we build against internal nspr and nss + * [56bbf23] rebuild patch queue from patch-queue branch + added patches: + - porting-sparc64/Add-sparc64-support-to-Thunderbird.patch + (Closes: #859151) + modified patches: + - porting-mk68/Add-m68k-support-to-Thunderbird.patch + -> porting-m68k/Add-m68k-support-to-Thunderbird.patch (renamed) + * [6a7ef60] tests/idlTest.sh: remove duplicated 'done' output + * [42bf8e1] debian/rules: remove duplicate .so files in thunderbird-dev + * [5dc08bc] tests/soSymlinkTest.sh: check for symlinked .so files + + -- Carsten Schoenert Sat, 03 Jun 2017 19:54:43 +0200 + +icedove (1:45.8.0-3) unstable; urgency=medium + + [ Carsten Schoenert ] + * [d923505] AppArmor: be more flexible on profile folders + (Closes: #858735, #858737) + * [1e04099] tb-wrapper: use readlink also on ${ID_PROFILE_FOLDER} + (Closes: #858771) + * [9f6b771] tb-wrapper: correct check for -dbg package (Closes: #858804) + * [8b5271a] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1273020-Add-missing-null-checks-in-ApplicationAccessi.patch + + -- Christoph Goehre Wed, 29 Mar 2017 19:28:32 -0400 + +icedove (1:45.8.0-2) unstable; urgency=medium + + [ Carsten Schoenert ] + * [c2a1d77] tb-helper: pass arguments correctly through tb call + (Closes: #855334) + * [5c49348] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1340724-fix-SMTP-server-name-output-in-SMTP-logging.patch + (Closes: #855470) + * [9d420c0] Revert "register MIME type application/octet-stream for + Thunderbird" (Closes: #857755) + * [c9960e5] tb-helper: pass arguments by using a array to TB call + + -- Christoph Goehre Tue, 14 Mar 2017 20:37:48 -0400 + +icedove (1:45.8.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3388899] New upstream version 45.8.0 + * [24d25e9] tb-helper*: fix up that silly comments behind the if statement + (Closes: #857029, #857032, #857098, #857112) + * [788b7fa] bash-completion: adding a completion script for /u/b/thunderbird + * [9ac9d07] rebuild patch queue from patch-queue branch + added patches: + - p-arm64/Bug-1091515-Don-t-set-64KB-page-size-on-aarch64.-r-glandi.patch + - p-arm64/Bug-1257055-Use-jit-arm64-Architecture-arm64.h-on-non-JIT.patch + * [ad0860b] copyright: small updates reflecting upstream changes + + [ Christoph Goehre ] + * [69577cf] lintian: replace hardlink in thunderbird-dev with symbolic link + + -- Christoph Goehre Thu, 09 Mar 2017 20:24:49 -0500 + +icedove (1:45.7.1-2) unstable; urgency=medium + + [ Christoph Goehre ] + * [5e2c618] crashreporter: build only on amd64, armel, armhf and i386 + * [36a922f] Apparmor: replace '·' with spaces (Closes: #855343) + * [bbbc917] rebuild patch queue from patch-queue branch + added patches: + - p-hppa/FTBFS-hppa-xpcshell-segfaulting-during-make-install.patch + * [8b5d601] icedove|thunderbird.desktop: update danish (da) translation + + [ Carsten Schoenert ] + * [f8debbd] debian/control: separate transitional mark by extra line + (Closes: #855806) + * [583c798] {tb,id}.maintscript: modify start-version (Closes: #854587) + * [94e557c] thunderbird: adding x11-utils to Depends (Closes: #854488) + * [dc878e7] thunderbird-wrapper.sh: fix command line transfer to TB + (Closes: #855334) + * [9734349] thunderbird helper: split helper function into extra file + (Closes: #855286) + * [3089a97] tb-helper*: wrapping X11 dialog calls + * [e0331e1] tb-helper*: rework option parsing for wrapper script + (Closes: #855872) + * [31d9899] thunderbird.postinst: try to remove empty profile folder + (Closes: #855228) + * [c9e5b70] tb-wrapper*: complete rework and moving over for symlinking + (Closes: #855265, #855391, #855501, #856490) + * [9ef920f] README.Debian: adopt content to current wrapper script behavior + * [4cf88e5] icedove|thunderbird.desktop: adopt binary call + * [101e0ad] tb-helper*: call subfunctions not within the case loop + * [c061107] register MIME type application/octet-stream for Thunderbird + + -- Christoph Goehre Mon, 06 Mar 2017 20:39:23 -0500 + +icedove (1:45.7.1-1) unstable; urgency=medium + + * Bye-bye Icedove (Closes: #749965, #776359, #816679, #363811) + + [ Carsten Schoenert ] + * [90c0d6f] New upstream version 45.7.1 + * [a6d21de] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-497488-Implement-verify-mode-in-the-subscribe-dialog-.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit-1.patch + - fixes/Bug-497488-RSS-feeds-with-an-invalid-certificate-fail-wit.patch + (Closes: #837177) + removed patches (fixed upstream): + - debian-hacks/icu.m4-adding-extra-bracket-to-not-confuse-grep.patch + * [8572e34] lintian: adding a semi automated lintian-override + * [aa2bda2] crashreporter: enable the reporter for thunderbird + * [b96ae57] move icedove.desktop into package icedove + (Closes: #850865, #851829) + * [304921f] debian/rules: set SHELL explicit to /bin/bash (Closes: #852867) + * [072b899] thunderbird: adding extra check while migration + * [284912d] debian/README.Debian: update after recent changes + * [6dc7e32] icedove-l10n-bn-bd: fix typo in Depends field (Closes: #854135) + * [c5d4bf5] {tb,id}.maintscript: modify start-version (Closes: #854587) + * [f3d64ae] thunderbird-wrapper.sh: adding extra information window + (Closes: #854488) + * [6b432c7] README.Debian: hint about issue in global configuration + + [ Douglas Bagnall ] + * [e2c8a23] Apparmor: allowing exo-open-ixr launcher (Closes: #853929) + + [ Christoph Goehre ] + * [ef36e0b] thunderbird-wrapper.sh: fix typos + * [f98d5d1] thunderbird-wrapper.sh: add small changes from Guido and Carsten + * [7dd6841] README.Debian: fix/correct spelling + * [e038694] debian/control: remove depends-on-essential-package 'sed' + + [ Jens Reyer ] + * [ea58e17] thunderbird-wrapper.sh: add extra function for migration + (Closes: #849592) + + -- Christoph Goehre Tue, 14 Feb 2017 18:46:23 -0500 + +icedove (1:45.6.0-3) experimental; urgency=medium + + [ Carsten Schoenert ] + * [78b3296] rebuild patch queue from patch-queue branch + added patch: + - debian-hacks/icu.m4-adding-extra-bracket-to-not-confuse-grep.patch + * [a272f85] thunderbird-wrapper.sh: also migrate mimeapps.list + (Closes: #850864) + * [3d4e303] icedove.desktop: don't use categories and mimetypes + (Closes: #850866) + * [db15d43] icedove: link icedove to thunderbird + * [59a9e05] debian/control: change Replaces and Breaks versions + + [ Christoph Goehre ] + * [55cce4a] thunderbird-wrapper.sh: remove 'set -e' + + -- Christoph Goehre Tue, 17 Jan 2017 18:26:06 -0500 + +icedove (1:45.6.0-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [26f8f2d] New upstream version 45.6.0 + * [15b7797] iceowl-l10n-*: rearrange Recommends field for various packages + (Closes: #824727, #824750, #824763, #824764, #824768, #824780) + * [3f75b56] debian/vendor.js: adjust to new version related wiki site + * [6bd7f89] d/c-id-l10n: adjusting download URL for stable versions + * [f15d1a2] icedove-l10n-all: change Section into metapackages + (Closes: #824785) + * [25c3ba1] debian/README.source: info about import of multitarballs + * [3ebcf59] debian/control: adding Recommends to icedove-l10n-uk + (Closes: #825806) + * [3e57d5e] debian/control: Icedove, adding dependency on libatk-adaptor + * [e19c59d] debian/control: rework Recommends for icedove-l10n-* + * [4741d80] debian/control: small fixup Recommends on iceowl-l10n-* + * [f9f5193] debian/control: sort iceowl-l10n-* alphabetical + * [5220187] de-branding: move iceowl* back to lightning* + * [6e28ce5] de-branding: remove Icedove naming from icedove-l10n* + * [3dc3b4b] de-branding: remove Icedove branding in the main binary + * [8b715cf] de-branding: remove hard name branding in addon managger + * [9f609fa] de-branding: adopting dh files for icedove package + * [caba322] de-branding: adopting dh files for icedove-dev package + * [6538f66] de-branding: change debian/rules to reflect appname change + * [871588d] de-branding: adopting dh files for iceowl-extension package + * [a0b20e7] debian/tests/*: adopt change of the binary icedove + * [29025cc] de-branding: adjust icedove-l10n installation folder + * [2b8dd99] de-branding: adjust iceowl-l10n installation folder + * [1f3043c] de-branding: remove the Debian visual branding + * [272e420] de-branding: removing icedove branding files and folder + * [093bc58] de-branding: revitalize *.desktop file with Thunderbird + * [4a35d9d] de-branding: move iceowl-l10n-* into lightning-l10n-* + * [68d8d79] de-branding: adding transitional iceowl-l10n packages + * [4b2febd] de-branding: adding 'Breaks', 'Replaces', 'Provides' to + lightning-l10n-* + * [9cdb427] de-branding: rework d/r to reflect changes for lightning-l10n + * [ec3b427] de-branding: move icedove-l10n-* into thunderbird-l10n-* + * [387bfa2] de-branding: adding transitional icedove-l10n packages + * [f3cfecb] de-branding: adding 'Breaks', 'Replaces', 'Provides' to + thunderbird-l10n-* + * [03b222e] de-branding: rework d/r to reflect changes for thunderbird-l10n + * [0c9a6ab] de-branding: (re)adding a wrapper script for TB starting + * [f9c8aef] de-branding: move icedove-dev to thunderbird-dev + * [a4313e6] de-branding: adding transitional icedove-dev package + * [0508866] de-branding: rework d/r to reflect changes for thunderbird-dev + * [048b29f] de-branding: move icedove-dbg to thunderbird-dbg + * [da01077] de-branding: adding transitional icedove-dbg package + * [a371079] de-branding: rework d/r to reflect changes for thunderbird-dbg + * [b34b8f8] de-branding: move iceowl-extension to lightning + * [fa8f9b3] de-branding: adding transitional iceowl-extension package + * [848f178] de-branding: rework d/r to reflect changes for lightning + * [a708c35] de-branding: move icedove to thunderbird + * [cccef90] de-branding: moving icedove dh files into thunderbird + * [8c2b27d] de-branding: rework icedove.1 into thunderbird.1 + * [19406fe] de-branding: transition of mozconfig.* + * [88ed684] de-branding: rework d/r to reflect changes for thunderbird + * [c8011d3] de-branding: adding transitional icedove package + * [5e399aa] de-branding: adjusting package calendar-google-provider + * [a03329c] debian/tests/help.sh: use absolute path for binary call + * [10adb34] move old icedove graphic stuff into own folder + * [abc6c8c] create various thunderbird png graphics from SVG file + * [a2067ae] debian/copyright: update copyright information + * [a9c6f9f] de-branding: add own created thunderbird icons to install + * [1d8b524] mozconfig.default: enable the official brandind + * [9f3a673] debian/control: adding dh-exec to the Build-Depends + * [cddbc63] move Thunderbird install files into thunderbird.install + * [5037bb5] de-branding: transition of apparmor profile for TB + * [14f094d] de-branding: remove extra URL for What's New inside + * [c2a06db] manpage thunderbird; adjust and correct manpage entries + * [8fa3365] debian/control: adding package dpkg to Build-Depends + * [ba84ede] thunderbird: switching dpkg-maintscript-helper to *.maintscript + * [d0e675b] debian/thunderbird.postinst: adding some moving mechanism + * [cbae415] de-branding: let helper scripts reflect thunderbird change + * [da402a4] thunderbird-wrapper.sh: adding fixing inside mimeTypes.rdf + (Closes: #837516) + * [030d49e] de-branding: adding some hints about the debranding + * [662f7af] debian/README.source: adjusting hints due name changes + * [8fbedc1] debian/thunderbird.install: install additional icedove.desktop + * [9089d9f] debian/*lintian-overrides: adopt name changes + * [b9b7665] debian/rules: use the old profile folder for wheezy and jessie + * [f9c137e] fix *.desktop files for proper GNOME app mechanism + (Closes: #817973, #832302) + * [1c85ff7] debian/rules: chmod certain *.py tb-devel files + * [356694a] thunderbird.links: linking the default TB icon to u/s/p + + [ Guido Günther ] + * [24bbee9] Wrap and sort control information (Closes: #825806) + * [fcfe4ac] Add minimalistic autopkgtest + * [f7a32e8] Add autopkgtest to test header and typelib generation + * [189d835] Add autopkgtest to smoke test xpcshell + + [ Christoph Goehre ] + * [354f836] turn the reduce of memory usage of the linker on again + * [5e48e17] don't build dbgsym packages on unreleased builds + * [09679eb] rebuild patch queue from patch-queue branch (Closes: #808183) + * [ec3a50b] debian/NEWS: change urgency to medium + + -- Christoph Goehre Sat, 31 Dec 2016 10:26:36 +0100 + +icedove (1:45.5.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [efe836f] New upstream version 45.5.1 + * [48999ac] rebuild patch queue from patch-queue branch + + -- Carsten Schoenert Wed, 30 Nov 2016 18:27:57 +0100 + +icedove (1:45.4.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [a159bc9] autopkgtests: let xfvb-run pick the port to avoid clashes with + already running servers + * [5384838] Snapshot 1:45.3.0-1~1.gbpa159bc + * [8d3ac18] autopkgtest: Dont print on stderr + * [8afc7be] Put test deps on a simgle line + + [ Carsten Schoenert ] + * [99e9c40] New upstream version 45.4.0 + (Closes: #835866, #836798, #837107) + * [6195d7b] debian/README.source: update instructions for importing + * [5150624] debian/icedove.js: disabling baselinejit functionality + (Closes: #837930) + + -- Carsten Schoenert Mon, 03 Oct 2016 12:18:09 +0200 + +icedove (1:45.3.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3cc29ee] Imported Upstream version 45.3.0 + * [ed8cf89] Imported icedove-l10n Upstream version 45.3.0 + * [bc20676] Imported iceowl-l10n Upstream version 45.3.0 + * [54bd9c4] debian/README.source: fix up some hints + * [756ec86] mozconfig.default: enable build of PIE binaries + * [1cef6f8] rebuild patch queue from patch-queue branch + added patch: + - porting-mips/libyuv_disable-mips-assembly-for-MIPS64.patch + (Closes: #836400) + * [7a1ec74] AppArmor: grant access to local mailboxes and enigmail(2) + (Closes: #837656) + + -- Carsten Schoenert Wed, 28 Sep 2016 22:52:03 +0200 + +icedove (1:45.2.0-4) unstable; urgency=medium + + [ Carsten Schoenert ] + * [cc8cd76] mozconfig.default: relaxe optimization on arm{64,el,hf} to -O1 + + -- Christoph Goehre Thu, 18 Aug 2016 10:45:17 -0400 + +icedove (1:45.2.0-3) unstable; urgency=medium + + [ Guido Günther ] + * [9a8f4e1] tests: Fix typo + + [ Carsten Schoenert ] + * [53aab10] AppArmor: allow self execution for -ProfileManager + (Closes: #833742) + * [a459d6a] debian/rules: adding one more CFLAGS/CXXFLAGS compiler flag + (Closes: #833864, #833532, #833591, #833635, #833698) + * [e32c460] AppArmor: grant access to local mailboxes and enigmail + (Closes: #833184) + * [f34e41e] debian/rules: fix typo CXLAGS -> CFLAGS + + -- Christoph Goehre Fri, 12 Aug 2016 12:00:44 -0400 + +icedove (1:45.2.0-2) unstable; urgency=medium + + [ Christoph Goehre ] + * [8b4f306] rebuild patch queue from patch-queue branch + added patches: + - p-kfree-hurd/CrossProcessMutex.h-fix-build-on-kfreebsd-and-GNU-hur.patch + (Closes: #808183) + + [ Carsten Schoenert ] + * [08e20a0] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1277295-Remove-obsolete-reference-to-storage-service-.patch + (Closes: #827592) + - fixes/Bug-1245076-Don-t-include-mozalloc.h-from-the-cstdlib-wra.patch + (Closes: #831192) + * [1ea97f1] debian/icedove.js: disable Icedove startup check + (Closes: #817973) + * [83bdcdf] debian/rules: adding additional CFLAGS and CXXFLAGS + * [7dc0588] debian/control: addjust breaks for xul-ext-foxyproxy-standard + (Closes: #825749) + * [50a0f1e] autopkg: fixup small type within test call + + [ Ulrike Uhlig ] + * [b24bbaa] Add rebranded apparmor profile from upstream (Closes: #829731) + * [0a28f91] apparmor/usr.bin.icedove: refresh Icedove AppArmor profile + + [ Guido Günther ] + * [6fe4897] Fix apparmor profile installation + + -- Christoph Goehre Tue, 26 Jul 2016 13:25:21 -0400 + +icedove (1:45.2.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [f777843] Wrap and sort control information + via 'wrap-and-sort -ast' to simplify backporting (Closes: #825806) + * [457dffe] Register components with gbp + * [8e73822] Rediff patches + + [ Carsten Schoenert ] + * [789ed6f] Imported Upstream version 45.1.1 + * [8b8bd3c] Imported icedove-l10n Upstream version 45.1.1 + * [23b2984] Imported iceowl-l10n Upstream version 45.1.1 + * [411b27d] Imported Upstream version 45.2.0 + * [975287a] Imported icedove-l10n Upstream version 45.2.0 + * [09b6652] Imported iceowl-l10n Upstream version 45.2.0 + * [2b99997] icedove-l10n-all: change Section into metapackages. + As Jonas Smedegaard pointed out, the icedove-l10n-all package is a + metapackage and localization. + (Closes: #824785) + * [a7eec24] debian/README.source: info about import of multitarballs. + As the VCS is using git-buildpackage for package maintenace adding some + hints on how to handle the impoert of the used mutitarballs since + version 45.0. + * [73e8b1a] debian/control: adding Recommends to icedove-l10n-uk + (Closes: #825806) + * [f118470] debian/control: Icedove, adding dependency on libatk-adaptor. + After the adding of some first small autopkg test it turns out that we + miss a dependency on libatk-adaptor. + * [e6e95c9] debian/control: rework Recommends for icedove-l10n-* + As addition to 711468b933f280fe9d6ed78bb1d7d763dede9ea7 also rework the + various Recommends for the icedove-l10n packages. + * [1275b3d] debian/control: small fixup Recommends on iceowl-l10n-* + Fix small typos for iceowl-l10n-{pt-pt,sl} + * [c4c9a02] debian/control: sort iceowl-l10n-* alphabetical + + -- Guido Günther Fri, 08 Jul 2016 15:55:46 +0200 + +icedove (1:45.2~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [68883af] rebuild patch queue from patch-queue branch + added patches: + - porting-kfreebsd-hurd/adding-missed-HURD-adoptions.patch + * [ee509d2] debian/mozconfig.default: switching back to gtk2 as default + (Closes: #821744) + * [f72fe06] adding helper script create-iceowl-l10n-tarball.sh + * [28fba93] debian/README.source: adding additional info for iceowl-l10n + * [826af5b] adding iceowl-l10n related patches to the patch queue + * [1aa6f37] debian/iceowl-*.in: adding needed base files + * [a5946b4] debian/rules: adding iceowl-l10n related rules + * [b1da616] debian/control: adding the current iceowl-l10n-* packages + * [b359c95] debian/source.filter: some adjustments to the filter + * [e45ab44] debian/README.source: use recent version and reformating + * [50b3830] debian/control: increase Standards-Version to 3.9.8 + * [3a767b8] debian/rules: remove no longer needed LDFLAGS + * [29a7739] Imported Upstream version 45.2~b1 + * [15b7797] iceowl-l10n-*: rearrange Recommends field for various packages + (Closes: #824727, #824750, #824763, #824764, #824768, #824780) + * [3f75b56] debian/vendor.js: adjust to new version related wiki site + * [6bd7f89] d/c-id-l10n: adjusting download URL for stable versions + * [f15d1a2] icedove-l10n-all: change Section into metapackages + (Closes: #824785) + * [25c3ba1] debian/README.source: info about import of multitarballs + * [3ebcf59] debian/control: adding Recommends to icedove-l10n-uk + (Closes: #825806) + * [3e57d5e] debian/control: Icedove, adding dependency on libatk-adaptor + * [e19c59d] debian/control: rework Recommends for icedove-l10n-* + * [4741d80] debian/control: small fixup Recommends on iceowl-l10n-* + * [f9f5193] debian/control: sort iceowl-l10n-* alphabetical + + [ Christoph Goehre ] + * [ce58560] debian/rules: add option to dh_auto_clean + * [8cfbeca] debian/rules: export necessary DEB_ vars into environment + (Closes: #819020) + * [7512da8] debian/rules: ignore build folder and run 'build' target instead + (Closes: #819020) + * [354f836] turn the reduce of memory usage of the linker on again + * [5e48e17] don't build dbgsym packages on unreleased builds + * [09679eb] rebuild patch queue from patch-queue branch + added patches: + - p-kfree-hurd/CrossProcessMutex.h-fix-build-on-kfreebsd-and-GNU-hu.patch + (Closes: #808183) + + [ Guido Günther ] + * [24bbee9] Wrap and sort control information (Closes: #825806) + * [fcfe4ac] Add minimalistic autopkgtest + * [f7a32e8] Add autopkgtest to test header and typelib generation + * [189d835] Add autopkgtest to smoke test xpcshell + + -- Christoph Goehre Wed, 01 Jun 2016 17:56:29 -0400 + +icedove (1:45.0~b4-2) experimental; urgency=medium + + * [fa7bc47] debian/control: fix FTBFS by moving Build-Depends-Indep to + Build-Depends + + -- Christoph Goehre Sun, 10 Apr 2016 15:24:39 -0400 + +icedove (1:45.0~b4-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [3bf50c7] Imported Upstream version 45.0~b4 + * [11744a7] debian/source.filter: fixup for previous change + * [0bd3753] debian/gbp.conf: adding default filter out pattern + * [a9f6cfa] rebuild patch queue from patch-queue branch + removed patches (fixed upstream): + - fixes/Bug-1178266-Link-against-libatomic-when-necessary.patch + - p-arm64/FTBFS-arm64-Adding-configure-option-for-aarch64-platform.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-1-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-2-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-3-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-4-4.patch + modified patches: + - p-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + * [9dcb46e] debian/control: increase B-D on libnspr-dev + * [b31fba5] debian/control: increase Standards-Version to 3.9.7 + * [623250d] Icedove Branding: adopt usptream changes to branding + * [2fa9b24] debian/copyright: update copyright information + * [c5dd11d] debian/copyright: include the license text for MPL-1.0 + * [3a90ecd] debian/copyright: include the license text for MPL-1.1 + * [7291650] debian/copyright: include the license text for MPL-2.0 + * [0ebdd3f] debian/copyright: include the license text for libpng + * [9ee79fa] d/icedove.install: remove no longer existing parts + * [880c9e9] debian/rules: remove obsolet dpkg-shlibdeps call + * [e4fb8a2] adding helper script create-icedove-l10n-tarball.sh + * [8826951] debian/README.source: adding hint for creating l10n tarball + * [08f9071] debian/control: adding the current icedove-l10n-* packages + (Closes: #680488) + * [d839f37] debian/rules: adding icedove.l10n install to targets + * [5b0df21] debian/gbp.conf: use a Tuple for selecting multiple files + * [e32519f] debian/control: increase B-D on libnss-dev + * [2200691] debian/control: increase B-D on libnspr4-dev + * [0f5660e] debian/control: increase increase B-D on libnss3-dev + * [5fd8af8] mozconfig.default: adding new configure option + * [e288c6e] debian/control: adding a B-D on libpng-dev + + [ Christoph Goehre ] + * [f8c7ca5] debian/control: make depends between icedove-l10n and icedove + dynamic + * [ac760d7] debian/control: add section localization to all l10n packages + * [72ef6c7] debian/NEWS: rename to icedove.NEWS to ship only in icedove core + package + * add epoch in version number to update l10n packages smoothly + + -- Christoph Goehre Sat, 09 Apr 2016 18:56:59 -0400 + +icedove (44.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [a24f78b] Imported Upstream version 44.0~b1 + * [7f52453] rebuild patch queue from patch-queue branch + removed patches: + - d-hacks/Add-unminified-jquery-and-jquery-ui-files.patch + - d-hacks/Allow-unsigned-addons-in-usr-lib-share-mozilla-extensions.patch + - d-hacks/creating-a-dummy-.deps-directory-to-get-make-happy.patch + added patches: + - p-arm64/FTBFS-arm64-Adding-configure-option-for-aarch64-platform.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-1-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-2-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-3-4.patch + - p-mips/FTBFS-mips-adoptions-to-get-build-on-mips-el-working-4-4.patch + modified patches: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + * [ecf1110] debian/watch: adjust to new CDN structure + * [dd5efe8] debian/control: increase Build-Depends on libsqlite3-dev + * [57165b5] debian/control: switch URI for the Vcs fields to https + * [c9ded96] debian/source.filter: adding more filters on testings js files + * [31ce42f] debian/copyright: update due upstream/import changes + + -- Christoph Goehre Sat, 13 Feb 2016 19:08:55 -0500 + +icedove (43.0~b1-1) experimental; urgency=medium + + [ Christoph Goehre ] + * [ef5b1ef] debian/rules: split override_dh_install into arch and indep + section (Closes: #806047) + * [02d5d7c] debian/source.filter: remove filter for searchplugins + + [ Guido Günther ] + * [2008a71] Clarify relation between icedove and the calendar extensions + (Closes: #809017) + + [ Carsten Schoenert ] + * [11ffac0] debian/source.filter: modifying file list to ignore + * [926912b] Imported Upstream version 43.0~b1 + * [32cd8c0] rebuild patch queue from patch-queue branch + added patches: + - d-hacks/Allow-unsigned-addons-in-usr-lib-share-mozilla-extensions.patch + removed patches (fixed upstream): + - reproducible/Generate-sorted-libical-header-list.patch + * [a1637e4] debian/control: increase B-D on libnspr-dev and libnss3-dev + * [f9937c1] debian/source.filter: sort entries alphabetical + * [326f74d] debian/source.filter: adding new files to filter out + * [9b9d9b9] debian/copyright: update due upstream changes + * [69664c7] d/icedove.install: searchplugins isn't alive anymore + + -- Christoph Goehre Tue, 19 Jan 2016 11:41:50 -0500 + +icedove (42.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [8842d85] Imported Upstream version 42.0~b2 + * [6d14aca] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1178266-Link-against-libatomic-when-necessary.patch + * [320c43d] add myself to the uploaders + * [797a290] lintian: remove icedove.menu file due CTTE#741573 + + [ Guido Günther ] + * [caca7c2] Add unminified jquery and jquery-ui files (Closes: #802281) + + -- Christoph Goehre Sun, 08 Nov 2015 15:30:56 -0500 + +icedove (42.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [c599b6b] Imported Upstream version 42.0~b1 + * [41285cb] debian/copyright: fixup's and update + * [6b270be] debian/control: increase various build depends + * [be75969] adopting needed changes for GTK3 into the Debian branding + * [245161e] fixup branding about.png file + + -- Christoph Goehre Sat, 10 Oct 2015 21:26:24 -0400 + +icedove (41.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [b1d982c] Imported Upstream version 41.0~b2 + * [8389b9b] rebuild patch queue from patch-queue branch + added patches: + - porting-mips/Fix-build-error-in-MIPS-SIMD-when-compiling-with-mfp.patch + modified patches: + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + dropped patches (fixed upstream): + - fixes/Bug-1168231-Fixup-to-keep-file-type.patch + - fixes/Bug-1168231-Normalize-file-mode-in-jars.patch + - reproducible/Bug-1166243-Remove-build-function-from-js-and-xpc-sh.patch + - reproducible/Bug-1168316-Remove-build-machine-name-from-about-bui.patch + * [9ebf7b9] debian/source.filter: modifying file list to ignore + * [b25d990] debian/copyright: fixup's and update + + [ Christoph Goehre ] + * [8ebffb0] relax optimize to -O1 on s390x (Closes: #797551) + * [dea1627] debian/rules: Disable jit on mips (Closes: #797548) + + -- Christoph Goehre Fri, 25 Sep 2015 18:43:44 -0400 + +icedove (40.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [9d358dc] debian/source.filter: adjust new files + * [328cdc7] Imported Upstream version 40.0~b1 + * [8813d89] debian/rules: setting MOZ_BUILD_DATE explicitly. + This patch is based on work from Mike Hommey within the Iceweasel + package to enable reproducible builds. It defines the MOZ_BUILD_DATE + with a pre defined timezone. + * [8dd5b9f] debian/rules: add switch to skip icedove-dbg build to + speed up the build. + * [a6beec7] debian/control: Let icedove recommendiceowl-extension + * [691dfe9] add release related information + * [bdfdfd8] debian/vendor.js: adjusting WhatNew link to more dedicated URL + * [5ba6ec7] rebuild patch queue from patch-queue branch + added patches: + debian-hacks/changing-the-default-search-engine.patch + fixes/Bug-1168231-Fixup-to-keep-file-type.patch + fixes/Bug-1168231-Normalize-file-mode-in-jars.patch + reproducible/Bug-1166243-Remove-build-function-from-js-and-xpc-sh.patch + reproducible/Bug-1168316-Remove-build-machine-name-from-about-bui.patc + reproducible/Generate-sorted-libical-header-list + modified patches: + fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch + porting-kfreebsd-hurd/FTBFS-hurd-adding-the-HURD-platform-to-the-configure.patch + porting-kfreebsd-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + porting/Disable-optimization-on-alpha-for-the-url-classifier.patch + deleted patches: + debian-hacks/pass-OS_LDFLAGS-to-all-ldap-libraries.patch + debian-hacks/remove-timestamps-from-c_cpp-macros-for-reproducibil.patch + debian/patches/fixes/Link-libldap-against-libpthread.patch + debian/patches/icedove/no-dynamic-nss-softokn.patch + debian/patches/porting/Remove-duplicate-SkDiscardableMemory_none.cpp-from-g.patch + * [59046ae,12d4f4b] debian/copyright: update due upstream changes + * [7c1f002] debian/iceowl-extension.lintian-overrides: remove file, no longer needed + * [23eed8c] debian/source.lintian-overrides: adding new entries. + Lintian is detecting the braces within the folder names incorrectly as + brace expansion. + * [2f95cd3] add changes due ldap restructure. + + [ Christoph Goehre ] + * [ff66528] lintian: fix spelling error in debian/README.Debian + + -- Guido Guenther Wed, 19 Aug 2015 09:39:23 +0200 + +icedove (38.7.2-1) unstable; urgency=medium + + * [397cd7a] Imported Upstream version 38.7.2 + + -- Christoph Goehre Wed, 13 Apr 2016 12:05:05 -0400 + +icedove (38.7.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [cb9c003] Imported Upstream version 38.7.0 + * [7273cb9] bump up standards version to 3.9.7 (no changes needed) + + [ Carsten Schoenert ] + * [0341a8c] debian/control: switch URI for the Vcs fields to https + + -- Christoph Goehre Wed, 16 Mar 2016 13:22:57 +0100 + +icedove (38.6.0-1) unstable; urgency=medium + + [ Guido Günther ] + * [195730d] Clarify relation between icedove and the calendar extensions + (Closes: #809017) + + [ Christoph Goehre ] + * [988ce5b] Imported Upstream version 38.6.0 + * [6763f6f] debian/source.filter: remove evil-licensed jshint.js + (Closes: #813053) + + -- Christoph Goehre Sun, 14 Feb 2016 16:08:13 -0500 + +icedove (38.5.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [6d45b0b] Imported Upstream version 38.5.0 + * [316798f] debian/rules: split override_dh_install into arch and indep + section (Closes: #806047) + + [ Carsten Schoenert ] + * [5b3cb7a] add myself to the uploaders + + -- Christoph Goehre Thu, 24 Dec 2015 22:36:37 -0500 + +icedove (38.4.0-1) unstable; urgency=medium + + [ Christoph Goehre ] + * [754392e] Imported Upstream version 38.4.0 + * [ef4b733] debian/watch: adjust download url + + [ Carsten Schoenert ] + * [f3f5455] lintian: remove icedove.menu file due CTTE#741573 + + -- Christoph Goehre Fri, 27 Nov 2015 12:54:27 -0500 + +icedove (38.3.0-2) unstable; urgency=medium + + * [c988747] Add unminified jquery and jquery-ui files with the exact + version as used by upstream thunderbird. + We don't want to use the minified versions mozilla ships and can't use + what is currently packaged in Jessie or Stretch since these are too + recent. + (Closes: #802281) + + -- Guido Günther Sun, 01 Nov 2015 18:06:33 +0100 + +icedove (38.3.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [0f8b6a4] Imported Upstream version 38.3.0 + * [566273a] debian/copyright: fixup's and update + + -- Christoph Goehre Sat, 10 Oct 2015 13:21:05 -0400 + +icedove (38.2.0-2) unstable; urgency=medium + + * [8bcb08b] relax optimize to -O1 on s390x (Closes: #797551) + * [6aa0915] debian/rules: Disable jit on mips (Closes: #797548) + + -- Christoph Goehre Thu, 24 Sep 2015 19:09:54 -0400 + +icedove (38.2.0-1) unstable; urgency=medium + + * [d46d5f6] rebuild patch queue from patch-queue branch + added patches: + - porting-mips/Fix-build-error-in-MIPS-SIMD-when-compiling-with-mfp.patch + + -- Christoph Goehre Mon, 21 Sep 2015 19:42:03 -0400 + +icedove (38.2.0-1~stretch) stretch; urgency=medium + + [ Carsten Schoenert ] + * [05b245f] Imported Upstream version 38.2.0 (Closes: #796323) + - MFSA 2015-59 aka CVE-2015-2724, CVE-2015-2725, CVE-2015-2726 + - MFSA 2015-63 aka CVE-2015-2731 + - MFSA 2015-66 aka CVE-2015-2734, CVE-2015-2735, CVE-2015-2736, + CVE-2015-2737, CVE-2015-2738, CVE-2015-2739, CVE-2015-2740 + - MFSA 2015-70 aka CVE-2015-4000 + - MFSA 2015-71 aka CVE-2015-2721 + - MFSA 2015-65 aka CVE-2015-2741 + - MFSA 2015-79 aka CVE-2015-4474 + * [43c8195] rebuild patch queue from patch-queue branch + * [c75bdad] debian/control: increase B-D on libnss3-dev + * [942bcbe] debian/iceowl-extension.lintian-overrides: remove file + * [7131e4d] debian/source.lintian-overrides: adding new entries + * [8882360] mozconfig.default: don't use icu from system + + -- Carsten Schoenert Fri, 21 Aug 2015 12:29:42 +0200 + +icedove (38.1.0-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [3d27760] Imported Upstream version 38.1.0 (Closes: #790651) + * [2cb6cd7] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-1165654-Cleanup-how-libjpeg-turbo-assembly-build.patch + - reproducible/Generate-sorted-libical-header-list (Closes: #794456) + + -- Christoph Goehre Tue, 04 Aug 2015 20:20:53 -0400 + +icedove (38.0.1-1) unstable; urgency=medium + + [ Carsten Schoenert ] + * [5acef6a] debian/gbp.conf: adopt new upstream branch + * [6f88792] Imported Upstream version 38.0.1 (Closes: #358680, #472601, + #634316, #691176, #751786, #777908) + * [18bba9d] debian/gbp.conf: respect new git-buildpackage behaviour + * [26bbdac] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/changing-the-default-search-engine.patch (Closes: #780595) + - fixes/Bug-1168231-Fixup-to-keep-file-type.patch + - fixes/Bug-1168231-Normalize-file-mode-in-jars.patch + - reproducible/Bug-1166243-Remove-build-function-from-js-and-xpc-sh.patch + - reproducible/Bug-1168316-Remove-build-machine-name-from-about-bui.patc + deleted patches: + - debian-hacks/remove-timestamps-from-c_cpp-macros-for-reproducibil.patch + * [71938b9] debian/rules: setting MOZ_BUILD_DATE explicitly + * [e50d708] debian/copyright: more minor updates to the copyright file + * [b232895] debian/rules: adding switch for no icedove-dbg build + * [bcc15aa] debian/control: icedove is now recommending iceowl-extension + * [564a19e] adding release related information + * [2ec0053] debian/vendor.js: adjusting WhatNew link to more dedicated URL + + [ Christoph Goehre ] + * [a9c25b6] lintian: fix spelling error in debian/README.Debian + * [2cc2c07] debian/rules: fix icedove-dbg build switch + + -- Christoph Goehre Mon, 27 Jul 2015 17:46:40 -0400 + +icedove (38.0~b5-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [7e3cab4] Imported Upstream version 38.0~b5 + * [3edbafc] Revert "debian/control: remove build-dep on libnotify-dev" + * [5e69bab] debian/control: increase b-d versions + * [6e6ae36] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/remove-timestamps-from-c_cpp-macros-for-reproducibil.patch + obsolete patches (fixed in Debian): + - adopting-SQLITE3-version.patch + * [ac7b760] mozconfig.default: adding some explicit configure options + * [81fd6e6] complete rewrite of copyright information + * [327dd45] switching to libgstreamer1.0* + + [ Christoph Goehre ] + * [9877ea3] lintian: add override for libpng + + -- Christoph Goehre Fri, 22 May 2015 20:42:19 -0400 + +icedove (38.0~b2-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [b08d966] debian/source.filter: modifying file list to ignore + * [88fd018] Imported Upstream version 38.0~b2 + * [e9da8f8] icedove branding: adopt upstream changes + * [3610daa] debian/control: increase b-d versions + * [950fae7] rebuild patch queue from patch-queue branch + modified patches: + - system-libs/Allow-to-build-against-system-libffi.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + obsolete patches (fixed upstream): + - porting/Reintroduce-pixman-code-path-removed-in-bug-1097776-.patch + * [1820d7c] debian/control: adding xul-ext-compactheader to Breaks field + + [ Dominik George ] + * [4181126] debian/control: Upgrade Breaks relation to enigmail + (Closes: #782686) + + -- Christoph Goehre Tue, 28 Apr 2015 18:19:00 -0400 + +icedove (36.0~b1-2) experimental; urgency=medium + + * [26c0027] rebuild patch queue from patch-queue branch + added patches: + - porting/Reintroduce-pixman-code-path-removed-in-bug-1097776-.patch + - porting/Remove-duplicate-SkDiscardableMemory_none.cpp-from-g.patch + - porting/ppc-fix-divide-page-size-in-jemalloc.patch (Closes: #780404) + + -- Christoph Goehre Sat, 28 Mar 2015 15:35:58 -0400 + +icedove (36.0~b1-1) experimental; urgency=medium + + [ Carsten Schoenert ] + * [68112a3] Imported Upstream version 36.0~b1 + * [3120361] rebuild patch queue from patch-queue branch + obsolete patches (fixed upstream): + - debian-hacks/fixing-various-FTBFS-due-different-datatype-char-beh.patch + - porting-arm/FTBFS-armhf-fixing-ARM-CPU-detection.patch + modified patches: + - debian-hacks/Strip-version-number.patch + - p-kfree-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - p-kfree-hurd/correcting-file-inclusion-for-kfreebsd.patch + - p-kfree-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + * [ee185a2] d/icedove.install: mozilla-xremote-client was removed + * [64adc44] debian/source.filter: modifying file list to ignore + * [dbdd152] debian/control: increase package versions + * [fb3307c] lintian: adding one more source override + * [2a07495] lintian: adding new override for the icedove package + * [38c21ad] debian/README.Debian: adding note around HTTPS Everythere + (Closes: #774790) + + [ Christoph Goehre ] + * [3dce89c] debian/icedove.desktop: correct StartupWMClass to 'Icedove' + (Closes: #773876) + * [deb3f58] debian/icedove.desktop: add MimeType text/calendar + (Closes: #762190) + * [4dd96fe] rebuild patch queue from patch-queue branch + added patches: + - p-kfree-hurd/FTBFS-hurd-adding-the-HURD-platform-to-the-configure.patch + - p-powerpcspe/FTBFS-powerpcspe-disable-AltiVec-instructions.patch + (Closes: #772933) + modified patches: + - p-kfree-hurd/FTBFS-hurd-adding-GNU-Hurd-to-the-list-of-OS-systems.patch + - p-kfree-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - p-kfree-hurd/LDAP-support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - p-kfree-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-Hurd.patch + * [373ed05] add missing epoch in libnss3-dev build depends + + -- Christoph Goehre Wed, 11 Mar 2015 19:19:28 -0400 + +icedove (34.0~b1-2) experimental; urgency=low + + [ Carsten Schoenert ] + * [7a4edc4] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/fixing-various-FTBFS-due-different-datatype-char-beh.patch + - porting-arm/FTBFS-armhf-fixing-ARM-CPU-detection.patch + + -- Christoph Goehre Mon, 24 Nov 2014 18:56:21 -0500 + +icedove (34.0~b1-1) experimental; urgency=low + + [ Carsten Schoenert ] + * [1be8ab1] debian/source.filter: more files to ignore + * [66e6488] debian/README.source: adjust description for beta versions + * [e63d375] Imported Upstream version 34.0~b1 (Closes: #770180) + * [1cb54d2] rebuild patch queue from patch-queue branch + obsolete patches (fixed upstream): + - porting-armel/disable-some-libopus-feature-for-ARCH-ARMv6.patch + * [ad29bb1] debian/rules: be more flexible on *.xpi files + * [b055e78] debian/NEWS: fixing default SSL/TLS behavior description + * [d64a847] debian/NEWS: adding notes around new security changes + + -- Christoph Goehre Wed, 19 Nov 2014 19:15:46 -0500 + +icedove (33.0~b1-1) experimental; urgency=low + + [ Carsten Schoenert ] + * [5029c8b] debian/source.filter: more files to ignore + * [d4b03d9] README.source: let's use xz while creating the orig.tar.xz + * [ebd442f] debian/gbp.conf: some instructions for git-dch + * [cc594ea] Imported Upstream version 33.0~b1 + * [23b57cf] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/fix-identification-of-ObjdirMismatchException.patch + - debian-hacks/pass-OS_LDFLAGS-to-all-ldap-libraries.patch + modified patches: + - debian-hacks/Strip-version-number.patch + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - obsolete patches (fixed upstream): + - fixes/Include-cstdlib-in-gfx-angle-src-compiler-Types.h-fo.patch + - porting-alpha/fix-FTBFS-on-alpha.patch + * [a5a2a1b] adding additional config options for hppa and ppc64 + Both platforms failing on running xpcshell. + + [ Christoph Goehre ] + * [5a0ba43] linitan: bump up standards version to 3.9.6 + * [aaca6a7] debian/NEWS: adding note around increased default TLS version 1.2 + (Closes: #761245) + + -- Christoph Goehre Sat, 25 Oct 2014 12:47:37 -0400 + +icedove (32.0~b1-1) experimental; urgency=low + + [ Christoph Goehre ] + * [65ad797] icedove.postinst: remove obsolete symlink handling + + [ Carsten Schoenert ] + * [baef95a] debian/gbp.conf: adopting experimental branch + * [8384eee] Imported Upstream version 32.0~b1 + * [75145f3] rebuild patch queue from patch-queue branch + modified patches: + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - debian-hacks/remove-non-free-W3C-icon-valid.png.patch + obsolete patches (fixed upstream): + - porting-armel/fix-skia-for-ARMv4.patch + + [ Christoph Goehre ] + * [51c3cee] cleanup branding patch + + -- Christoph Goehre Thu, 28 Aug 2014 15:52:51 -0700 + +icedove (31.0-2) unstable; urgency=low + + [ Carsten Schoenert ] + * [d2bc0ef] armel: correcting #if statement for skia fix + * [959b801] adding GNU/Hurd to gyp.mozbuild + * [215bc7d] kfreebsd*: adding CrossProcessMutex_posix.cpp to list + * [892c39c] d/icedove.links: remove unneeded link to /u/s/i/e + (Closes: #638489) + * [928158c] debian/source.filter: more files to ignore + * [b81c238] fixing lintian warning 'unused-override' + * [7bc2568] fixing lintian warning 'jar-not-in-usr-share' + * [cd0d289] fixing lintian warning 'image-file-in-usr-lib' + * [045a960] fixing lintian error 'source-is-missing' + * [1fe016a] correcting FTBFS patch for alpha + + [ Christoph Goehre ] + * [c827d81] iceowl-extension: replace skin and icon dir with symlink + + -- Christoph Goehre Sat, 23 Aug 2014 18:42:23 -0700 + +icedove (31.0-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [b7cdeb4] Imported Upstream version 31.0 (Closes: #756769) + * [1f2ff0b] debian/rules: fixing file permissions in iceowl-extension + * [c8d2036] adding fix for skia on armel + * [77093e2] fixing FTBFS on armel (Closes: #754633) + * [a458959] debian/control: increase b-d on libsqlite-dev + * [a98ebca] fix runtime error on alpha while jemalloc run + * [6f6b576] disable optimization on alpha while linking + + -- Christoph Goehre Mon, 04 Aug 2014 10:23:09 -0400 + +icedove (31.0~b2-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [76059a9] debian/source.filter: more files to ignore + * [5067b0e] Imported Upstream version 31.0~b2 (Closes: #754464) + * [e31ac79] debian/control: remove build-dep on libnotify-dev + * [35324a5] debian/control: increase build-depends on libnss3-dev to 3.16.2~ + + -- Christoph Goehre Fri, 18 Jul 2014 21:47:06 +0200 + +icedove (31.0~b1-2) unstable; urgency=low + + * [7ba4d01] lintian: add override for embedded srtp library + + -- Christoph Goehre Sun, 22 Jun 2014 18:18:04 -0400 + +icedove (31.0~b1-1) unstable; urgency=low + + * [02dc94c] remove example file, which cause git-archive to change the + source tree + * [ba233b1] Imported Upstream version 31.0~b1 + * [4c2380f] rebuild patch queue from patch-queue branch + modified patches: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-.patch + obsolete patches (fixed upstream): + - fixes/unbreak-with-system-pixman-in-mailnews.patch + - porting-hppa/FTBFS-hppa-correcting-code-inside-JS_STACK_GROWTH_DI.patch + + -- Christoph Goehre Sun, 22 Jun 2014 11:50:07 -0400 + +icedove (30.0~b1-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [b3eadf1] debian/source.filter: more files to ignore + * [fb71012] debian/control: bumping build-depends for debhelper + * [dc4ad0c] debian/control: add libpulse-dev build dependency + * [b8d3ee7] debian/control: bumping some version of build dependencies + * [3443df9] debian/icedove-dev.install: adopt upstream changes + * [d0f9d0e] icedove.lintian-overrides: adding libtheora + * [982c8a6] debian/rules: adding removing for temporary files + + [ Christoph Goehre ] + * [f6292d5] Imported Upstream version 30.0~b1 (Closes: #743421) + * [dacd658] rebuild patch queue from patch-queue branch + modified patches: + - porting-hppa/FTBFS-hppa-correcting-code-inside-JS_STACK_GROWTH_DI.patch + - porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-hurd.patch + - porting-kfreebsd-hurd/Allow-ipc-code-to-build-on-GNU-kfreebsd.patch + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + - porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and-.patch + - prefs/Set-javascript.options.showInConsole.patch + - debian-hacks/Icedove-branding.patch + - fixes/unbreak-with-system-pixman-in-mailnews.patch + obsolete patches (fixed upstream): + - debian-hacks/Do-build-time-detection-of-2-bytes-wchar_t-and-char1.patch + - debian-hacks/Fix-build-failure-for-header.py-and-typelib.py.patch + - fixes/Make-system-cairo-work-again.patch + - porting-powerpcspe/FTBFS-Altivec-is-not-available-on-powerpcspe.patch + * [df93d26] branding: add jar.mn to moz.build + * [648853d] only copy debian/mozconfig.default into mozilla subdir + * [4f9dc9e] MOZ_OBJDIR need a absolute path, $(pwd) didn't work + * [33794c3] icedove.pc: remove non-existent library mozjs (Closes: #748746) + * [dcbce5c] iceowl-extension: use breaks instead of conflicts against + calendar-timezones (Closes: #747532) + * [545415a] add breaks to enigmail (<< 2:1.6-4~deb7u1) which won't work with + us (Closes: #747546) + + -- Christoph Goehre Fri, 30 May 2014 12:11:53 -0400 + +icedove (24.5.0-2) unstable; urgency=low + + * [e4a43ed] debian/rules: remove duplicate LDFLAGS += -Wl,--stats + * [f9dba4b] debian/rules: export all compiler flags into build environment + * [8dc0712] debian/rules: run autoconf for all configue files + * [95d4b48] debian/rules: export MOZCONFIG onces + * [577bd03] debian/rules: update config.sub and config.guess before autoconf + run + * [7f958c7] parse DEB_BUILD_OPTIONS for how many parallel buildjobs to start + (Closes: #746984) + * [0f8b062] debian/rules: export MOZILLA_OFFICIAL + * [1c3d277] run configure with --build and --host + * [f190e19] don't build a shared js library (Closes: #724688, #729073, + #745593) + + -- Christoph Goehre Thu, 08 May 2014 20:07:06 -0400 + +icedove (24.5.0-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [7c13dbf] calender-timezones: remove no longer needed helper files + * [2d4328c] debian/control: sort various fields alphabetically + * [436c212] debian/control: remove build-depens on cdbs + * [dae8b3e] icedove branding: adopt current Makefile.in style to upstream + * [045be10] debian/rules: switch to debhelper + * [b852c8c] debian/mozconfig*: adding mozconfig files + * [7bac68c] debian/icedove.configopts: Remove no longer needed file + * [6c597b9] Switch the old thunderbird*.in files to icedove.* + * [9781e61] debian/icedove.links: adding /u/b/i link + * [f325194] debian/icedove.dirs: add helper file for needed directories + * [fe0376a] debian/icedove.install: sort entrys alphabetical + * [0111ccc] debian/icedove.js: fix small typo and reformat + * [a7e5b05] debian/rules: add override for dh_fixperms + * [8e44df2] debian/rules: add override for dh_install + * [24fa03a] debian/rules: add override for dh_shlibdeps + * [2f22ed0] debian/rules: add override for dh_strip + * [259a6f4] debian/control: remove ${shlibs:Depends} from c-g-p depends + * [cdc9272] debian/rules: add additional LDFLAGS + * [9d620d5] debian/rules: correct Icedove version inside icedove.pc during + install + + [ Christoph Goehre ] + * [460818b] Imported Upstream version 24.5.0 + * [4c65ecc] rebuild patch queue from patch-queue branch + added patches: + - porting-kfreebsd-hurd/FTBFS-hurd-fixing-unsupported-platform-Hurd.patch + obsolete patches: + - porting-kfreebsd-hurd/Another-fix-to-build-ipc-code-on-GNU-hurd-an.patch + + -- Christoph Goehre Tue, 29 Apr 2014 17:56:40 -0400 + +icedove (24.4.0-1) unstable; urgency=low + + * [a2b13c0] Imported Upstream version 24.4.0 + * [fd90463] rebuild patch queue from patch-queue branch + added patches: + - porting-hppa/FTBFS-hppa-correcting-code-inside-JS_STACK_GROWTH_DI.patch + (Closes: #741245) + + -- Christoph Goehre Sat, 22 Mar 2014 11:10:18 -0400 + +icedove (24.3.0-2) unstable; urgency=low + + [ Christoph Goehre ] + * [122ffe9] remove ldif60 from pkgconfig file (Closes: #732652) + * [b64ccac] rebuild patch queue from patch-queue branch + added patches: + - porting-powerpcspe/FTBFS-Altivec-is-not-available-on-powerpcspe.patch + (Closes: #734859) + + [ Carsten Schoenert ] + * [aa4f5b1] thunderbird.install.in: shipping all files in /u/l/i/components + (Closes: #737811) + * [3bf4738] debian/rules: fix *.js file-permissions for iceowl-extension + * [50ab7a5] debian/rules: remove -Wl,--as-needed linker option + (Closes: #732652, #730450, #724688) + + -- Christoph Goehre Sun, 09 Mar 2014 15:33:05 -0400 + +icedove (24.3.0-1) unstable; urgency=low + + * [a656560] lintian: remove non-free w3c valid.png icon (Closes: #735119) + * [f4e6c08] lintian: remove prebuild javascript objects from upstream + tarball (Closes: #735234) + * [adf9c96] Imported Upstream version 24.3.0 + * [8419e65] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/remove-non-free-W3C-icon-valid.png.patch + - debian-hacks/use-system-jquery-jquery-ui.patch + * [948af3e] a newer icedove will break iceowl-extension (Closes: #732742) + + -- Christoph Goehre Mon, 10 Feb 2014 19:44:36 -0500 + +icedove (24.2.0-1) unstable; urgency=low + + [ Christoph Goehre ] + * [963a61e] Imported Upstream version 24.2.0 + * [852abe3] rebuild patch queue from patch-queue branch + obsolete patches (fixed upstream): + - fixes/Wrap-non-prefixed-freetype-headers-from-newer-freety.patch + - porting/Don-t-hardcode-page-size-on-ia64-sparc-or-mipsel.patch + (Closes: #734074) + * [a9d6680] lintian: remove prebuild-binaries from upstream tarball + * [fc25943] linitan: remove prebuilt-windows-binary from upstream tarball + * [faa24eb] lintian: fix comma separated files copyright + * [835790d] lintian: declare public-domain license at the beginning + + [ Carsten Schoenert ] + * [c583a2f] debian/copyright: fix indentation for 'public domain' license + * [78ddee2] linitan: bump up standards version to 3.9.5 + + -- Christoph Goehre Sat, 11 Jan 2014 20:17:24 -0500 + +icedove (24.1.1-1) experimental; urgency=low + + [ Carsten Schoenert ] + * [e8cbac4] debian/copyright: correcting wrong comma usage. + * [d24a6be] debian/copyright: adjusting copyright infos + * [51a32a1] debian/copyright: correcting various lintian warning. + * [50874e0] debian/control: expanding icedove-dev dependency on python + * [2996a33] debian/control: adding a more specific description for + iceowl-extension and google-cal-prov. + * [85b4400] debian/control: adjust proper version dependencies. + (Closes: #729712) + * [4d6b204] debian/control: adding metadata for mozilla-devscripts. + (Closes: #562984) + + [ Christoph Goehre ] + * [aa7782b] Imported Upstream version 24.1.1 (Closes: #720931, #723630) + * [e4ca9cd] rebuild patch queue from patch-queue branch + added patches: + - fixes/Wrap-non-prefixed-freetype-headers-from-newer-freety.patch + - porting-kfreebsd-hurd/ipc-chromium-fix-if-define-for-kFreeBSD-and.patch + * [849988b] make python scripts in /usr/lib/icedove-devel/sdk/bin executable + * [9890b1c] ship python config scripts to make building of extensions easier + (Closes: #729431) + * [8b08106] remove libxpcom.so from pkgconfig file (Closes: #729168) + * [4759bde] add libldif60 to pkgconfig file + * [db575b4] lintian: remove unsafe symlink from upstream tarball + + -- Christoph Goehre Sun, 08 Dec 2013 10:08:19 -0500 + +icedove (24.0-1) experimental; urgency=low + + [ Guido Günther ] + * [6f9d98e] New upstream version 24.0 + * [ef58a98] Refresh patches + * [435516d] Switch to xz compressed upstream tarball + * [f529a99] repack.py: port to python3 + * [50423d9] repack.py: allow to specify compression + + [ Christoph Goehre ] + * [b45b2b9] remove superfluous gstreamer build depends + * [96ac1d0] Reduce memory usage of the linker. Thanks to Mike Hommey + * [af55374] ia64 don't like LDFLAG --no-keep-memory + * [c3cb093] remove export-subst in mozilla/addon-sdk/source/.gitattributes. + + [ Carsten Schoenert ] + * [ac4caea] debian/copyright: correcting out-of-date-copyright-format-uri. + * [585bf84] debian/copyright: remove obsolete field 'Name:' + + -- Christoph Goehre Tue, 15 Oct 2013 18:51:16 -0400 + +icedove (24.0~b3-2) experimental; urgency=low + + * [47fe004] Add lintian override for our use of the embedded libjpeg + * [3c103e6] Make sure xpcshell is executable so dh_shlibdeps picks it up to + calculate lib dependencies + + -- Guido Günther Tue, 24 Sep 2013 20:03:33 +0200 + +icedove (24.0~b3-1) experimental; urgency=low + + [ Guido Günther ] + * Upload to experimental + * [eae533c] Adjust watch file once again + * [5280050] Invoke repack.py directly + * [0f4e8de] New upstream version 24.0~b3 + (Closes: #706859, #720931, #723630) + * [3b6374b] Don't use system jpeg + since it doesn't have the needed features + * [f6aeba2] Don't try to remove nonexistent libxpcom.so + + [ Carsten Schoenert ] + * [04844ae] icedove-branding: adopt new build schema to Debian branding + by using moz.build. + * [11c4677] icedove-branding: change the target directory for preview.png. + * [55f6762] debian/control: remove package calendar-timezones. + The calendar-timezones related files are now inside the lightning + package. + * [6f4948d] debian/rules: catch any gdata-provider*.xpi file. + The gdata-provider XPI file now has a version appended. + * [d5a63c9] debian/rules: catch any lightning*.xpi file. + The lightning XPI file now has a version appended. + * [e77e911] debian/thunderbird.install.in: + remove mozilla/components/binary.manifest since it no longer exists. + * [ef3f3b1] debian/control: Build-Depend on gstreamer an yasm now used by + icedove. + * [9f5fe3e] Drop patches fixed upstream. + Bug-720682-Don-t-crash-an-app-using-libxul-because-o.patch + Bug-723497-Saving-message-to-disk-fails-silently-fai.patch + Bug-746112-Don-t-decommit-if-page-size-is-too-large.patch + Bug-814693-Allow-webrtc-to-build-on-more-architectur.patch + Bug-840242-Use-the-runtime-page-size-to-control-aren.patch + virtualenv-changing-the-path-to-virtualenv.py.patch + * [4503610] Adjust to build system changes: + debian-hacks/Don-t-build-example-component.patch + * [290f1e0] Partially applied upstream: + Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + * [2eaf6ae] Rediff remaining patches + * [4217c0e] Create missing .deps dir. + Workaround to make build complete + * [f95db9c] Drop autoconf.mk mangling since it confuses the build system + + -- Guido Günther Thu, 19 Sep 2013 20:10:24 +0200 + +icedove (17.0.8-1) unstable; urgency=low + + [ Carsten Schoenert ] + * [af98dad] The vendorShortName is of course "Mozilla" and not "Icedove" The + packages in icedove-l10n already use the correct substition. + (Closes: #707207, #715326) + * [8ceae38] Sawfish: fix wrong size of resized window. + Backported from the TB20 release. + https://bugzilla.mozilla.org/show_bug.cgi?id=813997 (Closes: #715464) + * [b69cb68] Fix error while saving a message to disk or network. + If the user tries to save a message to disk or network share without + enough user rights to write the message Icedove fails silently. This + backport from TB 21 fixes this. + * [fd8f588] Desktop file: shorten the icon name to 'Icedove' (Closes: #507962) + * [24b1b45] fix JS compiler segfault errors for various platforms + (Closes: #708331) + + [ Christoph Goehre ] + * [01f6b7a] add README.Debian to describe upstream status of Thunderbird + (Closes: #710888) + * [7fa36d6] rebuild patch queue from patch-queue branch added patches: + - porting/Fix-ipc-chromium-on-kFreeBSD-and-Hurd.patch + + [ Guido Günther ] + * [455bfe7] New upstream version 17.0.8 + + -- Guido Günther Tue, 20 Aug 2013 16:12:17 +0200 + +icedove (17.0.7-1) unstable; urgency=low + + * [b8fd345] Imported Upstream version 17.0.7 + * [3133999] rebuild patch queue from patch-queue branch + modified patches: + - porting/Don-t-hardcode-page-size-on-ia64-sparc-or-mipsel.patch + * [3332f92] lintian: change url to version control system + * [534e2d1] linitan: bump up standards version to 3.9.4 + * [2b511d2] lintian: remove obsolete thunderbird dependency in + iceowl-extension + * [2081e7e] lintian: add Keywords to icedove desktop file + * [7f8333c] lintian: mask minus signs in manpage with a backslash + + -- Christoph Goehre Sun, 30 Jun 2013 18:46:16 -0400 + +icedove (17.0.5-2) unstable; urgency=low + + [ Guido Günther ] + * [4c7a88a] Install calendar-google-provider to /u/s/xul-ext + (Closes: #638480) + * [4c97096] Move calendar-timezones to /u/s/xul-ext (Closes: #638481) + * [e9d0085] Move arch indep parts to common-install-indep + + [ Carsten Schoenert ] + * [40d68d5] Fix build error on IA64 and Sparc + * [59939c3] manpage: add example section and convert to UTF-8 + * [10647cf] fixing build failure depended on python-2.7 changes + + [ Christoph Goehre ] + * [0a7bb8b] create links for extension in + /usr/share/mozilla/extensions/APPID + * [5047e6b] remove + icedove/save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + (Closes: #695323) + + -- Christoph Goehre Sat, 18 May 2013 17:53:21 -0400 + +icedove (17.0.5-1) experimental; urgency=low + + [ Guido Günther ] + * [894ea6d] Include all needed libs to link against icedove's libxpcom + (Closes: #477747) + + [ Carsten Schoenert ] + * [6e00625] Point "Help->What's new" to the Debian Wiki (Closes: #570577) + + [ Christoph Goehre ] + * [4766bc9] replace icon in searchplugin (bing, twitter) with download url + * [e3dc726] Imported Upstream version 17.0.5 + + -- Christoph Goehre Sat, 13 Apr 2013 12:19:06 -0400 + +icedove (17.0.4-1) experimental; urgency=low + + [ Guido Günther ] + * [9ed54cb] Add Homepage + * [bd41337] Add X-Debian-Homepage + + [ Carsten Schoenert ] + * [1fba87f] New patch + fix-function-nsMsgComposeAndSend-to-to-respect-Replo.patch fix function + nsMsgComposeAndSend to respect ReploToSend + Thanks to Emilio Pozuelo Monfort for the patch (Closes: #565903) + + [ Christoph Goehre ] + * [7a1071b] update debug section in icedove manpage (Closes: #698163) + * [017f5b5] Imported Upstream version 17.0.4 (Closes: #702927) + * [7c35529] compress debian packages with xz + + -- Christoph Goehre Wed, 13 Mar 2013 19:00:07 -0400 + +icedove (17.0.2-1) experimental; urgency=low + + * [8911b88] Finally set Christoph as Maintainer. + Thanks for your work Alexander. + * [d456018] parallel build: Use number or available cores by default + * [daeee47] Don't refer to paths containing thunderbird (Closes: #486617) + * [52a202a] New upstream version 17.0.2 + * [fa07537] Allow webrtc to build on more architectures. + Thanks to Mike Hommey and Christoph Göhre + + -- Guido Günther Fri, 11 Jan 2013 17:37:46 +0100 + +icedove (17.0.2-1~1) experimental; urgency=low + + * [8911b88] Finally set Christoph as Maintainer. Thanks for your work + Alexander. + * [d456018] parallel build: Use number or available cores by default + * [daeee47] Don't refer to paths containing thunderbird (Closes: #486617) + * [52a202a] New upstream version 17.0.2 + * [fa07537] Allow webrtc to build on more architectures. + Thanks to Mike Hommey and Christoph Göhre + + -- Guido Günther Fri, 11 Jan 2013 17:35:22 +0100 + +icedove (17.0-1) experimental; urgency=low + + [ Christoph Goehre ] + * [0b8ac79] replace transitional depens ttf-lyx with fonts-lyx + (Closes: #676505) + * [4473d67] fix typo in calendar-google-provider description + * [b3a57c0] rebuild patch queue from patch-queue branch + added patches: + porting/Another-fix-to-build-ipc-code-on-GNU-hurd-and-kfreeb.patch + + [ Jens Reyer ] + * [c0e30b6] clarify the relation between iceowl, lightning and sunbird + (Closes: #686206) + + [ Guido Günther ] + * [394b6a1] New upstream version 17.0 + * [a17c23f] Update patches. + The thunderbird-3-profile.patch got split into three since it + addresses different issues: + * Strip-version-number.patch + * Icedove-branding.patch + * Move-profile.patch + * [01eef04] Don't overwrite DEB_BUILD_OPTIONS + and drop dependency on essential package + + [ Ritesh Raj Sarraf ] + * [1ab9095] Add parallel build support + + -- Guido Günther Sat, 24 Nov 2012 19:26:19 +0100 + +icedove (16.0.2-1) experimental; urgency=low + + [ Christoph Goehre ] + * [e94445f] cleanup source.filer file + * [33b9f4c] Imported Upstream version 12.0.1 + + [ Guido Günther ] + * [88a39e3] watch: only look for two digit versions since 3.1.20 lacks the + source/ dir + * [eb4f5c3] New upstream version 14.0 + * [b451442] Update patches for 14.0 + obsolete patches: + Avoid-libxpcom-being-excluded-from-linked-libraries-.patch + Bug-515232-Try-getting-general.useragent.locale-as-a.patch + Bug-696636-Block-OpenGL-1-drivers-explicitly-to-stee.patch + Bug-710972-Define-G_VARIANT_TYPE_STRING_ARRAY-when-b.patch + Bug-722127-Bump-required-libvpx-version-to-1.0.0.-r-.patch + Bug-728136-Port-bug-528687-to-comm-central.patch + Bug-728229-Allow-to-build-with-system-python-ply-lib.patch + Bug-729817-Allow-the-Nouveau-driver-with-Mesa-8.0.1-.patch + Bug-729817-Block-the-Nouveau-3D-driver-as-it-s-insta.patch + Bug-734335-Only-build-SPS-on-supported-platforms.patch + Revert-investigation-patch-for-bug-621446.patch + Bug-698923-Don-t-require-16-bytes-alignment-for-VMFr.patch + Bug-711353-Add-support-for-GNU-kFreeBSD-and-GNU-Hurd.patch + modified patches: + Add-another-preferences-directory-for-applications-p.patch + Do-build-time-detection-of-2-bytes-wchar_t-and-char1.patch + Don-t-build-example-component.patch + Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch + Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch + Gross-workaround-to-avoid-installing-test-idl-and-in.patch + Ignore-system-libjpeg-libpng-and-zlib-version-checki.patch + stop-configure-if-with-system-bz2-was-passed-but-no-.patch + Allow-.js-preference-files-to-set-locked-prefs-with-.patch + Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + Bug-720682-Don-t-crash-an-app-using-libxul-because-o.patch + Include-cstdlib-in-gfx-angle-src-compiler-Types.h-fo.patch + Link-libldap-against-libpthread.patch + Load-dependent-libraries-with-their-real-path-to-avo.patch + Properly-launch-applications-set-in-HOME-.mailcap.patch + Remove-the-js-shell-from-the-build-directory-during-.patch + fix-branding-in-migration-wizard-and-the-addon-manag.patch + fix-installdir.patch + save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + thunderbird-3-profile.patch + Change-extension-s-name-to-Iceowl.patch + Add-xptcall-support-for-SH4-processors.patch + Allow-ipc-code-to-build-on-GNU-hurd.patch + Allow-ipc-code-to-build-on-GNU-kfreebsd.patch + Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + Disable-optimization-on-alpha-for-the-url-classifier.patch + Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + Don-t-auto-disable-extensions-in-system-directories.patch + Set-javascript.options.showInConsole.patch + Allow-to-build-against-system-libffi.patch + * [907be61] Make sure we only match the generated files. Patch taken from + iceowl 1.5 package + * [772b9a0] Make system cairo work again. Patch taken from iceweasel. + * [0b6a8b3] Update + Add-another-preferences-directory-for-applications-p.patch to new method + name. + * [3395f21] Don't use APP_UA_NAME in application.ini since the replacement + fails and isn't needed. + * [6dea9fb] New upstream version 16.0.1 + * [664153d] Add README.source describing howto import new upstream versions + * [a653bd0] Adjust to upstream changes: + * stop-configure-if-with-system-bz2-was-passed-but-no-.patch + * [f088193] Add a proper patch header + * to Fix-build-failure-for-header.py-and-typelib.py.patch + so we don't lose the patch description. + * [268cca5] New upstream version 16.0.2 + * [a453a92] Rediff patches - no content changes + * [263bbeb] BUILD_OFFICIAL is now MOZILLA_OFFICIAL + * [a798e6b] Install dependentlibs.list to fix dlopen() of XPCOM + + [ Ritesh Raj Sarraf ] + * [f871ba9] Refresh patches. + Droped patches: + * fixes/Remove-the-js-shell-from-the-build-directory-during-.patch + * porting/Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + * fixes/Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + * debian-hacks/Make-sure-we-only-match-the-generated-files.patch + * [9b02e4c] Refreshed patches for TB16 + * [dc83dd7] Fix build failure for header.py and typelib.py. + Earlier builds were passing the --cachedir option + Sometime during TB15, Mozilla changed that to variables. + This change was not passing the --cachedir option, hence the build + failure. This patch just hacks the build by passing the cachedir option + manually + + -- Guido Günther Tue, 30 Oct 2012 22:05:49 +0100 + +icedove (11.0-1) experimental; urgency=low + + * [ffb767a] Imported Upstream version 11.0 (Closes: #663897) + * [2b75f48] relax optimize to -O1 on sparc to fix FTBFS + * [fa9a610] update build dependencies (Thanks to Mike) (Closes: #666722) + * [5b552f2] rebuild patch queue from patch-queue branch + added patches: + - fixes/Bug-710972-Define-G_VARIANT_TYPE_STRING_ARRAY-when-b.patch + - fixes/Bug-734335-Only-build-SPS-on-supported-platforms.patch + - fixes/Revert-investigation-patch-for-bug-621446.patch + modified patches: + - fixes/Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - icedove/save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + obsolete patches (fixed upstream): + - debian-hacks/Fix-tracejit-to-build-against-nanojit-headers-in-dis.patch + - debian-hacks/Install-missing-nanojit-and-.tbl-headers-from-js-src.patch + - fixes/Bug-710268-Sign-NSS-libraries-only-when-they-exist-r.patch + - fixes/Fixup-bz-730195-for-Linux-ARM-use-_URC_FOREIGN_EXCEP.patch + - fixes/mozilla-config.h-was-renamed-js-confdefs.h-in-js-src.patch + - fixes/Remove-generated-files-from-js-src-during-make-distc.patch + - porting/Bug-703531-Fix-ARMAssembler-getOp2RegScale-on-ARMv5.patch + - porting/Bug-703534-Fix-build-failure-on-platforms-without-YA.patch + - porting/Bug-703842-Avoid-R_SPARC_WDISP22-relocation-in-Tramp.patch + + -- Christoph Goehre Wed, 18 Apr 2012 18:36:31 +0200 + +icedove (10.0.3-2) unstable; urgency=low + + [ Christoph Goehre ] + * [1223204] bump up standards version to 3.9.3 + + [ Guido Günther ] + * [7d7b5f5] Don't put symlinks into iceowl/extensions + + [ Christoph Goehre ] + * [94c07e5] update copyright file + * [88098a8] GNOME 3 integration: Use GIO instead of deprecated GnomeVFS. + Thanks to Michael Biebl (Closes: #658688) + * [9543fd1] add build depends python + * [ec62dcb] build a debug package, if DEB_BUILD_OPTIONS contains 'debug' + + -- Christoph Goehre Tue, 27 Mar 2012 18:21:52 +0200 + +icedove (10.0.3-1) unstable; urgency=low + + [ Christoph Goehre ] + * [ee4b49c] adjust source.filter list + * [b5f3064] New Upstream version 10.0.3 (Closes: #661115, #663897) + * [fd35da8] build against system python-ply + * [4964bb2] build against system libreadline + * [5412685] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/Don-t-build-example-component.patch + - fixes/Bug-515232-Try-getting-general.useragent.locale-as-a.patch + - fixes/Bug-628252-os2.cc-fails-to-compile-against-GCC-4.6-m.patch + - fixes/Bug-691898-Use-YARR-interpreter-instead-of-PCRE-on-p.patch + - fixes/Bug-696636-Block-OpenGL-1-drivers-explicitly-to-stee.patch + - fixes/Bug-710268-Sign-NSS-libraries-only-when-they-exist-r.patch + - fixes/Bug-720682-Don-t-crash-an-app-using-libxul-because-o.patch + - fixes/Bug-722127-Bump-required-libvpx-version-to-1.0.0.-r-.patch + - fixes/Bug-728136-Port-bug-528687-to-comm-central.patch + - fixes/Bug-728229-Allow-to-build-with-system-python-ply-lib.patch + - fixes/Bug-729817-Allow-the-Nouveau-driver-with-Mesa-8.0.1-.patch + - fixes/Bug-729817-Block-the-Nouveau-3D-driver-as-it-s-insta.patch + - fixes/Fixup-bz-730195-for-Linux-ARM-use-_URC_FOREIGN_EXCEP.patch + - fixes/Include-cstdlib-in-gfx-angle-src-compiler-Types.h-fo.patch + - fixes/Link-libldap-against-libpthread.patch + - fixes/Load-dependent-libraries-with-their-real-path-to-avo.patch + - porting/Bug-703534-Fix-build-failure-on-platforms-without-YA.patch + - prefs/Don-t-auto-disable-extensions-in-system-directories.patch + (Closes: #648712) + modified patches: + - debian-hacks/Install-missing-nanojit-and-.tbl-headers-from-js-src.patch + - fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch + - fixes/Properly-launch-applications-set-in-HOME-.mailcap.patch + - icedove/fix-branding-in-migration-wizard-and-the-addon-manag.patch + - porting/Allow-ipc-code-to-build-on-GNU-hurd.patch + - porting/Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + - prefs/Set-javascript.options.showInConsole.patch + obsolete patches (fixed upstream): + - debian-hacks/get-ride-of-default-debian-hardering-options.patch + - iceowl/Install-calendar-timezones-mode-0644-not-0755.patch + - porting/Add-mips-hppa-ia64-s390-and-sparc-defines-in-ipc-chr.patch + - porting/Bug-680917-Use-a-pool-size-of-16kB-on-ia64-for-bump-.patch + - porting/Bug-694533-LDRH-STRH-LDRSB-STRSB-are-supported-on-AR.patch + - porting/Bug-696393-Reimplement-NS_InvokeByIndex-in-C-on-S390.patch + - porting/Revert-bz-164580.patch + + [ Michael Biebl ] + * [c0a3ee2] Install chrome.manifest file to ensure the various components + (like GNOME support module) are correctly loaded. (Closes: #658479) + + [ Christoph Goehre ] + * [02687fc] adjust install/link files for new upstream + * [b551d6a] omni.jar was renamed to omni.ja + + -- Christoph Goehre Sat, 24 Mar 2012 23:10:47 +0100 + +icedove (9.0.1-1) experimental; urgency=low + + * [e2002b8] New Upstream version 9.0.1 (Closes: #653266, #653556) + * [9c14e8b] replace dfsg cleanup script with Mike's repack.py + * [2a34bd8] rebuild patch queue from patch-queue branch + added patches: + - porting/Bug-698923-Don-t-require-16-bytes-alignment-for-VMFr.patch + - porting/Bug-703531-Fix-ARMAssembler-getOp2RegScale-on-ARMv5.patch + - porting/Bug-703833-Avoid-invalid-conversion-from-const-size_.patch + - porting/Bug-703842-Avoid-R_SPARC_WDISP22-relocation-in-Tramp.patch + - porting/Bug-711353-Add-support-for-GNU-kFreeBSD-and-GNU-Hurd.patch + - porting/Fix-GNU-non-Linux-failure-to-build-because-of-ipc-ch.patch + * [03ed85d] remove Build-Depends python-ply, it's shipped and searched in + mozilla/other-licenses + + -- Christoph Goehre Tue, 24 Jan 2012 19:13:30 +0100 + +icedove (8.0-2) unstable; urgency=low + + * Upload to unstable + * [b02c21d] fix crash in xpcshell on sparc linux + + -- Christoph Goehre Wed, 04 Jan 2012 18:09:14 +0100 + +icedove (8.0-1) experimental; urgency=low + + [ Guido Günther ] + * [17a7a80] Add x-scheme-handler/mailto to. Thanks to Michael Biebl for the + patch (Closes: #645556) + + [ Christoph Goehre ] + * [4066038] New Upstream version 8.0 + * [aa9105e] update autoconfig for e-mail accounts from riseup.net + (Closes: #648907) + * [decc1ac] fix wrong description text in iceowl-extension (Closes: #649073) + * [c97dda6] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/Statically-link-jemalloc-to-all-programs.patch + - fixes/Bug-670719-Only-add-DENABLE_JIT-1-to-CXXFLAGS-if-any.patch + - fixes/Bug-680642-Don-t-enable-YARR-JIT-on-MIPS-as-the-impl.patch + - porting/Bug-589735-Allocate-memory-with-an-address-with-high.patch + - porting/Bug-589735-Allow-static-JS-strings-to-be-turned-off-.patch + - porting/Bug-680917-Use-a-pool-size-of-16kB-on-ia64-for-bump-.patch + - porting/Bug-694533-LDRH-STRH-LDRSB-STRSB-are-supported-on-AR.patch + - porting/Bug-696393-Reimplement-NS_InvokeByIndex-in-C-on-S390.patch + - porting/Revert-bz-164580.patch + + -- Christoph Goehre Sun, 20 Nov 2011 19:58:37 +0100 + +icedove (8.0~b4-2) experimental; urgency=low + + [ Guido Günther ] + * [5d043ec] Install calendar extension + * [07feb49] Change extension's name to Iceowl + * [c597212] iceowl-extension: don't ignore errors in postinst + * [30ec51d] Disable patch numbers + * [73f80ed] Don't install timezones file mode 0755 + + [ Christoph Goehre ] + * [0fa13be] remove duplicate build depends unzip + + -- Christoph Goehre Tue, 08 Nov 2011 22:29:19 +0100 + +icedove (8.0~b4-1) experimental; urgency=low + + * [4e90977] New Upstream Version 8.0b4 (Closes: #591771, #638161) + * [955423a] replace duplicate .so files in icedove and icedove-dev with + symlinks + * [6ffb325] remove obsolete cdbs rule to extract tarball + * [f98837b] build against libnotify4 (libnotify-dev >= 0.7)(Closes: #637194) + * [66f72bc] Build-depend on libjpeg-dev instead of libjpeg62-dev + * [8af21a2] rebuild patch queue from patch-queue branch + added patches: + - debian-hacks/get-ride-of-default-debian-hardering-options.patch + - fixes/packager-fails-when-MOZILLA_DIR-is-a-relative-path.patch + modified patches: + - icedove/save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + obsolete patches (fixed upstream): + - debian-hacks/bzXXX-ftbfs-static-with-system-hunspell.patch + - fixes/Bug-626035-Modify-the-way-arm-compiler-flags-are-set.patch + - fixes/Bug-639554-Install-sdk-bin-with-make-install.-r-bsme.patch + - fixes/Bug-640494-part-1-Get-rid-of-STL-algorithm-use-in-js.patch + - fixes/Bug-640494-part-2-Use-bitwise-operations-in-JSDOUBLE.patch + - fixes/Bug-652139-Use-an-integer-type-in-DocumentViewerImpl.patch + - fixes/Bug-662224-Define-NS_ATTR_MALLOC-and-NS_WARN_UNUSED_.patch + - fixes/Bug-668906-Do-not-call-openUnsharedDatabase-with-a-n.patch + - fixes/Bug-671564-Initialize-NS_XPCOM_LIBRARY_FILE-from-NS_.patch + - fixes/Disable-building-embedded-libjpeg-turbo-when-buildin.patch + - porting/Allow-to-build-yuv_convert_arm.cpp-on-armv4t.patch + - porting/Bug-638056-Avoid-The-cacheFlush-support-is-missing-o.patch + - porting/Fix-FTBFS-in-IPC-on-Linux-PPC.patch + - porting/Fix-FTBFS-in-xpcom-base-on-armv4t.patch + - system-libs/libxul-linking-error-with-enable-system-ffi-and-stat.patch + * [5f6e50f] add Japanese translation for desktop menu entry. Thanks to + Hideki Yamane (Closes: #640679) + * [591f76c] add build depends unzip + * [0af372f] remove upstream integrated CFLAGS and CXXFLAGS '-g -std=gnu++0x' + * [a4c8b2f] adjust install and links file to new upstream + * [332b7a8] Revert "override libtheora embedded-library error" no longer + needed + + -- Christoph Goehre Sat, 05 Nov 2011 20:31:29 +0100 + +icedove (5.0-2) experimental; urgency=low + + * [7f92927] fix FTBFS on ia64: use gcc with -O2 instead of -Os + * [b6b8dea] Disable methodjit on armel + * [5b45336] remove obsolete conffiles with dpkg-maintscript-helper + (Closes: #636819) + * [868cfa3] rebuild patch queue from patch-queue branch + added patches: + - porting/Allow-ipc-code-to-build-on-GNU-hurd.patch - fix building on + GNU/hurd - Thanks to Pino Toscano + + -- Christoph Goehre Sun, 07 Aug 2011 15:35:09 +0200 + +icedove (5.0-1) experimental; urgency=low + + * New Upstream Version (Closes: #632037) + * [98c5a8f] build against libffi and libvpx + * [52dff12] build javascript lib as shared library + * [6f1c24d] build against mozilla png library + * [9e16beb] c-sdk moved from directory/sdks/c-sdk to ldap/sdks/c-sdk + * [57763a0] override libtheora embedded-library error + * [fc71b62] adjust install/links files for new upstream version + * [6e83a58] Revert "lintian: override ancient-libtool warning" override no + longer needed + * [d65b463] change hardcoded list of non-Linux build depends into linux-any + (Closes: #634301) + * [ff3a8f3] remove file compare in build run + * [a21efa9] add branding for icedove 5.0 + * [7023939] update porting/Fix-FTBFS-in-xpcom-base-on-armv4t.patch - fix + building on armhf + + -- Christoph Goehre Wed, 03 Aug 2011 18:25:17 +0200 + +icedove (3.1.11-1) unstable; urgency=high + + * New Upstream Version + - MFSA 2011-19 aka CVE-2011-2364, CVE-2011-2365, CVE-2011-2374, + CVE-2011-2376: + Miscellaneous memory safety hazards (rv:3.0/1.9.2.18) + - MFSA 2011-20 aka CVE-2011-2373: Use-after-free vulnerability when + viewing XUL document with script disabled + - MFSA 2011-21 aka CVE-2011-2377: Memory corruption due to + multipart/x-mixed-replace images + - MFSA 2011-22 aka CVE-2011-2371: Integer overflow and arbitrary code + execution in Array.reduceRight() + - MFSA 2011-23 aka CVE-2011-0083, CVE-2011-0085, CVE-2011-2363: + Multiple dangling pointer vulnerabilities + - MFSA 2011-24 aka CVE-2011-2362: Cookie isolation error + * [2a82ce8] DM-Upload-Allowed is superfluous since I'm DD + + -- Christoph Goehre Sun, 26 Jun 2011 10:35:31 +0200 + +icedove (3.1.10-2) unstable; urgency=low + + * [de81b7f] remove obsolete build depends libxp-dev (Closes: #623668) + * [633782d] change DEB_HOST_MULTIARCH back to DEB_HOST_GNU_TYPE and + downgrade sqlite version (Closes: #627598) + + -- Christoph Goehre Mon, 06 Jun 2011 20:53:54 +0200 + +icedove (3.1.10-1) unstable; urgency=high + + * New Upstream Version (Closes: #625207) + - MFSA 2011-12 aka CVE-2011-0069, CVE-2011-0070, CVE-2011-0072, + CVE-2011-0074, CVE-2011-0075, CVE-2011-0077, + CVE-2011-0078, CVE-2011-0080, CVE-2011-0081: + Miscellaneous memory safety hazards (rv:2.0.1/ 1.9.2.17/ 1.9.1.19) + - MFSA 2011-16 aka CVE-2011-0071: Directory traversal in resource: protocol + * [78e0217] build against system libbz2 + * [e6af761] build against system libpng + * [4b57c30] build against system libhunspell + * [937f0bd] double check to build against most system libraries + * [d6de723] rebuild patch queue from patch-queue branch + added patches (Closes: #624969): + - 0072-fix-building-with-gcc-4.6-Add-constructor-to-placate.patch + - 0073-fix-building-with-gcc-4.6-os2.cc-missing-include-cst.patch + - 0074-Add-constructor-for-nsCaseInsensitiveStringComparato.patch + - 0075-Add-constructor-for-nsXULAppInfo-which-inherits-from.patch + - 0076-Add-constructor-for-GTKEmbedDirectoryProvider.patch + modified patches: + - 0056-Disable-APNG-support-when-system-libpng-doesn-t-supp.patch + obsolete patches (fixed upstream): + - 0051-Do-exec-instead-of-uselessly-forking-in-xulrunner-la.patch + - 0072-Add-support-for-libnotify-0.7.patch + * [e190ef1] bump up standards version to 3.9.2 (change DEB_HOST_GNU_TYPE to + DEB_HOST_MULTIARCH) + + -- Christoph Goehre Tue, 10 May 2011 20:03:04 +0200 + +icedove (3.1.9-2) unstable; urgency=low + + * Upload to unstable + * [ace3b6f] rebuild patch queue from patch-queue branch + added patches: + - 0072-Add-support-for-libnotify-0.7.patch + * [910f213] use DEP5 for copyright file + * [3ae4c8b] set global section to 'mail' + * [42c9c89] icedove.1: icedove is derived from Thunderbird instead of + Mozilla suite + + -- Christoph Goehre Sat, 02 Apr 2011 09:43:04 +0200 + +icedove (3.1.9-1) experimental; urgency=low + + * New Upstream Version + - MFSA 2011-01 aka CVE-2011-0053, CVE-2011-0062: Miscellaneous memory + safety hazards (rv:1.9.2.14/ 1.9.1.17) + - MFSA 2011-08 aka CVE-2010-1585: ParanoidFragmentSink allows javascript: + URLs in chrome documents + - MFSA 2011-09 aka CVE-2011-0061: Crash caused by corrupted JPEG image + * [699536a] rebuild patch queue from patch-queue branch + added patches: + - 0069-save-a-copy-of-a-attached-file-when-sending-from-OOo.patch + (Closes: #505875) + - 0070-News-article-is-empty-if-selected-during-download-fr.patch + (Closes: #487494) + - 0071-restore-icedove-on-login-by-session-management.patch + (Closes: #403458) + modified patches: + - 0003-no_dynamic_nss_softokn.patch + - 0010-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0030-Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch + * [98d8ac0] c-sdk move to sdks/c-sdk - adjust + debian/{copyright,remove.nonfree,rules} + + -- Christoph Goehre Wed, 09 Mar 2011 20:21:59 +0100 + +icedove (3.1.7-1) experimental; urgency=low + + * New Upstream Version (Closes: #606977) + - MFSA 2010-74 aka CVE-2010-3776, CVE-2010-3777: Miscellaneous memory + safety hazards (rv:1.9.2.13/ 1.9.1.16) + - MFSA 2010-75 aka CVE-2010-3769: Buffer overflow while line breaking + after document.write with long string + - MFSA 2010-78 aka CVE-2010-3768: Add support for OTS font sanitizer + * [46e3e8a] rebuild patch queue from patch-queue branch + added patches: + - 0068-fix-forwarding-of-Simple-HTML-email.patch + obsolete patches (fixed upstream): + - 0017-Implement-sync_instruction_memory-for-sparc-linux.patch + - 0059-Fix-startup-problem-with-symlinked-components-e.g.-e.patch + * [9fcce0c] add license info for gfx/ots + + -- Christoph Goehre Mon, 13 Dec 2010 17:59:50 +0100 + +icedove (3.1.6-1) experimental; urgency=low + + * New Upstream Version (Closes: #601334) + - MFSA 2010-64 aka CVE-2010-3175, CVE-2010-3176: Miscellaneous memory + safety hazards (rv:1.9.2.11/ 1.9.1.14) + - MFSA 2010-65 aka CVE-2010-3179: Buffer overflow and memory corruption + using document.write + - MFSA 2010-66 aka CVE-2010-3180: Use-after-free error in nsBarProp + - MFSA 2010-67 aka CVE-2010-3183: Dangling pointer vulnerability in + LookupGetterOrSetter + - MFSA 2010-69 aka CVE-2010-3178: Cross-site information disclosure via + modal calls + - MFSA 2010-71 aka CVE-2010-3182: Unsafe library loading vulnerabilities + - MFSA 2010-73 aka CVE-2010-3765: Heap buffer overflow mixing + document.write and DOM insertion + * [270fd51] rebuild patch queue from patch-queue branch + added patches: + - 0069-Use-errno.ENOENT-instead-of-2-in-JarMaker.py.patch + modified patches: + - 0009-fix-branding-in-migration-wizard-and-the-addon-manag.patch + * [24421f4] bump build depends for libnspr4-dev, libnss3-dev and + libsqlite3-dev + + -- Christoph Goehre Wed, 10 Nov 2010 07:11:17 +0100 + +icedove (3.1.4-1) experimental; urgency=low + + * New Upstream Version + + -- Christoph Goehre Sat, 18 Sep 2010 18:25:37 +0200 + +icedove (3.1.3-1) experimental; urgency=low + + * New Upstream Version + - MFSA 2010-49 aka CVE-2010-3169: Miscellaneous memory safety hazards + (rv:1.9.2.9/ 1.9.1.12) + - MFSA 2010-50 aka CVE-2010-2765: Frameset integer overflow vulnerability + - MFSA 2010-51 aka CVE-2010-2767: Dangling pointer vulnerability using DOM + plugin array + - MFSA 2010-53 aka CVE-2010-3166: Heap buffer overflow in + nsTextFrameUtils::TransformText + - MFSA 2010-54 aka CVE-2010-2760: Dangling pointer vulnerability in + nsTreeSelection + - MFSA 2010-55 aka CVE-2010-3168: XUL tree removal crash and remote code + execution + - MFSA 2010-56 aka CVE-2010-3167: Dangling pointer vulnerability in + nsTreeContentView + - MFSA 2010-57 aka CVE-2010-2766: Crash and remote code execution in + normalizeDocument + - MFSA 2010-59 aka CVE-2010-2762: SJOW creates scope chains ending in + outer object + - MFSA 2010-61 aka CVE-2010-2768: UTF-7 XSS by overriding document charset + using type attribute + - MFSA 2010-62 aka CVE-2010-2769: Copy-and-paste or drag-and-drop into + designMode document allows XSS + - MFSA 2010-63 aka CVE-2010-2764: Information leak via XMLHttpRequest + statusText + * [9a03eb1] rebuild patch queue from patch-queue branch + added patches: + - 0060-fix-FTBFS-on-hurd.patch (Closes: #595665) + - 0061-Enable-x64-JIT-backend-by-default.patch + - 0062-Fix-unaligned-reads-in-qcms.patch + - 0063-Import-js-src-nanojit-njcpudetect.h.patch + - 0064-Use-clz-on-android-even-for-armv5-target.patch + - 0065-Fix-ARM-verbose-assembly-output-for-BLX.patch + - 0066-Get-rid-of-blx_lr_bug.patch + - 0067-Avoid-some-ARM-CPU-arch-related-runtime-tests-depend.patch + - 0068-ARMv4T-support-for-nanojit.patch + + -- Christoph Goehre Tue, 14 Sep 2010 13:41:19 +0200 + +icedove (3.1.2-2) experimental; urgency=low + + * [e1435dc] rebuild patch queue from patch-queue branch + added patches: + - 0060-Fix-startup-problem-with-symlinked-components-e.g.-e.patch + (Closes: #592531) + modified patches: + - 0048-Add-nanojit-support-for-ARMv4T.patch - Fix FTBFS on armel + + -- Christoph Goehre Sat, 21 Aug 2010 14:51:03 +0200 + +icedove (3.1.2-1) experimental; urgency=low + + * New Upstream Version (Closes: #589666, #591899) + - MFSA 2010-34 aka CVE-2010-1211, CVE-2010-1212: Miscellaneous memory + safety hazards (rv:1.9.2.7/ 1.9.1.11) + - MFSA 2010-38 aka CVE-2010-1215: Arbitrary code execution using SJOW and + fast native function + - MFSA 2010-39 aka CVE-2010-2752: nsCSSValue::Array index integer overflow + - MFSA 2010-40 aka CVE-2010-2753: nsTreeSelection dangling pointer remote + code execution vulnerability + - MFSA 2010-41 aka CVE-2010-1205: Remote code execution using malformed PNG + image + - MFSA 2010-42 aka CVE-2010-1213: Cross-origin data disclosure via Web + Workers and importScripts + - MFSA 2010-43 aka CVE-2010-1207: Same-origin bypass using canvas context + - MFSA 2010-44 aka CVE-2010-1210: Characters mapped to U+FFFD in 8 bit + encodings cause subsequent character to vanish + - MFSA 2010-46 aka CVE-2010-0654: Cross-domain data theft using CSS + - MFSA 2010-47 aka CVE-2010-2754: Cross-origin data leakage from script + filename in error messages + * [6b9976e] rebuild patch queue from patch-queue branch + modified patches: + - 0010-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0015-Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch + - 0018-Work-around-FTBFS-on-mips-by-disabling-TLS-support.patch + - 0034-Fix-compiler-errors-with-g-4.4-with-std-gnu-0x.patch + - 0045-Expose-fullpath-from-nsIPluginTag.patch + - 0047-Use-syscall-for-mmap-and-munmap-and-disable-ncpus-in.patch + - 0050-Set-javascript.options.showInConsole.patch + - 0057-Allow-to-build-against-system-libffi.patch + - 0058-Ignore-system-libjpeg-libpng-and-zlib-version-checki.patch + - 0059-Disable-APNG-support-when-system-libpng-doesn-t-supp.patch + * [16b0e7e] fix FTBFS on kfreebsd-* and hurd-i386 by passing + --disable-necko-wifi to configure (Closes: #589476) + * [15a02c7] bump up standards version to 3.9.1 + + -- Christoph Goehre Fri, 13 Aug 2010 12:18:21 +0200 + +icedove (3.1-1) experimental; urgency=low + + * New Upstream Version + * [124a316] add additional build depends libnotify-dev + * [5ed6a72] adjust branding for Icedove 3.1 + * [bed8969] install further js files shipped with Icedove 3.1 + * [02456e6] replace blue icedove icons with green version + * [036921f] regenerate patch queue for 3.1 Icedove release + * [a7fa393] build with system ffi + * [d8650f7] ship icedove svg file for low resolution icons too + * [7718c55] bump Standards Version to 3.9.0 and downgrade Conflicts to + Breaks + * [9621fc6] lintian: override ancient-libtool warning + + -- Christoph Goehre Sat, 17 Jul 2010 17:19:58 +0200 + +icedove (3.0.5-1) unstable; urgency=low + + * New Upstream Version + - MFSA 2010-25 aka CVE-2010-1121: Re-use of freed object due to scope + confusion + - MFSA 2010-26 aka CVE-2010-1200, CVE-2010-1201, CVE-2010-1202: Crashes + with evidence of memory corruption (rv:1.9.2.4/ 1.9.1.10) + - MFSA 2010-29 aka CVE-2010-1196: Heap buffer overflow in + nsGenericDOMDataNode::SetTextInternal + - MFSA 2010-30 aka CVE-2010-1199: Integer Overflow in XSLT Node Sorting + * [9774410] rebuild patch queue from patch-queue branch + added patches: + - 0045-Fix-misalignments-in-help-command-line.patch + - 0046-Fix-misalignments-in-help-command-line.patch + - 0047-KDE-Gnome-startup-notification-not-disappearing-when.patch + - 0048-KDE-Gnome-startup-notification-not-disappearing-for-.patch + - 0049-Use-char16_t-when-available-and-when-it-is-don-t-tes.patch + - 0050-Fix-compiler-errors-with-g-4.4-with-std-gnu-0x.patch + - 0051-Add-xptcall-support-for-SH4-processors.patch + modified patches: + - 0028-Avoid-crashing-when-trying-to-kill-a-nsProcess-that-.patch + obsolete patches (fixed upstream): + - 0021-Avoid-creating-the-updates-directory-when-update-ser.patch + - 0035-Fix-stack-alignment-on-function-calls-in-JIT-on-ARM.patch + * [3b98c84] avoid unneeded package depends by building with + '-Wl,--as-needed' + * [0067020] Build with -std=gnu++0x + * [72d4300] add pkg-config file for icedove (Closes: #577740) + * [e6af35d] enlarge package description with specification from icedove 2.0 + (Closes: #565887) + * [ef0bc10] add support for new Debian arch: powerpcspe (Closes: #586100) - + thanks to Sebastian Andrzej Siewior + * [5ae6099] use high bandwidth server in watch file to get new upstream + release + * [5e6d641] remove obsolete build depends libkrb5-dev + * [8ed7848] remove unused DEBIAN_VERSION vars in rules file + * [9959bd5] DEB_HOST_GNU_TYPE, DEB_BUILD_GNU_TYPE and DEB_BUILD_ARCH are + defined by cdbs too + * [9f6c088] Fix misalignments in --help command line + + -- Christoph Goehre Sat, 19 Jun 2010 23:26:55 +0200 + +icedove (3.0.4-3) unstable; urgency=low + + * [4026b50] icedove-dev need depend on libnspr4-dev and libnss3-dev + (Closes: #455725) + * [1fee936] don't run configure with --enable-optimize and --disable- + optimize if DEB_BUILD_OPTIONS contains noopt + * [02c0ea3] ship account autoconfig file for Riseup Networks (riseup.net) + (Closes: #577616) + * [e710d08] suggest libgssapi-krb5-2 for Kerberos login possibility + * [7609291] build a shared icedove binary. This avoid crashes because of + mixed functions from system and icedove itself (e.g. str2charray from + libldap_r-2.4.so.2 and libldap60.so). (Closes: #578916) + * [68f4b49] downgrade gnome stuff from Recommends to Suggests + (Closes: #579714) + * [bcff10b] install mailViews.dat into usr/share/icedove/defaults/messenger + + -- Christoph Goehre Fri, 14 May 2010 22:21:32 +0200 + +icedove (3.0.4-2) unstable; urgency=low + + * [57f0a8b] remove icedove-3.0 transitional package (Closes: #576741) + * [8008231] remove wrong mime types in desktop file + * [a12edde] set StartupWMClass in desktop file to Icedove-bin + * [7512224] extend package description of icedove, icedove-dev and + icedove-dbg + * [7e725b9] fix FTBFS on alpha by passing '-Wl,--no-relax' to gcc + * [92d3515] Switch to dpkg-source 3.0 (quilt) format + * [14d5894] rebuild patch queue from patch-queue branch + added patches: + - 0046-add-missing-headers-for-icedove-dev-package.patch (Closes: #577021) + modified patches: + - 0012-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0020-Work-around-FTBFS-on-mips-by-disabling-TLS-support.patch + * [2cdd850] remove obsolete thunderbird 3.0a1pre postinst stuff + * [443f44b] process directory/c-sdk/configure with autoconf too + * [66c2f65] remove obsolete build depends librsvg2-bin and patchutils + + -- Christoph Goehre Sun, 11 Apr 2010 12:44:26 +0200 + +icedove (3.0.4-1) unstable; urgency=low + + [ Guido Günther ] + * [01983a4] Add missing message/rfc822 mime type for eml files + (Closes: #574528) + + [ Christoph Goehre ] + * New Upstream Version fixes: + - MFSA 2010-16 aka CVE-2010-0173, CVE-2010-0174: Crashes with evidence of + memory corruption (rv:1.9.2.2/ 1.9.1.9/ 1.9.0.19) + - MFSA 2010-17 aka CVE-2010-0175: Remote code execution with + use-after-free in nsTreeSelection + - MFSA 2010-18 aka CVE-2010-0176: Dangling pointer vulnerability in + nsTreeContentView + - MFSA 2010-22 aka CVE-2009-3555: Update NSS to support TLS renegotiation + indication + - MFSA 2010-24 aka CVE-2010-0182: XMLDocument::load() doesn't check + nsIContentPolicy + * upload icedove 3 to unstable (Closes: #401848, #422886, #425497, #430644, + #483550, #495522, #501113, #552617, #574188) + * rebuild patch queue from patch-queue branch: + added patches: + - 0044-don-t-remove-xpt-tools.patch + - 0045-Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch + modified patches: + - 0011-fix-branding-in-migration-wizard-and-the-addon-manag.patch + - 0012-Support-building-on-GNU-kFreeBSD-and-GNU-Hurd.patch + - 0030-Force-better-nsAutoT-Ptr-Array-buffer-alignment.patch + - 0035-Fix-stack-alignment-on-function-calls-in-JIT-on-ARM.patch + obsolete patches (fixed upstream): + - 0021-Fix-crash-with-SwitchProxy-installed.patch + - 0023-Don-t-remove-build-automationutils.py-on-make-clean.patch + - 0039-Don-t-show-the-SVG-output-option-in-the-print-dialog.patch + * [a7f3529] Revert "disable prefetch service". This bug was already fixed in + 3.0.2 (CVE-2009-4629) and 'network.prefetch-next' has no effect in + icedove. + * [fecc0b4] install versioned build depends instead of checking on build + time + * [4806890] enable building of icedove-dev package + * [412b8ac] be more explicit on installing file into icedove package + * [23b1d4b] depends on newer version of libnspr4-dev and libnss3-dev + * [809c723] lintian: idl files didn't need to be executable + * [ecd284e] lintian: add ${shlibs:Depends} to icedove-dev package + * [da75ee2] replace/remove non-free searchplugin icons and doubtful + origin file in mozilla folder (Closes: #567917) + * [eaf405e] update /usr/lib/icedove/dictionaries symlink to point to + /usr/share/hunspell + * [fe362ba] describe profile renaming on update to icedove 3.0 + (Closes: #566329) + + -- Christoph Goehre Mon, 05 Apr 2010 21:11:42 +0200 + +icedove (3.0.3-1) experimental; urgency=low + + * New Upstream Version fixes: + - missing folders or empty folder pane after updating to version 3.0.2 + * [a69cdfd] rebuild patches from patch-queue: + - additional fix for FTBFS on kfreeBSD + * [e4bffd4] disable prefetch service (Closes: #572789) + * [3838bbe] branding files shouldn't be executable + * [3dc6688] add missing newline in logo license file + + -- Christoph Goehre Sat, 06 Mar 2010 21:48:50 +0100 + +icedove (3.0.2-1) experimental; urgency=low + + * New Upstream Version fixes: + - MFSA 2010-01 aka CVE-2010-0159: Crashes with evidence of memory + corruption (rv:1.9.1.8/ 1.9.0.18) + - MFSA 2010-03 aka CVE-2009-1571: Use-after-free crash in HTML parser + * [1fd705f] install menu file (Closes: #569166) + * [8df3f99] generate desktop files at build process + * [5b0bb84] add icedove branding logos + * [1ef1c10] copyright explanation of icedove artwork (Closes: #406849) + * [6cdc0b0] remove forgotten firefox branding icons (Closes: #567917) + * [cec6a38] swedish translation for desktop file (Closes: #420050) + * [0256328] readd translation for desktop file + * [20311f4] rebuild patches (most patches from Mike Hommey) + - fix FTBFS on kFreeBSD, hppa, mips + - stability patched for mips, alpha, sparc, ppc and arm + - really cleanup build directory on 'make clean/distclean' + - allow intl.locale.matchOS to be modified in user profile + * [0098f90] write manpage for icedove (Closes: #425490, #487493) + * [fbccfaa] no longer suggest libthai0 (Closes: #524436) + * [26d3e39] change suggests from transitional package latex-xft-fonts + to ttf-lyx (Closes: #539535) + * [e24801a] improve desktop file (remove deprecated items and + warnings/errors) + * [68885c4] bump up standards version to 3.8.4 + * [df39ede] use xpm icon in menu file to calm lintian + * [8303887] adjust sqlite version to new upstream dependency + + -- Christoph Goehre Sun, 28 Feb 2010 18:19:13 +0100 + +icedove (3.0.1-2) experimental; urgency=low + + [ Guido Günther ] + * [7ea7367] Explicitly pass build and host type to configure (Closes: + #546011) - thanks to Sven Joachim for the patch + * [7fca9e1] Add back icedove changelog of earlier versions + + [ Christoph Goehre ] + * [72b78cc] Support both - and _ separators in dictionary names - patch from + Reed Loden + * [9a96759] fix branding in migration wizard and the addon manager (Closes: + #565559)- patch from Edward J. Shornock + + -- Christoph Goehre Tue, 02 Feb 2010 20:32:24 +0100 + +icedove (3.0.1-1) experimental; urgency=low + + * New Upstream Version + * [8a2f5dc] define default options for git-import-orig + * [ac65b1b] refresh debian patches + * [851c5dc] rename binary packages to icedove (without version number) + * [6e12d1b] adjust cairo version to 1.8.8 + * [cd7cd6f] moving the old profile dir instead of copy + * [c342380] replace theme directory always by link to /usr/share if we + update to version 3 + * [c88eaa7] expansion of lib{dbusservice,mozgnome,nkgnomevfs}.so didn't work + with dpkg-shlibdeps - lets use the '-e' switch + + -- Christoph Goehre Thu, 21 Jan 2010 20:53:57 +0100 + +icedove (3.0-2) experimental; urgency=low + + * [f07e702] Add Replaces for icedove-gnome-support + * [72e66e7] Fix typo + + -- Guido Günther Fri, 08 Jan 2010 16:05:10 +0100 + +icedove (3.0-1) experimental; urgency=low + + * Final upstream version without any source code changes against RC2 + + [ Guido Günther ] + * [77d611e] Add Vcs-{Git,Browser} + * [ec7ddd6] Move VCS to where they belong + + [ Christoph Goehre ] + * [524d1f5] don't hardcode $MOZ_APP_NAME in Makefile.in file + * [0407ff3] mailclient bin called now $DEB_MOZ_APPLICATION + * [e6040b5] merge icedove-3.0-gnome-support into icedove-3.0 package + * [07417e0] install default theme and components/*.js into + /usr/share/icedove-3.0 + * [3d37478] add missed components files + * [f09cfad] add another preferences directory for applications: + preferences/syspref - thanks to Mike Hommey + * [d92e265] install debian config into /etc/icedove-3.0/pref and link + into defaults/syspref + * [18a886b] disable application update + * [76ea38a] let lockPref() in .js files work - thanks to Mike Hommey + * [e44133e] gnome-default-mail-client: check for MOZ_APP_NAME instead + for hardcoded 'thunderbird' + * [8573c8d] set DM-Upload-Allowed to yes + * [1c63920] install modules directory into /usr/share/icedove-3.0 + * [3a85ac6] add gbp.conf for easier package build with + git-buildpackage + * [7feb54a] add watch file + * [e0a1624] document how to clean upstream source code + + -- Christoph Goehre Fri, 08 Jan 2010 10:42:09 +0100 + +icedove (3.0~rc2-2) experimental; urgency=low + + [ Christoph Goehre ] + * [5b7992b] rename source package to unversioned name + * [cde3507] change Maintainer back to asac, add Uploaders Guido and me + * [978c58d] disable icedove-3.0-dev package build for now until it is fixed + upstream + * Upstream is identical to 3.0 final + + -- Guido Günther Thu, 17 Dec 2009 18:36:58 +0100 + +icedove-3.0 (3.0~rc2-1) experimental; urgency=low + + [ Christoph Goehre ] + * New Upstream Version (RC2) + - fixes 494014, 516950, 531278, 531502 in Mozilla Bugzilla + * [fc3fa5c] Revert "mark icedove-3.0-dev as transitional package for + xulrunner-dev" + + [ Guido Günther ] + * [51c1cca] Bump standards version + * [5e2a53c] Refer to versioned license + * [171f382] s/explicitely/explicitly/ + + -- Christoph Goehre Tue, 08 Dec 2009 18:46:28 +0100 + +icedove-3.0 (3.0~rc1-1) experimental; urgency=low + + * New Upstream Version (RC1) + * [cce57db] ship extracted upstream tarball in orig file + * [ee7677f] remove obsolet licence fix + * [7051ca8] install TB_ICON only once + * [4f20bb1] add unbranded preview theme icon + * [0002285] install non-binary stuff in /usr/share and link it into + /usr/lib + * [c9ce50f] get right of system myspell + * [5c96edf] remove version check for hunspell in debian/rules + * [13b57a3] mark icedove-3.0-dev as transitional package for + xulrunner-dev + * [8ecaec9] all packages need ${misc:Depends} as depends, if we use + debhelper + * [fc0dd78] dbg package must have section debug and priority extra + * [3a00f22] enable more config options and add build depends (filched from + iceape 2.0) + * [fd8e3ca] build against system sqlite if available + * [81165e1] build with 'export BUILD_OFFICIAL=1' + + -- Christoph Goehre Thu, 03 Dec 2009 10:16:46 +0100 + +icedove-3.0 (3.0~b3~hg20090713r3057-1~gbp253e4ab) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 14 Jul 2009 10:24:57 +0200 + +icedove-3.0 (3.0~b3~hg20090713r3057-1~gbpefd0706) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 14 Jul 2009 10:24:50 +0200 + +icedove-3.0 (3.0~b3~hg20090713r3057-1~gbpfeeee47) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 14 Jul 2009 10:11:10 +0200 + +icedove-3.0 (3.0~b3~hg20090505r2552-1~gbp595a0b7) sid; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 05 May 2009 18:03:25 +0200 + +icedove-3.0 (3.0~b3~hg20090427r2499-1~gbpbeb7cd6) sid; urgency=low + + * New snapshot. + + -- Guido Günther Mon, 27 Apr 2009 20:05:51 +0200 + +icedove-3.0 (3.0~b3~hg20090427r2499-1~gbp80a8829) sid; urgency=low + + * New snapshot. + + -- Guido Günther Mon, 27 Apr 2009 19:56:09 +0200 + +icedove-3.0 (3.0~b3~hg20090422r2448-1~gbpd4ee3b3) pkg-mozext; urgency=low + + * New snapshot. + + -- Guido Günther Wed, 22 Apr 2009 09:14:54 +0200 + +icedove-3.0 (3.0~b3~hg20090421r2441-1~gbp66d9bed) pkg-mozext; urgency=low + + * New snapshot. + + -- Guido Günther Tue, 21 Apr 2009 19:35:09 +0200 + +icedove-3.0 (3.0~b3~hg20090420r2424-1~gbp47b25b8) pkg-mozext; urgency=low + + * New snapshot. + + -- Guido Günther Mon, 20 Apr 2009 11:28:56 +0200 + +icedove-3.0 (3.0~b3~hg20090418r2418+nobinonly-1~0~gbpa19783) pkg-mozext; urgency=low + + * Initial release + + -- Guido Günther Sun, 19 Apr 2009 13:44:33 +0200 + +icedove (2.0.0.22-1.1) unstable; urgency=low + + * Non-maintainer upload. + * update /usr/lib/icedove/dictionaries symlink to point to + /usr/share/hunspell (closes: #549876) + * add $[shlibs:Depends} to iceape-dev + + -- Rene Engelhard Mon, 09 Nov 2009 17:11:50 +0100 + +icedove (2.0.0.22-1) unstable; urgency=low + + * New upstream security/stability update (v2.0.0.21/v2.0.0.22) (Closes: 535124) + * MFSA 2009-33: Crash viewing multipart/alternative message with text/enhanced part + * MFSA 2009-32 aka CVE-2009-1841: JavaScript chrome privilege escalation + * MFSA 2009-29 aka CVE-2009-1838: Arbitrary code execution using event listeners + attached to an element whose owner document is null + * MFSA 2009-27 aka CVE-2009-1836: SSL tampering via non-200 responses to proxy + CONNECT requests + * MFSA 2009-24 aka CVE-2009-1832+CVE-2009-1831: Crashes with evidence of memory + corruption (rv:1.9.0.11) + * MFSA 2009-17 aka CVE-2009-1307: Same-origin violations when Adobe Flash loaded + via view-source: scheme + * MFSA 2009-14 aka CVE-2009-1303+CVE-2009-1302: Crashes with evidence of memory + corruption (rv:1.9.0.9) + * MFSA 2009-15 aka CVE-2009-0652: URL spoofing with box drawing character + * MFSA 2009-10 aka CVE-2009-0040: Upgrade PNG library to fix memory safety hazards + * MFSA 2009-09 aka CVE-2009-0776: XML data theft via RDFXMLDataSource and cross-domain + redirect + * MFSA 2009-07 aka CVE-2009-0771,-0772,-0773,-0774: Crashes with evidence of memory + corruption (rv:1.9.0.7) + * MFSA 2009-01 aka CVE-2009-0352,CVE-2009-0353 Crashes with evidence of memory + corruption (rv:1.9.0.6) + * adjust patches to changed codebase + - update debian/patches/ubuntu-mail-app-xre-name + + -- Alexander Sack Wed, 01 Jul 2009 12:18:03 +0200 + +icedove (2.0.0.19-1) unstable; urgency=medium + + * New upstream security/stability update (v.2.0.0.18/2.0.0.19) Closes: 505563 + 2.0.0.18: + * MFSA 2008-48 aka CVE-2008-5012 - Image stealing via canvas and HTTP + redirect + * MFSA 2008-50 aka CVE-2008-5014 - Crash and remote code execution via + __proto__ tampering + * MFSA 2008-52 aka CVE-2008-5017 - Crashes with evidence of memory + corruption (rv:1.9.0.4/1.8.1.18); Browser engine crash in "Firefox 2 + and 3" + * MFSA 2008-52 aka CVE-2008-5018 - Crashes with evidence of memory + corruption (rv:1.9.0.4/1.8.1.18); JavaScript engine crash - "Firefox 2 + and 3" + * MFSA 2008-55 aka CVE-2008-5021 - Crash and remote code execution in + nsFrameManager + * MFSA 2008-56 aka CVE-2008-5022 - nsXMLHttpRequest::NotifyEventListeners() + same-origin violation + * MFSA 2008-58 aka CVE-2008-5024 - Parsing error in E4X default namespace + * MFSA 2008-59 aka CVE-2008-4582 - Script access to .documentURI and + .textContent in mail + 2.0.0.19: + * MFSA 2008-60 aka CVE-2008-5500 - Crashes with evidence of memory + corruption (rv:1.9.0.5/1.8.1.19); Layout engine crashes - Firefox 2 and 3 + * MFSA 2008-61 aka CVE-2008-5503 - Information stealing via + loadBindingDocument + * MFSA 2008-64 aka CVE-2008-5506 - XMLHttpRequest 302 response disclosure + * MFSA 2008-65 aka CVE-2008-5507 - Cross-domain data theft via script + redirect error message + * MFSA 2008-66 aka CVE-2008-5508 - Errors parsing URLs with leading + whitespace and control characters + * MFSA 2008-67 aka CVE-2008-5510 - Escaped null characters ignored by CSS + parser + * apply Maintainers, Uploaders changes done in 2.0.0.17 upload to + debian/control + - update debian/control + * adjust/refresh patches to changed upstream code + - update debian/patches/moz-app-name-as-mail-binary-name + - update debian/patches/autoconf2.13-rerun + + -- Alexander Sack Sat, 03 Jan 2009 16:27:42 +0100 + +icedove (2.0.0.17-1) unstable; urgency=low + + * New upstream security/stability update (v.2.0.0.17), Closes: #500721 + * MFSA 2008-37 aka CVE-2008-0016 - UTF-8 URL stack buffer overflow + * MFSA 2008-38 aka CVE-2008-3835 - nsXMLDocument::OnChannelRedirect() + same-origin violation + * MFSA 2008-41 aka CVE-2008-4058, CVE-2008-4059, CVE-2008-4060 - Privilege + escalation via XPCnativeWrapper pollution + * MFSA 2008-42 aka CVE-2008-4061, CVE-2008-4062, CVE-2008-4063, + CVE-2008-4064 - Crashes with evidence of memory corruption + (rv:1.9.0.2/1.8.1.17) + * MFSA 2008-43 aka CVE-2008-4065, CVE-2008-4066 - BOM characters, low + surrogates stripped from JavaScript before execution + * MFSA 2008-44 aka CVE-2008-4067, CVE-2008-4068 - resource: traversal + vulnerabilities + * MFSA 2008-46 aka CVE-2008-4070 - Heap overflow when canceling newsgroup + message + + [ Michael Casadevall ] + * debian/control: + - Changed maintainer to Ubuntu Mozillateam + - Added Uploaders to the team + - Set DM-Upload-Allowed + - Bumped standards version to 3.8.0 + + [ Alexander Sack ] + * Closes: #497491 - Icedove inappropriately sets file-/MIME-type + associations in .desktop database; we drop the Mime-Type= entry + from debian/icedove.desktop + - update debian/icedove.desktop + + -- Michael Casadevall Sat, 18 Oct 2008 09:07:20 -0400 + +icedove (2.0.0.16-1) unstable; urgency=low + + * New upstream security/stability update (v2.0.0.16) fixes: + * MFSA 2008-21 aka CVE-2008-2798 - Crashes with evidence of memory + corruption + * MFSA 2008-21 aka CVE-2008-2799 - Crashes with evidence of memory + corruption + * MFSA 2008-24 aka CVE-2008-2802 - Chrome script loading from fastload file + * MFSA 2008-25 aka CVE-2008-2803 - Arbitrary code execution in + mozIJSSubScriptLoader.loadSubScript() + * MFSA 2008-26 aka CVE-2008-0304 - (followup) Buffer length checks in MIME + processing + * MFSA 2008-29 aka CVE-2008-2807 - Faulty .properties file results in + uninitialized memory being used + * MFSA 2008-31 aka CVE-2008-2809 - Peer-trusted certs can use alt names to + spoof + * MFSA 2008-33 aka CVE-2008-2811 - Crash and remote code execution in block + reflow + * MFSA 2008-34 aka CVE-2008-2785 - Remote code execution by overflowing CSS + reference counter + + * Closes: #483938 - add .desktop file translations (contributed by Timo + Jyrinki ) + - update debian/icedove.desktop + + (cherry pick rev77 from lp:~mozillateam/thunderbird/thunderbird.dev branch) + * drop patches applied upstream + - drop debian/patches/bz419350_attachment_306066.patch + - update debian/patches/series + + (cherry pick rev78 from lp:~mozillateam/thunderbird/thunderbird.dev branch) + * adjust patches diverged upstream + - update debian/patches/ubuntu-look-and-feel-report-a-bug-menuitem + + (cherry pick rev80 from lp:~mozillateam/thunderbird/thunderbird.dev branch) + * Closes: #489093 - add explicit -lfontconfig to linker flags used for gfx/ps + module to fix ftbfs in intrepid + - add debian/patches/bzXXX_ftbfs_fontconfig.patch + - update debian/patches/series + + -- Alexander Sack Thu, 24 Jul 2008 17:38:51 +0200 + +icedove (2.0.0.14-1) unstable; urgency=medium + + * Upstream stability/security release, fixes + + MFSA 2008-15 aka CVE-2008-1236 - Crashes with evidence of memory corruption + (rv:1.8.1.13) - browser engine + + MFSA 2008-15 aka CVE-2008-1237 - Crashes with evidence of memory corruption + (rv:1.8.1.13) - javascript engine + + MFSA 2008-14 aka CVE-2008-1233, CVE-2008-1234, CVE-2008-1235 - JavaScript + privilege escalation and arbitrary code execution + * update debian/remove.nonfree script to pull branding from bzr branch hosted + at https://code.edge.launchpad.net/~mozillateam/thunderbird/icedove-branding-2.0.0.x + - update debian/remove.nonfree + * fix fallback https handler by adding pref("network.protocol-handler.app.https", + "x-www-browser") to default system preference file. (Closes: #460954) + - update debian/icedove.js + * drop patches applied upstream: + - delete debian/patches/bz399589_fix_missing_symbol_with_new_nss.patch + - update debian/patches/series + * fix broken reply-to-list extension (Closes: #439369) + - add debian/patches/replytolist_2.x.patch + - update debian/patches/series + * fix ftbfs on ia64 (Closes: #477281) + - add debian/patches/bz419350_attachment_306066.patch + - update debian/patches/series + * drop forced use of gcc/g++ 4.2 and use default compiler again; in turn we + drop gcc-4.2 and g++-4.2 from Build-Depends + - update debian/control + - update debian/rules + + -- Alexander Sack Fri, 09 May 2008 17:57:55 +0200 + +icedove (2.0.0.12-1) unstable; urgency=low + + * New Upstream stability/security release, fixes various advisories: + + CVE-2008-0416 aka MFSA 2008-13 Multiple XSS vulnerabilities from + character encoding + + CVE-2008-0304 aka MFSA 2008-12 Heap buffer overflow in external MIME + bodies + + CVE-2008-0418 aka MFSA 2008-05 Directory traversal via chrome: URI + + CVE-2008-0415 aka MFSA 2008-03 Privilege escalation, XSS, Remote Code + Execution + + CVE-2008-0412 and CVE-2008-0413 aka MFSA 2008-01 Crashes with evidence + of memory corruption (rv:1.8.1.12) - layout and javascript + * Fix severe problems for powerpc architecture, by reverting arch-detect + patch to introduce special behaviour only when FORCE_USE_HOST_OS is set in + environment. For now only s390 is special cased in rules - as thats the + architecture we introduced this patch for (Closes: #461981). + - update debian/rules + - debian/patches/arch-detect + * fix "FTBFS with libnss3-dev=3.12.0~beta2-1" by introducing symbols not + exported by new nss anymore. Reuse thunderbird patch from ubuntu. + (Closes: #470128) + - added debian/patches/bz399589_fix_missing_symbol_with_new_nss.patch + - update debian/patches/series + * add Vcs-Bzr: header to control pointing to the mozillateam packaging + branch https://code.launchpad.net/~mozillateam/thunderbird/icedove-2.0.0.x + - update debian/control + * introduce .autoreg feature and touch /usr/lib/icedove/.autoreg in + icedove-gnome-support.postinst and icedove-gnome-support.prerm iif that + file exists. + - update debian/rules + - added debian/icedove-gnome-support.postinst + - added debian/icedove-gnome-support.prerm + * Adjust multiple patches because of changed upstream code base + - update debian/patches/ubuntu-mail-app-xre-name + - update debian/patches/autoconf2.13-rerun + + -- Alexander Sack Sat, 05 Apr 2008 23:05:11 +0200 + +icedove (2.0.0.9-3) unstable; urgency=low + + * drop network.protocol-handler.external.http setting as it caused + regressions (Closes: 459564) + - update debian/icedove.js + + -- Alexander Sack Wed, 09 Jan 2008 18:56:28 +0100 + +icedove (2.0.0.9-2) unstable; urgency=low + + * pass host arch information to configure and trust the supplied architecture + information. Thanks to Bastian Blank. (Closes: 445959) + - update debian/rules + - add debian/patches/arch-detect + - update debian/patches/autoconf2.13-rerun + - update debian/patches/series + * use /usr/lib/icedove/icedove as gnome integration command used to update + gconf protocol handler. (Closes: 452919) + - add debian/patches/icedove_gnome_command + - update debian/patches/series + * prefer gnome registry to lookup protocol handler if we are in a gnome + session; in turn we enable x-www-browser as the http protocol by default + (Closes: 452882) + - add debian/patches/prefer_gnome_registry_in_gnome_session + - update debian/patches/series + - update debian/icedove.js + + -- Alexander Sack Sun, 30 Dec 2007 20:21:26 +0100 + +icedove (2.0.0.9-1) unstable; urgency=medium + + * new upstream stability/security update (v2.0.0.9): + - MFSA 2007-36 aka CVE-2007-4841: "URIs with invalid %-encoding mishandled + by Windows" + - MFSA 2007-29 aka CVE-2007-5339: "Crashes with evidence of memory + corruption (rv:1.8.1.8) - browser engine" + - MFSA 2007-29 aka CVE-2007-5340: "Crashes with evidence of memory + corruption (rv:1.8.1.8) - javascript engine" + * adapt adapt patches to new upstream codebase: + - drop debian/patches/bz389801_deb443454_fix_gtk_theme_crashes.patch + - update debian/patches/68_mips_performance.dpatch + - update debian/patches/series + - update debian/patches/autoconf2.13-rerun + * fix ftbfs due to changed cairo pc Requires: (Closes: 453179) + - add debian/patches/bz344818_att264996.patch + - update debian/patches/autoconf2.13-rerun + - update debian/patches/series + * add copyright file (Closes: 453365) + - add debian/copyright + * quote some if test ! ... lines to fix preinst errors (Closes: 427336) + - update debian/icedove.preinst + * update icedove menu section - use "Applications/Network/Communication" + (Closes: 444903) + - update debian/icedove.menu + * don't try to install debian/tmp/usr/lib/icedove/defaults/isp as its not + shipped by make install anymore + - update debian/icedove.install + + -- Alexander Sack Fri, 28 Dec 2007 16:05:05 +0100 + +icedove (2.0.0.6-1) unstable; urgency=low + + * new upstream release 2.0.0.6-1 fixes various security issues + (Closes: #444010): + - MFSA 2007-18 aka CVE-2007-3734, CVE-2007-3735 - Crashes with evidence of + memory corruption (rv:1.8.1.5). + - MFSA 2007-23 aka CVE-2007-3670 - Remote code execution by launching + Firefox from Internet Explorer (doesn't apply to linux). + - MFSA 2007-26 aka CVE-2007-3844 - Privilege escalation through + chrome-loaded about:blank windows. + - MFSA 2007-27 aka # CVE-2007-3845 - Unescaped URIs passed to external + programs. + * debian/patches/debian/patches/credits-rebranding: refresh patch because of + code-base change in new upstream release. + * debian/patche/bz389801_deb443454_fix_gtk_theme_crashes.patch,series: + import fix for theme crashes from bugzilla (Closes: 443454). + + -- Alexander Sack Mon, 08 Oct 2007 12:09:42 +0000 + +icedove (2.0.0.4.dfsg1-2) unstable; urgency=low + + * debian/patches/autoconf2.13-rerun: rerun to apply last commits + configure.in patch addition to configure. + * debian/patches/force-no-pragma-visibility-for-gcc-4.2_4.3, + debian/patches/series: don't use pragma for visibility as visibility + hints are not perfect yet in mozilla code base. + * debian/icedove.desktop: drop explicit .png extension from desktop icon name + * debian/icedove.desktop, debian/icedove.links, debian/icedove.menu: fix various + icon issues, by using /usr/share/icedove/icons/default.png instead of + mozicon128.png as source for standard icedove pixmaps link + (Closes: #427076, #437064, #437090). + * debian/control, debian/rules: use gcc-4.2 and g++-4.2 on all archs; add gcc-4.2 + and g++-4.2 to build-depends in control file. + * debian/icedove.links: provide usr/share/icedove/chrome/icons/default/messengerWindow16.png + as a link to usr/share/icedove/icons/mozicon16.png (Closes: #427723). + * debian/icedove.install, debian/icedove.links: install isp directories + /usr/share/icedove/isp and /usr/share/icedove/defaults/isp and link them to + pkglibdir accordingly (Closes: #428421). + + -- Alexander Sack Mon, 27 Aug 2007 23:48:53 +0200 + +icedove (2.0.0.4.dfsg1-1) unstable; urgency=low + + * debian/remove.nonfree: update list of non-free/binary-only file from + latest iceape updates" debian/remove.nonfree; update orig + tarball accordingly. (Closes: 400340) + * debian/control[.in]: icedove package now provides mail-reader, + imap-client, news-reader instead of www-browser (Closes: 425167) + + -- Alexander Sack Tue, 19 Jun 2007 15:00:12 +0200 + +icedove (2.0.0.4-1) unstable; urgency=low + + * stability/security upstream release 2.0.0.4 + - CVE-2007-2867 aka MFSA 2007-12 (l): Crashes with evidence of memory + corruption (rv:1.8.0.12/1.8.1.4) - layout engine + - CVE-2007-2868 aka MFSA 2007-12 (j): Crashes with evidence of memory + corruption (rv:1.8.0.12/1.8.1.4) - javascript engine + - CVE-2007-1558 aka MFSA 2007-15: Security Vulnerability in APOP + Authentication + * debian/patches/gcc-workaround-visibility-hidden, debian/patches/series: + applied upstream -> dropped visibility workaround patch + * debian/patches/gnome-mime-handling: updated patch for bz273524 in + response to upstream landing of bz373955 + * debian/patches/autoconf-regen: rerun autoconf accordingly + * debian/patches/82_prefs.dpatch|series: import default font fixes + from xulrunner 1.8.1.4-1 patchset (thanks to Mike Hommey + ) + * debian/control[.in]: libnss3-dev build-depend is now versioned + (Closes: 429202) + + -- Alexander Sack Mon, 18 Jun 2007 16:50:34 +0200 + +icedove (2.0.0.0-4) unstable; urgency=low + + * One that fix them all release - maybe. + * fix symlinks for chrome/greprefs/defaults in .preinst + (Closes: 425390, 425438, 425476, 425479, 425550, 425552, 425559, 425564, 425672, 425727, 426019) + * debian/control[.in]: fix section -> s/web/mail/ + + -- Alexander Sack Fri, 1 Jun 2007 13:13:13 +0200 + +icedove (2.0.0.0-3) unstable; urgency=low + + * fixing links in preinst (Closes: 424963, 425061, 425223) + greprefs, chrome and defaults need to point to + /usr/share/icedove/* + * drop searchplugin link which even had a typo :) + * debian/icedove.menu: ship debian menu entry + (Closes: 425224) + + -- Alexander Sack Sat, 20 May 2007 16:48:00 +0200 + +icedove (2.0.0.0-2) unstable; urgency=low + + * adding icedove-dbg package + + -- Alexander Sack Sat, 19 May 2007 17:33:00 +0200 + +icedove (2.0.0.0-1) unstable; urgency=low + + * icedovising + * add debian/remove.nonfree + * set upstream application fixed to 'thunderbird' in update-orig, + so you can just drop thunderbird tarball and produce new orig + * fix debian/control.in, drop transition packages. update debian/control + for these modifications. + * no autogen of configure and debian/control for release + + -- Alexander Sack Thu, 17 May 2007 14:00:00 +0200 + +thunderbird (1.99.rc1+2.0-1) feisty; urgency=low + + * branch firefox-trunk package for 2.0 thunderbird package + * debian/control.in, debian/control: add transition packages: + mozilla-thunderbird, mozilla-thunderbird-dev; disable dom-inspector + package as there is nearly no hope that it ever will get maintained + upstream again. + * debian/rules: remove inspector extension from configure; add excludes + to dh_install of thunderbird and thunderbird-dev package: + - + DEB_DH_INSTALL_ARGS_thunderbird := -Xgnome -Ximgicon -Xmozlibthai + DEB_DH_INSTALL_ARGS_thunderbird-dev := -Xnspr -Xnss + + -- Alexander Sack Wed, 18 Apr 2007 13:35:34 +0200 + +icedove (1.5.0.10.dfsg1-3) unstable; urgency=low + + * debian/icedove*.xpm updated to use correct icon + (Closes: 413976, 416476) + * debian/patches/25_gnome_helpers_with_params.dpatch: + Make helper applications with parameters work (bz#273524); + this is an improved version of bugzilla patch by Mike Hommey + + + -- Alexander Sack Wed, 28 Mar 2007 21:55:08 +0200 + +icedove (1.5.0.10.dfsg1-2) unstable; urgency=low + + * debian/tmpls-typeaheadfind/install.rdf: fix version depends of + typeaheadfind (Closes: 413770) + + -- Alexander Sack Wed, 7 Mar 2007 13:13:13 +0100 + +icedove (1.5.0.10.dfsg1-1) unstable; urgency=low + + * new upstream release fixing security issues: + - CVE-2007-0008, MFSA 2006-06: SSLv2 Client Integer Underflow + Vulnerability + - CVE-2007-0009, MFSA 2006-06: SSLv2 Server Stack Overflow + Vulnerability + - CVE-2007-0775, CVE-2007-0776, CVE-2007-0777, MFSA 2007-01: + Crashes with evidence of memory corruption + * 91_credits_icedove.dpatch: dump new xml entities from + credits dialog (Closes: 404984, 412423) + * 50_kbsd_nspr.dpatch, 50_kbsd.dpatch: adapt kbsd patches to apply to + latest upstream code-base + + [ Christian Perrier ] + + * Rewrite debconf templates to fit the current Developer's Reference + recommendations + * Correct the name of the debconf templates file in debian/po/POTFILES.in + Closes: #407220 + * Debconf translations: + - Bulgarian added. Closes: #410627 + - Basque updated. Closes: #410633 + - German updated. Closes: #410672 + - Catalan updated. Closes: #410676 + - Spanish updated. Closes: #410709 + - Galician updated. Closes: #410720, #407944 + - Japanese updated. Closes: #410753 + - Tamil added. Closes: #410892 + - Portuguese updated. Closes: #409562 + - Vietnamese updated. + - Malayalam added. Closes: #408109 + - Russian updated. Closes: #411064, #405741 + - Swedish. Closes: #410632 + - Polish. Closes: #411302 + - Fix typo in Italian translation. Closes: #363806 + - Romanian. Closes: #411361 + - Czech. Closes: #411409 + - Danish. Closes: #411402 + - Dutch. Closes: #411406 + - Italian. Closes: #411452 + - Brazilian Portuguese. Closes: #411538 + - Korean. Closes: #411624, #411581 + - Malayalam. Closes: #411647 + - Finnish. Closes: #411765 + + -- Alexander Sack Fri, 23 Feb 2007 09:00:00 +0100 + +icedove (1.5.0.10.dfsg1-1.1) unstable; urgency=low + + * Non-maintainer upload to fix pending l10n issues. + * Debconf translations: + - Italian fixed. Closes: #363806 + - Russian added. Closes: #405741 + - Galician added. Closes: #407944 + - Malayalam added. Closes: #408109 + - Portuguese updated. Closes: #409562 + + -- Christian Perrier Tue, 6 Feb 2007 06:55:08 +0100 + +icedove (1.5.0.9.dfsg1-1) unstable; urgency=high + + * new upstream version, fixes various security issues: + - CVE-2006-6497 mfsa2006-68 layout engine + - CVE-2006-6498 mfsa2006-68 javascript engine + - CVE-2006-6499 mfsa2006-68 floating point + - CVE-2006-6500 mfsa2006-69 + - CVE-2006-6501 mfsa2006-70 + - CVE-2006-6502 mfsa2006-71 + - CVE-2006-6503 mfsa2006-72 + - CVE-2006-6504 mfsa2006-73 + - CVE-2006-6505 mfsa2006-74 + - CVE-2006-6506 mfsa2006-75 + - CVE-2006-6507 mfsa2006-76 + * landing icedove artwork contributed by Ricardo Fernández + ; svgs are in debian/branding. xpms and some + pngs are generated with rsvg-convert and convert -> adding + build-depends to librsvg2-bin, imagemagick + * including es.po translation contributed by Felipe Caminos + (Closes: 402928) + * updateing pt_BR.po provided by André Luís Lopes + (Closes: 403827) + * adapting credits dialog and Icedove Motto in 91_credits_icedove.dpatch + * fix bad link in icedove manpage (icedove.sgml) (Closes: 398344) + * rebranding install.rdf of default theme for icedove in + 91_rebranding_theme.dpatch (Closes: 393134) + * adapt README.Debian to new icedove directories and name + * clean old/not-needed files from debian/ directory: + theme.part.defaultclassic, mail-jar.mn, messenger_jar_includes.csv + * disabling patch: 99_bz360409_deb400383, which is applied + upstream now. + + -- Alexander Sack Tue, 19 Dec 2006 12:00:00 +0100 + +icedove (1.5.0.8.dfsg1-1) unstable; urgency=medium + + * removing all currently known non-free and sourceless binaries + from source package by running the script included for + reference in debian/remove.nonfree from the gnuzilla project + (Closes: 400340) + * added upstream approved quickfix for grave bug in + debian/patches/99_bz360409_deb400383.dpatch (Closes: 400383) + * last chance kbsd upload ... reenabling kbsd patch with fix + by Petr Salinger (Closes: 399692) + * remove missed non-free icons from + debian/fhunderbird-branding.tmpl/ : background.png.uu, disk.icns.uu + + -- Alexander Sack Sun, 26 Nov 2006 19:00:00 +0100 + +icedove (1.5.0.8-3) unstable; urgency=low + + * disable kbsd patches in 00list because they appear to break + build on other platforms. In consequence, 399692 and 363865 + will be reopened. Reenable 90_ppc64-build-fix (Closes: 400090) + + -- Alexander Sack Mon, 22 Nov 2006 15:10:00 +0100 + +icedove (1.5.0.8-2) unstable; urgency=low + + * fix mozilla.in for real (for transitional thunderbird link + (Closes: 393123, 398037) + * apply basque debconf translation (eu.po) for real + (Closes: 398468) + * included nl.po provided by Nick Niktaris + renaming as icedove first (Closes: 378360) + * include greek translation in icedove.desktop provided by + Nick Niktaris (Closes: 384359) + * include updated de.po translation provided by + Alwin Meschede (Closes: 399083) + * apply FTBFS on GNU/kFreeBSD porters patch provided by + Petr Salinger (Closes: 399692), + which is claimed to provide a fix for ppc64 ftbfs too + (Closes: 363865) + * remove debug echo from icedove.preinst (Closes: 399723) + + -- Alexander Sack Mon, 21 Nov 2006 19:35:00 +0100 + +icedove (1.5.0.8-1) unstable; urgency=medium + + * new upstream version fixes various security issues + * added transition package: thunderbird-gnome-support + -> icedove-gnome-support as well as thunderbird-dbg + -> icedove-dbg (Closes: 393105) + * fix typo in postinst to fix browser integration scheme + recognition as selected by debconf (Closes: 393765, 398427) + * apply patch by Ted Percival to fix broken + transitional thunderbird symlink (Closes: 393123, 398037) + * apply patch by Andre Lehovich that fixes + icedove package description typos (Closes: 398468) + * add basque debconf translation (eu.po) provided by Piarres + Beobide (Closes: 398719) + * remove non-free rfc files from source tarball (Closes: 395095) + + -- Alexander Sack Wed, 15 Nov 2006 18:00:00 +0100 + +icedove (1.5.0.7-3) unstable; urgency=medium + + * unbrand thunderbird mail -> Icedove Mail/News due + to trademark issues (Closes: 354622) + + -- Alexander Sack Thu, 12 Oct 2006 13:00:00 +0100 + +thunderbird (1.5.0.7-2) unstable; urgency=low + + * go through new upload ... reenable thunderbird-dbg + * increase reference count for fontconfig charset + 91_fontconfig_reference_increment_388739 (Closes: 388739) + + -- Alexander Sack Wed, 27 Sep 2006 02:00:00 +0100 + +thunderbird (1.5.0.7-1) unstable; urgency=high + + * disabled new package to avoid queue new: thunderbird-dbg + * new upstream release fixes security issues: + + MFSA 2006-64 - CVE-2006-4571 + + MFSA 2006-63 - CVE-2006-4570 + + MFSA 2006-62 - CVE-2006-4569 + + MFSA 2006-61 - CVE-2006-4568 + + MFSA 2006-60 - CVE-2006-4340 (related to CVE-2006-4339) + + MFSA 2006-59 - CVE-2006-4253 + + MFSA 2006-58 - CVE-2006-4567 + + MFSA 2006-57 - CVE-2006-4565, CVE-2006-4566 + * disable patch 90_gcc-extern-fix, because it has been pulled in upstream + * disable 91_271815.overthespot.v1.2, because applied upstream + + -- Alexander Sack Fri, 15 Sep 2006 16:00:00 +0100 + +thunderbird (1.5.0.5-2) unstable; urgency=low + + * new package: thunderbird-dbg + + improve configure options + + enable svg + + use debian build options to determine optimization flags + * added build depends on libcairo-dev + + -- Alexander Sack Sat, 12 Aug 2006 15:00:00 +0100 + +thunderbird (1.5.0.5-1) unstable; urgency=high + + * new upstream release fixes various security flaws: + + MFSA 2006-44, CVE-2006-3801 + + MFSA 2006-46, CVE-2006-3113 + + MFSA 2006-47, CVE-2006-3802 + + MFSA 2006-48, CVE-2006-3803 + + MFSA 2006-49, CVE-2006-3804 + + MFSA 2006-50, CVE-2006-3805, CVE-2006-3806 + + MFSA 2006-51, CVE-2006-3807 + + MFSA 2006-52, CVE-2006-3808 + + MFSA 2006-53, CVE-2006-3809 + + MFSA 2006-54, CVE-2006-3810 + + MFSA 2006-55, CVE-2006-3811 + * including patch 91_271815.overthespot.v1.2.dpatch + (Closes: 379936, 363814) + * improve manpage: Document -g, --debug options (Closes: 381096) + * update for ja.po, contributed by Kenshi Muto + (Closes: 379946) + * update for pt.po, contributed by Rui Branco + (Closes: 381444) + * Provide virtual package news-reader (Closes: 363834) + * Apply patch which introduces ReplyToList MessageType. This is + the base to allow extensions that provide ReplyToList button to + get installed. Thanks to Armin Berres + for pointing out this unintrusive patch. (Closes: 381273) + * fix README.Debian for firefox integration as well as example of + global pref.js (firefox.js.tmpl) (Closes: 363723) + * further improvements for README.Debian + * fix gnome integration program path in a hard-coded fashion + in 91_gnome_path_fix.dpatch (Closes: 365610) + + -- Alexander Sack Sat, 12 Aug 2006 15:00:00 +0100 + +thunderbird (1.5.0.4-3) unstable; urgency=critical + + * fixing gcc-4.1 ftbfs (Closes: 377176) + * improved manpage by Bastian Kleineidam + documenting -safe-mode option (Closes: 370254) + * include *no xgot* patch for mips/mipsel contributed by + Thiemo Seufer (Closes: 374882) + + -- Alexander Sack Thu, 13 Jul 2006 15:00:00 +0100 + +thunderbird (1.5.0.4-2) unstable; urgency=critical + + * fix version in install.rdf for inspector and + typeaheafind (Closes: 374382) + * (last one was a new upstream release fixing + various security issues (Closes: 373878, 373553) + * urgency=critical + + -- Alexander Sack Mon, 19 Jun 2006 10:00:00 +0100 + +thunderbird (1.5.0.4-1) unstable; urgency=low + + * new upstream release fixing various security issues: + MFSA 2006-42, CVE-2006-2783: Web site XSS using BOM on UTF-8 pages + MFSA 2006-40, CVE-2006-2781: Double-free on malformed VCard + MFSA 2006-38, CVE-2006-2778: Buffer overflow in crypto.signText() + MFSA 2006-37, CVE-2006-2776: Remote compromise via content-defined + setter on object prototypes + MFSA 2006-35, CVE-2006-2775: Privilege escalation through XUL persist + MFSA 2006-33, CVE-2006-2786: HTTP response smuggling + MFSA 2006-32, CVE-2006-2779, CVE-2006-2780: Fixes for crashes with + potential memory corruption + MFSA 2006-31, CVE-2006-2787: EvalInSandbox escape (Proxy Autoconfig, + Greasemonkey) + * build depends: + + xorg-dev -> libx11-dev, libxt-dev, libxinerama-dev, + libxft-dev, libfreetype6-dev, libxrender-dev + + removed binutils, coreutils and po-debconf + * enable xinerama in debian/rules + * fixed lintian errors: + + do not depend on xorg dev meta package + + debhelper depend is now versioned + + changed package description(s) to not start with 'thunderbird' + + -- Alexander Sack Tue, 23 May 2006 15:00:00 +0100 + +thunderbird (1.5.0.2-3) unstable; urgency=low + + * patch-robbery from firefox package: + + removed old mips and arm patches + + added 50_arch_arm_fix + + added 50_arch_alpha_fix + + added 50_arch_m68k_fix + + added 50_arch_mips_Makefile_fix + + added 50_arch_mips_fix (Closes: 357755) + + added 50_arch_parisc_Makefile_fix + + added 50_arch_parisc_fix + * included install.rdf for default theme in extensions dir + (Closes: 363956) + * removed chrome.d locales.d extensions.d from var/lib/thunderbird + + -- Alexander Sack Tue, 16 May 2006 19:45:00 +0100 + +thunderbird (1.5.0.2-2) unstable; urgency=critical + + * debian/thunderbird.sgml. Greatly improved manpage for thunderbird, + thanks to Sam Morris for contributing this + (Closes: 361069) + * add missing build depend to sharutils to fix ftbfs (Closes: 365539) + * fix gnome-support package removing gnome dependencies from + pure thunderbird package. + * set urgency to critical which I forgot to set properly + for the last upload + + -- Alexander Sack Sat, 29 Apr 2006 14:00:00 +0100 + +thunderbird (1.5.0.2-1) unstable; urgency=low + + * removed enable xprint in order to build after X11R7 transition. + * removed xprint recommends from control file. + * 91_fontsfix_359763.dpatch: fix for 'thunderbird shows text illegibly' + for some encodings. (Closes: 359763) + * myspell is now depends (Closes: 357623) + * (re-)including 10_mips_optimization_patch + * debian/patches/90_ppc64-build-fix.dpatch: patch for + 'FTBFS (ppc64)', thanks to Andreas Jochens + for adding the final patch to the report. (Closes: 361036) + * Thanks to Bastian Kleineidam for + contributing: + * Standards version 3.6.2.1 + * Use debhelper v5 with debian/compat + * Remove unneeded thunderbird.conffiles now that debhelper v5 is used + * Remove CVS directories in debian/ + * Fix debian/changelog syntax errors, and convert to UTF-8 + * Fix bashism in debian/thunderbird.postrm, using 2> instead of &>. + * Add ${misc:Depends} to thunderbird* dependencies, fixing a missing + dependency on debconf + * Move db_input commands from postinst into a separate thunderbird.config + file. + * distinct gnome-support package added. adds a good bunch + of gnome build depends to allow module linking against + gnome libs. + * added new fhunderbird-branding in debian/fhunderbird-branding.tmpl + (Closes: 358198) + * use only one profile directory in configure + (Closes: 358378) + * Various security issues are fixed in this release. Namely: + CVE-2006-1741 CVE-2006-1742 CVE-2006-1737 CVE-2006-1738 + CVE-2006-1739 CVE-2006-1740 CVE-2006-1736 CVE-2006-1735 + CVE-2006-1734 CVE-2006-1733 CVE-2006-1732 CVE-2006-0749 + CVE-2006-1731 CVE-2006-1724 CVE-2006-0884 CVE-2006-1730 + CVE-2006-1729 CVE-2006-1728 CVE-2006-1727 CVE-2006-1045 + CVE-2006-0748 CVE-2006-1726 CVE-2006-1725 CVE-2005-2353 + CVE-2006-1529 CVE-2006-1530 CVE-2006-1531 CVE-2006-1723 + CVE-2006-0292/CVE-2006-0293 (Closes: 349242) + CVE-2006-0294 CVE-2006-0295 CVE-2006-0296 CVE-2006-0297 + CVE-2006-0298 CVE-2006-0299 + + -- Alexander Sack Thu, 20 Mar 2006 21:00:00 +0100 + +thunderbird (1.5-4) unstable; urgency=low + + * great package renaming release: mozilla-thunderbird -> thunderbird + * removed not maintained and not needed update-mozilla-thunderbird + facilities. Extensions/locales etc. don't need to call this anymore + in order to install themselves globally. + * added -fno-strict-aliasing -fno-unsigned-char as parameters to build + * patch: 10_visibility_hidden_patch.dpatch - by Adam Conrad + * new upstream version fixes various bugs + (Closes: 288601, 291912, 295662) + * included new fr.po translation by Mohammed Adnène Trojette + (Closes: 323367) + * included new cs.po translation by Jan Outrata + (Closes: 321736, 335354) + * included new pt.po translation by Traduz! + (Closes: 348440) + * included new da.po translation by Claus Hindsgaul + (Closes: 350687) + * added intl.locale.matchOS, true to debian/global-config.js instead + of hacking startup script + + -- Alexander Sack Tue, 28 Feb 2006 15:00:00 +0100 + +mozilla-thunderbird (1.5-2) experimental; urgency=low + + * reenable patch 20_mailnews_mime_makefile_in.dpatch + to export proper headers to -dev package for enigmail + * last upload with old package name + + -- Alexander Sack Thu, 12 Jan 2006 15:00:00 +0100 + +mozilla-thunderbird (1.5-1) experimental; urgency=low + + * experimental upload of 1.5 (Closes: 348007) + * major package housekeeping + + removed extension template pieces + + bye -offline extension release - this is now completely + integrated in thunderbird default install + + disable all patches ... but those that are obviously + needed - please shout if you got struck by a regression + due to this :). + + use upstream startup script in the hope that they + did fix it! + + branding removed again. Keep it white labeled - for + now. + + -- Alexander Sack Thu, 12 Jan 2006 15:00:00 +0100 + +mozilla-thunderbird (1.0.7-3) unstable; urgency=high + + * apply backported patch for amd64 (Closes: 332481,332484) + Thanks to Martin Sarsale + for testing and preparing the patch + + debian/patches/91_gcc4_imgLoader.fix.dpatch + * updated vietnam translation contributed by Clytie Siddall + (Closes: 324224) + * added swedish translation contributed by Daniel Nylander + (Closes: 331606) + + -- Alexander Sack Mon, 17 Oct 2005 23:30:00 +0100 + +mozilla-thunderbird (1.0.7-2) unstable; urgency=high + + * still high to indicate that security bugs have not been + fixed in etch. + * apply debian/patches/90_xptcinvoke_arm.dpatch to fix ftbfs on + arm/sid + + -- Alexander Sack Mon, 10 Oct 2005 19:00:00 +0100 + +mozilla-thunderbird (1.0.7-1) unstable; urgency=high + * MFSA-2005-57: IDN heap overrun + Summary: Tom Ferris reported a Firefox crash when processing a domain + name consisting solely of soft-hyphen characters. + Closes: - + CVE-Ids: CAN-2005-2871 + Bugzilla: 307259 + Issues addressed: + + CAN-2005-2871 - IDN heap overrun + * MFSA-2005-58: Accumulated vendor advisory for multiple vulnerabilities + Summary: Fixes for multiple vulnerabilities with an overall severity + of "critical" have been released in Mozilla Firefox 1.0.7 and + the Mozilla Suite 1.7.12 + Closes: - + CVE-Ids: CAN-2005-2701 CAN-2005-2702 CAN-2005-2703 CAN-2005-2704 + CAN-2005-2705 CAN-2005-2706 CAN-2005-2707 + Bugzilla: 300936 296134 297078 302263 299518 303213 304754 306261 + 306804 291178 300853 301180 302100 + Issues addressed: + + CAN-2005-2701 - Heap overrun in XBM image processing + + CAN-2005-2702 - Crash on "zero-width non-joiner" sequence + + CAN-2005-2703 - XMLHttpRequest header spoofing + + CAN-2005-2704 - Object spoofing using XBL + + CAN-2005-2705 - JavaScript integer overflow + + CAN-2005-2706 - Privilege escalation using about: scheme + + CAN-2005-2707 - Chrome window spoofing + + Regression fixes + * MFSA-2005-59: Command-line handling on Linux allows shell execution + -> was addressed in 1.0.6-4 already. Reverting upstream changes + to mozilla/mail/mozilla.in by copying debian/mozilla.in_1.0.6 over + to allow our patches to still apply. debian/patches/01_old_mozilla.in.dpatch + + -- Alexander Sack Sat, 1 Oct 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-4) unstable; urgency=high + + * now using bash to overcome possible security flaws of + our thunderbird start script (mozilla-thunderbird). Patch + by Florian Weimer + debian/mfsa_2005-59.debian.patch (Closes: 329664, 329667) + * added patch 50_ftbfs_alpha+arm+ia64_325536_fix.dpatch + to build on alpha, arm, and ia64 that now uses + __attribute__((used)) instead of ((unused)) by + Steve Langasek + (Closes: 325536) + * fix debsums error reported by Y Giridhar Appaji Nag + . Now removing files in postrm. + Further moved /usr/lib/mozilla-thunderbird/chrome/chrome.rdf + to the /var/... adding a link to the new location. + (Closes: 292475) + * added depends for system libs: mng, png, jpeg to not build with + unmaintained image included libs. + * modified 21_mozilla_in-patch.dpatch to recognize -mail as a -compose + alias. This makes thunderbird work well with current gnome default + mailto: command for thunderbird. Thanks to Sam Morris + for the workaround patch (Closes: 330168) + * still work left: fix window.open(); overlay problem. + added rejar-chrome.sh util script below debian. It + rejars .jar files by extracting paths given in + _jar_includes.csv from the .jar zip file + and zipping only those files to a new jar file again. Anyway, still + broken, thus disabled for this build. + (See: 306522) + + -- Alexander Sack Mon, 23 Sep 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-3) unstable; urgency=low + + * remove gcc-3.4 from amd64 build ... this time for sure + (Closes: 320723) + * remove special optimization flags for other archs too + + -- Alexander Sack Mon, 2 Aug 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-2) unstable; urgency=low + + * remove gcc-3.4 from amd64 build (Closes: 320723) + * added arabic po translation by Mohammed Adnène Trojette + (Closes: 320771) + + -- Alexander Sack Mon, 1 Aug 2005 17:00:00 +0100 + +mozilla-thunderbird (1.0.6-1) unstable; urgency=high + + * GCC/G++ 4.0 API transition upload. + * include 90_new_freetype_fix.dpatch to fix new freetype API + (Closes: 301481, 301481) - consumed from mozilla-firefox packages ... + thx to Eric Dorland + * include 90_gcc4_fix.dpatch + * fixes multiple security bugs (Closes: 318728) + CAN-2005-2270: Code execution through shared function objects + CAN-2005-2269: XHTML node spoofing + CAN-2005-2266: Same origin violation: frame calling top.focus() + CAN-2005-2265: Possible exploitable crash in InstallVersion.compareTo() + CAN-2005-2261: XML scripts ran even when Javascript disabled + CAN-2005-1532: Privilege escalation via non-DOM property overrides + CAN-2005-1160: Privilege escalation via DOM property overrides + CAN-2005-1159: Missing Install object instance checks + CAN-2005-0989: Javascript "lambda" replace exposes memory contents + * fix gdk_property_get problem that might cause a segfault (Closes: 317937) + patch by Loic Minier + debian/patches/gdk_property_get.dpatch + * fix CAN-2005-2353: insecure tmp file usage in run-mozilla.sh (Closes: 306893) + debian/patches/20_run-mozilla_sh_306893_fix.dpatch + * include german de.po translation (Closes: 318747) + by Alwin Meschede + * fixed whitespace in mozilla-thunderbird.templates (Closes: 308961) + hint by Clytie Siddall + * apply fix for seamonkey migration crash (Closes: 285728) + 90_mail_components_miration_src_nsSeamonkeyProfileMigrator_cpp + * fix 'find' in update-mozilla-thunderbird-chrome (Closes: 315588) + patch by Michael Spang + + -- Alexander Sack Thu, 21 Jul 2005 21:00:00 +0100 + +mozilla-thunderbird (1.0.2-3) unstable; urgency=high + + * last maybe sarge upload with urgency high, contains only + translations (po files + gnome .desktop file lines) + + cs translation by Jan Outrata + (Closes: 309023) + + fi translation by Matti Pöllä + (Closes: 303805) + + ja translation by Kenshi Muto + (Closes: 307005) + + pt_BR translation by Andre Luis Lopes + (Closes: 304261) + + vi translation by Clytie Siddall + (Closes: 308959) + + added missed translation entries in gnome .desktop files + for it, ko, pl + + -- Alexander Sack Thu, 02 Jun 2005 22:00:00 +0100 + +mozilla-thunderbird (1.0.2-2) unstable; urgency=low + + * fixed TYPO in 71_extensionManagerAutoReRegister.dpatch, + probably causing #302218 (Closes: 302218) + * extended patch 71_extensionManagerAutoReRegister.dpatch, + now checking components.ini timestamp instead of + compreg.dat timestamp. removing components.ini compreg.dat + and XUL.mfasl if global Extensions.rdf file is newer then + components.ini. Probably helping to fix #302218 too. + * renamed xprt-xprintorg recommends to xprint (Closes: 300975) + * (re-)enabled pref extension (Closes: 302130) + + -- Alexander Sack Thu, 31 Mar 2005 07:00:00 +0100 + +mozilla-thunderbird (1.0.2-1) unstable; urgency=medium + * new upstream version (Closes: 301542) fixes some + security issues according to upstream + (http://www.mozilla.org/projects/security/known-vulnerabilities.html) + 1.0.2 fixes the following security related issues. + + MFSA 2005-30 GIF heap overflow parsing Netscape extension 2 + MFSA 2005-25 Image drag and drop executable spoofing + MFSA 2005-21 Overwrite arbitrary files downloading .lnk twice + MFSA 2005-18 Memory overwrite in string library + MFSA 2005-17 Install source spoofing with user:pass@host + MFSA 2005-15 Heap overflow possible in UTF8 to Unicode conversion + + -- Alexander Sack Sun, 27 Mar 2005 16:00:00 +0100 + +mozilla-thunderbird (1.0-4) unstable; urgency=low + + * removed not needed build-deps: csh + * included debconf (and gnome .desktop file) translations for + various languages: (Closes: 292072, 294622, 291477, 292507) + + debian/po/fr.po (Mohammed Adnène TROJETTE , + Aurelien Jarno ) + + debian/po/nl.po (Luk Claes ) + + debian/po/ca.po (Jordi Mallach ) + + debian/po/ko.po (Yooseong Yang ) + + debian/po/it.po (Vittorio Palmisano ) + + debian/po/pl.po (Robert Luberda ) + * fixed startscript problem + - updated 21_mozilla_in-patch.dpatch - thanks to + Kevin B. McCarty + * moved code of component debCleanComp.js to + nsExtensionManager, so it can automatically restart the + application if needed. + This should again lower the probabilty that + some upgrade, downgrade of thunderbird or extensions + breaks the chrome or component registry in your profile + dir. + + -- Alexander Sack Sun, 13 Mar 2005 13:00:00 +0100 + +mozilla-thunderbird (1.0-3) unstable; urgency=low + + * first upload to official archive for tbird 1.0 + (first since 0.9-6) + * finally I decided to upload this package to unstable, + though there is a debian-legal discussion going on + about the mozilla trademark. Since it might take some + time until a solution is found, I decided to upload + as usual. + * started to debrand the app to 'Debian Thunderbird' + + -- Alexander Sack Sun, 16 Jan 2005 14:00:00 +0100 + +mozilla-thunderbird (1.0-2) unstable; urgency=low + + * Uninstall file and dummy-empty-file must not be empty + * Included latest patch for extension manager + * Included Jaap Haitsma icons (Closes: 257640) + * fixed regression compared to 0.9-6 official package + that had problems to build because empty files where + not included in diff.gz + + -- Alexander Sack Fri, 10 Dec 2004 23:00:00 +0100 + +mozilla-thunderbird (1.0-1) unstable; urgency=low + + * new upstream release - 1.0 (Closes: 284560) + * includes new icons as default theme + * changed start.html page to not use the mozilla partical + in the package naming. This app is now officially called + 'Debian Thunderbird' + * removed -O from sparch arch (See: 284532) + * README.Debian improved + * adapted new manpage inspired by Ralf Katz + + -- Alexander Sack Tue, 08 Dec 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-7) unstable; urgency=low + + * added debconf capability to define what browser + integration is wanted + -> added /etc/mozilla-thunderbird/auto-config.js + to store automatically generated configs by debconf + + -- Alexander Sack Thu, 24 Nov 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-6) unstable; urgency=low + + * fixed bug in preinst script by strictly testing + the existance of files before invoking mv + operations (Closes: 282186) + * fixed stupid upgrade bug in preinst script. + ls uses now -d to produce no garbage when + used as source for moving. This closes + a bug reported against enigmail, but is a + bug of the thunderbird package. This release + fixes it (Closes: 282505) + * still missing reply for current grave bug + 282506. I think this is due to the initial + upgrade problems. Those problem should not + occur anymore with the fixes of this packages + upgrade mechanism (Closes: 282506) + + -- Alexander Sack Thu, 24 Nov 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-5) unstable; urgency=low + + * added patch by Kevin B. McCarty + adds In-Reply-To mailto: link capability (Closes: 268055) + * late verification of bug fixed by preview package: + fixes: message editor steals keyboard focus (Closes: 274313) + + -- Alexander Sack Thu, 18 Nov 2004 12:00:00 +0100 + +mozilla-thunderbird (0.9-4) unstable; urgency=low + + * fixed upgrade bug - when /usr/lib/mozilla-thunderbird/extensions + is a link, remove it and create a directory for it! After that + move all extensions from /var/lib/mozilla-thunderbird/extensions + to the new folder. + * added example firefox-config.js.tmpl to use the new wrapper + script. This config should only be used if you are in a non + gconf capable window environment, e.g. pure openbox, etc. + See the README.Debian for further details on howto integrate + thunderbird properly. + * added uninstall and extension directory for default theme + extension. This should make it possible to remove the package + cleanly. + * Bug#280254: mozilla-thunderbird: Please package + thunderbird 0.9 (Closes: 280076) + * patch by Kevin McCarty , fixes + Subject munging if thunderbird is running (Closes: 263971) + * fixed: typo in welcome message for preview pane (Closes: 278690) + * thx to bug submitters that verified the fix of the following + bugs in my preview package at people.debian.org: + + Bug#277304: mozilla-thunderbird: thunderbird dies silently on + some mails (Closes: 277304) + + no sound when new mail arrives (Closes: 274044) + + Focus Problem when a filter is selected (Closes: 272157) + + "Get Mail" button fails intermittently on additional accounts + (Closes: 280482) + * added patch to fix /tmp/ file permissions during processing of + imap directory (Closes: 280363) + * cleaning up compreg.dat on Extensions.rdf change, so after + restart all troubles with this issue are gone (Closes: 273213) + * Already since 0.9-1, but I forgot to mention: + + set default smtp server option should work now + (Closes: 274177) + + with view filter: unread on, newly read messages are + not removed from the message list anymore (Closes: 275708) + * other bugs resolved by upstream: + + problems while threads refresh (Closes: 239203) + + Shortcuts conflict with ISO 14755 (Closes: 246916) + + -- Alexander Sack Mon, 15 Nov 2004 22:45:00 +0100 + +mozilla-thunderbird (0.9-3) unstable; urgency=low + + * rm -f /usr/lib/mozilla-thunderbird/extensions + in postinst if it is a link! After that move + stuff from /var/lib/mozilla-thunderbird/extensions + to /usr/lib/mozilla-thunderbird/extensions. + The rest will be done by update-mozilla-thunderbird-chrome + + -- Alexander Sack Thu, 11 Nov 2004 22:45:00 +0100 + +mozilla-thunderbird (0.9-2) unstable; urgency=low + + * fixed bad bug in mozilla-thunderbird.install, + that removed the fulls extensions dir + * fixed broken upgrade problem due to + mozilla-thunderbird-inspector that tried to + install resource files under /usr/lib/.../res, + but that is a link. Now storing under /usr/share/ + + -- Alexander Sack Wed, 10 Nov 2004 22:00:00 +0100 + +mozilla-thunderbird (0.9-1) unstable; urgency=low + + * new upstream version (0.9) + * include patch amd64: + by Frederik Schueler + -> use gcc-3.4,g++3.4 (Closes: 261365) + * pasting issues partially fixed (See: 279656) + * Local Folders needed, cannot be deleted anymore + (Closes: 226253) + * including great patch of Mike Hommey + who brought the final fix for the extension manager + problems; changed update-mozilla-thunderbird-chrome + according to the new -register capability + + -- Alexander Sack Wed, 10 Nov 2004 20:00:00 +0100 + +mozilla-thunderbird (0.8-3) unstable; urgency=medium + + * respin for new binutils version (Closes: 273354) + * removing essential and build-essential build + dependencies to: base-files, libc6-dev + * update-mozilla-thunderbird-chrome: output of find(s) + to /dev/null (Closes: 267661) + * included mozilla-thunderbird-compose script in docs + section + + -- Alexander Sack Sat, 26 Sep 2004 13:00:00 +0100 + +mozilla-thunderbird (0.8-2) unstable; urgency=medium + + * include good build_id during build fixes + upgrade problems + (Closes: 272175, 272182) + * fixed some startup-script regressions. Remote + commands are almost ready by upstream. Only + -compose argument is interpreted in a debian + specific way. Of course, locale settings + are still debian specific too. + * improved changelog to list important notes + for upgrading to 0.8 + * 10_mips_optimization_patch.dpatch: + thiemo seufers mips(el) workaround + removing CFLAGS="$CFLAGS -Wa,-xgot" and + CXXFLAGS="$CXXFLAGS -Wa,-xgot" and adding + inline when DEBUG is true (Closes: 272162). + + -- Alexander Sack Sat, 18 Sep 2004 21:00:00 +0100 + +mozilla-thunderbird (0.8-1) unstable; urgency=medium + + * new upstream version 0.8 + * fixes various security issues in sarge and sid + (Closes: 263752) + * hacked a tiny patch for nsExtensionManager.js.in bug that + lets thunderbird (and firefox) loop on startup if + launched with non-root account. + + -- Alexander Sack Fri, 17 Sep 2004 10:00:00 +0100 + +mozilla-thunderbird (0.7.3-6) unstable; urgency=high + + * still fixes the security bug in sarge (see #263752) + ... thus urgency=high + * applied 50_mozilla-thunderbird-xpcom-xptcall-mips.dpatch + provided by Thiemo Seufer + (Closes: 267017) + * removed as Uploader as he expressed + that he has no more time to co-maintaining this package. + Thanks for your work! + + -- Alexander Sack Sun, 12 Sep 2004 17:30:00 +0100 + +mozilla-thunderbird (0.7.3-5) unstable; urgency=high + + * ping tbird to find a running instance instead of searching + for lock file that could still be there after a crash (redone) + (Closes: 267144) + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Thu, 21 Aug 2004 14:00:00 +0100 + +mozilla-thunderbird (0.7.3-4) unstable; urgency=high + + * ping tbird to find a running instance instead of searching + for lock file that could still be there after a crash + (Closes: 267144) + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Thu, 21 Aug 2004 14:00:00 +0100 + +mozilla-thunderbird (0.7.3-3) unstable; urgency=high + + * extended patch for mips: 50_xpcom_xptcall_xptcstubs_asm_mips_s + (Closes: 266851) + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Thu, 19 Aug 2004 17:00:00 +0100 + +mozilla-thunderbird (0.7.3-2) unstable; urgency=high + + * included patch for mips: 50_xpcom_xptcall_xptcstubs_asm_mips_s + * made global-config.js more up to date (Closes: 261815) + * recommend myspell-en-us | myspell-dictionary (Closes: 265272) + * enigmail is now suggested and not recommended anymore + * still fixes the security bug in sarge ... thus urgency=high + + -- Alexander Sack Wed, 18 Aug 2004 16:00:00 +0100 + +mozilla-thunderbird (0.7.3-1) unstable; urgency=high + + * new upstream release 0.7.3 - fixes security issues + (Closes: 263752) + * changed maintainer email to debian address + * removing /var/lib/mozilla-thunderbird dir on purge + (Closes: 260212). + * reverting gcc-3.2 and g++-3.2 for hppa architecture to back to + default gcc/g++ compiler + * fixed package description of mozilla-thunderbird-inspector and + mozilla-thunderbird-offline (Closes: 260374, 260376) + * plain mozilla-thunderbird now opens Inbox window to front + instead of profile manager when already running (Closes: 259476) + + -- Alexander Sack Wed, 04 Aug 2004 20:00:00 +0100 + +mozilla-thunderbird (0.7.1-3) unstable; urgency=low + + * updated README.Debian to be more specific + on the lost profile workaround! + * added 10_profile_migration.dpatch to fix + profile migration issues (Closes: 258741, 258747) + * updated .desktop file Comment (Closes: 257596) + * trying gcc-3.2 and g++-3.2 for hppa architecture + + -- Alexander Sack Tue, 13 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7.1-2) unstable; urgency=low + + * added 10_profile_migration.dpatch to fix + profile migration issues (Closes: 258741, 258747) + * updated .desktop file Comment (Closes: 257596) + * trying gcc-3.2 and g++-3.2 for alpha and amd64 + architecture + + -- Alexander Sack Mon, 12 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7.1-1) unstable; urgency=low + + * new upstream source 0.7.1 (Closes: 257320, 256843) + * fixed broken theme ID + * include extension descriptions and set them + to locked + * fixed typo in branding patch ( Hompage ->Homepage ) + * included movemail for handling local mail (Closes: 219893) + * provides new mozilla-thunderbird-dev + * does not build enigmail anymore. enigmail has got its + own source package for now. Hopefully this package will + build soon against mozilla-mailnews and mozilla-thunderbird, + so only one package is needed for both. + * update-mozilla-thunderbird-chrome: LD_LIBRARY_PATH bug fixed + (Closes: 254144) + * verified that -compose mailto:email@host.com works (Closes: 252261) + * include upgrade info in README.debian. Documented + new global-config.js file in README.debian too (Closes: 253315) + * crash on corrupt bmp fixed by upstream (Closes: 248857) + * added Provides: mail-reader, imap-client (Closes: 257199) + * renamed menu entry to 'Thunderbird Mail' (Closes: 257596) + + -- Alexander Sack Mon, 5 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7.1-0.0.asac1) unstable; urgency=low + + * new upstream source 0.7.1 + * fixed broken theme ID + * include extension descriptions and set them + to locked + * fixed typo in branding patch ( Hompage ->Homepage ) + * included movemail for handling local mail + + -- Alexander Sack Thu, 1 Jul 2004 11:00:00 +0100 + +mozilla-thunderbird (0.7-0.0.asac1) unstable; urgency=low + + * new upstream source 0.7 + * provides new mozilla-thunderbird-dev + * does not build enigmail anymore. enigmail has got its + own source package for now. Hopefully this package will + build soon against mozilla-mailnews and mozilla-thunderbird, + so only one package is needed for both. + * update-mozilla-thunderbird-chrome: LD_LIBRARY_PATH bug fixed + (Closes: 254144) + * verified that -compose mailto:email@host.com works (Closes: 252261) + * include upgrade info in README.debian (Closes: 253315) + * crash on corrupt bmp fixed by upstream (Closes: 248857) + + -- Alexander Sack Wed, 23 Jun 2004 11:00:00 +0100 + +mozilla-thunderbird (0.6-asac1) unstable; urgency=low + + * new binary package for development files + mozilla-thunderbird-dev + * mozilla-thunderbird now Provides: mail-reader and imap-client + + -- Alexander Sack Tue, 08 Jun 2004 15:00:00 +0100 + +mozilla-thunderbird (0.6-3) unstable; urgency=low + + * added libx11-dev, libxp-dev, libxt-dev to Build-Depends + * removed xlibs-dev from Build-Depends + * fixed typo in starting screen (Closes: 249850) + * removed duplicate readme file (Closes: 247162) + * added readme file upgrade note to remove the + chrome.rdf in the users profile directory after + upgrade. + + -- Alexander Sack Thu, 03 Jun 2004 00:20:00 +0100 + +mozilla-thunderbird (0.6-2) unstable; urgency=low + + * Fix missing build-dep on xlibs-dev, causing FTBFS errors + (closes: Bug#251166) + + -- Soeren Boll Overgaard Fri, 28 May 2004 11:02:07 +0000 + +mozilla-thunderbird (0.6-1) unstable; urgency=low + * accumulated changelog: 0.6-0.1rc1 + 0.6-0.1rc2 + * repackaged upstream source tarball to not-include + non-free icons of the trademarked new branding + * changed menu icon size to 32x32 + * added suggestions for mozilla-thunderbird-typeaheadfind + mozilla-thunderbird-offline and mozilla-thunderbird-inspector + * new upstream version: 0.6 + * MAP users can now benefit from support for the IMAP IDLE command + which allows the mail server to push notifications such as new + mail arriving as soon as it arrives (Closes: 232544) + * Thunderbird supports server wide news filters that apply to all + news groups on a server + * Mail filters can now mark messages as junk + * Offline support is now available as an extension package + (Closes: 231920) + * Command line parsing problems fixed (Closes: 232342) + * Find broken in view source is fixed (Closes: 232580) + * Alerts and crash when deleting multiple nested + folders inside the trash folder is fixed (Closes: 237705, 244414) + * shift-c selects all as read (Closes: 245039) + * menu hint changed to mail (Closes: 246211) + * Alt-A selects all messages (Closes: 229518) + * typeahead find extension added as extra package + (Closes: 232562) + * suggesting mozilla-firefox now (Closes: 240708, 234918) + * changed mozilla-thunderbird.xpm to envelope with flames + (Closes: 243028) + * new enigmail upstream version included (0.86.6), + (Closes: 235553) + * now bulding with -O2 on all platforms, but ia64, arm, + sparc, alpha, powerpc + * global enigmail config file now in + /etc/mozilla-thunderbird/pref/enigmail.js + * new binary targets: + mozilla-thunderbird-inspector, + mozilla-thunderbird-offline, + mozilla-thunderbird-typeaheadfind + * restructured conffiles: now a single global config + file exists: /etc/mozilla-thunderbird/global-config.js, + which may be used by admins to make their + preconfigurations. + Old config files in /etc/mozilla-thunderbird/pref + will be reserved till next --purge + + -- Alexander Sack Sat, 08 May 2004 08:45:00 +0100 + +mozilla-thunderbird (0.5+.040427-1) unstable; urgency=low + + * new snapshot of 040427 + * added build depend: libgnomevfs2-dev + * increased debian policy standard version to 3.6.1 + + -- Alexander Sack Tue, 27 Apr 2004 12:45:00 +0100 + +mozilla-thunderbird (0.5+.040418-1) unstable; urgency=low + + * new snapshot of 040418 + * changed desktop icon to envelope with flames (Closes: 243028) + + -- Alexander Sack Sun, 18 Apr 2004 12:45:00 +0100 + +mozilla-thunderbird (0.5+.040412-1) unstable; urgency=low + + * new snapshot of 040412 + * Updated enigmail to 0.83.6 + + -- Alexander Sack Mon, 12 Apr 2004 01:37:00 +0100 + +mozilla-thunderbird (0.5+.040330-1) unstable; urgency=low + + * new snapshot of 040320 + * Updated enigmail to 0.83.5 (Closes: 235553) + + -- Alexander Sack Tue, 30 Mar 2004 17:30:20 +0100 + +mozilla-thunderbird (0.5-4) unstable; urgency=low + + * reenabled hppa patch, which apparently led to FTBFS on hppa + + -- Alexander Sack Thu, 04 Mar 2004 21:30:20 +0100 + +mozilla-thunderbird (0.5-3) unstable; urgency=medium + + * preinst added to allow clean upgrade path to this + (Closes: 234118, Closes: 234267) + * added prerm script to allow a clean remove of package + + -- Alexander Sack Sun, 29 Feb 2004 10:30:20 +0100 + +mozilla-thunderbird (0.5-2) unstable; urgency=low + + * new source package layout!! Now using orig.tar.gz with diff.gz + (Closes: 232055) + * moved arch-indep chrome stuff to /usr/share/mozilla-thunderbird/chrome + * moved images to /usr/share/mozilla-thunderbird/res + /usr/share/mozilla-thunderbird/icons + /usr/share/mozilla-thunderbird/chrome/icons + + -- Alexander Sack Thu, 19 Feb 2004 19:30:20 +0100 + +mozilla-thunderbird (0.5-1.1) unstable; urgency=low + + * new source package layout!! Now using orig.tar.gz with diff.gz + + -- Alexander Sack Mon, 11 Feb 2003 19:30:20 +0100 + +mozilla-thunderbird (0.5-1) unstable; urgency=low + + * Aggregated changes since 0.4-1: + * new upstream release 0.5 included + * added xprt-xprintorg to Recommends (Closes: 226626) + * upgraded enigmail to 0.83.2 (Closes: 228678) + + includes a workaround for mozilla bug + leading to a crash in rare situations + (fixed in 0.82.6) + * improved package structure. Sources now are included as original archives + & are extracted to build-dir. (Closes: 225033) + * Minor wording changes in package description, pointed out by + Mark Stevenson. + * New debianization of appearance (branding) + * added switches for pref.js config entries for + individual doubleclick timeout & drag threshold + settings in gtk2 (Closes: 229146) + + -- Alexander Sack Mon, 09 Feb 2003 19:30:20 +0100 + +mozilla-thunderbird (0.5-0.1) unstable; urgency=low + + * preview of thunderbird-0.5 rc2 + + -- Alexander Sack Mon, 07 Feb 2003 19:30:20 +0100 + +mozilla-thunderbird (0.4-1.6) unstable; urgency=low + + * added basic gtk settings as mozilla prefs: + + widget.gtk2.dnd.threshold - treshold in pixel before a drag starts + + widget.gtk2.double_click_timeout - + maximum time in milliseconds between two clicks + to become recognized as double-click e.g. to get + rid of unexpected folder moves, etc. + * upgraded enigmail to 0.83.2 + + -- Alexander Sack Mon, 05 Feb 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.5) unstable; urgency=low + + * added xprt-xprintorg to Recommends + * upgraded enigmail to 0.83.1 + + -- Alexander Sack Mon, 04 Feb 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.4) unstable; urgency=low + + * improved package structure. Sources now are included as original archives + & are extracted to build-dir. (Closes: 225033) + * late checkin. Already uploaded to mentors + + -- Alexander Sack Mon, 27 Jan 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.31) unstable; urgency=low + + * Minor wording changes in package description, pointed out by + Mark Stevenson. + + -- Soeren Boll Overgaard Wed, 14 Jan 2004 12:46:23 +0000 + +mozilla-thunderbird (0.4-1.3) unstable; urgency=low + + * further debinized branding. updated 10_debian-branding patch + * do not use MOZILLA_FIVE_HOME. Always set the MOZILLA_FIVE_HOME + correctly. -> This is not anymore mozilla suite, so it is obsolete. + + -- Alexander Sack Mon, 06 Jan 2003 10:30:20 +0100 + +mozilla-thunderbird (0.4-1.2) unstable; urgency=low + + * updated enigmail to 0.82.6 - includes a workaround for mozilla bug + leading to a crash. + + -- Alexander Sack Mon, 30 Dec 2003 20:30:20 +0100 + +mozilla-thunderbird (0.4-1.1) unstable; urgency=low + + * switched to .orig.tgz file approach + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-1) unstable; urgency=low + + * version for first debian official upload of 0.4 + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-0.3) unstable; urgency=low + + * updated latest enigmail source to version 0.82.5 + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-0.2) unstable; urgency=low + + * added locale support: default locale is en-US + + -- Alexander Sack Mon, 12 Dec 2003 00:30:20 +0100 + +mozilla-thunderbird (0.4-0.1) unstable; urgency=low + + * upgraded official 0.4 release + * browser integration works on gnome/kde + * new mozilla-theme + * latest engimail included + + -- Alexander Sack Mon, 10 Nov 2003 00:30:20 +0100 + +mozilla-thunderbird (0.3-7) unstable; urgency=low + + * added patches for hppa & alpha, arm & mips specfic stuff. took the patches from + the debian mozilla package + + -- Alexander Sack Mon, 10 Nov 2003 00:30:20 +0100 + +mozilla-thunderbird (0.3-6) unstable; urgency=low + + * added patch to switch from ex to sed which certainly won't + have terminal problems + * added .desktop file for menu integration in gnome, kde, etc. + + -- Alexander Sack Sun, 2 Nov 2003 22:23:40 +0100 + + +mozilla-thunderbird (0.3-5) unstable; urgency=low + + * Alexander Sack: + - added build depend nvi. + * Soeren Boll Overgaard + - added dependency on gnupg for enigmail. + + -- Alexander Sack Thu, 29 Oct 2003 21:00:59 +0200 + +mozilla-thunderbird (0.3-4) unstable; urgency=low + + * Soeren Boll Overgaard: + - Improve wording in long descriptions. + - Fix dependency problem of the enigmail-package. + + -- Soeren Boll Overgaard Tue, 28 Oct 2003 17:08:55 +0100 + +mozilla-thunderbird (0.3-3) unstable; urgency=low + + * Build-depend on m4 + * Actually do something in binary-arch + * asac: Applied Patch for myspell issue (closes: Bug#217555) + * fixed mozilla-thunderbird.sgml according to docbook DTD (closes: Bug#217708) + + -- Soeren Boll Overgaard Sun, 26 Oct 2003 23:24:25 +0100 + +mozilla-thunderbird (0.3-2) unstable; urgency=low + + * Build-depend on dpatch. + + -- Soeren Boll Overgaard Sun, 26 Oct 2003 13:26:31 +0100 + +mozilla-thunderbird (0.3-1) unstable; urgency=low + + * Make my name look right in Uploaders. + * Change version to one suited to Debian. + * Update standards version to 3.6.1 (No changes). + + -- Soeren Boll Overgaard Sun, 26 Oct 2003 09:38:24 +0000 + +mozilla-thunderbird (0.3-0.3) unstable; urgency=low + + * readded forgotten patch hunks + + -- Alexander Sack Thu, 24 Oct 2003 09:00:59 +0200 + +mozilla-thunderbird (0.3-0.2) unstable; urgency=low + + * New upstream release + * latest patches of mozilla-thunderbird-0.2-3 are included + + -- Alexander Sack Thu, 21 Oct 2003 20:55:59 +0200 + +mozilla-thunderbird (0.2-3) unstable; urgency=low + + * fixed sudo bug (closes: Bug#216469) + * repackaging because of enigmail build exception + + -- Alexander Sack Wed, 15 Oct 2003 17:56:59 +0200 + +mozilla-thunderbird (0.2-2) unstable; urgency=low + + * Don't limit archs to i386. + + -- Soeren Boll Overgaard Sat, 18 Oct 2003 10:27:05 +0000 + +mozilla-thunderbird (0.2-1) unstable; urgency=low + + * restarted versioning for official debian upload + * Uploaded by S. Boll Overgaard + - Closes thunderbird ITP (closes: Bug#196504) + + -- Alexander Sack Wed, 15 Oct 2003 17:56:59 +0200 + +mozilla-thunderbird (0.3-0.1) unstable; urgency=low + + * New upstream release + + -- Alexander Sack Thu, 16 Oct 2003 10:51:59 +0200 + +mozilla-thunderbird (0.2asac-5) unstable; urgency=low + + * some more lintian cleaning of source package + * added boll@debian.org as co-maintainer + * reduction of build depends redundancy + + -- Alexander Sack Wed, 15 Oct 2003 17:56:50 +0000 + +mozilla-thunderbird (0.2asac-4) unstable; urgency=low + + * minimized build-depends & removed version constraints from build-deps to ease backporting + * added lintian override + * added long description for enigmail + * adjusted preference directory to $HOME/.mozilla-thunderbird + + -- Alexander Sack Mon, 13 Oct 2003 20:53:45 +0000 + +mozilla-thunderbird (0.2asac-3) unstable; urgency=low + + * needed to get the the source archive up again :( + + -- Alexander Sack Thu, 9 Oct 2003 18:51:01 +0200 + +mozilla-thunderbird (0.2asac-2) unstable; urgency=high + + * fixed the build procedure for enigmail binary package + + -- Alexander Sack Tue, 7 Oct 2003 23:04:01 +0200 + +mozilla-thunderbird (0.2asac-1) unstable; urgency=low + + * New upstream release + * added binary package mozilla-thunderbird-enigmail + * now update-chrome enabled + * startup hooks (currently for enigmail) allowed in + /var/lib/mozilla-thunderbird/startup-hooks.d + + -- Alexander Sack Fri, 3 Oct 2003 22:16:05 +0200 + +mozilla-thunderbird (0.2-5) unstable; urgency=low + + * changed menu entry image to gif image of size 32x32 -> lintian --check + tested + * added manual pages for mozilla-thunderbird & thunderbird + * remove mozilla-thunderbird-config from binary package + + -- Alexander Sack Thu, 2 Oct 2003 02:30:44 +0200 + +mozilla-thunderbird (0.2-4) unstable; urgency=low + + * fixed conflict with snapshot build + + + -- Alexander Sack Wed, 1 Oct 2003 16:50:33 +0200 + +mozilla-thunderbird (0.2-3) unstable; urgency=low + + * apply quickfix for bug #212604 (bugzilla.mozilla.org) + -> firebird ist remote startable even if thunderbird is + running + * added basic man pages + + -- Alexander Sack Wed, 1 Oct 2003 12:21:04 +0200 + +mozilla-thunderbird (0.2-2) unstable; urgency=low + + * corrected menu entry command to thunderbird + + -- Alexander Sack Thu, 25 Sep 2003 12:00:36 +0200 + +mozilla-thunderbird (0.2-1) unstable; urgency=low + + * Initial Release. + + -- Alexander Sack Wed, 24 Sep 2003 18:55:50 +0200 diff --git a/compat b/compat new file mode 100644 index 0000000000..f599e28b8a --- /dev/null +++ b/compat @@ -0,0 +1 @@ +10 diff --git a/control b/control new file mode 100644 index 0000000000..7d6b14d5c1 --- /dev/null +++ b/control @@ -0,0 +1,2329 @@ +Source: thunderbird +Section: mail +Priority: optional +Maintainer: Carsten Schoenert +Uploaders: + Christoph Goehre , +Build-Depends: + autoconf2.13, + bash-completion, + bzip2, + cargo (>= 0.42), + cbindgen (>= 0.14), + clang, + debhelper (>= 10.2.5~), + dh-apparmor, + dh-exec, + dpkg (>= 1.16.18~), + dpkg-dev (>= 1.16.18~), + libasound2-dev [linux-any], + libatk-adaptor, + libbotan-2-dev (>= 2.8.0), + libbz2-dev, + libcairo2-dev (>= 1.10.2-1.1~), + libclang-dev, + libdbus-glib-1-dev (>= 0.60), + libevent-dev (>= 1.4.1), + libffi-dev, + libfontconfig1-dev, + libglib2.0-dev (>= 2.22.0), + libgtk2.0-dev, + libgtk-3-dev (>= 3.4), + libjson-c-dev (>= 0.11), + libhunspell-dev (>= 1.5.1~), + libidl-dev (>= 0.8.0), + libiw-dev [linux-any], + libnotify-dev, + libpng-dev, + libpulse-dev, + libreadline-dev, + libstartup-notification0-dev, + libvpx-dev (>= 1.5.0), + libx11-dev, + libx11-xcb-dev, + libxau-dev, + libxft-dev, + libxt-dev, + llvm-dev, + mesa-common-dev, + mozilla-devscripts, + nodejs (>= 10.19.0), + python3, + rustc (>= 1.41), + unzip, + yasm (>= 1.1), + zip, + zlib1g-dev, +Vcs-Git: https://salsa.debian.org/mozilla-team/thunderbird.git +Vcs-Browser: https://salsa.debian.org/mozilla-team/thunderbird +Homepage: https://www.thunderbird.net/ +X-Debian-Homepage: http://wiki.debian.org/Thunderbird +Standards-Version: 4.5.0 + +Package: thunderbird +Architecture: amd64 arm64 armhf i386 mips64el ppc64el s390x ppc64 +Depends: + debianutils (>= 1.16), + fontconfig, + psmisc, + x11-utils, + ${misc:Depends}, + ${shlibs:Depends}, +Recommends: + myspell-en-us | hunspell-dictionary | myspell-dictionary, +Suggests: + apparmor, + fonts-lyx, + libgssapi-krb5-2, + libgtk2.0-0, +Provides: + lightning (= ${binary:Version}), + mail-reader, +Breaks: + birdtray (<< 1.7.0+ds-1~), + calendar-google-provider (<=1:68.2.1-1), + enigmail (<< 2:2.2.0~), + jsunit (<< 0.2.2-1~), + lightning (<< 1:76.0~b1-1~), + webext-compactheader (<= 3.0.0~), + xul-ext-dispmua (<= 1.8.4.6-1), + webext-exteditor (<= 2.0.4-1), + xul-ext-firetray (<= 0.6.1+dfsg-1.2), + xul-ext-quotecolors (<=0.3-6), + xul-ext-sieve (<= 0.3.1+dfsg-1~), + webext-sogo-connector (<= 68.0.1-2~), +Replaces: + lightning (<< 1:76.0~b1-1~), +Description: mail/news client with RSS, chat and integrated spam filter support + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + It supports different mail accounts, no matter of the used protocol like + POP(s) or IMAP(s), has an integrated learning Spam filter, and offers easy + organization of mails with tagging and virtual folders. Also, more features + can be added by installing extensions. + . + Thunderbird also includes an integrated calendar for handling events, events + invitations and tasks in multiple calendars. It supports local calendars, + CalDAV and plain ics files on CardDAV and WebDAV. + . + The goal of Thunderbird is to produce a cross platform standalone mail + application using the XUL user interface language. + +Package: lightning +Architecture: all +Section: oldlibs +Depends: + thunderbird (>= ${binary:Version}), + ${misc:Depends}, +Description: Calendar Extension for Thunderbird - Transitional package + Lightning is the calendar extension for Thunderbird. It can handle events, + event invitations and tasks in multiple calendars. + . + It supports local calendars, CalDAV and plain ics files on CardDAV and WebDAV. + . + This is a transitional package that pulls in the required package for + lightning. It can be safely removed. + +Package: thunderbird-l10n-all +Architecture: all +Section: metapackages +Depends: + thunderbird-l10n-ar (>= ${binary:Version}), + thunderbird-l10n-ast (>= ${binary:Version}), + thunderbird-l10n-be (>= ${binary:Version}), + thunderbird-l10n-bg (>= ${binary:Version}), + thunderbird-l10n-br (>= ${binary:Version}), + thunderbird-l10n-ca (>= ${binary:Version}), + thunderbird-l10n-cak (>= ${binary:Version}), + thunderbird-l10n-cs (>= ${binary:Version}), + thunderbird-l10n-cy (>= ${binary:Version}), + thunderbird-l10n-da (>= ${binary:Version}), + thunderbird-l10n-de (>= ${binary:Version}), + thunderbird-l10n-dsb (>= ${binary:Version}), + thunderbird-l10n-el (>= ${binary:Version}), + thunderbird-l10n-en-gb (>= ${binary:Version}), + thunderbird-l10n-es-ar (>= ${binary:Version}), + thunderbird-l10n-es-es (>= ${binary:Version}), + thunderbird-l10n-et (>= ${binary:Version}), + thunderbird-l10n-eu (>= ${binary:Version}), + thunderbird-l10n-fi (>= ${binary:Version}), + thunderbird-l10n-fr (>= ${binary:Version}), + thunderbird-l10n-fy-nl (>= ${binary:Version}), + thunderbird-l10n-ga-ie (>= ${binary:Version}), + thunderbird-l10n-gd (>= ${binary:Version}), + thunderbird-l10n-gl (>= ${binary:Version}), + thunderbird-l10n-he (>= ${binary:Version}), + thunderbird-l10n-hr (>= ${binary:Version}), + thunderbird-l10n-hsb (>= ${binary:Version}), + thunderbird-l10n-hu (>= ${binary:Version}), + thunderbird-l10n-hy-am (>= ${binary:Version}), + thunderbird-l10n-id (>= ${binary:Version}), + thunderbird-l10n-is (>= ${binary:Version}), + thunderbird-l10n-it (>= ${binary:Version}), + thunderbird-l10n-ja (>= ${binary:Version}), + thunderbird-l10n-ka (>= ${binary:Version}), + thunderbird-l10n-kab (>= ${binary:Version}), + thunderbird-l10n-kk (>= ${binary:Version}), + thunderbird-l10n-ko (>= ${binary:Version}), + thunderbird-l10n-lt (>= ${binary:Version}), + thunderbird-l10n-ms (>= ${binary:Version}), + thunderbird-l10n-nb-no (>= ${binary:Version}), + thunderbird-l10n-nl (>= ${binary:Version}), + thunderbird-l10n-nn-no (>= ${binary:Version}), + thunderbird-l10n-pl (>= ${binary:Version}), + thunderbird-l10n-pt-br (>= ${binary:Version}), + thunderbird-l10n-pt-pt (>= ${binary:Version}), + thunderbird-l10n-rm (>= ${binary:Version}), + thunderbird-l10n-ro (>= ${binary:Version}), + thunderbird-l10n-ru (>= ${binary:Version}), + thunderbird-l10n-si (>= ${binary:Version}), + thunderbird-l10n-sk (>= ${binary:Version}), + thunderbird-l10n-sl (>= ${binary:Version}), + thunderbird-l10n-sq (>= ${binary:Version}), + thunderbird-l10n-sr (>= ${binary:Version}), + thunderbird-l10n-sv-se (>= ${binary:Version}), + thunderbird-l10n-tr (>= ${binary:Version}), + thunderbird-l10n-uk (>= ${binary:Version}), + thunderbird-l10n-uz (>= ${binary:Version}), + thunderbird-l10n-vi (>= ${binary:Version}), + thunderbird-l10n-zh-cn (>= ${binary:Version}), + thunderbird-l10n-zh-tw (>= ${binary:Version}), + ${misc:Depends}, +Description: All language packages for Thunderbird (meta) + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package is a metapackage depending on all available localization of + Thunderbird. + +Package: thunderbird-l10n-ar +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ar +Replaces: + lightning-l10n-ar (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ar (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ar, +Recommends: + hunspell-ar, +Description: Arabic language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Arabic. + +Package: thunderbird-l10n-ast +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ast +Replaces: + lightning-l10n-ast (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ast (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ast, +Description: Asturian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Asturian. + +Package: thunderbird-l10n-be +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:be +Replaces: + lightning-l10n-be (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-be (<< 1:60.2.1-1~), +Provides: + lightning-l10n-be, +Recommends: + hunspell-be, +Description: Belarusian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Belarusian. + +Package: thunderbird-l10n-bg +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:bg +Replaces: + lightning-l10n-bg (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-bg (<< 1:60.2.1-1~), +Provides: + lightning-l10n-bg, +Recommends: + hunspell-bg | myspell-bg, +Description: Bulgarian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Bulgarian. + +Package: thunderbird-l10n-br +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:br +Replaces: + lightning-l10n-br (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-br (<< 1:60.2.1-1~), +Provides: + lightning-l10n-br, +Recommends: + hunspell-br, +Description: Breton language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Breton. + +Package: thunderbird-l10n-ca +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ca +Replaces: + lightning-l10n-ca (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ca (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ca, +Recommends: + hunspell-ca | myspell-ca, +Description: Catalan/Valencian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Catalan/Valencian. + +Package: thunderbird-l10n-cak +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:cak-GT +Description: Kacqhikel language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Kacqhikel. + +Package: thunderbird-l10n-cs +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:cs +Replaces: + lightning-l10n-cs (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-cs (<< 1:60.2.1-1~), +Provides: + lightning-l10n-cs, +Recommends: + hunspell-cs | myspell-cs-cz, +Description: Czech language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Czech. + +Package: thunderbird-l10n-cy +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:cy +Replaces: + lightning-l10n-cy (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-cy (<< 1:60.2.1-1~), +Provides: + lightning-l10n-cy, +Description: Welsh language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Welsh. + +Package: thunderbird-l10n-da +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:da +Replaces: + lightning-l10n-da (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-da (<< 1:60.2.1-1~), +Provides: + lightning-l10n-da, +Recommends: + myspell-da | hunspell-da, +Description: Danish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Danish. + +Package: thunderbird-l10n-de +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:de +Replaces: + lightning-l10n-de (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-de (<< 1:60.2.1-1~), +Provides: + lightning-l10n-de, +Recommends: + hunspell-de-de | hunspell-de-at | hunspell-de-ch | myspell-de-de | myspell-de-at | myspell-de-ch, +Description: German language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in German. + +Package: thunderbird-l10n-dsb +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:dsb +Replaces: + lightning-l10n-dsb (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-dsb (<< 1:60.2.1-1~), +Provides: + lightning-l10n-dsb, +Description: Lower Sorbian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Lower Sorbian. + +Package: thunderbird-l10n-el +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:el +Replaces: + lightning-l10n-el (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-el (<< 1:60.2.1-1~), +Provides: + lightning-l10n-el, +Recommends: + hunspell-el | myspell-el-gr, +Description: Greek language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Greek. + +Package: thunderbird-l10n-en-gb +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:en-GB +Replaces: + lightning-l10n-en-gb (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-en-gb (<< 1:60.2.1-1~), +Provides: + lightning-l10n-en-gb, +Recommends: + hunspell-en-gb | hunspell-en-au | hunspell-en-ca | hunspell-en-za, +Description: English (Great Britain) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in English (Great + Britain). + +Package: thunderbird-l10n-es-ar +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:es-AR +Replaces: + lightning-l10n-es-ar (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-es-ar (<< 1:60.2.1-1~), +Provides: + lightning-l10n-es-ar, +Recommends: + hunspell-es | myspell-es, +Description: Spanish (Argentina) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Spanish (Argentina). + +Package: thunderbird-l10n-es-es +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:es-ES +Replaces: + lightning-l10n-es-es (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-es-es (<< 1:60.2.1-1~), +Provides: + lightning-l10n-es-es, +Recommends: + hunspell-es | myspell-es, +Description: Spanish (Spain) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Spanish (Spain). + +Package: thunderbird-l10n-et +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:et +Replaces: + lightning-l10n-et (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-et (<< 1:60.2.1-1~), +Provides: + lightning-l10n-et, +Recommends: + myspell-et, +Description: Estonian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Estonian. + +Package: thunderbird-l10n-eu +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:eu +Replaces: + lightning-l10n-eu (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-eu (<< 1:60.2.1-1~), +Provides: + lightning-l10n-eu, +Recommends: + hunspell-eu, +Description: Basque language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Basque. + +Package: thunderbird-l10n-fi +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:fi +Replaces: + lightning-l10n-fi (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-fi (<< 1:60.2.1-1~), +Provides: + lightning-l10n-fi, +Recommends: + myspell-fi, + xul-ext-mozvoikko, +Description: Finnish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Finnish. + +Package: thunderbird-l10n-fr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:fr +Replaces: + lightning-l10n-fr (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-fr (<< 1:60.2.1-1~), +Provides: + lightning-l10n-fr, +Recommends: + hunspell-fr | myspell-fr | myspell-fr-gut, +Description: French language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in French. + +Package: thunderbird-l10n-fy-nl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:fy-NL +Replaces: + lightning-l10n-fy-nl (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-fy-nl (<< 1:60.2.1-1~), +Provides: + lightning-l10n-fy-nl, +Description: Frisian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Frisian. + +Package: thunderbird-l10n-ga-ie +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ga-IE +Replaces: + lightning-l10n-ga-ie (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ga-ie (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ga-ie, +Description: Irish (Ireland) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Irish (Ireland). + +Package: thunderbird-l10n-gd +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:gd +Replaces: + lightning-l10n-gd (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-gd (<< 1:60.2.1-1~), +Provides: + lightning-l10n-gd, +Recommends: + hunspell-gd | myspell-gd, +Description: Gaelic (Scottish) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Gaelic (Scottish). + +Package: thunderbird-l10n-gl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:gl +Replaces: + lightning-l10n-gl (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-gl (<< 1:60.2.1-1~), +Provides: + lightning-l10n-gl, +Recommends: + hunspell-gl | hunspell-gl-es, +Description: Galician language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Galician. + +Package: thunderbird-l10n-he +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:he +Replaces: + lightning-l10n-he (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-he (<< 1:60.2.1-1~), +Provides: + lightning-l10n-he, +Recommends: + hunspell-he | myspell-he, +Description: Hebrew language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Hebrew. + +Package: thunderbird-l10n-hr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hr +Replaces: + lightning-l10n-hr (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-hr (<< 1:60.2.1-1~), +Provides: + lightning-l10n-hr, +Recommends: + hunspell-hr | myspell-hr, +Description: Croatian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Croatian. + +Package: thunderbird-l10n-hsb +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hsb +Replaces: + lightning-l10n-hsb (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-hsb (<< 1:60.2.1-1~), +Provides: + lightning-l10n-hsb, +Recommends: + aspell-hsb, +Description: Upper Sorbian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Upper Sorbian. + +Package: thunderbird-l10n-hu +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hu +Replaces: + lightning-l10n-hu (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-hu (<< 1:60.2.1-1~), +Provides: + lightning-l10n-hu, +Recommends: + hunspell-hu | myspell-hu, +Description: Hungarian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Hungarian. + +Package: thunderbird-l10n-hy-am +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:hy-AM +Replaces: + lightning-l10n-hy-am (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-hy-am (<< 1:60.2.1-1~), +Provides: + lightning-l10n-hy-am, +Recommends: + myspell-hy, +Description: Armenian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Armenian. + +Package: thunderbird-l10n-id +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:id +Replaces: + lightning-l10n-id (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-id (<< 1:60.2.1-1~), +Provides: + lightning-l10n-id, +Description: Indonesian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Indonesian. + +Package: thunderbird-l10n-is +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:is +Replaces: + lightning-l10n-is (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-is (<< 1:60.2.1-1~), +Provides: + lightning-l10n-is, +Recommends: + hunspell-is, +Description: Icelandic language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Icelandic. + +Package: thunderbird-l10n-it +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:it +Replaces: + lightning-l10n-it (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-it (<< 1:60.2.1-1~), +Provides: + lightning-l10n-it, +Recommends: + hunspell-it | myspell-it, +Description: Italian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Italian. + +Package: thunderbird-l10n-ja +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ja +Replaces: + lightning-l10n-ja (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ja (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ja, +Description: Japanese language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Japanese. + +Package: thunderbird-l10n-ka +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ka +Description: Georgian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Georgian. + +Package: thunderbird-l10n-kab +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:kab +Replaces: + lightning-l10n-kab (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-kab (<< 1:60.2.1-1~), +Provides: + lightning-l10n-kab, +Description: Kabyle language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Kabyle. + +Package: thunderbird-l10n-kk +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:kk +Replaces: + lightning-l10n-kk (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-kk (<< 1:60.2.1-1~), +Provides: + lightning-l10n-kk, +Recommends: + hunspell-kk, +Description: Kazakh language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Kazakh. + +Package: thunderbird-l10n-ko +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ko +Replaces: + lightning-l10n-ko (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ko (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ko, +Recommends: + hunspell-ko, +Description: Korean language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Korean. + +Package: thunderbird-l10n-lt +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:lt +Replaces: + lightning-l10n-lt (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-lt (<< 1:60.2.1-1~), +Provides: + lightning-l10n-lt, +Recommends: + hunspell-lt | myspell-lt, +Description: Lithuanian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Lithuanian. + +Package: thunderbird-l10n-ms +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ms +Replaces: + lightning-l10n-ms (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ms (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ms, +Description: Malay language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Malay. + +Package: thunderbird-l10n-nb-no +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:nb-NO +Replaces: + lightning-l10n-nb-no (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-nb-no (<< 1:60.2.1-1~), +Provides: + lightning-l10n-nb-no, +Recommends: + hunspell-no | myspell-nb, +Description: Bokmaal (Norway) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Bokmaal (Norway). + +Package: thunderbird-l10n-nl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:nl +Replaces: + lightning-l10n-nl (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-nl (<< 1:60.2.1-1~), +Provides: + lightning-l10n-nl, +Recommends: + hunspell-nl | myspell-nl, +Description: Dutch language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Dutch. + +Package: thunderbird-l10n-nn-no +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:nn-NO +Replaces: + lightning-l10n-nn-no (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-nn-no (<< 1:60.2.1-1~), +Provides: + lightning-l10n-nn-no, +Recommends: + hunspell-no | myspell-nn, +Description: Nynorsk (Norway) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Nynorsk (Norway). + +Package: thunderbird-l10n-pl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pl +Replaces: + lightning-l10n-pl (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-pl (<< 1:60.2.1-1~), +Provides: + lightning-l10n-pl, +Recommends: + hunspell-pl | myspell-pl, +Description: Polish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Polish. + +Package: thunderbird-l10n-pt-br +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pt-BR +Replaces: + lightning-l10n-pt-br (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-pt-br (<< 1:60.2.1-1~), +Provides: + lightning-l10n-pt-br, +Recommends: + hunspell-pt-br | myspell-pt-br | myspell-pt, +Description: Portuguese (Brazil) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Portuguese (Brazil). + +Package: thunderbird-l10n-pt-pt +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:pt-PT +Replaces: + lightning-l10n-pt-pt (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-pt-pt (<< 1:60.2.1-1~), +Provides: + lightning-l10n-pt-pt, +Recommends: + hunspell-pt-pt | myspell-pt-pt | myspell-pt, +Description: Portuguese (Portugal) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Portuguese (Portugal). + +Package: thunderbird-l10n-rm +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:rm +Replaces: + lightning-l10n-rm (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-rm (<< 1:60.2.1-1~), +Provides: + lightning-l10n-rm, +Description: Romansh language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Romansh. + +Package: thunderbird-l10n-ro +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ro +Replaces: + lightning-l10n-ro (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ro (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ro, +Recommends: + hunspell-ro, +Description: Romania language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Romania. + +Package: thunderbird-l10n-ru +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:ru +Replaces: + lightning-l10n-ru (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-ru (<< 1:60.2.1-1~), +Provides: + lightning-l10n-ru, +Recommends: + hunspell-ru | myspell-ru, +Description: Russian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Russian. + +Package: thunderbird-l10n-si +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:si +Replaces: + lightning-l10n-si (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-si (<< 1:60.2.1-1~), +Provides: + lightning-l10n-si, +Recommends: + hunspell-si, +Description: Sinhala language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Sinhala. + +Package: thunderbird-l10n-sk +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sk +Replaces: + lightning-l10n-sk (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-sk (<< 1:60.2.1-1~), +Provides: + lightning-l10n-sk, +Recommends: + hunspell-sk | myspell-sk, +Description: Slovak language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Slovak. + +Package: thunderbird-l10n-sl +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sl +Replaces: + lightning-l10n-sl (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-sl (<< 1:60.2.1-1~), +Provides: + lightning-l10n-sl, +Recommends: + hunspell-sl | myspell-sl, +Description: Slovenian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Slovenian. + +Package: thunderbird-l10n-sq +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sq +Replaces: + lightning-l10n-sq (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-sq (<< 1:60.2.1-1~), +Provides: + lightning-l10n-sq, +Description: Albanian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Albanian. + +Package: thunderbird-l10n-sr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sr +Replaces: + lightning-l10n-sr (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-sr (<< 1:60.2.1-1~), +Provides: + lightning-l10n-sr, +Recommends: + hunspell-sr, +Description: Serbian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Serbian. + +Package: thunderbird-l10n-sv-se +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:sv-SE +Replaces: + lightning-l10n-sv-se (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-sv-se (<< 1:60.2.1-1~), +Provides: + lightning-l10n-sv-se, +Recommends: + hunspell-sv | myspell-sv-se, +Description: Swedish (Sweden) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Swedish (Sweden). + +Package: thunderbird-l10n-tr +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:tr +Replaces: + lightning-l10n-tr (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-tr (<< 1:60.2.1-1~), +Provides: + lightning-l10n-tr, +Description: Turkish language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Turkish. + +Package: thunderbird-l10n-uk +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:uk +Replaces: + lightning-l10n-uk (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-uk (<< 1:60.2.1-1~), +Provides: + lightning-l10n-uk, +Recommends: + hunspell-uk | myspell-uk +Description: Ukrainian language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Ukrainian. + +Package: thunderbird-l10n-uz +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:uz +Recommends: + hunspell-uz | myspell-uz +Description: Uzbek language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Uzbek. + +Package: thunderbird-l10n-vi +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:vi +Replaces: + lightning-l10n-vi (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-vi (<< 1:60.2.1-1~), +Provides: + lightning-l10n-vi, +Recommends: + hunspell-vi, +Description: Vietnamese language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Vietnamese. + +Package: thunderbird-l10n-zh-cn +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:zh-CN +Replaces: + lightning-l10n-zh-cn (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-zh-cn (<< 1:60.2.1-1~), +Provides: + lightning-l10n-zh-cn, +Description: Chinese (China) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Chinese (China). + +Package: thunderbird-l10n-zh-tw +Architecture: all +Section: localization +Depends: + thunderbird (<< ${source:Version}.1~), + thunderbird (>= ${source:Version}), + ${misc:Depends}, +Homepage: https://wiki.mozilla.org/L10n:Teams:zh-TW +Replaces: + lightning-l10n-zh-tw (<< 1:60.2.1-1~), +Breaks: + lightning-l10n-zh-tw (<< 1:60.2.1-1~), +Provides: + lightning-l10n-zh-tw, +Description: Chinese (Taiwan) language package for Thunderbird + Thunderbird is an mail client suitable for free distribution. The goal of + Thunderbird is to produce a cross platform stand-alone mail application using + the XUL user interface language. + . + This package contains the localization of Thunderbird in Chinese (Taiwan). + +Package: lightning-l10n-ar +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ar (>= ${binary:Version}), + ${misc:Depends}, +Description: Arabic language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Arabic. It can be safely removed. + +Package: lightning-l10n-ast +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ast (>= ${binary:Version}), + ${misc:Depends}, +Description: Asturian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Asturian. It can be safely removed. + +Package: lightning-l10n-be +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-be (>= ${binary:Version}), + ${misc:Depends}, +Description: Belarusian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Belarusian. It can be safely removed. + +Package: lightning-l10n-bg +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-bg (>= ${binary:Version}), + ${misc:Depends}, +Description: Bulgarian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Bulgarian. It can be safely removed. + +Package: lightning-l10n-br +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-br (>= ${binary:Version}), + ${misc:Depends}, +Description: Breton language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Breton. It can be safely removed. + +Package: lightning-l10n-ca +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ca (>= ${binary:Version}), + ${misc:Depends}, +Description: Catalan/Valencian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Catalan/Valencian. It can be safely removed. + +Package: lightning-l10n-cs +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-cs (>= ${binary:Version}), + ${misc:Depends}, +Description: Czech language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Czech. It can be safely removed. + +Package: lightning-l10n-cy +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-cy (>= ${binary:Version}), + ${misc:Depends}, +Description: Welsh language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Welsh. It can be safely removed. + +Package: lightning-l10n-da +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-da (>= ${binary:Version}), + ${misc:Depends}, +Description: Danish language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Danish. It can be safely removed. + +Package: lightning-l10n-de +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-de (>= ${binary:Version}), + ${misc:Depends}, +Description: German language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in German. It can be safely removed. + +Package: lightning-l10n-dsb +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-dsb (>= ${binary:Version}), + ${misc:Depends}, +Description: Lower Sorbian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Lower Sorbian. It can be safely removed. + +Package: lightning-l10n-el +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-el (>= ${binary:Version}), + ${misc:Depends}, +Description: Greek language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Greek. It can be safely removed. + +Package: lightning-l10n-es-ar +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-es-ar (>= ${binary:Version}), + ${misc:Depends}, +Description: Spanish (Argentina) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Spanish (Argentina). It can be safely removed. + +Package: lightning-l10n-es-es +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-es-es (>= ${binary:Version}), + ${misc:Depends}, +Description: Spanish (Spain) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Spanish (Spain). It can be safely removed. + +Package: lightning-l10n-en-gb +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-en-gb (>= ${binary:Version}), + ${misc:Depends}, +Description: British English language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in British English. It can be safely removed. + +Package: lightning-l10n-et +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-et (>= ${binary:Version}), + ${misc:Depends}, +Description: Estonian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Estonian. It can be safely removed. + +Package: lightning-l10n-eu +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-eu (>= ${binary:Version}), + ${misc:Depends}, +Description: Basque language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Basque. It can be safely removed. + +Package: lightning-l10n-fi +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-fi (>= ${binary:Version}), + ${misc:Depends}, +Description: Finnish language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Finnish. It can be safely removed. + +Package: lightning-l10n-fr +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-fr (>= ${binary:Version}), + ${misc:Depends}, +Description: French language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in French. It can be safely removed. + +Package: lightning-l10n-fy-nl +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-fy-nl (>= ${binary:Version}), + ${misc:Depends}, +Description: Western Frisian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Western Frisian. It can be safely removed. + +Package: lightning-l10n-ga-ie +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ga-ie (>= ${binary:Version}), + ${misc:Depends}, +Description: Irish (Ireland) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Irish (Ireland). It can be safely removed. + +Package: lightning-l10n-gd +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-gd (>= ${binary:Version}), + ${misc:Depends}, +Description: Scottish Gaelic language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Scottish Gaelic. It can be safely removed. + +Package: lightning-l10n-gl +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-gl (>= ${binary:Version}), + ${misc:Depends}, +Description: Galician language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Galician. It can be safely removed. + +Package: lightning-l10n-he +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-he (>= ${binary:Version}), + ${misc:Depends}, +Description: Hebrew language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Hebrew. It can be safely removed. + +Package: lightning-l10n-hr +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-hr (>= ${binary:Version}), + ${misc:Depends}, +Description: Croatian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Croatian. It can be safely removed. + +Package: lightning-l10n-hsb +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-hsb (>= ${binary:Version}), + ${misc:Depends}, +Description: Upper Sorbian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Upper Sorbian. It can be safely removed. + +Package: lightning-l10n-hu +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-hu (>= ${binary:Version}), + ${misc:Depends}, +Description: Hungarian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Hungarian. It can be safely removed. + +Package: lightning-l10n-hy-am +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-hy-am (>= ${binary:Version}), + ${misc:Depends}, +Description: Armenian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Armenian (Armenia). It can be safely removed. + +Package: lightning-l10n-id +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-id (>= ${binary:Version}), + ${misc:Depends}, +Description: Indonesian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Indonesian. It can be safely removed. + +Package: lightning-l10n-is +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-is (>= ${binary:Version}), + ${misc:Depends}, +Description: Icelandic language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Icelandic. It can be safely removed. + +Package: lightning-l10n-it +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-it (>= ${binary:Version}), + ${misc:Depends}, +Description: Italian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Italian. It can be safely removed. + +Package: lightning-l10n-ja +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ja (>= ${binary:Version}), + ${misc:Depends}, +Description: Japanese language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Japanese. It can be safely removed. + +Package: lightning-l10n-kab +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-kab (>= ${binary:Version}), + ${misc:Depends}, +Description: Kabyle language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Kabyle. It can be safely removed. + +Package: lightning-l10n-kk +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-kk (>= ${binary:Version}), + ${misc:Depends}, +Description: Kazakh language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Kazakh. It can be safely removed. + +Package: lightning-l10n-ko +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ko (>= ${binary:Version}), + ${misc:Depends}, +Description: Korean language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Korean. It can be safely removed. + +Package: lightning-l10n-ms +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ms (>= ${binary:Version}), + ${misc:Depends}, +Description: Malay language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Malay. It can be safely removed. + +Package: lightning-l10n-lt +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-lt (>= ${binary:Version}), + ${misc:Depends}, +Description: Lithuanian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Lithuanian. It can be safely removed. + +Package: lightning-l10n-nb-no +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-nb-no (>= ${binary:Version}), + ${misc:Depends}, +Description: Bokmaal (Norway) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Bokmaal (Norway). It can be safely removed. + +Package: lightning-l10n-nl +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-nl (>= ${binary:Version}), + ${misc:Depends}, +Description: Dutch language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Dutch. It can be safely removed. + +Package: lightning-l10n-nn-no +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-nn-no (>= ${binary:Version}), + ${misc:Depends}, +Description: Nynorsk (Norway) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Nynorsk (Norway). It can be safely removed. + +Package: lightning-l10n-pl +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-pl (>= ${binary:Version}), + ${misc:Depends}, +Description: Polish language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Polish. It can be safely removed. + +Package: lightning-l10n-pt-br +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-pt-br (>= ${binary:Version}), + ${misc:Depends}, +Description: Portuguese (Brazil) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Portuguese (Brazil). It can be safely removed. + +Package: lightning-l10n-pt-pt +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-pt-pt (>= ${binary:Version}), + ${misc:Depends}, +Description: Portuguese (Portugal) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Portuguese (Portugal). It can be safely removed. + +Package: lightning-l10n-rm +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-rm (>= ${binary:Version}), + ${misc:Depends}, +Description: Romansh language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Romansh. It can be safely removed. + +Package: lightning-l10n-ro +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ro (>= ${binary:Version}), + ${misc:Depends}, +Description: Romanian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Romanian. It can be safely removed. + +Package: lightning-l10n-ru +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-ru (>= ${binary:Version}), + ${misc:Depends}, +Description: Russian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Russian. It can be safely removed. + +Package: lightning-l10n-si +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-si (>= ${binary:Version}), + ${misc:Depends}, +Description: Sinhala language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Sinhala. It can be safely removed. + +Package: lightning-l10n-sk +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-sk (>= ${binary:Version}), + ${misc:Depends}, +Description: Slovak language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Slovak. It can be safely removed. + +Package: lightning-l10n-sl +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-sl (>= ${binary:Version}), + ${misc:Depends}, +Description: Slovenian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Slovenian. It can be safely removed. + +Package: lightning-l10n-sr +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-sr (>= ${binary:Version}), + ${misc:Depends}, +Description: Serbian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Serbian. It can be safely removed. + +Package: lightning-l10n-sq +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-sq (>= ${binary:Version}), + ${misc:Depends}, +Description: Albanian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Albanian. It can be safely removed. + +Package: lightning-l10n-sv-se +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-sv-se (>= ${binary:Version}), + ${misc:Depends}, +Description: Swedish language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Swedish (Sweden). It can be safely removed. + +Package: lightning-l10n-tr +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-tr (>= ${binary:Version}), + ${misc:Depends}, +Description: Turkish language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Turkish. It can be safely removed. + +Package: lightning-l10n-uk +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-uk (>= ${binary:Version}), + ${misc:Depends}, +Description: Ukrainian language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Ukrainian. It can be safely removed. + +Package: lightning-l10n-vi +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-vi (>= ${binary:Version}), + ${misc:Depends}, +Description: Vietnamese language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Vietnamese. It can be safely removed. + +Package: lightning-l10n-zh-cn +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-zh-cn (>= ${binary:Version}), + ${misc:Depends}, +Description: Chinese (China) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in Chinese (China). It can be safely removed. + +Package: lightning-l10n-zh-tw +Architecture: all +Section: oldlibs +Depends: + thunderbird-l10n-zh-tw (>= ${binary:Version}), + ${misc:Depends}, +Description: Chinese (Taiwan) language package for lightning - Transitional package + Lightning is a Mozilla based calendar extension for Thunderbird. + It's goal is to integrate a Calendar and Task application using the XUL + user interface language. + . + This is a transitional package that pulls in the required package for the + localization of lightning in China (Taiwan). It can be safely removed. diff --git a/copyright b/copyright new file mode 100644 index 0000000000..2bc527f987 --- /dev/null +++ b/copyright @@ -0,0 +1,3366 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Thunderbird +Source: https://ftp.mozilla.org/pub/mozilla.org/thunderbird/ +Disclaimer: The original upstream tarball is modified from upstream by + removing a set of sourceless binary, non-free, and VCS-related files. You + can find a repack.py script in the debian directory doing this cleanup, + using filtering data present in a source.filter file in the same directory. + If this file is incomplete, which I'm pretty sure is the case, because it's + difficult not to forget anything in this huge amount of data, please file + a bug or contact me. + Some licensing terms are not included verbatim in this file on purpose, for + terms that are available in a file in subdirectories that are not used to + build the binary packages. + +Files: * +Copyright: 1998-2016, Mozilla Project +License: MPL-2.0 or GPL-2 or LGPL-2.1 + +Files: debian/* +Copyright: 2003-2009, Alexander Sack + 2008, Fabien Tassin + 2013-2018, Carsten Schoenert + 2009-2013, Guido Günther + 2010-2016, Christoph Goehre +License: MPL-1.1 or MPL-2.0 or GPL-2 or LGPL-2.1 + +Files: debian/logo/icedove/icedove_icon_plain.svg + debian/logo/icedove/icedove_icon_profile_plain.svg + debian/logo/icedove/icedove_icon_profile.svg + debian/logo/icedove/icedove_icon.svg + debian/logo/icedove/icedove_lettering.svg + debian/logo/icedove/icedove_logo_plain.svg + debian/logo/icedove/icedove_logo.svg +Copyright: 2006-2007, Ricardo Fernández Fuentes +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: debian/logo/icedove/icedove_icon_plain.svg +Copyright: 1998-2016, Mozilla Foundation +License: MPL-2.0 or GPL-2 or LGPL-2.1 + +Files: comm/calendar/* +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/calendar/base/modules/* +Copyright: 2011-2012, Philipp Kewisch +License: MPL-2.0 + +Files: comm/calendar/itip/* +Copyright: 2007, Simdesk Technologies +License: MPL-1.1 + +Files: comm/calendar/libical/* +Copyright: Eric Busboom +License: MPL-1.1 or LGPL-2.1 + +Files: comm/calendar/libical/scripts/mkneticali.pl +Copyright: 1999, Eric Busboom +License: MPL-1.0 + +Files: comm/calendar/libical/scripts/mkparameterrestrictions.pl + comm/calendar/libical/scripts/mkrestrictionrecords.pl +Copyright: 1999, Graham Davison +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/astime.h + comm/calendar/libical/src/libical/caldate.c +Copyright: 1986-2000, Hiram Clawson +License: BSD-2-clause + +Files: comm/calendar/libical/src/libical/icalarray.c + comm/calendar/libical/src/libical/icalarray.h +Copyright: 2001, Ximian, Inc +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/icalattach.c +Copyright: 2000, Andrea Campi +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/icalattach.h + comm/calendar/libical/src/libical/icalattachimpl.h +Copyright: 2000, 2002, Andrea Campi +License: MPL-1.0 + +Files: comm/calendar/libical/src/libical/icalcomponent.c + comm/calendar/libical/src/libical/icalduration.c + comm/calendar/libical/src/libical/icalmime.c +Copyright: 2008, dothebart + 2000, Eric Busboom, http://www.softwarestudio.org +License: MPL-1.0 or LGPL-2.1 + +Files: comm/calendar/libical/src/libical/icalmemory.c + comm/calendar/libical/src/libical/icaltimezone.c + comm/calendar/libical/src/libical/icaltimezone.h + comm/calendar/libical/src/libical/icalparser.c + comm/calendar/libical/src/libical/sspm.c + comm/calendar/libical/src/libical/sspm.h +Copyright: 2008, dothebart +License: MPL-1.0 or LGPL-2.1 + +Files: comm/calendar/libical/src/libical/icptrholder.h + comm/calendar/libical/src/libical/vcomponent.h +Copyright: 2001, Critical Path +License: MPL-1.0 or LGPL-2.1 + +Files: comm/calendar/libical/src/libical/vsnprintf.c +Copyright: 1997, Theo de Raadt +License: BSD-2-clause + +Files: comm/chat/protocols/irc/test/test_sendBufferedCommand.js +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/ldap/c-sdk/libraries/libldap/authzidctrl.c + comm/ldap/c-sdk/libraries/libldap/geteffectiverightsctrl.c + comm/ldap/c-sdk/libraries/libldap/pwmodext.c + comm/ldap/c-sdk/libraries/libldap/pwpctrl.c + comm/ldap/c-sdk/libraries/libldap/saslio.c + comm/ldap/c-sdk/libraries/libldap/userstatusctrl.c + comm/ldap/c-sdk/libraries/libldap/whoami.c +Copyright: 2005, Sun Microsystems +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/include/disptmpl.h + comm/ldap/c-sdk/include/ldif.h + comm/ldap/c-sdk/include/portable.h + comm/ldap/c-sdk/include/regex.h + comm/ldap/c-sdk/include/srchpref.h + comm/ldap/c-sdk/libraries/liblber/* +Copyright: 1998-1999, Netscape Communications Coportation + 1990-1996, Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/libraries/libldap/abandon.c + comm/ldap/c-sdk/libraries/libldap/add.c + comm/ldap/c-sdk/libraries/libldap/cldap.c + comm/ldap/c-sdk/libraries/libldap/compare.c + comm/ldap/c-sdk/libraries/libldap/friendly.c + comm/ldap/c-sdk/libraries/libldap/getattr.c + comm/ldap/c-sdk/libraries/libldap/getentry.c + comm/ldap/c-sdk/libraries/libldap/getfilter.c + comm/ldap/c-sdk/libraries/libldap/getvalues.c + comm/ldap/c-sdk/libraries/libldap/modify.c + comm/ldap/c-sdk/libraries/libldap/open.c + comm/ldap/c-sdk/libraries/libldap/os-ip.c + comm/ldap/c-sdk/libraries/libldap/rename.c + comm/ldap/c-sdk/libraries/libldap/request.c + comm/ldap/c-sdk/libraries/libldap/reslist.c + comm/ldap/c-sdk/libraries/libldap/result.c + comm/ldap/c-sdk/libraries/libldap/sbind.c + comm/ldap/c-sdk/libraries/libldap/search.c + comm/ldap/c-sdk/libraries/libldap/ufn.c + comm/ldap/c-sdk/libraries/libldap/unbind.c +Copyright: 1998-1999, Netscape Communications Coportation + 1990, 1993-1995, Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/libraries/libldap/bind.c + comm/ldap/c-sdk/libraries/libldap/delete.c +Copyright: 1998-1999, Netscape Communications Coportation + 1990, Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/libraries/libldap/cache.c +Copyright: 1998-1999, Netscape Communications Coportation + 1993, The Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/libraries/libldap/charset.c + comm/ldap/c-sdk/libraries/libldap/countvalues.c + comm/ldap/c-sdk/libraries/libldap/disptmpl.c + comm/ldap/c-sdk/libraries/libldap/dsparse.c + comm/ldap/c-sdk/libraries/libldap/freevalues.c + comm/ldap/c-sdk/libraries/libldap/getdxbyname.c + comm/ldap/c-sdk/libraries/libldap/sort.c + comm/ldap/c-sdk/libraries/libldap/srchpref.c + comm/ldap/c-sdk/libraries/libldap/url.c +Copyright: 1998-1999, Netscape Communications Coportation + 1990-1996, Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/libraries/libldap/compat.c + comm/ldap/c-sdk/libraries/libldap/free.c +Copyright: 1998-1999, Netscape Communications Coportation + 1994, The Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/ldap/c-sdk/libraries/libldap/getdn.c +Copyright: 1998-1999, Netscape Communications Coportation + 1994, Regents of the University of Michigan +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: comm/mail/base/test/unit/resources/* + comm/mail/base/test/unit/test_alertHook.js + comm/mail/base/test/unit/test_attachmentChecker.js + comm/mail/base/test/unit/test_windows_font_migration.js + comm/mail/components/test/unit/test_about_support.js + comm/mail/locales/en-US/all-l10n.js +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +Copyright: 2020, MZLA Technologies Corporation +License: CC0-1.0 + +Files: comm/mailnews/* + browser/* +Copyright: no-info-found +License: MPL-2.0 + +Files: comm/mailnews/base/src/nsMsgAccountManager.h + comm/mailnews/local/src/nsPop3Protocol.cpp + comm/mailnews/mime/src/mimebuf.cpp + comm/mailnews/mime/src/mimebuf.h + comm/mailnews/mime/src/mimedrft.cpp + comm/mailnews/mime/src/mimei.cpp + comm/mailnews/mime/src/mimemrel.cpp + comm/mailnews/mime/src/mimeobj.cpp + comm/mailnews/mime/src/mimetext.cpp +Copyright: 2000, International Business Machines (IBM) Corporation +License: MPL-2.0 + +Files: comm/mailnews/mime/src/modmimee.h +Copyright: 1996, Netscape Communications Corporation +License: MPL-2.0 + +Files: browser/components/translation/cld2/* +Copyright: 2013-2014, Google Inc. +License: Apache-2.0 + +Files: browser/extensions/pdfjs/test/* +Copyright: no-info-found +License: public-domain + +Files: browser/extensions/pdfjs/content/* +Copyright: 2012-2015, Mozilla Foundation +License: Apache-2.0 + +Files: config/tests/unit-mozunit.py + config/tests/unitMozZipFile.py +Copyright: no-info-found +License: MPL-2.0 + +Files: docshell/test/* +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/base/nsPropertyTable.cpp + dom/base/nsPropertyTable.h +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: dom/canvas/WebGLTexelConversions.h +Copyright: 2010, Mozilla Corporation + 2010, Google Inc. + 2010, Apple Inc. +License: BSD-2-clause + +Files: dom/canvas/WebGLValidateStrings.h +Copyright: 2011, Mozilla Corporation + 2011, Apple Inc. +License: BSD-2-clause + +Files: dom/imptests/testharnessreport.js + dom/indexedDB/test/browser_bug839193.js + dom/indexedDB/test/bug839193.js +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/events/PointerEvent.cpp + dom/events/PointerEvent.h +Copyright: 2013, Microsoft Open Technologies, Inc. +License: MPL-2.0 + +Files: dom/media/gmp/GMPVideoEncodedFrameImpl.h +Copyright: 2014, Mozilla Corporation +License: BSD-2-clause + +Files: dom/media/gmp/gmp-api/* +Copyright: 2014, Mozilla Foundation + 2011, The WebRTC project authors. +License: BSD-3-clause + +Files: dom/media/gmp/gmp-api/gmp-storage.h +Copyright: 2012-2014, Mozilla Foundation and contributors +License: Apache-2.0 + +Files: dom/media/gmp/gmp-api/gmp-errors.h + dom/media/gmp/gmp-api/gmp-platform.h +Copyright: 2014, Mozilla +License: BSD-3-clause + +Files: dom/media/test/make-headers.sh +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/media/webaudio/FFTBlock.cpp + dom/media/webaudio/blink/* +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: dom/media/webaudio/blink/DenormalDisabler.h + dom/media/webaudio/blink/HRTFPanner.cpp + dom/media/webaudio/blink/HRTFPanner.h +Copyright: 2010-2011, Google Inc. +License: BSD-2-clause + +Files: dom/media/webaudio/blink/IRC_Composite_C_R0195-incl.cpp +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/media/webspeech/recognition/endpointer.cc + dom/media/webspeech/recognition/endpointer.h + dom/media/webspeech/recognition/energy_endpointer.cc + dom/media/webspeech/recognition/energy_endpointer.h + dom/media/webspeech/recognition/energy_endpointer_params.cc + dom/media/webspeech/recognition/energy_endpointer_params.h +Copyright: 2006-2013, The Chromium Authors +License: BSD-3-clause + +Files: dom/plugins/base/npruntime.h +Copyright: 2004, Apple Computer, Inc. and The Mozilla Foundation +License: BSD-3-clause + +Files: dom/plugins/ipc/PluginInterposeOSX.h +Copyright: 2006-2013, The Chromium Authors +License: BSD-3-clause + +Files: dom/plugins/test/testplugin/* +Copyright: 2008, 2010, Mozilla Corporation +License: BSD-3-clause + +Files: dom/plugins/test/testplugin/nptest_utils.cpp + dom/plugins/test/testplugin/nptest_utils.h +Copyright: 2006-2009, 2012, Apple Inc. +License: BSD-2-clause + +Files: dom/plugins/test/testplugin/secondplugin/* + dom/plugins/test/unit/* + dom/svg/test/matrixUtils.js + dom/tests/browser/browser_ConsoleAPITests.js + dom/tests/browser/browser_ConsoleStoragePBTest_perwindowpb.js + dom/tests/browser/browser_bug1004814.js + dom/tests/browser/browser_bug1008941_dismissGeolocationHanger.js + dom/tests/browser/browser_frame_elements.js + dom/tests/mochitest/dom-level1-core/* + dom/tests/mochitest/dom-level2-core/* + dom/tests/unit/test_bug319968.js + dom/tests/unit/test_bug465752.js +Copyright: no-info-found +License: MPL-2.0 + +Files: dom/tests/mochitest/ajax/jquery/dist/* +Copyright: 2006-2008, John Resig (jquery.com) +License: GPL-2 or Expat + +Files: dom/tests/mochitest/ajax/prototype/test/lib/* +Copyright: 2005, Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) + 2005, Michael Schuerig (http://www.schuerig.de/michael/) + 2005, Jon Tirsen (http://www.tirsen.com) +License: Expat + +Files: dom/tests/mochitest/ajax/scriptaculous/src/scriptaculous.js +Copyright: 2005-2007, Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us) +License: Expat + +Files: dom/xul/nsXULElement.cpp +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: editor/libeditor/tests/* +Copyright: 2007-2008, 2010, 2012, Google Inc +License: Apache-2.0 + +Files: extensions/auth/gssapi.h +Copyright: 1993, OpenVision Technologies, Inc +License: other-1 + Permission to use, copy, modify, distribute, and sell this software + and its documentation for any purpose is hereby granted without fee, + provided that the above copyright notice appears in all copies and + that both that copyright notice and this permission notice appear in + supporting documentation, and that the name of OpenVision not be used + in advertising or publicity pertaining to distribution of the software + without specific, written prior permission. OpenVision makes no + representations about the suitability of this software for any + purpose. It is provided "as is" without express or implied warranty. + . + OPENVISION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + EVENT SHALL OPENVISION BE LIABLE FOR ANY SPECIAL, INDIRECT OR + CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF + USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + +Files: extensions/spellcheck/hunspell/* +Copyright: 2002-2005 Kevin B. Hendricks, Stratford, Ontario, Canada + 2002-2005 László Németh +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: extensions/spellcheck/hunspell/src/phonet.cxx + extensions/spellcheck/hunspell/src/phonet.hxx +Copyright: 2000, 2007 Bjoern Jacke + 2007, László Németh +License: LGPL-2.1 + +Files: extensions/spellcheck/locales/en-US/hunspell/* +Copyright: various contributors +License: other-2 + The complete text of the hunspell License can be found in the + `README_en_US.txt' file in the same directory as this file. + +Files: gfx/cairo/cairo/* +Copyright: 2005-2008, RedHat, Inc. + 2003, University of Southern California + 2007-2008, Carl D. Worth , + Kristian Høgsberg , + Keith Packard , + Adrian Johnson + various contributors +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-analysis-surface-private.h + gfx/cairo/cairo/src/cairo-scaled-font.c + gfx/cairo/cairo/src/cairo-wideint-private.h + gfx/cairo/cairo/src/cairo-wideint-type-private.h + gfx/cairo/cairo/src/cairo-wideint.c +Copyright: 2004-2005, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-analysis-surface.c +Copyright: 2007, Adrian Johnson + 2006, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-arc.c + gfx/cairo/cairo/src/cairo-directfb-surface.c + gfx/cairo/cairo/src/cairo-directfb.h + gfx/cairo/cairo/src/cairo-fixed.c + gfx/cairo/cairo/src/cairo-glitz.h + gfx/cairo/cairo/src/cairo-hull.c + gfx/cairo/cairo/src/cairo-matrix.c + gfx/cairo/cairo/src/cairo-path-bounds.c + gfx/cairo/cairo/src/cairo-path-fill.c + gfx/cairo/cairo/src/cairo-path-stroke.c + gfx/cairo/cairo/src/cairo-pdf.h + gfx/cairo/cairo/src/cairo-png.c + gfx/cairo/cairo/src/cairo-polygon.c + gfx/cairo/cairo/src/cairo-ps.h + gfx/cairo/cairo/src/cairo-skia.h + gfx/cairo/cairo/src/cairo-slope.c + gfx/cairo/cairo/src/cairo-spline.c + gfx/cairo/cairo/src/cairo-xcb-xrender.h + gfx/cairo/cairo/src/cairo-xlib-xrender.h + gfx/cairo/cairo/src/cairo-xlib.h +Copyright: 2002-2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-atomic-private.h +Copyright: 2010, Andrea Canciani + 2007, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-atomic.c + gfx/cairo/cairo/src/cairo-combsort-private.h + gfx/cairo/cairo/src/cairo-drm.h + gfx/cairo/cairo/src/cairo-freed-pool-private.h + gfx/cairo/cairo/src/cairo-freed-pool.c + gfx/cairo/cairo/src/cairo-list-private.h + gfx/cairo/cairo/src/cairo-path-in-fill.c + gfx/cairo/cairo/src/cairo-reference-count-private.h + gfx/cairo/cairo/src/cairo-rtree-private.h + gfx/cairo/cairo/src/cairo-rtree.c + gfx/cairo/cairo/src/cairo-script-surface.c + gfx/cairo/cairo/src/cairo-script.h + gfx/cairo/cairo/src/cairo-surface-clipper-private.h + gfx/cairo/cairo/src/cairo-surface-clipper.c + gfx/cairo/cairo/src/cairo-tee-surface-private.h + gfx/cairo/cairo/src/cairo-tee.h + gfx/cairo/cairo/src/cairo-xlib-display.c + gfx/cairo/cairo/src/cairo-xml-surface.c + gfx/cairo/cairo/src/cairo-xml.h +Copyright: 2007-2009, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-base64-stream.c +Copyright: 2009, Chris Wilson + 2005-2007, Emmanuel Pacaud +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-bentley-ottmann-rectangular.c + gfx/cairo/cairo/src/cairo-bentley-ottmann-rectilinear.c + gfx/cairo/cairo/src/cairo-bentley-ottmann.c +Copyright: 2008-2009, Chris Wilson + 2006, Red Hat, Inc + 2004, Carl Worth +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-beos-surface.cpp + gfx/cairo/cairo/src/cairo-beos.h +Copyright: 2005, Christian Biesinger +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-botor-scan-converter.c +Copyright: 2009, Intel Corporation + 2008, M Joonas Pihlaja + 2008, Chris Wilson + 2007, David Turner + 2006, Red Hat, Inc + 2004, Carl Worth +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-boxes-private.h + gfx/cairo/cairo/src/cairo-boxes.c + gfx/cairo/cairo/src/cairo-composite-rectangles-private.h + gfx/cairo/cairo/src/cairo-composite-rectangles.c + gfx/cairo/cairo/src/cairo-device-private.h + gfx/cairo/cairo/src/cairo-device.c + gfx/cairo/cairo/src/cairo-observer.c + gfx/cairo/cairo/src/cairo-rectangular-scan-converter.c + gfx/cairo/cairo/src/cairo-surface-snapshot-private.h + gfx/cairo/cairo/src/cairo-surface-subsurface-private.h + gfx/cairo/cairo/src/cairo-surface-subsurface.c +Copyright: 2009-2010, Intel Corporation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-cff-subset.c + gfx/cairo/cairo/src/cairo-deflate-stream.c + gfx/cairo/cairo/src/cairo-image-info-private.h + gfx/cairo/cairo/src/cairo-image-info.c + gfx/cairo/cairo/src/cairo-type3-glyph-surface-private.h + gfx/cairo/cairo/src/cairo-type3-glyph-surface.c + gfx/cairo/cairo/src/cairo-win32-printing-surface.c +Copyright: 2006-2008, Adrian Johnson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-clip.c + gfx/cairo/cairo/src/cairo-surface-offset-private.h + gfx/cairo/cairo/src/cairo-surface-wrapper-private.h +Copyright: 2009, Chris Wilson + 2005, Red Hat, Inc. + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-color.c + gfx/cairo/cairo/src/cairo-compiler-private.h + gfx/cairo/cairo/src/cairo-error-private.h + gfx/cairo/cairo/src/cairo-gstate.c + gfx/cairo/cairo/src/cairo-path-fixed.c + gfx/cairo/cairo/src/cairo-ps-surface-private.h + gfx/cairo/cairo/src/cairo-rectangle.c + gfx/cairo/cairo/src/cairo-scaled-font-private.h + gfx/cairo/cairo/src/cairo-slope-private.h + gfx/cairo/cairo/src/cairo-surface-fallback-private.h + gfx/cairo/cairo/src/cairo-surface-fallback.c + gfx/cairo/cairo/src/cairo-surface-private.h + gfx/cairo/cairo/src/cairo-surface.c + gfx/cairo/cairo/src/cairo-types-private.h + gfx/cairo/cairo/src/cairo-version.c + gfx/cairo/cairo/src/cairo-xlib-surface.c + gfx/cairo/cairo/src/cairo.c + gfx/cairo/cairo/src/cairo.h + gfx/cairo/cairo/src/cairoint.h +Copyright: 2005, 2006, Red Hat, Inc. + 2002, 2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-dwrite-font.cpp + gfx/cairo/cairo/src/cairo-dwrite-private.h + gfx/cairo/cairo/src/cairo-win32-refptr.h +Copyright: 2010, Mozilla Foundation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-eagle-context.c + gfx/cairo/cairo/src/cairo-gl-private.h + gfx/cairo/cairo/src/cairo-gl-surface.c + gfx/cairo/cairo/src/cairo-glx-context.c +Copyright: 2009, Eric Anholt + 2009, Chris Wilson + 2005, 2010, Red Hat, Inc +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-fixed-private.h + gfx/cairo/cairo/src/cairo-fixed-type-private.h + gfx/cairo/cairo/src/cairo-malloc-private.h + gfx/cairo/cairo/src/cairo-qt-surface.cpp + gfx/cairo/cairo/src/cairo-qt.h + gfx/cairo/cairo/src/cairo-quartz-font.c + gfx/cairo/cairo/src/cairo-quartz-image-surface.c + gfx/cairo/cairo/src/cairo-quartz-image.h + gfx/cairo/cairo/src/cairo-quartz-surface.c + gfx/cairo/cairo/src/cairo-quartz.h +Copyright: 2006-2008, Mozilla Corporation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-font-face-twin.c + gfx/cairo/cairo/src/cairo-ft-font.c + gfx/cairo/cairo/src/cairo-traps.c + gfx/cairo/cairo/src/cairo-xlib-screen.c +Copyright: 2005, 2007, 2008, Red Hat, Inc + 2000, 2002, 2004, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-font-face.c + gfx/cairo/cairo/src/cairo-toy-font-face.c +Copyright: 2005, 2008, Red Hat, Inc. + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-font-options.c +Copyright: 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-fontconfig-private.h +Copyright: 2010, Intel Corporation + 2005, Red Hat, Inc. + 2000, Keith Packard +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl-glyphs.c +Copyright: 2010, Red Hat, Inc., Intel Corporation + 2009, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl-shaders.c +Copyright: 2010, Red Hat, Inc., Eric Anholt + 2009, T. Zachary Laine +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-gl.h +Copyright: 2009, Eric Anholt + 2009, Chris Wilson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-image-surface.c + gfx/cairo/cairo/src/cairo-xcb-surface.c + gfx/cairo/cairo/src/cairo-xcb.h +Copyright: 2009-2010, Intel Corporation + 2002, 2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-misc.c + gfx/cairo/cairo/src/cairo-ps-surface.c +Copyright: 2007, 2008, Adrian Johnson + 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-mutex-impl-private.h + gfx/cairo/cairo/src/cairo-mutex-private.h + gfx/cairo/cairo/src/cairo-mutex-type-private.h +Copyright: 2007, Mathias Hasselmann + 2005, 2007, Red Hat, Inc. + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-mutex-list-private.h + gfx/cairo/cairo/src/cairo-mutex.c +Copyright: 2007, Mathias Hasselmann +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-os2-private.h + gfx/cairo/cairo/src/cairo-os2-surface.c + gfx/cairo/cairo/src/cairo-os2.h +Copyright: 2005, 2006, netlabs.org +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-paginated-surface.c + gfx/cairo/cairo/src/cairo-pdf-operators-private.h + gfx/cairo/cairo/src/cairo-pdf-operators.c + gfx/cairo/cairo/src/cairo-pdf-surface-private.h + gfx/cairo/cairo/src/cairo-pdf-surface.c + gfx/cairo/cairo/src/cairo-recording-surface.c +Copyright: 2007, 2008, Adrian Johnson + 2004-2006, Red Hat, Inc +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-pen.c +Copyright: 2008, Chris Wilson + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-platform.h +Copyright: 2005, Mozilla Foundation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-quartz-private.h +Copyright: 2006-2007, Mozilla Corporation + 2004, Calum Robinson +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-scaled-font-subsets.c +Copyright: 2006, Keith Packard + 2005, 2006, Red Hat, Inc. + 2003, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-spans-private.h + gfx/cairo/cairo/src/cairo-spans.c +Copyright: 2008, M Joonas Pihlaja +License: Expat + +Files: gfx/cairo/cairo/src/cairo-surface-offset.c + gfx/cairo/cairo/src/cairo-surface-wrapper.c +Copyright: 2009, Chris Wilson + 2007, Adrian Johnson + 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-surface-snapshot.c +Copyright: 2009, Intel Corporation + 2005, Red Hat, Inc + 2002, University of Southern California +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-svg-surface-private.h + gfx/cairo/cairo/src/cairo-svg-surface.c +Copyright: 2005-2007, Emmanuel Pacaud + 2004, 2006, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-svg.h +Copyright: 2005, Emmanuel Pacaud +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-tee-surface.c +Copyright: 2009, Chris Wilson + 2005, Red Hat, Inc. +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-tor-scan-converter.c +Copyright: 2008, M Joonas Pihlaja + 2007, David Turner +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-unicode.c +Copyright: 2005, Red Hat, Inc + 1999, Tom Tromey +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-vg-surface.c +Copyright: 2009, Chris Wilson + 2008, Opened Hand Ltd +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/cairo/src/cairo-vg.h +Copyright: 2009, Chris Wilson + 2007, Mozilla Corporation +License: MPL-1.1 or LGPL-2.1 + +Files: gfx/cairo/libpixman/src/* +Copyright: 2000 Keith Packard, member of The XFree86 Project, Inc., + 2005 Lars Knoll & Zack Rusin, Trolltech + 2008 Aaron Plattner, NVIDIA Corporation + 2008 Mozilla Corporation + 1999,2004 Keith Packard + 2000 SuSE, Inc. + 2004,2005,2007,2008 Red Hat, Inc. + 2004 Nicholas Miell + 2005 Trolltech AS + 2008 Rodrigo Kumpera + 2008 André Tupinambá + 2007 Luca Barbato +License: other-3 + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of the copyright holder not be used in + advertising or publicity pertaining to distribution of the software without + specific, written prior permission. The copyright holder makes no + representations about the suitability of this software for any purpose. It + is provided "as is" without express or implied warranty. + . + THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS + SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY + SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN + AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING + OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + +Files: gfx/cairo/libpixman/src/pixman-arm-common.h + gfx/cairo/libpixman/src/pixman-arm-neon-asm.h +Copyright: 2009-2010, Nokia Corporation +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-combine-float.c +Copyright: 2010, 2012, Soren Sandmann Pedersen + 2010, 2012, Red Hat, Inc. +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-filter.c +Copyright: 2012, Soren Sandmann + 2012, Red Hat, Inc. +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-glyph.c +Copyright: 2010-2012, Red Hat, Inc. + 2010, 2012, Soren Sandmann +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-mips-dspr2-asm.h + gfx/cairo/libpixman/src/pixman-mips-dspr2.c + gfx/cairo/libpixman/src/pixman-mips-dspr2.h +Copyright: 2012, MIPS Technologies, Inc. +License: BSD-3-clause + +Files: gfx/cairo/libpixman/src/pixman-noop.c + gfx/cairo/libpixman/src/pixman-version.h +Copyright: 1996, 1998-1999, 2007-2009, 2011, 2013, Red Hat, Inc. +License: Expat + +Files: gfx/cairo/libpixman/src/pixman-region.c +Copyright: 1998, Keith Packard + 1987-1989, Digital Equipment Coportation + 1987-1989, The Open Group +License: other-4 + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation. + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + . + Except as contained in this notice, the name of The Open Group shall not be + used in advertising or otherwise to promote the sale, use or other dealings + in this Software without prior written authorization from The Open Group. + . + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Digital not be + used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. + . + DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + +Files: gfx/cairo/libpixman/src/pixman.h +Copyright: 2007, Red Hat, Inc. + 1998, 2004, Keith Packard + 1987, Digital Equipment Corporation, Maynard, Massachusetts + 1987, 1998, The Open Group +License: other-5 + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation. + . + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + . + Except as contained in this notice, the name of The Open Group shall not be + used in advertising or otherwise to promote the sale, use or other dealings + in this Software without prior written authorization from The Open Group. + . + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Digital not be + used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. + . + DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, + ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + SOFTWARE. + +Files: gfx/gl/ForceDiscreteGPUHelperCGL.h +Copyright: The Chromium Authors +License: MPL-2.0 + +Files: gfx/graphite2/* +Copyright: 2010-2013, SIL International +License: LGPL-2.1 + +Files: gfx/graphite2/src/MozGrMalloc.h +Copyright: no-info-found +License: MPL-2.0 + +Files: gfx/harfbuzz/* +Copyright: 1998-2004 David Turner and Werner Lemberg + 2005 David Turner + 2004, 2007-2009, 2010 Red Hat, Inc. + 2006 Behdad Esfahbod + 2007 Chris Wilson + 2009 Martin Hosken and SIL International + 2009 Keith Stribley + 2010, 2012 Mozilla Foundation + 2008, 2010 Nokia Corporation and/or its subsidiary(-ies) + 2011 Codethink Limited + 2010,2011,2012 Google, Inc. +License: old-MIT + +Files: gfx/harfbuzz/src/hb-blob.cc + gfx/harfbuzz/src/hb-blob.h + gfx/harfbuzz/src/hb-face.h + gfx/harfbuzz/src/hb-font.h + gfx/harfbuzz/src/hb-ft.h + gfx/harfbuzz/src/hb-ot-layout.h + gfx/harfbuzz/src/hb-ot-shape.h + gfx/harfbuzz/src/hb-ot.h + gfx/harfbuzz/src/hb.h + gfx/harfbuzz/src/main.cc +Copyright: 1996, 1998-1999, 2007-2009, 2011, 2013, Red Hat, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-buffer.cc + gfx/harfbuzz/src/hb-buffer.h +Copyright: 2011-2012, Google, Inc. + 2004, 2007, 2009, 2010, Red Hat, Inc. + 1998-2004, David Turner and Werner Lemberg +License: Expat + +Files: gfx/harfbuzz/src/hb-common.cc + gfx/harfbuzz/src/hb-common.h + gfx/harfbuzz/src/hb-face.cc + gfx/harfbuzz/src/hb-font.cc + gfx/harfbuzz/src/hb-glib.cc + gfx/harfbuzz/src/hb-glib.h + gfx/harfbuzz/src/hb-icu.h + gfx/harfbuzz/src/hb-ot-head-table.hh + gfx/harfbuzz/src/hb-ot-layout-gdef-table.hh + gfx/harfbuzz/src/hb-ot-layout-gpos-table.hh + gfx/harfbuzz/src/hb-ot-layout-gsub-table.hh + gfx/harfbuzz/src/hb-ot-map.cc + gfx/harfbuzz/src/hb-ot-shape.cc + gfx/harfbuzz/src/hb-ot-tag.cc + gfx/harfbuzz/src/hb-shape.cc + gfx/harfbuzz/src/hb-shape.h +Copyright: 2010-2013, Google, Inc. + 2007-2010, Red Hat, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-coretext.cc +Copyright: 2012-2013, Mozilla Foundation + 2012-2013, Google, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-coretext.h +Copyright: 2008-2014, Mozilla Foundation +License: Expat + +Files: gfx/harfbuzz/src/hb-ft.cc +Copyright: 2009, Red Hat, Inc. + 2009, Keith Stribley +License: Expat + +Files: gfx/harfbuzz/src/hb-graphite2.cc +Copyright: 2011, SIL International + 2011, Martin Hosken + 2011-2012, Google, Inc. +License: Expat + +Files: gfx/harfbuzz/src/hb-graphite2.h +Copyright: 2011, SIL International + 2011, Martin Hosken +License: Expat + +Files: gfx/harfbuzz/src/hb-icu.cc +Copyright: 2011, Google, Inc. + 2009, Red Hat, Inc. + 2009, Keith Stribley +License: Expat + +Files: gfx/harfbuzz/src/hb-ot-layout.cc +Copyright: 2012-2013, Google, Inc. + 2007-2009, Red Hat, Inc. + 2006, Behdad Esfahbod + 1998-2004, David Turner and Werner Lemberg +License: Expat + +Files: gfx/harfbuzz/src/hb-unicode.cc + gfx/harfbuzz/src/hb-unicode.h +Copyright: 2011, Codethink Limited + 2010-2012, Google, Inc. + 2009, Red Hat, Inc. +License: Expat + +Files: gfx/ots/* +Copyright: 2009 The Chromium Authors +License: BSD-3-clause + +Files: gfx/ots/sync.sh +Copyright: no-info-found +License: MPL-2.0 + +Files: gfx/qcms/* +Copyright: 2009, Mozilla Foundation + 1998-2007, Marti Maria +License: Expat + +Files: gfx/qcms/chain.c +Copyright: 2009, Mozilla Corporation + 1998-2007, Marti Maria +License: Expat + +Files: gfx/qcms/qcms.h +Copyright: 1994-1996, SunSoft, Inc. +License: Expat + +Files: gfx/thebes/gfxScriptItemizer.cpp + gfx/thebes/gfxScriptItemizer.h +Copyright: 1995-2009, International Business Machines (IBM) +License: MPL-2.0 or Expat + +Files: gfx/ycbcr/* +Copyright: 2006-2008 The Chromium Authors +License: BSD-3-clause + +Files: gfx/ycbcr/YCbCrUtils.cpp + gfx/ycbcr/YCbCrUtils.h + gfx/ycbcr/chromium_types.h + gfx/ycbcr/ycbcr_to_rgb565.cpp +Copyright: no-info-found +License: MPL-2.0 + +Files: intl/icu/source/tools/tzcode/* +Copyright: no-info-found +License: public-domain + +Files: intl/unicharutil/util/nsBidiUtils.cpp + intl/unicharutil/util/nsUnicharUtils.h +Copyright: 2000-2002, Japan Network Information Center +License: MPL-2.0 or BSD-3-clause + +Files: intl/unicharutil/util/nsUnicodePropertyData.cpp + intl/unicharutil/util/nsUnicodeScriptCodes.h +Copyright: 1991-2014, Unicode, Inc. +License: MPL-2.0 + +Files: ipc/chromium/* +Copyright: 2006-2008 The Chromium Authors +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/* +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2000-2009, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/* +Copyright: 2000-2002 Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/WIN32-Code/tree.h +Copyright: 2002, Niels Provos +License: BSD-2-clause + +Files: ipc/chromium/src/third_party/libevent/arc4random.c +Copyright: 2010-2012, Niels Provos and Nick Mathewson + 2010, Chris Davis, Niels Provos, and Nick Mathewson + 2008, Damien Miller + 1996, David Mazieres +License: ISC + +Files: ipc/chromium/src/third_party/libevent/buffer_iocp.c + ipc/chromium/src/third_party/libevent/bufferevent-internal.h + ipc/chromium/src/third_party/libevent/bufferevent_async.c + ipc/chromium/src/third_party/libevent/bufferevent_openssl.c + ipc/chromium/src/third_party/libevent/changelist-internal.h + ipc/chromium/src/third_party/libevent/defer-internal.h + ipc/chromium/src/third_party/libevent/evmap-internal.h + ipc/chromium/src/third_party/libevent/evmap.c + ipc/chromium/src/third_party/libevent/evthread_pthread.c + ipc/chromium/src/third_party/libevent/evthread_win32.c + ipc/chromium/src/third_party/libevent/evutil.c + ipc/chromium/src/third_party/libevent/evutil_rand.c + ipc/chromium/src/third_party/libevent/iocp-internal.h + ipc/chromium/src/third_party/libevent/ipv6-internal.h + ipc/chromium/src/third_party/libevent/mm-internal.h + ipc/chromium/src/third_party/libevent/ratelim-internal.h + ipc/chromium/src/third_party/libevent/util-internal.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/bufferevent.c + ipc/chromium/src/third_party/libevent/epoll.c +Copyright: 2007-2012, Niels Provos, Nick Mathewson + 2000-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/bufferevent_pair.c + ipc/chromium/src/third_party/libevent/event_iocp.c + ipc/chromium/src/third_party/libevent/evthread-internal.h + ipc/chromium/src/third_party/libevent/evthread.c + ipc/chromium/src/third_party/libevent/listener.c +Copyright: 2008-2012, Niels Provos, Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/compat/* +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/evdns.c +Copyright: 2007-2012, Nick Mathewson and Niels Provos + 2006-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/evport.c +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2007, Sun Microsystems + 2006-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/include/event2/buffer.h + ipc/chromium/src/third_party/libevent/include/event2/buffer_compat.h + ipc/chromium/src/third_party/libevent/include/event2/bufferevent_ssl.h + ipc/chromium/src/third_party/libevent/include/event2/thread.h + ipc/chromium/src/third_party/libevent/include/event2/util.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/include/event2/bufferevent_compat.h +Copyright: 2007-2012, Niels Provos, Nick Mathewson + 2000-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/include/event2/dns.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2006-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/log.c +Copyright: 2005-2012, Niels Provos and Nick Mathewson + 2000, Dug Song + 1993, University of California +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/minheap-internal.h +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2006, Maxim Yegorushkin +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/strlcpy.c +Copyright: 1998, Todd C. Miller +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/* +Copyright: 2007-2012, Niels Provos and Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/bench.c + ipc/chromium/src/third_party/libevent/test/regress.c + ipc/chromium/src/third_party/libevent/test/regress.h + ipc/chromium/src/third_party/libevent/test/regress_buffer.c + ipc/chromium/src/third_party/libevent/test/regress_bufferevent.c + ipc/chromium/src/third_party/libevent/test/regress_dns.c + ipc/chromium/src/third_party/libevent/test/regress_http.c + ipc/chromium/src/third_party/libevent/test/regress_main.c + ipc/chromium/src/third_party/libevent/test/regress_rpc.c + ipc/chromium/src/third_party/libevent/test/test-eof.c + ipc/chromium/src/third_party/libevent/test/test-init.c + ipc/chromium/src/third_party/libevent/test/test-time.c + ipc/chromium/src/third_party/libevent/test/test-weof.c +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2000-2009, Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/regress_util.c +Copyright: 2009-2012, Nick Mathewson and Niels Provos +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/test/tinytest.c + ipc/chromium/src/third_party/libevent/test/tinytest.h + ipc/chromium/src/third_party/libevent/test/tinytest_macros.h +Copyright: 2009-2012, Nick Mathewson +License: BSD-3-clause + +Files: ipc/chromium/src/third_party/libevent/win32select.c +Copyright: 2007-2012, Niels Provos and Nick Mathewson + 2003, Michael A. Davis + 2000-2007, Niels Provos +License: BSD-3-clause + +Files: ipc/glue/StringUtil.cpp +Copyright: 2006-2008, The Chromium Authors. +License: MPL-2.0 + +Files: ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.cpp + ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.h + ipc/ipdl/test/cxx/IPDLUnitTestSubprocess.cpp + ipc/ipdl/test/cxx/IPDLUnitTestSubprocess.h + ipc/ipdl/test/cxx/IPDLUnitTestTypes.h + ipc/ipdl/test/cxx/IPDLUnitTests.h + ipc/ipdl/test/cxx/TestHighestPrio.cpp + ipc/ipdl/test/cxx/genIPDLUnitTests.py + ipc/ipdl/test/cxx/app/* +Copyright: no-info-found +License: MPL-2.0 + +Files: js/src/builtin/embedjs.py +Copyright: 2012, the V8 project authors +License: MPL-2.0 or BSD-3-clause + +Files: js/src/ctypes/libffi/ltmain.sh +Copyright: 1996-2001, 2003-2006, Free Software Foundation +License: GPL-2+ + +Files: js/src/ctypes/libffi/msvcc.sh +Copyright: 2009, Daniel Witte +License: MPL-1.1 or GPL-2 or LGPL-2.1 + +Files: js/src/ctypes/libffi/src/* +Copyright: 2011-2013, Anthony Green + 1996-2004, 2007, 2008, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/aarch64/* +Copyright: 2009-2012, ARM Ltd. +License: Expat + +Files: js/src/ctypes/libffi/src/arc/* +Copyright: 2013, Synopsys, Inc. (www.synopsys.com) + 2012, Anthony Green +License: Expat + +Files: js/src/ctypes/libffi/src/arc/ffi.c +Copyright: 2013, Synopsys, Inc. (www.synopsys.com) +License: Expat + +Files: js/src/ctypes/libffi/src/arm/* +Copyright: 2012, Anthony Green + 2010, CodeSourcery + 1996-2003, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/arm/ffi.c +Copyright: 2011, Timothy Wall + 2011, Plausible Labs Cooperative, Inc. + 2011, Free Software Foundation + 2011, Anthony Green + 1998, 2008, 2011, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/arm/gentramp.sh +Copyright: 2010, Plausible Labs Cooperative, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/avr32/* +Copyright: 2011-2012, Anthony Green + 2009, Bradley Smith +License: Expat + +Files: js/src/ctypes/libffi/src/bfin/* +Copyright: 2012, Alexandre K. I. de Mendonca +License: Expat + +Files: js/src/ctypes/libffi/src/closures.c +Copyright: 2011, Plausible Labs Cooperative, Inc + 2007, 2009-2010, Red Hat, Inc + 2007, 2009-2010, Free Software Foundation, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/cris/ffi.c +Copyright: 2007, Free Software Foundation, Inc. + 2005, Axis Communications AB + 2004, Simon Posnjak + 1998, Cygnus Solutions +License: Expat + +Files: js/src/ctypes/libffi/src/debug.c + js/src/ctypes/libffi/src/java_raw_api.c + js/src/ctypes/libffi/src/raw_api.c + js/src/ctypes/libffi/src/types.c +Copyright: 1996, 1998, 1999, 2007-2009, 2011, 2013, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/frv/ffi.c +Copyright: 2008, Red Hat, Inc. + 2007, Free Software Foundation, Inc. + 2004, Anthony Green +License: Expat + +Files: js/src/ctypes/libffi/src/ia64/ffi.c +Copyright: 2011, Anthony Green + 2000, Hewlett Packard Company + 1998, 2007, 2008, 2012, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/ia64/ia64_flags.h +Copyright: 2000, Hewlett Packard Company +License: Expat + +Files: js/src/ctypes/libffi/src/m32r/* +Copyright: 2008, Red Hat, Inc. + 2004, Renesas Technology +License: Expat + +Files: js/src/ctypes/libffi/src/m32r/ffitarget.h +Copyright: 2012, Anthony Green + 2004, Renesas Technology +License: Expat + +Files: js/src/ctypes/libffi/src/m88k/* +Copyright: 2013, Miodrag Vallat. +License: Expat + +Files: js/src/ctypes/libffi/src/metag/* +Copyright: 2013, Imagination Technologies Ltd. +License: Expat + +Files: js/src/ctypes/libffi/src/metag/ffi.c +Copyright: 2013, Imagination Technologies +License: Expat + +Files: js/src/ctypes/libffi/src/microblaze/* +Copyright: 2012, 2013, Xilinx, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/mips/ffi.c +Copyright: 2011, Anthony Green + 2008, David Daney + 1996, 2007, 2008, 2011, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/moxie/* +Copyright: 2012, 2013, Anthony Green +License: Expat + +Files: js/src/ctypes/libffi/src/nios2/* +Copyright: 2013, Mentor Graphics +License: Expat + +Files: js/src/ctypes/libffi/src/pa/ffi.c +Copyright: 2011, Anthony Green + 2008, Red Hat, Inc. + 2006, Free Software Foundation, Inc. + 2003, 2004, Randolph Chung +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/* +Copyright: 2013, IBM + 2011, Kyle Moffett + 2011, Anthony Green + 2008, Red Hat, Inc. + 2007, 2008, Free Software Foundation, Inc. + 1998, Geoffrey Keating +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/asm.h +Copyright: 1998, Geoffrey Keating +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/ffi_darwin.c +Copyright: 2002, 2006, 2007-2009-2010, Free Software Foundation, Inc. + 2001, John Hornkvist + 1998, Geoffrey Keating +License: Expat + +Files: js/src/ctypes/libffi/src/powerpc/ffitarget.h +Copyright: 2012, Anthony Green + 2007-2008, 2010, Free Software Foundation, Inc. + 1996-2003, 2010, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/s390/ffi.c +Copyright: 2008, Red Hat, Inc. + 2000-2007, Software AG +License: Expat + +Files: js/src/ctypes/libffi/src/sh/ffi.c +Copyright: 2008, Red Hat, Inc. + 2002-2008, 2012, Kaz Kojima +License: Expat + +Files: js/src/ctypes/libffi/src/sh64/ffi.c +Copyright: 2008, Anthony Green + 2003, 2004, 2006-2007, 2012, Kaz Kojima +License: Expat + +Files: js/src/ctypes/libffi/src/tile/* +Copyright: 2012, Tilera Corp +License: Expat + +Files: js/src/ctypes/libffi/src/vax/* +Copyright: 2013, Miodrag Vallat. +License: Expat + +Files: js/src/ctypes/libffi/src/x86/* +Copyright: 2012, Anthony Green + 2007, 2008, 2010, Free Software Foundation, Inc. + 1996-2003, 2010, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/x86/ffi.c +Copyright: 2008, 2010, Free Software Foundation, Inc. + 2002, Roger Sayle + 2002, Ranjit Mathew + 2002, Bo Thorsen + 1996, 1998-1999, 2001, 2007-2008, Red Hat, Inc. +License: Expat + +Files: js/src/ctypes/libffi/src/x86/ffi64.c +Copyright: 2013, The Written Word, Inc. + 2011, Anthony Green + 2008, 2010, Red Hat, Inc. + 2002, 2007, Bo Thorsen +License: Expat + +Files: js/src/ctypes/libffi/src/xtensa/* +Copyright: 2013, Tensilica, Inc. +License: Expat + +Files: js/src/ctypes/libffi/texinfo.tex +Copyright: 1985-1986, 1988, 1990-1995, +License: GPL-3 + +Files: js/src/devtools/rootAnalysis/analyze.py + js/src/devtools/vprof/testVprofMT.c + js/src/jit/BacktrackingAllocator.h +Copyright: no-info-found +License: MPL-2.0 + +Files: js/src/editline/* +Copyright: 1992-1993, Simmule Turner and Rich Salz +License: MPL-2.0 + +Files: js/src/irregexp/* +Copyright: 2006-2014, the V8 project authors +License: BSD-3-clause + +Files: js/src/jit/ExecutableAllocator.cpp + js/src/jit/ExecutableAllocator.h +Copyright: 2006-2009, 2012, Apple Inc. +License: BSD-2-clause + +Files: js/src/jit/arm/Simulator-arm.cpp + js/src/jit/arm/Simulator-arm.h + js/src/octane/* +Copyright: 2006-2014, the V8 project authors +License: BSD-3-clause + +Files: js/src/octane/code-load.js +Copyright: 2013, the Octane Benchmark project authors + 2012, The Closure Library Authors + 2012, John Resig, http://jquery.com +License: Apache-2.0 or BSD-3-clause or Expat + +Files: js/src/octane/deltablue.js +Copyright: 2008, the V8 project authors + 1996, John Maloney and Mario Wolczko +License: GPL-2+ + +Files: js/src/octane/gbemu-part1.js + js/src/octane/gbemu-part2.js +Copyright: 2013, Google, Inc. + 2010-2012, Grant Galitz +License: GPL-2 + +Files: js/src/octane/mandreel.js +Copyright: 2012, Onan Games + 2012, Google, Inc.F +License: BSD-3-clause + +Files: js/src/octane/navier-stokes.js +Copyright: 2013, the V8 project authors + 2009, Oliver Hunt +License: Expat + +Files: js/src/octane/typescript.js +Copyright: 2013, the Octane Benchmark project authors +License: BSD-3-clause + +Files: js/src/tests/lib/jittests.py + js/src/tests/shell/shell.js + js/src/tests/test262/browser.js + js/src/tests/test262/intl402/shell.js + js/xpconnect/tests/unit/component-blob.js + js/xpconnect/tests/unit/component-file.js + js/xpconnect/tests/unit/component_import.js + js/xpconnect/tests/unit/head_watchdog.js + js/xpconnect/tests/unit/test_attributes.js + js/xpconnect/tests/unit/test_blob.js + js/xpconnect/tests/unit/test_blob2.js + js/xpconnect/tests/unit/test_bogus_files.js + js/xpconnect/tests/unit/test_bug1021312.js + js/xpconnect/tests/unit/test_bug408412.js + js/xpconnect/tests/unit/test_bug451678.js + js/xpconnect/tests/unit/test_bug780370.js + js/xpconnect/tests/unit/test_bug809652.js + js/xpconnect/tests/unit/test_bug809674.js + js/xpconnect/tests/unit/test_bug813901.js + js/xpconnect/tests/unit/test_bug867486.js + js/xpconnect/tests/unit/test_bug976151.js + js/xpconnect/tests/unit/test_bug_442086.js + js/xpconnect/tests/unit/test_file.js + js/xpconnect/tests/unit/test_file2.js + js/xpconnect/tests/unit/test_import.js + js/xpconnect/tests/unit/test_js_weak_references.js + js/xpconnect/tests/unit/test_nuke_sandbox.js + js/xpconnect/tests/unit/test_params.js + js/xpconnect/tests/unit/test_recursive_import.js + js/xpconnect/tests/unit/test_reflect_parse.js + js/xpconnect/tests/unit/test_returncode.js + js/xpconnect/tests/unit/test_sandbox_metadata.js + js/xpconnect/tests/unit/test_tearoffs.js + js/xpconnect/tests/unit/test_unload.js + js/xpconnect/tests/unit/test_watchdog_default.js + js/xpconnect/tests/unit/test_watchdog_disable.js + js/xpconnect/tests/unit/test_watchdog_enable.js + js/xpconnect/tests/unit/test_watchdog_hibernate.js + js/xpconnect/tests/unit/test_watchdog_toggle.js + js/xpconnect/tests/unit/test_xpcomutils.js + layout/base/tests/marionette/* + layout/reftests/border-image/* + layout/reftests/svg/* + layout/reftests/table-dom/* + layout/reftests/w3c-css/* + media/libcubeb/include/* + media/libcubeb/src/cubeb_osx_run_loop.c +Copyright: no-info-found +License: MPL-2.0 + +Files: js/src/tests/test262/intl402/browser.js +Copyright: 2012, Mozilla Corporation +License: MPL-2.0 + +Files: js/src/vtune/* +Copyright: 2005-2013, Intel Corporation +License: BSD-3-clause or GPL-2 + +Files: layout/base/nsFrameManager.cpp + layout/base/nsFrameManager.h + layout/generic/nsLineLayout.h + layout/style/nsHTMLStyleSheet.cpp +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: layout/reftests/fonts/mark-generate.py + layout/reftests/fonts/math/* +Copyright: 2008, Mozilla Corporation +License: MPL-2.0 + +Files: media/gmp-clearkey/0.1/WMFH264Decoder.cpp + media/gmp-clearkey/0.1/WMFH264Decoder.h + media/gmp-clearkey/0.1/WMFUtils.cpp + media/gmp-clearkey/0.1/WMFUtils.h +Copyright: 2012-2014, Mozilla Foundation and contributors +License: Apache-2.0 + +Files: media/kiss_fft/_kiss_fft_guts.h + media/kiss_fft/kiss_fft.c + media/kiss_fft/kiss_fftr.c +Copyright: 2003-2010, Mark Borgerding +License: BSD-3-clause + +Files: media/libcubeb/src/android/* +Copyright: 2005-2013, The Android Open Source Project +License: Apache-2.0 + +Files: media/libnestegg/* +Copyright: 2010 Mozilla Foundation +License: ISC + +Files: media/libnestegg/src/* +Copyright: 2004-2010, Alex Pankratov +License: BSD-3-clause + +Files: media/libogg/* +Copyright: 2002-2007 Xiph.org Foundation +License: BSD-3-clause + +Files: media/libopus/celt/* +Copyright: 2007-2009, Xiph.Org Foundation + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/celt/_kiss_fft_guts.h +Copyright: 2003, 2004, Mark Borgerding +License: BSD-2-clause + +Files: media/libopus/celt/arch.h + media/libopus/celt/fixed_generic.h + media/libopus/celt/mathops.c + media/libopus/celt/mathops.h +Copyright: 2007-2009, Xiph.Org Foundation + 2007-2008, CSIRO + 2002-2008, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/arm/* +Copyright: 2013, Parrot + 2010, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/celt/arm/fixed_armv4.h + media/libopus/celt/arm/kiss_fft_armv4.h + media/libopus/celt/arm/kiss_fft_armv5e.h +Copyright: 2013, Xiph.Org Foundation and contributors +License: BSD-2-clause + +Files: media/libopus/celt/arm/fixed_armv5e.h +Copyright: 2013, Parrot + 2007-2009, Xiph.Org Foundation + 2007-2008, CSIRO + 2003-2008, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/bands.c + media/libopus/celt/bands.h + media/libopus/celt/celt.c + media/libopus/celt/celt.h + media/libopus/celt/celt_decoder.c + media/libopus/celt/celt_encoder.c + media/libopus/celt/modes.c + media/libopus/celt/modes.h +Copyright: 2008-2012, Gregory Maxwell + 2007-2010, Xiph.Org Foundation + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/celt/celt_lpc.c + media/libopus/celt/celt_lpc.h +Copyright: 1994-2002, 2009-2012, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/celt/cpu_support.h +Copyright: 2013, Parrot + 2010, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/celt/cwrs.c + media/libopus/celt/cwrs.h +Copyright: 2007-2009, Xiph.Org Foundation + 2007-2009, Timothy B. Terriberry + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/celt/ecintrin.h + media/libopus/celt/entcode.h + media/libopus/celt/entdec.c + media/libopus/celt/entdec.h + media/libopus/celt/entenc.c + media/libopus/celt/entenc.h + media/libopus/celt/mfrngcod.h +Copyright: 2008-2009, Xiph.Org Foundation + 2001-2011, Timothy B. Terriberry +License: BSD-2-clause + +Files: media/libopus/celt/entcode.c +Copyright: 2001-2011, Timothy B. Terriberry +License: BSD-2-clause + +Files: media/libopus/celt/fixed_debug.h + media/libopus/celt/stack_alloc.h +Copyright: 2007-2012, Xiph.Org Foundation + 2002-2008, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/float_cast.h +Copyright: 2001, Erik de Castro Lopo +License: BSD-2-clause + +Files: media/libopus/celt/kiss_fft.c + media/libopus/celt/kiss_fft.h +Copyright: 2008, Xiph.Org Foundation, CSIRO + 2005-2007, Xiph.Org Foundation + 2003-2004, Mark Borgerding +License: BSD-2-clause + +Files: media/libopus/celt/os_support.h +Copyright: 2007, Jean-Marc Valin +License: BSD-2-clause + +Files: media/libopus/celt/x86/* +Copyright: 2013, Jean-Marc Valin and John Ridges +License: BSD-2-clause + +Files: media/libopus/include/* +Copyright: 1994-2002, 2009-2012, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/include/opus.h + media/libopus/include/opus_defines.h +Copyright: 2010, 2011, Xiph.Org Foundation, Skype Limited +License: BSD-2-clause + +Files: media/libopus/include/opus_custom.h +Copyright: 2008-2012, Gregory Maxwell + 2007-2010, Xiph.Org Foundation + 2007-2008, CSIRO +License: BSD-2-clause + +Files: media/libopus/silk/* +Copyright: 2006-2011, Skype Limited +License: BSD-2-clause + +Files: media/libopus/silk/MacroDebug.h +Copyright: 2012, Xiph.Org Foundation + 2006-2011, Skype Limited +License: BSD-2-clause + +Files: media/libopus/silk/arm/* +Copyright: 2013, Parrot + 2006-2011, Skype Limited +License: BSD-2-clause + +Files: media/libopus/silk/arm/SigProc_FIX_armv4.h +Copyright: 2013, Xiph.Org Foundation and contributors + 2013, Parrot +License: BSD-2-clause + +Files: media/libopus/silk/arm/macros_armv4.h +Copyright: 2013, Xiph.Org Foundation and contributors +License: BSD-2-clause + +Files: media/libopus/src/* +Copyright: 1994-2002, 2009-2012, Xiph.Org Foundation +License: BSD-2-clause + +Files: media/libopus/src/mlp.c + media/libopus/src/mlp.h +Copyright: 2008-2011, Octasic Inc. +License: BSD-2-clause + +Files: media/libopus/src/opus.c + media/libopus/src/opus_decoder.c + media/libopus/src/opus_encoder.c +Copyright: 2010, 2011, Xiph.Org Foundation, Skype Limited +License: BSD-2-clause + +Files: media/libpng/* +Copyright: 1998-2014, Glenn Randers-Pehrson + 1996-1997, Andreas Dilger + 1995-1996, Guy Eric Schalnat, Group 42, Inc. +License: libpng + +Files: media/libpng/arm/* +Copyright: 2014, Glenn Randers-Pehrson +License: libpng + +Files: media/libpng/pnglibconf.h +Copyright: no-info-found +License: MPL-2.0 + +Files: media/libsoundtouch/src/* +Copyright: Olli Parviainen +License: LGPL-2.1+ + +Files: media/libspeex_resampler/src/* +Copyright: 2002, 2003, 2007, Jean-Marc Valin +License: BSD-3-clause + +Files: media/libspeex_resampler/src/resample.c + media/libspeex_resampler/src/resample_sse.c +Copyright: 2008, Thorvald Natvig + 2007-2008, Jean-Marc Valin +License: BSD-3-clause + +Files: media/libspeex_resampler/src/resample_neon.c +Copyright: 2011, Texas Instruments + 2008, Thorvald Natvig + 2007-2008, Jean-Marc Valin +License: BSD-3-clause + +Files: media/libspeex_resampler/src/simd_detect.cpp + media/libspeex_resampler/src/simd_detect.h +Copyright: no-info-found +License: MPL-2.0 + +Files: media/libtheora/* +Copyright: 2002-2007 Xiph.org Foundation +License: BSD-3-clause + +Files: media/libvorbis/* +Copyright: 2002-2007 Xiph.org Foundation +License: BSD-3-clause + +Files: media/libvpx/* +Copyright: 2010 Google Inc. +License: BSD-3-clause + +Files: media/mtransport/nr_socket_prsock.cpp +Copyright: 2007, Adobe Systems, Incorporated + 2001-2003, 2006, Network Resonance, Inc. +License: MPL-2.0 or BSD-3-clause + +Files: media/mtransport/nr_socket_prsock.h + media/mtransport/nricectx.cpp + media/mtransport/nricectx.h + media/mtransport/nricemediastream.cpp + media/mtransport/nricemediastream.h + media/mtransport/nriceresolver.cpp + media/mtransport/nriceresolver.h + media/mtransport/nriceresolverfake.cpp + media/mtransport/nriceresolverfake.h + media/mtransport/transportlayerice.cpp +Copyright: 2007, Adobe Systems, Incorporated +License: MPL-2.0 or BSD-3-clause + +Files: media/mtransport/nr_timer.cpp +Copyright: 2004, 2006, Network Resonance, Inc. +License: MPL-2.0 or BSD-2-clause + +Files: media/mtransport/test/gtest_utils.h +Copyright: 2004-2008, Google Inc. +License: MPL-2.0 or BSD-3-clause + +Files: media/mtransport/test/stunserver.cpp +Copyright: 2007, Adobe Systems, Incorporated + 2001-2003, 2006, Network Resonance, Inc. +License: MPL-2.0 or BSD-3-clause + +Files: media/mtransport/test/turn_unittest.cpp +Copyright: 2007, Adobe Systems, Incorporated +License: MPL-2.0 or BSD-3-clause + +Files: media/mtransport/third_party/nICEr/* +Copyright: 2007, Adobe Systems, Incorporated +License: BSD-3-clause + +Files: media/mtransport/third_party/nICEr/src/net/* + media/mtransport/third_party/nICEr/src/stun/nr_socket_buffered_stun.c + media/mtransport/third_party/nICEr/src/stun/nr_socket_buffered_stun.h + media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.c + media/mtransport/third_party/nICEr/src/stun/turn_client_ctx.h +Copyright: 2013, Mozilla + 2007, Adobe Systems, Incorporated +License: BSD-3-clause + +Files: media/mtransport/third_party/nICEr/src/net/nr_socket.c + media/mtransport/third_party/nICEr/src/net/nr_socket.h + media/mtransport/third_party/nICEr/src/net/nr_socket_local.h + media/mtransport/third_party/nICEr/src/net/transport_addr.c + media/mtransport/third_party/nICEr/src/net/transport_addr.h + media/mtransport/third_party/nICEr/src/net/transport_addr_reg.c + media/mtransport/third_party/nICEr/src/net/transport_addr_reg.h +Copyright: 2007, Adobe Systems, Incorporated +License: BSD-3-clause + +Files: media/mtransport/third_party/nrappkit/* +Copyright: 2001-2007, Network Resonance, Inc. +License: BSD-2-clause + +Files: media/mtransport/third_party/nrappkit/src/log/* +Copyright: 2002-2003, 2006, Network Resonance, Inc. + 1999-2001, RTFM, Inc +License: BSD-2-clause + +Files: media/mtransport/third_party/nrappkit/src/port/generic/* +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: media/mtransport/third_party/nrappkit/src/util/libekr/* +Copyright: 2002, 2003, 2006, Network Resonance, Inc + 1999, 2000, RTFM, Inc. +License: BSD-4-clause + +Files: media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.c + media/mtransport/third_party/nrappkit/src/util/libekr/r_assoc.h + media/mtransport/third_party/nrappkit/src/util/libekr/r_thread.h +Copyright: 2002, 2003, 2006, Network Resonance, Inc. + 1999-2001, RTFM, Inc. +License: BSD-2-clause + +Files: media/mtransport/third_party/nrappkit/src/util/libekr/r_crc32.c +Copyright: 2003, RTFM, Inc. + 2002-2003, 2006, Network Resonance, Inc. +License: BSD-2-clause + +Files: media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.c + media/mtransport/third_party/nrappkit/src/util/libekr/r_memory.h +Copyright: 2001-2007, Network Resonance, Inc. +License: BSD-2-clause + +Files: media/webrtc/signaling/src/media-conduit/VideoTypes.h + media/webrtc/signaling/src/media-conduit/WebrtcGmpVideoCodec.h +Copyright: 2012, The WebRTC project authors +License: MPL-2.0 + +Files: media/webrtc/trunk/webrtc/modules/audio_device/linux/alsasymboltable_linux.cc + media/webrtc/trunk/webrtc/modules/audio_device/linux/alsasymboltable_linux.h + media/webrtc/trunk/webrtc/modules/audio_device/linux/pulseaudiosymboltable_linux.cc + media/webrtc/trunk/webrtc/modules/audio_device/linux/pulseaudiosymboltable_linux.h +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: media/webrtc/trunk/webrtc/modules/audio_device/mac/portaudio/* +Copyright: 1999-2000, Ross Bencina and Phil Burk +License: Expat + +Files: media/webrtc/trunk/webrtc/modules/audio_device/opensl/* + media/webrtc/trunk/webrtc/modules/desktop_capture/desktop_device_info.cc + media/webrtc/trunk/webrtc/modules/desktop_capture/desktop_device_info.h + media/webrtc/trunk/webrtc/modules/desktop_capture/desktop_device_info_null.cc + media/webrtc/trunk/webrtc/modules/desktop_capture/mac/desktop_device_info_mac.h + media/webrtc/trunk/webrtc/modules/desktop_capture/win/desktop_device_info_win.cc + media/webrtc/trunk/webrtc/modules/desktop_capture/win/desktop_device_info_win.h + media/webrtc/trunk/webrtc/modules/desktop_capture/win/win_shared.cc + media/webrtc/trunk/webrtc/modules/desktop_capture/win/win_shared.h +Copyright: no-info-found +License: MPL-2.0 + +Files: media/webrtc/trunk/webrtc/modules/audio_processing/test/android/* +Copyright: 2005-2013, The Android Open Source Project +License: Apache-2.0 + +Files: mfbt/double-conversion/* +Copyright: 2006-2014, the V8 project authors +License: BSD-3-clause + +Files: modules/brotli/* +Copyright: 2013, 2014, Google Inc. +License: Apache-2.0 + +Files: modules/freetype2/* +Copyright: various contributors +License: GPL-2+ + +Files: modules/freetype2/builds/unix/* +Copyright: 1996-2014, Free Software Foundation, Inc +License: GPL-2+ + +Files: modules/freetype2/src/bdf/bdf.h +Copyright: 2001-2004, 2011, Francesco Zappa Nardelli + 2000, Computing Research Labs, New Mexico State University +License: Expat + +Files: modules/freetype2/src/bdf/bdferror.h +Copyright: 2001-2002, 2012, Francesco Zappa Nardelli +License: Expat + +Files: modules/freetype2/src/bdf/bdflib.c +Copyright: 2001-2014, Francesco Zappa Nardelli + 2000, Computing Research Labs, New Mexico State University +License: Expat + +Files: modules/freetype2/src/gzip/* +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: modules/freetype2/src/gzip/inftrees.c +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: modules/freetype2/src/gzip/zutil.c + modules/freetype2/src/gzip/zutil.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: modules/freetype2/src/gzip/zlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: modules/freetype2/src/pcf/* +Copyright: 2000-2014, by David Turner +License: Expat + +Files: modules/freetype2/src/tools/ftrandom/* +Copyright: 2005, 2007-2008, 2013, George Williams +License: BSD-3-clause + +Files: modules/libjar/test/unit/test_bug333423.js + modules/libjar/test/unit/test_bug597702.js + modules/libjar/test/unit/test_bug637286.js + modules/libjar/test/unit/test_corrupt_536911.js + modules/libjar/test/unit/test_corrupt_541828.js + modules/libjar/test/unit/test_dirjar_bug525755.js + modules/libjar/test/unit/test_jarinput_stream_zipreader_reference.js +Copyright: no-info-found +License: MPL-2.0 + +Files: modules/zlib/* +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: modules/zlib/src/compress.c + modules/zlib/src/deflate.h + modules/zlib/src/trees.c + modules/zlib/src/uncompr.c + modules/zlib/src/zutil.c + modules/zlib/src/zutil.h + modules/zlib/src/zconf.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: modules/zlib/src/deflate.c + modules/zlib/src/zlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: modules/zlib/src/inftrees.c +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: mozglue/android/pbkdf2_sha256.c + mozglue/android/pbkdf2_sha256.h +Copyright: 2003-2005, 2007, 2009, Colin Percival +License: BSD-2-clause + +Files: netwerk/dns/nsIDNKitInterface.h +Copyright: 2000-2002, Japan Network Information Center +License: BSD-3-clause + +Files: netwerk/dns/prepare_tlds.py +Copyright: no-info-found +License: MPL-2.0 + +Files: netwerk/protocol/ftp/nsFtpProtocolHandler.cpp +Copyright: International Business Machines (IBM) +License: MPL-2.0 + +Files: netwerk/sctp/src/* +Copyright: 2011-2012, Michael Tuexen + 2011-2012, Irene Ruengeler + 2009-2010, Humaira Kamal + 2009-2010, Brad Penoff +License: BSD-2-clause + +Files: netwerk/sctp/src/LocalArray.h + netwerk/sctp/src/ScopedFd.h + netwerk/sctp/src/ifaddrs-android-ext.h +Copyright: 2005-2013, The Android Open Source Project +License: Apache-2.0 + +Files: netwerk/sctp/src/netinet/* +Copyright: 2008-2012, Randall Stewart + 2008-2012, Michael Tuexen + 2001-2008, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/netinet/sctp_lock_userspace.h + netwerk/sctp/src/netinet/sctp_os_userspace.h +Copyright: 2008-2012, Randall Stewart + 2008-2012, Michael Tuexen + 2008-2012, Brad Penoff + 2001-2007, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/netinet/sctp_sha1.c +Copyright: 2013, Lally Singh + 2008-2013, Michael Tuexen + 2008-2012, Randall Stewart + 2001-2007, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/netinet/sctp_ss_functions.c +Copyright: 2010-2012, Robin Seggelmann + 2010-2012, Randall Stewart + 2010-2012, Michael Tuexen +License: BSD-2-clause + +Files: netwerk/sctp/src/netinet/sctp_userspace.c +Copyright: 2011, 2012, Michael Tuexen + 2011, 2012, Irene Ruengeler +License: BSD-2-clause + +Files: netwerk/sctp/src/netinet6/* +Copyright: 2008-2012, Randall Stewart + 2008-2012, Michael Tuexen + 2001-2008, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/sctp/src/user_inpcb.h + netwerk/sctp/src/user_socketvar.h +Copyright: 1982, 1986, 1990, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_ip6_var.h +Copyright: 1995-1997, and 1998, WIDE Project + 1982, 1986, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_ip_icmp.h +Copyright: 1982, 1986, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_malloc.h +Copyright: 2005, Robert N. M. Watson + 1987, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_mbuf.c + netwerk/sctp/src/user_mbuf.h +Copyright: 1982, 1986, 1988, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_queue.h +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_recv_thread.h +Copyright: 2011-2012, Michael Tuexen + 2011-2012, Irene Ruengeler +License: BSD-2-clause + +Files: netwerk/sctp/src/user_route.h +Copyright: 1980, 1986, 1993, University of California +License: BSD-3-clause + +Files: netwerk/sctp/src/user_socket.c +Copyright: 2011, 2012, Michael Tuexen + 2011, 2012, Irene Ruengeler + 2009, 2010, Humaira Kamal + 2009, 2010, Brad Penoff + 2004-2008, Robert N. M. Watson + 2004, The FreeBSD Foundation + 1982, 1986, 1988, 1990, 1993, University of California +License: BSD-2-clause + +Files: netwerk/srtp/src/* +Copyright: 2001-2006, Cisco Systems, Inc. +License: BSD-3-clause + +Files: netwerk/srtp/src/include/config.h +Copyright: no-info-found +License: MPL-2.0 + +Files: netwerk/streamconv/nsStreamConverterService.cpp +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: netwerk/test/unit/test_NetUtil.js + netwerk/test/unit/test_about_networking.js + netwerk/test/unit/test_about_protocol.js + netwerk/test/unit/test_auth_proxy.js + netwerk/test/unit/test_bug248970_cache.js + netwerk/test/unit/test_bug248970_cookie.js + netwerk/test/unit/test_bug856978.js + netwerk/test/unit/test_cookiejars.js + netwerk/test/unit/test_cookiejars_safebrowsing.js + netwerk/test/unit/test_dns_proxy_bypass.js + netwerk/test/unit/test_extract_charset_from_content_type.js + netwerk/test/unit/test_httpResponseTimeout.js + netwerk/test/unit/test_httpauth.js + netwerk/test/unit/test_mozTXTToHTMLConv.js + netwerk/test/unit/test_offlinecache_custom-directory.js + netwerk/test/unit/test_parse_content_type.js + netwerk/test/unit/test_ping_aboutnetworking.js + netwerk/test/unit/test_protocolproxyservice.js + netwerk/test/unit/test_safeoutputstream.js + netwerk/test/unit/test_speculative_connect.js + netwerk/test/unit/test_udpsocket.js + netwerk/test/unit/test_websocket_offline.js +Copyright: no-info-found +License: MPL-2.0 + +Files: netwerk/wifi/osx_wifi.h +Copyright: 2008, Google Inc. + 2006, Alf Watt +License: BSD-3-clause + +Files: nsprpub/lib/ds/plvrsion.c + nsprpub/lib/libc/src/plvrsion.c + nsprpub/lib/prstreams/plvrsion.c + nsprpub/pr/src/prvrsion.c +Copyright: 1998, Netscape Communications Corporation +License: MPL-2.0 + +Files: nsprpub/pr/include/prvrsion.h + nsprpub/pr/src/malloc/prmalloc.c +Copyright: no-info-found +License: MPL-2.0 + +Files: nsprpub/pr/src/misc/praton.c +Copyright: 2004, Internet Systems Consortium, Inc. ("ISC") + 1993, Digital Equipment Corporation + 1983, 1990, 1993, University of California +License: BSD-3-clause or ISC + +Files: nsprpub/pr/src/misc/prerrortable.c +Copyright: 1987, 1988, the Student Information Processing Board +License: MPL-2.0 + +Files: other-licenses/atk-1.0/* +Copyright: 2001-2002, Sun Microsystems Inc. +License: LGPL-2+ + +Files: other-licenses/atk-1.0/atk/atkplug.h + other-licenses/atk-1.0/atk/atksocket.h +Copyright: 2009, Novell, Inc. +License: LGPL-2+ + +Files: other-licenses/nsis/Contrib/CityHash/cityhash/* +Copyright: 2010-2014, Google, Inc. +License: Expat + +Files: other-licenses/nsis/Contrib/liteFirewall/liteFirewall.cpp +Copyright: 2007-2009, Olivier Marcoux +License: Zlib + +Files: other-licenses/snappy/* +Copyright: 2005, 2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: other-licenses/snappy/src/snappy-c.cc + other-licenses/snappy/src/snappy-c.h +Copyright: 2011, Martin Gieseking +License: BSD-3-clause + +Files: other-licenses/snappy/src/snappy.h + other-licenses/snappy/src/snappy_unittest.cc +Copyright: 2005, and onwards Google Inc +License: BSD-3-clause + +Files: parser/expat/* +Copyright: 1998, 1999, 2000 Thai Open Source Software Center Ltd + and Clark Cooper + 2001, 2002 Expat maintainers +License: Expat + +Files: parser/expat/lib/moz_extensions.c +Copyright: no-info-found +License: MPL-2.0 + +Files: parser/html/jArray.h + parser/html/nsHtml5ArrayCopy.h + parser/html/nsHtml5AttributeName.cpp + parser/html/nsHtml5AttributeName.h + parser/html/nsHtml5ElementName.cpp + parser/html/nsHtml5ElementName.h + parser/html/nsHtml5Macros.h + parser/html/nsHtml5NamedCharacters.cpp + parser/html/nsHtml5NamedCharacters.h + parser/html/nsHtml5Portability.h + parser/html/nsHtml5StateSnapshot.cpp + parser/html/nsHtml5StateSnapshot.h + parser/html/nsHtml5UTF16Buffer.cpp + parser/html/nsHtml5UTF16Buffer.h + parser/html/javasrc/* +Copyright: 2008-2014, Mozilla Foundation +License: Expat + +Files: parser/html/javasrc/MetaScanner.java + parser/html/javasrc/StackNode.java +Copyright: 2007-2011, Mozilla Foundation + 2007, Henri Sivonen +License: Expat + +Files: parser/html/javasrc/Tokenizer.java + parser/html/javasrc/TreeBuilder.java +Copyright: 2007-2013, Mozilla Foundation + 2005-2007, Henri Sivonen + 2004-2010, Apple Computer, Inc. +License: Expat + +Files: parser/html/nsHtml5HtmlAttributes.cpp + parser/html/nsHtml5HtmlAttributes.h + parser/html/nsHtml5MetaScanner.cpp + parser/html/nsHtml5MetaScanner.h + parser/html/nsHtml5StackNode.cpp + parser/html/nsHtml5StackNode.h +Copyright: 2007-2011, Mozilla Foundation + 2007, Henri Sivonen +License: Expat + +Files: parser/html/nsHtml5Tokenizer.cpp + parser/html/nsHtml5Tokenizer.h + parser/html/nsHtml5TreeBuilder.cpp + parser/html/nsHtml5TreeBuilder.h +Copyright: 2007-2013, Mozilla Foundation + 2005-2007, Henri Sivonen + 2004-2010, Apple Computer, Inc. +License: Expat + +Files: parser/html/nsHtml5TokenizerCppSupplement.h + python/mach/* + python/mach_commands.py + python/mozboot/* + python/mozbuild/* + python/mozversioncontrol/* +Copyright: no-info-found +License: MPL-2.0 + +Files: security/certverifier/OCSPCache.cpp + security/certverifier/OCSPCache.h +Copyright: 2013-2015, Mozilla Contributors +License: Apache-2.0 or MPL-2.0 + +Files: security/nss/lib/dbm/* +Copyright: 1990, 1993-1994, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/include/ncompat.h + security/nss/lib/dbm/include/queue.h +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/include/extern.h +Copyright: 1991, 1993, 1994, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/include/hsearch.h + security/nss/lib/dbm/include/search.h +Copyright: 1990, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/db.c +Copyright: 1991, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/h_func.c + security/nss/lib/dbm/src/memmove.c +Copyright: 1990, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/mktemp.c +Copyright: 1987, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/src/strerror.c +Copyright: 1988, 1993, University of California +License: BSD-3-clause + +Files: security/nss/lib/dbm/tests/* +Copyright: no-info-found +License: MPL-2.0 + +Files: security/nss/lib/freebl/intel-gcm-wrap.c + security/nss/lib/freebl/intel-gcm.h +Copyright: 2013, Intel Corp. +License: MPL-2.0 + +Files: security/nss/lib/jar/jzconf.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: security/nss/lib/jar/jzlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: security/nss/lib/util/pkcs11.h + security/nss/lib/util/pkcs11f.h + security/nss/lib/util/pkcs11p.h + security/nss/lib/util/pkcs11u.h +Copyright: 1994-1999, RSA Security Inc. +License: MPL-2.0 + +Files: security/nss/lib/ssl/ssl3gthr.c + security/nss/lib/util/utilpars.c + services/common/tests/unit/head_helpers.js +Copyright: no-info-found +License: MPL-2.0 + +Files: security/nss/lib/zlib/* +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: security/nss/lib/zlib/compress.c + security/nss/lib/zlib/deflate.h + security/nss/lib/zlib/trees.c + security/nss/lib/zlib/uncompr.c + security/nss/lib/zlib/zutil.c + security/nss/lib/zlib/zutil.h +Copyright: 1995-2013, Jean-loup Gailly +License: Zlib + +Files: security/nss/lib/zlib/deflate.c + security/nss/lib/zlib/zlib.h +Copyright: 1995-2013, Jean-loup Gailly and Mark Adler +License: Zlib + +Files: security/nss/lib/zlib/inftrees.c +Copyright: 1995-2013, Mark Adler +License: Zlib + +Files: security/nss/lib/zlib/zconf.h +Copyright: 1995-2010, Jean-loup Gailly +License: Zlib + +Files: security/sandbox/chromium/base/third_party/dynamic_annotations/* +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: security/sandbox/chromium/base/third_party/superfasthash/* +Copyright: 2010, Paul Hsieh +License: BSD-2-clause + +Files: testing/gtest/gmock/* + testing/gtest/gtest/* +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: testing/mochitest/pywebsocket/* +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: testing/mochitest/pywebsocket/mod_pywebsocket/http_header_util.py +Copyright: 2011, Google Inc. +License: BSD-3-clause + +Files: testing/mochitest/tests/SimpleTest/LogController.js + testing/mochitest/tests/SimpleTest/MemoryStats.js + testing/mochitest/tests/SimpleTest/MockObjects.js + testing/mochitest/tests/SimpleTest/setup.js + testing/mozbase/manifestparser/tests/test_convert_directory.py + testing/mozbase/manifestparser/tests/test_convert_symlinks.py + testing/mozbase/manifestparser/tests/test_manifestparser.py + testing/mozbase/mozfile/tests/test_tempdir.py + testing/mozbase/mozfile/tests/test_tempfile.py + testing/web-platform/tests/resources/testharnessreport.js + toolkit/components/ctypes/tests/unit/test_jsctypes.js + toolkit/components/mediasniffer/mp3sniff.c + toolkit/components/osfile/tests/xpcshell/test_file_URL_conversion.js + toolkit/components/osfile/tests/xpcshell/test_makeDir.js + toolkit/components/osfile/tests/xpcshell/test_path.js + toolkit/components/osfile/tests/xpcshell/test_path_constants.js + toolkit/components/osfile/tests/xpcshell/test_removeDir.js + toolkit/components/osfile/tests/xpcshell/test_removeEmptyDir.js + toolkit/components/passwordmgr/test/browser/* + toolkit/components/places/tests/favicons/head_favicons.js + toolkit/content/tests/browser/browser_save_resend_postdata.js + toolkit/content/tests/browser/common/* + toolkit/content/tests/unit/* +Copyright: no-info-found +License: MPL-2.0 + +Files: testing/tools/screenshot/* +Copyright: 2009, The Mozilla Foundation +License: BSD-3-clause + +Files: testing/web-platform/tests/resources/webidl2/test/widlproc/* +Copyright: 2009, Aplix Corporation +License: Apache-2.0 + +Files: toolkit/components/protobuf/* +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/components/reader/Readability.js +Copyright: 2010, Arc90 Inc. +License: Apache-2.0 + +Files: toolkit/components/url-classifier/HashStore.cpp +Copyright: 2006-2013, The Chromium Authors. +License: BSD-3-clause + + +Files: toolkit/crashreporter/google-breakpad/* +Copyright: 2006-2009, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/arm_ex_reader.cc + toolkit/crashreporter/google-breakpad/src/common/arm_ex_reader.h + toolkit/crashreporter/google-breakpad/src/common/arm_ex_to_module.cc + toolkit/crashreporter/google-breakpad/src/common/arm_ex_to_module.h +Copyright: 2011, Linaro Limited + 2010-2011, Google Inc. +License: BSD-3-clause or Expat + +Files: toolkit/crashreporter/google-breakpad/src/common/dwarf/* + toolkit/crashreporter/google-breakpad/src/common/linux/elf_symbols_to_module.cc + toolkit/crashreporter/google-breakpad/src/common/linux/elf_symbols_to_module.h +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/dwarf/bytereader_unittest.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/cfi_assembler.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/cfi_assembler.h + toolkit/crashreporter/google-breakpad/src/common/dwarf/dwarf2reader_cfi_unittest.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/dwarf2reader_die_unittest.cc + toolkit/crashreporter/google-breakpad/src/common/dwarf/dwarf2reader_test_common.h +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/dwarf/types.h +Copyright: 2008, Google, Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/mac/GTMDefines.h + toolkit/crashreporter/google-breakpad/src/common/mac/GTMLogger.h + toolkit/crashreporter/google-breakpad/src/common/mac/GTMLogger.m + toolkit/crashreporter/google-breakpad/src/common/mac/testing/* +Copyright: 2007-2008, 2010, 2012, Google Inc. +License: Apache-2.0 + +Files: toolkit/crashreporter/google-breakpad/src/common/mac/testing/GTMSenTestCase.h +Copyright: 2007, 2008, Google Inc. + 1997-2005, Sen:te (Sente SA). +License: Apache-2.0 or BSD-2-clause + +Files: toolkit/crashreporter/google-breakpad/src/common/md5.cc +Copyright: no-info-found +License: public-domain + +Files: toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc + toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/processor/disassembler_x86.cc + toolkit/crashreporter/google-breakpad/src/processor/disassembler_x86.h + toolkit/crashreporter/google-breakpad/src/processor/disassembler_x86_unittest.cc + toolkit/crashreporter/google-breakpad/src/processor/exploitability_unittest.cc +Copyright: no-info-found +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/processor/static_map-inl.h + toolkit/crashreporter/google-breakpad/src/processor/static_map.h + toolkit/crashreporter/google-breakpad/src/processor/static_map_iterator-inl.h + toolkit/crashreporter/google-breakpad/src/processor/static_map_iterator.h +Copyright: 2005-2006, 2008-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/google-breakpad/src/third_party/lss/* +Copyright: 1999-2013, Google Inc. +License: BSD-3-clause + +Files: toolkit/crashreporter/test/browser/browser_clearReports.js +Copyright: no-info-found +License: MPL-2.0 + +Files: toolkit/locales/compare-locales.pl + toolkit/modules/tests/xpcshell/test_propertyListsUtils.js + toolkit/mozapps/extensions/test/browser/browser_CTP_plugins.js + toolkit/mozapps/extensions/test/xpcshell/*.js + toolkit/mozapps/update/tests/TestAUSReadStrings.cpp + toolkit/mozapps/update/tests/unit_aus_update/* + toolkit/mozapps/update/tests/unit_base_updater/marFailurePartial.js + toolkit/mozapps/update/tests/unit_base_updater/marStageFailurePartial.js + toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessComplete.js + toolkit/mozapps/update/tests/unit_base_updater/marStageSuccessPartial.js + toolkit/mozapps/update/tests/unit_base_updater/marSuccessComplete.js + toolkit/mozapps/update/tests/unit_base_updater/marSuccessPartial.js + toolkit/mozapps/update/tests/unit_base_updater/marVersionDowngrade.js + toolkit/mozapps/update/tests/unit_base_updater/marWrongChannel.js + toolkit/mozapps/update/tests/unit_service_updater/marFailurePartialSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marStageFailurePartialSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessCompleteSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marStageSuccessPartialSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marSuccessCompleteSvc.js + toolkit/mozapps/update/tests/unit_service_updater/marSuccessPartialSvc.js +Copyright: no-info-found +License: MPL-2.0 + +Files: tools/update-packaging/test/common.sh + tools/update-packaging/test/make_full_update.sh +Copyright: no-info-found +License: MPL-2.0 + +Files: widget/cocoa/ComplexTextInputPanel.h +Copyright: 2006-2009, 2012, Apple Inc. +License: BSD-2-clause + +Files: widget/x11/keysym2ucs.c +Copyright: Markus G. Kuhn +License: MPL-2.0 + +Files: xpcom/build/mach_override.h +Copyright: 2003-2009, Jonathan Wolf Rentzsch: +License: Expat + +Files: xpcom/components/nsComponentManager.cpp + xpcom/io/nsLocalFile.h +Copyright: 2000, International Business Machines (IBM) +License: MPL-2.0 + +Files: xpcom/io/SpecialSystemDirectory.cpp +Copyright: 1998 Netscape Communications Corporation, + 2007 Red Hat Inc. +License: MPL-2.0 + +Files: xpcom/tests/unit/data/* + xpcom/tests/unit/test_bug725015.js + xpcom/tests/unit/test_file_createUnique.js + xpcom/tests/unit/test_file_equality.js + xpcom/tests/unit/test_file_renameTo.js + xpcom/tests/unit/test_ioutil.js + xpcom/tests/unit/test_localfile.js + xpcom/tests/unit/test_notxpcom_scriptable.js + xpcom/tests/unit/test_nsIMutableArray.js + xpcom/tests/unit/test_nsIProcess.js + xpcom/tests/unit/test_pipe.js + xpcom/tests/unit/test_seek_multiplex.js + xpcom/tests/unit/test_storagestream.js + xpcom/tests/unit/test_stringstream.js + xpcom/tests/unit/test_systemInfo.js + xpcom/tests/unit/test_streams.js + comm/suite/browser/test/browser/browser_bug409624.js + comm/suite/browser/test/browser/browser_bug427559.js + comm/suite/browser/test/browser/browser_pluginCrashCommentAndURL.js + comm/suite/browser/test/browser/browser_pluginplaypreview.js + comm/suite/browser/test/browser/browser_popupNotification.js + comm/suite/browser/test/browser/browser_privatebrowsing_protocolhandler.js + comm/suite/browser/test/browser/browser_relatedTabs.js + comm/suite/browser/test/browser/head.js + comm/suite/locales/en-US/chrome/browser/pageInfo.dtd + comm/suite/locales/en-US/chrome/common/aboutPrivateBrowsing.dtd + comm/suite/locales/en-US/suite-l10n.js +Copyright: no-info-found +License: MPL-2.0 + +License: Apache-2.0 + 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. + . + On Debian systems, the complete text of the Apache License, + Version 2.0 can be found in '/usr/share/common-licenses/Apache-2.0'. + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice(s), this list of conditions and the following disclaimer as + the first lines of this file unmodified other than the possible + addition of one or more copyright notices. + 2. Redistributions in binary form must reproduce the above copyright + notice(s), this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-3-clause + Copyright © belongs to the uploader + All rights reserved. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1.Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the owner nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-4-clause + Copyright (c) 1993 The Regents of the University of California. All + rights reserved. + . + This software was developed by the Computer Systems Engineering group + at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and + contributed to Berkeley. + . + All advertising materials mentioning features or use of this software + must display the following acknowledgement: This product includes + software developed by the University of California, Lawrence Berkeley + Laboratory. + . + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + 3. All advertising materials mentioning features or use of this + software must display the following acknowledgement: This product + includes software developed by the University of California, + Berkeley and its contributors. + . + 4. Neither the name of the University nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: CC0-1.0 + The person who associated a work with this deed has dedicated the work to the + public domain by waiving all of his or her rights to the work worldwide under + copyright law, including all related and neighboring rights, to the extent + allowed by law. + . + You can copy, modify, distribute and perform the work, even for commercial + purposes, all without asking permission. See Other Information below. + . + * In no way are the patent or trademark rights of any person affected by CC0, + nor are the rights that other persons may have in the work or in how the + work is used, such as publicity or privacy rights. + * Unless expressly stated otherwise, the person who associated a work with + this deed makes no warranties about the work, and disclaims liability for + all uses of the work, to the fullest extent permitted by applicable law. + * When using or citing the work, you should not imply endorsement by the + author or the affirmer. + +License: Expat + The MIT License + . + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated + documentation files (the "Software"), to deal in the Software + without restriction, including without limitation the rights to + use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to + whom the Software is furnished to do so, subject to the + following conditions: + . + The above copyright notice and this permission notice shall + be included in all copies or substantial portions of the + Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT + WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, + INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE AND NONINFRINGEMENT. IN NO EVENT + SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + +License: GPL-2 + On Debian systems, the complete text of the GNU General Public + License can be found in the file /usr/share/common-licenses/GPL-2'. + +License: GPL-2+ + On Debian systems, the complete text of the GNU General Public + License can be found in the file /usr/share/common-licenses/GPL-2'. + +License: GPL-3 + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 3 dated June, 2007. + . + On Debian systems, the complete text of version 3 of the GNU General + Public License can be found in '/usr/share/common-licenses/GPL-3'. + +License: ISC + Copyright © 2004-2012 by Internet Systems Consortium, Inc. ("ISC") + Copyright © 1995-2003 by Internet Software Consortium + . + Permission to use, copy, modify, and/or distribute this software for + any purpose with or without fee is hereby granted, provided that the + above copyright notice and this permission notice appear in all + copies. + . + THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY + SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT + OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +License: LGPL-2+ + This program is free software; you can redistribute it and/or modify it under + the terms of the GNU Library General Public License as published by the Free + Software Foundation; version 2 of the License, or (at your option) any later + version. + . + On Debian systems, the complete text of version 2 of the GNU Library + General Public License can be found in `/usr/share/common-licenses/LGPL-2'. + +License: LGPL-2.1 + On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/LGPL-2.1'. + +License: LGPL-2.1+ + This program is free software; you can redistribute it and/or modify it under + the terms of the GNU Library General Public License as published by the + Free Software Foundation; version 2.1 of the License, or (at your option) any + later version. + . + On Debian systems, the complete text of version 2.1 of the GNU General + Public License can be found in `/usr/share/common-licenses/LGPL-2.1'. + +License: old-MIT + Permission is hereby granted, without written agreement and without + license or royalty fees, to use, copy, modify, and distribute this + software and its documentation for any purpose, provided that the + above copyright notice and the following two paragraphs appear in + all copies of this software. + . + IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR + DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES + ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN + IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE. + . + THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, + BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO + PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + +License: MPL-1.0 + MOZILLA PUBLIC LICENSE + Version 1.0 + . + --------------- + . + 1. Definitions. + . + 1.1. "Contributor" means each entity that creates or contributes to + the creation of Modifications. + . + 1.2. "Contributor Version" means the combination of the Original + Code, prior Modifications used by a Contributor, and the + Modifications made by that particular Contributor. + . + 1.3. "Covered Code" means the Original Code or Modifications or the + combination of the Original Code and Modifications, in each + case including portions thereof. + . + 1.4. "Electronic Distribution Mechanism" means a mechanism + generally accepted in the software development community for + the electronic transfer of data. + . + 1.5. "Executable" means Covered Code in any form other than Source + Code. + . + 1.6. "Initial Developer" means the individual or entity identified + as the Initial Developer in the Source Code notice required by + Exhibit A. + . + 1.7. "Larger Work" means a work which combines Covered Code or + portions thereof with code not governed by the terms of this + License. + . + 1.8. "License" means this document. + . + 1.9. "Modifications" means any addition to or deletion from the + substance or structure of either the Original Code or any + previous Modifications. When Covered Code is released as a + series of files, a Modification is: + . + A. Any addition to or deletion from the contents of a file + containing Original Code or previous Modifications. + . + B. Any new file that contains any part of the Original Code + or previous Modifications. + . + 1.10. "Original Code" means Source Code of computer software code + which is described in the Source Code notice required by + Exhibit A as Original Code, and which, at the time of its + release under this License is not already Covered Code + governed by this License. + . + 1.11. "Source Code" means the preferred form of the Covered Code for + making modifications to it, including all modules it contains, + plus any associated interface definition files, scripts used + to control compilation and installation of an Executable, or a + list of source code differential comparisons against either + the Original Code or another well known, available Covered + Code of the Contributor's choice. The Source Code can be in a + compressed or archival form, provided the appropriate + decompression or de-archiving software is widely available for + no charge. + . + 1.12. "You" means an individual or a legal entity exercising rights + under, and complying with all of the terms of, this License + or a future version of this License issued under Section 6.1. + For legal entities, "You" includes any entity which controls, + is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, + direct or indirect, to cause the direction or management of + such entity, whether by contract or otherwise, or (b) + ownership of fifty percent (50%) or more of the outstanding + shares or beneficial ownership of such entity. + . + 2. Source Code License. + . + 2.1. The Initial Developer Grant. + The Initial Developer hereby grants You a world-wide, royalty-free, + non-exclusive license, subject to third party intellectual property + claims: + (a) to use, reproduce, modify, display, perform, sublicense and + distribute the Original Code (or portions thereof) with or + without Modifications, or as part of a Larger Work; and + (b) under patents now or hereafter owned or controlled by + Initial Developer, to make, have made, use and sell + ("Utilize") the Original Code (or portions thereof), but + solely to the extent that any such patent is reasonably + necessary to enable You to Utilize the Original Code (or + portions thereof) and not to any greater extent that may be + necessary to Utilize further Modifications or combinations. + . + 2.2. Contributor Grant. + Each Contributor hereby grants You a world-wide, royalty-free, + non-exclusive license, subject to third party intellectual + property claims: + (a) to use, reproduce, modify, display, perform, + sublicense and distribute the Modifications created by such + Contributor (or portions thereof) either on an unmodified + basis, with other Modifications, as Covered Code or as part of + a Larger Work; and + (b) under patents now or hereafter owned or controlled by + Contributor, to Utilize the Contributor Version (or portions + thereof), but solely to the extent that any such patent is + reasonably necessary to enable You to Utilize the Contributor + Version (or portions thereof), and not to any greater extent + that may be necessary to Utilize further Modifications or + combinations. + . + 3. Distribution Obligations. + . + 3.1. Application of License. + The Modifications which You create or to which You contribute are + governed by the terms of this License, including without limitation + Section 2.2. The Source Code version of Covered Code may be + distributed only under the terms of this License or a future version + of this License released under Section 6.1, and You must include a + copy of this License with every copy of the Source Code You + distribute. You may not offer or impose any terms on any Source + Code version that alters or restricts the applicable version of + this License or the recipients' rights hereunder. However, You may + include an additional document offering the additional rights + described in Section 3.5. + . + 3.2. Availability of Source Code. + Any Modification which You create or to which You contribute must be + made available in Source Code form under the terms of this License + either on the same media as an Executable version or via an accepted + Electronic Distribution Mechanism to anyone to whom you made an + Executable version available; and if made available via Electronic + Distribution Mechanism, must remain available for at least twelve + (12) months after the date it initially became available, or at + least six (6) months after a subsequent version of that particular + Modification has been made available to such recipients. You are + responsible for ensuring that the Source Code version remains + available even if the Electronic Distribution Mechanism is + maintained by a third party. + . + 3.3. Description of Modifications. + You must cause all Covered Code to which you contribute to contain + a file documenting the changes You made to create that Covered Code + and the date of any change. You must include a prominent statement + that the Modification is derived, directly or indirectly, from + Original Code provided by the Initial Developer and including the + name of the Initial Developer in (a) the Source Code, and (b) in + any notice in an Executable version or related documentation in + which You describe the origin or ownership of the Covered Code. + . + 3.4. Intellectual Property Matters + (a) Third Party Claims. + If You have knowledge that a party claims an intellectual + property right in particular functionality or code (or its + utilization under this License), you must include a text file + with the source code distribution titled "LEGAL" which + describes the claim and the party making the claim in + sufficient detail that a recipient will know whom to contact. + If you obtain such knowledge after You make Your Modification + available as described in Section 3.2, You shall promptly + modify the LEGAL file in all copies You make available + thereafter and shall take other steps (such as notifying + appropriate comm/mailing lists or newsgroups) reasonably calculated + to inform those who received the Covered Code that new + knowledge has been obtained. + (b) Contributor APIs. + If Your Modification is an application programming interface + and You own or control patents which are reasonably necessary + to implement that API, you must also include this information + in the LEGAL file. + . + 3.5. Required Notices. + You must duplicate the notice in Exhibit A in each file of the + Source Code, and this License in any documentation for the Source + Code, where You describe recipients' rights relating to Covered + Code. If You created one or more Modification(s), You may add your + name as a Contributor to the notice described in Exhibit A. If it + is not possible to put such notice in a particular Source Code file + due to its structure, then you must include such notice in a + location (such as a relevant directory file) where a user would be + likely to look for such a notice. You may choose to offer, and to + charge a fee for, warranty, support, indemnity or liability + obligations to one or more recipients of Covered Code. However, You + may do so only on Your own behalf, and not on behalf of the Initial + Developer or any Contributor. You must make it absolutely clear than + any such warranty, support, indemnity or liability obligation is + offered by You alone, and You hereby agree to indemnify the Initial + Developer and every Contributor for any liability incurred by the + Initial Developer or such Contributor as a result of warranty, + support, indemnity or liability terms You offer. + . + 3.6. Distribution of Executable Versions. + You may distribute Covered Code in Executable form only if the + requirements of Section 3.1-3.5 have been met for that Covered Code, + and if You include a notice stating that the Source Code version of + the Covered Code is available under the terms of this License, + including a description of how and where You have fulfilled the + obligations of Section 3.2. The notice must be conspicuously + included in any notice in an Executable version, related + documentation or collateral in which You describe recipients' + rights relating to the Covered Code. You may distribute the + Executable version of Covered Code under a license of Your choice, + which may contain terms different from this License, provided that + You are in compliance with the terms of this License and that the + license for the Executable version does not attempt to limit or + alter the recipient's rights in the Source Code version from the + rights set forth in this License. If You distribute the Executable + version under a different license You must make it absolutely clear + that any terms which differ from this License are offered by You + alone, not by the Initial Developer or any Contributor. You hereby + agree to indemnify the Initial Developer and every Contributor for + any liability incurred by the Initial Developer or such Contributor + as a result of any such terms You offer. + . + 3.7. Larger Works. + You may create a Larger Work by combining Covered Code with other + code not governed by the terms of this License and distribute the + Larger Work as a single product. In such a case, You must make sure + the requirements of this License are fulfilled for the Covered + Code. + . + 4. Inability to Comply Due to Statute or Regulation. + . + If it is impossible for You to comply with any of the terms of this + License with respect to some or all of the Covered Code due to + statute or regulation then You must: (a) comply with the terms of + this License to the maximum extent possible; and (b) describe the + limitations and the code they affect. Such description must be + included in the LEGAL file described in Section 3.4 and must be + included with all distributions of the Source Code. Except to the + extent prohibited by statute or regulation, such description must + be sufficiently detailed for a recipient of ordinary skill to be + able to understand it. + . + 5. Application of this License. + . + This License applies to code to which the Initial Developer has + attached the notice in Exhibit A, and to related Covered Code. + . + 6. Versions of the License. + . + 6.1. New Versions. + Netscape Communications Corporation ("Netscape") may publish revised + and/or new versions of the License from time to time. Each version + will be given a distinguishing version number. + . + 6.2. Effect of New Versions. + Once Covered Code has been published under a particular version of + the License, You may always continue to use it under the terms of + that version. You may also choose to use such Covered Code under + the terms of any subsequent version of the License published by + Netscape. No one other than Netscape has the right to modify the + terms applicable to Covered Code created under this License. + . + 6.3. Derivative Works. + If you create or use a modified version of this License (which you + may only do in order to apply it to code which is not already + Covered Code governed by this License), you must (a) rename Your + license so that the phrases "Mozilla", "MOZILLAPL", "MOZPL", + "Netscape", "NPL" or any confusingly similar phrase do not appear + anywhere in your license and (b) otherwise make it clear that your + version of the license contains terms which differ from the Mozilla + Public License and Netscape Public License. (Filling in the name of + the Initial Developer, Original Code or Contributor in the notice + described in Exhibit A shall not of themselves be deemed to be + modifications of this License.) + . + 7. DISCLAIMER OF WARRANTY. + . + COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, + INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS + FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR + NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF + THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE + DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY + OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, + REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN + ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS + AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. + . + 8. TERMINATION. + . + This License and the rights granted hereunder will terminate + automatically if You fail to comply with terms herein and fail to + cure such breach within 30 days of becoming aware of the breach. + All sublicenses to the Covered Code which are properly granted + shall survive any termination of this License. Provisions which, by + their nature, must remain in effect beyond the termination of this + License shall survive. + . + 9. LIMITATION OF LIABILITY. + . + UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT + (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE INITIAL + DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED + CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO YOU OR + ANY OTHER PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR + CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT + LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER + FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR + LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE + POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT + APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH + PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH + LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR + LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THAT EXCLUSION + AND LIMITATION MAY NOT APPLY TO YOU. + . + 10. U.S. GOVERNMENT END USERS. + . + The Covered Code is a "commercial item," as that term is defined in + 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer + software" and "commercial computer software documentation," as such + terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 + C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June + 1995), all U.S. Government End Users acquire Covered Code with only + those rights set forth herein. + . + 11. MISCELLANEOUS. + . + This License represents the complete agreement concerning subject + matter hereof. If any provision of this License is held to be + unenforceable, such provision shall be reformed only to the extent + necessary to make it enforceable. This License shall be governed by + California law provisions (except to the extent applicable law, if + any, provides otherwise), excluding its conflict-of-law provisions. + With respect to disputes in which at least one party is a citizen + of, or an entity chartered or registered to do business in, the + United States of America: (a) unless otherwise agreed in writing, + all disputes relating to this License (excepting any dispute + relating to intellectual property rights) shall be subject to final + and binding arbitration, with the losing party paying all costs of + arbitration; (b) any arbitration relating to this Agreement shall be + held in Santa Clara County, California, under the auspices of + JAMS/EndDispute; and (c) any litigation relating to this Agreement + shall be subject to the jurisdiction of the Federal Courts of the + Northern District of California, with venue lying in Santa Clara + County, California, with the losing party responsible for costs, + including without limitation, court costs and reasonable attorneys + fees and expenses. The application of the United Nations Convention + on Contracts for the International Sale of Goods is expressly + excluded. Any law or regulation which provides that the language of + a contract shall be construed against the drafter shall not apply + to this License. + . + 12. RESPONSIBILITY FOR CLAIMS. + . + Except in cases where another Contributor has failed to comply with + Section 3.4, You are responsible for damages arising, directly or + indirectly, out of Your utilization of rights under this License, + based on the number of copies of Covered Code you made available, + the revenues you received from utilizing such rights, and other + relevant factors. You agree to work with affected parties to + distribute responsibility on an equitable basis. + . + EXHIBIT A. + . + "The contents of this file are subject to the Mozilla Public License + Version 1.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.mozilla.org/MPL/ + . + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See + the License for the specific language governing rights and + limitations under the License. + . + The Original Code is ______________________________________. + . + The Initial Developer of the Original Code is ____________________. + Portions created by ______________________ + are Copyright (C) ______ _______________________. All Rights + Reserved. + . + Contributor(s): ______________________________________." + . + The original content can be found on https://www.mozilla.org/MPL/1.0/ + +License: MPL-1.1 + On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/MPL-1.1'. + +License: MPL-2.0 + On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/MPL-2.0'. + +License: Zlib + The zlib License + . + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + . + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + . + 1. The origin of this software must not be misrepresented; you must + not claim that you wrote the original software. If you use this + software in a product, an acknowledgment in the product + documentation would be appreciated but is not required. + . + 2. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + . + 3. This notice may not be removed or altered from any source + distribution. + +License: libpng + This copy of the libpng notices is provided for your convenience. In case of + any discrepancy between this copy and the notices in the file png.h that is + included in the libpng distribution, the latter shall prevail. + . + COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: + . + If you modify libpng you may insert additional notices immediately following + this sentence. + . + This code is released under the libpng license. + . + libpng versions 1.2.6, August 15, 2004, through 1.6.17, March 26, 2015, are + Copyright (c) 2004, 2006-2015 Glenn Randers-Pehrson, and are + distributed according to the same disclaimer and license as libpng-1.2.5 + with the following individual added to the list of Contributing Authors + . + Cosmin Truta + . + libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are + Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are + distributed according to the same disclaimer and license as libpng-1.0.6 + with the following individuals added to the list of Contributing Authors + . + Simon-Pierre Cadieux + Eric S. Raymond + Gilles Vollant + . + and with the following additions to the disclaimer: + . + There is no warranty against interference with your enjoyment of the + library or against infringement. There is no warranty that our + efforts or the library will fulfill any of your particular purposes + or needs. This library is provided with all faults, and the entire + risk of satisfactory quality, performance, accuracy, and effort is with + the user. + . + libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are + Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are + distributed according to the same disclaimer and license as libpng-0.96, + with the following individuals added to the list of Contributing Authors: + . + Tom Lane + Glenn Randers-Pehrson + Willem van Schaik + . + libpng versions 0.89, June 1996, through 0.96, May 1997, are + Copyright (c) 1996, 1997 Andreas Dilger + Distributed according to the same disclaimer and license as libpng-0.88, + with the following individuals added to the list of Contributing Authors: + . + John Bowler + Kevin Bracey + Sam Bushell + Magnus Holmgren + Greg Roelofs + Tom Tanner + . + libpng versions 0.5, May 1995, through 0.88, January 1996, are + Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc. + . + For the purposes of this copyright and license, "Contributing Authors" + is defined as the following set of individuals: + . + Andreas Dilger + Dave Martindale + Guy Eric Schalnat + Paul Schmidt + Tim Wegner + . + The PNG Reference Library is supplied "AS IS". The Contributing Authors + and Group 42, Inc. disclaim all warranties, expressed or implied, + including, without limitation, the warranties of merchantability and of + fitness for any purpose. The Contributing Authors and Group 42, Inc. + assume no liability for direct, indirect, incidental, special, exemplary, + or consequential damages, which may result from the use of the PNG + Reference Library, even if advised of the possibility of such damage. + . + Permission is hereby granted to use, copy, modify, and distribute this + source code, or portions hereof, for any purpose, without fee, subject + to the following restrictions: + . + 1. The origin of this source code must not be misrepresented. + . + 2. Altered versions must be plainly marked as such and must not + be misrepresented as being the original source. + . + 3. This Copyright notice may not be removed or altered from any + source or altered source distribution. + . + The Contributing Authors and Group 42, Inc. specifically permit, without + fee, and encourage the use of this source code as a component to + supporting the PNG file format in commercial products. If you use this + source code in a product, acknowledgment is not required but would be + appreciated. + . + A "png_get_copyright" function is available, for convenient use in "about" + boxes and the like: + . + printf("%s",png_get_copyright(NULL)); + . + Also, the PNG logo (in PNG format, of course) is supplied in the + files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). + . + Libpng is OSI Certified Open Source Software. OSI Certified Open Source is + a certification mark of the Open Source Initiative. + . + Glenn Randers-Pehrson + glennrp at users.sourceforge.net + March 26, 2015 + . + The original content can be found on + http://www.libpng.org/pub/png/src/libpng-LICENSE.txt + +License: public-domain + They may be distributed freely and/or modified as long as the original + Author is mentioned! diff --git a/create-thunderbird-l10n-tarball.sh b/create-thunderbird-l10n-tarball.sh new file mode 100755 index 0000000000..16744c0bdc --- /dev/null +++ b/create-thunderbird-l10n-tarball.sh @@ -0,0 +1,328 @@ +#!/bin/sh +# +# create-thunderbird-l10n-tarball.sh +# Porpose: create an upstream tarball from the language pack xpi files +# Current stable and beta versions of the l10n files can be found on +# https://download-origin.cdn.mozilla.net/pub/thunderbird +# +# The script can handle both versions. The option for automatically import the +# *.orig.tar.xz may be broken and isn't tested! + +EXIT_SUCCESS=0 +EXIT_FAILURE=1 + +# Initialize our own variables: +VERBOSE=0 +FILE="" +ARG_COUNT=0 +LANG_COUNT=0 +CURDIR_FULL=`pwd` +CURDIR=$(basename `pwd`) +MOZILLA_CDN_PROTO="https://" +MOZILLA_CDN_BASE="download-origin.cdn.mozilla.net/pub/thunderbird/" + +# default package name in case the have a local file +XPI=lightning.xpi +# base package name +BASE_PKG="thunderbird" + +# local functions +usage () { +cat << EOF + +Usage: ${0##*/} [-h|-vd] [-e BETA_VER] VERSION +The options have to be used in the correct order! + + -h display this help and exit + -v verbose mode, increase the output messages + -d download given [VERSION] + -e download [BETA_VER] from the beta versions + (Used in combination with '-d' to get beta marked upstream + versions.) + [VERSION] given version in Debian format for downloading and/or creating + the *.orig.tar.xz + +Examples: + ${0##*/} -d 45.0 + + Download version '45.0' of the locales for Thunderbird from Mozilla and + creates a file 'thunderbird_45.0.orig-thunderbird-l10n.tar.xz'. + + + ${0##*/} -de 45.0b1 45.0~b1 + + Download the beta version '45.0b1' of the locales for Thunderbird from + Mozilla and create a file 'thunderbird_45.0~b1.orig-thunderbird-l10n.tar.xz'. + + + ${0##*/} -vde 45.0b1 45.0~b1 + + Same as above, download the beta version '45.0b1' of the locales for + Thunderbird from Mozilla and create a file + 'thunderbird_45.0~b1.orig-thunderbird-l10n.tar.xz'. + But this is done with some verbose output messages to see what's going + on inside. Mostly useful for debugging the script. + +EOF +} + +debug () { +if [ "${VERBOSE}" = "1" ]; then + echo "DEBUG -> $1" +fi +} + +fail () { + echo $* + exit ${EXIT_FAILURE} +} + +######################## +# We are starting here # +######################## + +# check for wget and curl +test -f /usr/bin/wget || fail "wget is missing, please install first!" +test -f /usr/bin/curl || fail "curl is missing, please install first!" + +# check if we are inside icedove/ and have a git environment +if [ "${CURDIR}" != "thunderbird" ]; then + echo "Not in thunderbird/.." + exit ${EXIT_FAILURE} +else + if [ ! -d .git ]; then + echo "no directory .git/ found! You are in the correct directory?" + exit ${EXIT_FAILURE} + fi +fi + +# we have no options found? +if [ $(($#)) -lt 1 ]; then + echo "You need at least one option!" >&2 + echo + usage ${EXIT_FAILURE} +fi + +OPTIND=1 # Reset is necessary if getopts was used previously in the script. It is a good idea to make this local in a function. +while getopts "hvde:" opt; do + case "$opt" in + h) HELP=1 + usage + exit + ;; + v) echo "[[ ... using verbose mode ... ]]" + VERBOSE=1 + ;; + d) DOWNLOAD=yes + debug "found option '-d'" + ;; + e) BETA_VER=${OPTARG} + EXPERIMENTAL=1 + debug "found option '-e' with given BETA_VER: ${BETA_VER}" + ;; + :) "Option -${OPTARG} requires an argument." >&2 + exit 1 + ;; + '?') + usage >&2 + exit 1 + ;; + esac +done + +# shift found options +shift $(( OPTIND - 1 )) + +# looping the arguments, we should have at least only one without an option! +for ARG; do + ARG_COUNT=`expr ${ARG_COUNT} + 1` + debug "given argument: ${ARG}" + debug "ARG_COUNT = ${ARG_COUNT}" +done + +# there is no argument left that should be the Debian version, error out! +if [ "${ARG_COUNT}" = "0" ]; then + echo "missing argument for VERSION!" + exit ${EXIT_FAILURE} + +# we have to many arguments, error out +elif [ "${ARG_COUNT}" != "1" ]; then + echo "more than one argument for VERSION given!" + exit ${EXIT_FAILURE} +fi + +# o.k. the last argument should be the version +VERSION=${ARG} + +debug "Download xpi: ........ ${DOWNLOAD:-off}" +debug "Run git-import-orig: . ${GIT_IMPORT:-off}" +if [ -n ${BETA_VER} ]; then + debug "Upstream beta version: ${BETA_VER}" +fi +debug "Debian version: ...... ${VERSION}" + +# creating temporary directories inside /tmp +# TMPDIR -> the 'base' directory there we build all the stuff +# UPSTREAMDIR -> the directory there the original '*.xpi' will be extracted, +# it contains the complete content of the various *.xpi files, +# we also unpack here the *.xpi files +# ORIGDIR -> the directory for the plain needed content of the ${LANG}.jar, +# will be used for the debian.orig.tar.xz + +export TMPDIR=$(mktemp --tmpdir=/tmp -d)/ + UPSTREAMDIR=${TMPDIR}upstream/ + ORIGDIR="${TMPDIR}${BASE_PKG}-${VERSION}/" + +# download Lightning from the CDN of Mozilla +if [ -n "${DOWNLOAD}" ]; then + # remove a lightning.xpi if present + rm -f ${XPI} + if [ -n "${EXPERIMENTAL}" ]; then + + ######################################################################### + # The beta Lightning packages can have various builds for one version, # + # we want at least the last build of a beta version. Also there are # + # packages for every single language instead of one single file without # + # all languages. # + ######################################################################### + + # getting the latest build inside a release candidates + debug "try at ${MOZILLA_CDN_PROTO}${MOZILLA_CDN_BASE}candidates/${BETA_VER}-candidates/ " + RET=`curl ${MOZILLA_CDN_PROTO}${MOZILLA_CDN_BASE}candidates/${BETA_VER}-candidates/ \ + | grep ">build" | awk '{print $2}' | tr '<>/"' ' ' | awk '{print $6}' | tail -n 1` + + # going further if we found something useful + if [ "$?" = "0" -a "${RET}" != "" ]; then + # DIRECTORY is the 'build[x]' directory on the CDN, e.g. 'build1', 'build2', ... + DIRECTORY=`echo ${RET} | tr ' ' '\n' | head -1` + # DATE is the date of the DIRECTORY folder + DATE=`echo ${RET} | tr ' ' '\n' | tail -1` + debug "found directory '${BETA_VER}-candidates/${DIRECTORY}' from '${DATE}'" + debug "creating ${UPSTREAMDIR}" + mkdir ${UPSTREAMDIR} + cd /tmp + # checking if there is already some download + if [ ! -d ${MOZILLA_CDN_BASE}/candidates/${BETA_VER}-candidates/${DIRECTORY}/linux-x86_64/xpi ]; then + DO_DOWNLOAD="1" + fi + + if [ -d ${MOZILLA_CDN_BASE}/candidates/${BETA_VER}-candidates/${DIRECTORY}/linux-x86_64/xpi ]; then + if [ "$(`ls -l ${MOZILLA_CDN_BASE}/candidates/${BETA_VER}-candidates/${DIRECTORY}/linux-x86_64/xpi | wc -l`)" = "0" ]; then + debug "found old download folder, but it's empty" + DO_DOWNLOAD="1" + fi + fi + if [ "${DO_DOWNLOAD}" = "1" ]; then + debug "going downloading *.xpi files from ${MOZILLA_CDN_PROTO}${MOZILLA_CDN_BASE}/candidates/${BETA_VER}-candidates/${DIRECTORY}/linux-x86_64/" + wget -m -r -l 1 -A xpi ${MOZILLA_CDN_PROTO}${MOZILLA_CDN_BASE}/candidates/${BETA_VER}-candidates/${DIRECTORY}/linux-x86_64/xpi/ + debug "copy *xpi files from donwload folder to workspace" + fi + # finally copy the *.xpi files to ${UPSTREAMDIR} + cp ${MOZILLA_CDN_BASE}/candidates/${BETA_VER}-candidates/${DIRECTORY}/linux-x86_64/xpi/*.xpi ${UPSTREAMDIR} + cd ${TMPDIR} + # uhh, we couldn't find the given BETA_VER on the FTP server + else + fail "Couldn't find version ${BETA_VER}, correct version for option '-e' selected?" + fi + else + + ####################################################################### + # If we are here the user want to get a version for unstable/testing. # + # It's the same as for beta versions, the only difference is the # + # download URL. # + ####################################################################### + + debug "creating ${UPSTREAMDIR}" + mkdir ${UPSTREAMDIR} + cd /tmp + # checking if there is already some download + if [ ! -d ${MOZILLA_CDN_BASE}releases/${VERSION}/linux-x86_64/xpi ]; then + DO_DOWNLOAD="1" + fi + if [ -d ${MOZILLA_CDN_BASE}releases/${VERSION}/linux-x86_64/xpi ]; then + DL_COUNT=`ls -l ${MOZILLA_CDN_BASE}releases/${VERSION}/linux-x86_64/xpi/*.xpi | wc -l` + if [ "${DL_COUNT}" = "0" ]; then + debug "found old download folder, but it's empty" + DO_DOWNLOAD="1" + else + echo "nothing to download, all needed *.xpi are here" + debug "found ${DL_COUNT} files already downloaded" + fi + fi + if [ "${DO_DOWNLOAD}" = "1" ]; then + # getting files for the stable version + wget -m -r -l 1 -A xpi ${MOZILLA_CDN_PROTO}${MOZILLA_CDN_BASE}releases/${VERSION}/linux-x86_64/xpi/ + fi + # finally copy the *.xpi files to $(UPSTREAMDIR}) + cp ${MOZILLA_CDN_BASE}releases/${VERSION}/linux-x86_64/xpi/*.xpi ${UPSTREAMDIR} + fi +else + if [ "${FILE}" != "" ]; then + # DUMMY! option '-f' isn't currently implemented! + # we should have a local *.xpi file if option -f is given + XPI=${FILE} + fi +fi + +debug "removing language 'en_US'" +rm -f ${UPSTREAMDIR}/en-US.xpi +debug "creating workspace for extracted upstream sources in '${ORIGDIR}'" +mkdir ${ORIGDIR} + +# extract l10n files +debug "extracting \"\$LANG*.jar\" in \"${UPSTREAMDIR}chrome\" into \"${ORIGDIR}\$LANG\"" +#LANG_COUNT_LIG=`ls -l ${UPSTREAMDIR}chrome/lightning*.jar | wc -l` + +for XPI in `ls ${UPSTREAMDIR}`; do + LOCALE=`basename ${XPI} .xpi` + debug "creating ${UPSTREAMDIR}/${LOCALE}" + mkdir ${UPSTREAMDIR}/${LOCALE} + unzip -o -q -d $UPSTREAMDIR/$LOCALE $UPSTREAMDIR/$XPI + # use more verbose mode if we do some debugging, comment the line above if needed + #unzip -o -d $UPSTREAMDIR/$LOCALE $UPSTREAMDIR/$XPI + cd $UPSTREAMDIR/$LOCALE + if [ -f chrome/$LOCALE.jar ]; then + JAR=$LOCALE.jar + else + JAR=`echo $XPI | sed --posix 's|-.*||'`.jar + fi + if [ -f chrome/$JAR ]; then + unzip -o -q -d chrome chrome/$JAR + rm -f chrome/$JAR + fi + # removing the not needed any longer *.xpi files + rm $UPSTREAMDIR/$XPI +done + +cd ${TMPDIR} +mv upstream ${BASE_PKG}-${VERSION}/${BASE_PKG}-l10n +# counting languages +LANG_COUNT=`ls ${BASE_PKG}-${VERSION}/${BASE_PKG}-l10n/ | wc -l` + +# doing the *.orig.tar.xz archive stuff +TARBALL="${BASE_PKG}_${VERSION}.orig-${BASE_PKG}-l10n.tar.xz" +debug "creating archive: '${TARBALL}' in '${TMPDIR}'" +cd ${BASE_PKG}-${VERSION} +tar caf ${TARBALL} ${BASE_PKG}-l10n +TARBALL=$(readlink -f ${TARBALL}) + +# moving orig.tar.xz back to the users working dir +cd ${CURDIR_FULL} +debug "moving ${TARBALL} to ${CURDIR_FULL}/../" +mv ${TARBALL} ../ +TARBALL_FINAL=$(readlink -f ../${BASE_PKG}_${VERSION}.orig-${BASE_PKG}-l10n.tar.xz) +echo +echo "Tarball created in:" +echo " -> ${TARBALL_FINAL} <- (containing ${LANG_COUNT} languages)" + +# remove temporary things if no verbose mode +if [ ${VERBOSE} = "" ]; then + debug "cleanup ${TMPDIR} ..." + rm -rf ${TMPDIR} +else + debug "NOT cleaning up ${TMPDIR}" +fi + +echo "done." + +exit $EXIT_SUCCESS diff --git a/docs b/docs new file mode 100644 index 0000000000..5c24349bfa --- /dev/null +++ b/docs @@ -0,0 +1 @@ +mozilla/extensions/spellcheck/locales/en-US/hunspell/README_en_US.txt diff --git a/gbp.conf b/gbp.conf new file mode 100644 index 0000000000..87315f6990 --- /dev/null +++ b/gbp.conf @@ -0,0 +1,30 @@ +# Configuration file for git-buildpackage and friends + +[DEFAULT] +# use pristine-tar: +pristine-tar = True +# generate xz compressed orig file +compression = xz +debian-branch = debian/buster +# default branch for upstream sources: +upstream-branch = upstream-78.x +components = [ 'thunderbird-l10n', ] + +[pq] +patch-numbers = False + +[dch] +id-length = 7 + +[import-orig] +# filter out unwanted files/dirs from upstream +filter = [ '*.orig', '*.rej', + './configure', + './js/src/configure', + './js/src/old-configure', + './obj-x86_64-pc-linux-gnu', + './old-configure', + './third_party/python/psutil/tmp/*', + ] +# filter the files out of the tarball passed to pristine-tar +filter-pristine-tar = True diff --git a/logo/icedove/icedove.xpm b/logo/icedove/icedove.xpm new file mode 100644 index 0000000000..bf12bae8eb --- /dev/null +++ b/logo/icedove/icedove.xpm @@ -0,0 +1,204 @@ +/* XPM */ +static char *icedove[] = { +/* columns rows colors chars-per-pixel */ +"32 32 166 2 ", +" c #53575C", +". c #71787F", +"X c #55A30C", +"o c #58A60E", +"O c #5AA612", +"+ c #5CAA12", +"@ c #64AD1E", +"# c #61B115", +"$ c #66B21C", +"% c #69BB1A", +"& c #519A29", +"* c #66AF22", +"= c #69AF26", +"- c #67B021", +"; c #6AB324", +": c #6EBA24", +"> c #67B52B", +", c #6DB32A", +"< c #6FBA29", +"1 c #71B62E", +"2 c #70B82C", +"3 c #66B23A", +"4 c #6BB03A", +"5 c #73B632", +"6 c #75B934", +"7 c #75B639", +"8 c #77B838", +"9 c #7BBB3D", +"0 c #71C420", +"q c #75C924", +"w c #79CE27", +"e c #72C32E", +"r c #5A9D44", +"t c #5A985B", +"y c #69AD4A", +"u c #7EBC43", +"i c #77B548", +"p c #66A25B", +"a c #68A45C", +"s c #6CA95F", +"d c #74BB52", +"f c #5A9664", +"g c #619E6D", +"h c #6FA966", +"j c #74AA6B", +"k c #75B366", +"l c #77AB71", +"z c #79AD73", +"x c #7DB275", +"c c #7FB479", +"v c #81BD47", +"b c #84BE4E", +"n c #87BF51", +"m c #88BC74", +"M c #81B37D", +"N c #84BB7D", +"B c #81C046", +"V c #85C14B", +"C c #87C251", +"Z c #8BC355", +"A c #8EC55A", +"S c #95C766", +"D c #95CA63", +"F c #98CC67", +"G c #91C569", +"H c #9ACB6C", +"J c #9ECD70", +"K c #A2D076", +"L c #A6D37B", +"P c #727B82", +"I c #649A83", +"U c #6F9C9A", +"Y c #73A586", +"T c #73A19E", +"R c #7EAA9B", +"E c #719EA7", +"W c #759FB2", +"Q c #799FBB", +"! c #7EA8B5", +"~ c #7CA2BD", +"^ c #7B9FC1", +"/ c #7FA1C6", +"( c #83B583", +") c #8696A8", +"_ c #93B7A4", +"` c #80A6B8", +"' c #88AEBF", +"] c #9CBABB", +"[ c #98C681", +"{ c #9BC884", +"} c #ADD684", +"| c #AFD68C", +" . c #B0D989", +".. c #B7DB95", +"X. c #BCDE9B", +"o. c #A2C6A1", +"O. c #C0DEA4", +"+. c #C2E1A4", +"@. c #C7E4AB", +"#. c #C8E5AC", +"$. c #CBE5B3", +"%. c #C7E0BD", +"&. c #81A4C0", +"*. c #85A8C3", +"=. c #8CACC4", +"-. c #86A7C8", +";. c #86A8CF", +":. c #8EADCC", +">. c #92AFCB", +",. c #94B3D3", +"<. c #99B5D4", +"1. c #9DBAD2", +"2. c #A9B4C0", +"3. c #A3BBD7", +"4. c #A1BDDA", +"5. c #ABBFDB", +"6. c #ABC6C5", +"7. c #A8C1CA", +"8. c #B5CDC8", +"9. c #A7C0DA", +"0. c #B3C7DE", +"q. c #B3C9DC", +"w. c #AFC6E0", +"e. c #B3C7E1", +"r. c #B5CBE2", +"t. c #B9CCE2", +"y. c #BFD1E6", +"u. c #CCCDC9", +"i. c #CED0CB", +"p. c #D1D3CE", +"a. c #D2D4D0", +"s. c #D7D8D5", +"d. c #D8DAD6", +"f. c #DBDDD9", +"g. c #D4E9C0", +"h. c #D8ECC6", +"j. c #DEE0DD", +"k. c #E0E1DE", +"l. c #E0F1D0", +"z. c #C3D3E6", +"x. c #CDD8E6", +"c. c #C1D4E8", +"v. c #CEDDEC", +"b. c #D4DCE5", +"n. c #D2DDEB", +"m. c #D5E0ED", +"M. c #D9E2EE", +"N. c #D4E2F0", +"B. c #DBE6F1", +"V. c #DEE9F4", +"C. c #E4E5E2", +"Z. c #E7E8E6", +"A. c #E8E9E7", +"S. c #EBECEA", +"D. c #EFF1ED", +"F. c #F0F8EA", +"G. c #E4ECF5", +"H. c #E9EEF4", +"J. c #ECF1F6", +"K. c #ECF3F9", +"L. c #F3F4F3", +"P. c #F5FAF0", +"I. c #F2F5F9", +"U. c #F6F9FC", +"Y. c #FEFEFE", +"T. c None", +/* pixels */ +"T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.", +"T.T.d.U.d.Y.d.U.d.P.k.L.Z.S.S.Z.L.f.L.f.U.d.Y.d.U.f.L.k.L.Z.T.T.", +"T.T.S.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.U.T.T.", +"T.T.a.Y.3.q._ N N M M z z z z z z z z z >.q.=.Y N M 7.3.U.C.T.T.", +"T.T.L.Y.] : w 0 $ # # @ X X X X X X X X f G.Y.1.> e q j L.U.T.T.", +"T.T.p.Y.k q % # O o O X X X X X X X X X X r.Y.U.,.t.3 d I.j.T.T.", +"T.T.L.Y.k % # o X O @ X X X X X X X X X X U U.Y.y.U.<.y U.Y.T.T.", +"T.T.p.Y.a + o o O.@ X X X X O O X o o O X & v.Y.Y.K.m.t I.k.T.T.", +"T.T.L.Y.a o o + O.+ O O @ , 7 u u u 7 = + + 3.Y.Y.Y.U.;.U.Y.T.T.", +"T.T.a.Y.a + o 1 = O.$.H A Z n n n n A S J S ' Y.Y.Y.Y.4.I.k.T.T.", +"T.T.S.Y.a * v 8 H F.P.| , @ @ * = * * @ = , T Y.Y.Y.Y.t.L.U.T.T.", +"T.T.s.Y.a g.F.A 9 O.g.A = = , , , , , ; ; * f K.Y.Y.Y.n.I.Z.T.T.", +"T.T.A.Y.j $.h., @ ; 9 Z 1 5 6 6 5 5 5 1 1 , r G.Y.Y.Y.n.I.L.T.T.", +"T.T.f.Y.j V $ $ ; , 2 D Z 9 9 9 u 7 9 8 6 2 f H.Y.Y.Y.n.I.S.T.T.", +"T.T.C.Y.z 9 $ ; , 2 6 C K Z b V V V v u 9 8 ! Y.Y.Y.Y.n.U.S.T.T.", +"T.T.k.Y.( 2 ; < 2 6 9 v L } A A A A Z V B i r.Y.Y.Y.Y.n.I.D.T.T.", +"T.T.f.Y.( ; ; 2 6 9 B V J ..} F F D D A C *.U.Y.Y.Y.Y.n.I.A.T.T.", +"T.T.S.Y.( : 2 5 p I h Z F X.+.} L K H S -.J.Y.Y.Y.Y.Y.n.I.P.T.T.", +"T.T.a.Y.M : 4 Q v.U.v.:.G | $.#. .} [ 1.U.Y.Y.Y.Y.Y.Y.n.I.Z.T.T.", +"T.T.D.Y.x < ~ H.Y.Y.Y.Y.,.{ $.h.@.o.w.Y.Y.Y.Y.Y.Y.Y.Y.n.I.U.T.T.", +"T.T.i.Y.x g V. x.Y.U.) G.R X.l.8.r.Y.Y.Y.Y.Y.Y.Y.Y.Y.z.I.j.T.T.", +"T.T.L.Y.x E Y.H.K.Y.V.P H.W @.6.r.Y.Y.Y.K.Y.Y.Y.Y.v.v.e.I.U.T.T.", +"T.T.u.Y.Y ` Y.Y.2.P S.U.K./ %.e.Y.Y.Y.J.Y.Y.Y.Y.Y.K.n.z.U.f.T.T.", +"T.T.L.Y.<.9.Y.Y.Y.I.Y.U.J./ ` U.Y.Y.G.Y.Y.Y.Y.Y.Y.Y.U.z.I.Y.T.T.", +"T.T.i.Y.t.B.Y.Y.Y.Y.Y.U.K.-.1.Y.Y.U.B.Y.Y.Y.Y.Y.Y.Y.V.n.I.j.T.T.", +"T.T.L.Y.t.m.Y.Y.Y.Y.Y.Y.U.y.3.Y.Y.I.K.Y.Y.Y.Y.Y.J.V.Y.n.I.U.T.T.", +"T.T.p.Y.5.y.J.J.J.J.J.J.J.J.c.J.J.J.J.J.H.n.v.v.G.J.J.r.U.k.T.T.", +"T.T.S.Y.b.b.M.b.b.b.M.b.b.b.m.m.b.b.M.b.M.b.b.b.b.m.b.b.Y.U.T.T.", +"T.T.d.Y.f.f.Y.j.f.k.Y.Z.C.Z.L.L.Z.A.Y.j.Y.j.j.j.j.Y.k.k.Y.Z.T.T.", +"T.T.A.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.L.T.T.", +"T.T.j.Y.j.Y.k.Y.C.U.Z.L.A.S.L.Z.P.Z.U.k.Y.f.Y.j.Y.k.U.Z.L.S.T.T.", +"T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T." +}; diff --git a/logo/icedove/icedove_icon.svg b/logo/icedove/icedove_icon.svg new file mode 100644 index 0000000000..dab3a99da8 --- /dev/null +++ b/logo/icedove/icedove_icon.svg @@ -0,0 +1,1756 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Icedove Icon + + + Ricardo Fernández Fuentes + + + + + Ricardo Fernández Fuentes + + + icedove icon + + + + icedove + ico + icon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_icon_plain.svg b/logo/icedove/icedove_icon_plain.svg new file mode 100644 index 0000000000..7733517d35 --- /dev/null +++ b/logo/icedove/icedove_icon_plain.svg @@ -0,0 +1,1438 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_icon_profile.svg b/logo/icedove/icedove_icon_profile.svg new file mode 100644 index 0000000000..f4d9829eae --- /dev/null +++ b/logo/icedove/icedove_icon_profile.svg @@ -0,0 +1,1959 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Icedove Icon + + + Ricardo Fernández Fuentes + + + + + Ricardo Fernández Fuentes + + + icedove icon + + + + icedove + ico + icon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_icon_profile_plain.svg b/logo/icedove/icedove_icon_profile_plain.svg new file mode 100644 index 0000000000..586ce11255 --- /dev/null +++ b/logo/icedove/icedove_icon_profile_plain.svg @@ -0,0 +1,1606 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_lettering.svg b/logo/icedove/icedove_lettering.svg new file mode 100644 index 0000000000..a2f9216210 --- /dev/null +++ b/logo/icedove/icedove_lettering.svg @@ -0,0 +1,994 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_logo.svg b/logo/icedove/icedove_logo.svg new file mode 100644 index 0000000000..885bb14685 --- /dev/null +++ b/logo/icedove/icedove_logo.svg @@ -0,0 +1,2407 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Icedove Logo + + + Ricardo Fernández Fuentes + + + + + Ricardo Fernández Fuentes + + + icedove logo + + + + icedove + logo + logotipo + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/icedove_logo_plain.svg b/logo/icedove/icedove_logo_plain.svg new file mode 100644 index 0000000000..7804a86f36 --- /dev/null +++ b/logo/icedove/icedove_logo_plain.svg @@ -0,0 +1,1939 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/icedove/license.txt b/logo/icedove/license.txt new file mode 100644 index 0000000000..55c6d2df09 --- /dev/null +++ b/logo/icedove/license.txt @@ -0,0 +1,23 @@ +License for iceweasel_icon/logo - icedove_icon/logo - iceape_icon/logo artworks. + +Version: MPL 1.1/GPL 2.0/LGPL 2.1 + +The contents of this file are subject to the Mozilla Public License Version +1.1 (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.mozilla.org/MPL/ + +Alternatively, the contents of this file may be used under the terms of +either the GNU General Public License Version 2 or later (the "GPL"), or +the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +in which case the provisions of the GPL or the LGPL are applicable instead +of those above. If you wish to allow use of your version of this file only +under the terms of either the GPL or the LGPL, and not to allow others to +use your version of this file under the terms of the MPL, indicate your +decision by deleting the provisions above and replace them with the notice +and other provisions required by the GPL or the LGPL. If you do not delete +the provisions above, a recipient may use your version of this file under +the terms of any one of the MPL, the GPL or the LGPL. + +Ricardo Fernández Fuentes. +ricardoffmadrid@gmail.com diff --git a/logo/thunderbird/create-pngs.sh b/logo/thunderbird/create-pngs.sh new file mode 100755 index 0000000000..507dacc521 --- /dev/null +++ b/logo/thunderbird/create-pngs.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +src=thunderbird.svg + +for d in 16 22 24 32 48 64 128 256 512; +do + # using ImageMagick + #convert -background none $src -resize ${d}x${d} mailicon${d}.png + + # using Inkscape + inkscape --export-png=mailicon${d}.png --export-width=$d --export-height=$d --export-background-opacity=0 --without-gui $src +done + diff --git a/logo/thunderbird/mailicon128.png b/logo/thunderbird/mailicon128.png new file mode 100644 index 0000000000..53e268fbb0 Binary files /dev/null and b/logo/thunderbird/mailicon128.png differ diff --git a/logo/thunderbird/mailicon16.png b/logo/thunderbird/mailicon16.png new file mode 100644 index 0000000000..6bdd01af92 Binary files /dev/null and b/logo/thunderbird/mailicon16.png differ diff --git a/logo/thunderbird/mailicon22.png b/logo/thunderbird/mailicon22.png new file mode 100644 index 0000000000..9e08ee06a9 Binary files /dev/null and b/logo/thunderbird/mailicon22.png differ diff --git a/logo/thunderbird/mailicon24.png b/logo/thunderbird/mailicon24.png new file mode 100644 index 0000000000..5afa52eb4e Binary files /dev/null and b/logo/thunderbird/mailicon24.png differ diff --git a/logo/thunderbird/mailicon256.png b/logo/thunderbird/mailicon256.png new file mode 100644 index 0000000000..9a6acca21e Binary files /dev/null and b/logo/thunderbird/mailicon256.png differ diff --git a/logo/thunderbird/mailicon32.png b/logo/thunderbird/mailicon32.png new file mode 100644 index 0000000000..e1a2837376 Binary files /dev/null and b/logo/thunderbird/mailicon32.png differ diff --git a/logo/thunderbird/mailicon48.png b/logo/thunderbird/mailicon48.png new file mode 100644 index 0000000000..f3fe3ee834 Binary files /dev/null and b/logo/thunderbird/mailicon48.png differ diff --git a/logo/thunderbird/mailicon512.png b/logo/thunderbird/mailicon512.png new file mode 100644 index 0000000000..cff71b60fe Binary files /dev/null and b/logo/thunderbird/mailicon512.png differ diff --git a/logo/thunderbird/mailicon64.png b/logo/thunderbird/mailicon64.png new file mode 100644 index 0000000000..01d41ada29 Binary files /dev/null and b/logo/thunderbird/mailicon64.png differ diff --git a/logo/thunderbird/pre60/mailicon128.png b/logo/thunderbird/pre60/mailicon128.png new file mode 100644 index 0000000000..8b7e74b07b Binary files /dev/null and b/logo/thunderbird/pre60/mailicon128.png differ diff --git a/logo/thunderbird/pre60/mailicon16.png b/logo/thunderbird/pre60/mailicon16.png new file mode 100644 index 0000000000..16ff89ccdf Binary files /dev/null and b/logo/thunderbird/pre60/mailicon16.png differ diff --git a/logo/thunderbird/pre60/mailicon22.png b/logo/thunderbird/pre60/mailicon22.png new file mode 100644 index 0000000000..9cf772af21 Binary files /dev/null and b/logo/thunderbird/pre60/mailicon22.png differ diff --git a/logo/thunderbird/pre60/mailicon24.png b/logo/thunderbird/pre60/mailicon24.png new file mode 100644 index 0000000000..e208cdd902 Binary files /dev/null and b/logo/thunderbird/pre60/mailicon24.png differ diff --git a/logo/thunderbird/pre60/mailicon256.png b/logo/thunderbird/pre60/mailicon256.png new file mode 100644 index 0000000000..c50868355e Binary files /dev/null and b/logo/thunderbird/pre60/mailicon256.png differ diff --git a/logo/thunderbird/pre60/mailicon32.png b/logo/thunderbird/pre60/mailicon32.png new file mode 100644 index 0000000000..9345f88cad Binary files /dev/null and b/logo/thunderbird/pre60/mailicon32.png differ diff --git a/logo/thunderbird/pre60/mailicon48.png b/logo/thunderbird/pre60/mailicon48.png new file mode 100644 index 0000000000..1b0c2ebca2 Binary files /dev/null and b/logo/thunderbird/pre60/mailicon48.png differ diff --git a/logo/thunderbird/pre60/mailicon512.png b/logo/thunderbird/pre60/mailicon512.png new file mode 100644 index 0000000000..907bb1b8a2 Binary files /dev/null and b/logo/thunderbird/pre60/mailicon512.png differ diff --git a/logo/thunderbird/pre60/mailicon64.png b/logo/thunderbird/pre60/mailicon64.png new file mode 100644 index 0000000000..94f090f6a3 Binary files /dev/null and b/logo/thunderbird/pre60/mailicon64.png differ diff --git a/logo/thunderbird/pre60/thunderbird.svg b/logo/thunderbird/pre60/thunderbird.svg new file mode 100644 index 0000000000..0bdd76ea2a --- /dev/null +++ b/logo/thunderbird/pre60/thunderbird.svg @@ -0,0 +1,768 @@ + + + + + Mozilla Thunderbird Logo + + + + image/svg+xml + + Mozilla Thunderbird Logo + + + + + + https://de.wikipedia.org/wiki/Datei:Mozilla_Thunderbird_Logo.svg + + + Mozilla Foundation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/logo/thunderbird/thunderbird.svg b/logo/thunderbird/thunderbird.svg new file mode 100644 index 0000000000..1cf2ac91c0 --- /dev/null +++ b/logo/thunderbird/thunderbird.svg @@ -0,0 +1,253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mozconfig.default b/mozconfig.default new file mode 100644 index 0000000000..dc04a180d0 --- /dev/null +++ b/mozconfig.default @@ -0,0 +1,136 @@ +# -*- mode: makefile; coding: utf-8 -*- + +# mozconfig.default +# default settings for the various builds of Mozilla applications +# +# This file is needed to build multiple applications from the source. +# It set up some variables that are used in all builds, or they will be +# overridden later by some builds. The Mozilla build system supports various +# builds from the same source by separate obj-$directorys. +# Further information around the multiple applications build can be found +# on +# +# https://developer.mozilla.org/en-US/docs/Configuring_Build_Options#Building_with_an_Objdir +# +# The application specific obj-dir is set up within the separate +# mozconfig.$APPLICATION file! + +# use/use not packaged software instead of preshipped +ac_add_options --without-system-jpeg # Debian version causes issues on mips* +ac_add_options --with-system-bz2 +ac_add_options --without-system-icu +ac_add_options --without-system-nspr +ac_add_options --without-system-nss +ac_add_options --with-system-zlib + +# other packaged software +ac_add_options --with-system-botan +ac_add_options --with-system-jsonc +ac_add_options --with-system-libevent +ac_add_options --without-system-libvpx + +# disabled features +ac_add_options --disable-av1 +ac_add_options --disable-install-strip +ac_add_options --disable-strip +ac_add_options --disable-tests +ac_add_options --disable-updater +ac_add_options --disable-webrtc + +# enabled features +ac_add_options --allow-addon-sideload +ac_add_options --enable-default-toolkit=cairo-gtk3 +ac_add_options --enable-extensions=default +ac_add_options --enable-official-branding # use the official artwork +ac_add_options --enable-openpgp +ac_add_options --enable-optimize +ac_add_options --enable-system-ffi +ac_add_options --with-unsigned-addon-scopes=app,system + +# Debian specific things +PARALLEL_BUILD=$(echo $DEB_BUILD_OPTIONS | sed -e '/parallel=/!s/.*/1/;s/.*parallel=\([0-9]\+\).*/\1/g') +mk_add_options MOZ_MAKE_FLAGS="-j$PARALLEL_BUILD" +ac_add_options --disable-debug +ac_add_options --host=$DEB_HOST_GNU_TYPE + +# some platform depended things +case `dpkg --print-architecture` in + alpha) + ac_add_options --enable-optimize=-O1 + ;; +# amd64) +# ac_add_options --enable-crashreporter +# ;; + arm64) + ac_add_options --enable-optimize=-O1 + ;; + armel) + ac_add_options --enable-optimize=-O1 +# ac_add_options --enable-crashreporter + ;; + armhf) + ac_add_options --enable-optimize=-O1 +# ac_add_options --enable-crashreporter + ;; + hurd-i386) + ac_add_options --disable-necko-wifi + ;; + hppa) + ac_add_options --disable-optimize + ac_add_options --with-intl-api + ;; + i386) +# ac_add_options --enable-crashreporter + ;; + ia64) + ac_add_options --enable-optimize=-O2 + ;; + kfreebsd-i386) + ac_add_options --disable-necko-wifi + ;; + kfreebsd-amd64) + ac_add_options --disable-necko-wifi + ;; + m68k) + ac_add_options --with-intl-api + ;; + mips) + ac_add_options --with-intl-api + ac_add_options --disable-ion + ;; + mips64el) + ac_add_options --with-intl-api + ac_add_options --disable-jit + ;; + mipsel) + ac_add_options --with-intl-api + ac_add_options --disable-jit + ;; + powerpc) + ac_add_options --with-intl-api + ;; + powerpcspe) + ac_add_options --with-intl-api + ;; + ppc64) + ac_add_options --disable-optimize + ac_add_options --with-intl-api + ;; + ppc64el) + ac_add_options --with-intl-api + ;; + sh4) + ac_add_options --disable-pie + ;; + sparc) + ac_add_options --enable-optimize=-O1 + ac_add_options --with-intl-api + ;; + sparc64) + ac_add_options --with-intl-api + ;; + s390x) + ac_add_options --enable-optimize=-O1 + ac_add_options --with-intl-api + ;; +esac diff --git a/mozconfig.thunderbird b/mozconfig.thunderbird new file mode 100644 index 0000000000..e353666c9b --- /dev/null +++ b/mozconfig.thunderbird @@ -0,0 +1,16 @@ +# -*- mode: makefile; coding: utf-8 -*- + +# mozconfig.thunderbird +# settings for the build of Icedove +# +# This file set up extra config options for the build of the Thunderbird +# application. +# Remember, options here will be overriden by sourcing any file later! + +# sourcing the default common settings +. $topsrcdir/mozconfig.default + +# Debian specific things +ac_add_options --enable-application=comm/mail # enable Thunderbird + +# setting the obj-dir (build directory, filled in by debian/rules) diff --git a/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch b/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch new file mode 100644 index 0000000000..731b054417 --- /dev/null +++ b/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch @@ -0,0 +1,30 @@ +From: Mike Hommey +Date: Sat, 21 Jun 2008 03:09:21 +0200 +Subject: Add another preferences directory for applications: + preferences/syspref + +This can be used to symlink to /etc/thunderbird/pref. +--- + toolkit/xre/nsXREDirProvider.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp +index 62b5694..73b337d 100644 +--- a/toolkit/xre/nsXREDirProvider.cpp ++++ b/toolkit/xre/nsXREDirProvider.cpp +@@ -834,6 +834,7 @@ static nsresult DeleteDirIfExists(nsIFile* dir) { + + static const char* const kAppendPrefDir[] = {"defaults", "preferences", + nullptr}; ++static const char *const kAppendSysPrefDir[] = { "defaults", "syspref", nullptr }; + + nsresult nsXREDirProvider::GetFilesInternal(const char* aProperty, + nsISimpleEnumerator** aResult) { +@@ -844,6 +845,7 @@ nsresult nsXREDirProvider::GetFilesInternal(const char* aProperty, + nsCOMArray directories; + + LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories); ++ LoadDirIntoArray(mXULAppDir, kAppendSysPrefDir, directories); + + rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile)); + } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) { diff --git a/patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch b/patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch new file mode 100644 index 0000000000..0b2ba29a57 --- /dev/null +++ b/patches/debian-hacks/Don-t-error-out-when-run-time-libsqlite-is-older-tha.patch @@ -0,0 +1,48 @@ +From: Mike Hommey +Date: Mon, 5 Apr 2010 17:58:23 +0200 +Subject: Don't error-out when run-time libsqlite is older than build-time + libsqlite + +In Debian, we have shlibs to handle this. +--- + storage/mozStorageService.cpp | 27 +++++++++++++++++++++++++++ + 1 file changed, 27 insertions(+) + +diff --git a/storage/mozStorageService.cpp b/storage/mozStorageService.cpp +index 92397c7..1057549 100644 +--- a/storage/mozStorageService.cpp ++++ b/storage/mozStorageService.cpp +@@ -181,6 +181,33 @@ already_AddRefed Service::getSingleton() { + return do_AddRef(gService); + } + ++#if 0 ++ // Ensure that we are using the same version of SQLite that we compiled with ++ // or newer. Our configure check ensures we are using a new enough version ++ // at compile time. ++ if (SQLITE_VERSION_NUMBER > ::sqlite3_libversion_number() || ++ !::sqlite3_compileoption_used("SQLITE_SECURE_DELETE") || ++ !::sqlite3_compileoption_used("SQLITE_THREADSAFE=1") || ++ !::sqlite3_compileoption_used("SQLITE_ENABLE_FTS3") || ++ !::sqlite3_compileoption_used("SQLITE_ENABLE_UNLOCK_NOTIFY") || ++ !::sqlite3_compileoption_used("SQLITE_ENABLE_DBSTAT_VTAB")) { ++ nsCOMPtr ps(do_GetService(NS_PROMPTSERVICE_CONTRACTID)); ++ if (ps) { ++ nsAutoString title, message; ++ title.AppendLiteral("SQLite Version Error"); ++ message.AppendLiteral( ++ "The application has been updated, but the SQLite " ++ "library wasn't updated properly and the application " ++ "cannot run. Please try to launch the application again. " ++ "If that should still fail, please try reinstalling " ++ "it, or contact the support of where you got the " ++ "application from."); ++ (void)ps->Alert(nullptr, title.get(), message.get()); ++ } ++ MOZ_CRASH("SQLite Version Error"); ++ } ++#endif ++ + // The first reference to the storage service must be obtained on the + // main thread. + NS_ENSURE_TRUE(NS_IsMainThread(), nullptr); diff --git a/patches/debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch b/patches/debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch new file mode 100644 index 0000000000..edcc2386bd --- /dev/null +++ b/patches/debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch @@ -0,0 +1,24 @@ +From: Mike Hommey +Date: Sat, 27 Sep 2008 17:17:39 +0200 +Subject: Don't register plugins if the MOZILLA_DISABLE_PLUGINS environment + variable is set + +--- + dom/plugins/base/nsPluginHost.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp +index ad37e00..e5833d7 100644 +--- a/dom/plugins/base/nsPluginHost.cpp ++++ b/dom/plugins/base/nsPluginHost.cpp +@@ -290,6 +290,10 @@ nsPluginHost::nsPluginHost() + Preferences::AddStrongObserver(this, "plugin.disable"); + } + ++ const char *env = PR_GetEnv("MOZILLA_DISABLE_PLUGINS"); ++ if (env && env[0]) ++ mPluginsDisabled = PR_TRUE; ++ + nsCOMPtr obsService = + mozilla::services::GetObserverService(); + if (obsService) { diff --git a/patches/debian-hacks/Make-Thunderbird-build-reproducible.patch b/patches/debian-hacks/Make-Thunderbird-build-reproducible.patch new file mode 100644 index 0000000000..680867c48a --- /dev/null +++ b/patches/debian-hacks/Make-Thunderbird-build-reproducible.patch @@ -0,0 +1,31 @@ +From: Carsten Schoenert +Date: Sun, 6 Oct 2019 10:03:15 +0200 +Subject: Make Thunderbird build reproducible + +Cherry picked from OpenSuse +https://build.opensuse.org/request/show/732106 +--- + python/mozbuild/mozbuild/action/langpack_manifest.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py +index 4395235..1455b90 100644 +--- a/python/mozbuild/mozbuild/action/langpack_manifest.py ++++ b/python/mozbuild/mozbuild/action/langpack_manifest.py +@@ -16,6 +16,7 @@ import os + import json + import io + import datetime ++import time + import requests + import mozversioncontrol + import mozpack.path as mozpath +@@ -99,7 +100,7 @@ def get_timestamp_for_locale(path): + dt = get_dt_from_hg(path) + + if dt is None: +- dt = datetime.datetime.utcnow() ++ dt = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))) + + dt = dt.replace(microsecond=0) + return dt.strftime("%Y%m%d%H%M%S") diff --git a/patches/debian-hacks/Set-program-name-from-the-remoting-name.patch b/patches/debian-hacks/Set-program-name-from-the-remoting-name.patch new file mode 100644 index 0000000000..01d3608488 --- /dev/null +++ b/patches/debian-hacks/Set-program-name-from-the-remoting-name.patch @@ -0,0 +1,21 @@ +From: Mike Hommey +Date: Sun, 5 Feb 2017 08:41:22 +0900 +Subject: Set program name from the remoting name + +--- + toolkit/xre/nsAppRunner.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp +index ef72d1b..4affb82 100644 +--- a/toolkit/xre/nsAppRunner.cpp ++++ b/toolkit/xre/nsAppRunner.cpp +@@ -3750,7 +3750,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) { + + // Set program name to the one defined in application.ini. + { +- nsAutoCString program(gAppData->name); ++ nsAutoCString program(gAppData->remotingName); + ToLowerCase(program); + g_set_prgname(program.get()); + } diff --git a/patches/debian-hacks/Strip-version-number-from-application-before-installation.patch b/patches/debian-hacks/Strip-version-number-from-application-before-installation.patch new file mode 100644 index 0000000000..55f52c4d1c --- /dev/null +++ b/patches/debian-hacks/Strip-version-number-from-application-before-installation.patch @@ -0,0 +1,24 @@ +From: =?utf-8?q?Guido_G=C3=BCnther?= +Date: Sat, 24 Nov 2012 11:39:58 +0100 +Subject: Strip version number from application before installation + +Strip thunderbird's version number from the installation directories so +we have a fixed location for extensions that build against it. +--- + config/baseconfig.mk | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/config/baseconfig.mk b/config/baseconfig.mk +index f5bf42d5..9839ee8 100644 +--- a/config/baseconfig.mk ++++ b/config/baseconfig.mk +@@ -3,6 +3,9 @@ + # We thus use INCLUDED_AUTOCONF_MK to enable/disable some parts depending + # whether a normal build is happening or whether the check is running. + installdir = $(libdir)/$(MOZ_APP_NAME) ++includedir := $(includedir)/$(MOZ_APP_NAME) ++idldir = $(datadir)/idl/$(MOZ_APP_NAME) ++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel + ifeq (.,$(DEPTH)) + DIST = dist + else diff --git a/patches/debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch b/patches/debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch new file mode 100644 index 0000000000..b558784ae1 --- /dev/null +++ b/patches/debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch @@ -0,0 +1,34 @@ +From: Mike Hommey +Date: Mon, 3 Sep 2018 07:37:40 +0900 +Subject: Use remoting name for call to gdk_set_program_class + +Closes: #907574 +--- + widget/gtk/nsAppShell.cpp | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/widget/gtk/nsAppShell.cpp b/widget/gtk/nsAppShell.cpp +index a424664..1126bf9 100644 +--- a/widget/gtk/nsAppShell.cpp ++++ b/widget/gtk/nsAppShell.cpp +@@ -24,6 +24,7 @@ + # include "WakeLockListener.h" + #endif + #include "gfxPlatform.h" ++#include "nsAppRunner.h" + #include "ScreenHelperGTK.h" + #include "HeadlessScreenHelper.h" + #include "mozilla/widget/ScreenManager.h" +@@ -178,10 +179,8 @@ nsresult nsAppShell::Init() { + // creating top-level windows. (At this point, a child process hasn't + // received the list of registered chrome packages, so the + // GetBrandShortName call would fail anyway.) +- nsAutoString brandName; +- mozilla::widget::WidgetUtils::GetBrandShortName(brandName); +- if (!brandName.IsEmpty()) { +- gdk_set_program_class(NS_ConvertUTF16toUTF8(brandName).get()); ++ if (gAppData) { ++ gdk_set_program_class(gAppData->remotingName); + } + } + } diff --git a/patches/debian-hacks/Work-around-Debian-bug-844357.patch b/patches/debian-hacks/Work-around-Debian-bug-844357.patch new file mode 100644 index 0000000000..e8670357bb --- /dev/null +++ b/patches/debian-hacks/Work-around-Debian-bug-844357.patch @@ -0,0 +1,20 @@ +From: Mike Hommey +Date: Mon, 21 Nov 2016 08:15:38 +0900 +Subject: Work around Debian bug #844357 + +--- + widget/gtk/mozgtk/gtk3/moz.build | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/widget/gtk/mozgtk/gtk3/moz.build b/widget/gtk/mozgtk/gtk3/moz.build +index 4e93795..538ef1a 100644 +--- a/widget/gtk/mozgtk/gtk3/moz.build ++++ b/widget/gtk/mozgtk/gtk3/moz.build +@@ -36,3 +36,7 @@ OS_LIBS += [ + 'gdk-3', + ] + OS_LIBS += as_needed ++ ++# Work around Debian bug #844357 ++if CONFIG['CPU_ARCH'].startswith('mips'): ++ OS_LIBS += ['-Wl,--no-gc-sections'] diff --git a/patches/fixes/Add-missing-bindings-for-mips-in-the-authenticator-crate.patch b/patches/fixes/Add-missing-bindings-for-mips-in-the-authenticator-crate.patch new file mode 100644 index 0000000000..8f06b8a6bc --- /dev/null +++ b/patches/fixes/Add-missing-bindings-for-mips-in-the-authenticator-crate.patch @@ -0,0 +1,60 @@ +From: Mike Hommey +Date: Wed, 23 Sep 2020 12:52:35 +0900 +Subject: Add missing bindings for mips* in the authenticator crate + +--- + Cargo.lock | 2 -- + Cargo.toml | 1 + + third_party/rust/authenticator/src/linux/ioctl_mipsbe.rs | 5 +++++ + third_party/rust/authenticator/src/linux/ioctl_mipsle.rs | 5 +++++ + 4 files changed, 11 insertions(+), 2 deletions(-) + create mode 100644 third_party/rust/authenticator/src/linux/ioctl_mipsbe.rs + create mode 100644 third_party/rust/authenticator/src/linux/ioctl_mipsle.rs + +diff --git a/Cargo.lock b/Cargo.lock +index b1fca7c..de6a025 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -183,8 +183,6 @@ dependencies = [ + [[package]] + name = "authenticator" + version = "0.2.12" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "ff593fb4dd388fe452c5e63d4d668699466bd46b571c4b852dfbca4bac8f0706" + dependencies = [ + "bitflags", + "boxfnonce", +diff --git a/Cargo.toml b/Cargo.toml +index 6f6199ab..c0ac0b3 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -73,6 +73,7 @@ spirv_cross = { git = "https://github.com/kvark/spirv_cross", branch = "wgpu3", + # failure's backtrace feature might break our builds, see bug 1608157. + failure = { git = "https://github.com/badboy/failure", rev = "64af847bc5fdcb6d2438bec8a6030812a80519a5" } + failure_derive = { git = "https://github.com/badboy/failure", rev = "64af847bc5fdcb6d2438bec8a6030812a80519a5" } ++authenticator = { path = "third_party/rust/authenticator" } + + [patch.crates-io.cranelift-codegen] + git = "https://github.com/bytecodealliance/wasmtime" +diff --git a/third_party/rust/authenticator/src/linux/ioctl_mipsbe.rs b/third_party/rust/authenticator/src/linux/ioctl_mipsbe.rs +new file mode 100644 +index 0000000..1ca187f +--- /dev/null ++++ b/third_party/rust/authenticator/src/linux/ioctl_mipsbe.rs +@@ -0,0 +1,5 @@ ++/* automatically generated by rust-bindgen */ ++ ++pub type __u32 = ::std::os::raw::c_uint; ++pub const _HIDIOCGRDESCSIZE: __u32 = 1074022401; ++pub const _HIDIOCGRDESC: __u32 = 1342457858; +diff --git a/third_party/rust/authenticator/src/linux/ioctl_mipsle.rs b/third_party/rust/authenticator/src/linux/ioctl_mipsle.rs +new file mode 100644 +index 0000000..1ca187f +--- /dev/null ++++ b/third_party/rust/authenticator/src/linux/ioctl_mipsle.rs +@@ -0,0 +1,5 @@ ++/* automatically generated by rust-bindgen */ ++ ++pub type __u32 = ::std::os::raw::c_uint; ++pub const _HIDIOCGRDESCSIZE: __u32 = 1074022401; ++pub const _HIDIOCGRDESC: __u32 = 1342457858; diff --git a/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch b/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch new file mode 100644 index 0000000000..3c578361f4 --- /dev/null +++ b/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch @@ -0,0 +1,77 @@ +From: Mike Hommey +Date: Sat, 21 Jun 2008 02:48:46 +0200 +Subject: Allow .js preference files to set locked prefs with lockPref() + +--- + modules/libpref/parser/src/lib.rs | 23 ++++++++++++----------- + 1 file changed, 12 insertions(+), 11 deletions(-) + +diff --git a/modules/libpref/parser/src/lib.rs b/modules/libpref/parser/src/lib.rs +index a8c5b6b..aceacf3 100644 +--- a/modules/libpref/parser/src/lib.rs ++++ b/modules/libpref/parser/src/lib.rs +@@ -10,7 +10,7 @@ + //! + //! = * + //! = "(" "," ")" ";" +-//! = "user_pref" | "pref" | "sticky_pref" // in default pref files ++//! = "user_pref" | "pref" | "sticky_pref | lockPref" // in default pref files + //! = "user_pref" // in user pref files + //! = + //! = | "true" | "false" | +@@ -169,6 +169,7 @@ enum Token { + // Keywords + Pref, // pref + StickyPref, // sticky_pref ++ LockPref, // lockPref + UserPref, // user_pref + True, // true + False, // false +@@ -291,7 +292,7 @@ struct KeywordInfo { + token: Token, + } + +-const KEYWORD_INFOS: [KeywordInfo; 7] = [ ++const KEYWORD_INFOS: [KeywordInfo; 8] = [ + // These are ordered by frequency. + KeywordInfo { + string: b"pref", +@@ -321,6 +322,10 @@ const KEYWORD_INFOS: [KeywordInfo; 7] = [ + string: b"sticky_pref", + token: Token::StickyPref, + }, ++ KeywordInfo { ++ string: b"lock_pref", ++ token: Token::LockPref, ++ }, + ]; + + struct Parser<'t> { +@@ -373,14 +378,11 @@ impl<'t> Parser<'t> { + // this will be either the first token of a new pref, or EOF. + loop { + // +- let (pref_value_kind, mut is_sticky) = match token { +- Token::Pref if self.kind == PrefValueKind::Default => { +- (PrefValueKind::Default, false) +- } +- Token::StickyPref if self.kind == PrefValueKind::Default => { +- (PrefValueKind::Default, true) +- } +- Token::UserPref => (PrefValueKind::User, false), ++ let (pref_value_kind, mut is_sticky, mut is_locked) = match token { ++ Token::Pref => (PrefValueKind::Default, false, false), ++ Token::StickyPref => (PrefValueKind::Default, true, false), ++ Token::LockPref => (PrefValueKind::Default, false, true), ++ Token::UserPref => (PrefValueKind::User, false, false), + Token::SingleChar(EOF) => return !self.has_errors, + _ => { + token = self.error_and_recover( +@@ -490,7 +492,6 @@ impl<'t> Parser<'t> { + }; + + // ("," )* // default pref files only +- let mut is_locked = false; + let mut has_attrs = false; + if self.kind == PrefValueKind::Default { + let ok = loop { diff --git a/patches/fixes/Appdata-Adding-some-German-translations.patch b/patches/fixes/Appdata-Adding-some-German-translations.patch new file mode 100644 index 0000000000..b67d7430a4 --- /dev/null +++ b/patches/fixes/Appdata-Adding-some-German-translations.patch @@ -0,0 +1,48 @@ +From: Carsten Schoenert +Date: Sun, 18 Oct 2020 08:38:29 +0200 +Subject: Appdata: Adding some German translations + +--- + .../thunderbird/net.thunderbird.Thunderbird.appdata.xml | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +index ba19c75..e34eba5 100644 +--- a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml ++++ b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +@@ -3,7 +3,9 @@ + net.thunderbird.Thunderbird + CC0-1.0 + Thunderbird ++ Thunderbird + Thunderbird is a free and open source email, newsfeed, chat, and calendaring client ++ Thunderbird ist ein freier und Quelloffener Klient für E-Mail-, Newsfeed-, Chat- und Kalender + + +

+@@ -14,10 +16,25 @@ + that can’t communicate with each other. We want our users to have freedom + and choice in how they communicate. +

++ ++

++ Thunderbird ist ein kostenloses E-Mail-, Newsfeed-, Chat- und ++ Kalender-Programm, das einfach einzurichten und anzupassen ist. Eines ++ der Kernprinzipien von Thunderbird ist die Verwendung und Förderung ++ offener Standards – durch diesen Fokus lehnen wir die geschlossenen ++ Plattformen und Dienste unserer Welt ab, die nicht miteinander ++ kommunizieren können. Wir möchten, dass unsere Benutzer die Freiheit ++ und Wahl haben, wie sie kommunizieren. ++

++ +

+ Thunderbird is an open source project, which means anyone can contribute + ideas, designs, code, and time helping fellow users. +

++

++ Thunderbird ist ein Freies Softwareprojekt, jede Person kann Ideen, ++ Designs, Code und Zeit einbringen um anderen Benutzern zu helfen. ++

+
+ + Calendar diff --git a/patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch b/patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch new file mode 100644 index 0000000000..8f41a40af0 --- /dev/null +++ b/patches/fixes/Appdata-Fix-up-AppStream-error-by-adding-missing-field.patch @@ -0,0 +1,21 @@ +From: Carsten Schoenert +Date: Sun, 18 Oct 2020 08:39:44 +0200 +Subject: Appdata: Fix up AppStream error by adding missing field + +The AppStream data is missing the lauchable element. +--- + comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +index e34eba5..822a5af 100644 +--- a/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml ++++ b/comm/mail/branding/thunderbird/net.thunderbird.Thunderbird.appdata.xml +@@ -2,6 +2,7 @@ + + net.thunderbird.Thunderbird + CC0-1.0 ++ thunderbird.desktop + Thunderbird + Thunderbird + Thunderbird is a free and open source email, newsfeed, chat, and calendaring client diff --git a/patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch b/patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch new file mode 100644 index 0000000000..5eb282b441 --- /dev/null +++ b/patches/fixes/Bug-1556197-amend-Bug-1544631-for-fixing-mips32.patch @@ -0,0 +1,41 @@ +From: qiaopengcheng +Date: Sun, 2 Jun 2019 07:28:24 +0900 +Subject: Bug 1556197 - amend Bug-1544631 for fixing mips32. + +--- + js/src/jit/mips32/MacroAssembler-mips32-inl.h | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git a/js/src/jit/mips32/MacroAssembler-mips32-inl.h b/js/src/jit/mips32/MacroAssembler-mips32-inl.h +index af8b135..3441fd1 100644 +--- a/js/src/jit/mips32/MacroAssembler-mips32-inl.h ++++ b/js/src/jit/mips32/MacroAssembler-mips32-inl.h +@@ -829,16 +829,25 @@ void MacroAssembler::branchTestSymbol(Condition cond, const ValueOperand& value, + branchTestSymbol(cond, value.typeReg(), label); + } + ++void MacroAssembler::branchTestBigInt(Condition cond, Register tag, ++ Label* label) { ++ MOZ_ASSERT(cond == Equal || cond == NotEqual); ++ ma_b(tag, ImmTag(JSVAL_TAG_BIGINT), label, cond); ++} ++ + void MacroAssembler::branchTestBigInt(Condition cond, const BaseIndex& address, + Label* label) { + SecondScratchRegisterScope scratch2(*this); +- Register tag = extractTag(address, scratch2); +- branchTestBigInt(cond, tag, label); ++ computeEffectiveAddress(address, scratch2); ++ splitTag(scratch2, scratch2); ++ branchTestBigInt(cond, scratch2, label); + } + + void MacroAssembler::branchTestBigInt(Condition cond, const ValueOperand& value, + Label* label) { +- branchTestBigInt(cond, value.typeReg(), label); ++ SecondScratchRegisterScope scratch2(*this); ++ splitTag(value, scratch2); ++ branchTestBigInt(cond, scratch2, label); + } + + void MacroAssembler::branchTestBigIntTruthy(bool b, const ValueOperand& value, diff --git a/patches/fixes/Bug-1650299-Unify-the-inclusion-of-the-ICU-data-file.-r-f.patch b/patches/fixes/Bug-1650299-Unify-the-inclusion-of-the-ICU-data-file.-r-f.patch new file mode 100644 index 0000000000..1a70491d23 --- /dev/null +++ b/patches/fixes/Bug-1650299-Unify-the-inclusion-of-the-ICU-data-file.-r-f.patch @@ -0,0 +1,201 @@ +From: Mike Hommey +Date: Fri, 3 Jul 2020 13:28:39 +0900 +Subject: Bug 1650299 - Unify the inclusion of the ICU data file. r?froydnj + +All the supported compilers support a GNU AS-like syntax, with only a +few details varying. It means we can use a single, simpler, way to +include the ICU data file, instead of 3 different ways, including one +that uses armasm64.exe, possibly wrapped with Wine. + +Differential Revision: https://phabricator.services.mozilla.com/D82144 +--- + config/external/icu/data/genicudata.py | 21 --------------------- + config/external/icu/data/icudata.c | 28 ++++++++++++++++++++++++++++ + config/external/icu/data/icudata.s | 31 ------------------------------- + config/external/icu/data/icudata_gas.S | 17 ----------------- + config/external/icu/data/moz.build | 29 +++++------------------------ + js/moz.configure | 7 ------- + 6 files changed, 33 insertions(+), 100 deletions(-) + delete mode 100644 config/external/icu/data/genicudata.py + create mode 100644 config/external/icu/data/icudata.c + delete mode 100644 config/external/icu/data/icudata.s + delete mode 100644 config/external/icu/data/icudata_gas.S + +diff --git a/config/external/icu/data/genicudata.py b/config/external/icu/data/genicudata.py +deleted file mode 100644 +index 50bc939..0000000 +--- a/config/external/icu/data/genicudata.py ++++ /dev/null +@@ -1,21 +0,0 @@ +-# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +-# vim: set filetype=python: +-# This Source Code Form is subject to the terms of the Mozilla Public +-# License, v. 2.0. If a copy of the MPL was not distributed with this +-# file, You can obtain one at http://mozilla.org/MPL/2.0/. +- +-from __future__ import absolute_import +-import buildconfig +- +- +-def main(output, data_file, data_symbol): +- if buildconfig.substs.get('WINE'): +- drive = 'z:' +- else: +- drive = '' +- output.write(''' AREA |.rdata|,ALIGN=4,DATA,READONLY +- EXPORT |{data_symbol}|[DATA] +-|{data_symbol}| +- INCBIN {drive}{data_file} +- END +-'''.format(data_file=data_file, data_symbol=data_symbol, drive=drive)) +diff --git a/config/external/icu/data/icudata.c b/config/external/icu/data/icudata.c +new file mode 100644 +index 0000000..7299ac9 +--- /dev/null ++++ b/config/external/icu/data/icudata.c +@@ -0,0 +1,28 @@ ++/* This Source Code Form is subject to the terms of the Mozilla Public ++ * License, v. 2.0. If a copy of the MPL was not distributed with this ++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ ++ ++#ifdef __APPLE__ ++# define RODATA ".data\n.const" ++#else ++# define RODATA ".section .rodata" ++#endif ++ ++#if defined(__APPLE__) || (defined(_WIN32) && defined(__i386__)) ++# define _PREFIXED(x) _##x ++#else ++# define _PREFIXED(x) x ++#endif ++#define PREFIXED(x) _PREFIXED(x) ++ ++#define DATA(sym, file) DATA2(sym, file) ++// clang-format off ++#define DATA2(sym, file) \ ++ __asm__(".global " #sym "\n" \ ++ RODATA "\n" \ ++ ".balign 16\n" \ ++ #sym ":\n" \ ++ " .incbin " #file "\n") ++// clang-format on ++ ++DATA(PREFIXED(ICU_DATA_SYMBOL), ICU_DATA_FILE); +diff --git a/config/external/icu/data/icudata.s b/config/external/icu/data/icudata.s +deleted file mode 100644 +index a740f32..0000000 +--- a/config/external/icu/data/icudata.s ++++ /dev/null +@@ -1,31 +0,0 @@ +-;; This Source Code Form is subject to the terms of the Mozilla Public +-;; License, v. 2.0. If a copy of the MPL was not distributed with this +-;; file, You can obtain one at http://mozilla.org/MPL/2.0/. +- +-%ifdef PREFIX +- %define DATA_SYMBOL _ %+ ICU_DATA_SYMBOL +-%else +- %define DATA_SYMBOL ICU_DATA_SYMBOL +-%endif +- +-%ifidn __OUTPUT_FORMAT__,elf +- %define FORMAT_ELF 1 +-%elifidn __OUTPUT_FORMAT__,elf32 +- %define FORMAT_ELF 1 +-%elifidn __OUTPUT_FORMAT__,elf64 +- %define FORMAT_ELF 1 +-%else +- %define FORMAT_ELF 0 +-%endif +- +-%if FORMAT_ELF +- global DATA_SYMBOL:data hidden +- ; This is needed for ELF, otherwise the GNU linker assumes the stack is executable by default. +- [SECTION .note.GNU-stack noalloc noexec nowrite progbits] +-%else +- global DATA_SYMBOL +-%endif +- +-SECTION .rodata align=16 +-DATA_SYMBOL: +- incbin ICU_DATA_FILE +diff --git a/config/external/icu/data/icudata_gas.S b/config/external/icu/data/icudata_gas.S +deleted file mode 100644 +index 6c9abc8..0000000 +--- a/config/external/icu/data/icudata_gas.S ++++ /dev/null +@@ -1,17 +0,0 @@ +-# This Source Code Form is subject to the terms of the Mozilla Public +-# License, v. 2.0. If a copy of the MPL was not distributed with this +-# file, You can obtain one at http://mozilla.org/MPL/2.0/. +- +-#if defined(__linux__) && defined(__ELF__) +-.section .note.GNU-stack,"",%progbits +-#endif +-#ifdef PREFIX +-# define DATA_SYMBOL _##ICU_DATA_SYMBOL +-#else +-# define DATA_SYMBOL ICU_DATA_SYMBOL +-#endif +-.global DATA_SYMBOL +-.data +-.balign 16 +-DATA_SYMBOL: +- .incbin ICU_DATA_FILE +diff --git a/config/external/icu/data/moz.build b/config/external/icu/data/moz.build +index d4741a0..023b4e9 100644 +--- a/config/external/icu/data/moz.build ++++ b/config/external/icu/data/moz.build +@@ -8,29 +8,10 @@ + # JSAPI consumers don't have to deal with setting ICU's data path. + Library('icudata') + +-if CONFIG['OS_ARCH'] == 'WINNT': +- if CONFIG['CPU_ARCH'] == 'x86': +- ASFLAGS += ['-DPREFIX'] +-elif CONFIG['OS_ARCH'] == 'Darwin': +- ASFLAGS += ['-DPREFIX'] +- +-data_symbol = 'icudt%s_dat' % CONFIG['MOZ_ICU_VERSION'] +-asflags = [ +- '-I%s/config/external/icu/data/' % TOPSRCDIR, +- '-DICU_DATA_FILE="%s"' % CONFIG['ICU_DATA_FILE'], +- '-DICU_DATA_SYMBOL=%s' % data_symbol, +-] + LOCAL_INCLUDES += ['.'] + +-if CONFIG['OS_TARGET'] == 'WINNT' and CONFIG['CPU_ARCH'] == 'aarch64': +- icudata = 'icudata.asm' +- GeneratedFile(icudata, script='genicudata.py', +- inputs=[CONFIG['ICU_DATA_FILE']], flags=[data_symbol]) +- SOURCES += ['!%s' % icudata] +-elif CONFIG['HAVE_YASM']: +- USE_YASM = True +- SOURCES += ['icudata.s'] +- ASFLAGS += asflags +-elif CONFIG['GNU_AS']: +- SOURCES += ['icudata_gas.S'] +- ASFLAGS += asflags ++DEFINES['ICU_DATA_FILE'] = '"icudt%sl.dat"' % CONFIG['MOZ_ICU_VERSION'] ++DEFINES['ICU_DATA_SYMBOL'] = 'icudt%s_dat' % CONFIG['MOZ_ICU_VERSION'] ++SOURCES += [ ++ 'icudata.c', ++] +diff --git a/js/moz.configure b/js/moz.configure +index b1c9685..4ac0bd8 100644 +--- a/js/moz.configure ++++ b/js/moz.configure +@@ -760,13 +760,6 @@ def icu_version(build_env): + + set_config('MOZ_ICU_VERSION', icu_version) + +-@depends(icu_version, target, when='--with-intl-api') +-def icu_data_file(version, target): +- # target.endianness is always 'big' or 'little' +- return 'icudt%s%s.dat' % (version, target.endianness[0]) +- +-set_config('ICU_DATA_FILE', icu_data_file) +- + # Source files that use ICU should have control over which parts of the ICU + # namespace they want to use. + set_define('U_USING_ICU_NAMESPACE', '0', when='--with-intl-api') diff --git a/patches/fixes/Bug-1663715-Update-syn-and-proc-macro2-so-that-Firefox-ca.patch b/patches/fixes/Bug-1663715-Update-syn-and-proc-macro2-so-that-Firefox-ca.patch new file mode 100644 index 0000000000..1019994f01 --- /dev/null +++ b/patches/fixes/Bug-1663715-Update-syn-and-proc-macro2-so-that-Firefox-ca.patch @@ -0,0 +1,30418 @@ +From: =?utf-8?q?Emilio_Cobos_=C3=81lvarez?= +Date: Tue, 8 Sep 2020 17:00:48 +0000 +Subject: Bug 1663715 - Update syn and proc-macro2 so that Firefox can build + on Rust nightly again. r=froydnj, a=RyanVM + +Generated with: + + cargo update -p syn --precise 1.0.40 + ./mach vendor rust + +Rust issue: https://github.com/rust-lang/rust/issues/76482 + +Differential Revision: https://phabricator.services.mozilla.com/D89473 +--- + Cargo.lock | 8 +- + third_party/rust/proc-macro2/.cargo-checksum.json | 2 +- + third_party/rust/proc-macro2/Cargo.toml | 15 +- + third_party/rust/proc-macro2/README.md | 2 +- + third_party/rust/proc-macro2/build.rs | 12 + + third_party/rust/proc-macro2/src/detection.rs | 67 + + third_party/rust/proc-macro2/src/fallback.rs | 1004 ++------ + third_party/rust/proc-macro2/src/lib.rs | 151 +- + third_party/rust/proc-macro2/src/parse.rs | 791 ++++++ + third_party/rust/proc-macro2/src/strnom.rs | 391 --- + third_party/rust/proc-macro2/src/wrapper.rs | 240 +- + third_party/rust/proc-macro2/tests/comments.rs | 103 + + third_party/rust/proc-macro2/tests/test.rs | 195 +- + third_party/rust/proc-macro2/tests/test_fmt.rs | 26 + + third_party/rust/syn/.cargo-checksum.json | 2 +- + third_party/rust/syn/Cargo.toml | 35 +- + third_party/rust/syn/README.md | 16 +- + third_party/rust/syn/benches/file.rs | 7 + + third_party/rust/syn/benches/rust.rs | 45 +- + third_party/rust/syn/build.rs | 38 +- + third_party/rust/syn/src/attr.rs | 126 +- + third_party/rust/syn/src/buffer.rs | 56 +- + third_party/rust/syn/src/custom_keyword.rs | 12 +- + third_party/rust/syn/src/custom_punctuation.rs | 50 +- + third_party/rust/syn/src/data.rs | 96 +- + third_party/rust/syn/src/derive.rs | 10 +- + third_party/rust/syn/src/discouraged.rs | 27 +- + third_party/rust/syn/src/error.rs | 33 +- + third_party/rust/syn/src/expr.rs | 826 +++--- + third_party/rust/syn/src/ext.rs | 12 +- + third_party/rust/syn/src/file.rs | 4 +- + third_party/rust/syn/src/gen/clone.rs | 2051 +++++++++++++++ + third_party/rust/syn/src/gen/debug.rs | 2857 +++++++++++++++++++++ + third_party/rust/syn/src/gen/eq.rs | 1930 ++++++++++++++ + third_party/rust/syn/src/gen/fold.rs | 287 +-- + third_party/rust/syn/src/gen/hash.rs | 2691 +++++++++++++++++++ + third_party/rust/syn/src/gen/visit.rs | 19 +- + third_party/rust/syn/src/gen/visit_mut.rs | 19 +- + third_party/rust/syn/src/generics.rs | 255 +- + third_party/rust/syn/src/item.rs | 1515 ++++++----- + third_party/rust/syn/src/keyword.rs | 0 + third_party/rust/syn/src/lib.rs | 109 +- + third_party/rust/syn/src/lifetime.rs | 13 +- + third_party/rust/syn/src/lit.rs | 581 +++-- + third_party/rust/syn/src/mac.rs | 55 +- + third_party/rust/syn/src/macros.rs | 61 +- + third_party/rust/syn/src/op.rs | 6 +- + third_party/rust/syn/src/parse.rs | 211 +- + third_party/rust/syn/src/parse_macro_input.rs | 32 +- + third_party/rust/syn/src/parse_quote.rs | 15 +- + third_party/rust/syn/src/pat.rs | 313 ++- + third_party/rust/syn/src/path.rs | 33 +- + third_party/rust/syn/src/punctuated.rs | 123 +- + third_party/rust/syn/src/reserved.rs | 42 + + third_party/rust/syn/src/spanned.rs | 4 +- + third_party/rust/syn/src/stmt.rs | 141 +- + third_party/rust/syn/src/token.rs | 99 +- + third_party/rust/syn/src/tt.rs | 6 +- + third_party/rust/syn/src/ty.rs | 364 ++- + third_party/rust/syn/src/verbatim.rs | 15 + + third_party/rust/syn/src/whitespace.rs | 65 + + third_party/rust/syn/tests/.gitignore | 1 + + third_party/rust/syn/tests/clone.sh | 16 - + third_party/rust/syn/tests/common/eq.rs | 247 +- + third_party/rust/syn/tests/common/mod.rs | 13 + + third_party/rust/syn/tests/common/parse.rs | 24 +- + third_party/rust/syn/tests/debug/gen.rs | 50 +- + third_party/rust/syn/tests/debug/mod.rs | 17 +- + third_party/rust/syn/tests/features/error.rs | 1 - + third_party/rust/syn/tests/features/mod.rs | 22 - + third_party/rust/syn/tests/macros/mod.rs | 8 +- + third_party/rust/syn/tests/repo/mod.rs | 137 +- + third_party/rust/syn/tests/repo/progress.rs | 37 + + third_party/rust/syn/tests/test_asyncness.rs | 38 +- + third_party/rust/syn/tests/test_attribute.rs | 452 ++-- + third_party/rust/syn/tests/test_derive_input.rs | 1321 +++++----- + third_party/rust/syn/tests/test_expr.rs | 314 ++- + third_party/rust/syn/tests/test_generics.rs | 371 ++- + third_party/rust/syn/tests/test_grouping.rs | 53 +- + third_party/rust/syn/tests/test_ident.rs | 5 - + third_party/rust/syn/tests/test_item.rs | 45 + + third_party/rust/syn/tests/test_iterators.rs | 7 +- + third_party/rust/syn/tests/test_lit.rs | 75 +- + third_party/rust/syn/tests/test_meta.rs | 498 ++-- + third_party/rust/syn/tests/test_parse_buffer.rs | 41 +- + third_party/rust/syn/tests/test_parse_stream.rs | 12 + + third_party/rust/syn/tests/test_pat.rs | 27 +- + third_party/rust/syn/tests/test_path.rs | 52 + + third_party/rust/syn/tests/test_precedence.rs | 196 +- + third_party/rust/syn/tests/test_receiver.rs | 127 + + third_party/rust/syn/tests/test_round_trip.rs | 41 +- + third_party/rust/syn/tests/test_shebang.rs | 59 + + third_party/rust/syn/tests/test_should_parse.rs | 4 - + third_party/rust/syn/tests/test_size.rs | 2 - + third_party/rust/syn/tests/test_stmt.rs | 44 + + third_party/rust/syn/tests/test_token_trees.rs | 12 +- + third_party/rust/syn/tests/test_ty.rs | 53 + + third_party/rust/syn/tests/test_visibility.rs | 145 ++ + third_party/rust/syn/tests/zzz_stable.rs | 4 +- + 99 files changed, 17098 insertions(+), 5787 deletions(-) + create mode 100644 third_party/rust/proc-macro2/src/detection.rs + create mode 100644 third_party/rust/proc-macro2/src/parse.rs + delete mode 100644 third_party/rust/proc-macro2/src/strnom.rs + create mode 100644 third_party/rust/proc-macro2/tests/comments.rs + create mode 100644 third_party/rust/proc-macro2/tests/test_fmt.rs + create mode 100644 third_party/rust/syn/src/gen/clone.rs + create mode 100644 third_party/rust/syn/src/gen/debug.rs + create mode 100644 third_party/rust/syn/src/gen/eq.rs + create mode 100644 third_party/rust/syn/src/gen/hash.rs + delete mode 100644 third_party/rust/syn/src/keyword.rs + create mode 100644 third_party/rust/syn/src/reserved.rs + create mode 100644 third_party/rust/syn/src/verbatim.rs + create mode 100644 third_party/rust/syn/src/whitespace.rs + create mode 100644 third_party/rust/syn/tests/.gitignore + delete mode 100755 third_party/rust/syn/tests/clone.sh + delete mode 100644 third_party/rust/syn/tests/features/error.rs + delete mode 100644 third_party/rust/syn/tests/features/mod.rs + create mode 100644 third_party/rust/syn/tests/repo/progress.rs + create mode 100644 third_party/rust/syn/tests/test_item.rs + create mode 100644 third_party/rust/syn/tests/test_parse_stream.rs + create mode 100644 third_party/rust/syn/tests/test_path.rs + create mode 100644 third_party/rust/syn/tests/test_receiver.rs + create mode 100644 third_party/rust/syn/tests/test_shebang.rs + create mode 100644 third_party/rust/syn/tests/test_stmt.rs + create mode 100644 third_party/rust/syn/tests/test_ty.rs + create mode 100644 third_party/rust/syn/tests/test_visibility.rs + +diff --git a/Cargo.lock b/Cargo.lock +index de6a025..522f7f9 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -3715,9 +3715,9 @@ dependencies = [ + + [[package]] + name = "proc-macro2" +-version = "1.0.5" ++version = "1.0.20" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "90cf5f418035b98e655e9cdb225047638296b862b42411c4e45bb88d700f7fc0" ++checksum = "175c513d55719db99da20232b06cda8bab6b83ec2d04e3283edf0213c37c1a29" + dependencies = [ + "unicode-xid", + ] +@@ -4645,9 +4645,9 @@ dependencies = [ + + [[package]] + name = "syn" +-version = "1.0.5" ++version = "1.0.40" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf" ++checksum = "963f7d3cc59b59b9325165add223142bbf1df27655d07789f109896d353d8350" + dependencies = [ + "proc-macro2", + "quote", +diff --git a/third_party/rust/proc-macro2/.cargo-checksum.json b/third_party/rust/proc-macro2/.cargo-checksum.json +index eeef412..43f5316 100644 +--- a/third_party/rust/proc-macro2/.cargo-checksum.json ++++ b/third_party/rust/proc-macro2/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"e2c1fc6ed317eeef8462fcd192f6b6389e1d84f0d7afeac78f12c23903deddf8","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"362a2156f7645528061b6e8487a2eb0f32f1693012ed82ee57afa05c039bba0d","build.rs":"0cc6e2cb919ddbff59cf1d810283939f97a59f0037540c0f2ee3453237635ff8","src/fallback.rs":"5c6379a90735e27abcc40253b223158c6b1e5784f3850bc423335363e87ef038","src/lib.rs":"ae5251296ad3fcd8b600919a993fec0afd8b56da3e11fef6bc7265b273129936","src/strnom.rs":"37f7791f73f123817ad5403af1d4e2a0714be27401729a2d451bc80b1f26bac9","src/wrapper.rs":"81372e910604217a625aa71c47d43e65f4e008456eae93ac39325c9abf10701a","tests/features.rs":"a86deb8644992a4eb64d9fd493eff16f9cf9c5cb6ade3a634ce0c990cf87d559","tests/marker.rs":"c2652e3ae1dfcb94d2e6313b29712c5dcbd0fe62026913e67bb7cebd7560aade","tests/test.rs":"8c427be9cba1fa8d4a16647e53e3545e5863e29e2c0b311c93c9dd1399abf6a1"},"package":"90cf5f418035b98e655e9cdb225047638296b862b42411c4e45bb88d700f7fc0"} +\ No newline at end of file ++{"files":{"Cargo.toml":"c20c4c52342e65ea11ad8382edc636e628e8f8c5ab7cffddc32426b2fe8fe4cd","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"e1f9d4fc22cff2c049f166a403b41458632a94357890d31cf0e3ad83807fb430","build.rs":"332185d7ad4c859210f5edd7a76bc95146c8277726a2f81417f34927c4424d68","src/detection.rs":"9d25d896889e65330858f2d6f6223c1b98cd1dad189813ad4161ff189fbda2b8","src/fallback.rs":"239f9a25c0f2ab57592288d944c7f1a0f887536b6d4dc2428a17640af8d10a41","src/lib.rs":"2b1d98424c9b23b547dabf85554120e5e65472026a0f3f711b3a097bca7c32fe","src/parse.rs":"500edee9773132e27e44d0fdaa042b1cb9451e29e65124493986f51710c0664c","src/wrapper.rs":"d36c0dced7ec0e7585c1f935cda836080bcae6de1de3d7851d962e9e11a3ac48","tests/comments.rs":"ea6cbe6f4c8852e6a0612893c7d4f2c144a2e6a134a6c3db641a320cbfc3c800","tests/features.rs":"a86deb8644992a4eb64d9fd493eff16f9cf9c5cb6ade3a634ce0c990cf87d559","tests/marker.rs":"c2652e3ae1dfcb94d2e6313b29712c5dcbd0fe62026913e67bb7cebd7560aade","tests/test.rs":"310c856e27ff61c9ec7f0a5cd96031aac02971557b1621f5e17b089d58e79bcd","tests/test_fmt.rs":"745dfdc41d09c5308c221395eb43f2041f0a1413d2927a813bc2ad4554438fe2"},"package":"175c513d55719db99da20232b06cda8bab6b83ec2d04e3283edf0213c37c1a29"} +\ No newline at end of file +diff --git a/third_party/rust/proc-macro2/Cargo.toml b/third_party/rust/proc-macro2/Cargo.toml +index 95d6536..19cb57d 100644 +--- a/third_party/rust/proc-macro2/Cargo.toml ++++ b/third_party/rust/proc-macro2/Cargo.toml +@@ -13,21 +13,22 @@ + [package] + edition = "2018" + name = "proc-macro2" +-version = "1.0.5" +-authors = ["Alex Crichton "] +-description = "A stable implementation of the upcoming new `proc_macro` API. Comes with an\noption, off by default, to also reimplement itself in terms of the upstream\nunstable API.\n" +-homepage = "https://github.com/alexcrichton/proc-macro2" ++version = "1.0.20" ++authors = ["Alex Crichton ", "David Tolnay "] ++description = "A substitute implementation of the compiler's `proc_macro` API to decouple\ntoken-based libraries from the procedural macro use case.\n" + documentation = "https://docs.rs/proc-macro2" + readme = "README.md" + keywords = ["macros"] ++categories = ["development-tools::procedural-macro-helpers"] + license = "MIT OR Apache-2.0" + repository = "https://github.com/alexcrichton/proc-macro2" + [package.metadata.docs.rs] + rustc-args = ["--cfg", "procmacro2_semver_exempt"] + rustdoc-args = ["--cfg", "procmacro2_semver_exempt"] ++targets = ["x86_64-unknown-linux-gnu"] + +-[lib] +-name = "proc_macro2" ++[package.metadata.playground] ++features = ["span-locations"] + [dependencies.unicode-xid] + version = "0.2" + [dev-dependencies.quote] +@@ -39,5 +40,3 @@ default = ["proc-macro"] + nightly = [] + proc-macro = [] + span-locations = [] +-[badges.travis-ci] +-repository = "alexcrichton/proc-macro2" +diff --git a/third_party/rust/proc-macro2/README.md b/third_party/rust/proc-macro2/README.md +index 19b0c3b..3d05e87 100644 +--- a/third_party/rust/proc-macro2/README.md ++++ b/third_party/rust/proc-macro2/README.md +@@ -1,6 +1,6 @@ + # proc-macro2 + +-[![Build Status](https://api.travis-ci.com/alexcrichton/proc-macro2.svg?branch=master)](https://travis-ci.com/alexcrichton/proc-macro2) ++[![Build Status](https://img.shields.io/github/workflow/status/alexcrichton/proc-macro2/build%20and%20test)](https://github.com/alexcrichton/proc-macro2/actions) + [![Latest Version](https://img.shields.io/crates/v/proc-macro2.svg)](https://crates.io/crates/proc-macro2) + [![Rust Documentation](https://img.shields.io/badge/api-rustdoc-blue.svg)](https://docs.rs/proc-macro2) + +diff --git a/third_party/rust/proc-macro2/build.rs b/third_party/rust/proc-macro2/build.rs +index deb9b92..153e13f 100644 +--- a/third_party/rust/proc-macro2/build.rs ++++ b/third_party/rust/proc-macro2/build.rs +@@ -14,6 +14,10 @@ + // procmacro2_semver_exempt surface area is implemented by using the + // nightly-only proc_macro API. + // ++// "hygiene" ++// Enable Span::mixed_site() and non-dummy behavior of Span::resolved_at ++// and Span::located_at. Enabled on Rust 1.45+. ++// + // "proc_macro_span" + // Enable non-dummy behavior of Span::start and Span::end methods which + // requires an unstable compiler feature. Enabled when building with +@@ -57,6 +61,14 @@ fn main() { + println!("cargo:rustc-cfg=span_locations"); + } + ++ if version.minor < 39 { ++ println!("cargo:rustc-cfg=no_bind_by_move_pattern_guard"); ++ } ++ ++ if version.minor >= 45 { ++ println!("cargo:rustc-cfg=hygiene"); ++ } ++ + let target = env::var("TARGET").unwrap(); + if !enable_use_proc_macro(&target) { + return; +diff --git a/third_party/rust/proc-macro2/src/detection.rs b/third_party/rust/proc-macro2/src/detection.rs +new file mode 100644 +index 0000000..c597bc9 +--- /dev/null ++++ b/third_party/rust/proc-macro2/src/detection.rs +@@ -0,0 +1,67 @@ ++use std::panic::{self, PanicInfo}; ++use std::sync::atomic::*; ++use std::sync::Once; ++ ++static WORKS: AtomicUsize = AtomicUsize::new(0); ++static INIT: Once = Once::new(); ++ ++pub(crate) fn inside_proc_macro() -> bool { ++ match WORKS.load(Ordering::SeqCst) { ++ 1 => return false, ++ 2 => return true, ++ _ => {} ++ } ++ ++ INIT.call_once(initialize); ++ inside_proc_macro() ++} ++ ++pub(crate) fn force_fallback() { ++ WORKS.store(1, Ordering::SeqCst); ++} ++ ++pub(crate) fn unforce_fallback() { ++ initialize(); ++} ++ ++// Swap in a null panic hook to avoid printing "thread panicked" to stderr, ++// then use catch_unwind to determine whether the compiler's proc_macro is ++// working. When proc-macro2 is used from outside of a procedural macro all ++// of the proc_macro crate's APIs currently panic. ++// ++// The Once is to prevent the possibility of this ordering: ++// ++// thread 1 calls take_hook, gets the user's original hook ++// thread 1 calls set_hook with the null hook ++// thread 2 calls take_hook, thinks null hook is the original hook ++// thread 2 calls set_hook with the null hook ++// thread 1 calls set_hook with the actual original hook ++// thread 2 calls set_hook with what it thinks is the original hook ++// ++// in which the user's hook has been lost. ++// ++// There is still a race condition where a panic in a different thread can ++// happen during the interval that the user's original panic hook is ++// unregistered such that their hook is incorrectly not called. This is ++// sufficiently unlikely and less bad than printing panic messages to stderr ++// on correct use of this crate. Maybe there is a libstd feature request ++// here. For now, if a user needs to guarantee that this failure mode does ++// not occur, they need to call e.g. `proc_macro2::Span::call_site()` from ++// the main thread before launching any other threads. ++fn initialize() { ++ type PanicHook = dyn Fn(&PanicInfo) + Sync + Send + 'static; ++ ++ let null_hook: Box = Box::new(|_panic_info| { /* ignore */ }); ++ let sanity_check = &*null_hook as *const PanicHook; ++ let original_hook = panic::take_hook(); ++ panic::set_hook(null_hook); ++ ++ let works = panic::catch_unwind(proc_macro::Span::call_site).is_ok(); ++ WORKS.store(works as usize + 1, Ordering::SeqCst); ++ ++ let hopefully_null_hook = panic::take_hook(); ++ panic::set_hook(original_hook); ++ if sanity_check != &*hopefully_null_hook { ++ panic!("observed race condition in proc_macro2::inside_proc_macro"); ++ } ++} +diff --git a/third_party/rust/proc-macro2/src/fallback.rs b/third_party/rust/proc-macro2/src/fallback.rs +index fe582b3..949b9a5 100644 +--- a/third_party/rust/proc-macro2/src/fallback.rs ++++ b/third_party/rust/proc-macro2/src/fallback.rs +@@ -1,27 +1,41 @@ ++use crate::parse::{token_stream, Cursor}; ++use crate::{Delimiter, Spacing, TokenTree}; + #[cfg(span_locations)] + use std::cell::RefCell; + #[cfg(span_locations)] + use std::cmp; +-use std::fmt; +-use std::iter; ++use std::fmt::{self, Debug, Display}; ++use std::iter::FromIterator; ++use std::mem; + use std::ops::RangeBounds; + #[cfg(procmacro2_semver_exempt)] + use std::path::Path; + use std::path::PathBuf; + use std::str::FromStr; + use std::vec; +- +-use crate::strnom::{block_comment, skip_whitespace, whitespace, word_break, Cursor, PResult}; +-use crate::{Delimiter, Punct, Spacing, TokenTree}; + use unicode_xid::UnicodeXID; + ++/// Force use of proc-macro2's fallback implementation of the API for now, even ++/// if the compiler's implementation is available. ++pub fn force() { ++ #[cfg(wrap_proc_macro)] ++ crate::detection::force_fallback(); ++} ++ ++/// Resume using the compiler's implementation of the proc macro API if it is ++/// available. ++pub fn unforce() { ++ #[cfg(wrap_proc_macro)] ++ crate::detection::unforce_fallback(); ++} ++ + #[derive(Clone)] +-pub struct TokenStream { +- inner: Vec, ++pub(crate) struct TokenStream { ++ pub(crate) inner: Vec, + } + + #[derive(Debug)] +-pub struct LexError; ++pub(crate) struct LexError; + + impl TokenStream { + pub fn new() -> TokenStream { +@@ -31,6 +45,72 @@ impl TokenStream { + pub fn is_empty(&self) -> bool { + self.inner.len() == 0 + } ++ ++ fn take_inner(&mut self) -> Vec { ++ mem::replace(&mut self.inner, Vec::new()) ++ } ++ ++ fn push_token(&mut self, token: TokenTree) { ++ // https://github.com/alexcrichton/proc-macro2/issues/235 ++ match token { ++ #[cfg(not(no_bind_by_move_pattern_guard))] ++ TokenTree::Literal(crate::Literal { ++ #[cfg(wrap_proc_macro)] ++ inner: crate::imp::Literal::Fallback(literal), ++ #[cfg(not(wrap_proc_macro))] ++ inner: literal, ++ .. ++ }) if literal.text.starts_with('-') => { ++ push_negative_literal(self, literal); ++ } ++ #[cfg(no_bind_by_move_pattern_guard)] ++ TokenTree::Literal(crate::Literal { ++ #[cfg(wrap_proc_macro)] ++ inner: crate::imp::Literal::Fallback(literal), ++ #[cfg(not(wrap_proc_macro))] ++ inner: literal, ++ .. ++ }) => { ++ if literal.text.starts_with('-') { ++ push_negative_literal(self, literal); ++ } else { ++ self.inner ++ .push(TokenTree::Literal(crate::Literal::_new_stable(literal))); ++ } ++ } ++ _ => self.inner.push(token), ++ } ++ ++ #[cold] ++ fn push_negative_literal(stream: &mut TokenStream, mut literal: Literal) { ++ literal.text.remove(0); ++ let mut punct = crate::Punct::new('-', Spacing::Alone); ++ punct.set_span(crate::Span::_new_stable(literal.span)); ++ stream.inner.push(TokenTree::Punct(punct)); ++ stream ++ .inner ++ .push(TokenTree::Literal(crate::Literal::_new_stable(literal))); ++ } ++ } ++} ++ ++// Nonrecursive to prevent stack overflow. ++impl Drop for TokenStream { ++ fn drop(&mut self) { ++ while let Some(token) = self.inner.pop() { ++ let group = match token { ++ TokenTree::Group(group) => group.inner, ++ _ => continue, ++ }; ++ #[cfg(wrap_proc_macro)] ++ let group = match group { ++ crate::imp::Group::Fallback(group) => group, ++ _ => continue, ++ }; ++ let mut group = group; ++ self.inner.extend(group.stream.take_inner()); ++ } ++ } + } + + #[cfg(span_locations)] +@@ -59,20 +139,16 @@ impl FromStr for TokenStream { + // Create a dummy file & add it to the source map + let cursor = get_cursor(src); + +- match token_stream(cursor) { +- Ok((input, output)) => { +- if skip_whitespace(input).len() != 0 { +- Err(LexError) +- } else { +- Ok(output) +- } +- } +- Err(LexError) => Err(LexError), ++ let (rest, tokens) = token_stream(cursor)?; ++ if rest.is_empty() { ++ Ok(tokens) ++ } else { ++ Err(LexError) + } + } + } + +-impl fmt::Display for TokenStream { ++impl Display for TokenStream { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + let mut joint = false; + for (i, tt) in self.inner.iter().enumerate() { +@@ -80,37 +156,22 @@ impl fmt::Display for TokenStream { + write!(f, " ")?; + } + joint = false; +- match *tt { +- TokenTree::Group(ref tt) => { +- let (start, end) = match tt.delimiter() { +- Delimiter::Parenthesis => ("(", ")"), +- Delimiter::Brace => ("{", "}"), +- Delimiter::Bracket => ("[", "]"), +- Delimiter::None => ("", ""), +- }; +- if tt.stream().into_iter().next().is_none() { +- write!(f, "{} {}", start, end)? +- } else { +- write!(f, "{} {} {}", start, tt.stream(), end)? +- } +- } +- TokenTree::Ident(ref tt) => write!(f, "{}", tt)?, +- TokenTree::Punct(ref tt) => { +- write!(f, "{}", tt.as_char())?; +- match tt.spacing() { +- Spacing::Alone => {} +- Spacing::Joint => joint = true, +- } ++ match tt { ++ TokenTree::Group(tt) => Display::fmt(tt, f), ++ TokenTree::Ident(tt) => Display::fmt(tt, f), ++ TokenTree::Punct(tt) => { ++ joint = tt.spacing() == Spacing::Joint; ++ Display::fmt(tt, f) + } +- TokenTree::Literal(ref tt) => write!(f, "{}", tt)?, +- } ++ TokenTree::Literal(tt) => Display::fmt(tt, f), ++ }? + } + + Ok(()) + } + } + +-impl fmt::Debug for TokenStream { ++impl Debug for TokenStream { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + f.write_str("TokenStream ")?; + f.debug_list().entries(self.clone()).finish() +@@ -139,28 +200,26 @@ impl From for proc_macro::TokenStream { + + impl From for TokenStream { + fn from(tree: TokenTree) -> TokenStream { +- TokenStream { inner: vec![tree] } ++ let mut stream = TokenStream::new(); ++ stream.push_token(tree); ++ stream + } + } + +-impl iter::FromIterator for TokenStream { +- fn from_iter>(streams: I) -> Self { +- let mut v = Vec::new(); +- +- for token in streams.into_iter() { +- v.push(token); +- } +- +- TokenStream { inner: v } ++impl FromIterator for TokenStream { ++ fn from_iter>(tokens: I) -> Self { ++ let mut stream = TokenStream::new(); ++ stream.extend(tokens); ++ stream + } + } + +-impl iter::FromIterator for TokenStream { ++impl FromIterator for TokenStream { + fn from_iter>(streams: I) -> Self { + let mut v = Vec::new(); + +- for stream in streams.into_iter() { +- v.extend(stream.inner); ++ for mut stream in streams { ++ v.extend(stream.take_inner()); + } + + TokenStream { inner: v } +@@ -168,31 +227,30 @@ impl iter::FromIterator for TokenStream { + } + + impl Extend for TokenStream { +- fn extend>(&mut self, streams: I) { +- self.inner.extend(streams); ++ fn extend>(&mut self, tokens: I) { ++ tokens.into_iter().for_each(|token| self.push_token(token)); + } + } + + impl Extend for TokenStream { + fn extend>(&mut self, streams: I) { +- self.inner +- .extend(streams.into_iter().flat_map(|stream| stream)); ++ self.inner.extend(streams.into_iter().flatten()); + } + } + +-pub type TokenTreeIter = vec::IntoIter; ++pub(crate) type TokenTreeIter = vec::IntoIter; + + impl IntoIterator for TokenStream { + type Item = TokenTree; + type IntoIter = TokenTreeIter; + +- fn into_iter(self) -> TokenTreeIter { +- self.inner.into_iter() ++ fn into_iter(mut self) -> TokenTreeIter { ++ self.take_inner().into_iter() + } + } + + #[derive(Clone, PartialEq, Eq)] +-pub struct SourceFile { ++pub(crate) struct SourceFile { + path: PathBuf, + } + +@@ -208,7 +266,7 @@ impl SourceFile { + } + } + +-impl fmt::Debug for SourceFile { ++impl Debug for SourceFile { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + f.debug_struct("SourceFile") + .field("path", &self.path()) +@@ -218,7 +276,7 @@ impl fmt::Debug for SourceFile { + } + + #[derive(Clone, Copy, Debug, PartialEq, Eq)] +-pub struct LineColumn { ++pub(crate) struct LineColumn { + pub line: usize, + pub column: usize, + } +@@ -228,23 +286,11 @@ thread_local! { + static SOURCE_MAP: RefCell = RefCell::new(SourceMap { + // NOTE: We start with a single dummy file which all call_site() and + // def_site() spans reference. +- files: vec![{ ++ files: vec![FileInfo { + #[cfg(procmacro2_semver_exempt)] +- { +- FileInfo { +- name: "".to_owned(), +- span: Span { lo: 0, hi: 0 }, +- lines: vec![0], +- } +- } +- +- #[cfg(not(procmacro2_semver_exempt))] +- { +- FileInfo { +- span: Span { lo: 0, hi: 0 }, +- lines: vec![0], +- } +- } ++ name: "".to_owned(), ++ span: Span { lo: 0, hi: 0 }, ++ lines: vec![0], + }], + }); + } +@@ -282,16 +328,21 @@ impl FileInfo { + } + } + +-/// Computesthe offsets of each line in the given source string. ++/// Computes the offsets of each line in the given source string ++/// and the total number of characters + #[cfg(span_locations)] +-fn lines_offsets(s: &str) -> Vec { ++fn lines_offsets(s: &str) -> (usize, Vec) { + let mut lines = vec![0]; +- let mut prev = 0; +- while let Some(len) = s[prev..].find('\n') { +- prev += len + 1; +- lines.push(prev); ++ let mut total = 0; ++ ++ for ch in s.chars() { ++ total += 1; ++ if ch == '\n' { ++ lines.push(total); ++ } + } +- lines ++ ++ (total, lines) + } + + #[cfg(span_locations)] +@@ -310,23 +361,22 @@ impl SourceMap { + } + + fn add_file(&mut self, name: &str, src: &str) -> Span { +- let lines = lines_offsets(src); ++ let (len, lines) = lines_offsets(src); + let lo = self.next_start_pos(); + // XXX(nika): Shouild we bother doing a checked cast or checked add here? + let span = Span { + lo, +- hi: lo + (src.len() as u32), ++ hi: lo + (len as u32), + }; + +- #[cfg(procmacro2_semver_exempt)] + self.files.push(FileInfo { ++ #[cfg(procmacro2_semver_exempt)] + name: name.to_owned(), + span, + lines, + }); + + #[cfg(not(procmacro2_semver_exempt))] +- self.files.push(FileInfo { span, lines }); + let _ = name; + + span +@@ -343,11 +393,11 @@ impl SourceMap { + } + + #[derive(Clone, Copy, PartialEq, Eq)] +-pub struct Span { ++pub(crate) struct Span { + #[cfg(span_locations)] +- lo: u32, ++ pub(crate) lo: u32, + #[cfg(span_locations)] +- hi: u32, ++ pub(crate) hi: u32, + } + + impl Span { +@@ -361,12 +411,16 @@ impl Span { + Span { lo: 0, hi: 0 } + } + ++ #[cfg(hygiene)] ++ pub fn mixed_site() -> Span { ++ Span::call_site() ++ } ++ + #[cfg(procmacro2_semver_exempt)] + pub fn def_site() -> Span { + Span::call_site() + } + +- #[cfg(procmacro2_semver_exempt)] + pub fn resolved_at(&self, _other: Span) -> Span { + // Stable spans consist only of line/column information, so + // `resolved_at` and `located_at` only select which span the +@@ -374,7 +428,6 @@ impl Span { + *self + } + +- #[cfg(procmacro2_semver_exempt)] + pub fn located_at(&self, other: Span) -> Span { + other + } +@@ -427,26 +480,59 @@ impl Span { + }) + }) + } ++ ++ #[cfg(not(span_locations))] ++ fn first_byte(self) -> Self { ++ self ++ } ++ ++ #[cfg(span_locations)] ++ fn first_byte(self) -> Self { ++ Span { ++ lo: self.lo, ++ hi: cmp::min(self.lo.saturating_add(1), self.hi), ++ } ++ } ++ ++ #[cfg(not(span_locations))] ++ fn last_byte(self) -> Self { ++ self ++ } ++ ++ #[cfg(span_locations)] ++ fn last_byte(self) -> Self { ++ Span { ++ lo: cmp::max(self.hi.saturating_sub(1), self.lo), ++ hi: self.hi, ++ } ++ } + } + +-impl fmt::Debug for Span { ++impl Debug for Span { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- #[cfg(procmacro2_semver_exempt)] ++ #[cfg(span_locations)] + return write!(f, "bytes({}..{})", self.lo, self.hi); + +- #[cfg(not(procmacro2_semver_exempt))] ++ #[cfg(not(span_locations))] + write!(f, "Span") + } + } + +-pub fn debug_span_field_if_nontrivial(debug: &mut fmt::DebugStruct, span: Span) { +- if cfg!(procmacro2_semver_exempt) { ++pub(crate) fn debug_span_field_if_nontrivial(debug: &mut fmt::DebugStruct, span: Span) { ++ #[cfg(span_locations)] ++ { ++ if span.lo == 0 && span.hi == 0 { ++ return; ++ } ++ } ++ ++ if cfg!(span_locations) { + debug.field("span", &span); + } + } + + #[derive(Clone)] +-pub struct Group { ++pub(crate) struct Group { + delimiter: Delimiter, + stream: TokenStream, + span: Span, +@@ -474,11 +560,11 @@ impl Group { + } + + pub fn span_open(&self) -> Span { +- self.span ++ self.span.first_byte() + } + + pub fn span_close(&self) -> Span { +- self.span ++ self.span.last_byte() + } + + pub fn set_span(&mut self, span: Span) { +@@ -486,36 +572,45 @@ impl Group { + } + } + +-impl fmt::Display for Group { ++impl Display for Group { ++ // We attempt to match libproc_macro's formatting. ++ // Empty parens: () ++ // Nonempty parens: (...) ++ // Empty brackets: [] ++ // Nonempty brackets: [...] ++ // Empty braces: { } ++ // Nonempty braces: { ... } + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- let (left, right) = match self.delimiter { ++ let (open, close) = match self.delimiter { + Delimiter::Parenthesis => ("(", ")"), +- Delimiter::Brace => ("{", "}"), ++ Delimiter::Brace => ("{ ", "}"), + Delimiter::Bracket => ("[", "]"), + Delimiter::None => ("", ""), + }; + +- f.write_str(left)?; +- self.stream.fmt(f)?; +- f.write_str(right)?; ++ f.write_str(open)?; ++ Display::fmt(&self.stream, f)?; ++ if self.delimiter == Delimiter::Brace && !self.stream.inner.is_empty() { ++ f.write_str(" ")?; ++ } ++ f.write_str(close)?; + + Ok(()) + } + } + +-impl fmt::Debug for Group { ++impl Debug for Group { + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + let mut debug = fmt.debug_struct("Group"); + debug.field("delimiter", &self.delimiter); + debug.field("stream", &self.stream); +- #[cfg(procmacro2_semver_exempt)] +- debug.field("span", &self.span); ++ debug_span_field_if_nontrivial(&mut debug, self.span); + debug.finish() + } + } + + #[derive(Clone)] +-pub struct Ident { ++pub(crate) struct Ident { + sym: String, + span: Span, + raw: bool, +@@ -549,16 +644,14 @@ impl Ident { + } + } + +-#[inline] +-fn is_ident_start(c: char) -> bool { ++pub(crate) fn is_ident_start(c: char) -> bool { + ('a' <= c && c <= 'z') + || ('A' <= c && c <= 'Z') + || c == '_' + || (c > '\x7f' && UnicodeXID::is_xid_start(c)) + } + +-#[inline] +-fn is_ident_continue(c: char) -> bool { ++pub(crate) fn is_ident_continue(c: char) -> bool { + ('a' <= c && c <= 'z') + || ('A' <= c && c <= 'Z') + || c == '_' +@@ -615,18 +708,18 @@ where + } + } + +-impl fmt::Display for Ident { ++impl Display for Ident { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + if self.raw { +- "r#".fmt(f)?; ++ f.write_str("r#")?; + } +- self.sym.fmt(f) ++ Display::fmt(&self.sym, f) + } + } + +-impl fmt::Debug for Ident { ++impl Debug for Ident { + // Ident(proc_macro), Ident(r#union) +- #[cfg(not(procmacro2_semver_exempt))] ++ #[cfg(not(span_locations))] + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + let mut debug = f.debug_tuple("Ident"); + debug.field(&format_args!("{}", self)); +@@ -637,17 +730,17 @@ impl fmt::Debug for Ident { + // sym: proc_macro, + // span: bytes(128..138) + // } +- #[cfg(procmacro2_semver_exempt)] ++ #[cfg(span_locations)] + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + let mut debug = f.debug_struct("Ident"); + debug.field("sym", &format_args!("{}", self)); +- debug.field("span", &self.span); ++ debug_span_field_if_nontrivial(&mut debug, self.span); + debug.finish() + } + } + + #[derive(Clone)] +-pub struct Literal { ++pub(crate) struct Literal { + text: String, + span: Span, + } +@@ -669,7 +762,7 @@ macro_rules! unsuffixed_numbers { + } + + impl Literal { +- fn _new(text: String) -> Literal { ++ pub(crate) fn _new(text: String) -> Literal { + Literal { + text, + span: Span::call_site(), +@@ -711,7 +804,7 @@ impl Literal { + + pub fn f32_unsuffixed(f: f32) -> Literal { + let mut s = f.to_string(); +- if !s.contains(".") { ++ if !s.contains('.') { + s.push_str(".0"); + } + Literal::_new(s) +@@ -719,7 +812,7 @@ impl Literal { + + pub fn f64_unsuffixed(f: f64) -> Literal { + let mut s = f.to_string(); +- if !s.contains(".") { ++ if !s.contains('.') { + s.push_str(".0"); + } + Literal::_new(s) +@@ -730,10 +823,10 @@ impl Literal { + text.push('"'); + for c in t.chars() { + if c == '\'' { +- // escape_default turns this into "\'" which is unnecessary. ++ // escape_debug turns this into "\'" which is unnecessary. + text.push(c); + } else { +- text.extend(c.escape_default()); ++ text.extend(c.escape_debug()); + } + } + text.push('"'); +@@ -744,10 +837,10 @@ impl Literal { + let mut text = String::new(); + text.push('\''); + if t == '"' { +- // escape_default turns this into '\"' which is unnecessary. ++ // escape_debug turns this into '\"' which is unnecessary. + text.push(t); + } else { +- text.extend(t.escape_default()); ++ text.extend(t.escape_debug()); + } + text.push('\''); + Literal::_new(text) +@@ -756,6 +849,7 @@ impl Literal { + pub fn byte_string(bytes: &[u8]) -> Literal { + let mut escaped = "b\"".to_string(); + for b in bytes { ++ #[allow(clippy::match_overlapping_arm)] + match *b { + b'\0' => escaped.push_str(r"\0"), + b'\t' => escaped.push_str(r"\t"), +@@ -784,651 +878,17 @@ impl Literal { + } + } + +-impl fmt::Display for Literal { ++impl Display for Literal { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.text.fmt(f) ++ Display::fmt(&self.text, f) + } + } + +-impl fmt::Debug for Literal { ++impl Debug for Literal { + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + let mut debug = fmt.debug_struct("Literal"); + debug.field("lit", &format_args!("{}", self.text)); +- #[cfg(procmacro2_semver_exempt)] +- debug.field("span", &self.span); ++ debug_span_field_if_nontrivial(&mut debug, self.span); + debug.finish() + } + } +- +-fn token_stream(mut input: Cursor) -> PResult { +- let mut trees = Vec::new(); +- loop { +- let input_no_ws = skip_whitespace(input); +- if input_no_ws.rest.len() == 0 { +- break; +- } +- if let Ok((a, tokens)) = doc_comment(input_no_ws) { +- input = a; +- trees.extend(tokens); +- continue; +- } +- +- let (a, tt) = match token_tree(input_no_ws) { +- Ok(p) => p, +- Err(_) => break, +- }; +- trees.push(tt); +- input = a; +- } +- Ok((input, TokenStream { inner: trees })) +-} +- +-#[cfg(not(span_locations))] +-fn spanned<'a, T>( +- input: Cursor<'a>, +- f: fn(Cursor<'a>) -> PResult<'a, T>, +-) -> PResult<'a, (T, crate::Span)> { +- let (a, b) = f(skip_whitespace(input))?; +- Ok((a, ((b, crate::Span::_new_stable(Span::call_site()))))) +-} +- +-#[cfg(span_locations)] +-fn spanned<'a, T>( +- input: Cursor<'a>, +- f: fn(Cursor<'a>) -> PResult<'a, T>, +-) -> PResult<'a, (T, crate::Span)> { +- let input = skip_whitespace(input); +- let lo = input.off; +- let (a, b) = f(input)?; +- let hi = a.off; +- let span = crate::Span::_new_stable(Span { lo, hi }); +- Ok((a, (b, span))) +-} +- +-fn token_tree(input: Cursor) -> PResult { +- let (rest, (mut tt, span)) = spanned(input, token_kind)?; +- tt.set_span(span); +- Ok((rest, tt)) +-} +- +-named!(token_kind -> TokenTree, alt!( +- map!(group, |g| TokenTree::Group(crate::Group::_new_stable(g))) +- | +- map!(literal, |l| TokenTree::Literal(crate::Literal::_new_stable(l))) // must be before symbol +- | +- map!(op, TokenTree::Punct) +- | +- symbol_leading_ws +-)); +- +-named!(group -> Group, alt!( +- delimited!( +- punct!("("), +- token_stream, +- punct!(")") +- ) => { |ts| Group::new(Delimiter::Parenthesis, ts) } +- | +- delimited!( +- punct!("["), +- token_stream, +- punct!("]") +- ) => { |ts| Group::new(Delimiter::Bracket, ts) } +- | +- delimited!( +- punct!("{"), +- token_stream, +- punct!("}") +- ) => { |ts| Group::new(Delimiter::Brace, ts) } +-)); +- +-fn symbol_leading_ws(input: Cursor) -> PResult { +- symbol(skip_whitespace(input)) +-} +- +-fn symbol(input: Cursor) -> PResult { +- let raw = input.starts_with("r#"); +- let rest = input.advance((raw as usize) << 1); +- +- let (rest, sym) = symbol_not_raw(rest)?; +- +- if !raw { +- let ident = crate::Ident::new(sym, crate::Span::call_site()); +- return Ok((rest, ident.into())); +- } +- +- if sym == "_" { +- return Err(LexError); +- } +- +- let ident = crate::Ident::_new_raw(sym, crate::Span::call_site()); +- Ok((rest, ident.into())) +-} +- +-fn symbol_not_raw(input: Cursor) -> PResult<&str> { +- let mut chars = input.char_indices(); +- +- match chars.next() { +- Some((_, ch)) if is_ident_start(ch) => {} +- _ => return Err(LexError), +- } +- +- let mut end = input.len(); +- for (i, ch) in chars { +- if !is_ident_continue(ch) { +- end = i; +- break; +- } +- } +- +- Ok((input.advance(end), &input.rest[..end])) +-} +- +-fn literal(input: Cursor) -> PResult { +- let input_no_ws = skip_whitespace(input); +- +- match literal_nocapture(input_no_ws) { +- Ok((a, ())) => { +- let start = input.len() - input_no_ws.len(); +- let len = input_no_ws.len() - a.len(); +- let end = start + len; +- Ok((a, Literal::_new(input.rest[start..end].to_string()))) +- } +- Err(LexError) => Err(LexError), +- } +-} +- +-named!(literal_nocapture -> (), alt!( +- string +- | +- byte_string +- | +- byte +- | +- character +- | +- float +- | +- int +-)); +- +-named!(string -> (), alt!( +- quoted_string +- | +- preceded!( +- punct!("r"), +- raw_string +- ) => { |_| () } +-)); +- +-named!(quoted_string -> (), do_parse!( +- punct!("\"") >> +- cooked_string >> +- tag!("\"") >> +- option!(symbol_not_raw) >> +- (()) +-)); +- +-fn cooked_string(input: Cursor) -> PResult<()> { +- let mut chars = input.char_indices().peekable(); +- while let Some((byte_offset, ch)) = chars.next() { +- match ch { +- '"' => { +- return Ok((input.advance(byte_offset), ())); +- } +- '\r' => { +- if let Some((_, '\n')) = chars.next() { +- // ... +- } else { +- break; +- } +- } +- '\\' => match chars.next() { +- Some((_, 'x')) => { +- if !backslash_x_char(&mut chars) { +- break; +- } +- } +- Some((_, 'n')) | Some((_, 'r')) | Some((_, 't')) | Some((_, '\\')) +- | Some((_, '\'')) | Some((_, '"')) | Some((_, '0')) => {} +- Some((_, 'u')) => { +- if !backslash_u(&mut chars) { +- break; +- } +- } +- Some((_, '\n')) | Some((_, '\r')) => { +- while let Some(&(_, ch)) = chars.peek() { +- if ch.is_whitespace() { +- chars.next(); +- } else { +- break; +- } +- } +- } +- _ => break, +- }, +- _ch => {} +- } +- } +- Err(LexError) +-} +- +-named!(byte_string -> (), alt!( +- delimited!( +- punct!("b\""), +- cooked_byte_string, +- tag!("\"") +- ) => { |_| () } +- | +- preceded!( +- punct!("br"), +- raw_string +- ) => { |_| () } +-)); +- +-fn cooked_byte_string(mut input: Cursor) -> PResult<()> { +- let mut bytes = input.bytes().enumerate(); +- 'outer: while let Some((offset, b)) = bytes.next() { +- match b { +- b'"' => { +- return Ok((input.advance(offset), ())); +- } +- b'\r' => { +- if let Some((_, b'\n')) = bytes.next() { +- // ... +- } else { +- break; +- } +- } +- b'\\' => match bytes.next() { +- Some((_, b'x')) => { +- if !backslash_x_byte(&mut bytes) { +- break; +- } +- } +- Some((_, b'n')) | Some((_, b'r')) | Some((_, b't')) | Some((_, b'\\')) +- | Some((_, b'0')) | Some((_, b'\'')) | Some((_, b'"')) => {} +- Some((newline, b'\n')) | Some((newline, b'\r')) => { +- let rest = input.advance(newline + 1); +- for (offset, ch) in rest.char_indices() { +- if !ch.is_whitespace() { +- input = rest.advance(offset); +- bytes = input.bytes().enumerate(); +- continue 'outer; +- } +- } +- break; +- } +- _ => break, +- }, +- b if b < 0x80 => {} +- _ => break, +- } +- } +- Err(LexError) +-} +- +-fn raw_string(input: Cursor) -> PResult<()> { +- let mut chars = input.char_indices(); +- let mut n = 0; +- while let Some((byte_offset, ch)) = chars.next() { +- match ch { +- '"' => { +- n = byte_offset; +- break; +- } +- '#' => {} +- _ => return Err(LexError), +- } +- } +- for (byte_offset, ch) in chars { +- match ch { +- '"' if input.advance(byte_offset + 1).starts_with(&input.rest[..n]) => { +- let rest = input.advance(byte_offset + 1 + n); +- return Ok((rest, ())); +- } +- '\r' => {} +- _ => {} +- } +- } +- Err(LexError) +-} +- +-named!(byte -> (), do_parse!( +- punct!("b") >> +- tag!("'") >> +- cooked_byte >> +- tag!("'") >> +- (()) +-)); +- +-fn cooked_byte(input: Cursor) -> PResult<()> { +- let mut bytes = input.bytes().enumerate(); +- let ok = match bytes.next().map(|(_, b)| b) { +- Some(b'\\') => match bytes.next().map(|(_, b)| b) { +- Some(b'x') => backslash_x_byte(&mut bytes), +- Some(b'n') | Some(b'r') | Some(b't') | Some(b'\\') | Some(b'0') | Some(b'\'') +- | Some(b'"') => true, +- _ => false, +- }, +- b => b.is_some(), +- }; +- if ok { +- match bytes.next() { +- Some((offset, _)) => { +- if input.chars().as_str().is_char_boundary(offset) { +- Ok((input.advance(offset), ())) +- } else { +- Err(LexError) +- } +- } +- None => Ok((input.advance(input.len()), ())), +- } +- } else { +- Err(LexError) +- } +-} +- +-named!(character -> (), do_parse!( +- punct!("'") >> +- cooked_char >> +- tag!("'") >> +- (()) +-)); +- +-fn cooked_char(input: Cursor) -> PResult<()> { +- let mut chars = input.char_indices(); +- let ok = match chars.next().map(|(_, ch)| ch) { +- Some('\\') => match chars.next().map(|(_, ch)| ch) { +- Some('x') => backslash_x_char(&mut chars), +- Some('u') => backslash_u(&mut chars), +- Some('n') | Some('r') | Some('t') | Some('\\') | Some('0') | Some('\'') | Some('"') => { +- true +- } +- _ => false, +- }, +- ch => ch.is_some(), +- }; +- if ok { +- match chars.next() { +- Some((idx, _)) => Ok((input.advance(idx), ())), +- None => Ok((input.advance(input.len()), ())), +- } +- } else { +- Err(LexError) +- } +-} +- +-macro_rules! next_ch { +- ($chars:ident @ $pat:pat $(| $rest:pat)*) => { +- match $chars.next() { +- Some((_, ch)) => match ch { +- $pat $(| $rest)* => ch, +- _ => return false, +- }, +- None => return false +- } +- }; +-} +- +-fn backslash_x_char(chars: &mut I) -> bool +-where +- I: Iterator, +-{ +- next_ch!(chars @ '0'..='7'); +- next_ch!(chars @ '0'..='9' | 'a'..='f' | 'A'..='F'); +- true +-} +- +-fn backslash_x_byte(chars: &mut I) -> bool +-where +- I: Iterator, +-{ +- next_ch!(chars @ b'0'..=b'9' | b'a'..=b'f' | b'A'..=b'F'); +- next_ch!(chars @ b'0'..=b'9' | b'a'..=b'f' | b'A'..=b'F'); +- true +-} +- +-fn backslash_u(chars: &mut I) -> bool +-where +- I: Iterator, +-{ +- next_ch!(chars @ '{'); +- next_ch!(chars @ '0'..='9' | 'a'..='f' | 'A'..='F'); +- loop { +- let c = next_ch!(chars @ '0'..='9' | 'a'..='f' | 'A'..='F' | '_' | '}'); +- if c == '}' { +- return true; +- } +- } +-} +- +-fn float(input: Cursor) -> PResult<()> { +- let (mut rest, ()) = float_digits(input)?; +- if let Some(ch) = rest.chars().next() { +- if is_ident_start(ch) { +- rest = symbol_not_raw(rest)?.0; +- } +- } +- word_break(rest) +-} +- +-fn float_digits(input: Cursor) -> PResult<()> { +- let mut chars = input.chars().peekable(); +- match chars.next() { +- Some(ch) if ch >= '0' && ch <= '9' => {} +- _ => return Err(LexError), +- } +- +- let mut len = 1; +- let mut has_dot = false; +- let mut has_exp = false; +- while let Some(&ch) = chars.peek() { +- match ch { +- '0'..='9' | '_' => { +- chars.next(); +- len += 1; +- } +- '.' => { +- if has_dot { +- break; +- } +- chars.next(); +- if chars +- .peek() +- .map(|&ch| ch == '.' || is_ident_start(ch)) +- .unwrap_or(false) +- { +- return Err(LexError); +- } +- len += 1; +- has_dot = true; +- } +- 'e' | 'E' => { +- chars.next(); +- len += 1; +- has_exp = true; +- break; +- } +- _ => break, +- } +- } +- +- let rest = input.advance(len); +- if !(has_dot || has_exp || rest.starts_with("f32") || rest.starts_with("f64")) { +- return Err(LexError); +- } +- +- if has_exp { +- let mut has_exp_value = false; +- while let Some(&ch) = chars.peek() { +- match ch { +- '+' | '-' => { +- if has_exp_value { +- break; +- } +- chars.next(); +- len += 1; +- } +- '0'..='9' => { +- chars.next(); +- len += 1; +- has_exp_value = true; +- } +- '_' => { +- chars.next(); +- len += 1; +- } +- _ => break, +- } +- } +- if !has_exp_value { +- return Err(LexError); +- } +- } +- +- Ok((input.advance(len), ())) +-} +- +-fn int(input: Cursor) -> PResult<()> { +- let (mut rest, ()) = digits(input)?; +- if let Some(ch) = rest.chars().next() { +- if is_ident_start(ch) { +- rest = symbol_not_raw(rest)?.0; +- } +- } +- word_break(rest) +-} +- +-fn digits(mut input: Cursor) -> PResult<()> { +- let base = if input.starts_with("0x") { +- input = input.advance(2); +- 16 +- } else if input.starts_with("0o") { +- input = input.advance(2); +- 8 +- } else if input.starts_with("0b") { +- input = input.advance(2); +- 2 +- } else { +- 10 +- }; +- +- let mut len = 0; +- let mut empty = true; +- for b in input.bytes() { +- let digit = match b { +- b'0'..=b'9' => (b - b'0') as u64, +- b'a'..=b'f' => 10 + (b - b'a') as u64, +- b'A'..=b'F' => 10 + (b - b'A') as u64, +- b'_' => { +- if empty && base == 10 { +- return Err(LexError); +- } +- len += 1; +- continue; +- } +- _ => break, +- }; +- if digit >= base { +- return Err(LexError); +- } +- len += 1; +- empty = false; +- } +- if empty { +- Err(LexError) +- } else { +- Ok((input.advance(len), ())) +- } +-} +- +-fn op(input: Cursor) -> PResult { +- let input = skip_whitespace(input); +- match op_char(input) { +- Ok((rest, '\'')) => { +- symbol(rest)?; +- Ok((rest, Punct::new('\'', Spacing::Joint))) +- } +- Ok((rest, ch)) => { +- let kind = match op_char(rest) { +- Ok(_) => Spacing::Joint, +- Err(LexError) => Spacing::Alone, +- }; +- Ok((rest, Punct::new(ch, kind))) +- } +- Err(LexError) => Err(LexError), +- } +-} +- +-fn op_char(input: Cursor) -> PResult { +- if input.starts_with("//") || input.starts_with("/*") { +- // Do not accept `/` of a comment as an op. +- return Err(LexError); +- } +- +- let mut chars = input.chars(); +- let first = match chars.next() { +- Some(ch) => ch, +- None => { +- return Err(LexError); +- } +- }; +- let recognized = "~!@#$%^&*-=+|;:,<.>/?'"; +- if recognized.contains(first) { +- Ok((input.advance(first.len_utf8()), first)) +- } else { +- Err(LexError) +- } +-} +- +-fn doc_comment(input: Cursor) -> PResult> { +- let mut trees = Vec::new(); +- let (rest, ((comment, inner), span)) = spanned(input, doc_comment_contents)?; +- trees.push(TokenTree::Punct(Punct::new('#', Spacing::Alone))); +- if inner { +- trees.push(Punct::new('!', Spacing::Alone).into()); +- } +- let mut stream = vec![ +- TokenTree::Ident(crate::Ident::new("doc", span)), +- TokenTree::Punct(Punct::new('=', Spacing::Alone)), +- TokenTree::Literal(crate::Literal::string(comment)), +- ]; +- for tt in stream.iter_mut() { +- tt.set_span(span); +- } +- let group = Group::new(Delimiter::Bracket, stream.into_iter().collect()); +- trees.push(crate::Group::_new_stable(group).into()); +- for tt in trees.iter_mut() { +- tt.set_span(span); +- } +- Ok((rest, trees)) +-} +- +-named!(doc_comment_contents -> (&str, bool), alt!( +- do_parse!( +- punct!("//!") >> +- s: take_until_newline_or_eof!() >> +- ((s, true)) +- ) +- | +- do_parse!( +- option!(whitespace) >> +- peek!(tag!("/*!")) >> +- s: block_comment >> +- ((s, true)) +- ) +- | +- do_parse!( +- punct!("///") >> +- not!(tag!("/")) >> +- s: take_until_newline_or_eof!() >> +- ((s, false)) +- ) +- | +- do_parse!( +- option!(whitespace) >> +- peek!(tuple!(tag!("/**"), not!(tag!("*")))) >> +- s: block_comment >> +- ((s, false)) +- ) +-)); +diff --git a/third_party/rust/proc-macro2/src/lib.rs b/third_party/rust/proc-macro2/src/lib.rs +index a08be3e..bd20638 100644 +--- a/third_party/rust/proc-macro2/src/lib.rs ++++ b/third_party/rust/proc-macro2/src/lib.rs +@@ -78,15 +78,16 @@ + //! a different thread. + + // Proc-macro2 types in rustdoc of other crates get linked to here. +-#![doc(html_root_url = "https://docs.rs/proc-macro2/1.0.5")] ++#![doc(html_root_url = "https://docs.rs/proc-macro2/1.0.20")] + #![cfg_attr(any(proc_macro_span, super_unstable), feature(proc_macro_span))] + #![cfg_attr(super_unstable, feature(proc_macro_raw_ident, proc_macro_def_site))] ++#![allow(clippy::needless_doctest_main)] + + #[cfg(use_proc_macro)] + extern crate proc_macro; + + use std::cmp::Ordering; +-use std::fmt; ++use std::fmt::{self, Debug, Display}; + use std::hash::{Hash, Hasher}; + use std::iter::FromIterator; + use std::marker; +@@ -96,9 +97,15 @@ use std::path::PathBuf; + use std::rc::Rc; + use std::str::FromStr; + +-#[macro_use] +-mod strnom; +-mod fallback; ++mod parse; ++ ++#[cfg(wrap_proc_macro)] ++mod detection; ++ ++// Public for proc_macro2::fallback::force() and unforce(), but those are quite ++// a niche use case so we omit it from rustdoc. ++#[doc(hidden)] ++pub mod fallback; + + #[cfg(not(wrap_proc_macro))] + use crate::fallback as imp; +@@ -228,22 +235,22 @@ impl FromIterator for TokenStream { + /// convertible back into the same token stream (modulo spans), except for + /// possibly `TokenTree::Group`s with `Delimiter::None` delimiters and negative + /// numeric literals. +-impl fmt::Display for TokenStream { ++impl Display for TokenStream { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Display::fmt(&self.inner, f) + } + } + + /// Prints token in a form convenient for debugging. +-impl fmt::Debug for TokenStream { ++impl Debug for TokenStream { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +-impl fmt::Debug for LexError { ++impl Debug for LexError { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +@@ -291,9 +298,9 @@ impl SourceFile { + } + + #[cfg(procmacro2_semver_exempt)] +-impl fmt::Debug for SourceFile { ++impl Debug for SourceFile { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +@@ -311,6 +318,22 @@ pub struct LineColumn { + pub column: usize, + } + ++#[cfg(span_locations)] ++impl Ord for LineColumn { ++ fn cmp(&self, other: &Self) -> Ordering { ++ self.line ++ .cmp(&other.line) ++ .then(self.column.cmp(&other.column)) ++ } ++} ++ ++#[cfg(span_locations)] ++impl PartialOrd for LineColumn { ++ fn partial_cmp(&self, other: &Self) -> Option { ++ Some(self.cmp(other)) ++ } ++} ++ + /// A region of source code, along with macro expansion information. + #[derive(Copy, Clone)] + pub struct Span { +@@ -342,6 +365,16 @@ impl Span { + Span::_new(imp::Span::call_site()) + } + ++ /// The span located at the invocation of the procedural macro, but with ++ /// local variables, labels, and `$crate` resolved at the definition site ++ /// of the macro. This is the same hygiene behavior as `macro_rules`. ++ /// ++ /// This function requires Rust 1.45 or later. ++ #[cfg(hygiene)] ++ pub fn mixed_site() -> Span { ++ Span::_new(imp::Span::mixed_site()) ++ } ++ + /// A span that resolves at the macro definition site. + /// + /// This method is semver exempt and not exposed by default. +@@ -352,18 +385,12 @@ impl Span { + + /// Creates a new span with the same line/column information as `self` but + /// that resolves symbols as though it were at `other`. +- /// +- /// This method is semver exempt and not exposed by default. +- #[cfg(procmacro2_semver_exempt)] + pub fn resolved_at(&self, other: Span) -> Span { + Span::_new(self.inner.resolved_at(other.inner)) + } + + /// Creates a new span with the same name resolution behavior as `self` but + /// with the line/column information of `other`. +- /// +- /// This method is semver exempt and not exposed by default. +- #[cfg(procmacro2_semver_exempt)] + pub fn located_at(&self, other: Span) -> Span { + Span::_new(self.inner.located_at(other.inner)) + } +@@ -439,9 +466,9 @@ impl Span { + } + + /// Prints a span in a form convenient for debugging. +-impl fmt::Debug for Span { ++impl Debug for Span { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +@@ -462,11 +489,11 @@ impl TokenTree { + /// Returns the span of this tree, delegating to the `span` method of + /// the contained token or a delimited stream. + pub fn span(&self) -> Span { +- match *self { +- TokenTree::Group(ref t) => t.span(), +- TokenTree::Ident(ref t) => t.span(), +- TokenTree::Punct(ref t) => t.span(), +- TokenTree::Literal(ref t) => t.span(), ++ match self { ++ TokenTree::Group(t) => t.span(), ++ TokenTree::Ident(t) => t.span(), ++ TokenTree::Punct(t) => t.span(), ++ TokenTree::Literal(t) => t.span(), + } + } + +@@ -476,11 +503,11 @@ impl TokenTree { + /// the span of each of the internal tokens, this will simply delegate to + /// the `set_span` method of each variant. + pub fn set_span(&mut self, span: Span) { +- match *self { +- TokenTree::Group(ref mut t) => t.set_span(span), +- TokenTree::Ident(ref mut t) => t.set_span(span), +- TokenTree::Punct(ref mut t) => t.set_span(span), +- TokenTree::Literal(ref mut t) => t.set_span(span), ++ match self { ++ TokenTree::Group(t) => t.set_span(span), ++ TokenTree::Ident(t) => t.set_span(span), ++ TokenTree::Punct(t) => t.set_span(span), ++ TokenTree::Literal(t) => t.set_span(span), + } + } + } +@@ -513,32 +540,32 @@ impl From for TokenTree { + /// convertible back into the same token tree (modulo spans), except for + /// possibly `TokenTree::Group`s with `Delimiter::None` delimiters and negative + /// numeric literals. +-impl fmt::Display for TokenTree { ++impl Display for TokenTree { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- match *self { +- TokenTree::Group(ref t) => t.fmt(f), +- TokenTree::Ident(ref t) => t.fmt(f), +- TokenTree::Punct(ref t) => t.fmt(f), +- TokenTree::Literal(ref t) => t.fmt(f), ++ match self { ++ TokenTree::Group(t) => Display::fmt(t, f), ++ TokenTree::Ident(t) => Display::fmt(t, f), ++ TokenTree::Punct(t) => Display::fmt(t, f), ++ TokenTree::Literal(t) => Display::fmt(t, f), + } + } + } + + /// Prints token tree in a form convenient for debugging. +-impl fmt::Debug for TokenTree { ++impl Debug for TokenTree { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + // Each of these has the name in the struct type in the derived debug, + // so don't bother with an extra layer of indirection +- match *self { +- TokenTree::Group(ref t) => t.fmt(f), +- TokenTree::Ident(ref t) => { ++ match self { ++ TokenTree::Group(t) => Debug::fmt(t, f), ++ TokenTree::Ident(t) => { + let mut debug = f.debug_struct("Ident"); + debug.field("sym", &format_args!("{}", t)); + imp::debug_span_field_if_nontrivial(&mut debug, t.span().inner); + debug.finish() + } +- TokenTree::Punct(ref t) => t.fmt(f), +- TokenTree::Literal(ref t) => t.fmt(f), ++ TokenTree::Punct(t) => Debug::fmt(t, f), ++ TokenTree::Literal(t) => Debug::fmt(t, f), + } + } + } +@@ -651,15 +678,15 @@ impl Group { + /// Prints the group as a string that should be losslessly convertible back + /// into the same group (modulo spans), except for possibly `TokenTree::Group`s + /// with `Delimiter::None` delimiters. +-impl fmt::Display for Group { ++impl Display for Group { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { +- fmt::Display::fmt(&self.inner, formatter) ++ Display::fmt(&self.inner, formatter) + } + } + +-impl fmt::Debug for Group { ++impl Debug for Group { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { +- fmt::Debug::fmt(&self.inner, formatter) ++ Debug::fmt(&self.inner, formatter) + } + } + +@@ -730,13 +757,13 @@ impl Punct { + + /// Prints the punctuation character as a string that should be losslessly + /// convertible back into the same character. +-impl fmt::Display for Punct { ++impl Display for Punct { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.op.fmt(f) ++ Display::fmt(&self.op, f) + } + } + +-impl fmt::Debug for Punct { ++impl Debug for Punct { + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + let mut debug = fmt.debug_struct("Punct"); + debug.field("op", &self.op); +@@ -920,15 +947,15 @@ impl Hash for Ident { + + /// Prints the identifier as a string that should be losslessly convertible back + /// into the same identifier. +-impl fmt::Display for Ident { ++impl Display for Ident { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Display::fmt(&self.inner, f) + } + } + +-impl fmt::Debug for Ident { ++impl Debug for Ident { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +@@ -1140,26 +1167,26 @@ impl Literal { + } + } + +-impl fmt::Debug for Literal { ++impl Debug for Literal { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +-impl fmt::Display for Literal { ++impl Display for Literal { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Display::fmt(&self.inner, f) + } + } + + /// Public implementation details for the `TokenStream` type, such as iterators. + pub mod token_stream { +- use std::fmt; ++ use crate::{imp, TokenTree}; ++ use std::fmt::{self, Debug}; + use std::marker; + use std::rc::Rc; + + pub use crate::TokenStream; +- use crate::{imp, TokenTree}; + + /// An iterator over `TokenStream`'s `TokenTree`s. + /// +@@ -1179,9 +1206,9 @@ pub mod token_stream { + } + } + +- impl fmt::Debug for IntoIter { ++ impl Debug for IntoIter { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { +- self.inner.fmt(f) ++ Debug::fmt(&self.inner, f) + } + } + +diff --git a/third_party/rust/proc-macro2/src/parse.rs b/third_party/rust/proc-macro2/src/parse.rs +new file mode 100644 +index 0000000..f4f8a47 +--- /dev/null ++++ b/third_party/rust/proc-macro2/src/parse.rs +@@ -0,0 +1,791 @@ ++use crate::fallback::{ ++ is_ident_continue, is_ident_start, Group, LexError, Literal, Span, TokenStream, ++}; ++use crate::{Delimiter, Punct, Spacing, TokenTree}; ++use std::str::{Bytes, CharIndices, Chars}; ++use unicode_xid::UnicodeXID; ++ ++#[derive(Copy, Clone, Eq, PartialEq)] ++pub(crate) struct Cursor<'a> { ++ pub rest: &'a str, ++ #[cfg(span_locations)] ++ pub off: u32, ++} ++ ++impl<'a> Cursor<'a> { ++ fn advance(&self, bytes: usize) -> Cursor<'a> { ++ let (_front, rest) = self.rest.split_at(bytes); ++ Cursor { ++ rest, ++ #[cfg(span_locations)] ++ off: self.off + _front.chars().count() as u32, ++ } ++ } ++ ++ fn starts_with(&self, s: &str) -> bool { ++ self.rest.starts_with(s) ++ } ++ ++ pub(crate) fn is_empty(&self) -> bool { ++ self.rest.is_empty() ++ } ++ ++ fn len(&self) -> usize { ++ self.rest.len() ++ } ++ ++ fn as_bytes(&self) -> &'a [u8] { ++ self.rest.as_bytes() ++ } ++ ++ fn bytes(&self) -> Bytes<'a> { ++ self.rest.bytes() ++ } ++ ++ fn chars(&self) -> Chars<'a> { ++ self.rest.chars() ++ } ++ ++ fn char_indices(&self) -> CharIndices<'a> { ++ self.rest.char_indices() ++ } ++ ++ fn parse(&self, tag: &str) -> Result, LexError> { ++ if self.starts_with(tag) { ++ Ok(self.advance(tag.len())) ++ } else { ++ Err(LexError) ++ } ++ } ++} ++ ++type PResult<'a, O> = Result<(Cursor<'a>, O), LexError>; ++ ++fn skip_whitespace(input: Cursor) -> Cursor { ++ let mut s = input; ++ ++ while !s.is_empty() { ++ let byte = s.as_bytes()[0]; ++ if byte == b'/' { ++ if s.starts_with("//") ++ && (!s.starts_with("///") || s.starts_with("////")) ++ && !s.starts_with("//!") ++ { ++ let (cursor, _) = take_until_newline_or_eof(s); ++ s = cursor; ++ continue; ++ } else if s.starts_with("/**/") { ++ s = s.advance(4); ++ continue; ++ } else if s.starts_with("/*") ++ && (!s.starts_with("/**") || s.starts_with("/***")) ++ && !s.starts_with("/*!") ++ { ++ match block_comment(s) { ++ Ok((rest, _)) => { ++ s = rest; ++ continue; ++ } ++ Err(LexError) => return s, ++ } ++ } ++ } ++ match byte { ++ b' ' | 0x09..=0x0d => { ++ s = s.advance(1); ++ continue; ++ } ++ b if b <= 0x7f => {} ++ _ => { ++ let ch = s.chars().next().unwrap(); ++ if is_whitespace(ch) { ++ s = s.advance(ch.len_utf8()); ++ continue; ++ } ++ } ++ } ++ return s; ++ } ++ s ++} ++ ++fn block_comment(input: Cursor) -> PResult<&str> { ++ if !input.starts_with("/*") { ++ return Err(LexError); ++ } ++ ++ let mut depth = 0; ++ let bytes = input.as_bytes(); ++ let mut i = 0; ++ let upper = bytes.len() - 1; ++ ++ while i < upper { ++ if bytes[i] == b'/' && bytes[i + 1] == b'*' { ++ depth += 1; ++ i += 1; // eat '*' ++ } else if bytes[i] == b'*' && bytes[i + 1] == b'/' { ++ depth -= 1; ++ if depth == 0 { ++ return Ok((input.advance(i + 2), &input.rest[..i + 2])); ++ } ++ i += 1; // eat '/' ++ } ++ i += 1; ++ } ++ ++ Err(LexError) ++} ++ ++fn is_whitespace(ch: char) -> bool { ++ // Rust treats left-to-right mark and right-to-left mark as whitespace ++ ch.is_whitespace() || ch == '\u{200e}' || ch == '\u{200f}' ++} ++ ++fn word_break(input: Cursor) -> Result { ++ match input.chars().next() { ++ Some(ch) if UnicodeXID::is_xid_continue(ch) => Err(LexError), ++ Some(_) | None => Ok(input), ++ } ++} ++ ++pub(crate) fn token_stream(mut input: Cursor) -> PResult { ++ let mut trees = Vec::new(); ++ let mut stack = Vec::new(); ++ ++ loop { ++ input = skip_whitespace(input); ++ ++ if let Ok((rest, tt)) = doc_comment(input) { ++ trees.extend(tt); ++ input = rest; ++ continue; ++ } ++ ++ #[cfg(span_locations)] ++ let lo = input.off; ++ ++ let first = match input.bytes().next() { ++ Some(first) => first, ++ None => break, ++ }; ++ ++ if let Some(open_delimiter) = match first { ++ b'(' => Some(Delimiter::Parenthesis), ++ b'[' => Some(Delimiter::Bracket), ++ b'{' => Some(Delimiter::Brace), ++ _ => None, ++ } { ++ input = input.advance(1); ++ let frame = (open_delimiter, trees); ++ #[cfg(span_locations)] ++ let frame = (lo, frame); ++ stack.push(frame); ++ trees = Vec::new(); ++ } else if let Some(close_delimiter) = match first { ++ b')' => Some(Delimiter::Parenthesis), ++ b']' => Some(Delimiter::Bracket), ++ b'}' => Some(Delimiter::Brace), ++ _ => None, ++ } { ++ input = input.advance(1); ++ let frame = stack.pop().ok_or(LexError)?; ++ #[cfg(span_locations)] ++ let (lo, frame) = frame; ++ let (open_delimiter, outer) = frame; ++ if open_delimiter != close_delimiter { ++ return Err(LexError); ++ } ++ let mut g = Group::new(open_delimiter, TokenStream { inner: trees }); ++ g.set_span(Span { ++ #[cfg(span_locations)] ++ lo, ++ #[cfg(span_locations)] ++ hi: input.off, ++ }); ++ trees = outer; ++ trees.push(TokenTree::Group(crate::Group::_new_stable(g))); ++ } else { ++ let (rest, mut tt) = leaf_token(input)?; ++ tt.set_span(crate::Span::_new_stable(Span { ++ #[cfg(span_locations)] ++ lo, ++ #[cfg(span_locations)] ++ hi: rest.off, ++ })); ++ trees.push(tt); ++ input = rest; ++ } ++ } ++ ++ if stack.is_empty() { ++ Ok((input, TokenStream { inner: trees })) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn leaf_token(input: Cursor) -> PResult { ++ if let Ok((input, l)) = literal(input) { ++ // must be parsed before ident ++ Ok((input, TokenTree::Literal(crate::Literal::_new_stable(l)))) ++ } else if let Ok((input, p)) = op(input) { ++ Ok((input, TokenTree::Punct(p))) ++ } else if let Ok((input, i)) = ident(input) { ++ Ok((input, TokenTree::Ident(i))) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn ident(input: Cursor) -> PResult { ++ let raw = input.starts_with("r#"); ++ let rest = input.advance((raw as usize) << 1); ++ ++ let (rest, sym) = ident_not_raw(rest)?; ++ ++ if !raw { ++ let ident = crate::Ident::new(sym, crate::Span::call_site()); ++ return Ok((rest, ident)); ++ } ++ ++ if sym == "_" { ++ return Err(LexError); ++ } ++ ++ let ident = crate::Ident::_new_raw(sym, crate::Span::call_site()); ++ Ok((rest, ident)) ++} ++ ++fn ident_not_raw(input: Cursor) -> PResult<&str> { ++ let mut chars = input.char_indices(); ++ ++ match chars.next() { ++ Some((_, ch)) if is_ident_start(ch) => {} ++ _ => return Err(LexError), ++ } ++ ++ let mut end = input.len(); ++ for (i, ch) in chars { ++ if !is_ident_continue(ch) { ++ end = i; ++ break; ++ } ++ } ++ ++ Ok((input.advance(end), &input.rest[..end])) ++} ++ ++fn literal(input: Cursor) -> PResult { ++ match literal_nocapture(input) { ++ Ok(a) => { ++ let end = input.len() - a.len(); ++ Ok((a, Literal::_new(input.rest[..end].to_string()))) ++ } ++ Err(LexError) => Err(LexError), ++ } ++} ++ ++fn literal_nocapture(input: Cursor) -> Result { ++ if let Ok(ok) = string(input) { ++ Ok(ok) ++ } else if let Ok(ok) = byte_string(input) { ++ Ok(ok) ++ } else if let Ok(ok) = byte(input) { ++ Ok(ok) ++ } else if let Ok(ok) = character(input) { ++ Ok(ok) ++ } else if let Ok(ok) = float(input) { ++ Ok(ok) ++ } else if let Ok(ok) = int(input) { ++ Ok(ok) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn literal_suffix(input: Cursor) -> Cursor { ++ match ident_not_raw(input) { ++ Ok((input, _)) => input, ++ Err(LexError) => input, ++ } ++} ++ ++fn string(input: Cursor) -> Result { ++ if let Ok(input) = input.parse("\"") { ++ cooked_string(input) ++ } else if let Ok(input) = input.parse("r") { ++ raw_string(input) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn cooked_string(input: Cursor) -> Result { ++ let mut chars = input.char_indices().peekable(); ++ ++ while let Some((i, ch)) = chars.next() { ++ match ch { ++ '"' => { ++ let input = input.advance(i + 1); ++ return Ok(literal_suffix(input)); ++ } ++ '\r' => { ++ if let Some((_, '\n')) = chars.next() { ++ // ... ++ } else { ++ break; ++ } ++ } ++ '\\' => match chars.next() { ++ Some((_, 'x')) => { ++ if !backslash_x_char(&mut chars) { ++ break; ++ } ++ } ++ Some((_, 'n')) | Some((_, 'r')) | Some((_, 't')) | Some((_, '\\')) ++ | Some((_, '\'')) | Some((_, '"')) | Some((_, '0')) => {} ++ Some((_, 'u')) => { ++ if !backslash_u(&mut chars) { ++ break; ++ } ++ } ++ Some((_, '\n')) | Some((_, '\r')) => { ++ while let Some(&(_, ch)) = chars.peek() { ++ if ch.is_whitespace() { ++ chars.next(); ++ } else { ++ break; ++ } ++ } ++ } ++ _ => break, ++ }, ++ _ch => {} ++ } ++ } ++ Err(LexError) ++} ++ ++fn byte_string(input: Cursor) -> Result { ++ if let Ok(input) = input.parse("b\"") { ++ cooked_byte_string(input) ++ } else if let Ok(input) = input.parse("br") { ++ raw_string(input) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn cooked_byte_string(mut input: Cursor) -> Result { ++ let mut bytes = input.bytes().enumerate(); ++ 'outer: while let Some((offset, b)) = bytes.next() { ++ match b { ++ b'"' => { ++ let input = input.advance(offset + 1); ++ return Ok(literal_suffix(input)); ++ } ++ b'\r' => { ++ if let Some((_, b'\n')) = bytes.next() { ++ // ... ++ } else { ++ break; ++ } ++ } ++ b'\\' => match bytes.next() { ++ Some((_, b'x')) => { ++ if !backslash_x_byte(&mut bytes) { ++ break; ++ } ++ } ++ Some((_, b'n')) | Some((_, b'r')) | Some((_, b't')) | Some((_, b'\\')) ++ | Some((_, b'0')) | Some((_, b'\'')) | Some((_, b'"')) => {} ++ Some((newline, b'\n')) | Some((newline, b'\r')) => { ++ let rest = input.advance(newline + 1); ++ for (offset, ch) in rest.char_indices() { ++ if !ch.is_whitespace() { ++ input = rest.advance(offset); ++ bytes = input.bytes().enumerate(); ++ continue 'outer; ++ } ++ } ++ break; ++ } ++ _ => break, ++ }, ++ b if b < 0x80 => {} ++ _ => break, ++ } ++ } ++ Err(LexError) ++} ++ ++fn raw_string(input: Cursor) -> Result { ++ let mut chars = input.char_indices(); ++ let mut n = 0; ++ while let Some((i, ch)) = chars.next() { ++ match ch { ++ '"' => { ++ n = i; ++ break; ++ } ++ '#' => {} ++ _ => return Err(LexError), ++ } ++ } ++ for (i, ch) in chars { ++ match ch { ++ '"' if input.rest[i + 1..].starts_with(&input.rest[..n]) => { ++ let rest = input.advance(i + 1 + n); ++ return Ok(literal_suffix(rest)); ++ } ++ '\r' => {} ++ _ => {} ++ } ++ } ++ Err(LexError) ++} ++ ++fn byte(input: Cursor) -> Result { ++ let input = input.parse("b'")?; ++ let mut bytes = input.bytes().enumerate(); ++ let ok = match bytes.next().map(|(_, b)| b) { ++ Some(b'\\') => match bytes.next().map(|(_, b)| b) { ++ Some(b'x') => backslash_x_byte(&mut bytes), ++ Some(b'n') | Some(b'r') | Some(b't') | Some(b'\\') | Some(b'0') | Some(b'\'') ++ | Some(b'"') => true, ++ _ => false, ++ }, ++ b => b.is_some(), ++ }; ++ if !ok { ++ return Err(LexError); ++ } ++ let (offset, _) = bytes.next().ok_or(LexError)?; ++ if !input.chars().as_str().is_char_boundary(offset) { ++ return Err(LexError); ++ } ++ let input = input.advance(offset).parse("'")?; ++ Ok(literal_suffix(input)) ++} ++ ++fn character(input: Cursor) -> Result { ++ let input = input.parse("'")?; ++ let mut chars = input.char_indices(); ++ let ok = match chars.next().map(|(_, ch)| ch) { ++ Some('\\') => match chars.next().map(|(_, ch)| ch) { ++ Some('x') => backslash_x_char(&mut chars), ++ Some('u') => backslash_u(&mut chars), ++ Some('n') | Some('r') | Some('t') | Some('\\') | Some('0') | Some('\'') | Some('"') => { ++ true ++ } ++ _ => false, ++ }, ++ ch => ch.is_some(), ++ }; ++ if !ok { ++ return Err(LexError); ++ } ++ let (idx, _) = chars.next().ok_or(LexError)?; ++ let input = input.advance(idx).parse("'")?; ++ Ok(literal_suffix(input)) ++} ++ ++macro_rules! next_ch { ++ ($chars:ident @ $pat:pat $(| $rest:pat)*) => { ++ match $chars.next() { ++ Some((_, ch)) => match ch { ++ $pat $(| $rest)* => ch, ++ _ => return false, ++ }, ++ None => return false, ++ } ++ }; ++} ++ ++fn backslash_x_char(chars: &mut I) -> bool ++where ++ I: Iterator, ++{ ++ next_ch!(chars @ '0'..='7'); ++ next_ch!(chars @ '0'..='9' | 'a'..='f' | 'A'..='F'); ++ true ++} ++ ++fn backslash_x_byte(chars: &mut I) -> bool ++where ++ I: Iterator, ++{ ++ next_ch!(chars @ b'0'..=b'9' | b'a'..=b'f' | b'A'..=b'F'); ++ next_ch!(chars @ b'0'..=b'9' | b'a'..=b'f' | b'A'..=b'F'); ++ true ++} ++ ++fn backslash_u(chars: &mut I) -> bool ++where ++ I: Iterator, ++{ ++ next_ch!(chars @ '{'); ++ next_ch!(chars @ '0'..='9' | 'a'..='f' | 'A'..='F'); ++ loop { ++ let c = next_ch!(chars @ '0'..='9' | 'a'..='f' | 'A'..='F' | '_' | '}'); ++ if c == '}' { ++ return true; ++ } ++ } ++} ++ ++fn float(input: Cursor) -> Result { ++ let mut rest = float_digits(input)?; ++ if let Some(ch) = rest.chars().next() { ++ if is_ident_start(ch) { ++ rest = ident_not_raw(rest)?.0; ++ } ++ } ++ word_break(rest) ++} ++ ++fn float_digits(input: Cursor) -> Result { ++ let mut chars = input.chars().peekable(); ++ match chars.next() { ++ Some(ch) if ch >= '0' && ch <= '9' => {} ++ _ => return Err(LexError), ++ } ++ ++ let mut len = 1; ++ let mut has_dot = false; ++ let mut has_exp = false; ++ while let Some(&ch) = chars.peek() { ++ match ch { ++ '0'..='9' | '_' => { ++ chars.next(); ++ len += 1; ++ } ++ '.' => { ++ if has_dot { ++ break; ++ } ++ chars.next(); ++ if chars ++ .peek() ++ .map(|&ch| ch == '.' || is_ident_start(ch)) ++ .unwrap_or(false) ++ { ++ return Err(LexError); ++ } ++ len += 1; ++ has_dot = true; ++ } ++ 'e' | 'E' => { ++ chars.next(); ++ len += 1; ++ has_exp = true; ++ break; ++ } ++ _ => break, ++ } ++ } ++ ++ let rest = input.advance(len); ++ if !(has_dot || has_exp || rest.starts_with("f32") || rest.starts_with("f64")) { ++ return Err(LexError); ++ } ++ ++ if has_exp { ++ let mut has_exp_value = false; ++ while let Some(&ch) = chars.peek() { ++ match ch { ++ '+' | '-' => { ++ if has_exp_value { ++ break; ++ } ++ chars.next(); ++ len += 1; ++ } ++ '0'..='9' => { ++ chars.next(); ++ len += 1; ++ has_exp_value = true; ++ } ++ '_' => { ++ chars.next(); ++ len += 1; ++ } ++ _ => break, ++ } ++ } ++ if !has_exp_value { ++ return Err(LexError); ++ } ++ } ++ ++ Ok(input.advance(len)) ++} ++ ++fn int(input: Cursor) -> Result { ++ let mut rest = digits(input)?; ++ if let Some(ch) = rest.chars().next() { ++ if is_ident_start(ch) { ++ rest = ident_not_raw(rest)?.0; ++ } ++ } ++ word_break(rest) ++} ++ ++fn digits(mut input: Cursor) -> Result { ++ let base = if input.starts_with("0x") { ++ input = input.advance(2); ++ 16 ++ } else if input.starts_with("0o") { ++ input = input.advance(2); ++ 8 ++ } else if input.starts_with("0b") { ++ input = input.advance(2); ++ 2 ++ } else { ++ 10 ++ }; ++ ++ let mut len = 0; ++ let mut empty = true; ++ for b in input.bytes() { ++ let digit = match b { ++ b'0'..=b'9' => (b - b'0') as u64, ++ b'a'..=b'f' => 10 + (b - b'a') as u64, ++ b'A'..=b'F' => 10 + (b - b'A') as u64, ++ b'_' => { ++ if empty && base == 10 { ++ return Err(LexError); ++ } ++ len += 1; ++ continue; ++ } ++ _ => break, ++ }; ++ if digit >= base { ++ return Err(LexError); ++ } ++ len += 1; ++ empty = false; ++ } ++ if empty { ++ Err(LexError) ++ } else { ++ Ok(input.advance(len)) ++ } ++} ++ ++fn op(input: Cursor) -> PResult { ++ match op_char(input) { ++ Ok((rest, '\'')) => { ++ ident(rest)?; ++ Ok((rest, Punct::new('\'', Spacing::Joint))) ++ } ++ Ok((rest, ch)) => { ++ let kind = match op_char(rest) { ++ Ok(_) => Spacing::Joint, ++ Err(LexError) => Spacing::Alone, ++ }; ++ Ok((rest, Punct::new(ch, kind))) ++ } ++ Err(LexError) => Err(LexError), ++ } ++} ++ ++fn op_char(input: Cursor) -> PResult { ++ if input.starts_with("//") || input.starts_with("/*") { ++ // Do not accept `/` of a comment as an op. ++ return Err(LexError); ++ } ++ ++ let mut chars = input.chars(); ++ let first = match chars.next() { ++ Some(ch) => ch, ++ None => { ++ return Err(LexError); ++ } ++ }; ++ let recognized = "~!@#$%^&*-=+|;:,<.>/?'"; ++ if recognized.contains(first) { ++ Ok((input.advance(first.len_utf8()), first)) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn doc_comment(input: Cursor) -> PResult> { ++ #[cfg(span_locations)] ++ let lo = input.off; ++ let (rest, (comment, inner)) = doc_comment_contents(input)?; ++ let span = crate::Span::_new_stable(Span { ++ #[cfg(span_locations)] ++ lo, ++ #[cfg(span_locations)] ++ hi: rest.off, ++ }); ++ ++ let mut scan_for_bare_cr = comment; ++ while let Some(cr) = scan_for_bare_cr.find('\r') { ++ let rest = &scan_for_bare_cr[cr + 1..]; ++ if !rest.starts_with('\n') { ++ return Err(LexError); ++ } ++ scan_for_bare_cr = rest; ++ } ++ ++ let mut trees = Vec::new(); ++ trees.push(TokenTree::Punct(Punct::new('#', Spacing::Alone))); ++ if inner { ++ trees.push(Punct::new('!', Spacing::Alone).into()); ++ } ++ let mut stream = vec![ ++ TokenTree::Ident(crate::Ident::new("doc", span)), ++ TokenTree::Punct(Punct::new('=', Spacing::Alone)), ++ TokenTree::Literal(crate::Literal::string(comment)), ++ ]; ++ for tt in stream.iter_mut() { ++ tt.set_span(span); ++ } ++ let group = Group::new(Delimiter::Bracket, stream.into_iter().collect()); ++ trees.push(crate::Group::_new_stable(group).into()); ++ for tt in trees.iter_mut() { ++ tt.set_span(span); ++ } ++ Ok((rest, trees)) ++} ++ ++fn doc_comment_contents(input: Cursor) -> PResult<(&str, bool)> { ++ if input.starts_with("//!") { ++ let input = input.advance(3); ++ let (input, s) = take_until_newline_or_eof(input); ++ Ok((input, (s, true))) ++ } else if input.starts_with("/*!") { ++ let (input, s) = block_comment(input)?; ++ Ok((input, (&s[3..s.len() - 2], true))) ++ } else if input.starts_with("///") { ++ let input = input.advance(3); ++ if input.starts_with("/") { ++ return Err(LexError); ++ } ++ let (input, s) = take_until_newline_or_eof(input); ++ Ok((input, (s, false))) ++ } else if input.starts_with("/**") && !input.rest[3..].starts_with('*') { ++ let (input, s) = block_comment(input)?; ++ Ok((input, (&s[3..s.len() - 2], false))) ++ } else { ++ Err(LexError) ++ } ++} ++ ++fn take_until_newline_or_eof(input: Cursor) -> (Cursor, &str) { ++ let chars = input.char_indices(); ++ ++ for (i, ch) in chars { ++ if ch == '\n' { ++ return (input.advance(i), &input.rest[..i]); ++ } else if ch == '\r' && input.rest[i + 1..].starts_with('\n') { ++ return (input.advance(i + 1), &input.rest[..i]); ++ } ++ } ++ ++ (input.advance(input.len()), input.rest) ++} +diff --git a/third_party/rust/proc-macro2/src/strnom.rs b/third_party/rust/proc-macro2/src/strnom.rs +deleted file mode 100644 +index eb7d0b8..0000000 +--- a/third_party/rust/proc-macro2/src/strnom.rs ++++ /dev/null +@@ -1,391 +0,0 @@ +-//! Adapted from [`nom`](https://github.com/Geal/nom). +- +-use crate::fallback::LexError; +-use std::str::{Bytes, CharIndices, Chars}; +-use unicode_xid::UnicodeXID; +- +-#[derive(Copy, Clone, Eq, PartialEq)] +-pub struct Cursor<'a> { +- pub rest: &'a str, +- #[cfg(span_locations)] +- pub off: u32, +-} +- +-impl<'a> Cursor<'a> { +- #[cfg(not(span_locations))] +- pub fn advance(&self, amt: usize) -> Cursor<'a> { +- Cursor { +- rest: &self.rest[amt..], +- } +- } +- #[cfg(span_locations)] +- pub fn advance(&self, amt: usize) -> Cursor<'a> { +- Cursor { +- rest: &self.rest[amt..], +- off: self.off + (amt as u32), +- } +- } +- +- pub fn find(&self, p: char) -> Option { +- self.rest.find(p) +- } +- +- pub fn starts_with(&self, s: &str) -> bool { +- self.rest.starts_with(s) +- } +- +- pub fn is_empty(&self) -> bool { +- self.rest.is_empty() +- } +- +- pub fn len(&self) -> usize { +- self.rest.len() +- } +- +- pub fn as_bytes(&self) -> &'a [u8] { +- self.rest.as_bytes() +- } +- +- pub fn bytes(&self) -> Bytes<'a> { +- self.rest.bytes() +- } +- +- pub fn chars(&self) -> Chars<'a> { +- self.rest.chars() +- } +- +- pub fn char_indices(&self) -> CharIndices<'a> { +- self.rest.char_indices() +- } +-} +- +-pub type PResult<'a, O> = Result<(Cursor<'a>, O), LexError>; +- +-pub fn whitespace(input: Cursor) -> PResult<()> { +- if input.is_empty() { +- return Err(LexError); +- } +- +- let bytes = input.as_bytes(); +- let mut i = 0; +- while i < bytes.len() { +- let s = input.advance(i); +- if bytes[i] == b'/' { +- if s.starts_with("//") +- && (!s.starts_with("///") || s.starts_with("////")) +- && !s.starts_with("//!") +- { +- if let Some(len) = s.find('\n') { +- i += len + 1; +- continue; +- } +- break; +- } else if s.starts_with("/**/") { +- i += 4; +- continue; +- } else if s.starts_with("/*") +- && (!s.starts_with("/**") || s.starts_with("/***")) +- && !s.starts_with("/*!") +- { +- let (_, com) = block_comment(s)?; +- i += com.len(); +- continue; +- } +- } +- match bytes[i] { +- b' ' | 0x09..=0x0d => { +- i += 1; +- continue; +- } +- b if b <= 0x7f => {} +- _ => { +- let ch = s.chars().next().unwrap(); +- if is_whitespace(ch) { +- i += ch.len_utf8(); +- continue; +- } +- } +- } +- return if i > 0 { Ok((s, ())) } else { Err(LexError) }; +- } +- Ok((input.advance(input.len()), ())) +-} +- +-pub fn block_comment(input: Cursor) -> PResult<&str> { +- if !input.starts_with("/*") { +- return Err(LexError); +- } +- +- let mut depth = 0; +- let bytes = input.as_bytes(); +- let mut i = 0; +- let upper = bytes.len() - 1; +- while i < upper { +- if bytes[i] == b'/' && bytes[i + 1] == b'*' { +- depth += 1; +- i += 1; // eat '*' +- } else if bytes[i] == b'*' && bytes[i + 1] == b'/' { +- depth -= 1; +- if depth == 0 { +- return Ok((input.advance(i + 2), &input.rest[..i + 2])); +- } +- i += 1; // eat '/' +- } +- i += 1; +- } +- Err(LexError) +-} +- +-pub fn skip_whitespace(input: Cursor) -> Cursor { +- match whitespace(input) { +- Ok((rest, _)) => rest, +- Err(LexError) => input, +- } +-} +- +-fn is_whitespace(ch: char) -> bool { +- // Rust treats left-to-right mark and right-to-left mark as whitespace +- ch.is_whitespace() || ch == '\u{200e}' || ch == '\u{200f}' +-} +- +-pub fn word_break(input: Cursor) -> PResult<()> { +- match input.chars().next() { +- Some(ch) if UnicodeXID::is_xid_continue(ch) => Err(LexError), +- Some(_) | None => Ok((input, ())), +- } +-} +- +-macro_rules! named { +- ($name:ident -> $o:ty, $submac:ident!( $($args:tt)* )) => { +- fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { +- $submac!(i, $($args)*) +- } +- }; +-} +- +-macro_rules! alt { +- ($i:expr, $e:ident | $($rest:tt)*) => { +- alt!($i, call!($e) | $($rest)*) +- }; +- +- ($i:expr, $subrule:ident!( $($args:tt)*) | $($rest:tt)*) => { +- match $subrule!($i, $($args)*) { +- res @ Ok(_) => res, +- _ => alt!($i, $($rest)*) +- } +- }; +- +- ($i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr } | $($rest:tt)+) => { +- match $subrule!($i, $($args)*) { +- Ok((i, o)) => Ok((i, $gen(o))), +- Err(LexError) => alt!($i, $($rest)*) +- } +- }; +- +- ($i:expr, $e:ident => { $gen:expr } | $($rest:tt)*) => { +- alt!($i, call!($e) => { $gen } | $($rest)*) +- }; +- +- ($i:expr, $e:ident => { $gen:expr }) => { +- alt!($i, call!($e) => { $gen }) +- }; +- +- ($i:expr, $subrule:ident!( $($args:tt)* ) => { $gen:expr }) => { +- match $subrule!($i, $($args)*) { +- Ok((i, o)) => Ok((i, $gen(o))), +- Err(LexError) => Err(LexError), +- } +- }; +- +- ($i:expr, $e:ident) => { +- alt!($i, call!($e)) +- }; +- +- ($i:expr, $subrule:ident!( $($args:tt)*)) => { +- $subrule!($i, $($args)*) +- }; +-} +- +-macro_rules! do_parse { +- ($i:expr, ( $($rest:expr),* )) => { +- Ok(($i, ( $($rest),* ))) +- }; +- +- ($i:expr, $e:ident >> $($rest:tt)*) => { +- do_parse!($i, call!($e) >> $($rest)*) +- }; +- +- ($i:expr, $submac:ident!( $($args:tt)* ) >> $($rest:tt)*) => { +- match $submac!($i, $($args)*) { +- Err(LexError) => Err(LexError), +- Ok((i, _)) => do_parse!(i, $($rest)*), +- } +- }; +- +- ($i:expr, $field:ident : $e:ident >> $($rest:tt)*) => { +- do_parse!($i, $field: call!($e) >> $($rest)*) +- }; +- +- ($i:expr, $field:ident : $submac:ident!( $($args:tt)* ) >> $($rest:tt)*) => { +- match $submac!($i, $($args)*) { +- Err(LexError) => Err(LexError), +- Ok((i, o)) => { +- let $field = o; +- do_parse!(i, $($rest)*) +- }, +- } +- }; +-} +- +-macro_rules! peek { +- ($i:expr, $submac:ident!( $($args:tt)* )) => { +- match $submac!($i, $($args)*) { +- Ok((_, o)) => Ok(($i, o)), +- Err(LexError) => Err(LexError), +- } +- }; +-} +- +-macro_rules! call { +- ($i:expr, $fun:expr $(, $args:expr)*) => { +- $fun($i $(, $args)*) +- }; +-} +- +-macro_rules! option { +- ($i:expr, $f:expr) => { +- match $f($i) { +- Ok((i, o)) => Ok((i, Some(o))), +- Err(LexError) => Ok(($i, None)), +- } +- }; +-} +- +-macro_rules! take_until_newline_or_eof { +- ($i:expr,) => {{ +- if $i.len() == 0 { +- Ok(($i, "")) +- } else { +- match $i.find('\n') { +- Some(i) => Ok(($i.advance(i), &$i.rest[..i])), +- None => Ok(($i.advance($i.len()), &$i.rest[..$i.len()])), +- } +- } +- }}; +-} +- +-macro_rules! tuple { +- ($i:expr, $($rest:tt)*) => { +- tuple_parser!($i, (), $($rest)*) +- }; +-} +- +-/// Do not use directly. Use `tuple!`. +-macro_rules! tuple_parser { +- ($i:expr, ($($parsed:tt),*), $e:ident, $($rest:tt)*) => { +- tuple_parser!($i, ($($parsed),*), call!($e), $($rest)*) +- }; +- +- ($i:expr, (), $submac:ident!( $($args:tt)* ), $($rest:tt)*) => { +- match $submac!($i, $($args)*) { +- Err(LexError) => Err(LexError), +- Ok((i, o)) => tuple_parser!(i, (o), $($rest)*), +- } +- }; +- +- ($i:expr, ($($parsed:tt)*), $submac:ident!( $($args:tt)* ), $($rest:tt)*) => { +- match $submac!($i, $($args)*) { +- Err(LexError) => Err(LexError), +- Ok((i, o)) => tuple_parser!(i, ($($parsed)* , o), $($rest)*), +- } +- }; +- +- ($i:expr, ($($parsed:tt),*), $e:ident) => { +- tuple_parser!($i, ($($parsed),*), call!($e)) +- }; +- +- ($i:expr, (), $submac:ident!( $($args:tt)* )) => { +- $submac!($i, $($args)*) +- }; +- +- ($i:expr, ($($parsed:expr),*), $submac:ident!( $($args:tt)* )) => { +- match $submac!($i, $($args)*) { +- Err(LexError) => Err(LexError), +- Ok((i, o)) => Ok((i, ($($parsed),*, o))) +- } +- }; +- +- ($i:expr, ($($parsed:expr),*)) => { +- Ok(($i, ($($parsed),*))) +- }; +-} +- +-macro_rules! not { +- ($i:expr, $submac:ident!( $($args:tt)* )) => { +- match $submac!($i, $($args)*) { +- Ok((_, _)) => Err(LexError), +- Err(LexError) => Ok(($i, ())), +- } +- }; +-} +- +-macro_rules! tag { +- ($i:expr, $tag:expr) => { +- if $i.starts_with($tag) { +- Ok(($i.advance($tag.len()), &$i.rest[..$tag.len()])) +- } else { +- Err(LexError) +- } +- }; +-} +- +-macro_rules! punct { +- ($i:expr, $punct:expr) => { +- $crate::strnom::punct($i, $punct) +- }; +-} +- +-/// Do not use directly. Use `punct!`. +-pub fn punct<'a>(input: Cursor<'a>, token: &'static str) -> PResult<'a, &'a str> { +- let input = skip_whitespace(input); +- if input.starts_with(token) { +- Ok((input.advance(token.len()), token)) +- } else { +- Err(LexError) +- } +-} +- +-macro_rules! preceded { +- ($i:expr, $submac:ident!( $($args:tt)* ), $submac2:ident!( $($args2:tt)* )) => { +- match tuple!($i, $submac!($($args)*), $submac2!($($args2)*)) { +- Ok((remaining, (_, o))) => Ok((remaining, o)), +- Err(LexError) => Err(LexError), +- } +- }; +- +- ($i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => { +- preceded!($i, $submac!($($args)*), call!($g)) +- }; +-} +- +-macro_rules! delimited { +- ($i:expr, $submac:ident!( $($args:tt)* ), $($rest:tt)+) => { +- match tuple_parser!($i, (), $submac!($($args)*), $($rest)*) { +- Err(LexError) => Err(LexError), +- Ok((i1, (_, o, _))) => Ok((i1, o)) +- } +- }; +-} +- +-macro_rules! map { +- ($i:expr, $submac:ident!( $($args:tt)* ), $g:expr) => { +- match $submac!($i, $($args)*) { +- Err(LexError) => Err(LexError), +- Ok((i, o)) => Ok((i, call!(o, $g))) +- } +- }; +- +- ($i:expr, $f:expr, $g:expr) => { +- map!($i, call!($f), $g) +- }; +-} +diff --git a/third_party/rust/proc-macro2/src/wrapper.rs b/third_party/rust/proc-macro2/src/wrapper.rs +index 552b938..dca6b3d 100644 +--- a/third_party/rust/proc-macro2/src/wrapper.rs ++++ b/third_party/rust/proc-macro2/src/wrapper.rs +@@ -1,15 +1,15 @@ +-use std::fmt; +-use std::iter; ++use crate::detection::inside_proc_macro; ++use crate::{fallback, Delimiter, Punct, Spacing, TokenTree}; ++use std::fmt::{self, Debug, Display}; ++use std::iter::FromIterator; + use std::ops::RangeBounds; +-use std::panic::{self, PanicInfo}; ++use std::panic; + #[cfg(super_unstable)] + use std::path::PathBuf; + use std::str::FromStr; + +-use crate::{fallback, Delimiter, Punct, Spacing, TokenTree}; +- + #[derive(Clone)] +-pub enum TokenStream { ++pub(crate) enum TokenStream { + Compiler(DeferredTokenStream), + Fallback(fallback::TokenStream), + } +@@ -19,73 +19,16 @@ pub enum TokenStream { + // we hold on to the appended tokens and do proc_macro::TokenStream::extend as + // late as possible to batch together consecutive uses of the Extend impl. + #[derive(Clone)] +-pub struct DeferredTokenStream { ++pub(crate) struct DeferredTokenStream { + stream: proc_macro::TokenStream, + extra: Vec, + } + +-pub enum LexError { ++pub(crate) enum LexError { + Compiler(proc_macro::LexError), + Fallback(fallback::LexError), + } + +-fn nightly_works() -> bool { +- use std::sync::atomic::*; +- use std::sync::Once; +- +- static WORKS: AtomicUsize = AtomicUsize::new(0); +- static INIT: Once = Once::new(); +- +- match WORKS.load(Ordering::SeqCst) { +- 1 => return false, +- 2 => return true, +- _ => {} +- } +- +- // Swap in a null panic hook to avoid printing "thread panicked" to stderr, +- // then use catch_unwind to determine whether the compiler's proc_macro is +- // working. When proc-macro2 is used from outside of a procedural macro all +- // of the proc_macro crate's APIs currently panic. +- // +- // The Once is to prevent the possibility of this ordering: +- // +- // thread 1 calls take_hook, gets the user's original hook +- // thread 1 calls set_hook with the null hook +- // thread 2 calls take_hook, thinks null hook is the original hook +- // thread 2 calls set_hook with the null hook +- // thread 1 calls set_hook with the actual original hook +- // thread 2 calls set_hook with what it thinks is the original hook +- // +- // in which the user's hook has been lost. +- // +- // There is still a race condition where a panic in a different thread can +- // happen during the interval that the user's original panic hook is +- // unregistered such that their hook is incorrectly not called. This is +- // sufficiently unlikely and less bad than printing panic messages to stderr +- // on correct use of this crate. Maybe there is a libstd feature request +- // here. For now, if a user needs to guarantee that this failure mode does +- // not occur, they need to call e.g. `proc_macro2::Span::call_site()` from +- // the main thread before launching any other threads. +- INIT.call_once(|| { +- type PanicHook = dyn Fn(&PanicInfo) + Sync + Send + 'static; +- +- let null_hook: Box = Box::new(|_panic_info| { /* ignore */ }); +- let sanity_check = &*null_hook as *const PanicHook; +- let original_hook = panic::take_hook(); +- panic::set_hook(null_hook); +- +- let works = panic::catch_unwind(|| proc_macro::Span::call_site()).is_ok(); +- WORKS.store(works as usize + 1, Ordering::SeqCst); +- +- let hopefully_null_hook = panic::take_hook(); +- panic::set_hook(original_hook); +- if sanity_check != &*hopefully_null_hook { +- panic!("observed race condition in proc_macro2::nightly_works"); +- } +- }); +- nightly_works() +-} +- + fn mismatch() -> ! { + panic!("stable/nightly mismatch") + } +@@ -103,7 +46,12 @@ impl DeferredTokenStream { + } + + fn evaluate_now(&mut self) { +- self.stream.extend(self.extra.drain(..)); ++ // If-check provides a fast short circuit for the common case of `extra` ++ // being empty, which saves a round trip over the proc macro bridge. ++ // Improves macro expansion time in winrt by 6% in debug mode. ++ if !self.extra.is_empty() { ++ self.stream.extend(self.extra.drain(..)); ++ } + } + + fn into_token_stream(mut self) -> proc_macro::TokenStream { +@@ -114,7 +62,7 @@ impl DeferredTokenStream { + + impl TokenStream { + pub fn new() -> TokenStream { +- if nightly_works() { ++ if inside_proc_macro() { + TokenStream::Compiler(DeferredTokenStream::new(proc_macro::TokenStream::new())) + } else { + TokenStream::Fallback(fallback::TokenStream::new()) +@@ -147,9 +95,9 @@ impl FromStr for TokenStream { + type Err = LexError; + + fn from_str(src: &str) -> Result { +- if nightly_works() { ++ if inside_proc_macro() { + Ok(TokenStream::Compiler(DeferredTokenStream::new( +- src.parse()?, ++ proc_macro_parse(src)?, + ))) + } else { + Ok(TokenStream::Fallback(src.parse()?)) +@@ -157,11 +105,17 @@ impl FromStr for TokenStream { + } + } + +-impl fmt::Display for TokenStream { ++// Work around https://github.com/rust-lang/rust/issues/58736. ++fn proc_macro_parse(src: &str) -> Result { ++ panic::catch_unwind(|| src.parse().map_err(LexError::Compiler)) ++ .unwrap_or(Err(LexError::Fallback(fallback::LexError))) ++} ++ ++impl Display for TokenStream { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- TokenStream::Compiler(tts) => tts.clone().into_token_stream().fmt(f), +- TokenStream::Fallback(tts) => tts.fmt(f), ++ TokenStream::Compiler(tts) => Display::fmt(&tts.clone().into_token_stream(), f), ++ TokenStream::Fallback(tts) => Display::fmt(tts, f), + } + } + } +@@ -187,7 +141,7 @@ impl From for TokenStream { + } + } + +-// Assumes nightly_works(). ++// Assumes inside_proc_macro(). + fn into_compiler_token(token: TokenTree) -> proc_macro::TokenTree { + match token { + TokenTree::Group(tt) => tt.inner.unwrap_nightly().into(), +@@ -207,7 +161,7 @@ fn into_compiler_token(token: TokenTree) -> proc_macro::TokenTree { + + impl From for TokenStream { + fn from(token: TokenTree) -> TokenStream { +- if nightly_works() { ++ if inside_proc_macro() { + TokenStream::Compiler(DeferredTokenStream::new(into_compiler_token(token).into())) + } else { + TokenStream::Fallback(token.into()) +@@ -215,9 +169,9 @@ impl From for TokenStream { + } + } + +-impl iter::FromIterator for TokenStream { ++impl FromIterator for TokenStream { + fn from_iter>(trees: I) -> Self { +- if nightly_works() { ++ if inside_proc_macro() { + TokenStream::Compiler(DeferredTokenStream::new( + trees.into_iter().map(into_compiler_token).collect(), + )) +@@ -227,7 +181,7 @@ impl iter::FromIterator for TokenStream { + } + } + +-impl iter::FromIterator for TokenStream { ++impl FromIterator for TokenStream { + fn from_iter>(streams: I) -> Self { + let mut streams = streams.into_iter(); + match streams.next() { +@@ -252,14 +206,15 @@ impl iter::FromIterator for TokenStream { + } + + impl Extend for TokenStream { +- fn extend>(&mut self, streams: I) { ++ fn extend>(&mut self, stream: I) { + match self { + TokenStream::Compiler(tts) => { + // Here is the reason for DeferredTokenStream. +- tts.extra +- .extend(streams.into_iter().map(into_compiler_token)); ++ for token in stream { ++ tts.extra.push(into_compiler_token(token)); ++ } + } +- TokenStream::Fallback(tts) => tts.extend(streams), ++ TokenStream::Fallback(tts) => tts.extend(stream), + } + } + } +@@ -270,20 +225,20 @@ impl Extend for TokenStream { + TokenStream::Compiler(tts) => { + tts.evaluate_now(); + tts.stream +- .extend(streams.into_iter().map(|stream| stream.unwrap_nightly())); ++ .extend(streams.into_iter().map(TokenStream::unwrap_nightly)); + } + TokenStream::Fallback(tts) => { +- tts.extend(streams.into_iter().map(|stream| stream.unwrap_stable())); ++ tts.extend(streams.into_iter().map(TokenStream::unwrap_stable)); + } + } + } + } + +-impl fmt::Debug for TokenStream { ++impl Debug for TokenStream { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- TokenStream::Compiler(tts) => tts.clone().into_token_stream().fmt(f), +- TokenStream::Fallback(tts) => tts.fmt(f), ++ TokenStream::Compiler(tts) => Debug::fmt(&tts.clone().into_token_stream(), f), ++ TokenStream::Fallback(tts) => Debug::fmt(tts, f), + } + } + } +@@ -300,17 +255,17 @@ impl From for LexError { + } + } + +-impl fmt::Debug for LexError { ++impl Debug for LexError { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- LexError::Compiler(e) => e.fmt(f), +- LexError::Fallback(e) => e.fmt(f), ++ LexError::Compiler(e) => Debug::fmt(e, f), ++ LexError::Fallback(e) => Debug::fmt(e, f), + } + } + } + + #[derive(Clone)] +-pub enum TokenTreeIter { ++pub(crate) enum TokenTreeIter { + Compiler(proc_macro::token_stream::IntoIter), + Fallback(fallback::TokenTreeIter), + } +@@ -361,7 +316,7 @@ impl Iterator for TokenTreeIter { + } + } + +-impl fmt::Debug for TokenTreeIter { ++impl Debug for TokenTreeIter { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + f.debug_struct("TokenTreeIter").finish() + } +@@ -369,7 +324,7 @@ impl fmt::Debug for TokenTreeIter { + + #[derive(Clone, PartialEq, Eq)] + #[cfg(super_unstable)] +-pub enum SourceFile { ++pub(crate) enum SourceFile { + Compiler(proc_macro::SourceFile), + Fallback(fallback::SourceFile), + } +@@ -397,58 +352,77 @@ impl SourceFile { + } + + #[cfg(super_unstable)] +-impl fmt::Debug for SourceFile { ++impl Debug for SourceFile { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- SourceFile::Compiler(a) => a.fmt(f), +- SourceFile::Fallback(a) => a.fmt(f), ++ SourceFile::Compiler(a) => Debug::fmt(a, f), ++ SourceFile::Fallback(a) => Debug::fmt(a, f), + } + } + } + + #[cfg(any(super_unstable, feature = "span-locations"))] +-pub struct LineColumn { ++pub(crate) struct LineColumn { + pub line: usize, + pub column: usize, + } + + #[derive(Copy, Clone)] +-pub enum Span { ++pub(crate) enum Span { + Compiler(proc_macro::Span), + Fallback(fallback::Span), + } + + impl Span { + pub fn call_site() -> Span { +- if nightly_works() { ++ if inside_proc_macro() { + Span::Compiler(proc_macro::Span::call_site()) + } else { + Span::Fallback(fallback::Span::call_site()) + } + } + ++ #[cfg(hygiene)] ++ pub fn mixed_site() -> Span { ++ if inside_proc_macro() { ++ Span::Compiler(proc_macro::Span::mixed_site()) ++ } else { ++ Span::Fallback(fallback::Span::mixed_site()) ++ } ++ } ++ + #[cfg(super_unstable)] + pub fn def_site() -> Span { +- if nightly_works() { ++ if inside_proc_macro() { + Span::Compiler(proc_macro::Span::def_site()) + } else { + Span::Fallback(fallback::Span::def_site()) + } + } + +- #[cfg(super_unstable)] + pub fn resolved_at(&self, other: Span) -> Span { + match (self, other) { ++ #[cfg(hygiene)] + (Span::Compiler(a), Span::Compiler(b)) => Span::Compiler(a.resolved_at(b)), ++ ++ // Name resolution affects semantics, but location is only cosmetic ++ #[cfg(not(hygiene))] ++ (Span::Compiler(_), Span::Compiler(_)) => other, ++ + (Span::Fallback(a), Span::Fallback(b)) => Span::Fallback(a.resolved_at(b)), + _ => mismatch(), + } + } + +- #[cfg(super_unstable)] + pub fn located_at(&self, other: Span) -> Span { + match (self, other) { ++ #[cfg(hygiene)] + (Span::Compiler(a), Span::Compiler(b)) => Span::Compiler(a.located_at(b)), ++ ++ // Name resolution affects semantics, but location is only cosmetic ++ #[cfg(not(hygiene))] ++ (Span::Compiler(_), Span::Compiler(_)) => *self, ++ + (Span::Fallback(a), Span::Fallback(b)) => Span::Fallback(a.located_at(b)), + _ => mismatch(), + } +@@ -542,16 +516,16 @@ impl From for Span { + } + } + +-impl fmt::Debug for Span { ++impl Debug for Span { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- Span::Compiler(s) => s.fmt(f), +- Span::Fallback(s) => s.fmt(f), ++ Span::Compiler(s) => Debug::fmt(s, f), ++ Span::Fallback(s) => Debug::fmt(s, f), + } + } + } + +-pub fn debug_span_field_if_nontrivial(debug: &mut fmt::DebugStruct, span: Span) { ++pub(crate) fn debug_span_field_if_nontrivial(debug: &mut fmt::DebugStruct, span: Span) { + match span { + Span::Compiler(s) => { + debug.field("span", &s); +@@ -561,7 +535,7 @@ pub fn debug_span_field_if_nontrivial(debug: &mut fmt::DebugStruct, span: Span) + } + + #[derive(Clone)] +-pub enum Group { ++pub(crate) enum Group { + Compiler(proc_macro::Group), + Fallback(fallback::Group), + } +@@ -652,26 +626,26 @@ impl From for Group { + } + } + +-impl fmt::Display for Group { ++impl Display for Group { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + match self { +- Group::Compiler(group) => group.fmt(formatter), +- Group::Fallback(group) => group.fmt(formatter), ++ Group::Compiler(group) => Display::fmt(group, formatter), ++ Group::Fallback(group) => Display::fmt(group, formatter), + } + } + } + +-impl fmt::Debug for Group { ++impl Debug for Group { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + match self { +- Group::Compiler(group) => group.fmt(formatter), +- Group::Fallback(group) => group.fmt(formatter), ++ Group::Compiler(group) => Debug::fmt(group, formatter), ++ Group::Fallback(group) => Debug::fmt(group, formatter), + } + } + } + + #[derive(Clone)] +-pub enum Ident { ++pub(crate) enum Ident { + Compiler(proc_macro::Ident), + Fallback(fallback::Ident), + } +@@ -747,26 +721,26 @@ where + } + } + +-impl fmt::Display for Ident { ++impl Display for Ident { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- Ident::Compiler(t) => t.fmt(f), +- Ident::Fallback(t) => t.fmt(f), ++ Ident::Compiler(t) => Display::fmt(t, f), ++ Ident::Fallback(t) => Display::fmt(t, f), + } + } + } + +-impl fmt::Debug for Ident { ++impl Debug for Ident { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- Ident::Compiler(t) => t.fmt(f), +- Ident::Fallback(t) => t.fmt(f), ++ Ident::Compiler(t) => Debug::fmt(t, f), ++ Ident::Fallback(t) => Debug::fmt(t, f), + } + } + } + + #[derive(Clone)] +-pub enum Literal { ++pub(crate) enum Literal { + Compiler(proc_macro::Literal), + Fallback(fallback::Literal), + } +@@ -774,7 +748,7 @@ pub enum Literal { + macro_rules! suffixed_numbers { + ($($name:ident => $kind:ident,)*) => ($( + pub fn $name(n: $kind) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::$name(n)) + } else { + Literal::Fallback(fallback::Literal::$name(n)) +@@ -786,7 +760,7 @@ macro_rules! suffixed_numbers { + macro_rules! unsuffixed_integers { + ($($name:ident => $kind:ident,)*) => ($( + pub fn $name(n: $kind) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::$name(n)) + } else { + Literal::Fallback(fallback::Literal::$name(n)) +@@ -830,7 +804,7 @@ impl Literal { + } + + pub fn f32_unsuffixed(f: f32) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::f32_unsuffixed(f)) + } else { + Literal::Fallback(fallback::Literal::f32_unsuffixed(f)) +@@ -838,7 +812,7 @@ impl Literal { + } + + pub fn f64_unsuffixed(f: f64) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::f64_unsuffixed(f)) + } else { + Literal::Fallback(fallback::Literal::f64_unsuffixed(f)) +@@ -846,7 +820,7 @@ impl Literal { + } + + pub fn string(t: &str) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::string(t)) + } else { + Literal::Fallback(fallback::Literal::string(t)) +@@ -854,7 +828,7 @@ impl Literal { + } + + pub fn character(t: char) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::character(t)) + } else { + Literal::Fallback(fallback::Literal::character(t)) +@@ -862,7 +836,7 @@ impl Literal { + } + + pub fn byte_string(bytes: &[u8]) -> Literal { +- if nightly_works() { ++ if inside_proc_macro() { + Literal::Compiler(proc_macro::Literal::byte_string(bytes)) + } else { + Literal::Fallback(fallback::Literal::byte_string(bytes)) +@@ -908,20 +882,20 @@ impl From for Literal { + } + } + +-impl fmt::Display for Literal { ++impl Display for Literal { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- Literal::Compiler(t) => t.fmt(f), +- Literal::Fallback(t) => t.fmt(f), ++ Literal::Compiler(t) => Display::fmt(t, f), ++ Literal::Fallback(t) => Display::fmt(t, f), + } + } + } + +-impl fmt::Debug for Literal { ++impl Debug for Literal { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match self { +- Literal::Compiler(t) => t.fmt(f), +- Literal::Fallback(t) => t.fmt(f), ++ Literal::Compiler(t) => Debug::fmt(t, f), ++ Literal::Fallback(t) => Debug::fmt(t, f), + } + } + } +diff --git a/third_party/rust/proc-macro2/tests/comments.rs b/third_party/rust/proc-macro2/tests/comments.rs +new file mode 100644 +index 0000000..708cccb +--- /dev/null ++++ b/third_party/rust/proc-macro2/tests/comments.rs +@@ -0,0 +1,103 @@ ++use proc_macro2::{Delimiter, Literal, Spacing, TokenStream, TokenTree}; ++ ++// #[doc = "..."] -> "..." ++fn lit_of_outer_doc_comment(tokens: TokenStream) -> Literal { ++ lit_of_doc_comment(tokens, false) ++} ++ ++// #![doc = "..."] -> "..." ++fn lit_of_inner_doc_comment(tokens: TokenStream) -> Literal { ++ lit_of_doc_comment(tokens, true) ++} ++ ++fn lit_of_doc_comment(tokens: TokenStream, inner: bool) -> Literal { ++ let mut iter = tokens.clone().into_iter(); ++ match iter.next().unwrap() { ++ TokenTree::Punct(punct) => { ++ assert_eq!(punct.as_char(), '#'); ++ assert_eq!(punct.spacing(), Spacing::Alone); ++ } ++ _ => panic!("wrong token {:?}", tokens), ++ } ++ if inner { ++ match iter.next().unwrap() { ++ TokenTree::Punct(punct) => { ++ assert_eq!(punct.as_char(), '!'); ++ assert_eq!(punct.spacing(), Spacing::Alone); ++ } ++ _ => panic!("wrong token {:?}", tokens), ++ } ++ } ++ iter = match iter.next().unwrap() { ++ TokenTree::Group(group) => { ++ assert_eq!(group.delimiter(), Delimiter::Bracket); ++ assert!(iter.next().is_none(), "unexpected token {:?}", tokens); ++ group.stream().into_iter() ++ } ++ _ => panic!("wrong token {:?}", tokens), ++ }; ++ match iter.next().unwrap() { ++ TokenTree::Ident(ident) => assert_eq!(ident.to_string(), "doc"), ++ _ => panic!("wrong token {:?}", tokens), ++ } ++ match iter.next().unwrap() { ++ TokenTree::Punct(punct) => { ++ assert_eq!(punct.as_char(), '='); ++ assert_eq!(punct.spacing(), Spacing::Alone); ++ } ++ _ => panic!("wrong token {:?}", tokens), ++ } ++ match iter.next().unwrap() { ++ TokenTree::Literal(literal) => { ++ assert!(iter.next().is_none(), "unexpected token {:?}", tokens); ++ literal ++ } ++ _ => panic!("wrong token {:?}", tokens), ++ } ++} ++ ++#[test] ++fn closed_immediately() { ++ let stream = "/**/".parse::().unwrap(); ++ let tokens = stream.into_iter().collect::>(); ++ assert!(tokens.is_empty(), "not empty -- {:?}", tokens); ++} ++ ++#[test] ++fn incomplete() { ++ assert!("/*/".parse::().is_err()); ++} ++ ++#[test] ++fn lit() { ++ let stream = "/// doc".parse::().unwrap(); ++ let lit = lit_of_outer_doc_comment(stream); ++ assert_eq!(lit.to_string(), "\" doc\""); ++ ++ let stream = "//! doc".parse::().unwrap(); ++ let lit = lit_of_inner_doc_comment(stream); ++ assert_eq!(lit.to_string(), "\" doc\""); ++ ++ let stream = "/** doc */".parse::().unwrap(); ++ let lit = lit_of_outer_doc_comment(stream); ++ assert_eq!(lit.to_string(), "\" doc \""); ++ ++ let stream = "/*! doc */".parse::().unwrap(); ++ let lit = lit_of_inner_doc_comment(stream); ++ assert_eq!(lit.to_string(), "\" doc \""); ++} ++ ++#[test] ++fn carriage_return() { ++ let stream = "///\r\n".parse::().unwrap(); ++ let lit = lit_of_outer_doc_comment(stream); ++ assert_eq!(lit.to_string(), "\"\""); ++ ++ let stream = "/**\r\n*/".parse::().unwrap(); ++ let lit = lit_of_outer_doc_comment(stream); ++ assert_eq!(lit.to_string(), "\"\\r\\n\""); ++ ++ "///\r".parse::().unwrap_err(); ++ "///\r \n".parse::().unwrap_err(); ++ "/**\r \n*/".parse::().unwrap_err(); ++} +diff --git a/third_party/rust/proc-macro2/tests/test.rs b/third_party/rust/proc-macro2/tests/test.rs +index 7528388..8bd6bf9 100644 +--- a/third_party/rust/proc-macro2/tests/test.rs ++++ b/third_party/rust/proc-macro2/tests/test.rs +@@ -1,6 +1,5 @@ +-use std::str::{self, FromStr}; +- + use proc_macro2::{Ident, Literal, Spacing, Span, TokenStream, TokenTree}; ++use std::str::{self, FromStr}; + + #[test] + fn idents() { +@@ -110,6 +109,33 @@ fn literal_suffix() { + assert_eq!(token_count("1._0"), 3); + assert_eq!(token_count("1._m"), 3); + assert_eq!(token_count("\"\"s"), 1); ++ assert_eq!(token_count("r\"\"r"), 1); ++ assert_eq!(token_count("b\"\"b"), 1); ++ assert_eq!(token_count("br\"\"br"), 1); ++ assert_eq!(token_count("r#\"\"#r"), 1); ++ assert_eq!(token_count("'c'c"), 1); ++ assert_eq!(token_count("b'b'b"), 1); ++} ++ ++#[test] ++fn literal_iter_negative() { ++ let negative_literal = Literal::i32_suffixed(-3); ++ let tokens = TokenStream::from(TokenTree::Literal(negative_literal)); ++ let mut iter = tokens.into_iter(); ++ match iter.next().unwrap() { ++ TokenTree::Punct(punct) => { ++ assert_eq!(punct.as_char(), '-'); ++ assert_eq!(punct.spacing(), Spacing::Alone); ++ } ++ unexpected => panic!("unexpected token {:?}", unexpected), ++ } ++ match iter.next().unwrap() { ++ TokenTree::Literal(literal) => { ++ assert_eq!(literal.to_string(), "3i32"); ++ } ++ unexpected => panic!("unexpected token {:?}", unexpected), ++ } ++ assert!(iter.next().is_none()); + } + + #[test] +@@ -166,36 +192,6 @@ fn fail() { + #[cfg(span_locations)] + #[test] + fn span_test() { +- use proc_macro2::TokenTree; +- +- fn check_spans(p: &str, mut lines: &[(usize, usize, usize, usize)]) { +- let ts = p.parse::().unwrap(); +- check_spans_internal(ts, &mut lines); +- } +- +- fn check_spans_internal(ts: TokenStream, lines: &mut &[(usize, usize, usize, usize)]) { +- for i in ts { +- if let Some((&(sline, scol, eline, ecol), rest)) = lines.split_first() { +- *lines = rest; +- +- let start = i.span().start(); +- assert_eq!(start.line, sline, "sline did not match for {}", i); +- assert_eq!(start.column, scol, "scol did not match for {}", i); +- +- let end = i.span().end(); +- assert_eq!(end.line, eline, "eline did not match for {}", i); +- assert_eq!(end.column, ecol, "ecol did not match for {}", i); +- +- match i { +- TokenTree::Group(ref g) => { +- check_spans_internal(g.stream().clone(), lines); +- } +- _ => {} +- } +- } +- } +- } +- + check_spans( + "\ + /// This is a document comment +@@ -274,49 +270,7 @@ fn span_join() { + #[test] + fn no_panic() { + let s = str::from_utf8(b"b\'\xc2\x86 \x00\x00\x00^\"").unwrap(); +- assert!(s.parse::().is_err()); +-} +- +-#[test] +-fn tricky_doc_comment() { +- let stream = "/**/".parse::().unwrap(); +- let tokens = stream.into_iter().collect::>(); +- assert!(tokens.is_empty(), "not empty -- {:?}", tokens); +- +- let stream = "/// doc".parse::().unwrap(); +- let tokens = stream.into_iter().collect::>(); +- assert!(tokens.len() == 2, "not length 2 -- {:?}", tokens); +- match tokens[0] { +- proc_macro2::TokenTree::Punct(ref tt) => assert_eq!(tt.as_char(), '#'), +- _ => panic!("wrong token {:?}", tokens[0]), +- } +- let mut tokens = match tokens[1] { +- proc_macro2::TokenTree::Group(ref tt) => { +- assert_eq!(tt.delimiter(), proc_macro2::Delimiter::Bracket); +- tt.stream().into_iter() +- } +- _ => panic!("wrong token {:?}", tokens[0]), +- }; +- +- match tokens.next().unwrap() { +- proc_macro2::TokenTree::Ident(ref tt) => assert_eq!(tt.to_string(), "doc"), +- t => panic!("wrong token {:?}", t), +- } +- match tokens.next().unwrap() { +- proc_macro2::TokenTree::Punct(ref tt) => assert_eq!(tt.as_char(), '='), +- t => panic!("wrong token {:?}", t), +- } +- match tokens.next().unwrap() { +- proc_macro2::TokenTree::Literal(ref tt) => { +- assert_eq!(tt.to_string(), "\" doc\""); +- } +- t => panic!("wrong token {:?}", t), +- } +- assert!(tokens.next().is_none()); +- +- let stream = "//! doc".parse::().unwrap(); +- let tokens = stream.into_iter().collect::>(); +- assert!(tokens.len() == 3, "not length 3 -- {:?}", tokens); ++ assert!(s.parse::().is_err()); + } + + #[test] +@@ -345,11 +299,11 @@ fn raw_identifier() { + fn test_debug_ident() { + let ident = Ident::new("proc_macro", Span::call_site()); + +- #[cfg(not(procmacro2_semver_exempt))] ++ #[cfg(not(span_locations))] + let expected = "Ident(proc_macro)"; + +- #[cfg(procmacro2_semver_exempt)] +- let expected = "Ident { sym: proc_macro, span: bytes(0..0) }"; ++ #[cfg(span_locations)] ++ let expected = "Ident { sym: proc_macro }"; + + assert_eq!(expected, format!("{:?}", ident)); + } +@@ -358,7 +312,7 @@ fn test_debug_ident() { + fn test_debug_tokenstream() { + let tts = TokenStream::from_str("[a + 1]").unwrap(); + +- #[cfg(not(procmacro2_semver_exempt))] ++ #[cfg(not(span_locations))] + let expected = "\ + TokenStream [ + Group { +@@ -379,7 +333,7 @@ TokenStream [ + ]\ + "; + +- #[cfg(not(procmacro2_semver_exempt))] ++ #[cfg(not(span_locations))] + let expected_before_trailing_commas = "\ + TokenStream [ + Group { +@@ -400,7 +354,7 @@ TokenStream [ + ]\ + "; + +- #[cfg(procmacro2_semver_exempt)] ++ #[cfg(span_locations)] + let expected = "\ + TokenStream [ + Group { +@@ -425,7 +379,7 @@ TokenStream [ + ]\ + "; + +- #[cfg(procmacro2_semver_exempt)] ++ #[cfg(span_locations)] + let expected_before_trailing_commas = "\ + TokenStream [ + Group { +@@ -464,3 +418,80 @@ fn default_tokenstream_is_empty() { + + assert!(default_token_stream.is_empty()); + } ++ ++#[test] ++fn tuple_indexing() { ++ // This behavior may change depending on https://github.com/rust-lang/rust/pull/71322 ++ let mut tokens = "tuple.0.0".parse::().unwrap().into_iter(); ++ assert_eq!("tuple", tokens.next().unwrap().to_string()); ++ assert_eq!(".", tokens.next().unwrap().to_string()); ++ assert_eq!("0.0", tokens.next().unwrap().to_string()); ++ assert!(tokens.next().is_none()); ++} ++ ++#[cfg(span_locations)] ++#[test] ++fn non_ascii_tokens() { ++ check_spans("// abc", &[]); ++ check_spans("// ábc", &[]); ++ check_spans("// abc x", &[]); ++ check_spans("// ábc x", &[]); ++ check_spans("/* abc */ x", &[(1, 10, 1, 11)]); ++ check_spans("/* ábc */ x", &[(1, 10, 1, 11)]); ++ check_spans("/* ab\nc */ x", &[(2, 5, 2, 6)]); ++ check_spans("/* áb\nc */ x", &[(2, 5, 2, 6)]); ++ check_spans("/*** abc */ x", &[(1, 12, 1, 13)]); ++ check_spans("/*** ábc */ x", &[(1, 12, 1, 13)]); ++ check_spans(r#""abc""#, &[(1, 0, 1, 5)]); ++ check_spans(r#""ábc""#, &[(1, 0, 1, 5)]); ++ check_spans(r###"r#"abc"#"###, &[(1, 0, 1, 8)]); ++ check_spans(r###"r#"ábc"#"###, &[(1, 0, 1, 8)]); ++ check_spans("r#\"a\nc\"#", &[(1, 0, 2, 3)]); ++ check_spans("r#\"á\nc\"#", &[(1, 0, 2, 3)]); ++ check_spans("'a'", &[(1, 0, 1, 3)]); ++ check_spans("'á'", &[(1, 0, 1, 3)]); ++ check_spans("//! abc", &[(1, 0, 1, 7), (1, 0, 1, 7), (1, 0, 1, 7)]); ++ check_spans("//! ábc", &[(1, 0, 1, 7), (1, 0, 1, 7), (1, 0, 1, 7)]); ++ check_spans("//! abc\n", &[(1, 0, 1, 7), (1, 0, 1, 7), (1, 0, 1, 7)]); ++ check_spans("//! ábc\n", &[(1, 0, 1, 7), (1, 0, 1, 7), (1, 0, 1, 7)]); ++ check_spans("/*! abc */", &[(1, 0, 1, 10), (1, 0, 1, 10), (1, 0, 1, 10)]); ++ check_spans("/*! ábc */", &[(1, 0, 1, 10), (1, 0, 1, 10), (1, 0, 1, 10)]); ++ check_spans("/*! a\nc */", &[(1, 0, 2, 4), (1, 0, 2, 4), (1, 0, 2, 4)]); ++ check_spans("/*! á\nc */", &[(1, 0, 2, 4), (1, 0, 2, 4), (1, 0, 2, 4)]); ++ check_spans("abc", &[(1, 0, 1, 3)]); ++ check_spans("ábc", &[(1, 0, 1, 3)]); ++ check_spans("ábć", &[(1, 0, 1, 3)]); ++ check_spans("abc// foo", &[(1, 0, 1, 3)]); ++ check_spans("ábc// foo", &[(1, 0, 1, 3)]); ++ check_spans("ábć// foo", &[(1, 0, 1, 3)]); ++ check_spans("b\"a\\\n c\"", &[(1, 0, 2, 3)]); ++ check_spans("b\"a\\\n\u{00a0}c\"", &[(1, 0, 2, 3)]); ++} ++ ++#[cfg(span_locations)] ++fn check_spans(p: &str, mut lines: &[(usize, usize, usize, usize)]) { ++ let ts = p.parse::().unwrap(); ++ check_spans_internal(ts, &mut lines); ++ assert!(lines.is_empty(), "leftover ranges: {:?}", lines); ++} ++ ++#[cfg(span_locations)] ++fn check_spans_internal(ts: TokenStream, lines: &mut &[(usize, usize, usize, usize)]) { ++ for i in ts { ++ if let Some((&(sline, scol, eline, ecol), rest)) = lines.split_first() { ++ *lines = rest; ++ ++ let start = i.span().start(); ++ assert_eq!(start.line, sline, "sline did not match for {}", i); ++ assert_eq!(start.column, scol, "scol did not match for {}", i); ++ ++ let end = i.span().end(); ++ assert_eq!(end.line, eline, "eline did not match for {}", i); ++ assert_eq!(end.column, ecol, "ecol did not match for {}", i); ++ ++ if let TokenTree::Group(g) = i { ++ check_spans_internal(g.stream().clone(), lines); ++ } ++ } ++ } ++} +diff --git a/third_party/rust/proc-macro2/tests/test_fmt.rs b/third_party/rust/proc-macro2/tests/test_fmt.rs +new file mode 100644 +index 0000000..99a0aee +--- /dev/null ++++ b/third_party/rust/proc-macro2/tests/test_fmt.rs +@@ -0,0 +1,26 @@ ++use proc_macro2::{Delimiter, Group, Ident, Span, TokenStream, TokenTree}; ++use std::iter::{self, FromIterator}; ++ ++#[test] ++fn test_fmt_group() { ++ let ident = Ident::new("x", Span::call_site()); ++ let inner = TokenStream::from_iter(iter::once(TokenTree::Ident(ident))); ++ let parens_empty = Group::new(Delimiter::Parenthesis, TokenStream::new()); ++ let parens_nonempty = Group::new(Delimiter::Parenthesis, inner.clone()); ++ let brackets_empty = Group::new(Delimiter::Bracket, TokenStream::new()); ++ let brackets_nonempty = Group::new(Delimiter::Bracket, inner.clone()); ++ let braces_empty = Group::new(Delimiter::Brace, TokenStream::new()); ++ let braces_nonempty = Group::new(Delimiter::Brace, inner.clone()); ++ let none_empty = Group::new(Delimiter::None, TokenStream::new()); ++ let none_nonempty = Group::new(Delimiter::None, inner.clone()); ++ ++ // Matches libproc_macro. ++ assert_eq!("()", parens_empty.to_string()); ++ assert_eq!("(x)", parens_nonempty.to_string()); ++ assert_eq!("[]", brackets_empty.to_string()); ++ assert_eq!("[x]", brackets_nonempty.to_string()); ++ assert_eq!("{ }", braces_empty.to_string()); ++ assert_eq!("{ x }", braces_nonempty.to_string()); ++ assert_eq!("", none_empty.to_string()); ++ assert_eq!("x", none_nonempty.to_string()); ++} +diff --git a/third_party/rust/syn/.cargo-checksum.json b/third_party/rust/syn/.cargo-checksum.json +index 77939d8..b325093 100644 +--- a/third_party/rust/syn/.cargo-checksum.json ++++ b/third_party/rust/syn/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"484d29864d333a361652fa4e24e1dcfab9efa47705ffd8c106d802eb03b78da7","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"ca605417b6db8c995458f8407afaad6c177aedcc2274004283600f5638fa1b0c","benches/file.rs":"b45211cc4a0296a77aac2b4de16dbc6b5cb66adfb5afac00a77bccea87f43968","benches/rust.rs":"9cc0f62e944f1583d05c43a395a1556731501cf5976ef67a081f4f6387f883ba","build.rs":"7423ab199728d55c7d64c44b7c6729cfd93bd8273366a77707353003e27565d7","src/attr.rs":"cf81add298f0e75c35a9980a59bc3c2fd3fe933635830d1591374eeb2487c225","src/await.rs":"18f0b2ecb319991f891e300011424985e3cf33d166ea9f29f22d575fc8c83a76","src/bigint.rs":"efc7f64959980653d73fe4f8bc2a3a2904dc05f45b02c6dc15cd316fa3d7c338","src/buffer.rs":"2a432c11a3da67a21d46c2272bf9ce60a0bb20893b5750027bbd8ca3e843ab35","src/custom_keyword.rs":"589e46ec1be9a04d6de12c0b8cadf87cc1c05606ed46ddea62e9869cbca4a191","src/custom_punctuation.rs":"2ba2e294e15a0fce7ede3686c42b2891797079a724dd1193b66e7d305624c891","src/data.rs":"cc9b250d084e444782d3ff5e63c1ba387cbde8f7f2e977eab9846d920b4b8c3f","src/derive.rs":"c18878f14be5d5ab11fd7dda2d2ff1ff75c9662daf11eed033de62e4d0670a89","src/discouraged.rs":"50e10915695c4d14f64a78e20ecbef90a2cd53a7c26ee3426a2524a8ee5c9cbf","src/error.rs":"2c17a402f83ed5ae4ad96e753216771bef620235c2ff1ccc23f4bbafc7266fe1","src/export.rs":"dcae67456278c0339acfbcbb4737b8d37cfba5a150ae789f31f4be79abf7e726","src/expr.rs":"871d8eeb43cef02ef88de3bea7477b79b4eabc096a0899dde0e5750edf482f49","src/ext.rs":"b97ed549490b9248b5b5df31b3d5b08ba8791e23e6c5d3a1157a0363eb683ff3","src/file.rs":"3cc2bf5c709238d515a557f721f231c8c725b196400de051f945b549299d38a7","src/gen/fold.rs":"10b3ae33d0ce410d6bbe8b93be9d5f9e856c7dc8212133cc46b703f97d548190","src/gen/visit.rs":"e0f5798552d186024696b7bfc7219d4ff53b0e45f735a83e77cbb6b6578c5fa4","src/gen/visit_mut.rs":"9f7dda83907969971dba84d545aaa563b0728e54db97ffab5050fdf43a79c731","src/gen_helper.rs":"ea6c66388365971db6a2fc86cbb208f7eacde77e245bc8623f27a3642a3d7741","src/generics.rs":"d845d7a828863123a5187fd0fe59c9dae3636f63bad302bd035792eed3dcb1ba","src/group.rs":"119b62d8481b4b1c327639bed40e114bf1969765250b68186628247fd4144b3b","src/ident.rs":"503156ce51a7ef0420892e8dbf2ecf8fe51f42a84d52cc2c05654e1a83020cbf","src/item.rs":"213f2f58c65ee1aa222f111bc9b1be681f8fb069caed04ca56586839979318d0","src/keyword.rs":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","src/lib.rs":"24778e9f15e8025e75aca114c712716ada586b471adb3b3b69278f4d39b8a21b","src/lifetime.rs":"905359708f772ec858954badde69ee016d29e6eeba1dd205b268445b1aff6f3a","src/lit.rs":"5bb0bddb94cbd256e50e92dc091a0baa09f1be40a77058b897507f3b17191e5d","src/lookahead.rs":"5cce8b4cb345a85c24a452ea6d78eadb76f01ca0a789cbf5ce35108334904173","src/mac.rs":"6b468244cc07e3f2f10419f833d9e2ed23edbcd6dc34cf21c5947633699db964","src/macros.rs":"0d8c3bab47539aa2d00bec64e92c901ea2c9c0af74c868051c0905b82650f970","src/op.rs":"93cd44770bb110deadf807a01d9a666efe644b6e3010f4b51cae77ee7438cfbb","src/parse.rs":"5017123c249ebc65866af113a0ad671814b9873f47568180e6539a305eb0317d","src/parse_macro_input.rs":"f799aadb7216c2d333b579f48ed2fedfe07b5e96f004b25b569649ffbaa958d2","src/parse_quote.rs":"81575bf60b18b0d8624d7025a5bcc8dcd6633ad70c454dee2a06e4c391700b6c","src/pat.rs":"db0f2263b9813de1f4e3e3e0396fe0080b1e11c8090c6b4fb6fca3cfbe22bc96","src/path.rs":"32e685ac7fd2d4b9989802de8f326a8d47fa710f86ec3e45fd9d3ff8fdfe97ef","src/print.rs":"da6529c1d9d21aaf6c835f66b4e67eacb7cf91a10eb5e9a2143b49bf99b3b5e1","src/punctuated.rs":"384e7b317b26f24118eb4b0c39e949ee9f4f3e700a4c80e462342c83b2cc3282","src/sealed.rs":"896a495a5340eec898527f18bd4ddca408ea03ea0ee3af30074ff48deace778d","src/span.rs":"748c51c6feb223c26d3b1701f5bb98aee823666c775c98106cfa24fe29d8cec1","src/spanned.rs":"adddb6acae14a0fa340df302b932c31e34b259706ce56fd82ab597ec424500e1","src/stmt.rs":"fbccf2b4da7980fe6ea8d99457d291577c0f225b370c1dd97da41abf2a18fcf7","src/thread.rs":"815eca6bd64f4eef7c447f0809e84108f5428ff50225224b373efd8fbb696874","src/token.rs":"761d8d1793560eb2b631c36ddfdbb14ac65178405f095453aa0e75e8816bdbb9","src/tt.rs":"1e32ae216d14d895ff621bf32bc611f138aa00108b0090be2cbaa0affebe8e2a","src/ty.rs":"ce052e0079b65b66bea4e9502d2ff2c90ad4b867904bf7eb892eb60aa3ef219a","tests/clone.sh":"961243d42540d9992090efbbd5478b7aa395671db64a6c28cdadb6edc610ebdf","tests/common/eq.rs":"a42d339808fd32dd4bfd440c254add8c56d5e2cde3a6bf0c88621b618ce5eaa7","tests/common/mod.rs":"20a3300016351fa210a193fbb0db059ef5125fa7909585ded64790004d4977ed","tests/common/parse.rs":"17ba6d1e74aaa3f8096c6d379d803221f12d95cca69927be047d6ddf8367647f","tests/debug/gen.rs":"57bd5cf585e0b86ad00f29f09ff3db3390c4a756d503514a9b28407500dcea3c","tests/debug/mod.rs":"462d6fe34ee75c3ca1207d4db2ff3bdee5b430b9f9ca632e5671d1588d3f76b3","tests/features/error.rs":"e0581a2869cbd237c2bc18a0a85272296e1577bb5f7317a67fa85e28e04eea6f","tests/features/mod.rs":"66a2605ec54ede29208da350f2bed536dfa763b58408d64d3fca3b13de64b64f","tests/macros/mod.rs":"3f2d758c0ba76b93f54b0c1fc22ad50edff8ef42629ba4d47ac7d7f823da8359","tests/repo/mod.rs":"e851a68972c9194a9a8d7b68538b16ed79ae81cba55e1a2ce210d1b759fb1a21","tests/test_asyncness.rs":"b6c46118b036e6807d24eb0e1779244b4fca23dac0d8031e9843b3edec484ce8","tests/test_attribute.rs":"2d8f18a98c989d3f7adaaeb1aeebd4f8413365ace63feecb37cb3f9db9db4d8f","tests/test_derive_input.rs":"477d80f914c54b526f8ff229788dc0e7798d118f6dcfa348f4c99755edb347b9","tests/test_expr.rs":"f35ca80566849a36e6ba6403d9663519eff37e4224360c468fedff8b561a643e","tests/test_generics.rs":"83a5dc07f5c5701c12625399262f7120b66f01a742523f3eda28da2cf2c87eb3","tests/test_grouping.rs":"aadd75215addd9e5a8fa2f9472117d4cb80f1e8b84e07f4c0845675c9014164f","tests/test_ident.rs":"236c239dd66f543f084f44ff747d7bc3962cf11a019a279777fe972f6e17aa4c","tests/test_iterators.rs":"718938da14778dcba06324d36a99d9317c9d45d81a34c6a44c47e1fa38085e9f","tests/test_lit.rs":"7dff2661a5ac586d6ed2fe27501cb8ff62f4cf3f6c91f596bff6057c67ad7857","tests/test_meta.rs":"8444dee084882243b107dfc8a6aac27f9382f9774162d1ac8ed8ec30d60c048e","tests/test_parse_buffer.rs":"b244bb4bc41ff06d21f239e60a3d663fdec5aa4af33f2a354afef36d34f0aefc","tests/test_pat.rs":"41776b878efae9b8e340f21ffe6296e921cf309f618482efd98609c33e32c28b","tests/test_precedence.rs":"71f3ea52cda8b40166bb7416fb98774e6a653542497b521f8e183e283dcf579d","tests/test_round_trip.rs":"e0de37f45fa223b488d25a41beab185eb92abb7bf765a9f13fe5d870ff31f5f1","tests/test_should_parse.rs":"4da4e25ee2baa7e75135c375042a7f958de136c5698dab03f99ff7a774dcd463","tests/test_size.rs":"970150b9d49ef91ab4c8f8c6a59b83f9a68a02acb779f0280733a5efaec6487a","tests/test_token_trees.rs":"a07ea657bf03b9c667c821b2db2af49b176ca737e3e01217a73cca78b7f11380","tests/zzz_stable.rs":"961d4940a926db4ca523d834b060c62de988e6a8e01c9f5efaa7bb4c86745b47"},"package":"66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf"} +\ No newline at end of file ++{"files":{"Cargo.toml":"28ddb678a5ccac4423435384c8b7116f804e896eabc5aae9d5c2bc666aaebbb4","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"03f3b53cf858536a0883aa5b5882ee61dcd0f1e71c0930c9106fcfa1d6aad2df","benches/file.rs":"b4724fc7c0f48b8f488e2632a1064f6c0bf16ded3969680fc3f4a2369536269b","benches/rust.rs":"ea6291ef2d2a83d94a3312fe179d48259f8ec0b04c961993ddd181d0a4ab740e","build.rs":"aeca2312f05aec658eaa66980a0ef3d578837db107a55702b39419ea0422eb4a","src/attr.rs":"7d79482634d6544eb4a4825405407b53660d0f5f8b929f7e1671e005b9d92038","src/await.rs":"18f0b2ecb319991f891e300011424985e3cf33d166ea9f29f22d575fc8c83a76","src/bigint.rs":"efc7f64959980653d73fe4f8bc2a3a2904dc05f45b02c6dc15cd316fa3d7c338","src/buffer.rs":"cf2a4b3bdc247b80c85ff5625a1dfb7a5f517fd835f6e1518a7b924990e4c293","src/custom_keyword.rs":"9627467063e41776315a6a14b2aaea3875592d8e0ebd2dc6df1fc2f12c06f146","src/custom_punctuation.rs":"b00e7bee96eb473507527e39db65e74e71592dc06421d2cfe45ed899c17d4847","src/data.rs":"7aec9a745cd53ec95688afa353f6efb9576e7fc0143757b51d28bc3d900b1d2a","src/derive.rs":"fa71866df6e383673dd3329f455a9f953585b83f9739050be3bf1f8c6d526b96","src/discouraged.rs":"a1f3d85e20dedf50b1b7b4571d970a3a6e9b2de4afde7dd0c986fe240df2ba46","src/error.rs":"c3005b50e3132026250c5356d0d391bf96db8087f0f5f744de98e360d8a20a3e","src/export.rs":"dcae67456278c0339acfbcbb4737b8d37cfba5a150ae789f31f4be79abf7e726","src/expr.rs":"54455fd20041996653ca5379b03cdf3c2fc1b3dd2e1149b5bc6b1dd492545d55","src/ext.rs":"870086d9021e6a6fcefa2f00cd91b55c4b74dcee8f0f6a07e76d96fb44707d61","src/file.rs":"75167ebc77e7870122078eabde1b872c337142d4b0962c20cedffcaaa2a5b7c6","src/gen/clone.rs":"0845c1bf8624c3f235cd247b4eb748e7e16b4c240097cb0ff16751f688c079ae","src/gen/debug.rs":"d24fe37f4ce1dd74f2dc54136e893782d3c4d0908323c036c97599551a56960c","src/gen/eq.rs":"1e6ef09b17ca7f36861ef23ce2a6991b231ed5f087f046469b5f23da40f5b419","src/gen/fold.rs":"3f59e59ed8ad2ab5dd347bfbe41bbc785c2aabd8ae902087a584a6daed597182","src/gen/hash.rs":"e5b2a52587173076777233a9e57e2b3c8e0dd6d6f41d16fa7c9fde68b05c2bfc","src/gen/visit.rs":"23008c170d4dd3975232876a0a654921d9b6af57372cb9fcc133ca740588d666","src/gen/visit_mut.rs":"42886c3ee02ded72d9c3eec006e20431eaee0c6b90ddefc1a36ec7bf50c6a24a","src/gen_helper.rs":"ea6c66388365971db6a2fc86cbb208f7eacde77e245bc8623f27a3642a3d7741","src/generics.rs":"d1c175284ca21e777ef0414c28383929b170ccb00aaf7a929eb18d3b05e18da8","src/group.rs":"119b62d8481b4b1c327639bed40e114bf1969765250b68186628247fd4144b3b","src/ident.rs":"503156ce51a7ef0420892e8dbf2ecf8fe51f42a84d52cc2c05654e1a83020cbf","src/item.rs":"c9ad9881e8cda8ee3f157f0c7602fc53d08a7e3288b9afc388c393689eac5aea","src/lib.rs":"558ad13779233b27bebc4b2fc8025eb1c7e57b32130dc1dd911391e27b427500","src/lifetime.rs":"f390fe06692fc51fbf3eb490bb9f795da70e4452f51c5b0df3bbaa899084ddf1","src/lit.rs":"9fab84e38756b092fbb055dcdf01e31d42d916c49e3eaae8c9019043b0ee4301","src/lookahead.rs":"5cce8b4cb345a85c24a452ea6d78eadb76f01ca0a789cbf5ce35108334904173","src/mac.rs":"e5cecea397fd01a44958162781d8d94343fe2a1b9b9754a5666c3d2ab4d7ef64","src/macros.rs":"2ce05b553f14da4ee550bb681cb0733b7186ad94719cd36f96d53e15fd02cf2b","src/op.rs":"449514e146deab0ab020bc6f764544c294dbc780941c9802bf60cf1b2839d550","src/parse.rs":"bde888c98ee259f2a73489a693515ed4875432b0d79486ac83aea19f441992a3","src/parse_macro_input.rs":"653a020f023cac0eccbc1fcc34aa7bf80567b43e5475deab4ad3e487a5363201","src/parse_quote.rs":"642f21e5fa54df4b7c373fb158289ee1005d49e1a49b1d194df5438faee71c46","src/pat.rs":"1473b258162cc822f1ee0c0869f521053ed345a140c39ed83b9b4dfb6f9f2aca","src/path.rs":"f119f0c2af12fabd360eac9a2312e0f6e6c28c633c9671bde6ef0bece7c5ba3c","src/print.rs":"da6529c1d9d21aaf6c835f66b4e67eacb7cf91a10eb5e9a2143b49bf99b3b5e1","src/punctuated.rs":"212f5a601d6c2eb8b8fa679be1167b455b595bee964d2775b0101ebb16c3eaa5","src/reserved.rs":"3625eb2a64589a4992ab79a1674e9679f465bea613ab139a671df5337e88cee6","src/sealed.rs":"896a495a5340eec898527f18bd4ddca408ea03ea0ee3af30074ff48deace778d","src/span.rs":"748c51c6feb223c26d3b1701f5bb98aee823666c775c98106cfa24fe29d8cec1","src/spanned.rs":"7d77714d585e6f42397091ffb3a799fd7b20c05c5442c737683c429ea7d409a5","src/stmt.rs":"3917fbc897f80efe838267833c55650ff8d636cb49a6d1084e28eff65d0e3ccd","src/thread.rs":"815eca6bd64f4eef7c447f0809e84108f5428ff50225224b373efd8fbb696874","src/token.rs":"a1ca6298bf6592cb80cbab1db4eac2fa4e3fa56729bb807bfb0f08ab0f229ca5","src/tt.rs":"1cc9e200624288322f800f32e3d6e2e53da946467bb312dd40a52c02cdcc4730","src/ty.rs":"cb167cbb16240c59a31b44adec175172caaf75ffef9a0bb168584b51bf105795","src/verbatim.rs":"802a97df997432f18cac6e6200ff6ea29fb2474986005e0fcdbc2b65197f87f7","src/whitespace.rs":"e63dd0aa3d34029f17766a8b09c1a6e4479e36c552c8b7023d710a399333aace","tests/.gitignore":"22e782449a3c216db3f7215d5fb8882e316768e40beeec3833aae419ad8941db","tests/common/eq.rs":"4b190a3833bdfd20a4cb1e3dff25a698751dec71d6f30249cf09426e061a4fb1","tests/common/mod.rs":"25ef6d7daa09bad3198a0e9e91b2812425f92db7c585c1e34a03a84d7362ccd8","tests/common/parse.rs":"8b7ba32f4988c30758c108536c4877dc5a039a237bf9b0687220ef2295797bbd","tests/debug/gen.rs":"d6e2abf2a7bb58a7895a60c2f094a98a4f85c9189d02011d0dcef6ef053f26e3","tests/debug/mod.rs":"868763d0ef1609a3ad5e05e9f1bfa0f813e91e7e9a36653414a188bb2fdaa425","tests/macros/mod.rs":"c0eafa4e3845fc08f6efe6021bac37822c0ac325eb7b51194a5f35236f648d92","tests/repo/mod.rs":"9e316b88d57ae213e81950c35e45443078ec90e702798353bc3528cb8a2810b6","tests/repo/progress.rs":"c08d0314a7f3ecf760d471f27da3cd2a500aeb9f1c8331bffb2aa648f9fabf3f","tests/test_asyncness.rs":"cff01db49d28ab23b0b258bc6c0a5cc4071be4fe7248eef344a5d79d2fb649b7","tests/test_attribute.rs":"0ffd99384e1a52ae17d9fed5c4053e411e8f9018decef07ffa621d1faa7329d8","tests/test_derive_input.rs":"610444351e3bf99366976bbf1da109c334a70ac9500caef366bcf9b68819829f","tests/test_expr.rs":"0ee83f6f6de950018c043efcc3e85776b4227dae3068309998a8d9709f2fc66c","tests/test_generics.rs":"9d713f90a79d6145efc89fb6f946029ca03486c632219950889da39940152ba0","tests/test_grouping.rs":"46c27baec4daaaf1e891892f0b0515ea8a44619071c7d0cc9192580916f1569f","tests/test_ident.rs":"9eb53d1e21edf23e7c9e14dc74dcc2b2538e9221e19dbcc0a44e3acc2e90f3f6","tests/test_item.rs":"461ed0c8648afffcea3217f52c9a88298182b4d39d73a11803b1281d99c98c25","tests/test_iterators.rs":"53ed6078d37550bd6765d2411e3660be401aef8a31a407350cc064a7d08c7c33","tests/test_lit.rs":"2a46c5f2f2ad1dcbb7e9b0cd11b55861c5ff818c2c4c51351d07e2daa7c74674","tests/test_meta.rs":"1fc98af3279cadc3d8db3c7e8d4d7f9e9dbd4d17548cf6a2f6f4536ed65367f6","tests/test_parse_buffer.rs":"8bbe2d24ca8a3788f72c6908fc96c26d546f11c69687bf8d72727f851d5e2d27","tests/test_parse_stream.rs":"2f449a2c41a3dee6fd14bee24e1666a453cb808eda17332fd91afd127fcdd2a6","tests/test_pat.rs":"2cb331fe404496d51e7cc7e283ae13c519a2265ca82e1c88e113296f860c2cba","tests/test_path.rs":"fcd5591e639fc787acc9763d828a811c8114525c9341282eefda8f331e082a51","tests/test_precedence.rs":"8d03656741b01e577d7501ce24332d1a4febec3e31a043e47c61062b8c527ed2","tests/test_receiver.rs":"084eca59984b9a18651da52f2c4407355da3de1335916a12477652999e2d01cc","tests/test_round_trip.rs":"ba01bf4ec04cd2d6f9e4800c343563925ae960c5f16752dc0797fda4451b6cc2","tests/test_shebang.rs":"f5772cadad5b56e3112cb16308b779f92bce1c3a48091fc9933deb2276a69331","tests/test_should_parse.rs":"1d3535698a446e2755bfc360676bdb161841a1f454cdef6e7556c6d06a95c89d","tests/test_size.rs":"5fae772bab66809d6708232f35cfb4a287882486763b0f763feec2ad79fbb68b","tests/test_stmt.rs":"17e4355843ee2982b51faba2721a18966f8c2b9422e16b052a123b8ee8b80752","tests/test_token_trees.rs":"43e56a701817e3c3bfd0cae54a457dd7a38ccb3ca19da41e2b995fdf20e6ed18","tests/test_ty.rs":"5b7c0bfc4963d41920dd0b39fdea419e34f00409ba86ad4211d6c3c7e8bbe1c0","tests/test_visibility.rs":"3f958e2b3b5908005e756a80eea326a91eac97cc4ab60599bebde8d4b942d65c","tests/zzz_stable.rs":"2a862e59cb446235ed99aec0e6ada8e16d3ecc30229b29d825b7c0bbc2602989"},"package":"963f7d3cc59b59b9325165add223142bbf1df27655d07789f109896d353d8350"} +\ No newline at end of file +diff --git a/third_party/rust/syn/Cargo.toml b/third_party/rust/syn/Cargo.toml +index 7a5c962..20277fc 100644 +--- a/third_party/rust/syn/Cargo.toml ++++ b/third_party/rust/syn/Cargo.toml +@@ -13,7 +13,7 @@ + [package] + edition = "2018" + name = "syn" +-version = "1.0.5" ++version = "1.0.40" + authors = ["David Tolnay "] + include = ["/benches/**", "/build.rs", "/Cargo.toml", "/LICENSE-APACHE", "/LICENSE-MIT", "/README.md", "/src/**", "/tests/**"] + description = "Parser for Rust source code" +@@ -24,25 +24,21 @@ license = "MIT OR Apache-2.0" + repository = "https://github.com/dtolnay/syn" + [package.metadata.docs.rs] + all-features = true ++targets = ["x86_64-unknown-linux-gnu"] + + [package.metadata.playground] +-all-features = true +- +-[lib] +-name = "syn" ++features = ["full", "visit", "visit-mut", "fold", "extra-traits"] + + [[bench]] + name = "rust" + harness = false + required-features = ["full", "parsing"] +-edition = "2018" + + [[bench]] + name = "file" + required-features = ["full", "parsing"] +-edition = "2018" + [dependencies.proc-macro2] +-version = "1.0" ++version = "1.0.13" + default-features = false + + [dependencies.quote] +@@ -52,18 +48,34 @@ default-features = false + + [dependencies.unicode-xid] + version = "0.2" ++[dev-dependencies.anyhow] ++version = "1.0" ++ ++[dev-dependencies.flate2] ++version = "1.0" ++ + [dev-dependencies.insta] +-version = "0.9" ++version = "0.16" + + [dev-dependencies.rayon] + version = "1.0" + + [dev-dependencies.ref-cast] +-version = "0.2" ++version = "1.0" + + [dev-dependencies.regex] + version = "1.0" + ++[dev-dependencies.reqwest] ++version = "0.10" ++features = ["blocking"] ++ ++[dev-dependencies.syn-test-suite] ++version = "0" ++ ++[dev-dependencies.tar] ++version = "0.4" ++ + [dev-dependencies.termcolor] + version = "1.0" + +@@ -80,7 +92,6 @@ full = [] + parsing = [] + printing = ["quote"] + proc-macro = ["proc-macro2/proc-macro", "quote/proc-macro"] ++test = ["syn-test-suite/all-features"] + visit = [] + visit-mut = [] +-[badges.travis-ci] +-repository = "dtolnay/syn" +diff --git a/third_party/rust/syn/README.md b/third_party/rust/syn/README.md +index 29a7f32..12b5f45 100644 +--- a/third_party/rust/syn/README.md ++++ b/third_party/rust/syn/README.md +@@ -1,10 +1,10 @@ + Parser for Rust source code + =========================== + +-[![Build Status](https://api.travis-ci.org/dtolnay/syn.svg?branch=master)](https://travis-ci.org/dtolnay/syn) +-[![Latest Version](https://img.shields.io/crates/v/syn.svg)](https://crates.io/crates/syn) +-[![Rust Documentation](https://img.shields.io/badge/api-rustdoc-blue.svg)](https://docs.rs/syn/1.0/syn/) +-[![Rustc Version 1.31+](https://img.shields.io/badge/rustc-1.31+-lightgray.svg)](https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html) ++[github](https://github.com/dtolnay/syn) ++[crates.io](https://crates.io/crates/syn) ++[docs.rs](https://docs.rs/syn) ++[build status](https://github.com/dtolnay/syn/actions?query=branch%3Amaster) + + Syn is a parsing library for parsing a stream of Rust tokens into a syntax tree + of Rust source code. +@@ -46,10 +46,6 @@ contains some APIs that may be useful more generally. + [`syn::DeriveInput`]: https://docs.rs/syn/1.0/syn/struct.DeriveInput.html + [parser functions]: https://docs.rs/syn/1.0/syn/parse/index.html + +-If you get stuck with anything involving procedural macros in Rust I am happy to +-provide help even if the issue is not related to Syn. Please file a ticket in +-this repo. +- + *Version requirement: Syn supports rustc 1.31 and up.* + + [*Release notes*](https://github.com/dtolnay/syn/releases) +@@ -88,8 +84,6 @@ proc-macro = true + ``` + + ```rust +-extern crate proc_macro; +- + use proc_macro::TokenStream; + use quote::quote; + use syn::{parse_macro_input, DeriveInput}; +@@ -271,7 +265,7 @@ points, which are required by the language to use `proc_macro::TokenStream`. + The proc-macro2 crate will automatically detect and use the compiler's data + structures when a procedural macro is active. + +-[proc-macro2]: https://docs.rs/proc-macro2/1.0.0/proc_macro2/ ++[proc-macro2]: https://docs.rs/proc-macro2/1.0/proc_macro2/ + +
+ +diff --git a/third_party/rust/syn/benches/file.rs b/third_party/rust/syn/benches/file.rs +index 08ecd90..58ab8df 100644 +--- a/third_party/rust/syn/benches/file.rs ++++ b/third_party/rust/syn/benches/file.rs +@@ -1,9 +1,16 @@ + // $ cargo bench --features full --bench file + + #![feature(rustc_private, test)] ++#![recursion_limit = "1024"] + + extern crate test; + ++#[macro_use] ++#[path = "../tests/macros/mod.rs"] ++mod macros; ++ ++#[path = "../tests/common/mod.rs"] ++mod common; + #[path = "../tests/repo/mod.rs"] + pub mod repo; + +diff --git a/third_party/rust/syn/benches/rust.rs b/third_party/rust/syn/benches/rust.rs +index e3d9cd2..50e1a7f 100644 +--- a/third_party/rust/syn/benches/rust.rs ++++ b/third_party/rust/syn/benches/rust.rs +@@ -4,7 +4,14 @@ + // $ RUSTFLAGS='--cfg syn_only' cargo build --release --features full --bench rust + + #![cfg_attr(not(syn_only), feature(rustc_private))] ++#![recursion_limit = "1024"] + ++#[macro_use] ++#[path = "../tests/macros/mod.rs"] ++mod macros; ++ ++#[path = "../tests/common/mod.rs"] ++mod common; + #[path = "../tests/repo/mod.rs"] + mod repo; + +@@ -28,31 +35,35 @@ mod syn_parse { + } + + #[cfg(not(syn_only))] +-mod libsyntax_parse { ++mod librustc_parse { + extern crate rustc_data_structures; +- extern crate syntax; +- extern crate syntax_pos; ++ extern crate rustc_errors; ++ extern crate rustc_parse; ++ extern crate rustc_session; ++ extern crate rustc_span; + + use rustc_data_structures::sync::Lrc; +- use syntax::edition::Edition; +- use syntax::errors::{emitter::Emitter, DiagnosticBuilder, Handler}; +- use syntax::parse::ParseSess; +- use syntax::source_map::{FilePathMapping, SourceMap}; +- use syntax_pos::FileName; ++ use rustc_errors::{emitter::Emitter, Diagnostic, Handler}; ++ use rustc_session::parse::ParseSess; ++ use rustc_span::source_map::{FilePathMapping, SourceMap}; ++ use rustc_span::{edition::Edition, FileName}; + + pub fn bench(content: &str) -> Result<(), ()> { + struct SilentEmitter; + + impl Emitter for SilentEmitter { +- fn emit_diagnostic(&mut self, _db: &DiagnosticBuilder) {} ++ fn emit_diagnostic(&mut self, _diag: &Diagnostic) {} ++ fn source_map(&self) -> Option<&Lrc> { ++ None ++ } + } + +- syntax::with_globals(Edition::Edition2018, || { ++ rustc_span::with_session_globals(Edition::Edition2018, || { + let cm = Lrc::new(SourceMap::new(FilePathMapping::empty())); + let emitter = Box::new(SilentEmitter); + let handler = Handler::with_emitter(false, None, emitter); + let sess = ParseSess::with_span_handler(handler, cm); +- if let Err(mut diagnostic) = syntax::parse::parse_crate_from_source_str( ++ if let Err(mut diagnostic) = rustc_parse::parse_crate_from_source_str( + FileName::Custom("bench".to_owned()), + content.to_owned(), + &sess, +@@ -104,11 +115,11 @@ fn main() { + repo::clone_rust(); + + macro_rules! testcases { +- ($($(#[$cfg:meta])* $name:path,)*) => { ++ ($($(#[$cfg:meta])* $name:ident,)*) => { + vec![ + $( + $(#[$cfg])* +- (stringify!($name), $name as fn(&str) -> Result<(), ()>), ++ (stringify!($name), $name::bench as fn(&str) -> Result<(), ()>), + )* + ] + }; +@@ -128,12 +139,12 @@ fn main() { + + for (name, f) in testcases!( + #[cfg(not(syn_only))] +- read_from_disk::bench, ++ read_from_disk, + #[cfg(not(syn_only))] +- tokenstream_parse::bench, +- syn_parse::bench, ++ tokenstream_parse, ++ syn_parse, + #[cfg(not(syn_only))] +- libsyntax_parse::bench, ++ librustc_parse, + ) { + eprint!("{:20}", format!("{}:", name)); + let elapsed = exec(f); +diff --git a/third_party/rust/syn/build.rs b/third_party/rust/syn/build.rs +index c0f9ed3..cf7681c 100644 +--- a/third_party/rust/syn/build.rs ++++ b/third_party/rust/syn/build.rs +@@ -1,6 +1,6 @@ + use std::env; + use std::process::Command; +-use std::str::{self, FromStr}; ++use std::str; + + // The rustc-cfg strings below are *not* public API. Please let us know by + // opening a GitHub issue if your build environment requires some way to enable +@@ -26,38 +26,14 @@ struct Compiler { + } + + fn rustc_version() -> Option { +- let rustc = match env::var_os("RUSTC") { +- Some(rustc) => rustc, +- None => return None, +- }; +- +- let output = match Command::new(rustc).arg("--version").output() { +- Ok(output) => output, +- Err(_) => return None, +- }; +- +- let version = match str::from_utf8(&output.stdout) { +- Ok(version) => version, +- Err(_) => return None, +- }; +- ++ let rustc = env::var_os("RUSTC")?; ++ let output = Command::new(rustc).arg("--version").output().ok()?; ++ let version = str::from_utf8(&output.stdout).ok()?; + let mut pieces = version.split('.'); + if pieces.next() != Some("rustc 1") { + return None; + } +- +- let next = match pieces.next() { +- Some(next) => next, +- None => return None, +- }; +- +- let minor = match u32::from_str(next) { +- Ok(minor) => minor, +- Err(_) => return None, +- }; +- +- Some(Compiler { +- minor: minor, +- nightly: version.contains("nightly"), +- }) ++ let minor = pieces.next()?.parse().ok()?; ++ let nightly = version.contains("nightly"); ++ Some(Compiler { minor, nightly }) + } +diff --git a/third_party/rust/syn/src/attr.rs b/third_party/rust/syn/src/attr.rs +index 34009de..fa4f1cb 100644 +--- a/third_party/rust/syn/src/attr.rs ++++ b/third_party/rust/syn/src/attr.rs +@@ -9,15 +9,11 @@ use proc_macro2::TokenStream; + use crate::parse::{Parse, ParseBuffer, ParseStream, Parser, Result}; + #[cfg(feature = "parsing")] + use crate::punctuated::Pair; +-#[cfg(feature = "extra-traits")] +-use crate::tt::TokenStreamHelper; +-#[cfg(feature = "extra-traits")] +-use std::hash::{Hash, Hasher}; + + ast_struct! { + /// An attribute like `#[repr(transparent)]`. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + /// + ///
+@@ -111,7 +107,46 @@ ast_struct! { + /// + /// [`parse_meta()`]: Attribute::parse_meta + /// [`parse_args()`]: Attribute::parse_args +- pub struct Attribute #manual_extra_traits { ++ /// ++ ///


++ /// ++ /// # Doc comments ++ /// ++ /// The compiler transforms doc comments, such as `/// comment` and `/*! ++ /// comment */`, into attributes before macros are expanded. Each comment is ++ /// expanded into an attribute of the form `#[doc = r"comment"]`. ++ /// ++ /// As an example, the following `mod` items are expanded identically: ++ /// ++ /// ``` ++ /// # use syn::{ItemMod, parse_quote}; ++ /// let doc: ItemMod = parse_quote! { ++ /// /// Single line doc comments ++ /// /// We write so many! ++ /// /** ++ /// * Multi-line comments... ++ /// * May span many lines ++ /// */ ++ /// mod example { ++ /// //! Of course, they can be inner too ++ /// /*! And fit in a single line */ ++ /// } ++ /// }; ++ /// let attr: ItemMod = parse_quote! { ++ /// #[doc = r" Single line doc comments"] ++ /// #[doc = r" We write so many!"] ++ /// #[doc = r" ++ /// * Multi-line comments... ++ /// * May span many lines ++ /// "] ++ /// mod example { ++ /// #![doc = r" Of course, they can be inner too"] ++ /// #![doc = r" And fit in a single line "] ++ /// } ++ /// }; ++ /// assert_eq!(doc, attr); ++ /// ``` ++ pub struct Attribute { + pub pound_token: Token![#], + pub style: AttrStyle, + pub bracket_token: token::Bracket, +@@ -120,39 +155,11 @@ ast_struct! { + } + } + +-#[cfg(feature = "extra-traits")] +-impl Eq for Attribute {} +- +-#[cfg(feature = "extra-traits")] +-impl PartialEq for Attribute { +- fn eq(&self, other: &Self) -> bool { +- self.style == other.style +- && self.pound_token == other.pound_token +- && self.bracket_token == other.bracket_token +- && self.path == other.path +- && TokenStreamHelper(&self.tokens) == TokenStreamHelper(&other.tokens) +- } +-} +- +-#[cfg(feature = "extra-traits")] +-impl Hash for Attribute { +- fn hash(&self, state: &mut H) +- where +- H: Hasher, +- { +- self.style.hash(state); +- self.pound_token.hash(state); +- self.bracket_token.hash(state); +- self.path.hash(state); +- TokenStreamHelper(&self.tokens).hash(state); +- } +-} +- + impl Attribute { + /// Parses the content of the attribute, consisting of the path and tokens, + /// as a [`Meta`] if possible. + /// +- /// *This function is available if Syn is built with the `"parsing"` ++ /// *This function is available only if Syn is built with the `"parsing"` + /// feature.* + #[cfg(feature = "parsing")] + pub fn parse_meta(&self) -> Result { +@@ -199,7 +206,7 @@ impl Attribute { + /// ^^^^^^^^^ what gets parsed + /// ``` + /// +- /// *This function is available if Syn is built with the `"parsing"` ++ /// *This function is available only if Syn is built with the `"parsing"` + /// feature.* + #[cfg(feature = "parsing")] + pub fn parse_args(&self) -> Result { +@@ -208,7 +215,7 @@ impl Attribute { + + /// Parse the arguments to the attribute using the given parser. + /// +- /// *This function is available if Syn is built with the `"parsing"` ++ /// *This function is available only if Syn is built with the `"parsing"` + /// feature.* + #[cfg(feature = "parsing")] + pub fn parse_args_with(&self, parser: F) -> Result { +@@ -221,7 +228,7 @@ impl Attribute { + + /// Parses zero or more outer attributes from the stream. + /// +- /// *This function is available if Syn is built with the `"parsing"` ++ /// *This function is available only if Syn is built with the `"parsing"` + /// feature.* + #[cfg(feature = "parsing")] + pub fn parse_outer(input: ParseStream) -> Result> { +@@ -234,7 +241,7 @@ impl Attribute { + + /// Parses zero or more inner attributes from the stream. + /// +- /// *This function is available if Syn is built with the `"parsing"` ++ /// *This function is available only if Syn is built with the `"parsing"` + /// feature.* + #[cfg(feature = "parsing")] + pub fn parse_inner(input: ParseStream) -> Result> { +@@ -247,7 +254,7 @@ impl Attribute { + } + + #[cfg(feature = "parsing")] +-fn error_expected_args(attr: &Attribute) -> Error { ++fn expected_parentheses(attr: &Attribute) -> String { + let style = match attr.style { + AttrStyle::Outer => "#", + AttrStyle::Inner(_) => "#!", +@@ -261,19 +268,23 @@ fn error_expected_args(attr: &Attribute) -> Error { + path += &segment.ident.to_string(); + } + +- let msg = format!("expected attribute arguments: {}[{}(...)]", style, path); +- +- #[cfg(feature = "printing")] +- return Error::new_spanned(attr, msg); +- +- #[cfg(not(feature = "printing"))] +- return Error::new(attr.bracket_token.span, msg); ++ format!("{}[{}(...)]", style, path) + } + + #[cfg(feature = "parsing")] + fn enter_args<'a>(attr: &Attribute, input: ParseStream<'a>) -> Result> { + if input.is_empty() { +- return Err(error_expected_args(attr)); ++ let expected = expected_parentheses(attr); ++ let msg = format!("expected attribute arguments in parentheses: {}", expected); ++ return Err(crate::error::new2( ++ attr.pound_token.span, ++ attr.bracket_token.span, ++ msg, ++ )); ++ } else if input.peek(Token![=]) { ++ let expected = expected_parentheses(attr); ++ let msg = format!("expected parentheses: {}", expected); ++ return Err(input.error(msg)); + }; + + let content; +@@ -298,7 +309,7 @@ ast_enum! { + /// Distinguishes between attributes that decorate an item and attributes + /// that are contained within an item. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + /// + /// # Outer attributes +@@ -312,7 +323,6 @@ ast_enum! { + /// - `#![feature(proc_macro)]` + /// - `//! # Example` + /// - `/*! Please file an issue */` +- #[cfg_attr(feature = "clone-impls", derive(Copy))] + pub enum AttrStyle { + Outer, + Inner(Token![!]), +@@ -322,7 +332,7 @@ ast_enum! { + ast_enum_of_structs! { + /// Content of a compile-time structured attribute. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + /// + /// ## Path +@@ -360,7 +370,7 @@ ast_enum_of_structs! { + ast_struct! { + /// A structured list within an attribute, like `derive(Copy, Clone)`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct MetaList { + pub path: Path, +@@ -372,7 +382,7 @@ ast_struct! { + ast_struct! { + /// A name-value pair within an attribute, like `feature = "nightly"`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct MetaNameValue { + pub path: Path, +@@ -398,7 +408,7 @@ impl Meta { + ast_enum_of_structs! { + /// Element of a compile-time attribute list. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + pub enum NestedMeta { + /// A structured meta item, like the `Copy` in `#[derive(Copy)]` which +@@ -429,8 +439,8 @@ ast_enum_of_structs! { + /// as type `AttributeArgs`. + /// + /// ``` +-/// extern crate proc_macro; +-/// ++/// # extern crate proc_macro; ++/// # + /// use proc_macro::TokenStream; + /// use syn::{parse_macro_input, AttributeArgs, ItemFn}; + /// +@@ -464,7 +474,7 @@ where + fn is_outer(attr: &&Attribute) -> bool { + match attr.style { + AttrStyle::Outer => true, +- _ => false, ++ AttrStyle::Inner(_) => false, + } + } + self.into_iter().filter(is_outer) +@@ -474,7 +484,7 @@ where + fn is_inner(attr: &&Attribute) -> bool { + match attr.style { + AttrStyle::Inner(_) => true, +- _ => false, ++ AttrStyle::Outer => false, + } + } + self.into_iter().filter(is_inner) +diff --git a/third_party/rust/syn/src/buffer.rs b/third_party/rust/syn/src/buffer.rs +index 551a5ac..a461cc4 100644 +--- a/third_party/rust/syn/src/buffer.rs ++++ b/third_party/rust/syn/src/buffer.rs +@@ -1,7 +1,7 @@ + //! A stably addressed token buffer supporting efficient traversal based on a + //! cheaply copyable cursor. + //! +-//! *This module is available if Syn is built with the `"parsing"` feature.* ++//! *This module is available only if Syn is built with the `"parsing"` feature.* + + // This module is heavily commented as it contains most of the unsafe code in + // Syn, and caution should be used when editing it. The public-facing interface +@@ -36,7 +36,7 @@ enum Entry { + /// `TokenStream` which requires a deep copy in order to traverse more than + /// once. + /// +-/// *This type is available if Syn is built with the `"parsing"` feature.* ++/// *This type is available only if Syn is built with the `"parsing"` feature.* + pub struct TokenBuffer { + // NOTE: Do not derive clone on this - there are raw pointers inside which + // will be messed up. Moving the `TokenBuffer` itself is safe as the actual +@@ -98,7 +98,7 @@ impl TokenBuffer { + /// Creates a `TokenBuffer` containing all the tokens from the input + /// `TokenStream`. + /// +- /// *This method is available if Syn is built with both the `"parsing"` and ++ /// *This method is available only if Syn is built with both the `"parsing"` and + /// `"proc-macro"` features.* + #[cfg(all( + not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "wasi"))), +@@ -133,8 +133,7 @@ impl TokenBuffer { + /// Two cursors are equal if they have the same location in the same input + /// stream, and have the same scope. + /// +-/// *This type is available if Syn is built with the `"parsing"` feature.* +-#[derive(Copy, Clone, Eq, PartialEq)] ++/// *This type is available only if Syn is built with the `"parsing"` feature.* + pub struct Cursor<'a> { + // The current entry which the `Cursor` is pointing at. + ptr: *const Entry, +@@ -201,13 +200,13 @@ impl<'a> Cursor<'a> { + Cursor::create(self.ptr.offset(1), self.scope) + } + +- /// If the cursor is looking at a `None`-delimited group, move it to look at +- /// the first token inside instead. If the group is empty, this will move ++ /// While the cursor is looking at a `None`-delimited group, move it to look ++ /// at the first token inside instead. If the group is empty, this will move + /// the cursor past the `None`-delimited group. + /// + /// WARNING: This mutates its argument. + fn ignore_none(&mut self) { +- if let Entry::Group(group, buf) = self.entry() { ++ while let Entry::Group(group, buf) = self.entry() { + if group.delimiter() == Delimiter::None { + // NOTE: We call `Cursor::create` here to make sure that + // situations where we should immediately exit the span after +@@ -215,13 +214,14 @@ impl<'a> Cursor<'a> { + unsafe { + *self = Cursor::create(&buf.data[0], self.scope); + } ++ } else { ++ break; + } + } + } + + /// Checks whether the cursor is currently pointing at the end of its valid + /// scope. +- #[inline] + pub fn eof(self) -> bool { + // We're at eof if we're at the end of our scope. + self.ptr == self.scope +@@ -342,6 +342,44 @@ impl<'a> Cursor<'a> { + Entry::End(..) => Span::call_site(), + } + } ++ ++ /// Skip over the next token without cloning it. Returns `None` if this ++ /// cursor points to eof. ++ /// ++ /// This method treats `'lifetimes` as a single token. ++ pub(crate) fn skip(self) -> Option> { ++ match self.entry() { ++ Entry::End(..) => None, ++ ++ // Treat lifetimes as a single tt for the purposes of 'skip'. ++ Entry::Punct(op) if op.as_char() == '\'' && op.spacing() == Spacing::Joint => { ++ let next = unsafe { self.bump() }; ++ match next.entry() { ++ Entry::Ident(_) => Some(unsafe { next.bump() }), ++ _ => Some(next), ++ } ++ } ++ _ => Some(unsafe { self.bump() }), ++ } ++ } ++} ++ ++impl<'a> Copy for Cursor<'a> {} ++ ++impl<'a> Clone for Cursor<'a> { ++ fn clone(&self) -> Self { ++ *self ++ } ++} ++ ++impl<'a> Eq for Cursor<'a> {} ++ ++impl<'a> PartialEq for Cursor<'a> { ++ fn eq(&self, other: &Self) -> bool { ++ let Cursor { ptr, scope, marker } = self; ++ let _ = marker; ++ *ptr == other.ptr && *scope == other.scope ++ } + } + + pub(crate) fn same_scope(a: Cursor, b: Cursor) -> bool { +diff --git a/third_party/rust/syn/src/custom_keyword.rs b/third_party/rust/syn/src/custom_keyword.rs +index 200e847..a33044a 100644 +--- a/third_party/rust/syn/src/custom_keyword.rs ++++ b/third_party/rust/syn/src/custom_keyword.rs +@@ -86,7 +86,7 @@ + /// } + /// } + /// ``` +-#[macro_export(local_inner_macros)] ++#[macro_export] + macro_rules! custom_keyword { + ($ident:ident) => { + #[allow(non_camel_case_types)] +@@ -95,7 +95,7 @@ macro_rules! custom_keyword { + } + + #[doc(hidden)] +- #[allow(non_snake_case)] ++ #[allow(dead_code, non_snake_case)] + pub fn $ident<__S: $crate::export::IntoSpans<[$crate::export::Span; 1]>>( + span: __S, + ) -> $ident { +@@ -112,10 +112,10 @@ macro_rules! custom_keyword { + } + } + +- impl_parse_for_custom_keyword!($ident); +- impl_to_tokens_for_custom_keyword!($ident); +- impl_clone_for_custom_keyword!($ident); +- impl_extra_traits_for_custom_keyword!($ident); ++ $crate::impl_parse_for_custom_keyword!($ident); ++ $crate::impl_to_tokens_for_custom_keyword!($ident); ++ $crate::impl_clone_for_custom_keyword!($ident); ++ $crate::impl_extra_traits_for_custom_keyword!($ident); + }; + } + +diff --git a/third_party/rust/syn/src/custom_punctuation.rs b/third_party/rust/syn/src/custom_punctuation.rs +index 29fa448..70dff42 100644 +--- a/third_party/rust/syn/src/custom_punctuation.rs ++++ b/third_party/rust/syn/src/custom_punctuation.rs +@@ -74,19 +74,19 @@ + /// let _: PathSegments = syn::parse_str(input).unwrap(); + /// } + /// ``` +-#[macro_export(local_inner_macros)] ++#[macro_export] + macro_rules! custom_punctuation { + ($ident:ident, $($tt:tt)+) => { + pub struct $ident { +- pub spans: custom_punctuation_repr!($($tt)+), ++ pub spans: $crate::custom_punctuation_repr!($($tt)+), + } + + #[doc(hidden)] +- #[allow(non_snake_case)] +- pub fn $ident<__S: $crate::export::IntoSpans>( ++ #[allow(dead_code, non_snake_case)] ++ pub fn $ident<__S: $crate::export::IntoSpans<$crate::custom_punctuation_repr!($($tt)+)>>( + spans: __S, + ) -> $ident { +- let _validate_len = 0 $(+ custom_punctuation_len!(strict, $tt))*; ++ let _validate_len = 0 $(+ $crate::custom_punctuation_len!(strict, $tt))*; + $ident { + spans: $crate::export::IntoSpans::into_spans(spans) + } +@@ -98,33 +98,33 @@ macro_rules! custom_punctuation { + } + } + +- impl_parse_for_custom_punctuation!($ident, $($tt)+); +- impl_to_tokens_for_custom_punctuation!($ident, $($tt)+); +- impl_clone_for_custom_punctuation!($ident, $($tt)+); +- impl_extra_traits_for_custom_punctuation!($ident, $($tt)+); ++ $crate::impl_parse_for_custom_punctuation!($ident, $($tt)+); ++ $crate::impl_to_tokens_for_custom_punctuation!($ident, $($tt)+); ++ $crate::impl_clone_for_custom_punctuation!($ident, $($tt)+); ++ $crate::impl_extra_traits_for_custom_punctuation!($ident, $($tt)+); + }; + } + + // Not public API. + #[cfg(feature = "parsing")] + #[doc(hidden)] +-#[macro_export(local_inner_macros)] ++#[macro_export] + macro_rules! impl_parse_for_custom_punctuation { + ($ident:ident, $($tt:tt)+) => { + impl $crate::token::CustomToken for $ident { + fn peek(cursor: $crate::buffer::Cursor) -> bool { +- $crate::token::parsing::peek_punct(cursor, stringify_punct!($($tt)+)) ++ $crate::token::parsing::peek_punct(cursor, $crate::stringify_punct!($($tt)+)) + } + + fn display() -> &'static $crate::export::str { +- custom_punctuation_concat!("`", stringify_punct!($($tt)+), "`") ++ concat!("`", $crate::stringify_punct!($($tt)+), "`") + } + } + + impl $crate::parse::Parse for $ident { + fn parse(input: $crate::parse::ParseStream) -> $crate::parse::Result<$ident> { +- let spans: custom_punctuation_repr!($($tt)+) = +- $crate::token::parsing::punct(input, stringify_punct!($($tt)+))?; ++ let spans: $crate::custom_punctuation_repr!($($tt)+) = ++ $crate::token::parsing::punct(input, $crate::stringify_punct!($($tt)+))?; + Ok($ident(spans)) + } + } +@@ -142,12 +142,12 @@ macro_rules! impl_parse_for_custom_punctuation { + // Not public API. + #[cfg(feature = "printing")] + #[doc(hidden)] +-#[macro_export(local_inner_macros)] ++#[macro_export] + macro_rules! impl_to_tokens_for_custom_punctuation { + ($ident:ident, $($tt:tt)+) => { + impl $crate::export::ToTokens for $ident { + fn to_tokens(&self, tokens: &mut $crate::export::TokenStream2) { +- $crate::token::printing::punct(stringify_punct!($($tt)+), &self.spans, tokens) ++ $crate::token::printing::punct($crate::stringify_punct!($($tt)+), &self.spans, tokens) + } + } + }; +@@ -221,16 +221,16 @@ macro_rules! impl_extra_traits_for_custom_punctuation { + + // Not public API. + #[doc(hidden)] +-#[macro_export(local_inner_macros)] ++#[macro_export] + macro_rules! custom_punctuation_repr { + ($($tt:tt)+) => { +- [$crate::export::Span; 0 $(+ custom_punctuation_len!(lenient, $tt))+] ++ [$crate::export::Span; 0 $(+ $crate::custom_punctuation_len!(lenient, $tt))+] + }; + } + + // Not public API. + #[doc(hidden)] +-#[macro_export(local_inner_macros)] ++#[macro_export] + #[rustfmt::skip] + macro_rules! custom_punctuation_len { + ($mode:ident, +) => { 1 }; +@@ -279,7 +279,7 @@ macro_rules! custom_punctuation_len { + ($mode:ident, -=) => { 2 }; + ($mode:ident, ~) => { 1 }; + (lenient, $tt:tt) => { 0 }; +- (strict, $tt:tt) => {{ custom_punctuation_unexpected!($tt); 0 }}; ++ (strict, $tt:tt) => {{ $crate::custom_punctuation_unexpected!($tt); 0 }}; + } + + // Not public API. +@@ -297,13 +297,3 @@ macro_rules! stringify_punct { + concat!($(stringify!($tt)),+) + }; + } +- +-// Not public API. +-// Without this, local_inner_macros breaks when looking for concat! +-#[doc(hidden)] +-#[macro_export] +-macro_rules! custom_punctuation_concat { +- ($($tt:tt)*) => { +- concat!($($tt)*) +- }; +-} +diff --git a/third_party/rust/syn/src/data.rs b/third_party/rust/syn/src/data.rs +index be43679..b217b8c 100644 +--- a/third_party/rust/syn/src/data.rs ++++ b/third_party/rust/syn/src/data.rs +@@ -4,7 +4,7 @@ use crate::punctuated::Punctuated; + ast_struct! { + /// An enum variant. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + pub struct Variant { + /// Attributes tagged on the variant. +@@ -24,7 +24,7 @@ ast_struct! { + ast_enum_of_structs! { + /// Data stored within an enum variant or struct. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + /// + /// # Syntax tree enum +@@ -52,7 +52,7 @@ ast_struct! { + /// Named fields of a struct or struct variant such as `Point { x: f64, + /// y: f64 }`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct FieldsNamed { + pub brace_token: token::Brace, +@@ -63,7 +63,7 @@ ast_struct! { + ast_struct! { + /// Unnamed fields of a tuple struct or tuple variant such as `Some(T)`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct FieldsUnnamed { + pub paren_token: token::Paren, +@@ -93,6 +93,24 @@ impl Fields { + Fields::Unnamed(f) => f.unnamed.iter_mut(), + } + } ++ ++ /// Returns the number of fields. ++ pub fn len(&self) -> usize { ++ match self { ++ Fields::Unit => 0, ++ Fields::Named(f) => f.named.len(), ++ Fields::Unnamed(f) => f.unnamed.len(), ++ } ++ } ++ ++ /// Returns `true` if there are zero fields. ++ pub fn is_empty(&self) -> bool { ++ match self { ++ Fields::Unit => true, ++ Fields::Named(f) => f.named.is_empty(), ++ Fields::Unnamed(f) => f.unnamed.is_empty(), ++ } ++ } + } + + impl IntoIterator for Fields { +@@ -129,7 +147,7 @@ impl<'a> IntoIterator for &'a mut Fields { + ast_struct! { + /// A field of a struct or enum variant. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + pub struct Field { + /// Attributes tagged on the field. +@@ -154,7 +172,7 @@ ast_enum_of_structs! { + /// The visibility level of an item: inherited or `pub` or + /// `pub(restricted)`. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` + /// feature.* + /// + /// # Syntax tree enum +@@ -184,7 +202,7 @@ ast_enum_of_structs! { + ast_struct! { + /// A public visibility level: `pub`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct VisPublic { + pub pub_token: Token![pub], +@@ -194,7 +212,7 @@ ast_struct! { + ast_struct! { + /// A crate-level visibility: `crate`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct VisCrate { + pub crate_token: Token![crate], +@@ -205,7 +223,7 @@ ast_struct! { + /// A visibility level restricted to some path: `pub(self)` or + /// `pub(super)` or `pub(crate)` or `pub(in some::module)`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct VisRestricted { + pub pub_token: Token![pub], +@@ -220,12 +238,15 @@ pub mod parsing { + use super::*; + + use crate::ext::IdentExt; ++ use crate::parse::discouraged::Speculative; + use crate::parse::{Parse, ParseStream, Result}; + + impl Parse for Variant { + fn parse(input: ParseStream) -> Result { ++ let attrs = input.call(Attribute::parse_outer)?; ++ let _visibility: Visibility = input.parse()?; + Ok(Variant { +- attrs: input.call(Attribute::parse_outer)?, ++ attrs, + ident: input.parse()?, + fields: { + if input.peek(token::Brace) { +@@ -295,6 +316,17 @@ pub mod parsing { + + impl Parse for Visibility { + fn parse(input: ParseStream) -> Result { ++ // Recognize an empty None-delimited group, as produced by a $:vis ++ // matcher that matched no tokens. ++ if input.peek(token::Group) { ++ let ahead = input.fork(); ++ let group = crate::group::parse_group(&ahead)?; ++ if group.content.is_empty() { ++ input.advance_to(&ahead); ++ return Ok(Visibility::Inherited); ++ } ++ } ++ + if input.peek(Token![pub]) { + Self::parse_pub(input) + } else if input.peek(Token![crate]) { +@@ -310,27 +342,39 @@ pub mod parsing { + let pub_token = input.parse::()?; + + if input.peek(token::Paren) { +- // TODO: optimize using advance_to + let ahead = input.fork(); +- let mut content; +- parenthesized!(content in ahead); + ++ let content; ++ let paren_token = parenthesized!(content in ahead); + if content.peek(Token![crate]) + || content.peek(Token![self]) + || content.peek(Token![super]) + { +- return Ok(Visibility::Restricted(VisRestricted { +- pub_token, +- paren_token: parenthesized!(content in input), +- in_token: None, +- path: Box::new(Path::from(content.call(Ident::parse_any)?)), +- })); ++ let path = content.call(Ident::parse_any)?; ++ ++ // Ensure there are no additional tokens within `content`. ++ // Without explicitly checking, we may misinterpret a tuple ++ // field as a restricted visibility, causing a parse error. ++ // e.g. `pub (crate::A, crate::B)` (Issue #720). ++ if content.is_empty() { ++ input.advance_to(&ahead); ++ return Ok(Visibility::Restricted(VisRestricted { ++ pub_token, ++ paren_token, ++ in_token: None, ++ path: Box::new(Path::from(path)), ++ })); ++ } + } else if content.peek(Token![in]) { ++ let in_token: Token![in] = content.parse()?; ++ let path = content.call(Path::parse_mod_style)?; ++ ++ input.advance_to(&ahead); + return Ok(Visibility::Restricted(VisRestricted { + pub_token, +- paren_token: parenthesized!(content in input), +- in_token: Some(content.parse()?), +- path: Box::new(content.call(Path::parse_mod_style)?), ++ paren_token, ++ in_token: Some(in_token), ++ path: Box::new(path), + })); + } + } +@@ -347,6 +391,14 @@ pub mod parsing { + })) + } + } ++ ++ #[cfg(feature = "full")] ++ pub(crate) fn is_some(&self) -> bool { ++ match self { ++ Visibility::Inherited => false, ++ _ => true, ++ } ++ } + } + } + +diff --git a/third_party/rust/syn/src/derive.rs b/third_party/rust/syn/src/derive.rs +index 8cb9cf7..3fa9d89 100644 +--- a/third_party/rust/syn/src/derive.rs ++++ b/third_party/rust/syn/src/derive.rs +@@ -4,7 +4,7 @@ use crate::punctuated::Punctuated; + ast_struct! { + /// Data structure sent to a `proc_macro_derive` macro. + /// +- /// *This type is available if Syn is built with the `"derive"` feature.* ++ /// *This type is available only if Syn is built with the `"derive"` feature.* + pub struct DeriveInput { + /// Attributes tagged on the whole struct or enum. + pub attrs: Vec, +@@ -26,7 +26,7 @@ ast_struct! { + ast_enum_of_structs! { + /// The storage of a struct, enum or union data structure. + /// +- /// *This type is available if Syn is built with the `"derive"` feature.* ++ /// *This type is available only if Syn is built with the `"derive"` feature.* + /// + /// # Syntax tree enum + /// +@@ -53,7 +53,7 @@ ast_enum_of_structs! { + ast_struct! { + /// A struct input to a `proc_macro_derive` macro. + /// +- /// *This type is available if Syn is built with the `"derive"` ++ /// *This type is available only if Syn is built with the `"derive"` + /// feature.* + pub struct DataStruct { + pub struct_token: Token![struct], +@@ -65,7 +65,7 @@ ast_struct! { + ast_struct! { + /// An enum input to a `proc_macro_derive` macro. + /// +- /// *This type is available if Syn is built with the `"derive"` ++ /// *This type is available only if Syn is built with the `"derive"` + /// feature.* + pub struct DataEnum { + pub enum_token: Token![enum], +@@ -77,7 +77,7 @@ ast_struct! { + ast_struct! { + /// An untagged union input to a `proc_macro_derive` macro. + /// +- /// *This type is available if Syn is built with the `"derive"` ++ /// *This type is available only if Syn is built with the `"derive"` + /// feature.* + pub struct DataUnion { + pub union_token: Token![union], +diff --git a/third_party/rust/syn/src/discouraged.rs b/third_party/rust/syn/src/discouraged.rs +index 4d9ff93..76c9fce 100644 +--- a/third_party/rust/syn/src/discouraged.rs ++++ b/third_party/rust/syn/src/discouraged.rs +@@ -16,7 +16,7 @@ pub trait Speculative { + /// syntax of the form `A* B*` for arbitrary syntax `A` and `B`. The problem + /// is that when the fork fails to parse an `A`, it's impossible to tell + /// whether that was because of a syntax error and the user meant to provide +- /// an `A`, or that the `A`s are finished and its time to start parsing ++ /// an `A`, or that the `A`s are finished and it's time to start parsing + /// `B`s. Use with care. + /// + /// Also note that if `A` is a subset of `B`, `A* B*` can be parsed by +@@ -72,7 +72,6 @@ pub trait Speculative { + /// || input.peek(Token![self]) + /// || input.peek(Token![Self]) + /// || input.peek(Token![crate]) +- /// || input.peek(Token![extern]) + /// { + /// let ident = input.call(Ident::parse_any)?; + /// return Ok(PathSegment::from(ident)); +@@ -164,6 +163,30 @@ impl<'a> Speculative for ParseBuffer<'a> { + panic!("Fork was not derived from the advancing parse stream"); + } + ++ let (self_unexp, self_sp) = inner_unexpected(self); ++ let (fork_unexp, fork_sp) = inner_unexpected(fork); ++ if !Rc::ptr_eq(&self_unexp, &fork_unexp) { ++ match (fork_sp, self_sp) { ++ // Unexpected set on the fork, but not on `self`, copy it over. ++ (Some(span), None) => { ++ self_unexp.set(Unexpected::Some(span)); ++ } ++ // Unexpected unset. Use chain to propagate errors from fork. ++ (None, None) => { ++ fork_unexp.set(Unexpected::Chain(self_unexp)); ++ ++ // Ensure toplevel 'unexpected' tokens from the fork don't ++ // bubble up the chain by replacing the root `unexpected` ++ // pointer, only 'unexpected' tokens from existing group ++ // parsers should bubble. ++ fork.unexpected ++ .set(Some(Rc::new(Cell::new(Unexpected::None)))); ++ } ++ // Unexpected has been set on `self`. No changes needed. ++ (_, Some(_)) => {} ++ } ++ } ++ + // See comment on `cell` in the struct definition. + self.cell + .set(unsafe { mem::transmute::>(fork.cursor()) }) +diff --git a/third_party/rust/syn/src/error.rs b/third_party/rust/syn/src/error.rs +index 146d652..dba34f9 100644 +--- a/third_party/rust/syn/src/error.rs ++++ b/third_party/rust/syn/src/error.rs +@@ -1,4 +1,3 @@ +-use std; + use std::fmt::{self, Debug, Display}; + use std::iter::FromIterator; + use std::slice; +@@ -32,8 +31,8 @@ pub type Result = std::result::Result; + /// conversion to `compile_error!` automatically. + /// + /// ``` +-/// extern crate proc_macro; +-/// ++/// # extern crate proc_macro; ++/// # + /// use proc_macro::TokenStream; + /// use syn::{parse_macro_input, AttributeArgs, ItemFn}; + /// +@@ -82,7 +81,6 @@ pub type Result = std::result::Result; + /// # } + /// # } + /// ``` +-#[derive(Clone)] + pub struct Error { + messages: Vec, + } +@@ -250,6 +248,17 @@ pub fn new_at(scope: Span, cursor: Cursor, message: T) -> Error { + } + } + ++#[cfg(all(feature = "parsing", any(feature = "full", feature = "derive")))] ++pub fn new2(start: Span, end: Span, message: T) -> Error { ++ Error { ++ messages: vec![ErrorMessage { ++ start_span: ThreadBound::new(start), ++ end_span: ThreadBound::new(end), ++ message: message.to_string(), ++ }], ++ } ++} ++ + impl Debug for Error { + fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { + if self.messages.len() == 1 { +@@ -278,6 +287,14 @@ impl Display for Error { + } + } + ++impl Clone for Error { ++ fn clone(&self) -> Self { ++ Error { ++ messages: self.messages.clone(), ++ } ++ } ++} ++ + impl Clone for ErrorMessage { + fn clone(&self) -> Self { + let start = self +@@ -355,3 +372,11 @@ impl<'a> Iterator for Iter<'a> { + }) + } + } ++ ++impl Extend for Error { ++ fn extend>(&mut self, iter: T) { ++ for err in iter { ++ self.combine(err); ++ } ++ } ++} +diff --git a/third_party/rust/syn/src/expr.rs b/third_party/rust/syn/src/expr.rs +index 2874a46..2fe0e0b 100644 +--- a/third_party/rust/syn/src/expr.rs ++++ b/third_party/rust/syn/src/expr.rs +@@ -1,18 +1,21 @@ + use super::*; + use crate::punctuated::Punctuated; +-#[cfg(feature = "extra-traits")] +-use crate::tt::TokenStreamHelper; ++#[cfg(feature = "full")] ++use crate::reserved::Reserved; + use proc_macro2::{Span, TokenStream}; +-#[cfg(feature = "extra-traits")] ++#[cfg(feature = "printing")] ++use quote::IdentFragment; ++#[cfg(feature = "printing")] ++use std::fmt::{self, Display}; + use std::hash::{Hash, Hasher}; +-#[cfg(all(feature = "parsing", feature = "full"))] ++#[cfg(feature = "parsing")] + use std::mem; + + ast_enum_of_structs! { + /// A Rust expression. + /// +- /// *This type is available if Syn is built with the `"derive"` or `"full"` +- /// feature.* ++ /// *This type is available only if Syn is built with the `"derive"` or `"full"` ++ /// feature, but most of the variants are not available unless "full" is enabled.* + /// + /// # Syntax tree enums + /// +@@ -83,7 +86,7 @@ ast_enum_of_structs! { + /// A sign that you may not be choosing the right variable names is if you + /// see names getting repeated in your code, like accessing + /// `receiver.receiver` or `pat.pat` or `cond.cond`. +- pub enum Expr #manual_extra_traits { ++ pub enum Expr { + /// A slice literal expression: `[a, b, c, d]`. + Array(ExprArray), + +@@ -228,7 +231,7 @@ ast_enum_of_structs! { + ast_struct! { + /// A slice literal expression: `[a, b, c, d]`. + /// +- /// *This type is available if Syn is built with the `"full"` feature.* ++ /// *This type is available only if Syn is built with the `"full"` feature.* + pub struct ExprArray #full { + pub attrs: Vec, + pub bracket_token: token::Bracket, +@@ -239,7 +242,7 @@ ast_struct! { + ast_struct! { + /// An assignment expression: `a = compute()`. + /// +- /// *This type is available if Syn is built with the `"full"` feature.* ++ /// *This type is available only if Syn is built with the `"full"` feature.* + pub struct ExprAssign #full { + pub attrs: Vec, + pub left: Box, +@@ -251,7 +254,7 @@ ast_struct! { + ast_struct! { + /// A compound assignment expression: `counter += 1`. + /// +- /// *This type is available if Syn is built with the `"full"` feature.* ++ /// *This type is available only if Syn is built with the `"full"` feature.* + pub struct ExprAssignOp #full { + pub attrs: Vec, + pub left: Box, +@@ -263,7 +266,7 @@ ast_struct! { + ast_struct! { + /// An async block: `async { ... }`. + /// +- /// *This type is available if Syn is built with the `"full"` feature.* ++ /// *This type is available only if Syn is built with the `"full"` feature.* + pub struct ExprAsync #full { + pub attrs: Vec, + pub async_token: Token![async], +@@ -275,7 +278,7 @@ ast_struct! { + ast_struct! { + /// An await expression: `fut.await`. + /// +- /// *This type is available if Syn is built with the `"full"` feature.* ++ /// *This type is available only if Syn is built with the `"full"` feature.* + pub struct ExprAwait #full { + pub attrs: Vec, + pub base: Box, +@@ -287,7 +290,7 @@ ast_struct! { + ast_struct! { + /// A binary operation: `a + b`, `a * b`. + /// +- /// *This type is available if Syn is built with the `"derive"` or ++ /// *This type is available only if Syn is built with the `"derive"` or + /// `"full"` feature.* + pub struct ExprBinary { + pub attrs: Vec, +@@ -300,7 +303,7 @@ ast_struct! { + ast_struct! { + /// A blocked scope: `{ ... }`. + /// +- /// *This type is available if Syn is built with the `"full"` feature.* ++ /// *This type is available only if Syn is built with the `"full"` feature.* + pub struct ExprBlock #full { + pub attrs: Vec, + pub label: Option