Commit graph libervia-backend/sat_frontends/jp/cmd_blog.py
Author SHA1 Message Date
Goffi
684401a3d8 cli (blog, pubsub): encryption argument for Pubsub Targeted Encryption:
add a new `--encrypt-for` argument to `blog/set` `blog/edit` `pubsub/set` and `pubsub/edit`

rel 382
2022-10-31 13:48:01 +01:00
Goffi
c400bc8217 cli (blog/set): new --sign argument:
rel 381
2022-10-28 18:47:17 +02:00
Goffi
ba9a4ef31b cli (blog): add --encrypt argument on publication commands to e2ee a blog post:
rel 380
2022-10-15 20:37:00 +02:00
Goffi
0aa9613693 cli (blog, pubsub): new attachments subcommands:
`pubsub/attachments` subcommands has a `get` and a `set` subcommand to manage attachments
of a pubsub item.

`blog` has the same subcommands, the only difference is that if `--node` is not specified,
the default blog namespace will be used.

rel 370
2022-07-20 17:55:11 +02:00
Goffi
9ce0f943cc cli (blog/get): verbose level of 2 now shows extra field 2022-07-14 12:55:30 +02:00
Goffi
44849a1fda cli (blog/set): show ID of published item 2022-07-14 12:55:30 +02:00
Goffi
b533b3e56c li (blog): new repeat subcommand, to re-publish a blog post:
rel 370
2022-07-14 12:55:19 +02:00
Goffi
23640ed33f cli (blog/get): fix default output when a value is None 2022-01-25 17:27:39 +01:00
Goffi
44a54978b9 CLI: move format_time to common + add timezone 2021-09-08 17:58:48 +02:00
Goffi
436696f28c merge branche "@" 2021-08-27 14:51:40 +02:00
Goffi
c8572b8f21 CLI: fix section used for config following name change 2021-08-27 14:46:52 +02:00
Goffi
d10ce3ad7a jp (base): add flag for use_pubsub to add cache skipping option 2021-07-29 22:51:01 +02:00
Goffi
f2a06bbcbf plugin XEP-0060: getItems extra is now serialised dict 2021-07-28 23:01:15 +02:00
Goffi
7adbf3ead8 core, frontends: fix invalid translatable strings.
Some f-strings where used in translatable text, this has been fixed by using explicit
`format()` call (using a script based on `tokenize`).

As tokenize messes with spaces, a reformating tool (`black`) has been applied to some
files afterwards.
2021-06-14 18:35:12 +02:00
Goffi
fb01bd4bcc jp (pubsub, blog): rename commands implementation 2021-05-01 18:39:34 +02:00
Goffi
8f7c74e3b3 jp (blog/get): fix comments node parsing 2021-05-01 18:38:58 +02:00
Goffi
dc86957043 date update 2021-03-19 15:45:14 +01:00
Goffi
4909433e83 jp (blog/edit): fixed edition when syntax is specified 2020-08-15 20:29:44 +02:00
Goffi
e03eb5bfcc plugins XEP-0059, XEP-0060, XEP-0277, XEP-0313: better serialisation:
`data_format.serialise` is now used for `mbGet`, and RSM/MAM values are not transtyped to
strings anymore. A serialised dict is now used, items are put in the `items` key.

Comments handling has been refactored to use a list for the potentially multiple comments
nodes.

`rsm` data are now in a `rsm` key of the dict, and `mam` data are merged with other
metadata.
2020-07-16 09:07:20 +02:00
Goffi
09cb00b5b1 jp (blog/edit): --no-publish is a boolean option 2020-03-31 08:45:49 +02:00
Goffi
3d8ef1d625 jp (blog/edit): added --no-publish argument. 2020-02-18 18:17:18 +01:00
Goffi
e1a44cf4e4 fixed shebangs 2020-01-29 10:07:00 +01:00
Goffi
a39349fe64 dates update 2020-01-29 09:50:54 +01:00
Goffi
1eee84c8f3 jp (blog): added --language to common publish argument 2019-12-20 14:23:42 +01:00
Goffi
1efb60a429 jp: dark and light theme:
- `background` setting can now be used in sat.conf to indicate if the terminal use a
  `dark` or a `light` colour
- if `background` is not set or set to `auto`, the background colour is autodetected
- Jp.get_config (or CommandBase.get_config) method can now be used to retrieve a setting
2019-10-01 22:49:10 +02:00
Goffi
76aadbb3fb jp: jp asyncio port:
/!\ this commit is huge. Jp is temporarily not working with `dbus` bridge /!\

This patch implements the port of jp to asyncio, so it is now correctly using the bridge
asynchronously, and it can be used with bridges like `pb`. This also simplify the code,
notably for things which were previously implemented with many callbacks (like pagination
with RSM).

During the process, some behaviours have been modified/fixed, in jp and backends, check
diff for details.
2019-09-25 08:56:41 +02:00
Goffi
fbfe96c505 Python 3 port:
/!\ this is a huge commit
/!\ starting from this commit, SàT is needs Python 3.6+
/!\ SàT maybe be instable or some feature may not work anymore, this will improve with time

This patch port backend, bridge and frontends to Python 3.

Roughly this has been done this way:

- 2to3 tools has been applied (with python 3.7)
- all references to python2 have been replaced with python3 (notably shebangs)
- fixed files not handled by 2to3 (notably the shell script)
- several manual fixes
- fixed issues reported by Python 3 that where not handled in Python 2
- replaced "async" with "async_" when needed (it's a reserved word from Python 3.7)
- replaced zope's "implements" with @implementer decorator
- temporary hack to handle data pickled in database, as str or bytes may be returned,
  to be checked later
- fixed hash comparison for password
- removed some code which is not needed anymore with Python 3
- deactivated some code which needs to be checked (notably certificate validation)
- tested with jp, fixed reported issues until some basic commands worked
- ported Primitivus (after porting dependencies like urwid satext)
- more manual fixes
2019-08-13 19:08:41 +02:00
Goffi
fb58a375f8 jp (blog/preview): fixed watch restoring when file is moved/deleted:
with some editors (e.g. vim), when file is written it is actually replaced with a buffered
one. In this case, jp replace the watch to check the new file, but it was not working
anymore with latest version of inotify module. This patch fixes it by removing the old watch
before adding a new one.
2019-07-12 11:29:05 +02:00
Goffi
1e327c01e1 Backed out changeset cf0dda0d4cda
check_output can't be used as it's waiting for command to return, blocking the edition.
2019-07-12 09:04:45 +02:00
Goffi
a6b4c9c56a jp (blog/edit): fail and show error message if --preview is not working 2019-07-12 08:55:41 +02:00
Goffi
cdba0078b8 jp (blog/preview): fixed call to getCurrentFile 2019-06-27 20:24:14 +02:00
Goffi
d694599d69 jp (blog/edit): fixed --last-item after recent change in defaut value of --item 2019-05-05 18:50:38 +02:00
Goffi
9a50da7f07 jp (blog/set): fixed missing current_syntax 2019-05-05 18:50:35 +02:00
Goffi
987d808896 jp (blog): fixed the deserialisation issue when using template output 2019-05-05 18:50:32 +02:00
Goffi
d85f1b364f jp, plugin merge-requests: used u'' as default for item id in pubsub arguments + fixed some required arguments:
u"" is now used as defaut item id instead of node, as it needs to be serialised anyway. This is temporary solution, as empty string can be used for item id (not forbidden by XEP-0060), but for now this is not handled correctly in jp/SàT (see https://bugs.goffi.org/bugs/view/289). Correct solution will probably need to use a special key in extra to mark empty string in id.
Added/removed some required values for node or item when it made sense.
2019-04-14 08:21:51 +02:00
Goffi
6ec0f5a506 jp (blog/set): fixed use of --item argument 2019-03-25 18:40:10 +01:00
Goffi
db06965385 jp (blog/edit): fixed handling of XHTML content when it is not already wrapped in <div>…</div> 2019-03-25 07:06:48 +01:00
Goffi
39025b9f15 jp (blog/edit): changed comments handling:
"-C" now allow comment and "--no-comments" explicitly disable it. This way when none of this option is used, the current state of the item is kept without deleting accidentaly the comments node.
2019-02-23 19:00:25 +01:00
Goffi
512ae0b91e plugin XEP-0277: blog items data are now entirely serialised before going to bridge:
So far, and for historical reasons, blog items data where serialised using a unicode: unicode dict, which was causing trouble for many types of values (timestamps, booleans, lists).
This patch changes it by serialising the whole items before going to bridge, and deserialising it when going back. This way, complex data can be used easily in items.
This impact psEvent and serItemsData* methods which are renamed transItemsData* because there are not always serialising anymore (a new argument "serialise" allows to specify it).
When editing a blog post in jp, metadata are now more easy to manipulate, specially lists like tags.
2019-02-23 18:59:00 +01:00
Goffi
8e338bf913 date update 2019-01-12 12:25:31 +01:00
Goffi
169165e4ee jp (base, pubsub, ticket): handle order-by:
--order-by has been added to pubsub group.
New getPubsubExtra helper method generate extra dict according to arguments.
getPubsubExtra is used for pubsub/get, blog/get and and ticket/get.
2019-01-06 17:39:57 +01:00
Goffi
6d3e396d01 jp (blog/import): removed now useless generation of url_redirections_profile config key 2018-09-14 16:45:11 +02:00
Goffi
9e03d02f18 jp (blog): fixed path encoding for inotify 2018-07-08 11:15:22 +02:00
Goffi
744cb0c503 code style reformatting using black 2018-06-27 20:14:46 +02:00
Goffi
720d23cd1c jp (blog/preview): fixed guessSyntaxFromPath call 2018-06-01 12:02:09 +02:00
Goffi
80ef13612b core, setup: huge cleaning:
- moved directories from src and frontends/src to sat and sat_frontends, which is the recommanded naming convention
- move twisted directory to root
- removed all hacks from setup.py, and added missing dependencies, it is now clean
- use https URL for website in setup.py
- removed "Environment :: X11 Applications :: GTK", as wix is deprecated and removed
- renamed sat.sh to sat and fixed its installation
- added python_requires to specify Python version needed
- replaced glib2reactor which use deprecated code by gtk3reactor

sat can now be installed directly from virtualenv without using --system-site-packages anymore \o/
2018-04-02 19:44:50 +02:00
Renamed from frontends/src/jp/cmd_blog.py (Previous history)