[RESULT][VOTE] Simplifying our release versioning process

2025-04-24 Thread Josh McKenzie
It's been 7 days and I think we have a clear consensus w/some good follow up 
action items.

Vote results:
 • Binding: 16 in favor (roll call: 21)
 • Non-binding: 5 in favor
 • Dissent: none

Follow ups:
 • Enshrine this agreed upon procedural text in our wiki w/link to discussion 
and vote threads
 • Document in wiki and reference ML where we reached consensus on API addition 
or removal requiring consensus (and any other details or procedures we reached 
on that thread)
 • Open a follow up [DISCUSS] thread on dev ML re: how we deal with JDK 
support, evolution, and deprecation (referencing any previous discussion on 
that topic)
As always, thanks everyone for your input, thoughts, and feedback to help 
refine our processes.

~Josh

On Thu, Apr 24, 2025, at 12:03 AM, Joseph Lynch wrote:
> Isn't the JDK we build with when publishing to maven somewhat of a public 
> interface due to cassandra-all library usage? I agree that we probably just 
> need to clearly document what JVMs we test a release on which is a good 
> signal for what we think will work at runtime (and this may be a much newer 
> JVM than we built with).
> 
> Apologies I didn't intend to change what we were voting on, I was just trying 
> to understand if we were voting on the original text or the original text 
> *plus* the "we don't break things and discuss breakage before breaking apis" 
> (which I still can't find on the wiki, but I am likely just bad at search).
> 
> I do agree version and feature support is perhaps a separate topic from 
> killing the minor (which seems unambiguously good).
> 
> -Joey
> 
> 
> On Wed, Apr 23, 2025 at 7:47 PM Josh McKenzie  wrote:
>> __
>> Pragmatically, I believe our in-jvm upgrade dtests require the 2 versions of 
>> C* you're testing to both support running on (and probably right now 
>> building on) a shared JDK version. So for instance, if we had:
>> 
>> - Release 21.0.0: JDK30, JDK31
>> - Release 22.0.0: JDK35, JDK40
>> 
>> We wouldn't be able to test an upgrade from 21 to 22. Arguably we could 
>> *build* on an older supported version and run both on the newer, but at 
>> least right now I think that's our restriction. There's tension here if our 
>> release cadence and LTS JDK's intersect badly, but JDK LTS is infrequent 
>> enough relative to our releases that I think we're potentially getting 
>> worked up about a non-issue here.
>> 
>> Since the JDK isn't an API and we've already discussed and have some measure 
>> of consensus in the past (I thought; haven't dug that up now due to shortage 
>> of time), I think we can and should formalize that separately from this vote 
>> thread.
>> 
>> On Wed, Apr 23, 2025, at 6:31 PM, David Capwell wrote:
 Also, I thought we had separate discussion about them - that we want to 
 keep up possibly with the last two LTS versions.
>>> 
>>> This is what I remember as well.  6.0 would support 17/21 as thats the 
>>> latest, if 7.0 is out before 25, then 7.0 would be 17/21, else it would be 
>>> 21/25
>>> 
 On Apr 23, 2025, at 3:11 PM, Ekaterina Dimitrova  
 wrote:
 
 I should say that I also haven’t thought of JDK versions when I voted 
 here. Also, I thought we had separate discussion about them - that we want 
 to keep up possibly with the last two LTS versions. Currently we do not 
 have vision on when will be the next release date, so I cannot personally 
 align JDK LTS versions to our versioning. Also, depends on people 
 availability and testing resources when and what versions we will maintain 
 our builds with. (And when and what Cassandra releases we will have, too)
 
 Regarding the - “do not change what we vote for in the middle of the vote” 
 - I agree, this is not the way to do it. But honestly I did not perceive 
 this voting as such a case. I also knew about the agreement that any 
 breaking changes will be discussed on the dev mailing list prior removal 
 and we try to be backward compatible as much as possible. 
 
 On Wed, 23 Apr 2025 at 18:02, Jeremiah Jordan  wrote:
