Repository Analysis

jeremyevans/sequel

Sequel: The Database Toolkit for Ruby

10.7 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of jeremyevans/sequel, a Ruby project with 5,087 GitHub stars. SynthScan v2.0 examined 200,566 lines of code across 858 source files, recording 1745 pattern matches distributed across 10 syntactic categories. The overall adjusted score of 10.7 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

10.7
Adjusted Score
10.7
Raw Score
100%
Time Factor
2026-07-13
Last Push
5.1K
Stars
Ruby
Language
200.6K
Lines of Code
858
Files
1.7K
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 2MEDIUM 203LOW 1540

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 1745 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Over-Commented Block899 hits · 796 pts
SeverityFileLineSnippetContext
LOWlib/sequel/timezones.rb21 # You can set all three timezones to the same value at once via <tt>Sequel.default_timezone=</tt>.COMMENT
LOWlib/sequel/connection_pool.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/sql.rb261 # Sequel.function(:func).as(:alias) # func() AS "alias"COMMENT
LOWlib/sequel/sql.rb281 endCOMMENT
LOWlib/sequel/sql.rb321 BooleanExpression.invert(self)COMMENT
LOWlib/sequel/sql.rb361 # The first argument are the <tt>WHEN</tt>/<tt>THEN</tt> conditions,COMMENT
LOWlib/sequel/sql.rb381 endCOMMENT
LOWlib/sequel/sql.rb401 endCOMMENT
LOWlib/sequel/sql.rb421COMMENT
LOWlib/sequel/sql.rb441 endCOMMENT
LOWlib/sequel/sql.rb461 # the method is passed a block, evaluate it as a virtual row and wrap itCOMMENT
LOWlib/sequel/sql.rb521 # Extract a datetime_part (e.g. year, month) from the givenCOMMENT
LOWlib/sequel/sql.rb581COMMENT
LOWlib/sequel/sql.rb641 endCOMMENT
LOWlib/sequel/sql.rb661 SQL::Subscript.new(exp, subs.flatten)COMMENT
LOWlib/sequel/sql.rb701 # on the result. COMMENT
LOWlib/sequel/sql.rb721 # +ComplexExpression+ subclass.COMMENT
LOWlib/sequel/sql.rb741 # ~(Sequel[:a].sql_number) # ~"a"COMMENT
LOWlib/sequel/sql.rb761 # Sequel[:a] <= :b # a <= "b"COMMENT
LOWlib/sequel/sql.rb821 # Sequel[:a] =~ [1, 2] # (a IN [1, 2])COMMENT
LOWlib/sequel/sql.rb941 # Qualify the receiver with the given +qualifier+ (table for column/schema for table).COMMENT
LOWlib/sequel/sql.rb981 endCOMMENT
LOWlib/sequel/sql.rb1061 class BooleanExpression < ComplexExpressionCOMMENT
LOWlib/sequel/sql.rb1461 # Return a new function where the function name will not be quoted evenCOMMENT
LOWlib/sequel/sql.rb1761 # used, which is currently only supported on some databases. Be awareCOMMENT
LOWlib/sequel/sql.rb1841 to_s_method :subscript_sqlCOMMENT
LOWlib/sequel/sql.rb1861 #COMMENT
LOWlib/sequel/sql.rb1881 # ds.where{name < 2} # SELECT * FROM t WHERE (name < 2)COMMENT
LOWlib/sequel/sql.rb1941 include mCOMMENT
LOWlib/sequel/sql.rb1961 # # (PARTITION BY col7 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)COMMENT
LOWlib/sequel/sql.rb1981 # String :: Used as literal SQL code, try to avoidCOMMENT
LOWlib/sequel/model.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/dataset.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/core.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/core.rb41 module SequelMethodsCOMMENT
LOWlib/sequel/core.rb61 # Sequel uses a thread-safe connection pool, which isn't as fast as theCOMMENT
LOWlib/sequel/core.rb101 # DB = Sequel.connect('sqlite:///blog.db') # /blog.dbCOMMENT
LOWlib/sequel/core.rb261 Sequel.synchronize{SPLIT_SYMBOL_CACHE[sym] = v}COMMENT
LOWlib/sequel/core.rb281 # symbols, and changing this setting does not affect those caches. It isCOMMENT
LOWlib/sequel/core.rb361COMMENT
LOWlib/sequel/deprecated.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/database.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/database/dataset_defaults.rb1# frozen-string-literal: trueCOMMENT
LOWlib/sequel/database/dataset_defaults.rb21 @dataset_modules.each{|m| c.send(:include, m)}COMMENT
LOWlib/sequel/database/dataset_defaults.rb41 # # Introspect columns for all of DB's datasetsCOMMENT
LOWlib/sequel/database/schema_generator.rb41 #COMMENT
LOWlib/sequel/database/schema_generator.rb101 endCOMMENT
LOWlib/sequel/database/schema_generator.rb121 #COMMENT
LOWlib/sequel/database/schema_generator.rb141 # Basically it adds DEFERRABLE INITIALLY DEFERRED on key creation.COMMENT
LOWlib/sequel/database/schema_generator.rb161 # :on_update :: Specify the behavior of this column when being updatedCOMMENT
LOWlib/sequel/database/schema_generator.rb181 # allow for index-only scans in more cases (PostgreSQL 11+).COMMENT
LOWlib/sequel/database/schema_generator.rb201 #COMMENT
LOWlib/sequel/database/schema_generator.rb221 # # CONSTRAINT blah CHECK num >= 1 AND num <= 5 DEFERRABLE INITIALLY DEFERREDCOMMENT
LOWlib/sequel/database/schema_generator.rb241 # for available options.COMMENT
LOWlib/sequel/database/schema_generator.rb301 # index :nameCOMMENT
LOWlib/sequel/database/schema_generator.rb321 # supported by some databases).COMMENT
LOWlib/sequel/database/schema_generator.rb361 # should not use this method. Instead, you should use the regular +column+ methodCOMMENT
LOWlib/sequel/database/schema_generator.rb481 # PostgreSQL specific options:COMMENT
LOWlib/sequel/database/schema_generator.rb501 # # ADD CONSTRAINT valid_name CHECK (name LIKE 'A%' ESCAPE '\')COMMENT
LOWlib/sequel/database/schema_generator.rb521 # :nulls_not_distinct :: Use NULLS NOT DISTINCT to setup a constraint where NULLCOMMENT
839 more matches not shown…
Hyper-Verbose Identifiers500 hits · 488 pts
SeverityFileLineSnippetContext
LOWspec/core/database_spec.rb164 def initialize_load_extensions(_)CODE
LOWspec/core/database_spec.rb3241 def database_exception_sqlstate(exception, opts={})CODE
LOWspec/core/expression_filters_spec.rb555 def emulate_function_sql_append(sql, f)CODE
LOWspec/core/dataset_spec.rb5740 def complex_expression_sql_append(sql, op, args)CODE
LOWspec/core/dataset_spec.rb6110 def complex_expression_sql_append(sql, op, args)CODE
LOWspec/integration/type_test.rb5 def create_items_table_with_column(name, type, opts={})CODE
LOWspec/extensions/validation_helpers_spec.rb107 def default_validation_helpers_options(type)CODE
LOWlib/sequel/timezones.rb50 def application_to_database_timestamp(v)CODE
LOWlib/sequel/timezones.rb104 def database_to_application_timestamp(v)CODE
LOWlib/sequel/timezones.rb118 def typecast_to_application_timestamp(v)CODE
LOWlib/sequel/timezones.rb126 def convert_input_datetime_no_offset(v, input_timezone)CODE
LOWlib/sequel/timezones.rb141 def convert_input_datetime_other(v, input_timezone)CODE
LOWlib/sequel/timezones.rb224 def convert_output_datetime_other(v, output_timezone)CODE
LOWlib/sequel/timezones.rb231 def convert_output_time_other(v, output_timezone)CODE
LOWlib/sequel/timezones.rb237 def convert_timezone_setter_arg(tz)CODE
LOWlib/sequel/timezones.rb242 def local_offset_for_datetime(dt)CODE
LOWlib/sequel/timezones.rb247 def time_offset_to_datetime_offset(offset_secs)CODE
LOWlib/sequel/connection_pool.rb136 def disconnect_acquired_connection(conn, *)CODE
LOWlib/sequel/database/schema_generator.rb734 def add_composite_primary_key(columns, opts)CODE
LOWlib/sequel/database/schema_generator.rb740 def add_composite_foreign_key(columns, table, opts)CODE
LOWlib/sequel/database/schema_generator.rb746 def drop_composite_foreign_key(columns, opts)CODE
LOWlib/sequel/database/transactions.rb380 def commit_or_rollback_transaction(exception, conn, opts)CODE
LOWlib/sequel/database/transactions.rb515 def set_transaction_isolation(conn, opts)CODE
LOWlib/sequel/database/transactions.rb522 def set_transaction_isolation_sql(level)CODE
LOWlib/sequel/database/query.rb228 def column_schema_default_to_ruby_value(default, type)CODE
LOWlib/sequel/database/query.rb258 def column_schema_normalize_default(default, type)CODE
LOWlib/sequel/database/query.rb269 def column_schema_to_ruby_default(default, type)CODE
LOWlib/sequel/database/query.rb297 def column_schema_integer_min_max_values(column)CODE
LOWlib/sequel/database/query.rb323 def column_schema_decimal_min_max_values(column)CODE
LOWlib/sequel/database/schema_methods.rb476 def alter_table_add_column_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb480 def alter_table_drop_column_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb484 def alter_table_rename_column_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb488 def alter_table_set_column_type_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb494 def alter_table_set_column_default_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb498 def alter_table_set_column_null_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb502 def alter_table_add_constraint_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb506 def alter_table_drop_constraint_sql(table, op)CODE
LOWlib/sequel/database/schema_methods.rb579 def column_definition_auto_increment_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb584 def column_definition_collate_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb591 def column_definition_default_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb596 def column_definition_null_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb616 def column_definition_primary_key_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb621 def column_definition_add_primary_key_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb628 def column_definition_append_primary_key_sql(sql, constraint)CODE
LOWlib/sequel/database/schema_methods.rb633 def column_definition_references_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb638 def column_definition_add_references_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb644 def column_definition_unique_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb649 def column_definition_add_unique_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb656 def column_definition_append_unique_sql(sql, constraint)CODE
LOWlib/sequel/database/schema_methods.rb661 def append_named_constraint_prefix_sql(sql, name)CODE
LOWlib/sequel/database/schema_methods.rb667 def column_definition_constraint_hash(column, prefix)CODE
LOWlib/sequel/database/schema_methods.rb703 def column_references_append_key_sql(sql, column)CODE
LOWlib/sequel/database/schema_methods.rb708 def column_references_table_constraint_sql(constraint)CODE
LOWlib/sequel/database/schema_methods.rb718 def constraint_definition_sql(constraint)CODE
LOWlib/sequel/database/schema_methods.rb1052 def type_literal_generic_bigdecimal(column)CODE
LOWlib/sequel/database/schema_methods.rb1057 def type_literal_generic_bignum_symbol(column)CODE
LOWlib/sequel/database/schema_methods.rb1062 def type_literal_generic_date(column)CODE
LOWlib/sequel/database/schema_methods.rb1067 def type_literal_generic_datetime(column)CODE
LOWlib/sequel/database/schema_methods.rb1072 def type_literal_generic_falseclass(column)CODE
LOWlib/sequel/database/schema_methods.rb1077 def type_literal_generic_file(column)CODE
440 more matches not shown…
Self-Referential Comments106 hits · 321 pts
SeverityFileLineSnippetContext
MEDIUMspec/integration/eager_loader_test.rb30 # Create an map of parent_ids to nodes that have that parent idCOMMENT
MEDIUMlib/sequel/sql.rb51 # Create a new SQLTime instance given an hour, minute, second, and usec.COMMENT
MEDIUMlib/sequel/sql.rb105 # Create a to_s instance method that takes a dataset, and callsCOMMENT
MEDIUMlib/sequel/sql.rb259 # Create an SQL alias (+AliasedExpression+) of the receiving column or expression to the given alias.COMMENT
MEDIUMlib/sequel/sql.rb317 # Create a new BooleanExpression with NOT, representing the inversion of whatever self represents.COMMENT
MEDIUMlib/sequel/sql.rb328 # Create an SQL::AliasedExpression for the given expression and alias.COMMENT
MEDIUMlib/sequel/sql.rb643 # Create a qualified identifier with the given qualifier and identifierCOMMENT
MEDIUMlib/sequel/sql.rb1010 # Create an object with the given expression, alias, and optional column aliases.COMMENT
MEDIUMlib/sequel/sql.rb1209 # Create an object with the given conditions andCOMMENT
MEDIUMlib/sequel/sql.rb1264 # Create an object with the given tableCOMMENT
MEDIUMlib/sequel/sql.rb1301 # Create a constant with the given valueCOMMENT
MEDIUMlib/sequel/sql.rb1530 # Create a Function using this identifier as the functions name, withCOMMENT
MEDIUMlib/sequel/sql.rb1548 # Create an object with the given join_type and table expression.COMMENT
MEDIUMlib/sequel/sql.rb1588 # Create an object with the ON conditions and call super with theCOMMENT
MEDIUMlib/sequel/sql.rb1604 # Create an object with the given USING conditions and call superCOMMENT
MEDIUMlib/sequel/sql.rb1632 # Create an object with the given string, placeholder arguments, and parens flag.COMMENT
MEDIUMlib/sequel/sql.rb1725 # Create a Function using this identifier as the functions name, withCOMMENT
MEDIUMlib/sequel/sql.rb1823 # Create a new +Subscript+ appending the given subscript(s)COMMENT
MEDIUMlib/sequel/sql.rb1832 # Create a new +Subscript+ by accessing a subarray of a multidimensionalCOMMENT
MEDIUMlib/sequel/core.rb182 # Create a new module using the block, and set the temporary nameCOMMENT
MEDIUMlib/sequel/database/schema_methods.rb80 # Create a join table using a hash of foreign keys to referencedCOMMENT
MEDIUMlib/sequel/plugins/uuid.rb52 # Create a new UUID. This method can be overridden to use a separateCOMMENT
MEDIUMlib/sequel/plugins/pg_array_associations.rb306 # Create a many_to_pg_array association, for the case where the associatedCOMMENT
MEDIUMlib/sequel/plugins/pg_array_associations.rb313 # Create a pg_array_to_many association, for the case where the currentCOMMENT
MEDIUMlib/sequel/plugins/composition.rb60 # Define the necessary class instance variables.COMMENT
MEDIUMlib/sequel/plugins/composition.rb75 # Define a composition for this model, with name being the name of the composition.COMMENT
MEDIUMlib/sequel/plugins/prepared_statements.rb42 # Create a prepared statement, but modify the SQL used so that the model's columns are explicitlyCOMMENT
MEDIUMlib/sequel/plugins/prepared_statements.rb53 # Create a prepared statement based on the given dataset with a unique name for the givenCOMMENT
MEDIUMlib/sequel/plugins/subset_conditions.rb74 # Create a method that combines filters from already registeredCOMMENT
MEDIUMlib/sequel/plugins/subset_conditions.rb90 # Create a method that combines filters from already registeredCOMMENT
MEDIUMlib/sequel/plugins/association_pks.rb74 # Define a association_pks method using the block for the association reflectionCOMMENT
MEDIUMlib/sequel/plugins/pg_xmin_optimistic_locking.rb31 # Define the xmin column accessorCOMMENT
MEDIUMlib/sequel/plugins/nested_attributes.rb189 # Create a new associated object with the given attributes, validateCOMMENT
MEDIUMlib/sequel/plugins/many_through_many.rb230 # Create a many_through_many association. Arguments:COMMENT
MEDIUMlib/sequel/plugins/many_through_many.rb258 # Create the association methods and :eager_loader and :eager_grapher procs.COMMENT
MEDIUMlib/sequel/plugins/association_multi_add_remove.rb44 # Define the methods use to add/remove/set multiple associated objectsCOMMENT
MEDIUMlib/sequel/plugins/rcte_tree.rb77 # Create the appropriate parent, children, ancestors, and descendantsCOMMENT
MEDIUMlib/sequel/plugins/subset_static_cache.rb21 # The following methods will use the cache and not issue a database query:COMMENT
MEDIUMlib/sequel/plugins/inverted_subsets.rb46 # Define a not_ prefixed subset which inverts the subset condition.COMMENT
MEDIUMlib/sequel/plugins/subclasses.rb41 # Initialize the subclasses instance variable for the model.COMMENT
MEDIUMlib/sequel/plugins/sql_comments.rb58 # Define a method +meth+ on the given module +mod+ that will use automaticCOMMENT
MEDIUMlib/sequel/plugins/finder.rb46 # Create an optimized finder method using a dataset placeholder literalizer.COMMENT
MEDIUMlib/sequel/plugins/finder.rb199 # Define a finder method in the given module with the given method name thatCOMMENT
MEDIUMlib/sequel/plugins/finder.rb205 # Define a prepared_finder method in the given module that will call the associated preparedCOMMENT
MEDIUMlib/sequel/plugins/sharding.rb23 # Create a new object on the given shard s.COMMENT
MEDIUMlib/sequel/dataset/dataset_module.rb27 # Define a method in the moduleCOMMENT
MEDIUMlib/sequel/dataset/sql.rb231 # Define a dataset literalization method for the given type in the given module,COMMENT
MEDIUMlib/sequel/dataset/sql.rb148 # This method is used by +multi_insert+ to format insert statements andCOMMENT
MEDIUM…b/sequel/dataset/deprecated_singleton_class_methods.rb5 # This module implements methods to support deprecated use of extensions registeredCOMMENT
MEDIUMlib/sequel/dataset/actions.rb360 # This method is called with a columns array and an array of value arrays:COMMENT
MEDIUMlib/sequel/dataset/actions.rb559 # This method is supported on Oracle, but Oracle's MERGE support isCOMMENT
MEDIUMlib/sequel/dataset/placeholder_literalizer.rb147 # Create a PlaceholderLiteralizer by yielding a Recorder and dataset to theCOMMENT
MEDIUMlib/sequel/dataset/query.rb1230 # Create a subclass of the receiver's class, and include the given modulesCOMMENT
MEDIUMlib/sequel/dataset/misc.rb32 # Define a hash value such that datasets with the same class, DB, and optsCOMMENT
MEDIUMlib/sequel/dataset/misc.rb144 # Define a hash value such that datasets with the same class, DB, and opts,COMMENT
MEDIUMlib/sequel/connection_pool/timed_queue.rb123 # Create a new connection, after the pool's current size has alreadyCOMMENT
MEDIUMlib/sequel/connection_pool/timed_queue.rb255 # Create the maximum number of connections immediately. This should not be calledCOMMENT
MEDIUMlib/sequel/connection_pool/sharded_timed_queue.rb204 # Create a new connection, after the pool's current size has alreadyCOMMENT
MEDIUMlib/sequel/connection_pool/sharded_timed_queue.rb358 # Create the maximum number of connections immediately. This should not be calledCOMMENT
MEDIUMlib/sequel/connection_pool/sharded_threaded.rb342 # Create the maximum number of connections immediately. The calling code shouldCOMMENT
46 more matches not shown…
Slop Phrases67 hits · 196 pts
SeverityFileLineSnippetContext
MEDIUMlib/sequel/sql.rb384 # and return the result as a +NumericExpression+, so you can use the bitwise operatorsCOMMENT
MEDIUMlib/sequel/sql.rb394 # and return the result as a +StringExpression+, so you can use +COMMENT
MEDIUMlib/sequel/sql.rb700 # and return the result as a +NumericExpression+, so you can use the bitwise operatorsCOMMENT
MEDIUMlib/sequel/sql.rb710 # and return the result as a +StringExpression+, so you can use +COMMENT
MEDIUMlib/sequel/deprecated.rb5 # There are a two accessors you can use to change how/where the deprecation methods are printedCOMMENT
LOWlib/sequel/database/schema_generator.rb725 # On MySQL, make sure to use a symbol for the name of the column, as otherwise youCOMMENT
LOWlib/sequel/database/schema_generator.rb686 # On MySQL, make sure to use a symbol for the name of the column, as otherwise youCOMMENT
LOWlib/sequel/database/schema_generator.rb703 # On MySQL, make sure to use a symbol for the name of the column, as otherwise youCOMMENT
LOWlib/sequel/database/schema_generator.rb714 # On MySQL, make sure to use a symbol for the name of the column, as otherwise youCOMMENT
MEDIUMlib/sequel/plugins/pg_array_associations.rb31 # types, so you can use them as you would any other association. UnlikeCOMMENT
MEDIUMlib/sequel/plugins/json_serializer.rb86 # fields, you can use the :fields option, which will call set_fields withCOMMENT
MEDIUMlib/sequel/plugins/json_serializer.rb91 # If you want to update an existing instance, you can use the from_jsonCOMMENT
LOWlib/sequel/plugins/single_table_inheritance.rb211 # If calling set_dataset manually, make sure to set the datasetCOMMENT
MEDIUMlib/sequel/plugins/auto_validations.rb59 # have an error associated with them, you can use the skip_invalid option:COMMENT
MEDIUMlib/sequel/plugins/boolean_subsets.rb13 # Using this, you can change the method name and arguments for each column.COMMENT
MEDIUMlib/sequel/plugins/unused_associations.rb194 # Then you can add the :modify_associations plugin option toCOMMENT
MEDIUMlib/sequel/plugins/rcte_tree.rb56 # Note that you can change the name of the above associations by specifyingCOMMENT
MEDIUMlib/sequel/plugins/xml_serializer.rb89 # fields, you can use the :fields option, which will call set_fields withCOMMENT
MEDIUMlib/sequel/plugins/xml_serializer.rb94 # If you want to update an existing instance, you can use the from_xmlCOMMENT
MEDIUMlib/sequel/plugins/xml_serializer.rb295 # builder object so you can add additional XML tags.COMMENT
MEDIUMlib/sequel/plugins/sql_comments.rb35 # other plugins, you can use the appropriate <tt>sql_comments_*_methods</tt>COMMENT
MEDIUMlib/sequel/plugins/csv_serializer.rb50 # fields, you can use the :headers option.COMMENT
MEDIUMlib/sequel/plugins/csv_serializer.rb54 # If you want to update an existing instance, you can use the from_csvCOMMENT
MEDIUMlib/sequel/plugins/concurrent_eager_loading.rb20 # With the concurrent_eager_loading plugin, you can use the +eager_load_concurrently+COMMENT
MEDIUMlib/sequel/plugins/concurrent_eager_loading.rb36 # concurrent. If you want to force a non-concurrent eager load, you can useCOMMENT
LOWlib/sequel/plugins/concurrent_eager_loading.rb66 # concurrent eager loading, you need to make sure you are not modifyingCOMMENT
MEDIUMlib/sequel/plugins/concurrent_eager_loading.rb69 # To keep things simple, you can use +Sequel.synchronize_with+ to onlyCOMMENT
MEDIUMlib/sequel/plugins/validation_helpers.rb263 # is case sensitive by default, you can use:COMMENT
MEDIUMlib/sequel/plugins/column_encryption.rb180 # To force reencryption for existing records that are using the older key, you can useCOMMENT
LOWlib/sequel/plugins/column_encryption.rb230 # equal. If this is an issue, make sure you use a serialization format where allCOMMENT
MEDIUMlib/sequel/dataset/prepared_statements.rb243 # support and using the same argument hash so that you can useCOMMENT
MEDIUMlib/sequel/extensions/pg_hstore.rb26# and have activated refinements for the file, you can also use Hash#hstore:COMMENT
MEDIUMlib/sequel/extensions/pg_array_ops.rb14# If you have also loaded the pg_array extension, you can useCOMMENT
MEDIUMlib/sequel/extensions/pg_array_ops.rb26# and have activated refinements for the file, you can also use Symbol#pg_array:COMMENT
MEDIUMlib/sequel/extensions/date_parse_input_handler.rb5# extension does not change behavior. However, you can use theCOMMENT
MEDIUMlib/sequel/extensions/pg_auto_parameterize_in_array.rb32# you can use the +:treat_string_list_as_text_array+ Database option is used. ThisCOMMENT
LOWlib/sequel/extensions/pg_row.rb25# If you plan to use arrays of composite types, make sure you load theCOMMENT
MEDIUMlib/sequel/extensions/pg_row.rb37# and have activated refinements for the file, you can also use Array#pg_row:COMMENT
MEDIUMlib/sequel/extensions/pg_row.rb77# To get a list of such anonymous classes, you can use the following code:COMMENT
MEDIUMlib/sequel/extensions/pg_hstore_ops.rb15# If you have also loaded the pg_hstore extension, you can useCOMMENT
MEDIUMlib/sequel/extensions/pg_hstore_ops.rb27# and have activated refinements for the file, you can also use Symbol#hstore:COMMENT
MEDIUMlib/sequel/extensions/error_sql.rb4# that you can use to get the sql that caused the errorCOMMENT
MEDIUMlib/sequel/extensions/pg_range.rb27# and have activated refinements for the file, you can also use Range#pg_range:COMMENT
MEDIUMlib/sequel/extensions/pg_range_ops.rb14# If you have also loaded the pg_range or pg_multirange extensions, you can useCOMMENT
MEDIUMlib/sequel/extensions/pg_range_ops.rb27# and have activated refinements for the file, you can also use Symbol#pg_range:COMMENT
MEDIUMlib/sequel/extensions/async_thread_pool.rb107# On Ruby 2.2+, you can use +itself+ instead of +__value+. It's preferable toCOMMENT
MEDIUMlib/sequel/extensions/date_arithmetic.rb10# Then you can use the Sequel.date_add and Sequel.date_sub methodsCOMMENT
MEDIUMlib/sequel/extensions/pg_extended_integer_support.rb60# integers outside of PostgreSQL bigint range, you can use a strategyCOMMENT
MEDIUMlib/sequel/extensions/stdio_logger.rb15# Then you you can use Sequel::StdioLogger to wrap IO objects that youCOMMENT
MEDIUMlib/sequel/extensions/is_distinct_from.rb13# Then you can use the Sequel.is_distinct_from to create the expressionCOMMENT
MEDIUMlib/sequel/extensions/string_agg.rb24# Then you can use the Sequel.string_agg method to return a SequelCOMMENT
MEDIUMlib/sequel/extensions/pg_json_ops.rb19# If you have also loaded the pg_json extension, you can useCOMMENT
MEDIUMlib/sequel/extensions/pg_json_ops.rb33# and have activated refinements for the file, you can also use Symbol#pg_json orCOMMENT
MEDIUMlib/sequel/extensions/pg_json.rb25# you can use +__getobj__+ (this comes from Ruby's delegate library).COMMENT
MEDIUMlib/sequel/extensions/pg_json.rb43# and have activated refinements for the file, you can also use theCOMMENT
MEDIUMlib/sequel/extensions/pg_array.rb24# and have activated refinements for the file, you can also use Array#pg_array:COMMENT
LOWlib/sequel/extensions/constraint_validations.rb16# You also need to make sure to add the metadata table for the automaticCOMMENT
MEDIUMlib/sequel/extensions/sqlite_json_ops.rb28# and have activated refinements for the file, you can also use Symbol#sqlite_json_op:COMMENT
MEDIUMlib/sequel/extensions/pg_inet_ops.rb21# and have activated refinements for the file, you can also use Symbol#pg_inet:COMMENT
MEDIUMlib/sequel/extensions/pg_row_ops.rb14# If you have also loaded the pg_row extension, you can useCOMMENT
7 more matches not shown…
Example Usage Blocks80 hits · 121 pts
SeverityFileLineSnippetContext
LOWlib/sequel/plugins/modification_detection.rb28 # Usage:COMMENT
LOWlib/sequel/plugins/input_transformer.rb19 # Usage:COMMENT
LOWlib/sequel/plugins/uuid.rb10 # Usage:COMMENT
LOWlib/sequel/plugins/update_primary_key.rb16 # Usage:COMMENT
LOWlib/sequel/plugins/json_serializer.rb114 # Usage:COMMENT
LOWlib/sequel/plugins/accessed_columns.rb21 # Usage:COMMENT
LOWlib/sequel/plugins/error_splitter.rb26 # Usage:COMMENT
LOWlib/sequel/plugins/association_proxies.rb45 # Usage:COMMENT
LOWlib/sequel/plugins/empty_failure_backtraces.rb10 # Usage:COMMENT
LOWlib/sequel/plugins/paged_operations.rb70 # Usage:COMMENT
LOWlib/sequel/plugins/enum.rb54 # Usage:COMMENT
LOWlib/sequel/plugins/validate_associated.rb12 # Usage:COMMENT
LOWlib/sequel/plugins/single_table_inheritance.rb25 # Usage:COMMENT
LOWlib/sequel/plugins/dataset_associations.rb51 # Usage:COMMENT
LOWlib/sequel/plugins/instance_specific_default.rb70 # Usage:COMMENT
LOWlib/sequel/plugins/active_model.rb13 # Usage:COMMENT
LOWlib/sequel/plugins/unlimited_update.rb9 # Usage:COMMENT
LOWlib/sequel/plugins/eager_graph_eager.rb54 # Usage:COMMENT
LOWlib/sequel/plugins/pg_auto_constraint_validations.rb76 # Usage:COMMENT
LOWlib/sequel/plugins/table_select.rb19 # Usage:COMMENT
LOWlib/sequel/plugins/update_or_create.rb31 # Usage:COMMENT
LOWlib/sequel/plugins/instance_hooks.rb23 # Usage:COMMENT
LOWlib/sequel/plugins/blacklist_security.rb10 # Usage:COMMENT
LOW…validations_constraint_validations_presence_message.rb21 # Usage:COMMENT
LOWlib/sequel/plugins/split_values.rb29 # Usage:COMMENT
LOWlib/sequel/plugins/insert_returning_select.rb13 # Usage:COMMENT
LOWlib/sequel/plugins/prepared_statements.rb16 # Usage:COMMENT
LOWlib/sequel/plugins/subset_conditions.rb12 # Usage:COMMENT
LOWlib/sequel/plugins/touch.rb19 # Usage:COMMENT
LOWlib/sequel/plugins/singular_table_names.rb16 # Usage:COMMENT
LOWlib/sequel/plugins/association_pks.rb59 # Usage:COMMENT
LOWlib/sequel/plugins/columns_updated.rb10 # Usage:COMMENT
LOWlib/sequel/plugins/update_refresh.rb17 # Usage:COMMENT
LOWlib/sequel/plugins/eager_each.rb23 # Usage:COMMENT
LOWlib/sequel/plugins/auto_validations.rb63 # Usage:COMMENT
LOWlib/sequel/plugins/skip_saving_columns.rb31 # Usage:COMMENT
LOWlib/sequel/plugins/skip_create_refresh.rb19 # Usage:COMMENT
LOWlib/sequel/plugins/many_through_many.rb74 # Usage:COMMENT
LOWlib/sequel/plugins/caching.rb33 # Usage:COMMENT
LOWlib/sequel/plugins/association_multi_add_remove.rb31 # Usage:COMMENT
LOWlib/sequel/plugins/single_statement_dataset_destroy.rb16 # Usage:COMMENT
LOWlib/sequel/plugins/column_select.rb20 # Usage:COMMENT
LOWlib/sequel/plugins/boolean_subsets.rb16 # Usage:COMMENT
LOWlib/sequel/plugins/auto_restrict_eager_graph.rb38 # Usage:COMMENT
LOWlib/sequel/plugins/async_thread_pool.rb18 # Usage:COMMENT
LOWlib/sequel/plugins/prepared_statements_safe.rb13 # Usage:COMMENT
LOWlib/sequel/plugins/column_conflicts.rb24 # Usage:COMMENT
LOWlib/sequel/plugins/insert_conflict.rb29 # Usage:COMMENT
LOWlib/sequel/plugins/hook_class_methods.rb26 # Usage:COMMENT
LOWlib/sequel/plugins/forbid_lazy_load.rb96 # Usage:COMMENT
LOWlib/sequel/plugins/after_initialize.rb8 # Usage:COMMENT
LOWlib/sequel/plugins/inspect_pk.rb13 # Usage:COMMENT
LOWlib/sequel/plugins/association_lazy_eager_option.rb28 # Usage:COMMENT
LOWlib/sequel/plugins/xml_serializer.rb108 # Usage:COMMENT
LOWlib/sequel/plugins/throw_failures.rb30 # Usage:COMMENT
LOWlib/sequel/plugins/string_stripper.rb19 # Usage:COMMENT
LOWlib/sequel/plugins/timestamps.rb11 # Usage:COMMENT
LOWlib/sequel/plugins/inverted_subsets.rb15 # Usage:COMMENT
LOWlib/sequel/plugins/whitelist_security.rb11 # Usage:COMMENT
LOWlib/sequel/plugins/deprecated_associations.rb35 # Usage:COMMENT
20 more matches not shown…
Decorative Section Separators34 hits · 105 pts
SeverityFileLineSnippetContext
MEDIUMlib/sequel/database/dataset_defaults.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/dataset_defaults.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/database/dataset.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/dataset.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/database/features.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/features.rb9 # ---------------------COMMENT
MEDIUMlib/sequel/database/transactions.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/transactions.rb10 # ---------------------COMMENT
MEDIUMlib/sequel/database/connecting.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/connecting.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/database/query.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/query.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/database/logging.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/logging.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/database/schema_methods.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/schema_methods.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/database/misc.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/database/misc.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/sql.rb220 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/sql.rb223 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/sql.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/sql.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/prepared_statements.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/prepared_statements.rb9 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/features.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/features.rb9 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/actions.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/actions.rb10 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/graph.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/graph.rb10 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/query.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/query.rb8 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/misc.rb5 # ---------------------COMMENT
MEDIUMlib/sequel/dataset/misc.rb8 # ---------------------COMMENT
AI Slop Vocabulary27 hits · 46 pts
SeverityFileLineSnippetContext
LOWlib/sequel/database/schema_generator.rb355 # To just create a constraint, the first argument should be an array of column symbolsCOMMENT
LOWlib/sequel/database/connecting.rb86 # If subadapter file doesn't exist, just return,COMMENT
LOWlib/sequel/database/logging.rb52 # Remove any existing loggers and just use the given logger:COMMENT
LOWlib/sequel/plugins/uuid.rb21 # and it will just use the settings given or the default settings. Options:COMMENT
LOWlib/sequel/plugins/eager_graph_eager.rb17 # just add them to the eager_graph call:COMMENT
LOWlib/sequel/plugins/column_conflicts.rb8 # By default, Model#get_column_value and #set_column_value just call send, thisCOMMENT
LOWlib/sequel/plugins/throw_failures.rb69 # caught, just return the originally generated error.COMMENT
LOWlib/sequel/plugins/throw_failures.rb78 # caught, just return the originally generated error.COMMENT
LOWlib/sequel/plugins/timestamps.rb26 # and it will just use the settings given or the default settings. Options:COMMENT
LOWlib/sequel/plugins/validation_contexts.rb26 # objects and updating existing objects, just use +new?+.COMMENT
LOWlib/sequel/plugins/static_cache.rb253 # If frozen: false is not used, just return the argument. Otherwise,COMMENT
MEDIUMlib/sequel/plugins/validation_class_methods.rb352 # database type. This is generally useful in conjunction withCOMMENT
MEDIUMlib/sequel/dataset/query.rb281 # Only used in conjunction with :alias.COMMENT
LOWlib/sequel/dataset/query.rb78 # On Ruby <2.4, just use Object#clone directly, since we don'tCOMMENT
MEDIUMlib/sequel/connection_pool/sharded_single.rb22 # Adds new servers to the connection pool. Primarily used in conjunction with primary/replicaCOMMENT
LOWlib/sequel/extensions/null_dataset.rb9# anything. With standard Sequel, you'd probably just add aCOMMENT
LOWlib/sequel/extensions/inflector.rb60 # for strings, not regular expressions. You simply pass the irregular in singular and plural form.COMMENT
MEDIUMlib/sequel/extensions/arbitrary_servers.rb32# You can use this extension in conjunction with the server_blockCOMMENT
MEDIUMlib/sequel/extensions/arbitrary_servers.rb45# Anyone using this extension in conjunction with the server_blockCOMMENT
LOWlib/sequel/adapters/postgres.rb358 # with a filename, you should just use +run+ instead of this method.COMMENT
LOWlib/sequel/adapters/postgres.rb416 # with a filename, you should just use +run+ instead of this method.COMMENT
LOWlib/sequel/adapters/amalgalite.rb46 # type doesn't match a known type, just return the value.COMMENT
LOWlib/sequel/adapters/shared/postgres.rb3059 # This branch is unreachable in tests, but it seems better to just returnCOMMENT
LOWlib/sequel/adapters/shared/postgres.rb3170 # Raw SQL used or RETURNING disabled, just use the default behaviorCOMMENT
LOWlib/sequel/model/associations.rb878 # If +s+ is an array, map +s+ over the block. Otherwise, just call theCOMMENT
LOWlib/sequel/model/associations.rb3538 # just return results as simple objects. This is useful if youCOMMENT
LOWlib/sequel/model/inflections.rb57 # for strings, not regular expressions. You simply pass the irregular in singular and plural form.COMMENT
Redundant / Tautological Comments24 hits · 45 pts
SeverityFileLineSnippetContext
LOWlib/sequel/deprecated.rb39 # Print the message and possibly backtrace to the output.COMMENT
LOWlib/sequel/plugins/instance_specific_default.rb72 # # Set how to handle associations that could be instance specificCOMMENT
LOWlib/sequel/plugins/instance_specific_default.rb77 # # Set how to handle associations that could be instance specificCOMMENT
LOWlib/sequel/plugins/instance_specific_default.rb81 # Set how to handle associations that could be instance specific but didCOMMENT
LOWlib/sequel/plugins/validation_helpers.rb212 # Check if value is an instance of a class. If +klass+ is an array,COMMENT
LOWlib/sequel/dataset/query.rb1313 # Add the dataset to the list of compoundsCOMMENT
LOWlib/sequel/connection_pool/sharded_threaded.rb223 # Check if connection was checked in between when assign_connection failed and now.COMMENT
LOWlib/sequel/connection_pool/threaded.rb169 # Check if connection was checked in between when assign_connection failed and now.COMMENT
LOWlib/sequel/extensions/pg_hstore_ops.rb143 # Check if the receiver contains all of the keys in the given array:COMMENT
LOWlib/sequel/extensions/pg_hstore_ops.rb150 # Check if the receiver contains any of the keys in the given array:COMMENT
LOWlib/sequel/extensions/pg_hstore_ops.rb157 # Check if the receiver contains all entries in the other hstore:COMMENT
LOWlib/sequel/extensions/pg_hstore_ops.rb164 # Check if the other hstore contains all entries in the receiver:COMMENT
LOWlib/sequel/extensions/pg_hstore_ops.rb171 # Check if the receiver contains a non-NULL value for the given key:COMMENT
LOWlib/sequel/extensions/pg_hstore_ops.rb192 # Check if the receiver contains the given key:COMMENT
LOWlib/sequel/extensions/identifier_mangling.rb80 # Set whether to quote identifiers (columns and tables) for this database:COMMENT
LOWlib/sequel/extensions/pg_json_ops.rb625 # Check if the receiver contains all of the keys in the given array:COMMENT
LOWlib/sequel/extensions/pg_json_ops.rb632 # Check if the receiver contains any of the keys in the given array:COMMENT
LOWlib/sequel/extensions/pg_json_ops.rb639 # Check if the receiver contains all entries in the other jsonb:COMMENT
LOWlib/sequel/extensions/pg_json_ops.rb646 # Check if the other jsonb contains all entries in the receiver:COMMENT
LOWlib/sequel/extensions/pg_json_ops.rb660 # Check if the receiver contains the given key:COMMENT
LOWlib/sequel/extensions/pg_extended_date_support.rb69 # Set whether to allow infinite timestamps/dates. Make sure theCOMMENT
LOWlib/sequel/adapters/jdbc.rb780 # Set whether to convert Java types to ruby types in the returned dataset.COMMENT
LOWlib/sequel/adapters/shared/sqlanywhere.rb12 # Set whether to convert smallint type to boolean for this Database instanceCOMMENT
LOWlib/sequel/model/base.rb1979 # Set values to the provided hash. Called after a create,COMMENT
AI Response Leakage2 hits · 15 pts
SeverityFileLineSnippetContext
HIGHlib/sequel/plugins/class_table_inheritance.rb35 # key for that table. In this example, the employees table has an id columnCOMMENT
HIGHlib/sequel/plugins/class_table_inheritance.rb44 # In this example the staff table also stores Cook model objects and theCOMMENT
Fake / Example Data6 hits · 8 pts
SeverityFileLineSnippetContext
LOWspec/extensions/dataset_run_spec.rb7 db["SQL with ?", "placeholder"].extension(:dataset_run).run.must_be_nilCODE
LOWspec/extensions/dataset_run_spec.rb8 db.sqls.must_equal ["SQL with 'placeholder'"]CODE
LOWspec/extensions/dataset_run_spec.rb13 db["SQL with ?", "placeholder"].extension(:dataset_run).server(:a).run.must_be_nilCODE
LOWspec/extensions/dataset_run_spec.rb14 db.sqls.must_equal ["SQL with 'placeholder' -- a"]CODE
LOWspec/adapters/postgres_spec.rb5326 [{"name": "One", "director": "John Doe"},CODE
LOWspec/adapters/postgres_spec.rb5349 {:user_id=>1, :movie_id=>1, :mname=>"One", :director=>"John Doe", :book_id=>nil, :bname=>nil, :author_id=>nil, :CODE