Am 28.06.2015 um 05:14 schrieb Matthew Brush:
On 2015-06-27 07:54 PM, Lex Trotman wrote:
On 28 June 2015 at 12:40, Matthew Brush <mbr...@codebrainz.ca> wrote:
On 2015-06-27 12:46 PM, Dimitar Zhekov wrote:
[...]
An updated list of the API-s asked to remain public:
me WIF*
lex spawn_get_program_name
lex spawn_check_command
me/lex spawn_kill_process
spawn_async_with_pipes
lex spawn_async
me/lex spawn_with_callbacks
me spawn_write_data
lex? spawn_get_exit_status_cb
lex spawn_sync
We should only export what you have concrete plans to use during the
next
cycle. If Lex wants update plugins during the next cycle to use
other parts
of the API, we can expose them at the time that the PR is made. No
point to
speculatively expose API that nobody has immediate plans to use.
If no API is available then nobody will have any plans so no API is
needed so nobody will have any plans for the egg so no chicken is
needed so ....
It can easily be made available on-demand, as normal.
We should only be concerned about what Scope is requesting as it has
concrete plans to use them during the next development cycle and
doesn't want the plugin to depend on the next development version of
Geany during that time[0]. There's no reason to speculatively rush
other APIs in if no plugins have immediate plans to use them nor have
the concern about depending on the development version of Geany.
Depending on a development version of Geany can be a concern.
I don't want to judge on the specific spawn_* APIs. But why not just
release with the APIs being available (linkable by plugins) without
already setting them officially in stone. In other words, find a method
to mark these APIs experimental so that we can more easily change or
remove them. This experimental flag should be set for at least one
release cycle (but perhaps more depending on the situation). Then only
plugin developers that are prepared to adapt their plugins quickly can
use them (likely the same plugin developers who pushed the API into
Geany for their plugins in the first place). Arguably, this should be
the default process for any new API (IMO).
Best regards
_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel