From 382391544a2213b817d35f4719687f2c8c06efb2 Mon Sep 17 00:00:00 2001
From: Kipp Cannon <kipp.cannon@ligo.org>
Date: Tue, 5 Feb 2019 11:05:31 +0900
Subject: [PATCH] gstlal:  port from glue.ligolw to ligo.lw

- gstlal-calibration is not touched
---
 gstlal-burst/bin/gstlal_cs_triggergen         |  8 +++---
 gstlal-burst/bin/gstlal_excesspower_trigvis   | 16 ++++++------
 gstlal-burst/python/excesspower/__init__.py   |  2 +-
 gstlal-burst/python/excesspower/filters.py    |  2 +-
 gstlal-burst/python/excesspower/parts.py      | 12 ++++-----
 .../python/fxtools/feature_extractor.py       |  4 +--
 .../python/fxtools/multichannel_datasource.py |  4 +--
 .../python/fxtools/sngltriggertable.py        |  3 +--
 gstlal-burst/python/snglbursttable.c          |  4 +--
 gstlal-burst/python/snglbursttable.py         | 22 +---------------
 gstlal-inspiral/bin/gstlal_bank_splitter      |  8 +++---
 ...tlal_compute_far_from_snr_chisq_histograms | 10 +++----
 gstlal-inspiral/bin/gstlal_iir_bank           | 15 ++++++-----
 gstlal-inspiral/bin/gstlal_iir_inspiral       | 12 ++++-----
 gstlal-inspiral/bin/gstlal_inspiral           |  8 +++---
 .../bin/gstlal_inspiral_add_template_ids      |  6 ++---
 .../bin/gstlal_inspiral_calc_likelihood       |  8 +++---
 .../bin/gstlal_inspiral_calc_rank_pdfs        |  6 ++---
 .../bin/gstlal_inspiral_coinc_extractor       |  5 ++--
 .../gstlal_inspiral_create_prior_diststats    | 12 ++++-----
 .../bin/gstlal_inspiral_iir_bank_pipe         |  2 +-
 .../bin/gstlal_inspiral_injection_snr         |  6 ++---
 ...gstlal_inspiral_lvalert_background_plotter |  4 +--
 ...lal_inspiral_lvalert_generic_plot_uploader |  2 +-
 .../bin/gstlal_inspiral_lvalert_omegascan     |  8 +++---
 ...lal_inspiral_lvalert_pastro_rate_posterior | 10 +++----
 .../bin/gstlal_inspiral_lvalert_psd_plotter   |  2 +-
 .../bin/gstlal_inspiral_lvalert_sim_equiv     | 10 +++----
 .../bin/gstlal_inspiral_lvalert_sngls_plotter |  8 +++---
 ...lal_inspiral_lvalert_snrtimeseries_plotter | 10 +++----
 .../bin/gstlal_inspiral_make_snr_pdf          |  6 ++---
 .../gstlal_inspiral_marginalize_likelihood    |  6 ++---
 .../bin/gstlal_inspiral_mass_model            |  8 +++---
 gstlal-inspiral/bin/gstlal_inspiral_pipe      |  8 +++---
 .../bin/gstlal_inspiral_plot_background       |  4 +--
 .../bin/gstlal_inspiral_plot_banks            |  6 ++---
 .../bin/gstlal_inspiral_plot_sensitivity      | 10 +++----
 .../bin/gstlal_inspiral_plot_svd_bank         |  2 +-
 .../bin/gstlal_inspiral_plotsummary           |  6 ++---
 .../bin/gstlal_inspiral_rate_posterior        | 10 +++----
 ...al_inspiral_recalc_likelihood_with_zerolag |  8 +++---
 .../bin/gstlal_inspiral_recompute_online_far  |  4 +--
 ...inspiral_recompute_online_far_from_gracedb |  6 ++---
 .../bin/gstlal_inspiral_reset_likelihood      |  6 ++---
 .../bin/gstlal_inspiral_split_injections      |  8 +++---
 .../bin/gstlal_ll_inspiral_plot_sensitivity   |  6 ++---
 gstlal-inspiral/bin/gstlal_svd_bank           |  2 +-
 gstlal-inspiral/python/cbc_template_iir.py    |  2 +-
 gstlal-inspiral/python/far.py                 | 10 +++----
 gstlal-inspiral/python/imr_utils.py           | 22 ++++++++--------
 gstlal-inspiral/python/inspiral.py            | 26 +++++++++----------
 gstlal-inspiral/python/inspiral_pipe.py       |  4 +--
 gstlal-inspiral/python/lloidhandler.py        |  8 +++---
 gstlal-inspiral/python/lloidplots.py          |  2 +-
 gstlal-inspiral/python/llweb.py               |  4 +--
 gstlal-inspiral/python/lvalert_helper.py      | 10 +++----
 gstlal-inspiral/python/plotsegments.py        | 14 +++++-----
 gstlal-inspiral/python/plotsensitivity.py     |  2 +-
 gstlal-inspiral/python/snglinspiraltable.c    |  4 +--
 gstlal-inspiral/python/snglinspiraltable.py   | 22 +---------------
 gstlal-inspiral/python/spiirparts.py          | 10 +++----
 .../python/stats/horizonhistory.py            |  4 +--
 .../python/stats/inspiral_extrinsics.py       | 10 +++----
 gstlal-inspiral/python/stats/inspiral_lr.py   | 12 ++++-----
 gstlal-inspiral/python/stats/trigger_rate.py  |  4 +--
 gstlal-inspiral/python/streamthinca.py        |  4 +--
 gstlal-inspiral/python/svd_bank.py            | 14 +++++-----
 .../share/post_O2/lauras_txt_files_to_xml     |  8 +++---
 .../gstlal_inspiral_recalc_rank_pdfs          |  2 +-
 gstlal-ugly/bin/gstlal_cache_to_segments      |  8 +++---
 gstlal-ugly/bin/gstlal_glitch_population      |  8 +++---
 gstlal-ugly/bin/gstlal_harmonic_mean_psd      |  2 +-
 gstlal-ugly/bin/gstlal_inj_frames             | 10 +++----
 gstlal-ugly/bin/gstlal_injsplitter            |  8 +++---
 gstlal-ugly/bin/gstlal_inspiral_bankviz       | 10 +++----
 .../bin/gstlal_inspiral_check_livetimes       | 10 +++----
 .../bin/gstlal_inspiral_plot_efficiency       |  2 +-
 gstlal-ugly/bin/gstlal_inspiral_treebank      | 12 ++++-----
 gstlal-ugly/bin/gstlal_inspiral_treebank_dag  | 10 +++----
 .../bin/gstlal_ll_inspiral_daily_summary_page |  8 +++---
 gstlal-ugly/bin/gstlal_median_of_psds         |  2 +-
 gstlal-ugly/bin/gstlal_ninja_median_of_psds   |  2 +-
 .../bin/gstlal_ninja_smooth_reference_psd     |  2 +-
 gstlal-ugly/bin/gstlal_segments_operations    | 10 +++----
 gstlal-ugly/bin/gstlal_segments_trim          | 10 +++----
 gstlal-ugly/bin/gstlal_shift_frames           |  4 +--
 gstlal-ugly/bin/gstlal_vetoes_from_burst_inj  | 14 +++++-----
 .../bin/gstlal_vetoes_from_burst_triggers     | 14 +++++-----
 gstlal-ugly/python/metric.py                  |  2 +-
 gstlal/bin/gstlal_asd_txt_from_psd_xml        |  2 +-
 gstlal/bin/gstlal_fake_frames                 |  2 +-
 gstlal/bin/gstlal_ligo_data_find_check        |  6 ++---
 gstlal/bin/gstlal_play                        |  6 ++---
 gstlal/bin/gstlal_plot_psd                    |  2 +-
 gstlal/bin/gstlal_plot_psd_horizon            |  2 +-
 gstlal/bin/gstlal_psd_polyfit                 |  2 +-
 gstlal/python/datasource.py                   |  4 +--
 gstlal/python/plotpsd.py                      |  2 +-
 gstlal/python/reference_psd.py                |  2 +-
 gstlal/python/simulation.py                   |  6 ++---
 100 files changed, 338 insertions(+), 379 deletions(-)

diff --git a/gstlal-burst/bin/gstlal_cs_triggergen b/gstlal-burst/bin/gstlal_cs_triggergen
index 659366d2a6..8d2b3a9ca8 100755
--- a/gstlal-burst/bin/gstlal_cs_triggergen
+++ b/gstlal-burst/bin/gstlal_cs_triggergen
@@ -17,10 +17,10 @@ from gstlal import snglbursttable
 from lal import LIGOTimeGPS
 from optparse import OptionParser
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 
 import lal
 import lalsimulation
diff --git a/gstlal-burst/bin/gstlal_excesspower_trigvis b/gstlal-burst/bin/gstlal_excesspower_trigvis
index f8fd6788fc..85b7953d93 100755
--- a/gstlal-burst/bin/gstlal_excesspower_trigvis
+++ b/gstlal-burst/bin/gstlal_excesspower_trigvis
@@ -41,10 +41,10 @@ import math
 
 import itertools
 
-from glue.ligolw import utils
-from glue.ligolw import lsctables
-from glue.ligolw import table
-from glue.ligolw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw import lsctables
+from ligo.lw import table
+from ligo.lw import ligolw
 lsctables.use_in(ligolw.LIGOLWContentHandler)
 from ligo import segments
 from lal import LIGOTimeGPS
@@ -83,14 +83,14 @@ def get_sim_inspirals_from_file(filename):
 	"""
 	Get a sim inspiral table from the file name."
 	"""
-	xmldoc = utils.load_filename(filename)
+	xmldoc = ligolw_utils.load_filename(filename)
 	return table.get_table( xmldoc, lsctables.SimInspiralTable.tableName )
 
 def get_sim_burst_from_file( filename ):
 	"""
 	Get a sim burst table from the file name."
 	"""
-	xmldoc = utils.load_filename(filename)
+	xmldoc = ligolw_utils.load_filename(filename)
 	return table.get_table( xmldoc, lsctables.SimBurstTable.tableName )
 	
 def plot_wnb( sim_burst ):
@@ -189,7 +189,7 @@ analyzed_segments = segments.segmentlistdict()
 search_map = defaultdict(list)
 event_map = defaultdict(list)
 for arg in args:
-	xmldoc = utils.load_filename( arg )
+	xmldoc = ligolw_utils.load_filename( arg )
 
 	for tbl in lsctables.getTablesByType( xmldoc, lsctables.SnglBurstTable ):
 		for sb in tbl:
@@ -247,7 +247,7 @@ segs = segments.segmentlistdict()
 searches = lsctables.SearchSummaryTable()
 for arg in args:
 
-	xmldoc = utils.load_filename( arg )
+	xmldoc = ligolw_utils.load_filename( arg )
 	def_id_pair = []
 	if segment_defs is not None:
 		segtables = lsctables.SegmentDefTable()
diff --git a/gstlal-burst/python/excesspower/__init__.py b/gstlal-burst/python/excesspower/__init__.py
index df2a7c6bff..bde0f286d1 100644
--- a/gstlal-burst/python/excesspower/__init__.py
+++ b/gstlal-burst/python/excesspower/__init__.py
@@ -25,7 +25,7 @@ import ConfigParser
 from ConfigParser import SafeConfigParser
 
 import lal
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 
 from parts import EPHandler
 
diff --git a/gstlal-burst/python/excesspower/filters.py b/gstlal-burst/python/excesspower/filters.py
index 6315992889..862e0dbcb3 100644
--- a/gstlal-burst/python/excesspower/filters.py
+++ b/gstlal-burst/python/excesspower/filters.py
@@ -25,7 +25,7 @@ from pylal import lalburst
 from pylal.lalfft import XLALCreateForwardREAL8FFTPlan, XLALCreateReverseREAL8FFTPlan, XLALREAL8FreqTimeFFT
 from pylal import datatypes as laltypes
 
-from glue.ligolw import ligolw, utils, ilwd, lsctables
+from ligo.lw import ligolw, utils, ilwd, lsctables
 
 from gstlal.excesspower import utils
 
diff --git a/gstlal-burst/python/excesspower/parts.py b/gstlal-burst/python/excesspower/parts.py
index db58f2fc27..0e17d3cc9c 100644
--- a/gstlal-burst/python/excesspower/parts.py
+++ b/gstlal-burst/python/excesspower/parts.py
@@ -49,12 +49,12 @@ from lalburst import bucluster
 
 from glue import datafind
 
-from glue.ligolw import ligolw, lsctables
+from ligo.lw import ligolw, lsctables
 lsctables.use_in(ligolw.LIGOLWContentHandler)
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import search_summary as ligolw_search_summary
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import search_summary as ligolw_search_summary
 
 from ligo.segments import segment, segmentlist, segmentlistdict, PosInfinity
 from glue.lal import Cache
@@ -515,7 +515,7 @@ class EPHandler(Handler):
 
 		# What comes out of SnglBurst.from_buffer is a
 		# pylal.xlal.datatypes.snglburst.SnglBurst object. It does not have
-		# all the trappings of its glue.ligolw.lsctables cousin, so we
+		# all the trappings of its ligo.lw.lsctables cousin, so we
 		# convert it here first
 		for event in [utils.convert_sngl_burst(sb, self.triggers) for sb in SnglBurst.from_buffer(buf)]:
 
diff --git a/gstlal-burst/python/fxtools/feature_extractor.py b/gstlal-burst/python/fxtools/feature_extractor.py
index dd7718a48d..888a7265eb 100644
--- a/gstlal-burst/python/fxtools/feature_extractor.py
+++ b/gstlal-burst/python/fxtools/feature_extractor.py
@@ -48,8 +48,8 @@ import lal
 from lal import LIGOTimeGPS
 
 from ligo import segments
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 
 from gstlal import aggregator
 from gstlal import bottle
diff --git a/gstlal-burst/python/fxtools/multichannel_datasource.py b/gstlal-burst/python/fxtools/multichannel_datasource.py
index 0f9e7ebc40..01c8494735 100644
--- a/gstlal-burst/python/fxtools/multichannel_datasource.py
+++ b/gstlal-burst/python/fxtools/multichannel_datasource.py
@@ -39,8 +39,8 @@ Gst.init(None)
 
 from gstlal import pipeparts
 from gstlal import datasource
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from ligo import segments
 import lal
 from lal import LIGOTimeGPS
diff --git a/gstlal-burst/python/fxtools/sngltriggertable.py b/gstlal-burst/python/fxtools/sngltriggertable.py
index 545103b2f4..c5361a613c 100644
--- a/gstlal-burst/python/fxtools/sngltriggertable.py
+++ b/gstlal-burst/python/fxtools/sngltriggertable.py
@@ -1,5 +1,4 @@
-from glue.ligolw import ilwd
-from glue.ligolw import lsctables
+from ligo.lw import lsctables
 import lal
 from gstlal import _sngltriggertable
 
diff --git a/gstlal-burst/python/snglbursttable.c b/gstlal-burst/python/snglbursttable.c
index 20ac3d10e1..989c6b29df 100644
--- a/gstlal-burst/python/snglbursttable.c
+++ b/gstlal-burst/python/snglbursttable.c
@@ -69,8 +69,8 @@ static struct PyMemberDef members[] = {
 	{"confidence", T_FLOAT, offsetof(gstlal_GSTLALSnglBurst, row.confidence), 0, "confidence"},
 	{"chisq", T_DOUBLE, offsetof(gstlal_GSTLALSnglBurst, row.chisq), 0, "chisq"},
 	{"chisq_dof", T_DOUBLE, offsetof(gstlal_GSTLALSnglBurst, row.chisq_dof), 0, "chisq_dof"},
-	{"_process_id", T_LONG, offsetof(gstlal_GSTLALSnglBurst, row.process_id), 0, "process_id (long)"},
-	{"_event_id", T_LONG, offsetof(gstlal_GSTLALSnglBurst, row.event_id), 0, "event_id (long)"},
+	{"process_id", T_LONG, offsetof(gstlal_GSTLALSnglBurst, row.process_id), 0, "process_id (long)"},
+	{"event_id", T_LONG, offsetof(gstlal_GSTLALSnglBurst, row.event_id), 0, "event_id (long)"},
 	{NULL,}
 };
 
diff --git a/gstlal-burst/python/snglbursttable.py b/gstlal-burst/python/snglbursttable.py
index 7b3644d223..822a4ade78 100644
--- a/gstlal-burst/python/snglbursttable.py
+++ b/gstlal-burst/python/snglbursttable.py
@@ -1,5 +1,4 @@
-from glue.ligolw import ilwd
-from glue.ligolw import lsctables
+from ligo.lw import lsctables
 import lal
 from gstlal import _snglbursttable
 
@@ -10,24 +9,5 @@ __all__ = ["GSTLALSnglBurst"]
 class GSTLALSnglBurst(_snglbursttable.GSTLALSnglBurst):
 	__slots__ = ()
 
-	process_id_type = ilwd.get_ilwdchar_class("process", "process_id")
-	event_id_type = ilwd.get_ilwdchar_class("sngl_burst", "event_id")
-
 	start = lsctables.gpsproperty("start_time", "start_time_ns")
 	peak = lsctables.gpsproperty("peak_time", "peak_time_ns")
-
-	@property
-	def process_id(self):
-		return self.process_id_type(self._process_id)
-
-	@process_id.setter
-	def process_id(self, val):
-		self._process_id = int(val)
-
-	@property
-	def event_id(self):
-		return self.event_id_type(self._event_id)
-
-	@event_id.setter
-	def event_id(self, val):
-		self._event_id = int(val)
diff --git a/gstlal-inspiral/bin/gstlal_bank_splitter b/gstlal-inspiral/bin/gstlal_bank_splitter
index 14be959e65..785e86b4f5 100755
--- a/gstlal-inspiral/bin/gstlal_bank_splitter
+++ b/gstlal-inspiral/bin/gstlal_bank_splitter
@@ -23,10 +23,10 @@ import itertools
 import os
 from optparse import OptionParser
 from gstlal import spawaveform
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from gstlal import templates
 from gstlal import inspiral_pipe
 from gstlal import dagparts
diff --git a/gstlal-inspiral/bin/gstlal_compute_far_from_snr_chisq_histograms b/gstlal-inspiral/bin/gstlal_compute_far_from_snr_chisq_histograms
index 7d7d39f56a..51c7a89f6b 100755
--- a/gstlal-inspiral/bin/gstlal_compute_far_from_snr_chisq_histograms
+++ b/gstlal-inspiral/bin/gstlal_compute_far_from_snr_chisq_histograms
@@ -37,11 +37,11 @@ sqlite3.enable_callback_tracebacks(True)
 import sys
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import dbtables
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import dbtables
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from lalinspiral import thinca
 from gstlal import far
 
