Skip to content

Conversation

andrii0lomakin
Copy link

Proposal a new declarative match step that should replace the current procedural version.

@kenhuuu
Copy link
Contributor

kenhuuu commented Oct 6, 2025

@Cole-Greer
Copy link
Contributor

Thanks for putting together the proposal @andrii0lomakin. As discussed on the devlist, I am fully in favour of the proposed changes.

VOTE +1

Note: The build is failing due to a missing license header. Pasting the standard license header to the top of the new file should resolve this:

////
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements.  See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
////

Update specification for the declarative `match()` step in Gremlin to include licensing information and converting to asciidoc
@andrii0lomakin
Copy link
Author

Well I am a bit puzzled because now it contains license.

To prevent query injection and improve performance by enabling query
plan caching, parameterized queries are supported. Parameters are
supplied using the existing `with()` modulator with a special key
Copy link
Contributor

@spmallette spmallette Oct 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for consistency with a steps like math i think we'd prefer by rather than with. That also removes the conflict with configurations for match like the aforementioned: `with("queryLanguage", "GSQL")``

hmm, maybe i should say that a different way. i suppose i'd like to see with remain a modulator for step configuration and less for passing arguments. by could work in some ways (not quite like math). maybe we could do match(String, Map) so that the parameters are just a map of key/value pairs?

Copy link
Author

@andrii0lomakin andrii0lomakin Oct 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the last one.
@Cole-Greer, @lpld WDYT ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

match(String, Map) sounds good to me.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 for the variant with Map argument

@codecov-commenter
Copy link

codecov-commenter commented Oct 9, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (3.8-dev@c3c3baa). Learn more about missing BASE report.

Additional details and impacted files
@@            Coverage Diff             @@
##             3.8-dev    #3232   +/-   ##
==========================================
  Coverage           ?   76.79%           
  Complexity         ?    14946           
==========================================
  Files              ?     1159           
  Lines              ?    72489           
  Branches           ?     8035           
==========================================
  Hits               ?    55671           
  Misses             ?    13811           
  Partials           ?     3007           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants