Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework the integrated reference in Processing #980

Open
Stefterv opened this issue Mar 17, 2025 · 12 comments · May be fixed by #1026
Open

Rework the integrated reference in Processing #980

Stefterv opened this issue Mar 17, 2025 · 12 comments · May be fixed by #1026
Assignees
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@Stefterv
Copy link
Collaborator

Stefterv commented Mar 17, 2025

Most relevant area for this enhancement?

PDE

Feature to enhance

Reference

Desired enhancement

In PR #968, I implemented functionality to include the current state of the reference documentation as a zip file with each release. You can see an example of this in the processing-4.4.0-reference.zip file at https://github.com/processing/processing4/releases/tag/processing-1300-4.4.0.

We now need to refactor the existing reference handling code so that it downloads this new packaged version instead of the outdated version it currently uses. Additionally, we should replace the custom WebServer class with an established external package that provides the same functionality.

Additionally, a jetpack compose based progress interface would be appreciated, but not required for the PR

Potential benefits

If there are any API changes within version of Processing, now users can rely that their internal reference is relevant to the version they are using.

Possible drawbacks

No response

Additional context

@SableRaf please add any missing functionality or revise for clarity

Would you like to work on the issue?

Someone else can pick this up

@Stefterv Stefterv added enhancement New feature or request help wanted Extra attention is needed labels Mar 17, 2025
@D-I-R-M
Copy link

D-I-R-M commented Mar 23, 2025

@Stefterv
Can you assign me this issue?

@SableRaf
Copy link
Collaborator

Hi @D-I-R-M, I just assigned you. Thanks for picking this up! Let us know how you're thinking of approaching this issue and if you need any guidance.

@D-I-R-M
Copy link

D-I-R-M commented Mar 24, 2025

@SableRaf Thank You.
Sure I will discuss it with you as soon as i get an idea .

@D-I-R-M
Copy link

D-I-R-M commented Mar 24, 2025

How should i approach this problem? Any insights or suggestions on where to start would be really helpful!

@Stefterv
Copy link
Collaborator Author

Hi @D-I-R-M!

First of all we would like to replace the WebServer with something that comes out of the box (with the JDK ideally)
The process that kicks off launching the reference can be found here
That's also where you find the functionality to download the reference, which should get an updated source. (For debug builds, which won't have a version specified, it should probably refer to the latest release)

The reference is attached to each release of Processing (example) as processing-*.*.*-reference.zip

@D-I-R-M
Copy link

D-I-R-M commented Mar 25, 2025

I think this is a bit challenging for a beginner like me .It will take me 5-6 days to learn and implement it.
If there is no problem with the above situation , I will continue working on it.
Right now i am working on it , will proceed or stop as per your decision 🫡

@SableRaf
Copy link
Collaborator

Hi @D-I-R-M and thanks for sharing your concerns. There is no milestone attached to this issue so you can take all the time you need to figure it out. We're here to help if you need more guidance. It's also totally fine if you prefer to switch to a smaller issue. Just let us know 💙

@Vaivaswat2244
Copy link

Hello everyone,
After reviewing the code and the above very helpful discussion, I think the following tasks are to be implemented:

  • Updating the reference download functionality to use the version-specific reference zip files now included with each release (e.g., processing-4.4.0-reference.zip)
  • Replacing the custom WebServer implementation with com.sun.net.httpserver.HttpServer from the JDK (need your thoughts on this, weather this is okay or should I look for some other packages)
  • Configure debug builds to pull the latest available reference documentation

For the download system, I'll ensure it properly handles version matching and maintains backward compatibility. I'll also implement appropriate error handling for network issues or missing reference packages.
So,
If @D-I-R-M is not working on it, I can start work on this immediately. If there are specific architectural considerations or preferences you'd like me to follow, please let me know.

@SableRaf
Copy link
Collaborator

SableRaf commented Mar 31, 2025

Thanks @Vaivaswat2244 for your request and for your detailed proposal! Let's see if this issue is available.

@D-I-R-M: are you still interested and working on this issue? If so, take your time and maybe you and @Vaivaswat2244 can collaborate. If not, that's okay too. Just let us know so we can re-assign the issue.

@D-I-R-M
Copy link

D-I-R-M commented Apr 1, 2025

Yes I am still interested , was busy with college assignments.
Sure, we can work on this together. @Vaivaswat2244 is that okay with you? I just sent you a LinkedIn request. We can discuss the implementation there.

@Vaivaswat2244
Copy link

Sure @D-I-R-M , would love to collaborate on this. Although instead of discussing it on LinkedIn, I think we should discuss it here so if we go on the wrong path, we can be corrected by others.
On that note,
I mentioned above that we can use com.sun.net.httpserver.HttpServer

What are your thoughts on this... Also I would like to ask @SableRaf and @Stefterv

@Stefterv
Copy link
Collaborator Author

Stefterv commented Apr 1, 2025

com.sun.net.httpserver.HttpServer Is also what I found in my initial research, looks like a good candidate

Discussing it here is indeed preferred by us so we can keep an eye on things. Or feel free to use the discord if you would like a bit more direct communication

@SableRaf SableRaf linked a pull request Apr 4, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants