···4343 createSwDoc("tdf150606-1-min.odt");
44444545 SwXTextDocument* pTextDoc = dynamic_cast<SwXTextDocument*>(mxComponent.get());
4646---- a/sw/qa/extras/layout/layout3.cxx
4747-+++ b/sw/qa/extras/layout/layout3.cxx
4848-@@ -3354,6 +3354,9 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf104209VertRTL)
4949-5050- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408LTR)
4646+--- a/sw/qa/extras/tiledrendering/tiledrendering.cxx
4747++++ b/sw/qa/extras/tiledrendering/tiledrendering.cxx
4848+@@ -4091,6 +4091,8 @@ CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testRedlineTooltip)
4949+ // toggling Formatting Marks on/off for one view should have no effect on other views
5050+ CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testToggleFormattingMarks)
5151 {
5252-+ return; // requests Noto Sans Hebrew with charset=28, which the font does not have
5353-+ // FIXME: investigate
5252++ return; // fails consistently
5453+
5454+ SwXTextDocument* pXTextDocument = createDoc();
5555+ int nView1 = SfxLokHelper::getView();
5656+5757+--- a/sw/qa/extras/layout/layout4.cxx
5858++++ b/sw/qa/extras/layout/layout4.cxx
5959+@@ -1518,6 +1518,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf104209VertRTL)
6060+6161+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408LTR)
6262+ {
6363++ return; // fails due to missing font: Noto Sans Hebrew
5564 // Verify that line breaking a first bidi portion correctly underflows in LTR text
5665 createSwDoc("tdf56408-ltr.fodt");
5766 auto pXmlDoc = parseLayoutDump();
5858-@@ -3368,6 +3371,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408LTR)
6767+@@ -1532,6 +1532,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408LTR)
59686060- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408RTL)
6969+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408RTL)
6170 {
6262-+ return; // same Noto Sans Hebrew issue
6363-+
7171++ return; // fails due to missing font: Noto Sans Hebrew
6472 // Verify that line breaking a first bidi portion correctly underflows in RTL text
6573 createSwDoc("tdf56408-rtl.fodt");
6674 auto pXmlDoc = parseLayoutDump();
6767-@@ -3382,6 +3387,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408RTL)
6868-6969- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408NoUnderflow)
7575+@@ -1546,6 +1547,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408RTL)
7676+7777+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408NoUnderflow)
7078 {
7171-+ return; // same Noto Sans Hebrew issue
7272-+
7979++ return; // fails due to missing font: Noto Sans Hebrew
7380 // The fix for tdf#56408 introduced a change to line breaking between text with
7481 // direction changes. This test verifies behavior in the trivial case, when a
7582 // break opportunity exists at the direction change boundary.
7676-@@ -3398,6 +3405,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408NoUnderflow)
8383+@@ -1562,6 +1563,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408NoUnderflow)
77847878- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408AfterFieldCrash)
8585+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408AfterFieldCrash)
7986 {
8080-+ return; // same Noto Sans Hebrew issue
8181-+
8787++ return; // fails due to missing font: Noto Sans Hebrew
8288 // Verify there is no crash/assertion for underflow after a number field
8389 createSwDoc("tdf56408-after-field.fodt");
8490 }
8585-@@ -3436,6 +3445,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf146081)
9191+@@ -1612,6 +1614,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf155229RowAtLeast)
86928787- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf157829LTR)
9393+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf157829LTR)
8894 {
8989-+ return; // same Noto Sans Hebrew issue
9090-+
9595++ return; // fails due to missing font: Noto Sans Hebrew
9196 // Verify that line breaking inside a bidi portion triggers underflow to previous bidi portions
9297 createSwDoc("tdf157829-ltr.fodt");
9398 auto pXmlDoc = parseLayoutDump();
9494-@@ -3450,6 +3461,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf157829LTR)
9999+@@ -1626,6 +1629,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf157829LTR)
951009696- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf157829RTL)
101101+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf157829RTL)
97102 {
9898-+ return; // same Noto Sans Hebrew issue
9999-+
103103++ return; // fails due to missing font: Noto Sans Hebrew
100104 // Verify that line breaking inside a bidi portion triggers underflow to previous bidi portions
101105 createSwDoc("tdf157829-rtl.fodt");
102106 auto pXmlDoc = parseLayoutDump();
103103---- a/sw/qa/extras/tiledrendering/tiledrendering.cxx
104104-+++ b/sw/qa/extras/tiledrendering/tiledrendering.cxx
105105-@@ -4091,6 +4091,8 @@ CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testRedlineTooltip)
106106- // toggling Formatting Marks on/off for one view should have no effect on other views
107107- CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testToggleFormattingMarks)
107107+--- a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
108108++++ b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
109109+@@ -6079,6 +6079,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf162750SmallCapsLigature)
110110+111111+ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf164106SplitReorderedClusters)
108112 {
109109-+ return; // fails consistently
110110-+
111111- SwXTextDocument* pXTextDocument = createDoc();
112112- int nView1 = SfxLokHelper::getView();
113113-113113++ return; // fails due to missing font: Noto Sans
114114+ saveAsPDF(u"tdf164106.fodt");
115115+116116+ auto pPdfDocument = parsePDFExport();
···11+# Kanidm release guide
22+33+Kanidm supports one release at any given time, with a 30-day overlap to allow for upgrades from old to new version.
44+Version upgrades are only supported on adjacent releases, with no support for jumping versions.
55+66+To ensure we provide sufficient coverage for upgrading, we will aim to have two or three releases in tree at any given time.
77+Unsupported versions will be marked as vulnerable (lacking an "unsupported" mechanism), but built by hydra to avoid pushing the very large rebuild on users.
88+99+The default version will be updated with each new version, but the default will not be backported.
1010+It is expected that stable users will have to manually specify the version, and update that version, throughout the lifecycle of a NixOS release.
1111+1212+## New release
1313+1414+For example, when upgrading from 1.4 -> 1.5
1515+1616+### Init new version
1717+1818+1. `cp pkgs/by-name/ka/kanidm/1_4.nix pkgs/by-name/ka/kanidm/1_5.nix`
1919+1. `cp -r pkgs/by-name/ka/kanidm/patches/1_4 pkgs/by-name/ka/kanidm/patches/1_5`
2020+1. Update `1_5.nix` hashes/paths, and as needed for upstream changes, `generic.nix`
2121+1. Update `all-packages.nix` to add `kanidm_1_5` and `kanidmWithSecretProvisioning_1_5`, leave default
2222+1. Create commit, `kanidm_1_5: init at 1.5.0` - this is the only commit that will be backported
2323+2424+### Mark previous version deprecated
2525+2626+1. Update `pkgs/by-name/ka/kanidm/1_4.nix` by adding `deprecated = true;`
2727+1. Create commit `kanidm_1_4: update default to 1.5.0, deprecate 1.4.0`
2828+2929+### Update default and mark deprecation
3030+3131+1. `sed -i 's/1_4/1_5/' pkgs/by-name/ka/kanidm/package.nix`
3232+1. Update `all-packages.nix` and set `kanidmWithSecretProvisioning = kanidmWithSecretProvisioning_1_5;`
3333+1. Create commit `kanidm: update default to 1.5.0`
3434+3535+### Backport to stable
3636+3737+1. Manually create a backport using _only_ the init commit
3838+3939+## Remove release
4040+4141+Kanidm versions are supported for 30 days after the release of new versions. Following the example above, 1.5.x superseding 1.4.x in 30 days, do the following near the end of the 30 day window
4242+4343+1. Update `pkgs/top-level/release.nix` and add `kanidm_1_4-1.4.6` to `permittedInsecurePackages`
4444+1. Update `pkgs/top-level/release.nix` and remove `kanidm_1_3-1.3.3` from `permittedInsecurePackages`
4545+1. Remove the third oldest release from `all-packages.nix`, e.g. 1.3.x continuing the example. Remove `kanidm_1_3` and `kanidmWithSecretProvisioning_1_3`
4646+1. Update `pkgs/by-name/ka/kanidm/1_4.nix` by adding `unsupported = true;`
4747+1. Open a PR and backport it to stable