pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/www/py-uliweb



Module Name:    pkgsrc
Committed By:   wen
Date:           Tue Jul 29 02:42:01 UTC 2014

Modified Files:
        pkgsrc/www/py-uliweb: Makefile PLIST distinfo

Log Message:
Update to 0.3.1

Upstream changes:
0.3.1 Version
-----------------

* Add qqmail mail server backend support, thanks to Yubin Wang <harry198344 AT 
gmail.com>
* Add `yes` option, remove `--force` of makeapp,makeproject command
* Remove `has_options` attribute in Command class
* Fix `include` bug in ini
* Fix condition test bug of orm.get()
* Add `sqlshell` command
* Add `having` and `join` support to ORM
* Add whole database dump and load support #33
* Add NotFound to __all__ of orm
* Fix recorder bug

0.3 Version
-----------------

* Fix pyini "key=" for raw output bug
* Fix objcache for Lazy field bug, it'll refresh first if found Lazy field
* Fix executing orm command raise Exception not be thrown bug
* Refact multidb support
* Change UserWarn to DeprecationWarning
* Fix syncdb for different table name between `Model.__tablename__` and 
settings bug
* Remove `get_cached()` and add `cache` parameter to `Model.get()`
* Add `get_local_cache()` and `clear_local_cache()` in order to compatiable
  with SimpleFrame implementation
* ORM `Property.to_str()` will return string but not unicode for CHAR and 
VARCHAR.
* Simplify server_default, if integer given, it'll be convert to `text(n)`
* `ManyResult.all()` can receive a `cache` parameter
* Improve `dump()` and `load()`, add PickleType , ManyToMany support
* Refact objcache app implementation and add `exclude` config option
* Remove primary_key detect, because multi primary_key columns can make 
composite primary key,
  add partition support for mysql
* add None patch process, you can set '', 'empty, 'exception'.
* move uliweb/orm/middle*.py to uliweb/contrib/orm
* move uliweb/i18n/middle_i18n.py to uliweb/contrib/i18n
* move storage from core to utils directory
* improve count process
* Fix Reference and ManyToMany dump and load bug
* Add `is_in_web()` funciton, so you can test if current frame is in web 
executation
* Add `--gevent` support to call command
* Add `any` to Model, Result, ManyResult
* Add `clear_prefix()` to redis_cli APP, this feature need redis 2.6+ version
* Add version check to redis_cli APP, default is disabled
* Add `clear_table()` to objcache APP
* Add 'id' parameter to `get()` and `get_object()` and `get_cached_object()` 
functions,
  so that if the ID can't be found in cache, condition (old parameter) will be 
used.
  And when id and condition given both, only when id is not integer or valid 
expression
  condition will be used. So in most cases, you don't need pass condition.
* If not set url option for session of database type, it'll automatically use 
ORM settings if exists
* Add settings and local_settings env variables support
* Fix count bug
* Change orm requirement.txt, add uliweb-alembic package
* generic app add avalon and mmgrid support
* Model.put() not is deprecated, you should use save
* `generic.py` add version support when saving, and add `save` callback 
parameter.

0.2.6 Version
-----------------

* Add warning output for Reference class parameter of relation properties 
definition.
* Fix manual and total process bug in ListView and SelectListView
* Fix rawsql bug
* Add `get_object()` support in Generic ListView
* Fix `get_cached()` bug
* Fix process_files in generic add and edit functions bug
* Add `import readline` before enter shell environment
* change occ name to version
* Improve autocomplete in shell command
* Fix manytomany cached value is not used when do the save, because of not 
stored
  in `_old_values`
* If you've already define primary key in Model, then it'll not create id 
property
  for you, just like:

    ```
    user_id = Field(int, primary_key=True, autoincrement=True)
    ```
* Fix sqldot bug and improve sqlhtml generation
* Eanble colored log output by default.
* Add recorder app, you can use it to record the visit url, and test it later

0.2.5 Version
-----------------

* Fix config template and add `uwsgi` shell support
* Add environment variables support in `settings.ini`. For example, there is a
  `MYSQL_PORT` defined in environment, so you can defined something in 
settings.ini:

    ```
    [DEFAULT]
    port = $MYSQL_PORT
    port_str = '${MYSQL_PORT}'
    ```

    `$MYSQL_PORT` is the same as `${MYSQL_PORT}`. Just when the variable follows
    identifier, so `${}` can easily separate between them.
* Add `STATIC_COMBINE_CONFIG` configuration, you can toggle static combination 
with it.
  Default is False. The configuration is:

    ```
    [STATIC_COMBINE_CONFIG]
    enabled = False
    ```
* Fix objcache app bug, if not fields defined in settings, it'll use all 
columns of table
* Add `get_table` function to `functions`, you can use it to get table object. 
Used
  in `uliweb.contrib.tables` app.
* Add `local_cache` to local in SimpleFrame, and it can be used to store 
require relative
  cache values, and it'll be empty after each require process.
* Improve `get_object()` function in ORM, add `use_local` parameter, so the 
cached
  value will be checked in `local_cache` first, and also save it in local_cache 
when
  get a value from cache or database.
* Improve objcache config format, you can also define table like this:

    ```
    user = {'fields':['username'], 'expire':expire_time, 
'key':callable(instance)|key_field}
    #or
    user = ['username', 'nickname']
    #or
    user =
    ```

    If no fields defined, it'll use all fields of Model. And if expire is 0 or
    not defined, it'll not expired at all.

    `key` will be used to replace `id`, if you want another key value, and it
    can be also a callable object, it'll receive an instance of Model parameter,
    so you can create any key value as you want.
* Add Optimistic Concurrency Control support for ORM, so you should defined 
`version`
  Field first in Model, then when you save the object, you should use:

    ```
    obj.save(occ=True)
    ```

    If there is already other operation saved the record, it'll raise an 
`SaveError`
    Exception by default, because the version has been changed. You can also 
pass:

    * `occ_fieldname` used to defined the version fieldname, default is 
`version`
    * `occ_exception` used to enabled Exception raised, default is `True`, if 
you
      set it `False` it'll return False, but not raise an Exception.

0.2.4 Version
-----------------

* Fix ORM is not compatible with SQLAlchemy 0.9.1.
* add `__contains__` to functions, so you can test if an API is already 
defined, just
  use:

    ```
    'flash' in functions
    ```
* Refact generic.py, remove `functions.flash` and `functions.get_fileserving` 
dependencies by default.

* Fix `yield` support in view function, you can also used in gevent environment.
* Fix `rawsql()` bug for different database engine
* Fix `jsonp()` dumps Chinese characters bug
* Add `trim_path()` function to `utils/common.py`, it can trim a file path to
  limited length, for example:

    ```
    >>> a = '/project/apps/default/settings.ini'
    >>> trim_path(a, 30)
    '.../apps/default/settings.ini'
    ```

    Default limited length is 30.
* Add ORM connection information output when given `-v` option in command line. 
And
  the password will be replace with `'*'`.
* Add multiple apps support for `makeapp` command.
* Refactor `save_file()` process, add `headers` and `convertors` parameter.
* Fix `call_view()` invoke `wrap_result` bug. Missing pass `handler` parameter 
to wrap_result.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 pkgsrc/www/py-uliweb/Makefile
cvs rdiff -u -r1.2 -r1.3 pkgsrc/www/py-uliweb/PLIST
cvs rdiff -u -r1.1 -r1.2 pkgsrc/www/py-uliweb/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index