diff --git a/gstlal-inspiral/bin/gstlal_iir_bank b/gstlal-inspiral/bin/gstlal_iir_bank
index 66fc8c611b..9cf2ef9182 100755
--- a/gstlal-inspiral/bin/gstlal_iir_bank
+++ b/gstlal-inspiral/bin/gstlal_iir_bank
@@ -63,23 +63,24 @@ if missing_options:
 	raise ValueError, "missing required option(s) %s" % ", ".join("--%s" % option.replace("_", "-") for option in sorted(missing_options))
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import array
-from glue.ligolw import param
+from ligo.lw import ligolw
+from ligo.lw import array
+from ligo.lw import param
 array.use_in(ligolw.LIGOLWContentHandler)
 param.use_in(ligolw.LIGOLWContentHandler)
 from gstlal import cbc_template_iir
 from pylal.series import read_psd_xmldoc
-from glue.ligolw import utils, lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw import lsctables
 
 # read bank file
-bank_xmldoc = utils.load_filename(options.template_bank, gz=options.template_bank.endswith('.gz'))
+bank_xmldoc = ligolw_utils.load_filename(options.template_bank)
 sngl_inspiral_table = lsctables.table.get_table(bank_xmldoc, lsctables.SnglInspiralTable.tableName)
 fFinal = max(sngl_inspiral_table.getColumnByName("f_final"))
 
 # read psd file
 if options.reference_psd:
-	ALLpsd = read_psd_xmldoc(utils.load_filename(options.reference_psd, verbose=options.verbose, contenthandler=ligolw.LIGOLWContentHandler))
+	ALLpsd = read_psd_xmldoc(ligolw_utils.load_filename(options.reference_psd, verbose=options.verbose, contenthandler=ligolw.LIGOLWContentHandler))
 	bank_sngl_table = lsctables.table.get_table( bank_xmldoc,lsctables.SnglInspiralTable.tableName )
 	psd = ALLpsd[bank_sngl_table[0].ifo]
 	# smooth and create an interp object
@@ -91,7 +92,7 @@ else:
 # get the iir coefficients
 A, B, D, snrs = cbc_template_iir.makeiirbank(bank_xmldoc, sampleRate = 4096, psd_interp = psd, verbose=options.verbose, padding=options.padding, flower=options.flow, downsample = options.downsample, output_to_xml = True, epsilon = options.epsilon)
 
-utils.write_filename(bank_xmldoc, options.output, gz=options.output.endswith('.gz'))
+ligolw_utils.write_filename(bank_xmldoc, options.output, gz=options.output.endswith('.gz'))
 
 #import pylab
 #pylab.hist(snrs)
diff --git a/gstlal-inspiral/bin/gstlal_iir_inspiral b/gstlal-inspiral/bin/gstlal_iir_inspiral
index b5f630e953..f229905e1e 100755
--- a/gstlal-inspiral/bin/gstlal_iir_inspiral
+++ b/gstlal-inspiral/bin/gstlal_iir_inspiral
@@ -84,12 +84,12 @@ from gstlal import bottle
 
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
-from glue.ligolw import ligolw
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import ligolw
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from lal import LIGOTimeGPS
 from lal import series as lalseries
 from gstlal import far
diff --git a/gstlal-inspiral/bin/gstlal_inspiral b/gstlal-inspiral/bin/gstlal_inspiral
index 58adff95bb..732cd6a40c 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral
+++ b/gstlal-inspiral/bin/gstlal_inspiral
@@ -163,10 +163,10 @@ from ligo.gracedb.rest import DEFAULT_SERVICE_URL as gracedb_default_service_url
 
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from gstlal import bottle
 from gstlal import datasource
 from gstlal import far
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids b/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids
index b812b0ad09..1b474281a1 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids
+++ b/gstlal-inspiral/bin/gstlal_inspiral_add_template_ids
@@ -21,9 +21,9 @@
 ### gstlal_inspiral_mass_model.
 
 import sys
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables, param as ligolw_param, array as ligolw_array
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import lsctables, param as ligolw_param, array as ligolw_array
+from ligo.lw import utils as ligolw_utils
 
 @ligolw_array.use_in
 @ligolw_param.use_in
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_calc_likelihood b/gstlal-inspiral/bin/gstlal_inspiral_calc_likelihood
index 58e3a20ae9..4d7b98391b 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_calc_likelihood
+++ b/gstlal-inspiral/bin/gstlal_inspiral_calc_likelihood
@@ -32,10 +32,10 @@ from optparse import OptionParser
 import sys
 
 
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import segments as ligolw_segments
 from ligo import segments
 from lalburst import calc_likelihood
 from lalinspiral import thinca
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_calc_rank_pdfs b/gstlal-inspiral/bin/gstlal_inspiral_calc_rank_pdfs
index c2216d811d..bf71b17803 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_calc_rank_pdfs
+++ b/gstlal-inspiral/bin/gstlal_inspiral_calc_rank_pdfs
@@ -31,9 +31,9 @@ from optparse import OptionParser
 import sys
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from gstlal import far
 from lal.utils import CacheEntry
 
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor b/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor
index 830f6e8d31..ec124db7fe 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor
+++ b/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor
@@ -18,7 +18,8 @@
 
 ### A program to extract the loudest coincs from an offline gstlal_inspiral DAG database into single files that can be uploaded to gracedb
 
-from glue.ligolw import ligolw, lsctables, utils, dbtables
+from ligo.lw import ligolw, lsctables, dbtables
+from ligo.lw import utils as ligolw_utils
 import sqlite3
 import sys
 from optparse import OptionParser
@@ -139,4 +140,4 @@ for (cid, time, ifos) in cids:
 			setattr(fullrow, attr, getattr(thisrow, attr))
 		sngl.append(fullrow)
 
-	utils.write_filename(xmldocmain, '%s-LLOID-%d-0.xml.gz' % (ifos.replace(",",""), time), gz=True, verbose=True)
+	ligolw_utils.write_filename(xmldocmain, '%s-LLOID-%d-0.xml.gz' % (ifos.replace(",",""), time), gz=True, verbose=True)
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats b/gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats
index a909a7729c..2363e5bf52 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats
+++ b/gstlal-inspiral/bin/gstlal_inspiral_create_prior_diststats
@@ -31,12 +31,12 @@
 from optparse import OptionParser
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 
 
 from gstlal import far
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_iir_bank_pipe b/gstlal-inspiral/bin/gstlal_inspiral_iir_bank_pipe
index 5a8376c06f..90f93d4222 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_iir_bank_pipe
+++ b/gstlal-inspiral/bin/gstlal_inspiral_iir_bank_pipe
@@ -47,7 +47,7 @@ import subprocess, socket, tempfile
 from glue import iterutils
 from glue import pipeline
 from glue import lal
-from glue.ligolw import lsctables
+from ligo.lw import lsctables
 from ligo import segments
 from optparse import OptionParser
 
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_injection_snr b/gstlal-inspiral/bin/gstlal_inspiral_injection_snr
index 1809b1c545..6a96e645d4 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_injection_snr
+++ b/gstlal-inspiral/bin/gstlal_inspiral_injection_snr
@@ -36,10 +36,10 @@ import numpy
 
 from optparse import OptionParser
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
+from ligo.lw import ligolw
+from ligo.lw import lsctables
 from glue.lal import Cache
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 import lal
 from lal.series import *
 from lal.utils import CacheEntry
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_background_plotter b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_background_plotter
index c419b0442b..327ebfa064 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_background_plotter
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_background_plotter
@@ -38,8 +38,8 @@ import sys
 os.environ["MPLCONFIGDIR"] = "/tmp"
 
 
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 from ligo.gracedb import rest as gracedb
 from lalinspiral.thinca import InspiralCoincDef
 
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_generic_plot_uploader b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_generic_plot_uploader
index 0cd44849a9..51747a59a6 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_generic_plot_uploader
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_generic_plot_uploader
@@ -41,7 +41,7 @@ import shutil
 import lal
 
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import lvalert_helper
 from gstlal import plotpsd
 from ligo.gracedb import rest as gracedb
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_omegascan b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_omegascan
index dcc019d32b..1248df6079 100644
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_omegascan
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_omegascan
@@ -32,10 +32,10 @@ import time
 from optparse import OptionParser
 import lal
 from lal import LIGOTimeGPS
