I'm working on an application on Plone 5.0.x, trying both shipped mockup and 2.4.1, and in both cases, I get a duplicate select2 widget when trying to use the pattern (reproducable using mockup examples) inside a modal, with one of the widgets correctly configured, the other not, with traceback on page load:
patterns.pat.select2: Failed while initializing 'select2' pattern. query function not defined for Select2 s2id_input-autofind plone-compiled.min.js:1:17468
output http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:17468
log http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:18196
error http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:18373
f http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:3070
initPattern http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:919
D http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:7255
c http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:7778
scan/< http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:1541
scan http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:1503
_show http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:7:21519
createTargetModal http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:7:18428
show http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:7:20377
init/< http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:7:17788
dispatch http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:4:8497
b.dispatch http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:4:6149
add/r.handle http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:4:5235
(Async: EventListener.handleEvent)
add http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:4:5723
on/< http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:4:15011
each http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:2:2973
each http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:2:833
on http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:4:14990
init http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:7:17720
g http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:3241
g.extend/d< http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:3645
f http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:3036
initPattern http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:919
D http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:7255
c http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:1:7778
scan/< http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:1541
scan http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:1503
init/< http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:2:448
j http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:2:27304
add http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:2:27618
m.fn.ready http://localhost:28181/hello1/++plone++static/components/jquery/dist/jquery.min.js:2:29706
<anonymous> http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:12:30878
execCb http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:1670:24
check http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:874:43
enable http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:1161:17
init http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:782:21
localRequire/< http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:1435:25
(Async: setTimeout handler)
req.nextTick< http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:1775:9
localRequire http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:1424:21
requirejs http://localhost:28181/hello1/++plone++static/components/requirejs/require.js:1757:16
<anonymous> http://localhost:28181/hello1/++plone++static/++unique++2015-02-16%2000%3A00%3A00/plone-compiled.min.js:12:30320
Is there something subtle I am missing, or is this a new bug or known issue?
Sean