Faits :
A.
La commune neuchâteloise de Milvignes a ouvert en 2013 une procédure d'adjudication d'un marché public portant sur la collecte et le transport des déchets urbains combustibles. Les sociétés X._ Sàrl et Z._ SA, ont l'une et l'autre présenté une offre. Cette entreprise-ci a obtenu l'adjudication le 14 novembre 2013.
Au mois de décembre 2013, la commune a adressé une circulaire aux commerces et entreprises présents sur le territoire communal. En substance, dès 2014, les entreprises dotées de conteneurs à puce devaient faire évacuer leurs déchets combustibles par un transporteur de leur choix, agréé par le centre régional de traitement des déchets.
X._ Sàrl s'est fait remettre la liste des entreprises dotées de conteneurs à puce. Elle leur a adressé une missive ainsi rédigée:
Dans le cadre d'un appel d'offres de la commune de Milvignes, nous sommes heureux d'avoir été retenus afin de pouvoir vous offrir nos services. En effet, suite à une modification de l'arrêté communal sur la gestion des déchets, la commune vous libère de toute obligation contractuelle prise jusqu'à présent en matière de transport et ceci dès le 1er janvier 2014. Vous êtes donc amenés à trouver un nouveau transporteur pour la collecte de vos containers au poids à partir de cette date.
B.
Le 19 décembre 2013, Z._ SA, a ouvert action contre X._ Sàrl devant le Tribunal cantonal du canton de Neuchâtel. Elle se plaignait de concurrence déloyale. L'autorité devait constater le caractère illicite de la lettre adressée par la défenderesse aux entreprises, réserver une éventuelle action en dommages-intérêts et réparation du tort moral, ordonner la publication du jugement et ordonner à la défenderesse de communiquer ce prononcé à tous les destinataires de sa lettre.
La défenderesse a conclu au rejet de l'action.
La Cour civile du Tribunal cantonal s'est prononcée le 27 novembre 2014. Elle a constaté le caractère illicite des termes « dans le cadre d'un appel d'offres de la commune de Milvignes, nous sommes heureux d'avoir été retenus » présents dans la lettre diffusée par la défenderesse. Elle a ordonné à cette partie de communiquer ce jugement à tous les destinataires de la lettre. Pour le surplus, la Cour a rejeté l'action.
C.
Agissant par la voie du recours en matière civile, la défenderesse requiert le Tribunal fédéral de réformer le jugement en ce sens que l'action soit entièrement rejetée.
Une demande d'effet suspensif est jointe au recours.
La demanderesse conclut au rejet du recours.
Considérant en droit :
1.
En règle générale, la recevabilité du recours en matière civile suppose une valeur litigieuse de 30'000 fr. au moins (art. 74 al. 1 let. b LTF), et l'autorité cantonale supérieure doit avoir statué sur recours (art. 75 al. 2 LTF).
Il ressort des art. 5 al. 1 let. d CPC et 75 al. 2 let. a LTF que lorsque la valeur litigieuse excède 30'000 fr., les litiges relevant de la loi fédérale contre la concurrence déloyale (LCD) doivent être résolus par un tribunal cantonal supérieur statuant en instance cantonale unique, alors qu'en dessous de cette valeur, le litige est soumis au régime ordinaire, avec cette conséquence que le recours en matière civile n'est en principe pas recevable.
En l'espèce, la Cour civile a été saisie et elle a statué en instance cantonale unique. Elle a admis une valeur litigieuse supérieure à 30'000 fr. sur la base d'une allégation de la demanderesse, laquelle faisait état, par suite de l'acte de concurrence déloyale imputé à l'adverse partie, d'un dommage annuel compris entre 60'000 et 100'000 francs.
Il est douteux que la valeur litigieuse soit réellement supérieure à 30'000 francs. Il n'est toutefois pas nécessaire de s'attarder à l'appréciation en principe nécessaire selon l'art. 51 al. 2 LTF, car le recours en matière civile est de toute manière voué au rejet.
2.
La Cour civile retient que la phrase « dans le cadre d'un appel d'offres de la commune de Milvignes, nous sommes heureux d'avoir été retenus », présente dans la lettre diffusée par la défenderesse, est une indication fallacieuse aux termes de l'art. 3 al. 1 let. b LCD parce que l'auteur de cet écrit n'a précisément pas été retenu à l'issue de la procédure d'adjudication ouverte par la commune.
A l'encontre de ce jugement, la défenderesse se plaint d'une constatation manifestement incomplète des faits. Elle affirme que la commune de Milvignes lui a communiqué par courriel un deuxième appel d'offres, non public mais « de gré à gré », portant sur le ramassage des déchets des entreprises dotées de conteneurs à puce. Les termes de sa propre lettre aux entreprises se rapportaient prétendument à cet autre appel d'offres. Elle expose avoir allégué ledit appel d'offres en instance cantonale, dans son mémoire de réponse, et avoir simultanément produit les documents propres à en apporter la preuve.
De la circulaire que la commune a adressée aux commerces et entreprises présents sur son territoire, il ressort que cette collectivité publique ne met à disposition aucun service de ramassage des déchets combustibles à l'intention des entreprises dotées de conteneurs à puce, et que ces entreprises doivent au contraire traiter avec un transporteur de leur choix. La défenderesse fait ainsi état d'un service de ramassage qui n'existe de toute évidence pas, et qui ne saurait donc avoir été l'objet d'une procédure de mise en concurrence conduite par l'autorité communale. La défenderesse avait postulé sans succès pour l'adjudication du service de ramassage communal destiné aux particuliers et aux entreprises non dotées de conteneurs à puce; c'est pourquoi elle a peut-être reçu des encouragements à présenter ses offres aux entreprises équipées de ces conteneurs et susceptibles de lui confier individuellement, de gré à gré, l'évacuation de leurs déchets; en revanche, il n'était certainement pas question d'une sélection officielle des transporteurs habilités à pratiquer cette activité. Les allégations invoquées apparaissent d'emblée inconsistantes et on ne voit pas que la Cour civile, dans son jugement, ait omis des constatations propres à influencer l'issue de la cause.
3.
Dans la mesure où il est recevable, le recours se révèle privé de fondement et doit être rejeté. Le présent arrêt met fin à la cause et il n'est donc pas nécessaire de statuer sur la demande d'effet suspensif. A titre de partie qui succombe, la défenderesse doit acquitter l'émolument à percevoir par le Tribunal fédéral et les dépens auxquels l'autre partie peut prétendre.
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté, dans la mesure où il est recevable.
2.
La défenderesse acquittera un émolument judiciaire de 4'000 francs.
3.
La défenderesse versera une indemnité de 5'000 fr. à la demanderesse, à titre de dépens.
4.
Le présent arrêt est communiqué aux parties et au Tribunal cantonal du canton de Neuchâtel.
Lausanne, le 12 mars 2015
Au nom de la Ire Cour de droit civil
du Tribunal fédéral suisse
La présidente : Kiss
Le greffier : Thélin