I don't see admin UI as non-core. I think that an application UI for end-users of an application consumes Solr non-core. I have to resign from arguing, though.
I don't consider myself a UI expert. I can do the work. On Fri, Apr 10, 2020 at 11:42 AM Ishan Chattopadhyaya < ichattopadhy...@gmail.com> wrote: > David, you capture my thoughts well. > > Having a UI as a package gives users more choice and gives our users more > flexibility. > 1. Users would be able to use a latter version of the UI with an older > version of Solr, or vice versa. > 2. Users should be able to install multiple types of UI, from different > publishers, at once. > 3. Contributors should be able to contribute to the UI more easily, since > collaboration can be less bureaucratic. Experts like Marcus won't need to > depend on preoccupied committers like us. > 4. A UI (not the default one) can use libraries that aren't even Apache > 2.0 compatible. > 5. We can setup and use UI test frameworks for test automation (selenium > etc), that would be challenging to setup and maintain with ASF Jenkins. > > List goes on.. > > Whether the package is a first party or third party can be a separate > discussion. There should be an extremely easy and well defined way (support > in the script itself) to start Solr with the packaged UI enabled. > > In any case, I don't think it is conducive to let UI code be part of the > Solr's core codebase, where it currently is. The reason is, we can't fix > bugs if we break something. We don't have automated testing either to know > whether or not we broke anything. > > Every healthy project has a rich plugin ecosystem, and such non core > improvements should be delivered via packages. > > On Fri, 10 Apr, 2020, 8:33 pm Marcus Eagan, <marcusea...@gmail.com> wrote: > >> I agree with you. đ >> >> On Fri, Apr 10, 2020 at 06:22 David Smiley <david.w.smi...@gmail.com> >> wrote: >> >>> I disagree that "package management frameworks are for loading >>> non-essential features or features not enabled by default". >>> >>> I don't think the proposal of the UI being a "package" (in the new >>> package system) implies that the UI (or _any_ package) is not a >>> highly valuable package that is so highly valuable that we want it >>> installed by default. Noble and I were brainstorming on some ideas where >>> even much of Solr's internal instances of plugin interfaces (e.g. query >>> parsers, etc.) might even be a new "core" package or some-such. The value >>> in putting much of Solr in a package, 1st party, is separation of concerns. >>> and better classpath management. >>> >>> I think it's "essential" that a UI ship with Solr by default -- meaning, >>> without the user having to take any additional steps whatsoever. As Jan >>> said it's been this way a long time. >>> >>> ~ David Smiley >>> Apache Lucene/Solr Search Developer >>> http://www.linkedin.com/in/davidwsmiley >>> >>> >>> On Fri, Apr 10, 2020 at 1:35 AM Marcus Eagan <marcusea...@gmail.com> >>> wrote: >>> >>>> I think package management frameworks are for loading non-essential >>>> features or features not enabled by default. On essentialness, experts >>>> should not decide what is essential based on how they use a system. They >>>> should consider the community of users. Regarding UI, it is and should be >>>> enabled by default. Only a few use cases prefer it to be disabled and some >>>> of those are because of its current state. They would like to use it in an >>>> updated form. >>>> >>>> What is the technical rationale that outweighs the needs and behaviors >>>> of our users to strip the user interface out of Solr? >>>> >>>> Thank you Noble and everyone else, >>>> Marcus >>>> >>>> >>>> On Thu, Apr 9, 2020 at 19:06 Noble Paul <noble.p...@gmail.com> wrote: >>>> >>>>> My 2 cents (again) >>>>> >>>>> if packages are disabled by default , how will UI work? >>>>> >>>>> We can make an exception for this one and enable only this by default >>>>> >>>>> Do we test the UI and certify it? >>>>> >>>>> The UI package can be shipped along with Solr distro ,like the million >>>>> other jars that we ship with Solr today and every version of Solr can >>>>> be certified for a certain version of the UI package. We should have >>>>> sanity tests to ensure that the given version of UI works well with >>>>> Solr. "My commit has broken the UI and it's not my problem" should not >>>>> be a valid excuse. The UI sanity tests should pass as a part of the >>>>> tests. >>>>> >>>>> Is the UI important? >>>>> >>>>> Yes, the admin UI is the face of Solr for may users. People always >>>>> assumed it existed & they depend on it. >>>>> >>>>> The current admin UI has fallen behind. If the new UI effort delivers >>>>> on the promise, this is a great opportunity to get rid of that old >>>>> baggage & make Solr codebase even slimmer >>>>> >>>>> On Fri, Apr 10, 2020 at 6:06 AM Jan Høydahl <jan....@cominvent.com> >>>>> wrote: >>>>> > >>>>> > Solr has always had an admin UI and if anyone wants to propose it >>>>> should not, please start another thread or vote about that, and do not >>>>> divert this thread which is about how to improve and future proof the >>>>> Admin >>>>> UI. >>>>> > >>>>> > I believe the Admin UI should be strengthened and enhanced, not >>>>> removed. It can perfectly well be an official and even default on part of >>>>> every release, perfectly in sync. Whether it is in core as today or a >>>>> package or a stand-alone process or a new webapp, are then really what we >>>>> discuss here. >>>>> > >>>>> > Perhaps after people have voiced their opinions in this thread, a >>>>> SIP can be crafted with a concrete plan. We can then have a vote on the >>>>> SIP. >>>>> > >>>>> > Jan Høydahl >>>>> > >>>>> > > 9. apr. 2020 kl. 20:06 skrev Cassandra Targett < >>>>> casstarg...@gmail.com>: >>>>> > > >>>>> > > ďťż >>>>> > > Thanks for your message, Gus. You touched on things I was thinking >>>>> this morning as I caught up to the thread, and had started to draft a >>>>> message about. >>>>> > > >>>>> > > I feel like there is an assumption underlying some of our >>>>> discussion about packages that says a feature or whatever has to either >>>>> part of our core codebase or 100% maintained by someone âoutsideâ the >>>>> community (by which I mean someone who is not a committer and/or operates >>>>> completely independently from the rest of the project activities). >>>>> > > >>>>> > > But itâs important to remember thereâs nothing inherent in the >>>>> package concept that says a package can't be wholly >>>>> maintained/distributed/supported by the Lucene PMC and our community of >>>>> committers and contributors. Itâs not uncommon for software to have a base >>>>> package of the core software and also plugins that most users would >>>>> consider âessentialâ, maintained by the same people making the core, but >>>>> which are added after the base install. There would be details to work out >>>>> in terms of how we manage that, but none of those are technically >>>>> impossible. I donât think we only have a binary choice (3rd party package >>>>> or part of Solr core). >>>>> > > >>>>> > > In fact, Iâd go so far as to say I suspect the only way packages >>>>> are going to see any real traction is if we take the lead in creating and >>>>> maintaining a few to show the way forward for everyone else who may be >>>>> interested in doing the same. The package concept introduces an idea of a >>>>> Solr ecosystem that has not really existed to date and like all new >>>>> ecosystems (communities), it needs some degree of nurturing to grow or it >>>>> will not take off. >>>>> > > >>>>> > > To bring it back around to the UI, though, I agree we need to >>>>> decide: is a UI important? I would argue that it is. I regularly talk to >>>>> users whose Solr knowledge and experience are quite advanced yet who still >>>>> rely entirely on the UI to carry out basic tasks. Itâs just easier - less >>>>> to remember, donât need to look up a command, etc. Persistent problems >>>>> with >>>>> performance of the UI in large clusters and gaping holes in functionality >>>>> are deeply frustrating to those users. >>>>> > > >>>>> > > Because it is important to our users, even if any new UI ends up >>>>> living outside our community, it will need our explicit approval in some >>>>> form or weâre going to hear complaints until the end of time that Solr >>>>> doesnât have a UI (or worse, we âtook awayâ the UI). Without our ongoing >>>>> endorsement and blessing it will just be another toy maintained by >>>>> âsomebodyâ (no offense, Marcus) until he is forced to abandon it due to >>>>> lack of user interest and/or lack of personal time to do all the heavy >>>>> lifting by himself. >>>>> > > >>>>> > > Cassandra >>>>> > >> On Apr 9, 2020, 11:32 AM -0500, Erick Erickson < >>>>> erickerick...@gmail.com>, wrote: >>>>> > >> Gus: >>>>> > >> >>>>> > >> Very thoughtful post. I think you raise an _extremely_ important >>>>> point about âhow critical is the UI?â And by extension other packages. If >>>>> theyâre critical to Solr, the question of how to keep them in sync becomes >>>>> paramount. >>>>> > >> >>>>> > >> I agree that the admin UI is important, if we have a mechanism to >>>>> insure itâs kept in sync with the release that would be near the to of my >>>>> list. >>>>> > >> >>>>> > >> Best, >>>>> > >> Erick >>>>> > >> >>>>> > >>> On Apr 9, 2020, at 12:06 PM, Gus Heck <gus.h...@gmail.com> >>>>> wrote: >>>>> > >>> >>>>> > >>> In my view this brings us up against a bit of an existential >>>>> question. How do we ensure quality of packages that are key to Solr? I'm >>>>> sure that there are folks who don't find the UI very useful, but it's >>>>> important to others. The rationale that "elastic keeps their's separate" >>>>> has to be tempered by the actual real differences between Elastic and >>>>> Solr. >>>>> Elastic has a corporate sponsor, a coordinated road map, and explicitly >>>>> ensures that all the bits that are maintained separately work together (so >>>>> that they don't have excessive support costs or bad first experiences that >>>>> impact their bottom line etc.). >>>>> > >>> >>>>> > >>> Solr is in a different place however, and we need to carefully >>>>> examine the question of whether something that works for Elastic works for >>>>> us. Lucidworks and several other large companies do spend a lot of money >>>>> on >>>>> developers that contribute to Solr, but there is no organization around >>>>> multiple components that MUST work together. Another example of this is >>>>> Solr and Lucene, and our defense against a lack of coordination of >>>>> components in that case has been to unify them into a single release >>>>> package. >>>>> > >>> >>>>> > >>> So IMHO we need to answer 2 questions: >>>>> > >>> 1.) Do we consider the UI important. If I'm alone or in a >>>>> minority in feeling it's important, then so be it and it doesn't really >>>>> matter what we do. (maybe a vote?) >>>>> > >>> 2.) If we make it "a package" how do we ensure that important >>>>> packages such as the UI are never broken by a new release. >>>>> > >>> >>>>> > >>> IMHO I don't thing we should tolerate a situation where things >>>>> we consider important are broken frequently. >>>>> > >>> >>>>> > >>> For my part obviously my answer to 1 is "yes" :). As for 2, one >>>>> thing that comes to mind is what the Ant project did (may still do?) with >>>>> (and my memory from 15 years ago is foggy here, so forgive me if something >>>>> I say is not quite perfect) the GUMP build server that ran ant builds for >>>>> a >>>>> bunch of different projects that depended on ant to ensure early >>>>> detections >>>>> of changes that would break existing projects. If we have a good UI test >>>>> suite and commit to that being part of the release build package that >>>>> might >>>>> be a solution. I honestly don't actually care where it lives, but I do >>>>> think it hurts us if it becomes broken and unusable, or hard to install. >>>>> > >>> >>>>> > >>> My worry is that "Solr developers are not UI developers" is >>>>> really code-words for "I want to be able to break it and let others clean >>>>> up the mess, because I'm not a UI developer". I have this worry with >>>>> respect to all "packages", but I may be missing info from discussions >>>>> about >>>>> the package system, which initiated during a very busy period for me so >>>>> background links that I should have read are welcome if I've got something >>>>> wrong here :) I went looking for a SIP but didn't see it... I have found a >>>>> google doc linked from SOLR-13661 >>>>> > >>> >>>>> > >>> Finally to a detail about one of the above suggestions the >>>>> option to automatically download and install the UI could be good, but >>>>> that >>>>> then requires that packages be available from somewhere that never goes >>>>> away like maven central, or that Apache commits to hosting a repository >>>>> server indefinitely, but again that's surely been discussed WRT packages >>>>> already... Using Github in such a way is subject to being broken >>>>> arbitrarily when Github decides to restrict things for cost reasons (ask >>>>> Bower about that one WRT rate limiting...) or the "repository" has to be >>>>> something local and therefore must be included part of the distribution... >>>>> at which point it's still a thing we distribute and since we're >>>>> distributing it and we probably don't mean to distribute broken stuff we >>>>> still need UI developers... >>>>> > >>> >>>>> > >>> Also, I thought the package loading stuff was supposed to be >>>>> disabled by default for security, that seems to conflict with or at least >>>>> complicate the notion of easily installing as a package. >>>>> > >>> >>>>> > >>> So "package" is a good for modularizing code, or for 3rd party >>>>> (possibly paid) plugins (I have a client that might find that interesting >>>>> in the future) but we have to ensure that it doesn't lead to a lack of >>>>> maintenance for things that are critical. >>>>> > >>> >>>>> > >>> Incidentally though I've said I favor Angular CLI, >>>>> (significantly because I've got some start on learning it) it also occurs >>>>> to me that perhaps anything "modern" is a difficulty because those things >>>>> all have a learning curve, and maximizing accessibility and ease of >>>>> modifications for folks not steeped in UI development might be our >>>>> priority >>>>> (different from the priorities a commercial site would have). The flip >>>>> side >>>>> argument is that with a popular framework, it would be easier for UI >>>>> focused folks to contribute... but will they? and does that leave us >>>>> perennially rewriting the UI in whatever is popular? (maybe that's ok?) I >>>>> think in all our decisions here we need to be very careful to distinguish >>>>> how our needs may differ in unusual ways from the needs of commercial web >>>>> development. >>>>> > >>> >>>>> > >>> -Gus >>>>> > >>> >>>>> > >>> On Thu, Apr 9, 2020 at 8:14 AM Erick Erickson < >>>>> erickerick...@gmail.com> wrote: >>>>> > >>> Marcus: >>>>> > >>> >>>>> > >>> re-reading the thread, it looks to me like the consensus from >>>>> Noble and Ishan and Jan is that as long as the new, nifty UI is a separate >>>>> package, go ahead and knock yourself out ;). The objection is to making it >>>>> part of the Solr code base⌠Weâll all be thrilled with if we can rip the >>>>> current admin UI out ;) >>>>> > >>> >>>>> > >>> That said, I suspect itâll be one of the tighter packages. Itâd >>>>> be super-cool if we could run the UI tests on Jenkins say once a day just >>>>> to keep it up to date. >>>>> > >>> >>>>> > >>> The admin UI has always been somewhat awkwardly bolted on the >>>>> side of Solr, itâd be great to have it have a more elegant architecture. >>>>> > >>> >>>>> > >>> The other exciting thing would be that clients could then use >>>>> the package code as something they can incorporate/fork/whatever. >>>>> Practically every client Iâve worked with at large installations has >>>>> rolled >>>>> their own dashboard. If they could use a package as a starting point, itâd >>>>> be welcome. >>>>> > >>> >>>>> > >>> Best, >>>>> > >>> Erick >>>>> > >>> >>>>> > >>>> On Apr 9, 2020, at 3:07 AM, Marcus Eagan <marcusea...@gmail.com> >>>>> wrote: >>>>> > >>>> >>>>> > >>>> Hey Noble, >>>>> > >>>> >>>>> > >>>> -1 is a definitive, so I want to clarify that you are saying >>>>> you do not wish to remove the EOL front end and replace it with another >>>>> one >>>>> in the longer term? >>>>> > >>>> >>>>> > >>>> I hear you! As a product manager in my day job, my primary goal >>>>> is to find features to cut! I spend a lot of time thinking about >>>>> non-essential vs used heavily vs causes more problems than it's worth. I >>>>> can tell you from watching the many people in the field at Lucidworks, >>>>> there are a lot of people who know quite a bit about Solr, but rely on the >>>>> Admin UI heavily because they feel comfortable there. Those people in >>>>> effect help us stay employed despite never contributing or being capable >>>>> of >>>>> contributing to Solr. So hear me out. I've got a proposal: >>>>> > >>>> >>>>> > >>>> To start, I can work on this app as an optional package for >>>>> your awesome new package manager. It will be the second one I've worked on >>>>> in my evenings and weekends btw. The first was a package validator that I >>>>> hope to eventually open source, but its complexity and lack of popularity >>>>> because it is security ;( will likely make it the second one I open >>>>> source/finish. I'm also collaborating with a couple members of the >>>>> Lucidworks security team on that one, but I have built the basics already >>>>> for them to build upon. >>>>> > >>>> >>>>> > >>>> Back to the new UI discussion and my update that I promised. >>>>> > >>>> >>>>> > >>>> My update was going to be that after evaluating the projects >>>>> Jan posted, the most recent project that Jan listed created a pretty good >>>>> base to build on. After lots of auditing of the packages and a bit of >>>>> refactoring because the UI world moves fast, I was able to get it to >>>>> transpile and run again (as I'm sure it previously did) and from (2290 >>>>> vulns): >>>>> > >>>> <image.png> >>>>> > >>>> no npm fix doesn't magically fix, I wish it did >>>>> > >>>> >>>>> > >>>> to (2 low sev, non-productions vulns): >>>>> > >>>> <image.png> >>>>> > >>>> >>>>> > >>>> These two issues will not affect production and really only the >>>>> unit tests. Besides, I plan to remove them before we get to a stage even >>>>> that matters. I've also started investigating the level of effort for me >>>>> to >>>>> get it to feature parity with the current app. The preliminary answer is >>>>> not very much compared to other work I've done in shorter time â working >>>>> with a jerk for a boss (years ago, don't worry Hatcher). I'm building a >>>>> couple of the missing features as we speak. From the beginning, it will >>>>> have infinitely more test coverage and will be a lot more approachable to >>>>> contemporary UI developers. It will also make the Solr experience for new >>>>> developers simpler. The major design changes that I have been thinking >>>>> about would be to the cloud view and the query view. Both of those are >>>>> important, the first to more experienced users, and the second to less >>>>> advanced users though occasionally an advanced debugger or demo presenter >>>>> in my experience. >>>>> > >>>> >>>>> > >>>> In the end Noble, this is about making Solr more approachable >>>>> to new users not experts like you. The growth of Solr adoption only >>>>> benefits you, so I would ask you to revisit your -1 at some point in the >>>>> near future when you see the progress and breadth of improvement. We have >>>>> had customers complain about the Admin UI and the community has even >>>>> complained about it. I think this is the right thing to do. If you still >>>>> consider effectively upgrading the current Admin UI as feature creep, I >>>>> can >>>>> revisit the package manager compromise or move the efforts elsewhere. I >>>>> respect your position. A search service is nothing without a strong and >>>>> diverse set of skills and capabilities behind it and making it accessible >>>>> to everyone who needs it. >>>>> > >>>> >>>>> > >>>> For those who care, here's my 4 Node cluster of tech products >>>>> running locally. >>>>> > >>>> >>>>> > >>>> <image.png> >>>>> > >>>> >>>>> > >>>> The shoulders of the homie that put that scaffold together are >>>>> broad! Props to him. I will volunteer to put together extensive docs for >>>>> JS >>>>> devs who want to contribute and make it better once we get it to a place >>>>> where it replaces and improves upon the current option. I'll even sponsor >>>>> some prizes for college kids or people recently out of work to get >>>>> cranking >>>>> on this bad boy. >>>>> > >>>> >>>>> > >>>> Thank you Noble and everyone else, >>>>> > >>>> >>>>> > >>>> Marcus >>>>> > >>>> >>>>> > >>>> On Wed, Apr 8, 2020 at 11:20 PM Noble Paul < >>>>> noble.p...@gmail.com> wrote: >>>>> > >>>> Solr developers are not UI experts. We are a search service and >>>>> such a service should have nice clean APIs + documentation. Is a UI useful >>>>> ? yes. The last thing we want today is another complex component in Solr >>>>> codebase that nobody understands or cannot maintain. >>>>> > >>>> >>>>> > >>>> So, Solr UI can be hosted outside our codebase and we can have >>>>> an option to install UI from that remote repo >>>>> > >>>> >>>>> > >>>> something like "bin/solr install-gui" >>>>> > >>>> >>>>> > >>>> I'm -1 on anymore feature creep. >>>>> > >>>> >>>>> > >>>> --Noble >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> On Thu, Apr 9, 2020 at 12:22 PM Marcus Eagan < >>>>> marcusea...@gmail.com> wrote: >>>>> > >>>> Thanks again Gus. >>>>> > >>>> >>>>> > >>>> Lots of people indeed misuse REST so we could go on and on >>>>> about whether requests are stateless or not in another thread. Let's spare >>>>> the group. >>>>> > >>>> >>>>> > >>>> I think most everyone on this channel would be in agreement >>>>> with you on separate app. I'll be opening a new ticket and a PR that will >>>>> document a few things to make it easy for UI devs who know little to no >>>>> Java how to get started. >>>>> > >>>> >>>>> > >>>> Ishan, there's some significant UI expertise in the team. >>>>> Erickson finds his way to open every cookie jar. Erik Hatcher wrote the >>>>> first version of Blacklight. I've seen Pugh do lots of work on Quepid's >>>>> UI. >>>>> Jan and Kevin have done a lot of work, and so have many others. The list >>>>> goes on, and *likes to work on UI* is a different discussion. >>>>> > >>>> >>>>> > >>>> Beyond committers because I'm not a committer, I have UI >>>>> expertise that I can polish off and improve for the sake of my interest >>>>> and >>>>> commitment to the community and I like to do it. I've also led UI teams. I >>>>> can help to steward the effort overall and keep things up to date up to >>>>> the >>>>> point where I need to ask one of the committers to help me get changes >>>>> merged. I'll probably even hire a developer to work on it once we are to >>>>> that point. ;-) >>>>> > >>>> >>>>> > >>>> Expertise is not something that should block us but motivate us >>>>> to expand this community and/or our own skillsets long term. >>>>> > >>>> >>>>> > >>>> Thank you both and everyone else, >>>>> > >>>> >>>>> > >>>> Marcus >>>>> > >>>> >>>>> > >>>> On Wed, Apr 8, 2020, 10:21 AM Gus Heck <gus.h...@gmail.com> >>>>> wrote: >>>>> > >>>> While running it in an external node does ensure separability, >>>>> I don't think it does a good job of addressing my other point of not >>>>> needing to manage a 3rd server. It's still a server if it's started by >>>>> java, and one still has to ensure it exists, and it will be extra hard to >>>>> figure out how to configure it if started by Solr. >>>>> > >>>> >>>>> > >>>> I'm strongly in favor of us having a UI from my perspective as >>>>> a consultant it makes discovery of things like their startup parameters >>>>> and >>>>> directories and such very easy (just go to front page of the admin >>>>> screen), >>>>> and it's so much easier to get a customer with security concerns and >>>>> strict >>>>> controls on who can access what (think banks, military, etc) to share a >>>>> web >>>>> session where they drive the UI than to get direct access to machines. >>>>> It'll be a lot slower and much lower service to be making people wait >>>>> while >>>>> I craft curl statements to paste into the web session (and then fix the >>>>> inevitable typos, or detect when they missed the last char of what I >>>>> pasted, etc...). >>>>> > >>>> >>>>> > >>>> I definitely against Solr spawning some other server (node or >>>>> otherwise) on it's own and thereby requiring additional system >>>>> dependencies, or creating a second process that needs to be configured and >>>>> properly secured. To me that's even worse than requiring the UI to run >>>>> outside of Solr. We have a perfectly good web container already, and >>>>> furthermore there's a much greater likelihood that maintainers will be >>>>> facile with java/j2ee than anything else (IMHO). It's great if the >>>>> framework we choose uses little or no JSP/Servlet and is modernized with a >>>>> 100% javascript, templated etc. front end, but the back end should be >>>>> java/jetty because we've got lots of java folks. >>>>> > >>>> >>>>> > >>>> If the back end matters deeply then you're not really >>>>> programming to MVC/REST style... >>>>> > >>>> >>>>> > >>>> So there's another $0.02 :) and if you're not careful I'll give >>>>> you an entire nickle's worth of ways people misuse/misunderstand the term >>>>> REST :) >>>>> > >>>> >>>>> > >>>> -Gus >>>>> > >>>> >>>>> > >>>> On Tue, Apr 7, 2020 at 9:06 PM Marcus Eagan < >>>>> marcusea...@gmail.com> wrote: >>>>> > >>>> Gus, >>>>> > >>>> >>>>> > >>>> Your $.02 are worth a lot more than $.02 USD, so thank you. >>>>> > >>>> >>>>> > >>>> By separate app, I think I mean to endorse managed by a Node.js >>>>> process started by NPM. I donât think that conflicts with what you have >>>>> proposed. The NPM command should be issued by Java || or Bash but I donât >>>>> think it would add significant overhead. Also, seems like on CI and or >>>>> precommit hooks front end could be sizzled in parallel without adding much >>>>> overhead. >>>>> > >>>> >>>>> > >>>> As for the front end framework, the most important things to >>>>> consider in my view are simplicity and maintainability. We need to do a >>>>> thorough analysis on the ecosystem and issues like the size of a React >>>>> project vs Angular project vs Vue project, but React and Vue certainly >>>>> have >>>>> the velocity and the hearts if the front end community more than Angular. >>>>> React is MIT license now and for the foreseeable >>>>> > >>>> future thanks to the power and reach of its developers. >>>>> > >>>> >>>>> > >>>> <gus.h...@gmail.com> wrote: >>>>> > >>>> +1 for Angular CLI / Typescript since I've fiddled with this in >>>>> a minor way recently, Also MIT license is super friendly. >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> As a disenfranchised volunteer to the project, I also assume >>>>> voters on specific choices like frameworks will be helping build in some >>>>> respect at some point now or in the future. Is that a fair or misguided >>>>> assumption? >>>>> > >>>> >>>>> > >>>> Marcus >>>>> > >>>> >>>>> > >>>> On Tue, Apr 7, 2020 at 17:15 Gus Heck <gus.h...@gmail.com> >>>>> wrote: >>>>> > >>>> +1 for Angular CLI / Typescript since I've fiddled with this in >>>>> a minor way recently, Also MIT license is super friendly. >>>>> > >>>> >>>>> > >>>> Separate App - hmm... that's got some attraction, but also >>>>> gives my stomach some churning when I think about solr now requiring >>>>> management of 3 different servers (solr, something to serve UI and >>>>> zookeeper). Adding more infrastructure gives me pause with respect to all >>>>> the smaller installations. I've had several small self funded startup >>>>> clients and a few clients with existing initial installs that they are >>>>> outgrowing in places where procuring new machines and new software is a >>>>> 6-12 mo endeavor and both types seem to squirm when I make suggestions >>>>> such >>>>> as running zookeeper separately, (let alone 3 of them). I think separate >>>>> looks good for medium to large folks or very large companies that >>>>> **already >>>>> have** a solr expert on hand, but hurts the small clients and the >>>>> departments in large orgs that got started with insufficient >>>>> advice/expertise, so maybe >>>>> > >>>> >>>>> > >>>> - The UI should be installed by default >>>>> > >>>> - it should be easy to remove it, or start with it disabled >>>>> > >>>> - it should be self contained and separately downloadable. >>>>> > >>>> >>>>> > >>>> My recent fiddling included figuring out how to make angular >>>>> CLI play nice in a J2ee war file structure seen here: >>>>> https://github.com/nsoft/ns-login >>>>> > >>>> >>>>> > >>>> By play nice I mean, >>>>> > >>>> - build creates a war file that "just works" when installed >>>>> > >>>> - Angluar CLI commands work >>>>> > >>>> - Angular serve command works (for auto-reloading ui changes, >>>>> running on port 4200; note the use of proxy to allow it to talk to an >>>>> already running web container) >>>>> > >>>> >>>>> > >>>> My $0.02, >>>>> > >>>> >>>>> > >>>> -Gus >>>>> > >>>> >>>>> > >>>> On Mon, Apr 6, 2020 at 11:03 AM JĂśrn Franke < >>>>> jornfra...@gmail.com> wrote: >>>>> > >>>> I think standalone would be very useful. >>>>> > >>>> I propose Angular with Typescript - it fits to a more data >>>>> centric approach with data types etc. >>>>> > >>>> Maybe even two types of UIs - Admin UI and a simple Search UI. >>>>> > >>>> >>>>> > >>>> >>>>> > >>>>> Am 06.04.2020 um 16:53 schrieb Jan Høydahl < >>>>> jan....@cominvent.com>: >>>>> > >>>>> >>>>> > >>>>> ďťżThanks for kickstarting this and bringing some fresh blood >>>>> and enthusiasm :) >>>>> > >>>>> >>>>> > >>>>> Looks like others have had similar wish for a standalone Solr >>>>> Admin App, hereâs a quick GitHub search for inspiration: >>>>> > >>>>> >>>>> > >>>>> https://github.com/savantly-net/solr-admin (Angular, nice >>>>> screenshots, 1y old) >>>>> > >>>>> https://github.com/kezhenxu94/yasa (vuejs, impressive >>>>> screenshots, 2y old) >>>>> > >>>>> https://github.com/thereactleague/galaxy (React, no >>>>> screenshots, 4y old) >>>>> > >>>>> >>>>> > >>>>> They all seem abandoned but perhaps a new official effort >>>>> could bring their developers in as contributors again? >>>>> > >>>>> >>>>> > >>>>>> the people who work on the Admin UI do not need to be >>>>> expected to know the Java workflow, necessarily. This reality widens the >>>>> net for who can contribute. >>>>> > >>>>> >>>>> > >>>>> Agree. Frontend devs have been a shortage in this project, and >>>>> if we can make it easier to attract UI committers who feel at home and >>>>> productive with the UI code, that would be a win. On the other hand, if we >>>>> expect that the UI will be maintained by regular Java committers, then >>>>> anything that makes it easier for them/us to contribute is also a win, >>>>> like >>>>> perhaps strongly-typed. >>>>> > >>>>> >>>>> > >>>>> Again, thanks Marcus for reviving this topic. Let us all try >>>>> not to be overly ambitious here or shoot the initiative down with >>>>> bikeshedding. It is far more important to fuel the energy and momentum and >>>>> get something built than to remain stuck :) >>>>> > >>>>> >>>>> > >>>>> Jan >>>>> > >>>>> >>>>> > >>>>> >>>>> > >>>>>> 6. apr. 2020 kl. 13:47 skrev Marcus Eagan <m...@marcuseagan.com >>>>> >: >>>>> > >>>>>> >>>>> > >>>>>> Coming back to these existential questions from my phone: >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> Jan Høydahl >>>>> > >>>>>> Added 1 hour ago >>>>> > >>>>>> There are many opinions around admin UI. So I think the best >>>>> place to start would be a new mail-thread in dev@ to discuss the way >>>>> forward. Before we start a major re-work, we should probably ask ourselves >>>>> a few existential questions: >>>>> > >>>>>> ⢠Should we turn Amin UI into a standalone app instead of >>>>> embedded in Solr? >>>>> > >>>>>> >>>>> > >>>>>> I think it should be a standalone app. There are many >>>>> advantages gained from a separation of such concerns. Some of the ones >>>>> include, the people who work on the Admin UI do not need to be expected to >>>>> know the Java workflow, necessarily. This reality widens the net for who >>>>> can contribute. >>>>> > >>>>>> >>>>> > >>>>>> Testing becomes a lot easier because JS developers are >>>>> accustomed to building tests for static assets and self-contained node >>>>> apps. They generally know less about testing a bit of JS within a massive >>>>> Java project. The test could also run independently for changes that only >>>>> affect the front end. Adding test coverage without adding time to tests >>>>> sounds awesome. >>>>> > >>>>>> >>>>> > >>>>>> There are quite a few tickets over the years that have seemed >>>>> to suggest that people want more fine-grained control over the Solr admin >>>>> UI overall. Two recent tickets discussed topics like running a Solr Admin >>>>> app on only one node and disabling it al together for whatever reason. >>>>> See: >>>>> https://issues.apache.org/jira/browse/SOLR-14014. >>>>> > >>>>>> >>>>> > >>>>>> ⢠What UI framework? Guess anything is better than current >>>>> EOL, but will largely depend on who is willing to do the job! >>>>> > >>>>>> Iâm happy to take this on (and willing to follow through on >>>>> completing in my nights and weekends), but I am mostly framework agnostic. >>>>> My stronge preference would be React, provided the license is kosher. >>>>> There >>>>> was one blip of âpractically unusable for most orgsâ a couple years back, >>>>> but Facebook made it right really soon after. However, Iâm flexible. >>>>> Angular (not JS) and Vue are also great. I would recommend we consider >>>>> Typescript also because of the size of project and number of >>>>> strongly-typed >>>>> devs on this mailing list. My only reservation with TypeScript, though it >>>>> may not apply in this case, is that the supersets of JS have changed a lot >>>>> more than the frameworks. While CoffeeScript was an unnecessary layer of >>>>> abstraction from my limited perspective, TypeScript might make JS more >>>>> embraceable to a list of Java hackers. >>>>> > >>>>>> >>>>> > >>>>>> ⢠Current UI has no test coverage, can we do better with the >>>>> new UI? >>>>> > >>>>>> >>>>> > >>>>>> Itâs imperative.React, Angular, and Vue each make it easy to >>>>> include tests. >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> https://issues.apache.org/jira/browse/SOLR-12276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17076204#comment-17076204 >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>>> >>>>> > >>>>> >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> -- >>>>> > >>>> http://www.needhamsoftware.com (work) >>>>> > >>>> http://www.the111shift.com (play) >>>>> > >>>> -- >>>>> > >>>> Marcus Eagan >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> -- >>>>> > >>>> http://www.needhamsoftware.com (work) >>>>> > >>>> http://www.the111shift.com (play) >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> -- >>>>> > >>>> ----------------------------------------------------- >>>>> > >>>> Noble Paul >>>>> > >>>> >>>>> > >>>> >>>>> > >>>> -- >>>>> > >>>> Marcus Eagan >>>>> > >>>> >>>>> > >>> >>>>> > >>> >>>>> > >>> >>>>> --------------------------------------------------------------------- >>>>> > >>> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org >>>>> > >>> For additional commands, e-mail: dev-h...@lucene.apache.org >>>>> > >>> >>>>> > >>> >>>>> > >>> >>>>> > >>> -- >>>>> > >>> http://www.needhamsoftware.com (work) >>>>> > >>> http://www.the111shift.com (play) >>>>> > >> >>>>> > >> >>>>> > >> >>>>> --------------------------------------------------------------------- >>>>> > >> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org >>>>> > >> For additional commands, e-mail: dev-h...@lucene.apache.org >>>>> > >> >>>>> > >>>>> > --------------------------------------------------------------------- >>>>> > To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org >>>>> > For additional commands, e-mail: dev-h...@lucene.apache.org >>>>> > >>>>> >>>>> >>>>> -- >>>>> ----------------------------------------------------- >>>>> Noble Paul >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org >>>>> For additional commands, e-mail: dev-h...@lucene.apache.org >>>>> >>>>> -- >>>> Marcus Eagan >>>> >>>> -- >> Marcus Eagan >> >> -- Marcus Eagan