Note: I am not a lawyer and the following should not be considered legal advice. Double-check everything and hire a lawyer.
As I continue to work on Veure, I have the added fun of less time spent working on it while I try to understand the legal problems. If you're going to create and publish your own game, you'll invariably hit legal issues. What's worse, you might discuss them publicly and some bright spark will vaguely remember an online article, dumbed down for mass consumption, regarding a complicated libel lawsuit for the print industry and swear up and down that it applies to you. They won't supply a link.
In fact, software games seem to have some peculiar legal issues all their own, compounded by the fact that they're often indie games created by hyper-intelligent, well-read individuals who either don't think of legal issues or assume they already understand them. On the off chance that they're right about a given issue, there's also one tiny detail they often overlook.
We recently saw an example of an elasticsearch token filter called the catalan_stemmer. The Catalan language has other token filters available:
Let's see what they do.
The catalan_stop filter removes a list (common) of words. Given the example search:
porros amb balsàmic
applying the catalan_stop filter will remove the word amb (with) from the indexing.
This stop filter is defined as:
and it is customizable.
The catalan_elision filter removes elisions. Given the example search:
applying the catalan_elision filter would remove the d' from the indexing.
The catalan_elision filter is defined as such:
"articles": [ "d", "l", "m", "n", "s", "t"]
The catalan_keywords filter allows one to exclude certain words from being stemmed. An example definition of the keywords filter is:
In this example the word porró would not be stemmed to porr
Catalan Analzyer - Sum the Parts
Getting started with Travis
I felt like I should give Travis a try and picked a recent github project of mine that I knew had a decent testsuite.
The instructions on how to get started with travis were quite simple and soon the project had its own travis page.
Unknown build failure
I wondered why the build failed after adding a very simple .travis.yml file to the project.
$ cpanm --quiet --installdeps --notest .
! Configuring . failed. See /home/travis/.cpanm/work/1411809721.1412/build.log for details.
The command "eval cpanm --quiet --installdeps --notest ." failed. Retrying, 2 of 3.
So cpanm failed, but where can I see what's written in the log? My attempts to view it with the travis directive "after_failure" failed and after trying a few more things I checked the project files again. I noticed it was a Dist::Zilla project and there was no Makefile.PL or Build.PL present and travis needs either of them to get started.
After almost a week of adding more and more modules I've got to the 9th revision of
DWIM Perl for Linux
It explicitly includes more than 400 CPAN modules, but with their dependencies it is probably a lot more. The idea behind this distribution is to make it very fast and easy to get started with Perl. Without learning how to brew perl and how to install CPAN modules. Without fighting external dependencies or some failure in the latest release of a CPAN module.
I need your help to test-drive the distribution and to fill the holes. The modules that might be really needed but have not yet been included.
It would be of great help if you downloaded the latest distribution. Configured it as described on the website and let me know which additional modules your application might need or if something is broken.
Thanks to our generous sponsors we can provide free breakfast, lunch, live band
and social event for every attendee of the Perl::Dancer conference in Hancock, New York.
Attendees and speakers from USA, Canada and Europe are coming to have lots of fun at
the marvelous venue.
There are still tickets available both for the training and presentations days, please
go to registration to purchase your ticket.
Somehow long ago I wrote some additional rules for Perl in my .ctags file and published it. I even invited you to help improve and polish it or simply use it and modify it as you wish.
Recently I tried the Atom editor which is very trendy now.
I was happy to find it uses Exuberant Ctags and the rules in my ~/.ctags file just worked.
Then I just made a pull request to https://github.com/atom/symbols-view. The pull request got finally accepted and the extended support for Perl is available since version 0.65.0.
Exuberant Ctags can be used with Vim, jEdit, Sublime Text, Ultra Edit... any IDE/Text Editor that uses it natively or has a plugin for it. I use it to quickly jump around in my Ado project.
Keymaps: ctrl/cmd+r to see current file symbols; shift+ctrl/cmd+r for project symbols.
Enjoy it, modify it as you wish and improve it.
When dealing with elasticearch, one has to consider how they want to manage the analysis of the content that is ingested. The use of templates is a way to ease this burden of managing analyzer settings. Let's learn by example...
Here's a template that defines an analyzer, cat_stems, which utilizes the built-in catalan stemmer. For example, both singular: porro and plural: porros will be reduced to porr when analyzed by the stemmer. Moreover, this template will be applied to any index created with a name that starts with cat.
Here's how we register the new template with elasticsearch so that any future index starting with the letters cat will include the analzyer cat_stems in its settings.
curl -H "Content-Type: application/json" --data-binary @cat_stems.template.json -XPUT http://localhost:9200/_template/catalan_stemmer
To see what we just created:
curl -XGET http://localhost:9200/_template/catalan_stemmer?pretty
which results in:
Now I call DBD::SQLite 1.43_08 a release candidate of the next stable DBD::SQLite. Please test it with your modules/applications and let me know if you find anything. Due to some change(s) in the upstream SQLite library (since SQLite 3.8.5), this release candidate is known to break older versions of DBIx::Class (prior to 0.082800 released on 2014-09-25). If you use older versions of DBIx::Class, you might also want to upgrade it, or keep DBD::SQLite 1.42 (bundled with older SQLite 126.96.36.199 library) for now. Other major O/R mappers seem not affected by this upgrade. If there's no blocker nor request to wait, I'll release 1.44 in late October, hopefully on 26th.
Other notable changes since the last stable release follow:
- This release candidate contains new modules to support custom virtual tables written in Perl (by DAMI).
- If you set sqlite_unicode to true, SQL statements will be upgraded to avoid inconsistency between embedded params and bind params (RT #96877) (by DAMI)
See Changes file in the distribution for other fixes and improvements.