On Mon, Oct 2, 2023, at 16:15, Robert Middleton wrote:
> At least two reasons I can think of:
> 1. Xstream doesn’t work on all java versions as you saw
> 2. Simplify by using the commons config instead of rolling our own.
>
> Each tab should now have just one config file, the idea being that you can
> now share config files between people.  Before each tab had at least
> two(maybe three) files.  One was the xml config, one was a java serialized
> map.  Removing the java serialization is important.

OK. Do you think something based on Jackson would be good? It's JSON though.

>From an example:

ObjectMapper objectMapper = new ObjectMapper();
Car car = new Car("yellow", "renault");
objectMapper.writeValue(new File("target/car.json"), car);

We could wrap this in some kind of class and make it accessible per "tab" (or 
whatever).


>
> -Robert Middleton
>
> On Mon, Oct 2, 2023 at 6:12 AM Christian Grobmeier <grobme...@apache.org>
> wrote:
>
>>
>> On Mon, Oct 2, 2023, at 02:55, Robert Middleton wrote:
>> > Some(most?) of the settings should be saved:
>> >
>> https://github.com/apache/logging-chainsaw/blob/5ccb3c8e55dffd4361c549c3bcdac3f3675f79e5/src/main/java/org/apache/log4j/chainsaw/prefs/SettingsManager.java#L191
>> >
>> > The stuff that is commented out should just be the old saving code that
>> > used XStream to save the data out.
>>
>> You made it using this commit (thank you, its easy to track):
>>
>> https://github.com/apache/logging-chainsaw/commit/75bedf98665188eef4d13e4bfbb4b0dae456f65e
>>
>> One question: why did we remove Xstream? it seem there was an update late
>> 2022 to address some security.
>> Should we just re-enable it or was there other reasons too?
>>
>>
>>
>>
>> >
>> > -Robert Middleton
>> >
>> > On Sun, Oct 1, 2023 at 3:39 PM Christian Grobmeier <grobme...@apache.org
>> >
>> > wrote:
>> >
>> >>
>> >> On Sun, Oct 1, 2023, at 21:28, Scott Deboy wrote:
>> >> > The ability to route events to tabs is a core feature in the code -
>> >> > that's how Chainsaw log messages end up in a Chainsaw-specific tab -
>> >> > but the ability to control that routing via a 'routing expression' was
>> >> > nuked from app-wide preferences - another thing we should bring back.
>> >> >
>> >> > It looks like we lost a lot of prefs, both panel-level and app-wide
>> >> prefs.
>> >>
>> >> Yes, I think all prefs are somehow gone. At least everything that is
>> >> writes to a file seems to be commented.
>> >> I didn't remove those things yet, as they seemed to big and I didn't
>> >> understand well how they'd work or how I would test (I lack the
>> knowledge
>> >> of how the UI should operate but only see what is there now)
>> >>
>> >>
>> >> >
>> >> > Scott
>> >> >
>> >> > On 10/1/23, Robert Middleton <rmiddle...@apache.org> wrote:
>> >> >> I would say the saving/loading of settings is probably the main
>> thing to
>> >> >> fix - if I remember correctly, it kinda works at the moment.  Part of
>> >> the
>> >> >> issue with what it did before was that the settings were scattered
>> among
>> >> >> several different files with no apparent rhyme or reason, and
>> converting
>> >> >> them to one file I'm not sure if everything works.
>> >> >>
>> >> >> The one feature that I'm pretty sure doesn't exist is the ability to
>> >> have
>> >> >> multiple log messages go to one tab, but I don't think that is
>> critical
>> >> for
>> >> >> release.  In order to properly support that I think requires a bit
>> more
>> >> >> planning on both the UI side(so you can know how things are routed)
>> and
>> >> on
>> >> >> the back-end side(to do the actual routing).
>> >> >>
>> >> >> -Robert Middleton
>> >> >>
>> >> >> On Sun, Oct 1, 2023 at 3:14 PM Christian Grobmeier <
>> >> grobme...@apache.org>
>> >> >> wrote:
>> >> >>
>> >> >>> On Sun, Oct 1, 2023, at 20:59, Scott Deboy wrote:
>> >> >>> > It's great to see the contribution, thanks Christian!
>> >> >>> >
>> >> >>> > I pulled down latest master and it looks like there are some UI
>> >> >>> > glitches we should fix - for example, resizing the logger tree
>> pane
>> >> >>> > doesn't render correctly.
>> >> >>> >
>> >> >>> > As I mentioned before, I assume there are a bunch of features we
>> lost
>> >> >>> > when we moved from log4j1 - some may not be critical, but I think
>> >> >>> > persisting 'default' tab settings is pretty important if it's not
>> >> >>> >
>> >> >>> > I'd like us to at least support the log4j2 zeroconf functionality
>> as
>> >> >>> > well as VFSLogFilePatternReceiver.
>> >> >>> >
>> >> >>> > I'm happy to dig in - will look at latest master and contribute.
>> >> >>>
>> >> >>> I would be more than glad if you could take some kind of a lead
>> here.
>> >> My
>> >> >>> Swing-foo is long time gone and so far I just tried to clean a few
>> >> things
>> >> >>> or make the code more comprehensible.
>> >> >>>
>> >> >>> I will keep trying to extracting things, making classes a bit
>> smaller
>> >> if
>> >> >>> possible. I will closely follow what you are doing and try to learn
>> >> from
>> >> >>> it.
>> >> >>>
>> >> >>> Maybe, once we can persist tab settings and then release it, no
>> matter
>> >> >>> how
>> >> >>> the rest of the cleanup is.
>> >> >>>
>> >> >>>
>> >> >>> >
>> >> >>> > Scott
>> >> >>> >
>> >> >>> > On 10/1/23, Christian Grobmeier <grobme...@apache.org> wrote:
>> >> >>> >> Hello,
>> >> >>> >>
>> >> >>> >> I am moving things around a lot. There is much refactoring that
>> is
>> >> >>> necessary
>> >> >>> >> alone LogPanel had ~4500 lines of code. I believe this lot of
>> LOCs
>> >> is
>> >> >>> >> so
>> >> >>> >> complicated to understand that it prevents people from
>> contributing
>> >> -
>> >> >>> let
>> >> >>> >> alone Swing, but we can't change that.
>> >> >>> >>
>> >> >>> >> Apart from usual refactorings, I wonder what should be the goal
>> of
>> >> >>> >> 2.2?
>> >> >>> >>
>> >> >>> >> I have already upgraded some dependencies that have security
>> flaws.
>> >> 2
>> >> >>> more
>> >> >>> >> are in the pom, but they have no patched versions so far.
>> >> >>> >>
>> >> >>> >> Should we add at least one feature? Is there maybe one already in
>> >> that
>> >> >>> >> I
>> >> >>> >> missed?
>> >> >>> >>
>> >> >>> >> I would appreciate it if one of the more experienced Swing-devs
>> here
>> >> >>> could
>> >> >>> >> advise or maybe contribute some code so we can justify a release.
>> >> >>> >>
>> >> >>> >> The next question would be:
>> >> >>> >> How is chainsaw released at all?
>> >> >>> >>
>> >> >>> >> Kind regards,
>> >> >>> >> Christian
>> >> >>> >>
>> >> >>>
>> >> >>
>> >>
>>

Reply via email to