Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-08-12 | libs/web: optimize access to translate() api by directly reusing the ↵ | Jo-Philipp Wich | |
luci.i18n instance loaded in dispatcher - this saves one extra function call, one extra require and one extra table lookup for _each_ translation string | |||
2011-08-12 | [PATCH] Allow smarter node creation based on visibility during createtree | Jo-Philipp Wich | |
As I've brought up on the mailing list thread "High latency caused by full tree creation", there is a large amount of delay per LuCI request which is spent building the node tree in createtree(). Most nodes created aren't needed for the view presented to the user and only serve to consume memory and CPU time during a page load. My idea is to provide an easy mechanism for index()ers to determine which needs to be created and what isn't. Due to the constraints of the standard LuCI web interface, this optimization needs to establish a few rules: * The page requested must have its node created * All parents of the page being requested must be created, so the children inherit the track * All the top-level nodes "Status", "System", "Services", "Network" (and others added by extensions) must be created in order to have their top-level tabs in the UI * All peers of second-level nodes need to be created as well for the same reason, to display their links on the subindexes To make this easy to implement in each controller, the attached patch adds an "inreq" field to each created node to indicate if it lies on the request path. To satisfy the "top level node" requirement, we always add the top level node, then check its inreq property if the top-level node is not "in request", then the controller can exit index() early. | |||
2011-08-12 | [PATCH] Wasted memory use storing path copies in node tree | Jo-Philipp Wich | |
When creating the node tree, every node stores a copy of its full path table. e.g. for node("admin.network.wireless"), node.path = { "admin", "network", "wireless" } This value is not used anywhere, and likely may be from before the addition of the treecache lookup table? In any instance, I've searched high and low and see nothing ever referencing any node's path via the path member. It eats a good chunk of memory though and as such I believe it should be removed. I've tested every page in the admin-full module after removing it and all seem to function properly. | |||
2011-08-12 | libs/nixio: add missing file in previous commit, revert unrelated change | Jo-Philipp Wich | |
2011-08-12 | libs/nixio: implement getproto(), getprotobyname() and getprotobynumber() | Jo-Philipp Wich | |
2011-08-11 | libs/lucid: fix process function leak (#285) | Jo-Philipp Wich | |
2011-08-11 | libs/nixio: allow building without shadow password support | Jo-Philipp Wich | |
2011-08-11 | libs/nixio: fix possible issue with nonblocking bind() | Jo-Philipp Wich | |
2011-07-22 | libs/lucid: perform full gc cycle prior to forking, massively improves ↵ | Jo-Philipp Wich | |
memory consumption | |||
2011-07-21 | libs/web: more verbose faults | Jo-Philipp Wich | |
2011-07-20 | libs/web: make dispatcher faults more verbose | Jo-Philipp Wich | |
2011-07-18 | libs/web: fix index cache rebuild triggering (#275) | Jo-Philipp Wich | |
2011-07-17 | libs/nixio: Fix recvfrom() return values for unnamed unix sockets, patch by ↵ | Jo-Philipp Wich | |
capnbry@gmail.com (#274) | |||
2011-07-11 | libs/core: fix multiple errors in zone delete handling of firewall model | Jo-Philipp Wich | |
2011-06-25 | libs/httpclient: return server response line in error case (#249) | Jo-Philipp Wich | |
2011-06-23 | libs/ipkg: capture stdout, stderr when running opkg commands | Jo-Philipp Wich | |
2011-06-17 | libs/web: add new datatypes min(...), max(...) and neg_network_ip4addr | Jo-Philipp Wich | |
2011-06-01 | libs/core: Allow the use of commands with arguments or of multiple commands ↵ | Manuel Munz | |
for exec in /etc/config/ucitrack | |||
2011-05-21 | libs/sys: redirect stdout to /dev7null when calling initscripts | Jo-Philipp Wich | |
2011-05-04 | libs/web: remove license comments from cbi templates, saves around 50% of ↵ | Jo-Philipp Wich | |
their size | |||
2011-05-03 | libs/web: fix another invalid entity | Jo-Philipp Wich | |
2011-05-03 | trunk: s/ / /g | Jo-Philipp Wich | |
2011-04-17 | libs/json: Fix a typo and a logic error in json.lua to make ↵ | Jo-Philipp Wich | |
luci.json.encode() work like expected (#220) | |||
2011-04-13 | luci-firewall: Add support for negations for ip addresses/nets (#218) | Manuel Munz | |
2011-03-17 | libs/web: fix "port" datatype to allow port 0 | Jo-Philipp Wich | |
2011-03-13 | libs/sys: ignore TIME_WAIT connections in luci.sys.net.conntrack() | Jo-Philipp Wich | |
2011-03-13 | libs/web: explicitely cast input value of %m pattern to float in order to ↵ | Jo-Philipp Wich | |
avoid throwing an exception in toFixed() with very low values | |||
2011-03-13 | libs/core: add luci.model.network.wifinet.id() | Jo-Philipp Wich | |
2011-03-13 | libs/core: add txpower() and country() to luci.model.network.wifinet | Jo-Philipp Wich | |
2011-03-13 | libs/web: add %m pattern to String.format() | Jo-Philipp Wich | |
2011-03-12 | libs/sys: disregard ::/0 routes on "lo" in luci.sys.net.defaultroute6() | Jo-Philipp Wich | |
2011-03-11 | libs/core: allow resolving of virtual interfaces via get_interface(), should ↵ | Jo-Philipp Wich | |
fix wan status display with 6to4, 6in4 tunnels or pppoe connections | |||
2011-03-05 | libs/web: repair and modernize FileBrowser widget, patches by Kevin Locke ↵ | Jo-Philipp Wich | |
<klocke@digitalenginesoftware.com> (#207) | |||
2011-02-26 | libs/core: make general network model aware of the relay pseudo bridge protocol | Jo-Philipp Wich | |
2011-02-20 | libs/core: mark radvd as affected by network restarts | Jo-Philipp Wich | |
2011-02-20 | libs/core: ensure that luci.model.network.network._ip() always returns a ↵ | Jo-Philipp Wich | |
table if a list was requested | |||
2011-02-14 | libs/sys: Filter model string from /proc/diag/model | Manuel Munz | |
2011-02-14 | libs/sys: better handle bogomips parsing | Jo-Philipp Wich | |
2011-02-12 | web: Relax hostname validation for length | Manuel Munz | |
2011-02-12 | libs/sys: fix call to nixio.uname() | Jo-Philipp Wich | |
2011-02-12 | libs/sys: fix parsing of model and cpu info, consider 2000::/3 as IPv6 ↵ | Jo-Philipp Wich | |
default route if no ::/0 route exists (#200) | |||
2011-02-12 | libs/core: use is6linklocal() | Jo-Philipp Wich | |
2011-02-12 | libs/core: whitespace fix in previous commit | Jo-Philipp Wich | |
2011-02-12 | libs/core: add is4linklocal(), is4rfc1918() and is6linklocal() to luci.ip | Jo-Philipp Wich | |
2011-02-12 | web: Improve hostname validation | Manuel Munz | |
2011-02-11 | libs/core: add new convenience functions to luci.model.network | Jo-Philipp Wich | |
2011-02-06 | libs/core: fix lookups bridge interface -> network in luci.model.network | Jo-Philipp Wich | |
2011-01-29 | libs/sys: fix ip6tables parsing issue | Jo-Philipp Wich | |
2011-01-29 | libs/sys: add ip6tables support to luci.sys.iptparser | Jo-Philipp Wich | |
2011-01-29 | libs/web: improve cbi handling of Flag values, support usage of .default ↵ | Jo-Philipp Wich | |
attribute to signalize default-on checkboxes, this helps to deal with the reversed logic of various uci bools within OpenWrt configs |