Vibhu Mohindra | 15 May 12:19 2016
Picon

weblocks-prevalence recursive lock

Looking through an archived project, I found a change I had made to make
CLISP work with weblocks-prevalence.

bordeaux-threads has ordinary locks and recursive locks. You lock them
the same way:
(with-lock-held (lck) ...)
but recursive locks can be locked again within the "...".

The weblocks-prevalence method #'open-store creates an ordinary lock:

https://github.com/html/weblocks-stores/blob/master/src/store/prevalence/prevalence.lisp#L23

I don't remember why I needed to recursively lock it. However, I don't
think I was trying to do anything fancy. It might have just been trying
to snapshot from within a web request. But I think it was something simpler.

So I needed to change that line to say "make-recursive-lock" instead of
"make-lock".

SBCL and CCL happen to let you can recursively lock an ordinary lock.
But not CLISP. That's where I noticed the problem. My code used to work
on SBCL and CCL, but stopped working when I tried it on CLISP.

With the change above, CLISP programmers will be able to do what SBCL
and CCL programmers can already do today: acquire this particular lock
recursively.

----
For completeness, these are my notes:

(Continue reading)

Robert Taylor | 31 Dec 00:40 2015
Picon

Official site for weblocks

Hi all, a few questions:

1) Is http://weblocks-framework.info/documentation the official
website for the weblocks project?

2) Is https://github.com/skypher/weblocks the official weblocks repo?

3) Olexiy, you are the new maintainer, correct?

4) I am going to dig into the framework once again, however I have a
question.  Is weblocks purely dependent on continuations or are
continuations optional?

Thanks.

Robert

--

-- 
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe@...
To post to this group, send email to weblocks@...
Visit this group at https://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.

Daniel Kochmański | 16 Sep 13:08 2015
Picon
Gravatar

[fix][clisp][ecl]


Hey,

vibhu.m...@... wrote:

> weblocks-stores-20150407-git/src/store/store-utils.lisp
> has a defmethod print-object
> that appears to modify something in package 'common-lisp or 'clos, which are locked in clisp.
> 
> ----
> ** - Continuable Error
> DEFMETHOD((PRINT-OBJECT NIL STANDARD-OBJECT T)):
>       (#<PACKAGE CLOS> #<PACKAGE COMMON-LISP> #<PACKAGE COMMON-LISP>
>        #<PACKAGE COMMON-LISP>)
>      is locked
> If you continue (by typing 'continue'): Ignore the lock and proceed
> ----
> 
> I don't think you're supposed to be able to modify those packages, but I could be wrong.
> at any rate,
> 1) clisp can't (start-weblocks) because of this
> 2) ecl exceeds its stack and other memory limits because of it. (even
> if you "continue", weblocks never start> s).
> 
> deleting that method definition fixed both issues for me.

ECL now has a workaround. Anyways I've sent PR on github to
weblocks-stores for this.
> 
> --------
(Continue reading)

Daniel Kochmański | 16 Sep 12:21 2015
Picon
Gravatar

[homepage down]

Hello,

I've noticed some time ago, that weblocks-framework.info is down (nginx
claims 404).

Here is snapshot from May:
https://web.archive.org/web/20131013030706/http://weblocks-framework.info/

I've also updated info on trac wiki:
https://trac.common-lisp.net/cl-weblocks
but there are still dangling links. Also someone with access to project
page on common-lisp.net/project/cl-weblocks could update links there.

(Of course best solution would be brinding main website to the working
shape).

Since the last commit on github is from May, I'm curious if this project
is still maintained? I'm Weblocks beginner, but I really like how things
work there. If there are small maintenance task I can hold please let me
know, it would be a shame if this project goes abandoned.

Best regards,
Daniel

--

-- 
Daniel Kochmański | Poznań, Poland
;; aka jackdaniel

"Be the change that you wish to see in the world." - Mahatma Gandhi

(Continue reading)

Oleg Somin | 25 Aug 21:22 2015
Picon

Need a developer for help

Hello! 
I need a help from a weblocks developer to fix the app.
It will be better if you speak Russian because of app frontend.
Please contact me via e-mail badsmiley-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org or skype badsmiley.

--
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.
vibhu.mohindra | 8 Jul 01:58 2015
Picon

fix for clisp and ecl

weblocks-stores-20150407-git/src/store/store-utils.lisp
has a defmethod print-object
that appears to modify something in package 'common-lisp or 'clos, which are locked in clisp.

