GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Sphinx Website by manticore-projects · Pull Request #1624 · JSQLParser/JSqlParser

Conversation

@manticore-projects

@manticore-projects manticore-projects commented Sep 2, 2022

Copy link
Copy Markdown
Contributor

Summary

Add a HTML5 Website based on Sphinx:

a) scales on devices (from mobile phone to very large screens)
b) theme-able (shown is a modified theme based on Read The Docs, being cleaner and scaling on large screens much better, landing page added)
c) CSS customizable (you can change the Accent Colours)
d) integrated search function
e) please adjust/change the icons according to your needs

Integrate the Sphinx Website into the Gradle Build:

d) derive the actual Version Number (Release and Snapshot) from the GIT Tags
e) generate a clean Changelog from GIT (template can be customized)
f) update all Version references (Maven Artifact, Downloads etc) automatically

Add some content:
g) explain the Contribution process
h) link to JSQLFormatter online for Statement Testing and Visualisation
i) add the Railroad Diagrams explaining the syntax (but without Reserved Keywords yet)

Added Object Tree Visualization tools, which will generate a TreeNode based tree structure explaining the parsed java Object Tree.

select 1 from dual where a=b;
SQL Text
  └─Statements: net.sf.jsqlparser.statement.select.Select
     └─selectBody: net.sf.jsqlparser.statement.select.PlainSelect
        ├─selectItems -> Collection<SelectExpressionItem>
        │  └─selectItems: net.sf.jsqlparser.statement.select.SelectExpressionItem
        │     └─LongValue: 1
        ├─Table: dual
        └─where: net.sf.jsqlparser.expression.operators.relational.EqualsTo
           ├─Column: a
           └─Column: b

Build Instructions

  1. you will need Python Sphinx and GIT installed
  2. build the website via gradle sphinx
  3. optionally, place the Sphinx HTML theme into the _themes folder and/or provide a custom.css file

Preview

Live preview: http://manticore-projects.com/JSQLParser/index.html

Static preview image:
image

Static preview package:
sphinx.zip

Attention

It has been built upon the Keywords PR, mainly because of the build infrastructure and the keywords documentation.
So the Keywords PR is included and need to be accepted first (or dropped altogether in favor of this Sphinx PR).

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
manticore-projects added 30 commits October 18, 2021 21:41
@manticore-projects
Enhanced Keywords
834dab1
Add Keywords and document, which keywords are allowed for what purpose
@manticore-projects
Fix incorrect tests
7a885a1
@manticore-projects
Merge remote-tracking branch 'origin/master' into Keywords
1b69d25
@manticore-projects
Define Reserved Keywords explicitly
5d20d06
Derive All Keywords from Grammar directly
Generate production for Object Names (semi-) automatically
Add parametrized Keyword Tests
@manticore-projects
Fix test resources
df9c56e
@manticore-projects
Adjust Gradle to JUnit 5
de805ab
Parallel Test execution
Gradle Caching
Explicitly request for latest JavaCC 7.0.10
@manticore-projects
Do not mark SpeedTest for concurrent execution
d5a6dca
@manticore-projects
Remove unused imports
a9d0503
@manticore-projects
Adjust Gradle to JUnit 5
6dfa05f
Parallel Test execution
Gradle Caching
Explicitly request for latest JavaCC 7.0.10
@manticore-projects
Do not mark SpeedTest for concurrent execution
8f0bfe6
@manticore-projects
Remove unused imports
5cd0974
@manticore-projects
Merge remote-tracking branch 'origin/master'
5f11d3f
@manticore-projects
Merge remote-tracking branch 'origin/Keywords' into Keywords
2af3cd5
@manticore-projects
Merge remote-tracking branch 'origin/master' into Keywords
4bef952
# Conflicts:
#	src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt
@manticore-projects
Keyword test adopt JUnit5
1fd56ac
Update keywords
@manticore-projects
Merge Master
873dfd4
@manticore-projects
CheckStyle sanitation of method names
1a9db26
@manticore-projects
Merge https://github.com/JSQLParser/JSqlParser
3ab04b0
@manticore-projects
Merge branch 'JSQLParser:master' into master
de94651
@manticore-projects
Merge branch 'master' of github.com:JSQLParser/JSqlParser
84709a9
@manticore-projects
Merge github.com:JSQLParser/JSqlParser into Keywords
dc3ef91
@manticore-projects
Merge Master
0e0662d
@manticore-projects
Merge branch 'master' of github.com:JSQLParser/JSqlParser
3c8da30
@manticore-projects
Merge branch 'master' into Keywords
cae7a1f
# Conflicts:
#	build.gradle
@manticore-projects
Add Jupiter Parameters dependency again
886fe59
@manticore-projects
Automate the updateKeywords Step
353edb4
@manticore-projects
Update PMD and rules
0ad0b79
@manticore-projects
Rewrite test expected to fail
ae46480
@manticore-projects
Appease Codacy
74c1f71
@manticore-projects
Remove broken rule warning about perfectly fine switch-case statements
ba9992e
@manticore-projects
Merge remote-tracking branch 'manticore/sphinx' into sphinx
2f12d0a
@manticore-projects manticore-projects mentioned this pull request Dec 11, 2022
enhanced keyword - corrections #1669
Closed
@manticore-projects

manticore-projects commented Dec 11, 2022

Copy link
Copy Markdown
Contributor Author

I have added a Github Action, that builds the Website on Commit to Master and deploys the static Site to GH Pages.

Demo: https://manticore-projects.github.io/JSqlParser/

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