> > The JVM version also isn’t a feature to deprecate, technically. 
> I agree with this. I think the JVM version the server runs under and how 
> we cycle those is a separate discussion from feature deprecation.
> 
> There can and has been some overlap there that would need to be handled 
> on a case by case basis (when a new JVM removed something that we did not 
> have a good way to keep doing without it, talking about you scripting 
> runtime based UDFs), but in general I don’t think switching JVMs is the 
> same as feature removal/deprecation.
> 
> -Jeremiah
> 
> 
> On Wed, Apr 23, 2025 at 4:48 PM Jordan West  wrote:
>> I agree with Jon that I’m now a bit confused on part of what I voted 
>> for. It feels like there is more discussion to be had here. Or we need 
>> to split it into two votes if we want to make progress on the part wh

Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Štefan Miklošovič
Hi Alex, all

The way I use it is that I have this in build.properties (just copy
build.properties.default in repo) and change the content.

build.properties file is in .gitignore and I think it is the most idiomatic
way to do this kind of stuff.

$ cat build.properties
ant.gen-doc.skip=true
ant.no-checkstyle=true

then "ant jar" takes 30 seconds.

You can have different property files and you can switch them by
"ant -propertyfile ". You can alias it in shell as well.

Regards

On Wed, Apr 23, 2025 at 10:06 PM Alex Petrov  wrote:

> Hi folks,
>
> Building Cassandra jar has been getting increasingly slow, and now it
> looks like we depend not only on python3 (which was already not optimal),
> but also on go:
>
> ant -Dno-checkstyle=true
>
> ...
>
>  [exec] python3 ./scripts/gen-nodetool-docs.py
>  [exec] python3 ./scripts/convert_yaml_to_adoc.py
> ../conf/cassandra.yaml
> ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc
>  [exec] ./scripts/process-native-protocol-specs-in-docker.sh
>  [exec] Go env not found in your system, proceeding with installation.
>  [exec] Downloading Go 1.23.1...
>  [exec] Installing Go 1.23.1...
>  [exec] Building the cqlprotodoc...
>  [exec] Cloning into 'cassandra-website'...
>  [exec] Your branch is up to date with 'origin/trunk'.
>  [exec] go: downloading github.com/mvdan/xurls v1.1.0
>  [exec] Processing the .spec files...
>
> I personally consider this extremely dangerous, but also unnecessary. My
> current stance is that functionality introducing python3 and go should be
> moved to a separate task that only runs on demand / ci / release.  I
> welcome convincing arguments that would suggest otherwise.
>
> If you agree we should not require python and go to run `ant
> -Dno-checkstyle=true`, please also write a short message, this will be very
> helpful as well.
>
> Thank you,
> --Alex
>


Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Brandon Williams
Why do we depend on python3 but install golang?  I can relate to those
who don't want random binaries installed and executed on their system.

Kind Regards,
Brandon

On Thu, Apr 24, 2025 at 3:39 AM Mick Semb Wever  wrote:
>
> it's for the website docs.  these are in-tree under doc/
> there's stuff that's auto-generated.  e.g. nodetool, yaml, native protocol 
> pages from their corresponding classes.
>
> it was an oversight to not have raised a discuss thread for the introduction 
> of golang into the build system.  this was only discussed within 
> CASSANDRA-19915
>
>
> On Thu, 24 Apr 2025 at 10:33, Alex Petrov  wrote:
>>
>> Could you elaborate how specifically having a generate docs task on by 
>> default is helping newcomers, and how code changes break docs? Also, are we 
>> talking about javadoc or documentation website?
>>
>> On Thu, Apr 24, 2025, at 8:25 AM, Mick Semb Wever wrote:
>>
>> Does this also apply to gradle, which now gets downloaded and installed, and 
>> is the most recent addition ?
>>
>> The python requirement from gen-doc has been around for over three years now.
>>
>> I agree with the rationale that `ant` should default to `ant check`, keeping 
>> newcomers in mind while being more just a final pre-commit action for 
>> seasoned devs where `ant jar` is the typical dev loop.  I'm sure this has 
>> been discussed in the past.
>>
>>
>>
>> On Thu, 24 Apr 2025 at 08:16, Alex Petrov  wrote:
>>
>>
>> I didn’t say we should disable checks. I thought this was a purpose of CI : 
>> to check everything: there’s likely more to break semantically anyways, also 
>> harder to detect and fix. I’m also not proposing removing something that was 
>> long in place, these dependencies were introduced very recently.
>>
>> On Wed, Apr 23, 2025, at 11:51 PM, Jeremiah Jordan wrote:
>>
>> I think the default build should be to build and check everything.  I think 
>> that if someone is new it is better to have everything built and checked by 
>> default to flag issues.
>>
>> If someone knows what they are doing and wants to speed up the process it is 
>> very easy to add the right settings to the ant command so things are faster.
>>
>> -Jeremiah
>>
>> On Wed, Apr 23, 2025 at 4:36 PM Jordan West  wrote:
>>
>> Should we consider making that the default and then passing false explicitly 
>> in CI/builds? I agree with Alex it’s a bit surprising and shorter build 
>> times when developing would be helpful.
>>
>> Jordan
>>
>> On Wed, Apr 23, 2025 at 13:37 Mick Semb Wever  wrote:
>>
>> Python and Go are used by the gen-doc target.
>>
>> Code changes can break these, hence it is part of `ant check`.
>> It is not called by `ant jar`
>>
>> If you want to run check but skip it, it's to add `-Dant.gen-doc.skip=true`
>>
>>
>>
>> On Wed, 23 Apr 2025 at 22:06, Alex Petrov  wrote:
>>
>>
>> Hi folks,
>>
>> Building Cassandra jar has been getting increasingly slow, and now it looks 
>> like we depend not only on python3 (which was already not optimal), but also 
>> on go:
>>
>> ant -Dno-checkstyle=true
>>
>> ...
>>
>>  [exec] python3 ./scripts/gen-nodetool-docs.py
>>  [exec] python3 ./scripts/convert_yaml_to_adoc.py ../conf/cassandra.yaml 
>> ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc
>>  [exec] ./scripts/process-native-protocol-specs-in-docker.sh
>>  [exec] Go env not found in your system, proceeding with installation.
>>  [exec] Downloading Go 1.23.1...
>>  [exec] Installing Go 1.23.1...
>>  [exec] Building the cqlprotodoc...
>>  [exec] Cloning into 'cassandra-website'...
>>  [exec] Your branch is up to date with 'origin/trunk'.
>>  [exec] go: downloading github.com/mvdan/xurls v1.1.0
>>  [exec] Processing the .spec files...
>>
>> I personally consider this extremely dangerous, but also unnecessary. My 
>> current stance is that functionality introducing python3 and go should be 
>> moved to a separate task that only runs on demand / ci / release.  I welcome 
>> convincing arguments that would suggest otherwise.
>>
>> If you agree we should not require python and go to run `ant 
>> -Dno-checkstyle=true`, please also write a short message, this will be very 
>> helpful as well.
>>
>> Thank you,
>> --Alex
>>
>>
>>


Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Štefan Miklošovič
It is not installed when it is present on the computer already, it should
take that instead.

If we treat Go the same way as Python then we might drop its installation.
It is there for convenience mostly. We also do not install Python so ...

On Thu, Apr 24, 2025 at 12:24 PM Brandon Williams  wrote:

> Why do we depend on python3 but install golang?  I can relate to those
> who don't want random binaries installed and executed on their system.
>
> Kind Regards,
> Brandon
>
> On Thu, Apr 24, 2025 at 3:39 AM Mick Semb Wever  wrote:
> >
> > it's for the website docs.  these are in-tree under doc/
> > there's stuff that's auto-generated.  e.g. nodetool, yaml, native
> protocol pages from their corresponding classes.
> >
> > it was an oversight to not have raised a discuss thread for the
> introduction of golang into the build system.  this was only discussed
> within CASSANDRA-19915
> >
> >
> > On Thu, 24 Apr 2025 at 10:33, Alex Petrov  wrote:
> >>
> >> Could you elaborate how specifically having a generate docs task on by
> default is helping newcomers, and how code changes break docs? Also, are we
> talking about javadoc or documentation website?
> >>
> >> On Thu, Apr 24, 2025, at 8:25 AM, Mick Semb Wever wrote:
> >>
> >> Does this also apply to gradle, which now gets downloaded and
> installed, and is the most recent addition ?
> >>
> >> The python requirement from gen-doc has been around for over three
> years now.
> >>
> >> I agree with the rationale that `ant` should default to `ant check`,
> keeping newcomers in mind while being more just a final pre-commit action
> for seasoned devs where `ant jar` is the typical dev loop.  I'm sure this
> has been discussed in the past.
> >>
> >>
> >>
> >> On Thu, 24 Apr 2025 at 08:16, Alex Petrov  wrote:
> >>
> >>
> >> I didn’t say we should disable checks. I thought this was a purpose of
> CI : to check everything: there’s likely more to break semantically
> anyways, also harder to detect and fix. I’m also not proposing removing
> something that was long in place, these dependencies were introduced very
> recently.
> >>
> >> On Wed, Apr 23, 2025, at 11:51 PM, Jeremiah Jordan wrote:
> >>
> >> I think the default build should be to build and check everything.  I
> think that if someone is new it is better to have everything built and
> checked by default to flag issues.
> >>
> >> If someone knows what they are doing and wants to speed up the process
> it is very easy to add the right settings to the ant command so things are
> faster.
> >>
> >> -Jeremiah
> >>
> >> On Wed, Apr 23, 2025 at 4:36 PM Jordan West  wrote:
> >>
> >> Should we consider making that the default and then passing false
> explicitly in CI/builds? I agree with Alex it’s a bit surprising and
> shorter build times when developing would be helpful.
> >>
> >> Jordan
> >>
> >> On Wed, Apr 23, 2025 at 13:37 Mick Semb Wever  wrote:
> >>
> >> Python and Go are used by the gen-doc target.
> >>
> >> Code changes can break these, hence it is part of `ant check`.
> >> It is not called by `ant jar`
> >>
> >> If you want to run check but skip it, it's to add
> `-Dant.gen-doc.skip=true`
> >>
> >>
> >>
> >> On Wed, 23 Apr 2025 at 22:06, Alex Petrov  wrote:
> >>
> >>
> >> Hi folks,
> >>
> >> Building Cassandra jar has been getting increasingly slow, and now it
> looks like we depend not only on python3 (which was already not optimal),
> but also on go:
> >>
> >> ant -Dno-checkstyle=true
> >>
> >> ...
> >>
> >>  [exec] python3 ./scripts/gen-nodetool-docs.py
> >>  [exec] python3 ./scripts/convert_yaml_to_adoc.py
> ../conf/cassandra.yaml
> ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc
> >>  [exec] ./scripts/process-native-protocol-specs-in-docker.sh
> >>  [exec] Go env not found in your system, proceeding with
> installation.
> >>  [exec] Downloading Go 1.23.1...
> >>  [exec] Installing Go 1.23.1...
> >>  [exec] Building the cqlprotodoc...
> >>  [exec] Cloning into 'cassandra-website'...
> >>  [exec] Your branch is up to date with 'origin/trunk'.
> >>  [exec] go: downloading github.com/mvdan/xurls v1.1.0
> >>  [exec] Processing the .spec files...
> >>
> >> I personally consider this extremely dangerous, but also unnecessary.
> My current stance is that functionality introducing python3 and go should
> be moved to a separate task that only runs on demand / ci / release.  I
> welcome convincing arguments that would suggest otherwise.
> >>
> >> If you agree we should not require python and go to run `ant
> -Dno-checkstyle=true`, please also write a short message, this will be very
> helpful as well.
> >>
> >> Thank you,
> >> --Alex
> >>
> >>
> >>
>


Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Alex Petrov
Could you elaborate how specifically having a generate docs task on by default 
is helping newcomers, and how code changes break docs? Also, are we talking 
about javadoc or documentation website? 

On Thu, Apr 24, 2025, at 8:25 AM, Mick Semb Wever wrote:
> Does this also apply to gradle, which now gets downloaded and installed, and 
> is the most recent addition ? 
> 
> The python requirement from gen-doc has been around for over three years now.
> 
> I agree with the rationale that `ant` should default to `ant check`, keeping 
> newcomers in mind while being more just a final pre-commit action for 
> seasoned devs where `ant jar` is the typical dev loop.  I'm sure this has 
> been discussed in the past.
> 
> 
> 
> On Thu, 24 Apr 2025 at 08:16, Alex Petrov  wrote:
>> __
>> I didn’t say we should disable checks. I thought this was a purpose of CI : 
>> to check everything: there’s likely more to break semantically anyways, also 
>> harder to detect and fix. I’m also not proposing removing something that was 
>> long in place, these dependencies were introduced very recently.
>> 
>> On Wed, Apr 23, 2025, at 11:51 PM, Jeremiah Jordan wrote:
>>> I think the default build should be to build and check everything.  I think 
>>> that if someone is new it is better to have everything built and checked by 
>>> default to flag issues.
>>> 
>>> If someone knows what they are doing and wants to speed up the process it 
>>> is very easy to add the right settings to the ant command so things are 
>>> faster.
>>> 
>>> -Jeremiah
>>> 
>>> On Wed, Apr 23, 2025 at 4:36 PM Jordan West  wrote:
 Should we consider making that the default and then passing false 
 explicitly in CI/builds? I agree with Alex it’s a bit surprising and 
 shorter build times when developing would be helpful. 
 
 Jordan 
 
 On Wed, Apr 23, 2025 at 13:37 Mick Semb Wever  wrote:
> Python and Go are used by the gen-doc target.
> 
> Code changes can break these, hence it is part of `ant check`.
> It is not called by `ant jar`
> 
> If you want to run check but skip it, it's to add 
> `-Dant.gen-doc.skip=true`
> 
> 
> 
> On Wed, 23 Apr 2025 at 22:06, Alex Petrov  wrote:
>> __
>> Hi folks,
>> 
>> Building Cassandra jar has been getting increasingly slow, and now it 
>> looks like we depend not only on python3 (which was already not 
>> optimal), but also on go:
>> 
>> ant -Dno-checkstyle=true
>> 
>> ...
>> 
>>  [exec] python3 ./scripts/gen-nodetool-docs.py
>>  [exec] python3 ./scripts/convert_yaml_to_adoc.py 
>> ../conf/cassandra.yaml 
>> ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc
>>  [exec] ./scripts/process-native-protocol-specs-in-docker.sh
>>  [exec] Go env not found in your system, proceeding with 
>> installation.
>>  [exec] Downloading Go 1.23.1...
>>  [exec] Installing Go 1.23.1...
>>  [exec] Building the cqlprotodoc...
>>  [exec] Cloning into 'cassandra-website'...
>>  [exec] Your branch is up to date with 'origin/trunk'.
>>  [exec] go: downloading github.com/mvdan/xurls v1.1.0
>>  [exec] Processing the .spec files...
>> 
>> I personally consider this extremely dangerous, but also unnecessary. My 
>> current stance is that functionality introducing python3 and go should 
>> be moved to a separate task that only runs on demand / ci / release.  I 
>> welcome convincing arguments that would suggest otherwise.
>> 
>> If you agree we should not require python and go to run `ant 
>> -Dno-checkstyle=true`, please also write a short message, this will be 
>> very helpful as well.
>> 
>> Thank you,
>> --Alex
>> 


Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Mick Semb Wever
it's for the website docs.  these are in-tree under doc/
there's stuff that's auto-generated.  e.g. nodetool, yaml, native protocol
pages from their corresponding classes.

