Chicago Boss 0.7.5 is available

287 views
Skip to first unread message

Evan Miller

unread,
May 29, 2012, 11:00:57 AM5/29/12
to ChicagoBoss
Hi everyone,

We've had some nice patches from the past few weeks, so it feels about
time for a release. With this release we've finally nailed two BossDB
bugs that were causing big-time headaches: the MySQL timeout bug and
the Riak search bug. In addition there is an important security fix
for cb_admin. Read on for more.

Download: http://www.chicagoboss.org/ChicagoBoss-0.7.5.tar.gz

cb_admin: http://www.chicagoboss.org/cb_admin-0.7.5.tar.gz

Security
* [CBAdmin] The "model" controller did not respect "allow_ip_blocks"
option, i.e. would allow anyone access. Thanks to Guido Witmond for
the report

Features

* Project .app.src can now specify {vsn, git | hg | svn | bzr} to
infer the application version from the VCS of your choice. Thanks to
Bip Thelin
* New "model_manager" option if you want to plug in your own model
compiler instead of BossDB. Thanks to Tomas Morstein
* [ErlyDTL] The "ifchanged" tag now supports arguments, e.g. {%
ifchanged month %}. Thanks to Thomas Geffert
* [ErlyDTL] find_value now uses the lists module (written in C)
instead of proplists, which should speed up rendering with complex
variables. Thanks to Zachary Hueras

Changes
* SimpleBridge is now a plain dependency, i.e. no more CB-specific
hacks. Thanks to Jesse Gumm for integration work

Bug fixes
* [BossDB] Fix the "count" function in the Mnesia adapter. Thanks to
Dániel Szoboszlay
* [BossDB] Support now/0 timestamps when generating JSON from
BossRecords. Thanks to Kai Janson
* [BossDB] Gracefully restart MySQL connections that time out (e.g.
after 24 hours) instead of producing errors. Thanks to langxianzhe@
* [BossDB] Postgres adapter now treats NULL values as a "null" type.
Thanks to Guido Witmond
* [BossDB] Postgres adapter now accepts "type-NN" ID format in the
condition list. Thanks to Guido Witmond
* [BossDB] Fix initialization of Memcached cache adapter. Thanks to
Jose Luis Gordo Romero
* [BossDB] Fix initialization/termination of shards. Thanks to me :)
* [BossDB] Fix Riak find/N functions. Thanks to Rubén G.O.

Give it a spin, and let me know if you find a bug in need of quashing.
In the meantime, enjoy the release!

Evan

Paul Barry

unread,
May 29, 2012, 12:29:55 PM5/29/12
to chica...@googlegroups.com
On my Mac OS X 10.6 laptop, I get this:

$ make
==> aleppo (get-deps)
==> bson (get-deps)
==> epgsql (get-deps)
==> gen_server2 (get-deps)
==> erlmc (get-deps)
==> medici (get-deps)
==> mongodb (get-deps)
==> mysql (get-deps)
==> poolboy (get-deps)
==> protobuffs (get-deps)
==> riakc (get-deps)
==> boss_db (get-deps)
==> erlydtl (get-deps)
==> gen_smtp (get-deps)
==> misultin (get-deps)
==> mochiweb (get-deps)
ERROR: git describe --always --tags `git log -n 1 --pretty=format:%h
.` failed with error: 128 and output:
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git

make: *** [all] Error 1

:-(

Paul.
--
Paul Barry, w: http://paulbarry.itcarlow.ie - e: paul....@itcarlow.ie
Lecturer, Computer Networking: Institute of Technology, Carlow, Ireland.

Evan Miller

unread,
May 29, 2012, 1:13:57 PM5/29/12
to chica...@googlegroups.com, Jesse Gumm
Dammit. Some of simple_bridge's dependencies are using the {vsn, git}
trick which is fine for development but really is a sorry hack that
should never appear in code for distribution.

Jesse - can you look into fixing the upstream dependencies
(proper_stdlib and mimetypes) so that building the .app files doesn't
rely on running "git" inside a Git repository?

In the meantime I have updated the build with fake version numbers,
just redownload from
http://www.chicagoboss.org/ChicagoBoss-0.7.5.tar.gz
--
Evan Miller
http://www.evanmiller.org/

Evan Miller

unread,
May 29, 2012, 1:33:08 PM5/29/12
to Jesse Gumm, chica...@googlegroups.com
Thank you!

On Tue, May 29, 2012 at 12:28 PM, Jesse Gumm <gu...@sigma-star.com> wrote:
> Hi Evan,
>
> Thanks for the heads up on that.
>
> I'll look into this and get back to you. I should be merging my
> from-boss branch into the mainline later this week as well. I'll keep
> you posted on that.
>
> -Jesse
> --
> Jesse Gumm
> Owner, Sigma Star Systems
> 414.940.4866 || sigma-star.com || @jessegumm

Jesse Gumm

unread,
May 29, 2012, 1:28:18 PM5/29/12
to Evan Miller, chica...@googlegroups.com
Hi Evan,

Thanks for the heads up on that.

I'll look into this and get back to you. I should be merging my
from-boss branch into the mainline later this week as well. I'll keep
you posted on that.

-Jesse

On Tue, May 29, 2012 at 12:13 PM, Evan Miller <emmi...@gmail.com> wrote:

Paul Barry

unread,
May 29, 2012, 2:05:41 PM5/29/12
to chica...@googlegroups.com
Thanks, Evan. That fixed things.

I'm up-and-running again! :-)

Paul.

Evan Miller

unread,
May 29, 2012, 2:08:36 PM5/29/12
to chica...@googlegroups.com
Great to hear, thanks for letting me know.

Evan

Yanhao Zhu

unread,
May 30, 2012, 1:58:55 PM5/30/12
to chica...@googlegroups.com
I was following the tutorial pdf.  However, I got error message when I ran  "make app PROJECT=cb_tutorial" on my laptop (Mac OS X 10.7.4, Erlang R15B):

$ make app PROJECT=cb_tutorial
==> ChicagoBoss-0.7.5 (create)
ERROR: create failed while processing /Users/yanhaozhu/Documents/erlang/ChicagoBoss-0.7.5: {'EXIT',{{badmatch,{error,{0,erl_parse,["syntax error before: ","'?'"]}}},
         [{rebar_templater,consult,3,[]},
          {rebar_templater,create,2,[]},
          {rebar_core,run_modules,4,[]},
          {rebar_core,execute,4,[]},
          {rebar_core,process_dir0,6,[]},
          {rebar_core,process_commands,2,[]},
          {rebar,main,1,[]},
          {escript,run,2,[{file,"escript.erl"},{line,727}]}]}}
make: *** [app] Error 1

I tried it on a Debian 6 with Erlang R15B1 and had the same error.  I searched on the internet, it seems the problem is related to the version of rebar used and Erlang R15. 

Thanks,
Yanhao

Kai Janson

unread,
May 30, 2012, 3:06:21 PM5/30/12
to chica...@googlegroups.com
Did you compile ChicagoBoss before you tried to create the project?

—Kai

Yanhao Zhu

unread,
May 30, 2012, 3:22:05 PM5/30/12
to chica...@googlegroups.com
Yes, I did.  I am very new to ChicagoBoss.  By "compile", do you mean executing "make" inside the extracted folder?  There was no compile error when I typed "make".  Any body is using R15 with ChicagoBoss 0.7.5?  

Thanks,
Yanhao

Yanhao Zhu

unread,
May 30, 2012, 4:07:05 PM5/30/12
to chica...@googlegroups.com
I just pulled the source code from github master and there was no more errors when I created a project. Cheers!

Thanks,
Yanhao

shirshendu chakrabarti

unread,
Jun 8, 2012, 4:37:04 AM6/8/12
to ChicagoBoss
Hi Yanhao Zhu,

I did the same thing, just now. There is a pattern matching error.

I saw you post and was sure, I was on the right track.

Just for detailing and may help anyone else;

For ChicagoBoss 0.7.5:

%% <appname> must be a valid erlang atom

git clone https://github.com/evanmiller/ChicagoBoss.git
cd ChicagoBoss/
make
make app PROJECT=<appname>

Works well on Fedora 17 and Erlang R14B03.

Thanks,

Shirshendu

Evan Miller

unread,
Jul 9, 2012, 9:27:34 AM7/9/12
to chica...@googlegroups.com
On Sun, Jul 8, 2012 at 3:57 PM, <fde...@gmail.com> wrote:
> On Tuesday, May 29, 2012 5:00:57 PM UTC+2, Evan Miller wrote:
>
> [ --8<-- ]
>
>>
>> cb_admin: http://www.chicagoboss.org/cb_admin-0.7.5.tar.gz
>
>
> I may very well have overlooked something, but I wasn't aware that cb_admin
> was versioned along with cb. Nitpicking a bit here, but this caused me some
> headache when pulling the latest changes on master. Could it make sense to
> put up a link to cb_admin on http://chicagoboss.org/ as well as to the
> latest cb package? The only link I've found so far is to the github page.

Yes that would make sense, or perhaps ship a copy of cb_admin along
with the framework itself.

>
> On a side note, which license(s) is cb_admin released under?

Ah, looks like there is not a license. Let's make it the same as CB
(MIT license).

While we're on the subject, a lot of people have contributed to CB
over the years and I think it's appropriate to create an AUTHORS file
for both projects, ripping out the author names (usually my name) from
individual files. Does anyone know how to automatically generate one
of these from an existing git repo?

Evan

>
>
> - Fredrik

Dave Cottlehuber

unread,
Jul 9, 2012, 9:50:37 AM7/9/12
to chica...@googlegroups.com
something like this, so you can use only more recent commits:
 
 git shortlog -se 6c976bd..HEAD
     2  Adam Lofts <reda...@gmail.com>
     1  Alexander Dorofeev <reda...@gmail.com>


A+
Dave

Chan

unread,
Jul 17, 2012, 9:16:20 AM7/17/12
to chica...@googlegroups.com
I think you already answer to your question ? ;) 

Envoyé de mon iPhone

Le 17 juil. 2012 à 11:03, Hao Zhang <hao.zha...@gmail.com> a écrit :

Hi,

I encountered the same error as Yanhao did when I ran "make app PROJECT=cb_tutorial" on my laptop (Mac OS X 10.6.8, Erlang R15B01) after ChicagoBoss-0.7.5 was compiled successfully:

make app PROJECT=cb_tutorial
==> ChicagoBoss-0.7.5 (create)
ERROR: create failed while processing /Users/hao/Sites/ChicagoBoss-0.7.5: {'EXIT',{{badmatch,{error,{0,erl_parse,["syntax error before: ","'?'"]}}},
         [{rebar_templater,consult,3,[]},
          {rebar_templater,create,2,[]},
          {rebar_core,run_modules,4,[]},
          {rebar_core,execute,4,[]},
          {rebar_core,process_dir0,6,[]},
          {rebar_core,process_commands,2,[]},
          {rebar,main,1,[]},
          {escript,run,2,[{file,"escript.erl"},{line,727}]}]}}
make: *** [app] Error 1

The above ChicagoBoss-0.7.5 was downloaded from http://www.chicagoboss.org/ChicagoBoss-0.7.5.tar.gz.

However, as Yanhao and Shirshendu suggested, I pulled the ChicagoBoss-0.7.5 source code from github and no more error occurred when I created a new project again.

git clone https://github.com/evanmiller/ChicagoBoss.git 
cd ChicagoBoss/ 
make 
make app PROJECT=cb_tutorial
==> ChicagoBoss (create)
Writing ../cb_tutorial/start-server.bat
Writing ../cb_tutorial/src/cb_tutorial.app.src
Writing ../cb_tutorial/src/view/lib/tag_modules/cb_tutorial_custom_tags.erl
Writing ../cb_tutorial/src/view/lib/filter_modules/cb_tutorial_custom_filters.erl
Writing ../cb_tutorial/boss.config
Writing ../cb_tutorial/src/mail/cb_tutorial_outgoing_mail_controller.erl
Writing ../cb_tutorial/src/mail/cb_tutorial_incoming_mail_controller.erl
Writing ../cb_tutorial/priv/init/cb_tutorial_01_news.erl
Writing ../cb_tutorial/priv/static/chicago-boss.png
Writing ../cb_tutorial/priv/static/favicon.ico
Writing ../cb_tutorial/priv/cb_tutorial.routes
Writing ../cb_tutorial/priv/rebar/boss_plugin.erl
Writing ../cb_tutorial/src/view/lib/README
Writing ../cb_tutorial/init.sh
Writing ../cb_tutorial/init-dev.sh
Writing ../cb_tutorial/rebar
Writing ../cb_tutorial/rebar.cmd
Writing ../cb_tutorial/rebar.config

So there might be something wrong with the rebar in http://www.chicagoboss.org/ChicagoBoss-0.7.5.tar.gz when using Erlang R15B01. Could you please take a look at it, Evan Miller?

Thanks,
Hao

Hao Zhang

unread,
Jul 17, 2012, 10:18:05 AM7/17/12
to chica...@googlegroups.com
No, my point is that there is something wrong with the rebar in http://www.chicagoboss.org/ChicagoBoss-0.7.5.tar.gz when using Erlang R15B01. It is better if someone from the develop team could double check that source code package.

But if you pull source code directly from github (git clone https://github.com/evanmiller/ChicagoBoss.git), it works smoothly.

BRs,
Hao

chan sisowath

unread,
Jul 17, 2012, 10:35:07 AM7/17/12
to chica...@googlegroups.com
the evanmiller/master branch on github is the latest developpement of CB, if it s work then that mean something done already.

next release? don't know, it's evan decision. :)





2012/7/17 Hao Zhang <hao.zha...@gmail.com>

Hao Zhang

unread,
Jul 17, 2012, 11:18:25 AM7/17/12
to chica...@googlegroups.com
Ok, understood. Thanks! :)
Reply all
Reply to author
Forward
0 new messages