-from glue.ligolw import ligolw
-from glue.ligolw import table
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import table
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 from gstlal import lvalert_helper
 from ligo.gracedb import rest as gracedb
 """
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_pastro_rate_posterior b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_pastro_rate_posterior
index 8077fc5ed7..95b4174a38 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_pastro_rate_posterior
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_pastro_rate_posterior
@@ -52,11 +52,11 @@ from gstlal import rate_estimation
 
 from ligo import segments
 from glue.lal import CacheEntry
-from glue.ligolw import ligolw
-from glue.ligolw import dbtables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw import lsctables
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import dbtables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw import lsctables
+from ligo.lw.utils import process as ligolw_process
 from glue.text_progress_bar import ProgressBar
 
 from lalinspiral import thinca
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_psd_plotter b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_psd_plotter
index e125b548c3..2b5e7b277d 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_psd_plotter
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_psd_plotter
@@ -40,7 +40,7 @@ import json
 import lal
 
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import lvalert_helper
 from gstlal import plotpsd
 from ligo.gracedb import rest as gracedb
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sim_equiv b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sim_equiv
index 7e0b533248..10adc73e20 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sim_equiv
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sim_equiv
@@ -39,11 +39,11 @@ import sys
 import json
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import coincs as ligolw_coincs
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import coincs as ligolw_coincs
+from ligo.lw.utils import process as ligolw_process
 from gstlal import lvalert_helper
 import lal
 from ligo.gracedb import rest as gracedb
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sngls_plotter b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sngls_plotter
index 77933e0b34..8c4acd391e 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sngls_plotter
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_sngls_plotter
@@ -50,10 +50,10 @@ import lal
 from lal import LIGOTimeGPS
 from lal import rate
 from lal.utils import CacheEntry
-from glue.ligolw import ligolw
-from glue.ligolw import table
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import table
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 from gstlal import lvalert_helper
 from ligo.gracedb import rest as gracedb
 
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_snrtimeseries_plotter b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_snrtimeseries_plotter
index 0d8ef4efe0..dcbf3194c2 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_lvalert_snrtimeseries_plotter
+++ b/gstlal-inspiral/bin/gstlal_inspiral_lvalert_snrtimeseries_plotter
@@ -38,11 +38,11 @@ from os import path
 import sys
 import urlparse
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
 from gstlal import inspiral
 from gstlal import lvalert_helper
 from gstlal import svd_bank
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_make_snr_pdf b/gstlal-inspiral/bin/gstlal_inspiral_make_snr_pdf
index fe8640d8f5..17606685fe 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_make_snr_pdf
+++ b/gstlal-inspiral/bin/gstlal_inspiral_make_snr_pdf
@@ -37,9 +37,9 @@ from optparse import OptionParser
 import time
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from glue.text_progress_bar import ProgressBar
 from gstlal import reference_psd
 from gstlal.stats import inspiral_extrinsics
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_marginalize_likelihood b/gstlal-inspiral/bin/gstlal_inspiral_marginalize_likelihood
index 9ff6652b22..6e5e8512d0 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_marginalize_likelihood
+++ b/gstlal-inspiral/bin/gstlal_inspiral_marginalize_likelihood
@@ -41,9 +41,9 @@
 from optparse import OptionParser
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from lal.utils import CacheEntry
 
 
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_mass_model b/gstlal-inspiral/bin/gstlal_inspiral_mass_model
index 816bf9c71c..d86bd7d68c 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_mass_model
+++ b/gstlal-inspiral/bin/gstlal_inspiral_mass_model
@@ -19,10 +19,10 @@
 import h5py
 import argparse
 import numpy
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables, param as ligolw_param, array as ligolw_array
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables, param as ligolw_param, array as ligolw_array
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 import lal.series
 from lal import rate
 from gstlal import reference_psd
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_pipe b/gstlal-inspiral/bin/gstlal_inspiral_pipe
index 30c9a989bd..a1ae4236a9 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_pipe
+++ b/gstlal-inspiral/bin/gstlal_inspiral_pipe
@@ -53,10 +53,10 @@ import lal.series
 from lal.utils import CacheEntry
 from glue import pipeline
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-import glue.ligolw.utils as ligolw_utils
-import glue.ligolw.utils.segments as ligolw_segments
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+import ligo.lw.utils as ligolw_utils
+import ligo.lw.utils.segments as ligolw_segments
 from gstlal import inspiral, inspiral_pipe
 from gstlal import dagparts
 from gstlal import datasource
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_plot_background b/gstlal-inspiral/bin/gstlal_inspiral_plot_background
index 0517214469..f0d2e239ba 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_plot_background
+++ b/gstlal-inspiral/bin/gstlal_inspiral_plot_background
@@ -51,8 +51,8 @@ import sqlite3
 import sys
 
 
-from glue.ligolw import dbtables
-from glue.ligolw import lsctables
+from ligo.lw import dbtables
+from ligo.lw import lsctables
 from glue.text_progress_bar import ProgressBar
 from lal.utils import CacheEntry
 from lalinspiral import thinca
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_plot_banks b/gstlal-inspiral/bin/gstlal_inspiral_plot_banks
index 51a4a65a17..31e854685b 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_plot_banks
+++ b/gstlal-inspiral/bin/gstlal_inspiral_plot_banks
@@ -49,9 +49,9 @@ from optparse import OptionParser
 from matplotlib.patches import Rectangle, Polygon
 from matplotlib.collections import PatchCollection
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 from glue.lal import CacheEntry
 
 from gstlal import svd_bank
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_plot_sensitivity b/gstlal-inspiral/bin/gstlal_inspiral_plot_sensitivity
index bc27c1b84f..9df0ae3ca6 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_plot_sensitivity
+++ b/gstlal-inspiral/bin/gstlal_inspiral_plot_sensitivity
@@ -35,11 +35,11 @@ import itertools
 from gstlal import dagparts
 from gstlal import plotutil
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import dbtables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw import array as ligolw_array
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import dbtables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw import array as ligolw_array
 from glue import iterutils
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_plot_svd_bank b/gstlal-inspiral/bin/gstlal_inspiral_plot_svd_bank
index b78feac0b6..ee68f1a9e0 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_plot_svd_bank
+++ b/gstlal-inspiral/bin/gstlal_inspiral_plot_svd_bank
@@ -33,7 +33,7 @@ import matplotlib
 matplotlib.use('Agg')
 from matplotlib import pyplot
 
-from glue.ligolw import lsctables
+from ligo.lw import lsctables
 
 print >>sys.stdout, 'Expires: Mon, 26 Jul 1997 05:00:00 GMT'
 print >>sys.stdout, 'Content-type: text/html\r\n'
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_plotsummary b/gstlal-inspiral/bin/gstlal_inspiral_plotsummary
index 00e82b8276..fb7bdf3c7f 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_plotsummary
+++ b/gstlal-inspiral/bin/gstlal_inspiral_plotsummary
@@ -59,9 +59,9 @@ from lal.utils import CacheEntry
 
 from glue import iterutils
 from ligo import segments
-from glue.ligolw import dbtables
-from glue.ligolw import lsctables
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import dbtables
+from ligo.lw import lsctables
+from ligo.lw.utils import segments as ligolw_segments
 from gstlal import far
 from gstlal import dagparts
 from gstlal import gviz_api
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_rate_posterior b/gstlal-inspiral/bin/gstlal_inspiral_rate_posterior
index 88e749b31d..c39d9bd01d 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_rate_posterior
+++ b/gstlal-inspiral/bin/gstlal_inspiral_rate_posterior
@@ -56,11 +56,11 @@ import sys
 
 
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import dbtables
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import dbtables
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from glue.text_progress_bar import ProgressBar
 from lal.utils import CacheEntry
 from lalinspiral import thinca
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_recalc_likelihood_with_zerolag b/gstlal-inspiral/bin/gstlal_inspiral_recalc_likelihood_with_zerolag
index 9eaf134e84..225c0492f2 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_recalc_likelihood_with_zerolag
+++ b/gstlal-inspiral/bin/gstlal_inspiral_recalc_likelihood_with_zerolag
@@ -25,10 +25,10 @@ from optparse import OptionParser
 import sqlite3
 from time import gmtime
 
-from glue.ligolw import dbtables
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import ligolw_sqlite
+from ligo.lw import dbtables
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import ligolw_sqlite
 from lalburst.offsetvector import offsetvector
 from ligo import segments
 from gstlal import inspiral
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far b/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far
index 685aba43c5..4830a1b81e 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far
+++ b/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far
@@ -29,8 +29,8 @@ except ImportError:
 sqlite3.enable_callback_tracebacks(True)
 
 
-from glue.ligolw import dbtables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import dbtables
+from ligo.lw import utils as ligolw_utils
 from gstlal import far
 from ligo.segments.utils import vote
 
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far_from_gracedb b/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far_from_gracedb
index 464b7d7142..4df8930048 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far_from_gracedb
+++ b/gstlal-inspiral/bin/gstlal_inspiral_recompute_online_far_from_gracedb
@@ -30,9 +30,9 @@
 
 from optparse import OptionParser
 
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
 from ligo import segments
 from gstlal import far
 from gstlal import lvalert_helper
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_reset_likelihood b/gstlal-inspiral/bin/gstlal_inspiral_reset_likelihood
index 4091075aa9..988e296788 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_reset_likelihood
+++ b/gstlal-inspiral/bin/gstlal_inspiral_reset_likelihood
@@ -35,9 +35,9 @@ import sys
 import warnings
 import numpy
 from gstlal import far
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw import ligolw
 from ligo import segments
 from lal import LIGOTimeGPS
 from optparse import OptionParser
diff --git a/gstlal-inspiral/bin/gstlal_inspiral_split_injections b/gstlal-inspiral/bin/gstlal_inspiral_split_injections
index c2fc46d55f..403025210b 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_split_injections
+++ b/gstlal-inspiral/bin/gstlal_inspiral_split_injections
@@ -22,10 +22,10 @@
 
 from optparse import OptionParser
 
-from glue.ligolw import ilwd, ligolw, lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import ligolw_add
+from ligo.lw import ilwd, ligolw, lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import ligolw_add
 
 import numpy
 
diff --git a/gstlal-inspiral/bin/gstlal_ll_inspiral_plot_sensitivity b/gstlal-inspiral/bin/gstlal_ll_inspiral_plot_sensitivity
index 918afa056a..fb018315cb 100755
--- a/gstlal-inspiral/bin/gstlal_ll_inspiral_plot_sensitivity
+++ b/gstlal-inspiral/bin/gstlal_ll_inspiral_plot_sensitivity
@@ -22,9 +22,9 @@ matplotlib.use('agg')
 from optparse import OptionParser
 import StringIO
 
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from gstlal import far
 from gstlal import plotsensitivity
 from lal import GPSTimeNow
diff --git a/gstlal-inspiral/bin/gstlal_svd_bank b/gstlal-inspiral/bin/gstlal_svd_bank
index 061467616e..40aac9ea66 100755
--- a/gstlal-inspiral/bin/gstlal_svd_bank
+++ b/gstlal-inspiral/bin/gstlal_svd_bank
@@ -35,7 +35,7 @@ import numpy
 
 import lal.series
 from lal.utils import CacheEntry
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import svd_bank
 from gstlal.stats import inspiral_lr
 
diff --git a/gstlal-inspiral/python/cbc_template_iir.py b/gstlal-inspiral/python/cbc_template_iir.py
index a15915e397..b8c618f1c4 100644
--- a/gstlal-inspiral/python/cbc_template_iir.py
+++ b/gstlal-inspiral/python/cbc_template_iir.py
@@ -32,7 +32,7 @@ import math
 import lal
 import pdb
 import csv
-from glue.ligolw import ligolw, lsctables, array, param, utils, types
+from ligo.lw import ligolw, lsctables, array, param, utils, types
 from gstlal.pipeio import repack_complex_array_to_real, repack_real_array_to_complex
 import pdb
 
diff --git a/gstlal-inspiral/python/far.py b/gstlal-inspiral/python/far.py
index c8fcb50a71..e4925179dd 100644
--- a/gstlal-inspiral/python/far.py
+++ b/gstlal-inspiral/python/far.py
@@ -66,11 +66,11 @@ import sys
 import time
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 from glue.text_progress_bar import ProgressBar
 from lal import rate
 from lalburst import snglcoinc
diff --git a/gstlal-inspiral/python/imr_utils.py b/gstlal-inspiral/python/imr_utils.py
index a0cabb0f4c..0d30dab0d9 100644
--- a/gstlal-inspiral/python/imr_utils.py
+++ b/gstlal-inspiral/python/imr_utils.py
@@ -15,27 +15,27 @@
 # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 import sys
-from glue.ligolw import lsctables
-from glue.ligolw import dbtables
-from glue.ligolw import table
+from ligo.lw import lsctables
+from ligo.lw import dbtables
+from ligo.lw import table
 from lal import rate
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
 import numpy
 import math
 import copy
-from glue.ligolw.utils import search_summary as ligolw_search_summary
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import process
+from ligo.lw.utils import search_summary as ligolw_search_summary
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import process
 from lalsimulation import SimInspiralTaylorF2ReducedSpinComputeChi, SimIMRPhenomBComputeChi
 
 import sqlite3
 
 def get_thinca_zero_lag_segments(connection, program_name = "thinca"):
 	"""