it was an oversight to not have raised a discuss thread for the
introduction of golang into the build system.  this was only discussed
within CASSANDRA-19915


On Thu, 24 Apr 2025 at 10:33, Alex Petrov  wrote:

> Could you elaborate how specifically having a generate docs task on by
> default is helping newcomers, and how code changes break docs? Also, are we
> talking about javadoc or documentation website?
>
> On Thu, Apr 24, 2025, at 8:25 AM, Mick Semb Wever wrote:
>
> Does this also apply to gradle, which now gets downloaded and installed,
> and is the most recent addition ?
>
> The python requirement from gen-doc has been around for over three years
> now.
>
> I agree with the rationale that `ant` should default to `ant check`,
> keeping newcomers in mind while being more just a final pre-commit action
> for seasoned devs where `ant jar` is the typical dev loop.  I'm sure this
> has been discussed in the past.
>
>
>
> On Thu, 24 Apr 2025 at 08:16, Alex Petrov  wrote:
>
>
> I didn’t say we should disable checks. I thought this was a purpose of CI
> : to check everything: there’s likely more to break semantically anyways,
> also harder to detect and fix. I’m also not proposing removing something
> that was long in place, these dependencies were introduced very recently.
>
> On Wed, Apr 23, 2025, at 11:51 PM, Jeremiah Jordan wrote:
>
> I think the default build should be to build and check everything.  I
> think that if someone is new it is better to have everything built and
> checked by default to flag issues.
>
> If someone knows what they are doing and wants to speed up the process it
> is very easy to add the right settings to the ant command so things are
> faster.
>
> -Jeremiah
>
> On Wed, Apr 23, 2025 at 4:36 PM Jordan West  wrote:
>
> Should we consider making that the default and then passing false
> explicitly in CI/builds? I agree with Alex it’s a bit surprising and
> shorter build times when developing would be helpful.
>
> Jordan
>
> On Wed, Apr 23, 2025 at 13:37 Mick Semb Wever  wrote:
>
> Python and Go are used by the gen-doc target.
>
> Code changes can break these, hence it is part of `ant check`.
> It is not called by `ant jar`
>
> If you want to run check but skip it, it's to add `-Dant.gen-doc.skip=true`
>
>
>
> On Wed, 23 Apr 2025 at 22:06, Alex Petrov  wrote:
>
>
> Hi folks,
>
> Building Cassandra jar has been getting increasingly slow, and now it
> looks like we depend not only on python3 (which was already not optimal),
> but also on go:
>
> ant -Dno-checkstyle=true
>
> ...
>
>  [exec] python3 ./scripts/gen-nodetool-docs.py
>  [exec] python3 ./scripts/convert_yaml_to_adoc.py
> ../conf/cassandra.yaml
> ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc
>  [exec] ./scripts/process-native-protocol-specs-in-docker.sh
>  [exec] Go env not found in your system, proceeding with installation.
>  [exec] Downloading Go 1.23.1...
>  [exec] Installing Go 1.23.1...
>  [exec] Building the cqlprotodoc...
>  [exec] Cloning into 'cassandra-website'...
>  [exec] Your branch is up to date with 'origin/trunk'.
>  [exec] go: downloading github.com/mvdan/xurls v1.1.0
>  [exec] Processing the .spec files...
>
> I personally consider this extremely dangerous, but also unnecessary. My
> current stance is that functionality introducing python3 and go should be
> moved to a separate task that only runs on demand / ci / release.  I
> welcome convincing arguments that would suggest otherwise.
>
> If you agree we should not require python and go to run `ant
> -Dno-checkstyle=true`, please also write a short message, this will be very
> helpful as well.
>
> Thank you,
> --Alex
>
>
>
>


Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Benedict
We should separate out any grade discussion. I’m happy to migrate accord to ant if that’s the project preference, but there’s continual discussion to begin modularising Cassandra (at least a little), and a proposal to use grade for the modules - which might be a happy medium for everyone’s competing priorities.On 24 Apr 2025, at 07:26, Mick Semb Wever  wrote:Does this also apply to gradle, which now gets downloaded and installed, and is the most recent addition ? The python requirement from gen-doc has been around for over three years now.I agree with the rationale that `ant` should default to `ant check`, keeping newcomers in mind while being more just a final pre-commit action for seasoned devs where `ant jar` is the typical dev loop.  I'm sure this has been discussed in the past.On Thu, 24 Apr 2025 at 08:16, Alex Petrov  wrote:I didn’t say we should disable checks. I thought this was a purpose of CI : to check everything: there’s likely more to break semantically anyways, also harder to detect and fix. I’m also not proposing removing something that was long in place, these dependencies were introduced very recently.On Wed, Apr 23, 2025, at 11:51 PM, Jeremiah Jordan wrote:I think the default build should be to build and check everything.  I think that if someone is new it is better to have everything built and checked by default to flag issues.If someone knows what they are doing and wants to speed up the process it is very easy to add the right settings to the ant command so things are faster.-JeremiahOn Wed, Apr 23, 2025 at 4:36 PM Jordan West  wrote:Should we consider making that the default and then passing false explicitly in CI/builds? I agree with Alex it’s a bit surprising and shorter build times when developing would be helpful. Jordan On Wed, Apr 23, 2025 at 13:37 Mick Semb Wever  wrote:Python and Go are used by the gen-doc target.Code changes can break these, hence it is part of `ant check`.It is not called by `ant jar`If you want to run check but skip it, it's to add `-Dant.gen-doc.skip=true`On Wed, 23 Apr 2025 at 22:06, Alex Petrov  wrote:Hi folks,Building Cassandra jar has been getting increasingly slow, and now it looks like we depend not only on python3 (which was already not optimal), but also on go:    ant -Dno-checkstyle=true... [exec] python3 ./scripts/gen-nodetool-docs.py [exec] python3 ./scripts/convert_yaml_to_adoc.py ../conf/cassandra.yaml ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc [exec] ./scripts/process-native-protocol-specs-in-docker.sh [exec] Go env not found in your system, proceeding with installation. [exec] Downloading Go 1.23.1... [exec] Installing Go 1.23.1... [exec] Building the cqlprotodoc... [exec] Cloning into 'cassandra-website'... [exec] Your branch is up to date with 'origin/trunk'. [exec] go: downloading github.com/mvdan/xurls v1.1.0 [exec] Processing the .spec files...I personally consider this extremely dangerous, but also unnecessary. My current stance is that functionality introducing python3 and go should be moved to a separate task that only runs on demand / ci / release.  I welcome convincing arguments that would suggest otherwise.If you agree we should not require python and go to run `ant -Dno-checkstyle=true`, please also write a short message, this will be very helpful as well.Thank you,--Alex


