Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove support for pre-9.3 #162

Open
decibel opened this issue Mar 26, 2018 · 6 comments
Open

Remove support for pre-9.3 #162

decibel opened this issue Mar 26, 2018 · 6 comments
Assignees

Comments

@decibel
Copy link
Collaborator

decibel commented Mar 26, 2018

I'd like to officially remove support for pre-9.3 versions of Postgres, due to issues in #128. 9.2 went EOL 6 months ago.

https://travis-ci.org/decibel/pgtap/builds/358206497 shows the failures that #128 is getting (I believe #161 explains the version 10 failure). It might be possible to fix the upgrade tests for 9.1 and 9.2, as it appears that the issue is simply some minor changes to output formatting, but I'm not sure it's worth it. Another option would be to simply disable upgrade tests in 9.1 and 9.2 (I'll actually go commit that right now).

9.0 and 8.4 flat-out fail with the changes I've made to Makefile. Possibly fixable, but I definitely don't think it's worth the effort for branches that are 2.5 and 3.5 years past their expiration dates.

@rodo
Copy link
Contributor

rodo commented Mar 26, 2018

sounds good 👍

@theory
Copy link
Owner

theory commented Mar 26, 2018

I suggest posting to the mail list to take the temperature of the community. I've had pretty strong pushback on dropping old versions in the past, but I admit that was years ago.

@theory
Copy link
Owner

theory commented Mar 27, 2018

If we drop support for 9.0 and earlier, I'd like to suggest we also commit this change:

diff --git a/sql/pgtap--0.98.0--0.99.0.sql b/sql/pgtap--0.98.0--0.99.0.sql
index 36ad40a..f7e28cf 100644
--- a/sql/pgtap--0.98.0--0.99.0.sql
+++ b/sql/pgtap--0.98.0--0.99.0.sql
@@ -12,7 +12,7 @@ RETURNS text AS $$
     SELECT array_to_string(ARRAY(
         SELECT quote_ident($1[i])
           FROM generate_series(1, array_upper($1, 1)) s(i)
-         ORDER BY $1[i]
+         ORDER BY $1[i] COLLATE "C"
     ), $2);
 $$ LANGUAGE SQL immutable;
 
@@ -21,7 +21,7 @@ RETURNS text AS $$
     SELECT array_to_string(ARRAY(
         SELECT $1[i]
           FROM generate_series(1, array_upper($1, 1)) s(i)
-         ORDER BY $1[i]
+         ORDER BY $1[i] COLLATE "C"
     ), $2);
 $$ LANGUAGE SQL immutable;
 
diff --git a/sql/pgtap.sql.in b/sql/pgtap.sql.in
index 3529438..710694e 100644
--- a/sql/pgtap.sql.in
+++ b/sql/pgtap.sql.in
@@ -10026,7 +10026,7 @@ RETURNS text AS $$
     SELECT array_to_string(ARRAY(
         SELECT quote_ident($1[i])
           FROM generate_series(1, array_upper($1, 1)) s(i)
-         ORDER BY $1[i]
+         ORDER BY $1[i]::TEXT COLLATE "C"
     ), $2);
 $$ LANGUAGE SQL immutable;
 
@@ -10035,6 +10035,6 @@ RETURNS text AS $$
     SELECT array_to_string(ARRAY(
         SELECT $1[i]
           FROM generate_series(1, array_upper($1, 1)) s(i)
-         ORDER BY $1[i]
+         ORDER BY $1[i]::TEXT COLLATE "C"
     ), $2);
 $$ LANGUAGE SQL immutable;
\ No newline at end of file

@sgrinko
Copy link

sgrinko commented Jan 15, 2019

Hello,
From which version do you plan to implement this feature?
(I am interested in the implementation of task #168)

@decibel
Copy link
Collaborator Author

decibel commented Oct 3, 2019

So.... I've got a branch where I've tested 8.1 through 11. 9.0 and older don't work because the travis script can't find appropriate packages. Also, we're unable to test versions older than 9.4 due to issue #212; that build has a work-around that disables extension testing if the extensions don't exist.

Based on these results, my thought is to do the following:

  • Allow telling the Makefile to explode if unable to test extensions and use that by default in Travis. That way we'll know if that testing suddenly stops working, but will be able to un-break Travis easily.
  • Do a final release with support for 9.1+, since that appears to work currently.
  • Finally deprecate at least < 9.4 in the next release since community deprecated 9.3 a year ago.

I think we should also adopt a formal policy of dropping support for deprecated versions, although in order to do that I think we'll need to be able to support patch releases (issue #210).

@theory
Copy link
Owner

theory commented Oct 4, 2019

Why do you think we'd need to support patch releases in the version returned from pgtap_version()?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants