Re: extension_control_path and "directory"

2025-05-02 Thread Christoph Berg
Re: Matheus Alcantara > > Thanks, I have committed this. I did a bit of code reformatting and > > adjusted the documentation a bit. It's good to get this in before beta1 > > so that we don't have to change the valid values of > > extension_control_path past beta1. > > Thanks Peter! And thanks e

Re: extension_control_path and "directory"

2025-05-02 Thread Matheus Alcantara
On Fri, May 2, 2025 at 11:51 AM Peter Eisentraut wrote: > > Thanks, I have committed this. I did a bit of code reformatting and > adjusted the documentation a bit. It's good to get this in before beta1 > so that we don't have to change the valid values of > extension_control_path past beta1. >

Re: extension_control_path and "directory"

2025-05-02 Thread Peter Eisentraut
On 29.04.25 17:06, Matheus Alcantara wrote: On Tue, Apr 29, 2025 at 11:08 AM David E. Wheeler wrote: Right. My point is a minor one, but I thin you can use an if/ else there: ```c if (strcmp(piece, "$system") == 0) { /* Substitute the path macro if needed */ mangled = substit

Re: extension_control_path and "directory"

2025-04-29 Thread David E. Wheeler
On Apr 29, 2025, at 11:06, Matheus Alcantara wrote: > The substitute_path_macro() already handles the if/else on "piece" but I > think that this if/else version looks nicer. Fixed. > > I've also included some documentation changes for this v5 version to > remove the "extension" from the examples

Re: extension_control_path and "directory"

2025-04-29 Thread Matheus Alcantara
On Tue, Apr 29, 2025 at 11:08 AM David E. Wheeler wrote: > Right. My point is a minor one, but I thin you can use an if/ else there: > > ```c > if (strcmp(piece, "$system") == 0) { > /* Substitute the path macro if needed */ > mangled = substitute_path_macro(piece, "$system", syste

Re: extension_control_path and "directory"

2025-04-29 Thread David E. Wheeler
On Apr 29, 2025, at 09:49, Matheus Alcantara wrote: > Yes, it is a single path from the search path, in your case it will be > "/Users/david/Downloads/share/postgresql" and "$system". We split these > paths based on the system path separator and get the next "piece" here: > >char

Re: extension_control_path and "directory"

2025-04-29 Thread Matheus Alcantara
On Mon, Apr 28, 2025 at 5:49 PM David E. Wheeler wrote: > > > To append the /extension at each path on extension_control_path would > > require some changes on find_in_path() that > > find_extension_control_filename() calls, which I think that it would > > make the function more complicated. I've

Re: extension_control_path and "directory"

2025-04-28 Thread David E. Wheeler
On Apr 25, 2025, at 17:18, Matheus Alcantara wrote: > Ok, I was testing using extension_control_path = '$system:/my/custom/path' > (starting with the macro) and it was working as expected, testing with > the macro at the end does not work. Great example of why it’s useful to do as much testing a

Re: extension_control_path and "directory"

2025-04-25 Thread Matheus Alcantara
On Fri, Apr 25, 2025 at 4:13 PM David E. Wheeler wrote: > > On Apr 25, 2025, at 09:25, Matheus Alcantara wrote: > > > Yes, you are right. The problem was where I was asserting > > control->control_dir != NULL. I've moved the assert after the "if > > (!filename)" check that returns an error if the

Re: extension_control_path and "directory"

2025-04-25 Thread David E. Wheeler
On Apr 25, 2025, at 09:25, Matheus Alcantara wrote: > Yes, you are right. The problem was where I was asserting > control->control_dir != NULL. I've moved the assert after the "if > (!filename)" check that returns an error if the extension was not found. > > Attached v3 with this fix and also a

Re: extension_control_path and "directory"

2025-04-25 Thread Matheus Alcantara
On Thu, Apr 24, 2025 at 7:27 PM David E. Wheeler wrote: > > On Apr 24, 2025, at 11:18, Matheus Alcantara wrote: > > > In v2 I've moved the logic to remove the /extension to > > parse_extension_control_file(), do you think that this Assert on this > > function would still be wrong? IIUC we should

Re: extension_control_path and "directory"

2025-04-24 Thread David E. Wheeler
On Apr 24, 2025, at 11:18, Matheus Alcantara wrote: > In v2 I've moved the logic to remove the /extension to > parse_extension_control_file(), do you think that this Assert on this > function would still be wrong? IIUC we should always have /extension at > the end of "control_dir" at this place,

Re: extension_control_path and "directory"

2025-04-24 Thread Matheus Alcantara
On Thu, Apr 24, 2025 at 7:21 AM Christoph Berg wrote: > > Re: Matheus Alcantara > > I've tested with the semver extension and it seems to work fine with > > this patch. Can you please check on your side to see if it's also > > working? > > Hi Matheus, > > thanks for the patch, it does indeed work.

Re: extension_control_path and "directory"

2025-04-24 Thread Christoph Berg
Re: Matheus Alcantara > I've tested with the semver extension and it seems to work fine with > this patch. Can you please check on your side to see if it's also > working? Hi Matheus, thanks for the patch, it does indeed work. diff --git a/src/backend/commands/extension.c b/src/backend/commands/

Re: extension_control_path and "directory"

2025-04-23 Thread Matheus Alcantara
On Wed, Apr 23, 2025 at 10:57 AM David E. Wheeler wrote: > > On Apr 23, 2025, at 09:50, Christoph Berg wrote: > > > Remembering which path the .control file was found in and from there > > open the extension "directory" doesn't sound too hard. Why does it > > have to be more complicated? > > This

Re: extension_control_path and "directory"

2025-04-23 Thread David E. Wheeler
On Apr 23, 2025, at 09:50, Christoph Berg wrote: > Remembering which path the .control file was found in and from there > open the extension "directory" doesn't sound too hard. Why does it > have to be more complicated? This was my question, as well. Do you have a WIP patch to share, Matheus? >

Re: extension_control_path and "directory"

2025-04-23 Thread Christoph Berg
Re: Matheus Alcantara > I've tried to implement some kind of "SHAREDIR search path" as we've > discussed on another thread [1] but it shows out that we need some > considerable refactoring to make it work. Remembering which path the .control file was found in and from there open the extension "dir

Re: extension_control_path and "directory"

2025-04-23 Thread Matheus Alcantara
On Wed, Apr 23, 2025 at 6:39 AM Christoph Berg wrote: > > Re: Peter Eisentraut > > The new GUC extension_control_path specifies a path to look for > > extension control files. The default value is $system, which looks in > > the compiled-in location, as before. > > Is the expectation that this al

extension_control_path and "directory"

2025-04-23 Thread Christoph Berg
Re: Peter Eisentraut > The new GUC extension_control_path specifies a path to look for > extension control files. The default value is $system, which looks in > the compiled-in location, as before. Is the expectation that this also works for the extension "directory"? semver is still failing bec