Mihai Varga
b0282a2a03
Revert "loolwsd: LRU expiry persistent cache"
...
This reverts commit 74dcec1d3f
.
The cronjob replaces this
2015-08-03 21:51:55 +03:00
Mihai Varga
eceb977186
loolwsd: cron job to delete old tiles from rpm packages
...
place a cronjob file in /etc/cron.d/ which is removed when
the loolwsd rpm packages is uninstalled
2015-08-03 21:50:41 +03:00
Mihai Varga
6812c6aa0b
goToPage API
...
in loleaflet, this is achived by invalidating the cursor and centering
the viewing area around it
2015-08-03 19:07:02 +03:00
Mihai Varga
992f19e6e8
loolwsd: handle parts in Writer
...
In Writer a part is a page and we only notify the client about the
current page in which the cursor is. Internally (invalidation and
caching) we work with a single part (0)
2015-08-03 17:29:23 +03:00
Mihai Varga
91c98a344e
loolwsd: bump version after tarball
2015-08-03 10:14:19 +03:00
Mihai Varga
ac365f6d17
loolwsd: bump version before tarball
2015-08-03 10:13:07 +03:00
Mihai Varga
4ae546d7bd
loolwsd: don't move editing tiles to persistent on saveAs
2015-07-29 16:58:43 +03:00
Mihai Varga
a6091f9f6b
loolwsd: don't decode the url in the saveAs command
2015-07-29 11:39:35 +03:00
Henry Castro
74dcec1d3f
loolwsd: LRU expiry persistent cache
...
When tile requests from the cache, update time stamp file
so LRU tiles are removed.
2015-07-25 20:12:07 -04:00
Henry Castro
ec094f1601
loolwsd: remove _pendingPreSpawnedChildren.
...
_pendingPreSpawnedChildren is no longer need it, because
fork() is used.
Also adjusted time sleep to 1 second.
2015-07-24 15:17:46 -04:00
Henry Castro
6dafcc753f
loolwsd: process sleep for amount of time ...
...
specified by MAINTENANCE_INTERVAL
2015-07-24 14:10:24 -04:00
Henry Castro
e107fa662c
loolwsd: update loolstat display processes utility
2015-07-24 13:54:35 -04:00
Tor Lillqvist
bbd5e54785
Let's try to have a bit saner dependencies
...
Surely loolwsd shouldn't depend on dev packages. And libpng12 gets included
automatically.
2015-07-24 14:31:46 +03:00
Tor Lillqvist
5bee6f71a2
Add more synthetic dependencies per customer wish
...
Not sure why they want to depend on those dev packages!?
2015-07-24 14:03:53 +03:00
Mihai Varga
e29d7c8468
loolwsd: save the whole status not only the fst line
2015-07-22 15:09:14 +03:00
Mihai Varga
b9884a470a
loolwsd: be aware of the client's current part
...
And set lok's part to match the client's when they start editing or
selecting
2015-07-21 16:56:02 +03:00
Mihai Varga
c9fff5d8e3
loolwsd: updated tileCache::invalidateTiles
2015-07-21 14:53:53 +03:00
Mihai Varga
8f48dabf28
loolwsd: discard requests that are in the queue already
2015-07-21 11:08:36 +03:00
Mihai Varga
47790d9d5d
loolwsd: use the new invalidate x y widht height command
2015-07-21 11:08:36 +03:00
Tor Lillqvist
fe8ef16827
Minor update to match facts better
2015-07-20 22:19:20 +03:00
Mihai Varga
19d6dec3f7
loolwsd: log timestamp in microseconds
...
Also, separate messages by comma so we can parse them easily
2015-07-20 12:54:08 +03:00
Henry Castro
c54ea4cd54
loolwsd: added shell script loolstat
...
loolstat. display a tree of processes and report total
number processes and threads.
2015-07-19 19:34:18 -04:00
Henry Castro
de3d97d5a4
loolwsd: create PID log file.
...
The PID log file is used by external utilities
to report processes, threads, etc.
2015-07-19 16:49:11 -04:00
Henry Castro
6e5df9acda
loolwsd: systemplate added tmp dir
...
tmp directory is necessary when uses the valgrind tool
2015-07-18 14:28:12 -04:00
Henry Castro
66756a77a9
loolwsd: change named mutex to private static.
2015-07-18 12:35:16 -04:00
Henry Castro
161e5534ec
loolwsd: mutex lock when loKit initialization.
2015-07-17 21:54:26 -04:00
Henry Castro
63a33b39f6
loolwsd: moved server socket to main function.
2015-07-17 17:55:57 -04:00
Henry Castro
404b5edbc9
loolwsd: FileTransferHandler no longer need it.
2015-07-17 16:55:49 -04:00
Henry Castro
99ca81a944
loolwsd: move server socket to parent process
2015-07-17 14:04:40 -04:00
Henry Castro
061a2bfc3d
loolwsd: rework child monitor status.
2015-07-16 18:05:28 -04:00
Mihai Varga
5085fd4e0c
loolwsd: move tiles to persistent folder on save
2015-07-16 12:51:07 +03:00
Mihai Varga
2ebe9f1be1
loolwsd: format and options in 'saveas' are optional
2015-07-16 12:51:07 +03:00
Henry Castro
fd5b676b2d
loolwsd: set RTLD_NOW, all undefined symbols in
...
the library are resolved before dlopen() returns.
Also remove unnecessary commented code.
2015-07-15 20:57:39 -04:00
Mihai Varga
675cfb8c4a
loolwsd: send part names with the status message
...
Also disabled the status length assertion because part names
are separated by new-line characters ('\n')
2015-07-15 18:49:32 +03:00
Henry Castro
3f3b9f7675
loolwsd: remove WSTOPSIG(status).
...
No child returns status process stop. This cause problems
when we attach one child to debug.
2015-07-15 09:15:12 -04:00
Mihai Varga
0d80d63cb4
loolwsd: don't cancel special tile requests that have an ID
2015-07-14 19:46:29 +03:00
Mihai Varga
97191d985b
loolwsd: allow an extra paramater to the tile command (ID)
2015-07-14 19:46:04 +03:00
Henry Castro
bb3611399b
loolwsd: Use fork but no execve
2015-07-13 10:13:06 -04:00
Tor Lillqvist
5bf98749ba
Use /opt/libreoffice5.0 to match LO 5.0 beta
...
Note that the LibreOffice version present on the build system, if any, has no
relation to the one the packaged binaries are supposed to run against. When
building RPM or Debian packages, we use the bundled copy of the LibreOfficeKit
headers we have here, and not ones from a LibreOffice source tree.
2015-07-08 18:03:27 +03:00
Mihai Varga
6d2d8361b6
loolwsd: the third argument in postUnoCommand must be null not space
2015-07-08 09:09:58 +03:00
Tor Lillqvist
8864d8432b
Bump minor version in this branch
2015-07-07 18:32:55 +03:00
Tor Lillqvist
d39fa21d64
Bump version after tarball
2015-07-07 12:49:52 +03:00
Tor Lillqvist
44074286a3
Bump version for tarball
2015-07-07 12:44:37 +03:00
Tor Lillqvist
b0f2b06fca
Add the libnss* pathnames for Debian, too
2015-07-07 12:44:16 +03:00
Tor Lillqvist
3f874060c4
Bump version after tarball
2015-07-07 10:47:28 +03:00
Tor Lillqvist
db73d12cf2
Bump version for tarball
2015-07-07 10:12:13 +03:00
Tor Lillqvist
e29c773879
Include loolwsd.service and sysconfig.loolwsd in the tarball
...
(Instead of having them as separate SOURCEn in the loolwsd.spec.)
Both are related to systemd. The latter probably is relevant only for
openSUSE. (And I actually couldn't get what I tried doing in it to work, see
739edf9dcf464f407dfe663fb2f497b866e73333.)
(cherry picked from commit f8b29d666d52a3f18b0125aaed309fa3e4d719fb)
2015-07-07 10:11:34 +03:00
Tor Lillqvist
f1b4f72278
Adapt to the CP LO 5.0 beta1
...
(cherry picked from commit 9be670309fd107d29c4c54c58d2927968d777745)
2015-07-07 10:11:03 +03:00
Tor Lillqvist
baeeb92d1c
Add cap_mknod here, too
2015-07-07 09:57:43 +03:00
Jan Holesovsky
767d6a0a32
Create /dev/*random in the chroot so that ssl works.
...
Also add the missing library to the systemplate.
2015-07-06 19:35:50 +02:00
Henry Castro
e50e302839
loolwsd: Handle file URI schema
...
In the file:// case, if it is on linux, hard link function is used
and copy only if hard link fails.
2015-07-04 20:46:13 -04:00
Henry Castro
d788fa92e9
loolwsd: let libreoffice handle http protocol
2015-07-03 10:04:24 -04:00
Tor Lillqvist
f4da368a52
Add a FIXME, found by looking, no time to investigate
2015-07-02 16:26:09 +03:00
Jan Holesovsky
fbcbc462d6
One more place where we need to adapt to the new payload format.
2015-06-25 17:35:33 +02:00
Jan Holesovsky
4071022305
The payload format has changed, swap the parameters accondingly.
2015-06-25 17:03:18 +02:00
Jan Holesovsky
a172c73519
Update the bundled includes.
2015-06-25 12:03:16 +02:00
Jan Holesovsky
7c48ea1fe3
Change the tiles cache to 2-level cache.
...
Now we have 2 caching directories: 'persistent', and 'editing'.
The Persistent cache always represents the document as it is saved, the
Editing one caches the current edits. The Editing state is copied to
Persistent on save. The Editing state is destroyed on reload.
2015-06-24 22:07:58 +02:00
Mihai Varga
e8007ea405
Server getTextSelection implementation
2015-06-24 18:08:15 +03:00
Tor Lillqvist
f7a769ef28
Avoid assertion when the --lotemplate parameter ends with a slash
2015-06-17 16:52:54 +03:00
Tor Lillqvist
d7a6a8511c
Handle callbacks here, too
2015-06-12 16:58:49 +03:00
Tor Lillqvist
f09991e6c8
Don't use TABs for variable assignment lines
2015-06-09 19:34:32 +03:00
Tor Lillqvist
692b971a55
Add tsqueue.h
2015-06-09 19:34:24 +03:00
Tor Lillqvist
6804750463
Don't bother with storing a ref to Application::instance() in a variable in some places
2015-06-09 18:30:21 +03:00
Tor Lillqvist
d3f4ddd355
Use a queue also in the child processes
2015-06-09 18:30:12 +03:00
Tor Lillqvist
8a2329d698
Log the number of tiles requests and replies
2015-06-09 18:30:04 +03:00
Tor Lillqvist
70b1e58f4c
Typo
2015-06-09 18:29:55 +03:00
Tor Lillqvist
629ba87139
Add a "canceltiles" message to the protocol and handle it
...
Implementing this Was harder than I first expected. The basic idea is as
follows: The master process puts each message arriving from a client that
isn't "canceltiles" into a (client-specific) queue. A separate thread that
pulls messages from the queue at its own pace and handles them as
before. Incoming "canceltiles" messages are handled specially, though: The
queue is emptied of "tile" messages.
The above sounds simple but there are several details that were a bit tricky
to get right.
2015-06-09 18:29:48 +03:00
Tor Lillqvist
1954d95e91
Clarify usage message
2015-06-09 18:29:35 +03:00
Tor Lillqvist
a7f2e5aa29
The buffer parameter to handleInput() can be const
2015-06-08 17:56:10 +03:00
Tor Lillqvist
391d17831d
Bump minor number in this master branch
2015-06-05 16:28:49 +03:00
Tor Lillqvist
316bfe487d
Correct documentation for _docURL
2015-06-05 13:05:51 +03:00
Tor Lillqvist
ea2141ffe7
Take the tile cache directory as an option, too
2015-06-04 17:09:19 +03:00
Tor Lillqvist
314a9ba826
We want --localstatedir=/var on Debian
2015-06-04 15:53:19 +03:00
Tor Lillqvist
6b0ab577ce
Add Debian packaging
2015-06-04 13:08:01 +03:00
Tor Lillqvist
9ab0aaed03
Bump version after tarball
2015-06-04 13:08:00 +03:00
Tor Lillqvist
5985d86642
Bump version for tarball
2015-06-03 20:05:15 +03:00
Tor Lillqvist
f1732ba96d
Avoid global dtors, just _Exit()
2015-06-03 09:13:22 +03:00
Tor Lillqvist
2312d9a962
Just use Requires instead of PreReq
...
They mean the same.
2015-06-03 09:13:22 +03:00
Tor Lillqvist
d3ba2cae5b
Post-release bump
2015-06-01 20:18:53 +03:00
Tor Lillqvist
3f0bd39a12
Bump version for tarball
2015-06-01 20:17:15 +03:00
Tor Lillqvist
ec681d2cc8
For some reason I can't get the $LOOLWSD_NUMPRESPAWNS to work
...
Even though it is set in /etc/sysconfig/loolwsd, it expands to nothing when
used in the loolwsd.services file. Oh well. Let's hardcode a value of 5 for
now.
2015-06-01 20:14:40 +03:00
Tor Lillqvist
7848cca80c
Try to make this handled by systemd
2015-06-01 19:53:29 +03:00
Tor Lillqvist
bbf844f8da
Fix copy/paste error in help message
2015-06-01 19:52:48 +03:00
Tor Lillqvist
a8bbebb4b2
Drop more too specific dependencies
2015-06-01 18:32:04 +03:00
Tor Lillqvist
74b5227dec
Drop a few too specific dependencies
2015-06-01 17:55:12 +03:00
Tor Lillqvist
1e8a22d4d6
Bump version to 1.0.31 after "release"
2015-06-01 16:36:42 +03:00
Tor Lillqvist
a59f176929
Bump version to 1.0.30 for tarball
2015-06-01 16:36:42 +03:00
Tor Lillqvist
b317bfb9a0
Add the packages that the TDF build of LO should require (but doesn't)
...
LibreOffice from TDF, packaged in RPM, does not have proper dependencies as it
is supposed to be usable on different distros and can't know what names are
used for packages for system libraries used, like the one containing
libdbus-glib. But we must have all dependent libraries installed when running
the loolwsd-systemplate-setup command in the %post phase. As this spec file de
facto is for openSUSE 13.2 only anyway, we can find out the package names and
depend on them...
Add the list from running:
rpm -qf --queryformat '%{NAME} ' `find /opt/libreofficedev5.1 -name '*.so' -o -name '*.so.[0-9]*' | while read file; do ldd $file; done | grep -v dynamic | cut -d " " -f 3 | grep -E '^(/lib|/usr)/' | sort -u`
2015-06-01 16:34:58 +03:00
Tor Lillqvist
58e4e15c6a
Post-release bump to 1.0.29
2015-05-29 18:36:37 +03:00
Tor Lillqvist
9076ba8a75
Bump version to 1.0.28 for tarball
2015-05-29 18:35:42 +03:00
Tor Lillqvist
b54731fdce
We do need to require the LO packages
...
They need to be installed before loolwsd is installed, because our %post
action needs to know where LO is installed so that it can create the
systemplate and child-roots directories on the same file system where LO
is. Oh this is crazy and over-engineered. I wonder if it makes sense at all to
even consider packaging this loolwsd in some generically useful way, or if it
should be considered a manual thing for customers / users to install and
configure.
Sadly the TDF builds of LO use the version number in the package names, so we
can't depend on *some* TDF build of LO (like >= 5.0), but must have a specific
version in this spec file. Sigh.
2015-05-29 18:31:53 +03:00
Tor Lillqvist
4303f1ee38
Improve tile cache handling for file: documents
...
Handle also documents specified with a file: URI. Move creating the
modtime.txt file to the constructor of the TileCache object for the document.
2015-05-29 12:26:54 +03:00
Tor Lillqvist
3ed22306e8
Post-release bump to 1.0.27
2015-05-29 10:10:20 +03:00
Tor Lillqvist
47aa6c74ed
Bump version to 1.0.26 for tarball
2015-05-29 10:06:48 +03:00
Tor Lillqvist
775603a736
Don't use sudo to run setcap when building from rpmbuild
...
Not a good idea to run an interactive command during a non-interactive
make. We do the setcap in the %post step in the spec file anyway.
2015-05-29 10:05:37 +03:00
Tor Lillqvist
f94cef92c8
Post-release bump to 1.0.25
2015-05-29 09:47:51 +03:00
Tor Lillqvist
2230b3f0c5
Bump version to 1.0.24 for tarball
2015-05-29 09:47:03 +03:00
Tor Lillqvist
a608aaee90
Add an invalidate: message that is in LOOL style with named parameters
...
The invalidatetiles: message as generated directly from the
LOK_CALLBACK_INVALIDATE_TILES will be dropped soon.
2015-05-29 09:44:39 +03:00
Tor Lillqvist
1b85e8eaaa
Be more consistent in using 'using'
2015-05-29 08:49:49 +03:00
Tor Lillqvist
26161d6063
Handle the EMPTY case of LOK_CALLBACK_INVALIDATE_TILES, too
2015-05-29 08:39:21 +03:00