Installation fails if datname contains "-"
We (sadly) have a database with a hypen in it's name, were the extension can not be installed, example:
> **Works**
>
> postgres=# create database demo;
>
> CREATE DATABASE
>
> postgres=# alter database demo set session_preload_libraries = 'anon';
>
> ALTER DATABASE
>
> postgres=# \\c demo
>
> You are now connected to database "demo" as user "postgres".
>
> demo=# create extension anon;
>
> CREATE EXTENSION
>
> **Fails**
>
> postgres=# create database "demo-foo";
>
> CREATE DATABASE
>
> postgres=# alter database "demo-foo" set session_preload_libraries = 'anon';
>
> ALTER DATABASE
>
> postgres=# \\c "demo-foo"
>
> You are now connected to database "demo-foo" as user "postgres".
>
> demo-foo=# create extension anon;
>
> ERROR: syntax error at or near "-"
>
> LINE 1: ALTER DATABASE demo-foo SET anon.shift TO 399391412
>
> QUERY: ALTER DATABASE demo-foo SET anon.shift TO 399391412
>
> CONTEXT: PL/pgSQL function anon.set_shift(integer) line 6 at EXECUTE
I think that current_database() needs to be quoted while creating the extension.
issue