Re: Python and Go callouts during ant compile/build task

2025-04-24 Thread Štefan Miklošovič
I don't see it necessary to port Gradle stuff to Ant. I have noticed zero
problems with it after CEP-15 merge. Basically a non-event.

It just looks strange that we have Ant + Maven poms / resolver wired into
it + submodule on Gradle. I mean ... wow. There is nothing wrong per se but
... strange. One would expect that more into the future we go, the more
coherent / consistent everything related to the build system will be, not
the other way around. But I totally get that this is just how things are
for now and there is nobody to blame really.

On Thu, Apr 24, 2025 at 10:39 AM Benedict  wrote:

> We should separate out any grade discussion. I’m happy to migrate accord
> to ant if that’s the project preference, but there’s continual discussion
> to begin modularising Cassandra (at least a little), and a proposal to use
> grade for the modules - which might be a happy medium for everyone’s
> competing priorities.
>
> On 24 Apr 2025, at 07:26, Mick Semb Wever  wrote:
>
> 
> Does this also apply to gradle, which now gets downloaded and installed,
> and is the most recent addition ?
>
> The python requirement from gen-doc has been around for over three years
> now.
>
> I agree with the rationale that `ant` should default to `ant check`,
> keeping newcomers in mind while being more just a final pre-commit action
> for seasoned devs where `ant jar` is the typical dev loop.  I'm sure this
> has been discussed in the past.
>
>
>
> On Thu, 24 Apr 2025 at 08:16, Alex Petrov  wrote:
>
>> I didn’t say we should disable checks. I thought this was a purpose of CI
>> : to check everything: there’s likely more to break semantically anyways,
>> also harder to detect and fix. I’m also not proposing removing something
>> that was long in place, these dependencies were introduced very recently.
>>
>> On Wed, Apr 23, 2025, at 11:51 PM, Jeremiah Jordan wrote:
>>
>> I think the default build should be to build and check everything.  I
>> think that if someone is new it is better to have everything built and
>> checked by default to flag issues.
>>
>> If someone knows what they are doing and wants to speed up the process it
>> is very easy to add the right settings to the ant command so things are
>> faster.
>>
>> -Jeremiah
>>
>> On Wed, Apr 23, 2025 at 4:36 PM Jordan West  wrote:
>>
>> Should we consider making that the default and then passing false
>> explicitly in CI/builds? I agree with Alex it’s a bit surprising and
>> shorter build times when developing would be helpful.
>>
>> Jordan
>>
>> On Wed, Apr 23, 2025 at 13:37 Mick Semb Wever  wrote:
>>
>> Python and Go are used by the gen-doc target.
>>
>> Code changes can break these, hence it is part of `ant check`.
>> It is not called by `ant jar`
>>
>> If you want to run check but skip it, it's to add
>> `-Dant.gen-doc.skip=true`
>>
>>
>>
>> On Wed, 23 Apr 2025 at 22:06, Alex Petrov  wrote:
>>
>>
>> Hi folks,
>>
>> Building Cassandra jar has been getting increasingly slow, and now it
>> looks like we depend not only on python3 (which was already not optimal),
>> but also on go:
>>
>> ant -Dno-checkstyle=true
>>
>> ...
>>
>>  [exec] python3 ./scripts/gen-nodetool-docs.py
>>  [exec] python3 ./scripts/convert_yaml_to_adoc.py
>> ../conf/cassandra.yaml
>> ./modules/cassandra/pages/managing/configuration/cass_yaml_file.adoc
>>  [exec] ./scripts/process-native-protocol-specs-in-docker.sh
>>  [exec] Go env not found in your system, proceeding with installation.
>>  [exec] Downloading Go 1.23.1...
>>  [exec] Installing Go 1.23.1...
>>  [exec] Building the cqlprotodoc...
>>  [exec] Cloning into 'cassandra-website'...
>>  [exec] Your branch is up to date with 'origin/trunk'.
>>  [exec] go: downloading github.com/mvdan/xurls v1.1.0
>>  [exec] Processing the .spec files...
>>
>> I personally consider this extremely dangerous, but also unnecessary. My
>> current stance is that functionality introducing python3 and go should be
>> moved to a separate task that only runs on demand / ci / release.  I
>> welcome convincing arguments that would suggest otherwise.
>>
>> If you agree we should not require python and go to run `ant
>> -Dno-checkstyle=true`, please also write a short message, this will be very
>> helpful as well.
>>
>> Thank you,
>> --Alex
>>
>>
>>


Wild card search | Cassandra

2025-04-24 Thread manish sharma
Hi Team,
I am wondering if there is any roadmap or existing functionality to perform 
like queries with infix or prefix as like ‘%cat’ or ‘c%at’ without using solr 
or elastic search.

Appreciate your response!

Regards,
Manish
Sent from my iPhone