----
** - Continuable Error
DEFMETHOD((PRINT-OBJECT NIL STANDARD-OBJECT T)):
      (#<PACKAGE CLOS> #<PACKAGE COMMON-LISP> #<PACKAGE COMMON-LISP>
       #<PACKAGE COMMON-LISP>)
     is locked
If you continue (by typing 'continue'): Ignore the lock and proceed
----

I don't think you're supposed to be able to modify those packages, but I could be wrong.
at any rate,
1) clisp can't (start-weblocks) because of this
2) ecl exceeds its stack and other memory limits because of it. (even if you "continue", weblocks never starts).

deleting that method definition fixed both issues for me.

--------
further, to get clisp to run weblocks, you also need to define #'md5:md5-string.
one way is by using ironclad:

$ LANG=en_US.UTF-8 clisp

(ql:quickload 'ironclad)
(ql:quickload 'md5)
(defun md5:md5sum-string (s)
    (ironclad:digest-sequence :md5 (ironclad:ascii-string-to-byte-array s)))
(ql:quickload 'weblocks)

--------
lastly, for clisp:

you can't name your webapp the same as your asdf system, else weblocks tries to (probe-file "pub/") which is a dir, and clisp's probe-file doesn't accept dirs.
i.e. if your asdf system is "mywebapp", you can't (defwebapp mywebapp).
ideally weblocks would use a portability layer over the many compliant but incompatible probe-file implementations.
(such as http://www.gigamonkeys.com/book/practical-a-portable-pathname-library.html)

in the meantime, a workaround is to explicity set the public-files-path:
(defwebapp mywebapp :public-files-path #p"/path/to/pub/")

--
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.
michaelmalis2 | 3 Jun 16:02 2015
Picon

Bug in Demo

Hi,

When trying to click add on the weblocks demo for Gridedit nothing happens. I've tested this both in Chrome and in Firefox.

--
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.
oladon | 2 Mar 06:57 2015
Picon

Widgets & Flow

I'm having a really hard time with flows, and hoping someone can help me. I've read a bunch of old mailing list posts, and I'm just not getting it. Code is here: http://pastebin.com/9H4zN7g3 -- on pageload, the difficulty choice appears. After you select a difficulty, the initial list of options from make-main-page is offered, and after you click one of those the whole page goes blank. (I'm guessing the page going blank is because the choice-list in make-main-page is trying to answer without being in a continuation... but I have no backup for that guess.)

Any suggestions or obvious things I'm doing wrong?

--
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.
o_z | 26 Feb 03:28 2015
Picon

Weblocks veggies census project

Hello ! Last spring I've launched project which goal is to count vegetarians, vegans, rawfoodists and other people who cares about eating ethical products.

It is built using Weblocks. It is translated into 2 languages, uses Weblocks translation stuff and my libraries for Weblocks translation.
It has ~1500 users registered.

Please don't register for testing purposes. (Don't pass last registration step - sending password to email or entering using social network).
There is test user with email olexiy.z at yandex.ua and password test123
You can use these credentials to see what is in user cabinet.
I'll not give you admin credentials.

Site has some bugs of course, I hope you'll not see them ;)

--
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.
Jason Miller | 15 Jan 00:51 2015
Picon

:present-as widget odd behavior

I needed a quick list presentation and so used the widget :present-as with a child-class of gridedit.  This appears to work, but I get warnings that make no sense; namely "Implicitly calling MAKE-WIDGET to render #<FUNCTION ...>" and "Cannot update the widget children of #<FUNCTION ...>" where the function is what I'm using as the argument to :widget-init

I set a (break) on the render-widget-body default method, and here's a partial backtrace:


  0: ((:METHOD WEBLOCKS:RENDER-WIDGET-BODY (T)) #<FUNCTION (LAMBDA (&KEY WL-FCCS::VALUE WL-FCCS::FABOO &ALLOW-OTHER-KEYS) :IN "/home/aidenn/src/lisp/wl-fccs/src/init-session.lisp") {100C8B$
  1: ((LAMBDA (WEBLOCKS::OBJ &REST WEBLOCKS::ARGS) :IN WEBLOCKS:RENDER-WIDGET) #<FUNCTION (LAMBDA (&KEY WL-FCCS::VALUE WL-FCCS::FABOO &ALLOW-OTHER-KEYS) :IN "/home/aidenn/src/lisp/wl-fccs/$
  2: ((:METHOD WEBLOCKS:WITH-WIDGET-HEADER (T T)) #<FUNCTION (LAMBDA (&KEY WL-FCCS::VALUE WL-FCCS::FABOO &ALLOW-OTHER-KEYS) :IN "/home/aidenn/src/lisp/wl-fccs/src/init-session.lisp") {100C$
  3: ((:METHOD WEBLOCKS:RENDER-WIDGET (T)) #<FUNCTION (LAMBDA (&KEY WL-FCCS::VALUE WL-FCCS::FABOO &ALLOW-OTHER-KEYS) :IN "/home/aidenn/src/lisp/wl-fccs/src/init-session.lisp") {100C8B3F4B}$
  4: ((:METHOD WEBLOCKS:RENDER-WIDGET-CHILDREN (WEBLOCKS:WIDGET)) #<WEBLOCKS:DATAFORM "dom558">) [fast-method]
  5: ((:METHOD WEBLOCKS:WITH-WIDGET-HEADER (T T)) #<WEBLOCKS:DATAFORM "dom558"> #<FUNCTION (LAMBDA (WEBLOCKS::OBJ &REST WEBLOCKS::ARGS) :IN WEBLOCKS:RENDER-WIDGET) {100A2063AB}> #<unavaila$
  6: ((:METHOD WEBLOCKS:RENDER-WIDGET (T)) #<WEBLOCKS:DATAFORM "dom558">) [fast-method]
  7: (WEBLOCKS::RENDER-DIRTY-WIDGETS)
  8: ((LAMBDA NIL :IN WEBLOCKS:HANDLE-CLIENT-REQUEST))
  9: ((:METHOD WEBLOCKS:HANDLE-CLIENT-REQUEST (WEBLOCKS:WEBLOCKS-WEBAPP)) #<unavailable argument>) [fast-method]
 10: ((FLET #:|doit-95| :IN WEBLOCKS:HANDLE-CLIENT-REQUEST))
 11: ((:METHOD WEBLOCKS:HANDLE-CLIENT-REQUEST :AROUND (T)) #<WL-FCCS::WL-FCCS {100456C393}>) [fast-method]
 12: (WEBLOCKS::CALL-IN-WEBAPP #<WL-FCCS::WL-FCCS {100456C393}> #<CLOSURE (LAMBDA NIL :IN WEBLOCKS:HANDLE-CLIENT-REQUEST) {100AC09D0B}>)
 13: ((:METHOD WEBLOCKS:HANDLE-CLIENT-REQUEST :AROUND (WEBLOCKS:WEBLOCKS-WEBAPP)) #<WL-FCCS::WL-FCCS {100456C393}>) [fast-method]
 14: ((:METHOD HUNCHENTOOT:HANDLE-REQUEST (HUNCHENTOOT:ACCEPTOR HUNCHENTOOT:REQUEST)) #<WEBLOCKS:WEBLOCKS-ACCEPTOR (host *, port 3455)> #<HUNCHENTOOT:REQUEST {100AC01803}>) [fast-method]
 15: ((:METHOD HUNCHENTOOT:PROCESS-REQUEST (T)) #<HUNCHENTOOT:REQUEST {100AC01803}>) [fast-method]
 16: (HUNCHENTOOT::DO-WITH-ACCEPTOR-REQUEST-COUNT-INCREMENTED #<WEBLOCKS:WEBLOCKS-ACCEPTOR (host *, port 3455)> #<CLOSURE (LAMBDA NIL :IN HUNCHENTOOT:PROCESS-CONNECTION) {100AA5B06B}>)
 17: ((:METHOD HUNCHENTOOT:PROCESS-CONNECTION (HUNCHENTOOT:ACCEPTOR T)) #<WEBLOCKS:WEBLOCKS-ACCEPTOR (host *, port 3455)> #<USOCKET:STREAM-USOCKET {100A9B46A3}>) [fast-method]



--
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to weblocks-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.
Daniel Borchmann | 4 Jan 11:59 2015
Picon
Gravatar

Javascript in Weblocks


Hi,

I am currently trying to understand the Javascript code that comes
bundled with weblocks.  I have some questions on this (but please keep
in mind that I don't know much about javascript):

- What exactly is scriptaculous good for?  Can't we remove at least
  unittest.js?
- What is the purpose of dialog.js?  I can't find any use in the source
  code.
- Can't we remove shortcut.js (as described in
  doc/js-backend-abstraction.txt)?  It is only used in datagrid.js to
  define three keyboard shortcuts which do not seem essential to me (at
  least not to make shortcut.js a default dependency).
- Can we upgrade prototype.js to its most recent version?

There is also github.com/html/weblocks-jquery.  Would it be a good idea
to integrate that into weblocks proper?

Best,

  Daniel

-- 
Daniel Borchmann                                   http://daniel.kxpq.de
GPG (Mail)            0849 473E 6BF0 B504 DF0B  D640 455E 3610 01FF 778F

--

-- 
You received this message because you are subscribed to the Google Groups "weblocks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weblocks+unsubscribe@...
To post to this group, send email to weblocks@...
Visit this group at http://groups.google.com/group/weblocks.
For more options, visit https://groups.google.com/d/optout.

Gmane