Sorcerer's Tower

Entries tagged "cfRegex"

cfRegex is a complete regex implementation for CFML, providing additional features, functionality and flexibility than the existing RE functions in CFML.

Visit the project homepage to find out more.

Found 2 entries tagged with "cfregex".

Repositories, Releases and Status Updates

There have been releases of the software on Sorcerer's Isle, mostly to update URLs and fix the lack of documentation in the download packages.

The reason for the URL changes is the migration of repositories from GitHub onto my own server, details of which will follow this quick summary of the releases.

If you want more details on the releases, read the full version of this post, but in summary...


So that's the quick overview, but why? The primary reason for all of these releases was to change their repository URLs, from[reponame] to[reponame].

This is not a total move away from GitHub - it is still used for issue tracking (for the time being), and I'll most likely still push code there when full releases are made - but it will only be a secondary source/mirror.

The motivation for doing this is to reduce dependency on centralised proprietary services, and removing the unwanted requirement to have JavaScript enabled.

This move would have happened a great deal sooner, but when I looked into the various Git repository browsers available, I found a lot of bloated software with features I neither needed nor wanted, hundreds of megabytes of code and dependencies, no ability to meaningfully change how it looks, and so on.

Long story short: irritated by how everything sucked, whilst also looking for a decent project to extend my Python skills, I created a lightweight and themeable Git repository browser.


GitFrit is capable of running on CentOS 7, only needing Python 3.6 (or newer) and Git 2.24 (or newer). The source code is currently ~0.5MB (half of that is the included templating library, which I'd like to streamline).

GitFrit is tiny in comparison to almost everything else available - even git-web with ~0.3MB of source is only slightly smaller, and that has its markup intertwined with Perl, preventing it from being themeable.

GitFrit is not quite ready for release yet - I took shortcuts to get it up onto Sorcerer's Isle sooner, and those now need to be cleaned up into configuration options, all of which needs to be documented, plus there's a couple more features I'd like it to have first.

When those changes (and thus a release) will happen is uncertain - I need to shift focus back onto other priorities, and unless there's significant interest in GitFrit, it may take me a while to get back to it and spend the time to make it publicly available.

If you are interested, do send me an email so I can let you know when it's ready.

Introducing the cfRegex Project!

The cfRegex project is two things. Firstly, it is a complete regex implementation for CFML, providing more functionality, flexibility, features and power than the existing CFML RE functions. Secondly, it is a drive to encourage people to properly learn and make use of regex.

Regex is a very flexible language for matching patterns within text, and it has the power to greatly simplify certain programming tasks. However, it can also be intimidating to people not experienced with it.

This problem can be compounded by the relatively limited support for regex in CFML, which often means code is written that is more complex than should be necessary.

cfRegex helps to address both these problems. It provides a number of functions and features that help to reduce the amount of code which programmers have to write, whilst also helping to make their code clearer and easier to understand. In addition, the project provides documentation, not just for its own features, but also for regex itself, helping people to understand exactly what their expressions are matching, and how to get the most out of regex.

Whilst cfRegex is still at a relatively early stage, it is currently usable, and if you're a fan of regex it is certainly worth checking out.

It currently runs on CF 9.0.1, OpenBD 2.0, Railo 3.2 and later.
(Support for CF8 and others will be considered if enough people need it.)

The documentation should tell you everything you need to know about using it, but if not then get it touch and say what's missing so it can be fixed!

If you get stuck, there's a mailing list where you can receive answers to any problems or questions you have.