manticore-projects added 2 commits December 12, 2022 17:52
@manticore-projects
fix: fix a merge error, brackets
b28773b
@manticore-projects
fix: remove JavaCC dependency
15c543e
Parse Tokens via Regex
Move JavaCC Token Parser into the KeywordsTest
Make JavaCC a Test Dependency only
wumpz
wumpz reviewed Dec 22, 2022
View reviewed changes
Comment thread .github/workflows/sphinx.yml
@@ -0,0 +1,29 @@
name: Sphinx Pages

@wumpz wumpz Dec 22, 2022

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool. And using this the sphinx sources somewhere within the master branch are generated and published to Github pages?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions

@manticore-projects manticore-projects Dec 22, 2022

Copy link
Copy Markdown
Contributor Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
wumpz
wumpz reviewed Dec 22, 2022
View reviewed changes
Comment thread src/main/java/net/sf/jsqlparser/expression/JsonFunctionExpression.java

package net.sf.jsqlparser.expression;

import java.io.Serializable;

@wumpz wumpz Dec 22, 2022

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why all these implements Serializable stuff?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@manticore-projects

manticore-projects commented Dec 22, 2022 via email

Copy link
Copy Markdown
Contributor Author
On Thu, 2022-12-22 at 14:46 -0800, Tobias wrote: Why all these implements Serializable stuff?
The tree viewer, i need to serialize the objects first into xml before applying xpath and deserialize.
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@manticore-projects
choir: Merge Master and resolve conflict
4541d5c
@manticore-projects

manticore-projects commented Dec 23, 2022

Copy link
Copy Markdown
Contributor Author

Please also disable CSS in Codacy. Thanks.

Kind reminder, since I am not allowed to do that by myself unfortunately.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@wumpz

wumpz commented Dec 27, 2022

Copy link
Copy Markdown
Member

Disabled CSSLint, StyleLint in Codacy.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@manticore-projects

manticore-projects commented Dec 27, 2022

Copy link
Copy Markdown
Contributor Author

Disabled CSSLint, StyleLint in Codacy.

Thanks. Will you accept the PR or do you expect me to push/update and rerun the Codacy CI-Tests before?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@wumpz

wumpz commented Dec 27, 2022 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

The tree viewer, i need to serialize the objects first into xml before
applying xpath and deserialize.

Where is this xpath parser implemented? I did not find it at first glance. You know this serialization stuff is somehow deprecated: https://www.securityinfowatch.com/cybersecurity/information-security/article/12420169/oracle-plans-to-end-java-serialization-but-thats-not-the-end-of-the-story. I would like to find another way.

To make things easier I could make node generation for every production a default. Since performance is not that important anymore. I measured a decrease of 20% for queries.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@manticore-projects

manticore-projects commented Dec 27, 2022

Copy link
Copy Markdown
Contributor Author

Where is this xpath parser implemented?

Separately, in JSQLFormatter only.

I did not find it at first glance. You know this serialization stuff is somehow deprecated: https://www.securityinfowatch.com/cybersecurity/information-security/article/12420169/oracle-plans-to-end-java-serialization-but-thats-not-the-end-of-the-story. I would like to find another way.

There are other ways like Jackson, however that would introduce Third Party dependencies because they all rely on a kind of annotation and implementation of Serializers and De-Serializers.

In your own link its written, that "Oracle plans ..." since 2018 and nothing has happened since. Even if anything happens, it would depend on Java 19 plus while we still (want to) maintain Java 8 compliance for a good reason.

Companies still run JRE/JDK 8 and won't upgrade.

Last but not least, I think some Serializable Objects were there already, I just added a few more but did not introduce anything unheard of before.

image

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@wumpz

wumpz commented Dec 27, 2022

Copy link
Copy Markdown
Member

Fair point.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@wumpz

wumpz commented Dec 27, 2022

Copy link
Copy Markdown
Member

Could you check this Codacy checks again (making a commit). Codacy somehow does not to allow me to reevaluate specific commits again.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

manticore-projects added 4 commits December 27, 2022 18:00
@manticore-projects
Merge github.com:JSQLParser/JSqlParser into sphinx
71d44e2
@manticore-projects
doc: Fix Maven Artifact Version
570795a
@manticore-projects
style: Avoid throwing raw exception types.
52bc210
@manticore-projects
style: Avoid throwing raw exception types.
f3246f0
@manticore-projects

manticore-projects commented Dec 27, 2022

Copy link
Copy Markdown
Contributor Author

Pew, finally!

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

manticore-projects added 3 commits January 7, 2023 18:28
@manticore-projects
doc: Better integration of the RR diagrams
c686bbc
- apply neutral Sphinx theme
- insert the RR diagrams into the sphinx sources
- better documentation on Gradle dependencies
- link GitHub repository
@manticore-projects
Merge remote-tracking branch 'origin/master' into sphinx
fdc0002
@manticore-projects
build: gradle, execute all Checks after Test
85b75ed
@manticore-projects

manticore-projects commented Jan 7, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor Author

Integrate the RR diagram into the website.
Applied a neutral Sphinx theme.

Preview: https://manticore-projects.github.io/JSqlParser/syntax.html

Besser als das wird es nicht!
Btw, die Aenderung der Versions Nummer in der Readme koennten wir uns sparen mit der WebSite, welche die Versionierung automatisch verfolgt.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@wumpz

wumpz commented Jan 12, 2023

Copy link
Copy Markdown
Member

So this is ready to be merged?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@manticore-projects

manticore-projects commented Jan 12, 2023

Copy link
Copy Markdown
Contributor Author

So this is ready to be merged?

yes, Sir.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@wumpz
Merge branch 'master' into sphinx
bd845d2
@wumpz
wumpz merged commit be8e7a8 into JSQLParser:master Jan 20, 2023
@manticore-projects
manticore-projects deleted the sphinx branch March 7, 2023 00:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@wumpz wumpz wumpz left review comments

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@manticore-projects @wumpz @d2a-raudenaerde
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.