<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Odoo/addons/web/static/src/js/pyeval.js, branch 14.0</title>
<subtitle>The current checkout of upstream Odoo</subtitle>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/'/>
<entry>
<title>[REF] web: add module system to the web client</title>
<updated>2015-03-18T08:01:49+00:00</updated>
<author>
<name>Géry Debongnie</name>
<email>ged@odoo.com</email>
</author>
<published>2015-03-09T15:34:27+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=e8a00bc50da435d3859118ca127d20a2eb9a0cab'/>
<id>e8a00bc50da435d3859118ca127d20a2eb9a0cab</id>
<content type='text'>
This commit introduces a new module system for the javascript code.
Instead of using global (namespaced) variables everywhere (like
openerp.web.whatever, ...), each file declare one (or more) module
with its dependencies.  Each module will be loaded after its
dependencies, and will be given a reference to the return values.

This change is a massive departure from the way the client worked
previously.  It will sadly break some/most history, but I am sure that
the future git ecosystem will allow you to easily browse the history
past this revision (one can dream).

This commit feature:
* main namespace is now odoo instead of openerp
* a way to define modules and dependencies (inspired by requirejs)
* many files have been splitted in simpler subfiles
* basic support for debugging in odoo.__DEBUG__
* no global variable (i.e. nothing in window.openerp)
* many bug fixes, many new bugs

Future vision: this modularization should simplify future code
development, simplify debugging and will allow a serious testing effort
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit introduces a new module system for the javascript code.
Instead of using global (namespaced) variables everywhere (like
openerp.web.whatever, ...), each file declare one (or more) module
with its dependencies.  Each module will be loaded after its
dependencies, and will be given a reference to the return values.

This change is a massive departure from the way the client worked
previously.  It will sadly break some/most history, but I am sure that
the future git ecosystem will allow you to easily browse the history
past this revision (one can dream).

This commit feature:
* main namespace is now odoo instead of openerp
* a way to define modules and dependencies (inspired by requirejs)
* many files have been splitted in simpler subfiles
* basic support for debugging in odoo.__DEBUG__
* no global variable (i.e. nothing in window.openerp)
* many bug fixes, many new bugs

Future vision: this modularization should simplify future code
development, simplify debugging and will allow a serious testing effort
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] py.js relativedelta</title>
<updated>2015-03-03T11:00:12+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@odoo.com</email>
</author>
<published>2015-03-03T10:56:29+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=fb2b1d7568d353c73d21766228bd8037e4f70f1e'/>
<id>fb2b1d7568d353c73d21766228bd8037e4f70f1e</id>
<content type='text'>
Rewrite relativedelta.__add__ based on dateutil 2.4.0

* completely remove any hint of supporting time deltas (could be
  implemented in the future, but not currently asked for and lots of
  code to implement)
* implement weekday support (ordinal only)
* probably better leapyear support
* remove relativedelta.__sub__ (only works between relativedeltas)
* add relativedelta.__neg__

fixes #5089
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rewrite relativedelta.__add__ based on dateutil 2.4.0

* completely remove any hint of supporting time deltas (could be
  implemented in the future, but not currently asked for and lots of
  code to implement)
* implement weekday support (ordinal only)
* probably better leapyear support
* remove relativedelta.__sub__ (only works between relativedeltas)
* add relativedelta.__neg__

fixes #5089
</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] pyeval: implement weekday function</title>
<updated>2015-01-19T13:08:09+00:00</updated>
<author>
<name>Géry Debongnie</name>
<email>ged@odoo.com</email>
</author>
<published>2015-01-16T09:26:09+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=af8c2e4db6b44019e2c649088e9eca8263ff3e40'/>
<id>af8c2e4db6b44019e2c649088e9eca8263ff3e40</id>
<content type='text'>
courtesy of mva.  This adds the weekday function to date objects in
pyeval.  This will be useful for adding better filters (such as this
week) in the searchview.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
courtesy of mva.  This adds the weekday function to date objects in
pyeval.  This will be useful for adding better filters (such as this
week) in the searchview.
</pre>
</div>
</content>
</entry>
<entry>
<title>[ADD] pyeval: date.replace method</title>
<updated>2014-12-02T15:59:24+00:00</updated>
<author>
<name>Mario Arias Badila</name>
<email>the.clone.master@gmail.com</email>
</author>
<published>2014-10-05T20:25:08+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=bd2633753d854cc499c09c02d47d75f09dfa379b'/>
<id>bd2633753d854cc499c09c02d47d75f09dfa379b</id>
<content type='text'>
Needed to create filters like "previous month"