-	Return the thinca rings from the database at the given connection.  The
-	rings are returned as a coalesced glue.segments.segmentlistdict indexed
-	by instrument.
+	Return the thinca rings from the database at the given connection.
+	The rings are returned as a coalesced ligo.segments.segmentlistdict
+	indexed by instrument.
 
 	Example:
 
@@ -45,7 +45,7 @@ def get_thinca_zero_lag_segments(connection, program_name = "thinca"):
 
 	This function is most useful if only zero-lag segments are desired
 	because it allows for more convenient manipulation of the segment lists
-	using the methods in glue.segments.  If information about background
+	using the methods in ligo.segments.  If information about background
 	segments or the original ring boundaries is desired the data returned by
 	get_thinca_rings_by_available_instruments() is required.
 	"""
@@ -75,7 +75,7 @@ def get_thinca_zero_lag_segments(connection, program_name = "thinca"):
 
 def get_veto_segments(connection, name):
 	"""
-	Return a coalesced glue.segments.segmentlistdict object containing the
+	Return a coalesced ligo.segments.segmentlistdict object containing the
 	segments of the given name extracted from the database at the given
 	connection.
 	"""
diff --git a/gstlal-inspiral/python/inspiral.py b/gstlal-inspiral/python/inspiral.py
index 3951782b04..a95b7b049e 100644
--- a/gstlal-inspiral/python/inspiral.py
+++ b/gstlal-inspiral/python/inspiral.py
@@ -61,18 +61,18 @@ import httplib
 import tempfile
 
 from glue import iterutils
-from glue.ligolw import ligolw
-from glue.ligolw import dbtables
-from glue.ligolw import ilwd
-from glue.ligolw import lsctables
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import ligolw_sqlite
-from glue.ligolw.utils import ligolw_add
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import time_slide as ligolw_time_slide
+from ligo.lw import ligolw
+from ligo.lw import dbtables
+from ligo.lw import ilwd
+from ligo.lw import lsctables
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import ligolw_sqlite
+from ligo.lw.utils import ligolw_add
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import time_slide as ligolw_time_slide
 import lal
 from lal import LIGOTimeGPS
 from lal import series as lalseries
@@ -88,7 +88,7 @@ from gstlal import svd_bank
 #
 # =============================================================================
 #
-#                         glue.ligolw Content Handlers
+#                           ligo.lw Content Handlers
 #
 # =============================================================================
 #
diff --git a/gstlal-inspiral/python/inspiral_pipe.py b/gstlal-inspiral/python/inspiral_pipe.py
index 42d96b7334..4e982b8c0c 100644
--- a/gstlal-inspiral/python/inspiral_pipe.py
+++ b/gstlal-inspiral/python/inspiral_pipe.py
@@ -38,8 +38,8 @@
 
 import socket, copy, doctest
 from ligo import segments
-from glue.ligolw import lsctables, ligolw
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import lsctables, ligolw
+from ligo.lw import utils as ligolw_utils
 from gstlal import svd_bank
 from lal.utils import CacheEntry
 
diff --git a/gstlal-inspiral/python/lloidhandler.py b/gstlal-inspiral/python/lloidhandler.py
index 5efbbe2d1d..d12ca2f0da 100644
--- a/gstlal-inspiral/python/lloidhandler.py
+++ b/gstlal-inspiral/python/lloidhandler.py
@@ -75,10 +75,10 @@ GObject.threads_init()
 Gst.init(None)
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import segments as ligolw_segments
 from gstlal import bottle
 from gstlal import far
 from gstlal import inspiral
diff --git a/gstlal-inspiral/python/lloidplots.py b/gstlal-inspiral/python/lloidplots.py
index ed6667e2d4..392ac1e47f 100644
--- a/gstlal-inspiral/python/lloidplots.py
+++ b/gstlal-inspiral/python/lloidplots.py
@@ -58,7 +58,7 @@ labels = {
 
 def plotbank(in_filename, out_filename=None, column1='mchirp', column2='mtotal'):
 	"""Plot template bank parameters from a file generated by lalapps_tmpltbank."""
-	from glue.ligolw import ligolw, utils, lsctables
+	from ligo.lw import ligolw, utils, lsctables
 	class LIGOLWContentHandler(ligolw.LIGOLWContentHandler):
 		pass
 	lsctables.use_in(LIGOLWContentHandler)
diff --git a/gstlal-inspiral/python/llweb.py b/gstlal-inspiral/python/llweb.py
index 629b4100c0..e41f81d06c 100644
--- a/gstlal-inspiral/python/llweb.py
+++ b/gstlal-inspiral/python/llweb.py
@@ -63,8 +63,8 @@ import base64
 import urlparse
 
 import lal
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
 from gstlal import far
 from gstlal import plotpsd
 from gstlal import plotfar
diff --git a/gstlal-inspiral/python/lvalert_helper.py b/gstlal-inspiral/python/lvalert_helper.py
index 0c8eedfd30..74c12cc9db 100755
--- a/gstlal-inspiral/python/lvalert_helper.py
+++ b/gstlal-inspiral/python/lvalert_helper.py
@@ -40,11 +40,11 @@ import StringIO
 import time
 import io
 
-from glue.ligolw import ligolw
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 
 
 class LIGOLWContentHandler(ligolw.LIGOLWContentHandler):
diff --git a/gstlal-inspiral/python/plotsegments.py b/gstlal-inspiral/python/plotsegments.py
index 1ebcb1b928..35b764497f 100755
--- a/gstlal-inspiral/python/plotsegments.py
+++ b/gstlal-inspiral/python/plotsegments.py
@@ -26,19 +26,19 @@ import matplotlib.ticker as tkr
 import numpy
 
 from ligo import segments
-from glue.ligolw.ligolw import LIGOLWContentHandler
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import lsctables
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw.ligolw import LIGOLWContentHandler
+from ligo.lw import array as ligolw_array
+from ligo.lw import lsctables
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from gstlal import far
 import lal
 
 #
 # =============================================================================
 #
-#                         glue.ligolw Content Handlers
+#                           ligo.lw Content Handlers
 #
 # =============================================================================
 #
diff --git a/gstlal-inspiral/python/plotsensitivity.py b/gstlal-inspiral/python/plotsensitivity.py
index 65ad5a3eed..3e28c193d5 100644
--- a/gstlal-inspiral/python/plotsensitivity.py
+++ b/gstlal-inspiral/python/plotsensitivity.py
@@ -34,7 +34,7 @@ from matplotlib import pyplot as plt
 from matplotlib import ticker as tkr
 import numpy
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import plotsegments
 from lal import GPSToUTC
 from lal import rate
diff --git a/gstlal-inspiral/python/snglinspiraltable.c b/gstlal-inspiral/python/snglinspiraltable.c
index 7d9ce45da0..13e8f2f7c6 100644
--- a/gstlal-inspiral/python/snglinspiraltable.c
+++ b/gstlal-inspiral/python/snglinspiraltable.c
@@ -124,8 +124,8 @@ static struct PyMemberDef members[] = {
 	{"spin2x", T_FLOAT, offsetof(gstlal_GSTLALSnglInspiral, row.spin2x), 0, "spin2x"},
 	{"spin2y", T_FLOAT, offsetof(gstlal_GSTLALSnglInspiral, row.spin2y), 0, "spin2y"},
 	{"spin2z", T_FLOAT, offsetof(gstlal_GSTLALSnglInspiral, row.spin2z), 0, "spin2z"},
-	{"_process_id", T_LONG, offsetof(gstlal_GSTLALSnglInspiral, row.process_id), 0, "process_id (long)"},
-	{"_event_id", T_LONG, offsetof(gstlal_GSTLALSnglInspiral, row.event_id), 0, "event_id (long)"},
+	{"process_id", T_LONG, offsetof(gstlal_GSTLALSnglInspiral, row.process_id), 0, "process_id (long)"},
+	{"event_id", T_LONG, offsetof(gstlal_GSTLALSnglInspiral, row.event_id), 0, "event_id (long)"},
 	{NULL,}
 };
 
diff --git a/gstlal-inspiral/python/snglinspiraltable.py b/gstlal-inspiral/python/snglinspiraltable.py
index 0ba6151ab6..74926fec2f 100644
--- a/gstlal-inspiral/python/snglinspiraltable.py
+++ b/gstlal-inspiral/python/snglinspiraltable.py
@@ -15,8 +15,7 @@
 # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 
-from glue.ligolw import ilwd
-from glue.ligolw import lsctables
+from ligo.lw import lsctables
 import lal
 from . import _snglinspiraltable
 
@@ -27,28 +26,9 @@ __all__ = ["GSTLALSnglInspiral"]
 class GSTLALSnglInspiral(_snglinspiraltable.GSTLALSnglInspiral):
 	__slots__ = ()
 
-	process_id_type = ilwd.get_ilwdchar_class("process", "process_id")
-	event_id_type = ilwd.get_ilwdchar_class("sngl_inspiral", "event_id")
-
 	spin1 = lsctables.SnglInspiral.spin1
 	spin2 = lsctables.SnglInspiral.spin2
 
-	@property
-	def process_id(self):
-		return self.process_id_type(self._process_id)
-
-	@process_id.setter
-	def process_id(self, val):
-		self._process_id = int(val)
-
-	@property
-	def event_id(self):
-		return self.event_id_type(self._event_id)
-
-	@event_id.setter
-	def event_id(self, val):
-		self._event_id = int(val)
-
 	@property
 	def snr_time_series(self):
 		try:
diff --git a/gstlal-inspiral/python/spiirparts.py b/gstlal-inspiral/python/spiirparts.py
index 0be5b731c9..d0b59d4fa4 100644
--- a/gstlal-inspiral/python/spiirparts.py
+++ b/gstlal-inspiral/python/spiirparts.py
@@ -44,11 +44,11 @@ import gst
 
 from glue import iterutils
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import process as ligolw_process
 from gstlal import bottle
 from gstlal import datasource
 from gstlal import multirate_datasource
diff --git a/gstlal-inspiral/python/stats/horizonhistory.py b/gstlal-inspiral/python/stats/horizonhistory.py
index 7bac79d982..2b6653fe4d 100644
--- a/gstlal-inspiral/python/stats/horizonhistory.py
+++ b/gstlal-inspiral/python/stats/horizonhistory.py
@@ -61,8 +61,8 @@ import numpy
 import random
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import array as ligolw_array
+from ligo.lw import ligolw
+from ligo.lw import array as ligolw_array
 
 
 __all__ = ["NearestLeafTree", "HorizonHistories"]
diff --git a/gstlal-inspiral/python/stats/inspiral_extrinsics.py b/gstlal-inspiral/python/stats/inspiral_extrinsics.py
index 710ecf7d65..8765beac9f 100644
--- a/gstlal-inspiral/python/stats/inspiral_extrinsics.py
+++ b/gstlal-inspiral/python/stats/inspiral_extrinsics.py
@@ -45,11 +45,11 @@ from scipy import spatial
 import sys
 import h5py
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
 from glue.text_progress_bar import ProgressBar
 from gstlal import stats as gstlalstats
 import lal
diff --git a/gstlal-inspiral/python/stats/inspiral_lr.py b/gstlal-inspiral/python/stats/inspiral_lr.py
index 7a62f73449..b6b2739f79 100644
--- a/gstlal-inspiral/python/stats/inspiral_lr.py
+++ b/gstlal-inspiral/python/stats/inspiral_lr.py
@@ -42,11 +42,11 @@ import warnings
 import json
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
 from ligo import segments
 from gstlal.stats import horizonhistory
 from gstlal.stats import inspiral_extrinsics
@@ -445,7 +445,7 @@ class LnSignalDensity(LnLRDensity):
 		generated parameter dictionaries drawn from the
 		distribution of parameters expected for the given
 		injection, which is an instance of a SimInspiral table row
-		object (see glue.ligolw.lsctables.SimInspiral for more
+		object (see ligo.lw.lsctables.SimInspiral for more
 		information).  Each value in the sequence is a tuple, the
 		first element of which is the random parameter dictionary
 		and the second is 0.
diff --git a/gstlal-inspiral/python/stats/trigger_rate.py b/gstlal-inspiral/python/stats/trigger_rate.py
index c296431f04..4f69155743 100644
--- a/gstlal-inspiral/python/stats/trigger_rate.py
+++ b/gstlal-inspiral/python/stats/trigger_rate.py
@@ -31,8 +31,8 @@ import numpy
 import random
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import array as ligolw_array
+from ligo.lw import ligolw
+from ligo.lw import array as ligolw_array
 
 
 __all__ = ["ratebin", "ratebinlist", "triggerrates"]
diff --git a/gstlal-inspiral/python/streamthinca.py b/gstlal-inspiral/python/streamthinca.py
index a3bb34c6e0..c51e7888b8 100644
--- a/gstlal-inspiral/python/streamthinca.py
+++ b/gstlal-inspiral/python/streamthinca.py
@@ -45,8 +45,8 @@ from bisect import bisect_left
 import time
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
+from ligo.lw import ligolw
+from ligo.lw import lsctables
 from gstlal.snglinspiraltable import GSTLALSnglInspiral as SnglInspiral
 import lal
 from lalburst import snglcoinc
diff --git a/gstlal-inspiral/python/svd_bank.py b/gstlal-inspiral/python/svd_bank.py
index 349edcb440..ff8927bbce 100644
--- a/gstlal-inspiral/python/svd_bank.py
+++ b/gstlal-inspiral/python/svd_bank.py
@@ -46,13 +46,13 @@ import warnings
 
 import lal
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import array as ligolw_array
-from glue.ligolw import param as ligolw_param
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw import types as ligolw_types
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import array as ligolw_array
+from ligo.lw import param as ligolw_param
+from ligo.lw import utils as ligolw_utils
+from ligo.lw import types as ligolw_types
+from ligo.lw.utils import process as ligolw_process
 
 Attributes = ligolw.sax.xmlreader.AttributesImpl
 
diff --git a/gstlal-inspiral/share/post_O2/lauras_txt_files_to_xml b/gstlal-inspiral/share/post_O2/lauras_txt_files_to_xml
index 96dc7fe70a..5f9eb66cf5 100755
--- a/gstlal-inspiral/share/post_O2/lauras_txt_files_to_xml
+++ b/gstlal-inspiral/share/post_O2/lauras_txt_files_to_xml
@@ -29,10 +29,10 @@
 from optparse import OptionParser
 import sys
 
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import segments as ligolw_segments
 from ligo import segments
 from lal import LIGOTimeGPS
 
diff --git a/gstlal-inspiral/share/refap_with_zerolag/gstlal_inspiral_recalc_rank_pdfs b/gstlal-inspiral/share/refap_with_zerolag/gstlal_inspiral_recalc_rank_pdfs
index a515481eb9..3d2de40c11 100755
--- a/gstlal-inspiral/share/refap_with_zerolag/gstlal_inspiral_recalc_rank_pdfs
+++ b/gstlal-inspiral/share/refap_with_zerolag/gstlal_inspiral_recalc_rank_pdfs
@@ -50,7 +50,7 @@ import os
 
 
 from glue.text_progress_bar import ProgressBar
-from glue.ligolw.lsctables import instrumentsproperty
+from ligo.lw.lsctables import instrumentsproperty
 from gstlal import dagfile
 from lal.utils import CacheEntry
 from ligo import segments
diff --git a/gstlal-ugly/bin/gstlal_cache_to_segments b/gstlal-ugly/bin/gstlal_cache_to_segments
index 2d25b40921..880aa6fad7 100755
--- a/gstlal-ugly/bin/gstlal_cache_to_segments
+++ b/gstlal-ugly/bin/gstlal_cache_to_segments
@@ -1,10 +1,10 @@
 #!/usr/bin/python
 import sys
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import process as ligolw_process
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import process as ligolw_process
+from ligo.lw.utils import segments as ligolw_segments
 from lal.utils import CacheEntry
 
 segs = segments.segmentlistdict()
diff --git a/gstlal-ugly/bin/gstlal_glitch_population b/gstlal-ugly/bin/gstlal_glitch_population
index 8b6bd42fe8..c0c80729f8 100755
--- a/gstlal-ugly/bin/gstlal_glitch_population
+++ b/gstlal-ugly/bin/gstlal_glitch_population
@@ -34,10 +34,10 @@ import random
 import lal
 
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils
+from ligo.lw.utils import process as ligolw_process
 
 LIGOTimeGPS = lsctables.LIGOTimeGPS = lal.LIGOTimeGPS
 
diff --git a/gstlal-ugly/bin/gstlal_harmonic_mean_psd b/gstlal-ugly/bin/gstlal_harmonic_mean_psd
index 51d519c9aa..3bd4e80b99 100755
--- a/gstlal-ugly/bin/gstlal_harmonic_mean_psd
+++ b/gstlal-ugly/bin/gstlal_harmonic_mean_psd
@@ -23,7 +23,7 @@ from optparse import OptionParser
 
 import lal
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 
 __author__ = "Drew Keppel <drew.keppel@ligo.org>"
 
diff --git a/gstlal-ugly/bin/gstlal_inj_frames b/gstlal-ugly/bin/gstlal_inj_frames
index 67a5f22d30..eaab60af07 100755
--- a/gstlal-ugly/bin/gstlal_inj_frames
+++ b/gstlal-ugly/bin/gstlal_inj_frames
@@ -29,14 +29,14 @@ Gst.init(None)
 
 
 import lal
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
+from ligo.lw import ligolw
+from ligo.lw import lsctables
 lsctables.LIGOTimeGPS = lal.LIGOTimeGPS
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 
 # modules for uploading to GraceDB
 import threading
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw.utils import process as ligolw_process
 import urllib2  # for HTTPError:
 import StringIO
 
@@ -207,7 +207,7 @@ class GraceDBThread ( threading.Thread ):
         self.inj = inj
         threading.Thread.__init__ ( self )
     def run ( self ):
-       # This follows the code at the end of lalsuite/glue/glue/ligolw/utils/process.py
+       # This follows the code at the end of ligo.lw.utils.process
         print 'Notifying GraceDB now'
        # Create an empty XML document to send to GraceDB
         xmldoc = ligolw.Document()
diff --git a/gstlal-ugly/bin/gstlal_injsplitter b/gstlal-ugly/bin/gstlal_injsplitter
index cbeed6d59d..e031797a69 100755
--- a/gstlal-ugly/bin/gstlal_injsplitter
+++ b/gstlal-ugly/bin/gstlal_injsplitter
@@ -23,10 +23,10 @@
 
 from time import strftime
 from optparse import OptionParser
-from glue.ligolw import lsctables
-from glue.ligolw import utils
-from glue.ligolw import ligolw
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import lsctables
+from ligo.lw import utils
+from ligo.lw import ligolw
+from ligo.lw.utils import process as ligolw_process
 import numpy
 
 ###############################################################################
diff --git a/gstlal-ugly/bin/gstlal_inspiral_bankviz b/gstlal-ugly/bin/gstlal_inspiral_bankviz
index 3935856b4a..9fbc730adb 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_bankviz
+++ b/gstlal-ugly/bin/gstlal_inspiral_bankviz
@@ -9,11 +9,11 @@ matplotlib.use("agg")
 from matplotlib import pyplot
 from mpl_toolkits.mplot3d import Axes3D
 
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import table
-from glue.ligolw import utils
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import table
+from ligo.lw import utils
+from ligo.lw.utils import process as ligolw_process
 
 from optparse import OptionParser
 
diff --git a/gstlal-ugly/bin/gstlal_inspiral_check_livetimes b/gstlal-ugly/bin/gstlal_inspiral_check_livetimes
index 20229f0908..21dcf5f7dc 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_check_livetimes
+++ b/gstlal-ugly/bin/gstlal_inspiral_check_livetimes
@@ -19,11 +19,11 @@
 import sys
 import sqlite3
 from optparse import OptionParser
-from glue.ligolw import dbtables
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import dbtables
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
 
diff --git a/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency b/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency
index 5bb95fcab1..d47a514698 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency
+++ b/gstlal-ugly/bin/gstlal_inspiral_plot_efficiency
@@ -15,7 +15,7 @@ from optparse import OptionParser
 
 import lal
 from lal import rate
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import imr_utils
 
 import matplotlib
diff --git a/gstlal-ugly/bin/gstlal_inspiral_treebank b/gstlal-ugly/bin/gstlal_inspiral_treebank
index 16da6f6655..3a5f775a5c 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_treebank
+++ b/gstlal-ugly/bin/gstlal_inspiral_treebank
@@ -19,12 +19,12 @@
 
 import itertools
 import numpy
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import table
-from glue.ligolw import utils
-from glue.ligolw import ilwd
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import table
+from ligo.lw import utils
+from ligo.lw import ilwd
+from ligo.lw.utils import process as ligolw_process
 from gstlal import metric as metric_module
 from gstlal import tree
 # FIXME dont do this
diff --git a/gstlal-ugly/bin/gstlal_inspiral_treebank_dag b/gstlal-ugly/bin/gstlal_inspiral_treebank_dag
index 9c95add2f8..37c940c26f 100755
--- a/gstlal-ugly/bin/gstlal_inspiral_treebank_dag
+++ b/gstlal-ugly/bin/gstlal_inspiral_treebank_dag
@@ -1,12 +1,10 @@
 #!/usr/bin/python
 import itertools
 import numpy, math
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import table
-from glue.ligolw import utils
-from glue.ligolw import ilwd
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import table
+from ligo.lw.utils import process as ligolw_process
 from gstlal import metric as metric_module
 import os,sys,argparse
 from gstlal import inspiral
diff --git a/gstlal-ugly/bin/gstlal_ll_inspiral_daily_summary_page b/gstlal-ugly/bin/gstlal_ll_inspiral_daily_summary_page
index c40d19f8b0..534a68f9bf 100755
--- a/gstlal-ugly/bin/gstlal_ll_inspiral_daily_summary_page
+++ b/gstlal-ugly/bin/gstlal_ll_inspiral_daily_summary_page
@@ -2,10 +2,10 @@
 
 import heapq
 import sys, glob, os, time
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils
-from glue.ligolw import table
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils
+from ligo.lw import table
 from ligo import segments
 from glue.lal import Cache
 import lal
diff --git a/gstlal-ugly/bin/gstlal_median_of_psds b/gstlal-ugly/bin/gstlal_median_of_psds
index 4480cc4d81..c8319dfe57 100755
--- a/gstlal-ugly/bin/gstlal_median_of_psds
+++ b/gstlal-ugly/bin/gstlal_median_of_psds
@@ -22,7 +22,7 @@ import glob
 import lal
 import lal.series
 from lal.utils import CacheEntry
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import reference_psd
 from optparse import OptionParser
 
diff --git a/gstlal-ugly/bin/gstlal_ninja_median_of_psds b/gstlal-ugly/bin/gstlal_ninja_median_of_psds
index 4a8ab3ace1..69051b6ae4 100755
--- a/gstlal-ugly/bin/gstlal_ninja_median_of_psds
+++ b/gstlal-ugly/bin/gstlal_ninja_median_of_psds
@@ -4,7 +4,7 @@ import numpy
 import sys
 import glob
 import lal
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import reference_psd
 from optparse import OptionParser
 
diff --git a/gstlal-ugly/bin/gstlal_ninja_smooth_reference_psd b/gstlal-ugly/bin/gstlal_ninja_smooth_reference_psd
index 5400d309a8..7ff988ed1a 100755
--- a/gstlal-ugly/bin/gstlal_ninja_smooth_reference_psd
+++ b/gstlal-ugly/bin/gstlal_ninja_smooth_reference_psd
@@ -26,7 +26,7 @@
 from optparse import OptionParser
 import lal
 from ligo import segments
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal.pipeutil import gst
 from gstlal import reference_psd
 
diff --git a/gstlal-ugly/bin/gstlal_segments_operations b/gstlal-ugly/bin/gstlal_segments_operations
index 53b953b937..1c22180ebe 100755
--- a/gstlal-ugly/bin/gstlal_segments_operations
+++ b/gstlal-ugly/bin/gstlal_segments_operations
@@ -17,11 +17,11 @@
 # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 import sys
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import process as ligolw_process
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
 from optparse import OptionParser
diff --git a/gstlal-ugly/bin/gstlal_segments_trim b/gstlal-ugly/bin/gstlal_segments_trim
index 93484c014c..85597396b4 100755
--- a/gstlal-ugly/bin/gstlal_segments_trim
+++ b/gstlal-ugly/bin/gstlal_segments_trim
@@ -17,11 +17,11 @@
 # 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 import sys
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import process as ligolw_process
 from lal import LIGOTimeGPS
 from ligo import segments
 from ligo.segments import utils as segmentsUtils
diff --git a/gstlal-ugly/bin/gstlal_shift_frames b/gstlal-ugly/bin/gstlal_shift_frames
index 9219069dce..a425ced1a7 100755
--- a/gstlal-ugly/bin/gstlal_shift_frames
+++ b/gstlal-ugly/bin/gstlal_shift_frames
@@ -24,8 +24,8 @@ import pygst
 pygst.require("0.10")
 
 import lal
-from glue.ligolw import ligolw
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import utils as ligolw_utils
 
 # This mess is to make gstreamer stop eating our help messages.
 if "--help" in sys.argv or "-h" in sys.argv:
diff --git a/gstlal-ugly/bin/gstlal_vetoes_from_burst_inj b/gstlal-ugly/bin/gstlal_vetoes_from_burst_inj
index fb7055edcd..3ec4cfb24e 100755
--- a/gstlal-ugly/bin/gstlal_vetoes_from_burst_inj
+++ b/gstlal-ugly/bin/gstlal_vetoes_from_burst_inj
@@ -38,11 +38,11 @@ from xml.sax import SAXParseException
 
 
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import process as ligolw_process
 
 
 __author__ = "Kipp Cannon <kipp.cannon@ligo.org>, Chris Pankow <chris.pankow@ligo.org>"
@@ -106,7 +106,7 @@ for filename in filenames:
 		# try parsing injection list as an XML document
 		#
 
-		for sim in lsctables.table.get_table(utils.load_filename(filename, verbose = options.verbose), lsctables.SimBurstTable.tableName):
+		for sim in lsctables.table.get_table(ligolw_utils.load_filename(filename, verbose = options.verbose), lsctables.SimBurstTable.tableName):
 			t = sim.get_time_geocent()
 			if sim.duration is None or math.isnan(sim.duration):
 				duration = options.default_duration
@@ -144,4 +144,4 @@ llwsegments = ligolw_segments.LigolwSegments(xmldoc)
 llwsegments.insert_from_segmentlistdict(vetoes, options.vetoes_name, "Burst injections")
 llwsegments.finalize(process)
 
-utils.write_filename(xmldoc, options.output, gz = (options.output or "stdout").endswith(".gz"), verbose = options.verbose)
+ligolw_utils.write_filename(xmldoc, options.output, gz = (options.output or "stdout").endswith(".gz"), verbose = options.verbose)
diff --git a/gstlal-ugly/bin/gstlal_vetoes_from_burst_triggers b/gstlal-ugly/bin/gstlal_vetoes_from_burst_triggers
index 1b19110132..3adcdbce35 100755
--- a/gstlal-ugly/bin/gstlal_vetoes_from_burst_triggers
+++ b/gstlal-ugly/bin/gstlal_vetoes_from_burst_triggers
@@ -38,11 +38,11 @@ from xml.sax import SAXParseException
 
 
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw.utils import process as ligolw_process
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw.utils import process as ligolw_process
 
 
 __author__ = "Kipp Cannon <kipp.cannon@ligo.org>, Chris Pankow <chris.pankow@ligo.org>, Chad Hanna <chad.hanna@ligo.org>"
@@ -108,7 +108,7 @@ for filename in filenames:
 		# try parsing injection list as an XML document
 		#
 
-		for trig in lsctables.table.get_table(utils.load_filename(filename, verbose = options.verbose), lsctables.SnglBurstTable.tableName):
+		for trig in lsctables.table.get_table(ligolw_utils.load_filename(filename, verbose = options.verbose), lsctables.SnglBurstTable.tableName):
 			t = trig.get_start()
 			if trig.duration is None or math.isnan(trig.duration):
 				duration = options.default_duration
@@ -139,4 +139,4 @@ for r in segdef:
 	r.version = 0
 	r.insertion_time = 0
 
-utils.write_filename(xmldoc, options.output, gz = (options.output or "stdout").endswith(".gz"), verbose = options.verbose)
+ligolw_utils.write_filename(xmldoc, options.output, gz = (options.output or "stdout").endswith(".gz"), verbose = options.verbose)
diff --git a/gstlal-ugly/python/metric.py b/gstlal-ugly/python/metric.py
index 32106ce3a9..bf40750f6e 100644
--- a/gstlal-ugly/python/metric.py
+++ b/gstlal-ugly/python/metric.py
@@ -21,7 +21,7 @@ from lal import series
 from scipy import integrate
 import numpy
 from gstlal import reference_psd
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 import itertools
 import scipy
 from lal import LIGOTimeGPS
diff --git a/gstlal/bin/gstlal_asd_txt_from_psd_xml b/gstlal/bin/gstlal_asd_txt_from_psd_xml
index eec1df3470..af6a93f802 100755
--- a/gstlal/bin/gstlal_asd_txt_from_psd_xml
+++ b/gstlal/bin/gstlal_asd_txt_from_psd_xml
@@ -30,7 +30,7 @@ from optparse import OptionParser
 import sys
 
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from lal import series as lalseries
 
 
diff --git a/gstlal/bin/gstlal_fake_frames b/gstlal/bin/gstlal_fake_frames
index bbfdccc0a5..0eee05247b 100755
--- a/gstlal/bin/gstlal_fake_frames
+++ b/gstlal/bin/gstlal_fake_frames
@@ -34,7 +34,7 @@ from gstlal import reference_psd
 from gstlal import simplehandler
 from gstlal import datasource
 from gstlal import multirate_datasource
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 
 ### This program will make fake data in a variety of ways.  Its input is anything
 ### supported by datasource.py.  You can additionally whiten the data or apply a
diff --git a/gstlal/bin/gstlal_ligo_data_find_check b/gstlal/bin/gstlal_ligo_data_find_check
index 8ee3b876f2..5bf4657328 100755
--- a/gstlal/bin/gstlal_ligo_data_find_check
+++ b/gstlal/bin/gstlal_ligo_data_find_check
@@ -36,9 +36,9 @@ import sys
 from lal.utils import CacheEntry
 
 
-from glue.ligolw import dbtables
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import dbtables
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 
 
 #
diff --git a/gstlal/bin/gstlal_play b/gstlal/bin/gstlal_play
index ca109fd17b..3373ba6025 100755
--- a/gstlal/bin/gstlal_play
+++ b/gstlal/bin/gstlal_play
@@ -28,13 +28,13 @@ Gst.init(None)
 
 import lal
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import datasource
 from gstlal import multirate_datasource
 from gstlal import pipeparts
 from gstlal import simplehandler
-from glue.ligolw.utils import segments as ligolw_segments
-from glue.ligolw import lsctables, ligolw
+from ligo.lw.utils import segments as ligolw_segments
+from ligo.lw import lsctables, ligolw
 
 ### This program will play data in a variety of ways
 ###
diff --git a/gstlal/bin/gstlal_plot_psd b/gstlal/bin/gstlal_plot_psd
index dc2ad231fa..b204b444a8 100755
--- a/gstlal/bin/gstlal_plot_psd
+++ b/gstlal/bin/gstlal_plot_psd
@@ -25,7 +25,7 @@ import os
 
 
 import lal
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import plotpsd
 
 
diff --git a/gstlal/bin/gstlal_plot_psd_horizon b/gstlal/bin/gstlal_plot_psd_horizon
index 4d2315165b..9d02948e4d 100755
--- a/gstlal/bin/gstlal_plot_psd_horizon
+++ b/gstlal/bin/gstlal_plot_psd_horizon
@@ -28,7 +28,7 @@ from matplotlib import pyplot
 import numpy
 import lal
 import lal.series
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 from gstlal import plotutil
 from gstlal import reference_psd
 
diff --git a/gstlal/bin/gstlal_psd_polyfit b/gstlal/bin/gstlal_psd_polyfit
index af356e53c0..01db43b3fe 100755
--- a/gstlal/bin/gstlal_psd_polyfit
+++ b/gstlal/bin/gstlal_psd_polyfit
@@ -22,7 +22,7 @@ import sys
 import lal
 from gstlal import reference_psd
 from optparse import OptionParser
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 
 ### A program to fit a PSD to a polynomial
 ###
diff --git a/gstlal/python/datasource.py b/gstlal/python/datasource.py
index ef4a990ff3..446620578b 100644
--- a/gstlal/python/datasource.py
+++ b/gstlal/python/datasource.py
@@ -51,8 +51,8 @@ Gst.init(None)
 
 from gstlal import bottle
 from gstlal import pipeparts
-from glue.ligolw import utils as ligolw_utils
-from glue.ligolw.utils import segments as ligolw_segments
+from ligo.lw import utils as ligolw_utils
+from ligo.lw.utils import segments as ligolw_segments
 from ligo import segments
 import lal
 from lal import LIGOTimeGPS
diff --git a/gstlal/python/plotpsd.py b/gstlal/python/plotpsd.py
index 7cf657e53f..16005b5fd9 100644
--- a/gstlal/python/plotpsd.py
+++ b/gstlal/python/plotpsd.py
@@ -38,7 +38,7 @@ from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
 from matplotlib import ticker
 import numpy
 from gstlal import plotutil
-from glue.ligolw import lsctables
+from ligo.lw import lsctables
 from gstlal import reference_psd
 
 
diff --git a/gstlal/python/reference_psd.py b/gstlal/python/reference_psd.py
index 8fabaf52ff..2f4bf261b1 100644
--- a/gstlal/python/reference_psd.py
+++ b/gstlal/python/reference_psd.py
@@ -48,7 +48,7 @@ GObject.threads_init()
 Gst.init(None)
 
 
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import utils as ligolw_utils
 import lal
 import lal.series
 from lal import LIGOTimeGPS
diff --git a/gstlal/python/simulation.py b/gstlal/python/simulation.py
index c7bd9d746c..86a74def0d 100644
--- a/gstlal/python/simulation.py
+++ b/gstlal/python/simulation.py
@@ -19,9 +19,9 @@
 
 
 from ligo import segments
-from glue.ligolw import ligolw
-from glue.ligolw import lsctables
-from glue.ligolw import utils as ligolw_utils
+from ligo.lw import ligolw
+from ligo.lw import lsctables
+from ligo.lw import utils as ligolw_utils
 from lal import LIGOTimeGPS
 import math
 
-- 
GitLab