Contribuciones Open Source
Construyendo mejores herramientas y experiencias para desarrolladores a través de contribuciones significativas a proyectos open source
Contribution Statistics
Proyectos
clj-kondo
Developer ToolsA static analyzer and linter for Clojure code that sparks joy
16 Contribuciones
New Linter: unused-excluded-var
Implemented a new linter to warn on unused vars in :refer-clojure :exclude, helping developers maintain cleaner code by identifying unnecessary exclusions.
New Linter: destructured-or-always-evaluates
Created a linter to warn on s-expressions in :or defaults in map destructuring, preventing common pitfalls where developers expect lazy evaluation but get eager evaluation.
New Linter: unquote-not-syntax-quoted
Developed a linter to warn on ~ and ~@ usage outside syntax-quote (`), catching common macro-related mistakes early in development.
New Linter: unresolved-excluded-var
Built a linter to warn on non-existing vars in :refer-clojure :exclude, preventing typos and references to non-existent symbols.
Array Type System Support
Added comprehensive type checking support for array operations including to-array, alength, aget, aset, and aclone functions. Introduced new array type for better static analysis.
Enhanced Type Checking for Collections
Extended type checking support to sorted-map-by, sorted-set, and sorted-set-by functions, improving static analysis coverage for sorted collection operations.
Fix Unexpected Recur False Positive
Fixed false positive :unexpected-recur warning when recur is used inside clojure.core.match/match expressions, improving accuracy of control flow analysis.
Namespaced Maps Analysis
Implemented analysis to report unresolved namespace for namespaced maps with unknown aliases, catching configuration errors in namespaced keyword usage.
Ratio Type Support with Numerator and Denominator functions type checking
Add comprehensive :ratio type support to clj-kondo's type system, enabling type checking for the numerator and denominator functions.
Type Support for repeatedly function
Added type definitions for repeatedly.
Fix `:refer-clojure :exclude` handling for ignored vars
Improved handling of `:refer-clojure :exclude` to properly ignore elements with `#_clj-kondo/ignore` metadata.
New Linter: Condition Always True for clojure.test/is
Implemented a linter to warn on literals and constants used in clojure.test/is forms that always evaluate to true, preventing common testing mistakes.
Type Checking Support for Clojure Test Functions
Added comprehensive type checking for clojure.test functions like is, testing, deftest, etc., enabling static analysis to catch type mismatches in test code.
New Linter: Redundant Format
Implemented a linter to warn when format strings are used without any format specifiers, indicating potential misuse of formatting functions.
Fix regression for unused binding warnings
Resolved a regression causing false positives for unused binding warnings in `~'~` unquote expressions.
Fix unused value linter for `defmethod` bodies
Updated the unused value linter to allow unused values in `defmethod` bodies.
cljfmt
Developer ToolsA tool for formatting Clojure code according to consistent style guidelines
1 Contribución
Configurable Column Alignment
Introduced :align-single-column-lines? configuration option to control column alignment behavior in maps and forms. This prevents excessive horizontal padding when forms contain multi-line values.
Logseq
ProductivityA privacy-first, open-source knowledge base that works on top of local plain-text Markdown and Org-mode files
3 Contribuciones
Autopair Parenthesis Behavior Improvements
Enhanced autopairing logic for parentheses to only trigger in appropriate contexts (e.g., when preceded by whitespace), preventing unwanted insertions in URLs and other patterns.
Fix Task List Checkbox Toggle Behavior
Resolved edge cases in task list checkbox toggling to preserve expected casing and behavior. Implemented safer replace semantics for consistent checkbox state transitions.
Fix Image Navigation Order in Maximize Mode
Corrected image navigation logic in maximize (lightbox) mode to maintain proper order when switching between images. Fixed inconsistent index calculations causing confusing navigation.