It was just defined for "datetime", but is also needed for "date"

closes #2915
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Needed to create filters like "previous month"

It was just defined for "datetime", but is also needed for "date"

closes #2915
</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] web: fixes issues with custom filters and search view</title>
<updated>2014-09-15T07:52:34+00:00</updated>
<author>
<name>Géry Debongnie</name>
<email>ged@odoo.com</email>
</author>
<published>2014-09-09T10:26:16+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=22b1f5ce0c19b11c96dbd36b3b2c2104ef4d79d0'/>
<id>22b1f5ce0c19b11c96dbd36b3b2c2104ef4d79d0</id>
<content type='text'>
The problem was that when the user manipulates the graph view (in pivot
table mode), the graph view resetted the group by facet in the search
view.  It was not a problem unless a custom filter with a groupby was
already there, in which case, the group bys were duplicated.

The search view is now smarter, it only resets the additional groupbys
(and col_groupbys).   Also, to prevent usability problems, the graph
view disable the '+/-' groupbys added by a custom filters.

Note that this fix is only temporary: a revamp of custom filters, facets,
search view is coming in the next months. (at least, that's the idea). Right
now, too much 'search logic' is in the graph view.

Another note: this fix is somewhat fragile: it makes some assumptions
about the search query (mainly that the custom filter is the first facet,
also, that no other filters add groupbys/col_groupbys)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The problem was that when the user manipulates the graph view (in pivot
table mode), the graph view resetted the group by facet in the search
view.  It was not a problem unless a custom filter with a groupby was
already there, in which case, the group bys were duplicated.

The search view is now smarter, it only resets the additional groupbys
(and col_groupbys).   Also, to prevent usability problems, the graph
view disable the '+/-' groupbys added by a custom filters.

Note that this fix is only temporary: a revamp of custom filters, facets,
search view is coming in the next months. (at least, that's the idea). Right
now, too much 'search logic' is in the graph view.

Another note: this fix is somewhat fragile: it makes some assumptions
about the search query (mainly that the custom filter is the first facet,
also, that no other filters add groupbys/col_groupbys)
</pre>
</div>
</content>
</entry>
<entry>
<title>[MERGE] [ADD] ways to correctly handle local datetimes in e.g. domains</title>
<updated>2014-01-28T13:37:06+00:00</updated>
<author>
<name>Martin Trigaux</name>
<email>mat@openerp.com</email>
</author>
<published>2014-01-28T13:37:06+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=802d64ca92a31661154e1179b89db78e99ad3645'/>
<id>802d64ca92a31661154e1179b89db78e99ad3645</id>
<content type='text'>
* Alter datetime.now(), generate a local datetime (add utcnow() which generates a UTC datetime)
* Implement datetime.replace() to manipulate local datetimes
* Implement date.today(), generates a local date
* Implement datetime.toJSON(), returns a javascript Date (assumes datetime attributes are local)
* Add conversion hook in JSON and JSONP handlers, automatically converts a Date object to a UTC datetime formatted according to server formats

Should allow the generation of correctly working (from the end-user's POV) [Today] filters, amongst other things.
Eg: a local expression in a domain for 'Today 00:00:00' would now be expressed as 'datetime.datetime.now().replace(hour=0, minute=0, second=0)' (no .strftime) and will be converted to UTC when sent to the server

bzr revid: mat@openerp.com-20140128133706-4yp610pp5w06tcia</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Alter datetime.now(), generate a local datetime (add utcnow() which generates a UTC datetime)
* Implement datetime.replace() to manipulate local datetimes
* Implement date.today(), generates a local date
* Implement datetime.toJSON(), returns a javascript Date (assumes datetime attributes are local)
* Add conversion hook in JSON and JSONP handlers, automatically converts a Date object to a UTC datetime formatted according to server formats

Should allow the generation of correctly working (from the end-user's POV) [Today] filters, amongst other things.
Eg: a local expression in a domain for 'Today 00:00:00' would now be expressed as 'datetime.datetime.now().replace(hour=0, minute=0, second=0)' (no .strftime) and will be converted to UTC when sent to the server

bzr revid: mat@openerp.com-20140128133706-4yp610pp5w06tcia</pre>
</div>
</content>
</entry>
<entry>
<title>[ADD] ways to correctly handle local datetimes in e.g. domains</title>
<updated>2014-01-22T15:19:11+00:00</updated>
<author>
<name>Xavier Morel</name>
<email>xmo@openerp.com</email>
</author>
<published>2014-01-22T15:19:11+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=5b7ade9db180b8a038c2a9944aba85d1ffd220ea'/>
<id>5b7ade9db180b8a038c2a9944aba85d1ffd220ea</id>
<content type='text'>
* change datetime.now() to generate user-local naive datetimes
* add datetime.utcnow() behaving as the old now()
* add date.today() generating a user-local date (for the current day)
* add datetime.replace() to replace any specific attribute of the
  datetime object (except tzinfo, for now)
* datetime.toJSON() now returns the equivalent javascript Date object
  (warning: uses the datetime attributes directly, since datetimes are
  naive if they were created with utcnow() the Date result is going to
  be complete nonsense). With the previous commit datetime.now()
  generates a user-local now() which is converted to the correct UTC
  datetime when sent to the server.

This means it becomes possible to generate datetime bounds for the
user's local today with either

    datetime.datetime.now().replace(hour=0, minute=0, second=0)

or

    datetime.datetime.combine(
        datetime.date.today(),
        datetime.time())

and once send over JSON-RPC the server will get the local datetime
in UTC to the server's format.

nb: user-local means "in the timezone of the user's browser" in this
context.

bzr revid: xmo@openerp.com-20140122151911-akn1nr6e739eg92s</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* change datetime.now() to generate user-local naive datetimes
* add datetime.utcnow() behaving as the old now()
* add date.today() generating a user-local date (for the current day)
* add datetime.replace() to replace any specific attribute of the
  datetime object (except tzinfo, for now)
* datetime.toJSON() now returns the equivalent javascript Date object
  (warning: uses the datetime attributes directly, since datetimes are
  naive if they were created with utcnow() the Date result is going to
  be complete nonsense). With the previous commit datetime.now()
  generates a user-local now() which is converted to the correct UTC
  datetime when sent to the server.

This means it becomes possible to generate datetime bounds for the
user's local today with either

    datetime.datetime.now().replace(hour=0, minute=0, second=0)

or

    datetime.datetime.combine(
        datetime.date.today(),
        datetime.time())

and once send over JSON-RPC the server will get the local datetime
in UTC to the server's format.

nb: user-local means "in the timezone of the user's browser" in this
context.

bzr revid: xmo@openerp.com-20140122151911-akn1nr6e739eg92s</pre>
</div>
</content>
</entry>
<entry>
<title>[FIX] fixes a problem in pyeval catching all exceptions silently</title>
<updated>2013-11-13T10:22:04+00:00</updated>
<author>
<name>Gery Debongnie</name>
<email>ged@openerp.com</email>
</author>
<published>2013-11-13T10:22:04+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=30e6eadf421565341f22baf2ff9d6130436df551'/>
<id>30e6eadf421565341f22baf2ff9d6130436df551</id>
<content type='text'>
bzr revid: ged@openerp.com-20131113102204-m0gox7odwgkmon4o</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
bzr revid: ged@openerp.com-20131113102204-m0gox7odwgkmon4o</pre>
</div>
</content>
</entry>
<entry>
<title>[IMP] Removed old JavaScript module loading system in the 'web' addons. Still has some retro-compatibility for other addons.</title>
<updated>2013-08-06T12:50:22+00:00</updated>
<author>
<name>niv-openerp</name>
<email>nicolas.vanhoren@openerp.com</email>
</author>
<published>2013-08-06T12:50:22+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=baef37aec64b21fbdb036345a740c35a5355bc8c'/>
<id>baef37aec64b21fbdb036345a740c35a5355bc8c</id>
<content type='text'>
bzr revid: nicolas.vanhoren@openerp.com-20130806125022-bzjbtn0nqk40ak4g</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
bzr revid: nicolas.vanhoren@openerp.com-20130806125022-bzjbtn0nqk40ak4g</pre>
</div>
</content>
</entry>
<entry>
<title>Added semicolons</title>
<updated>2013-07-25T10:33:01+00:00</updated>
<author>
<name>niv-openerp</name>
<email>nicolas.vanhoren@openerp.com</email>
</author>
<published>2013-07-25T10:33:01+00:00</published>
<link rel='alternate' type='text/html' href='http://erp.ceuconsult.com:9000/Odoo/commit/?id=c767a0d34c3bb451246e2d546f6c602aae50d245'/>
<id>c767a0d34c3bb451246e2d546f6c602aae50d245</id>
<content type='text'>
bzr revid: nicolas.vanhoren@openerp.com-20130725103301-65nld10p1if7k0zt</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
bzr revid: nicolas.vanhoren@openerp.com-20130725103301-65nld10p1if7k0zt</pre>
</div>
</content>
</entry>
</feed>
