Vu :
le recours en matière de droit public formé par A._ contre un arrêt de la Cour de droit administratif et public du Tribunal cantonal vaudois confirmant le permis de construire délivré par la Municipalité de Blonay à B.B._ et C.B._;
les observations de la Municipalité de Blonay (représentée par un avocat) et des intimés B.B._ et C.B._ (agissant en personne) qui concluent au rejet du recours;
la détermination de l'Office fédéral de l'environnement qui estime que la dérogation accordée par le canton est conforme à la législation forestière;
la suspension de la procédure à la requête de la recourante par ordonnance du 29 mai 2019, reconduite en dernier lieu jusqu'au 4 novembre 2019;
la lettre du 29 octobre 2019 par laquelle la recourante fait savoir qu'elle a acquis la parcelle des constructeurs, de sorte que la cause aurait perdu son objet;
les déterminations de la recourante et de la Municipalité sur la question des frais et dépens, les intimés ne s'étant pas prononcés.

Considérant :
qu'il n'est pas contesté que la vente, par les constructeurs, de leur parcelle à la recourante prive la procédure de son objet;
qu'il y a donc lieu de le constater et de rayer la cause du rôle;
que subsiste ainsi la question des frais et dépens;
que selon l'<ref-law> (applicable en vertu du renvoi de l'<ref-law>), le tribunal (soit le juge instructeur en vertu de l'<ref-law>) statue sur les frais du procès par une décision sommairement motivée, en tenant compte de l'état de choses existant avant le fait qui met fin au litige;
que l'autorité de céans doit se fonder en premier lieu sur l'issue probable qu'aurait connue la procédure, après un examen sommaire et succinct du dossier (<ref-ruling> consid. 8.2);
que lorsqu'un tel pronostic sommaire n'est pas possible, il convient d'appliquer les autres principes généraux, qui conduisent généralement à faire supporter les frais par la partie ayant provoqué la procédure devenue sans objet, ou par la partie répondant des motifs qui privent d'objet ladite procédure (<ref-ruling> consid. 4a p. 494), le juge disposant d'un vaste pouvoir d'appréciation en la matière (ordonnance 4A_265/2019 du 25 septembre 2019);
que la recourante conteste devoir assumer les frais et dépens mis à sa charge par l'instance cantonale et réclame des dépens pour la présente procédure, aucun frais ne devant être mis à sa charge;
que la Municipalité conclut à l'allocation de dépens en sa faveur et à la mise des frais à la charge de la recourante ou des intimés, la répartition des frais et dépens pour la procédure cantonale devant rester inchangée;
que si la cause est rayée du rôle après disparition de son objet, il est évidemment impossible de modifier l'arrêt attaqué, tant sur le fond que sur la question des frais et dépens;
que pour ce qui concerne la procédure au Tribunal fédéral, il y a lieu de relever que l'issue du recours était pour le moins incertaine, les griefs relatifs au droit forestier ayant en particulier été réfutés par l'office fédéral compétent;
qu'il n'y a dès lors pas lieu d'allouer des dépens à la recourante, ni aux intimés (qui ont d'ailleurs procédé en personne), ni à la commune, conformément à l'<ref-law>;
que dans la mesure où la perte de l'objet du recours résulte d'une démarche commune entre la recourante et les intimés, il y a lieu de répartir les frais de la procédure par moitié entre chacun d'eux.

Par ces motifs, le Président ordonne :
1.
Le recours est devenu sans objet et la cause 1C_14/2019 est rayée du rôle.
2.
Les frais judiciaires, arrêtés à 2'000 fr., sont mis pour moitié (1'000 fr.) à la charge de la recourante et pour moitié (1'000 fr.) à la charge solidaire des intimés B.B._ et C.B._.
3.
Il n'est pas alloué de dépens.
4.
La présente ordonnance est communiquée aux parties, à la Municipalité de Blonay, à la Direction générale de l'environnement du canton de Vaud, au Tribunal cantonal du canton de Vaud, Cour de droit administratif et public, à l'Office fédéral du développement territorial et à l'Office fédéral de l'environnement.
Lausanne, le 25 novembre 2019
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Chaix
Le Greffier : Kurz