Skip to content

Releases: manatlan/htag

v0.83.0 : Introduce big changes for the future ;-)

25 Feb 09:21
Compare
Choose a tag to compare

The "runners part" will completly be redone, in future release (>0.90).
Here it's just a test version ... for test purposes.

spoil : all runners (for desktop/android) would be removed : there will be only one, which would provide all features in pure python (no dependancies!) ... there will be only 3 ("pyscript", "pywebview" and the new one (which will work for android, desktop and/or chrome app mode)) : it will be a lot simpler ... to maintain, to explain and to use.

Don't use the new runner .... its name will change soon.

All current runners will be deprecated from 0.90.0, and removed in 1.0.0 !

v0.82.0

27 Jan 13:24
Compare
Choose a tag to compare

Just fixes

  • "fix STRICT_MODE control in render" : now it controls only Tag instances in children (no others things (like strings, etc ...))
  • "fix: call js is not possible %s" : the error message is better (but a whole pass should be done in all error messages, one day)

v0.81.0 : @expose is working

26 Jan 08:26
ba8ecce
Compare
Choose a tag to compare

fix previous, @expose works at 100%

v0.80.0 : @expose is coming (but broken currently)

25 Jan 17:08
Compare
Choose a tag to compare

2 new features :

  • the Tag.STRICT_MODE, when True : will raise an HtagException when dynamics tags (which use own def render(self):) change its first childs (it's a parano behaviour, to avoid creating tags which renders themselves at each interactions) (TODO: need doc)
  • @htag.expose (BROCKEN : will be fixed soon): will auto declare js-callback on python method (whose are decorated) (TODO: need doc)

Great simplification to do things like that (call from js side)

    from htag import Tag, expose

    class App(Tag.body):
        def init(self):
            self <= Tag.button("hello",_onclick="self.action(42)" )
        @expose
        def action(self,val):
            assert val == 42

BTW : this example ^^ is dumb, it has no interest IRL (prefer to call python directly with a self.bind, for example)

Full Changelog: v0.72.0...v0.80.0

v0.72.0 : handle the null exchange as COM error

22 Dec 18:23
Compare
Choose a tag to compare

now, it call "window.error(null)" on js side, when no response from the server side (when process is down)

Full Changelog: v0.70.0...v0.72.0

v0.70.0 : tag.state for all

12 Dec 19:11
Compare
Choose a tag to compare

Big changes ;-)

Tag.state was available only in the main/managed tag instance of the runner, and was saved as a subdict in Tag.session. In all others tag instance, it was None.

Now, Tag.state is available in all Tag instances (as a dict). And only the tag.state of the main/managed tag instance of the runner is saved as a subdict in Tag.session.

Now, it's the better place to store inner properties of a tag instance. BTW, objects stored in the the main/managed tag instance states, needs to be json/serializable (in others : no).

  • So the state in the managed/main instance is the perfect place to store persistent things (json serializable)
  • So the state in others instances is the perfect place to store inner properties (any python object)

Full Changelog: v0.66.0...v0.70.0

v0.66.0

14 Nov 16:58
Compare
Choose a tag to compare

All runners (except PyScript) can accept a parameter file at contruction time. This file will be used to restore/save the "tag.session" (dict) changes (and so, the tag.state (which is a subdict of tag.session))

Example:

app=ChromeApp( Page , file="/tmp/data.json")
app.run()

btw: the tag.session is a property used by htagweb. But now, it's a great use in htag desktop runners too !

Full Changelog: v0.65.0...v0.66.0

v0.65.0

14 Nov 12:57
Compare
Choose a tag to compare

runner AndroidApp:

  • try to use an open/free port for running the server side : now, you can use multiple android htag's apps on a same device ;-)
  • the html autoplay feature works now (using setMediaPlaybackRequiresUserGesture)
  • btw, the quit/exit app seems to work as expected ;-)

Full Changelog: v0.64.0...v0.65.0

v0.64.0

14 Nov 10:08
Compare
Choose a tag to compare

fix: remove the AndroidApp autoplay setting (which doesn't work)

Full Changelog: v0.63.0...v0.64.0

v0.63.0

12 Nov 16:53
Compare
Choose a tag to compare

AndroidApp,ChromeApp & WinApp ... can html5.Audio autoplay !

Full Changelog: v0.62.0...v0.63.0