Does anyone know how to build cflint locally? I a...
# cfml-general
m
Does anyone know how to build cflint locally? I am following the instructions (
./gradlew build
) and not getting the full jar. (I would ask in the #C5ZTD7XFU channel but that is archived)
b
Hey Mark, that project is available as a VSCode extension, will that work?
m
Not really since it’s old. I am trying to fix the static method calls
g
Mark, I can help next week ? Check out the cfmleditor fork as well if you like
👍 1
I use mvn clean package
m
Thanks for that @Gareth! I switched to the dev branch and had to change the jackson version to:
<jackson.version>2.18.2</jackson.version>
to get it all to work., As an aside the repository:
Copy code
<repository>
			<id>cfmlprojects</id>
			<name>cfmlprojects</name>
			<url><https://cfmlprojects.org/artifacts></url>
		</repository>
is unreachable it seems
g
There was a PR regarding static methods in the cfmleditor fork as well, I haven't had time to review it
Also if you'd like organisation maintainer / admin access let me know, looking for people in case I'm unavailable or not around
m
I am not quite there yet, still trying to learn it all, although I was thinking of re-writing the implementation but based on the tokenization from cftokens (https://github.com/jcberquist/cftokens) but that is a bit of a heavy lift compared to just helping out with cflint. The dev branch doesnt break anymore on statics, but the naming rules are odd, so they might need their own section,for example
Copy code
import io.markdrew.lang.Strings;

cleanEmail = Strings::cleanEmail(form.email);
CFParser tells me off about
Strings
in the second line not being camelCase, but in this case it's not a variable, but a Component/Class
Screenshot 2025-01-28 at 10.36.07.png
g
Is there a flag that defines the variable as a class definition in the cfparser object ? Might be able to skip the variable naming rule if we can inspect the property, I'll have a look tomorrow
m
I have been looking round the code, but dont understand yet how to develop and debug it
(as an aside, I am working on a Lucee Language Server hence I am looking at all of this)
g
ok, do you want same camel case rule to be applied or would you prefer a different rule the can be enabled / disabled ?
m
In this case (and I will check with Micha, since I am not a fan of statics as it is) I am pretty sure that is not a variable per se at all so no rules should be applied to it (but IU am not totally sure on this)
g
LSP hey, cool, have you seen software cobblers https://github.com/softwareCobbler/cfc and my https://github.com/cfmleditor/tree-sitter-cfml attempt ?
errr
tree-sitter-cfml isn't an LSP
m
I am writing it in CFML btw, so I got it all running , waiting to get clearance to make it open source
the extension is of course node, but all it does is start a lucee server
g
is it fast ?
we can chat off thread if you like ?