-
Notifications
You must be signed in to change notification settings - Fork 211
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
WeBWorK 2.19 support (Tacoma 2024 project) #2336
base: master
Are you sure you want to change the base?
Conversation
Thanks for putting this together for us. |
I've checked all of this against existing behavior, and will have some comments in a minute. But, I don't see any reason to not start testing behavior on Runestone now, step (3) of above with @bnmnetp. |
Thanks, @Alex-Jordan for putting all of this together. Some comments:
Not much, given the quantity of code. Good job. I'm going to familiarize myself with the new features now, so may have more to say. But wanted to get this going in the right direction as quickly as possible. |
OK, I see |
And with AIM's 2.19 server, the |
|
Ideally, an Ubuntu package would provide what I need? |
Yes, the |
Thanks, @drgrice1! I needed the following Ubuntu packages to get through the sample chapter.
|
Built representations throug to the end. Some non-fatal errors. About 6 instances, problem numbers 62-68 (or so), and maybe the very last one. Can't tell what I might be missing.
|
Thanks Rob! Some quick responses and I may do more this evening.
What's going on here is the PTX HTML page has a div with id
OK, I will follow up with this.
I neglected to test with the makefile but I'll do that to make sure things are still working. I was testing by running
Are you viewing with
Sounds like an oversight. Will follow up.
I'll add to the documentation as best I can about what packages are needed. Or maybe a generic "you may need to install some perl packages". With Ubuntu packages, using
This indicates a host course doesn't have the access it needs to the |
I think that this was when @rbeezer was testing the local approach based on the output line "sending webwork-62 to socket". The local approach adds the macros directory in the generated directory to the macro path. So the macro should be available. Although, I also don't see that path in the output that @rbeezer showed. |
Looking over the diff, I think this is from |
OK, this one is addressed. I added a commit (rather than force push) but it can be squashed later as it indicates. |
Copy-paste oversight. The second one should have had its title changed to be about using a renderer. |
@drgrice1 Do you have a recommendation about what I should put in the documentation about which perl version (or later) is required for local PG processing? |
I am not exactly sure how old of a Perl version will work for local PG processing. I know that Perl 5.16 or newer is certainly needed. I suspect that versions that old will have problems though. I think that 5.26 is probably the oldest that we should try to support, and so I guess put that in the documentation. Although you would need 5.32 or newer for a version that I can truly guarantee everything will work for. |
I just pushed an additional commit with some guidance for the perl version and packages. I think what remains is:
|
Publication file: Use the Sample Chapter stanza for Now have fresh (within PTX distribution):
but when doing
Is that book-title directory in the way? I'm not 100% sure what I'm debugging here exactly. And other PreTeXt projects (that other people are hanging fire on) are going to keep me busy. |
I may merge #2341 in a bit. Which will require a rebase here. (And perhaps you can fix in (not squash) the newer commits along the way?) |
OK, as suspected, I was not hitting that error because at some previous time I had manually placed the needed macro file in an OK place. But it's working now with my testing. And while fixing this up, I noticed parallel issues with making a problem set archive and fixed those too. Summary:
So for example if you run Lastly, say you clear out your generated folder, and then run |
3636712
to
07feb70
Compare
We tested at RSA and for a while we had some issues with multiple choice questions. But we've ironed that all out. So I think this is ready unless there is more PTX-side testing to do. After this is merged, my next step would be to upgrade the AIM WW server (the production one) to version 2.19. Of course, with advanced warning posted on -announce. (We don't expect bad consequences, but it's always possible.) Eventually the changes here would make it into the CLI. Then we could upgrade the RSA WW server to 2.19, but I think it is less stressful to wait and do that in June. The commits here are still separated in case it helps to only put eyes on new changes since whenever the last review was. Let me know if you would prefer I (a) squash all related commits [for example, all that are about the js] or (b) squash it all into one big commit. Ideally we somehow still assign credit (and blame) to me, Drew, and Glenn though. |
Oh, I also rebased from master since there was a small conflict. |
Thanks - I'll try to address this one in about a week. If there is no change for status quo (as is the intent) then I'm inclined to merge this with new features being subject to change after used in the wild. If you haven't already, you might prepare a blurb for |
I force pushed a small change regarding the recent thread on -dev about |
I'm not changing this. It is necessary for how local PG processing is done now. |
OK, maybe I made a mistake in testing, I thought. No changes at all, except current "master" versus this PR on top of master. Nothing is being output for the problem sets with the PR in the location where they are being output with master. Would you please confirm and if so, diagnose? |
As I said, pg files, set definitions, etc now must go inside generated.
They must be in a predictable place for local PG processing and overall use
of local PG files to send to the ww server or renderer. When I wrote that
I'm not changing that, I mean I'm not going to edit this PR to undo that.
It is massively interwoven with other things.
Do you just want a redundant copy of all those files copied to the same
place they used to land?
…On Wed, Feb 26, 2025, 3:42 PM Rob Beezer ***@***.***> wrote:
OK, maybe I made a mistake in testing, I thought.
No changes at all, except current "master" versus this PR on top of master.
*Nothing* is being output for the problem sets with the PR in the
location where they are being output with master.
Would you please confirm and if so, diagnose?
—
Reply to this email directly, view it on GitHub
<https://urldefense.com/v3/__https://github.com/PreTeXtBook/pretext/pull/2336*issuecomment-2686453241__;Iw!!Ka_JY85zDv0FFw!jM4Xl_EeV7JUTdhy1zo0smK6lHVkTI8vEW-AucIOq0ecKTWNB6dYm_UYzJbvEw7ZAEX_vABcZf-NNduR2jlNclUMboc$>,
or unsubscribe
<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/ABEDOACXESHAUTEVPMULPHL2RZGOJAVCNFSM6AAAAABUAAAGXKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMOBWGQ2TGMRUGE__;!!Ka_JY85zDv0FFw!jM4Xl_EeV7JUTdhy1zo0smK6lHVkTI8vEW-AucIOq0ecKTWNB6dYm_UYzJbvEw7ZAEX_vABcZf-NNduR2jlNx_PJCrw$>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
[image: rbeezer]*rbeezer* left a comment (PreTeXtBook/pretext#2336)
<https://urldefense.com/v3/__https://github.com/PreTeXtBook/pretext/pull/2336*issuecomment-2686453241__;Iw!!Ka_JY85zDv0FFw!jM4Xl_EeV7JUTdhy1zo0smK6lHVkTI8vEW-AucIOq0ecKTWNB6dYm_UYzJbvEw7ZAEX_vABcZf-NNduR2jlNclUMboc$>
OK, maybe I made a mistake in testing, I thought.
No changes at all, except current "master" versus this PR on top of master.
*Nothing* is being output for the problem sets with the PR in the
location where they are being output with master.
Would you please confirm and if so, diagnose?
—
Reply to this email directly, view it on GitHub
<https://urldefense.com/v3/__https://github.com/PreTeXtBook/pretext/pull/2336*issuecomment-2686453241__;Iw!!Ka_JY85zDv0FFw!jM4Xl_EeV7JUTdhy1zo0smK6lHVkTI8vEW-AucIOq0ecKTWNB6dYm_UYzJbvEw7ZAEX_vABcZf-NNduR2jlNclUMboc$>,
or unsubscribe
<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/ABEDOACXESHAUTEVPMULPHL2RZGOJAVCNFSM6AAAAABUAAAGXKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMOBWGQ2TGMRUGE__;!!Ka_JY85zDv0FFw!jM4Xl_EeV7JUTdhy1zo0smK6lHVkTI8vEW-AucIOq0ecKTWNB6dYm_UYzJbvEw7ZAEX_vABcZf-NNduR2jlNx_PJCrw$>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Alex, I think I hear you, BUT... This will almost always cause conflicts for an automated build where the generated folder has changed from last weeks build. Things that are generated by the code in the repository should NOT be committed! If you have a repository then you should be able to reliably recreate Version A of whatever with revision B of pretext without fail. Github is not a cache!! Especially when using the CLI, it is fine to rebuild everything and then let the CLI handle changes. |
One use case is you have a book with a bunch of WW problems authored in PreTeXt.. A stylesheet makes a collection of problems that you can cart over to some WW server of your choice and use. No more pretext, no more Runestone - a standalone collection of WW problems. And the collection can be created wherever you want it to be. That is no longer functioning and needs to be restored. Whatever else new you might need for local rendering is another discussion, and existing behavior needs to be preserved first. |
I don't understand what Brad is saying. Nothing here wants to commit PG
files. It didn't before, it doesn't now. Rob wants to do a diff on these
files that are moving from an unpredictable location the user chose to
within the generated folder. Rob is asking to put them back at the
unpredictable location.
For Rob, treating PG files as generated is no different than treating
latex-image files as generated. You could archive those too if you want and
send them to a disability services department as an analogy to your use
case. Probably a much more common use case than PG files. No more Pretext,
no more Runestone. Just archive the folder you want within generated and
send it off.
If you insist, I'll tack on something that copied that folder tree to where
it was. And the next day open a PR to remove that so I don't have to follow
up with confused people in the future about which folder is being used for
this and that.
I can also put the tarball for all that in the output folder
…On Wed, Feb 26, 2025, 7:48 PM Rob Beezer ***@***.***> wrote:
As I said, pg files, set definitions, etc now must go inside generated.
One use case is you have a book with a bunch of WW problems authored in
PreTeXt.. A stylesheet makes a collection of problems that you can *cart
over to some WW server of your choice* and use. No more pretext, no more
Runestone - a standalone collection of WW problems. And the collection can
be created wherever you want it to be. That is no longer functioning and
needs to be restored.
Whatever else new you might need for local rendering is another
discussion, and existing behavior needs to be preserved first.
—
Reply to this email directly, view it on GitHub
<https://urldefense.com/v3/__https://github.com/PreTeXtBook/pretext/pull/2336*issuecomment-2686782318__;Iw!!Ka_JY85zDv0FFw!glsKoZ1fDDjfN685Q2Z_m1EUjeXUAhfgR2exLEfJK1kJi7vyptyO2c2HBRxFx5OWicyrhMF7En7v_oRsBRYM87D-N4E$>,
or unsubscribe
<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/ABEDOAHI3C4477VWVEQF36D2R2DH3AVCNFSM6AAAAABUAAAGXKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMOBWG44DEMZRHA__;!!Ka_JY85zDv0FFw!glsKoZ1fDDjfN685Q2Z_m1EUjeXUAhfgR2exLEfJK1kJi7vyptyO2c2HBRxFx5OWicyrhMF7En7v_oRsBRYM59mA3_E$>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
[image: rbeezer]*rbeezer* left a comment (PreTeXtBook/pretext#2336)
<https://urldefense.com/v3/__https://github.com/PreTeXtBook/pretext/pull/2336*issuecomment-2686782318__;Iw!!Ka_JY85zDv0FFw!glsKoZ1fDDjfN685Q2Z_m1EUjeXUAhfgR2exLEfJK1kJi7vyptyO2c2HBRxFx5OWicyrhMF7En7v_oRsBRYM87D-N4E$>
As I said, pg files, set definitions, etc now must go inside generated.
One use case is you have a book with a bunch of WW problems authored in
PreTeXt.. A stylesheet makes a collection of problems that you can *cart
over to some WW server of your choice* and use. No more pretext, no more
Runestone - a standalone collection of WW problems. And the collection can
be created wherever you want it to be. That is no longer functioning and
needs to be restored.
Whatever else new you might need for local rendering is another
discussion, and existing behavior needs to be preserved first.
—
Reply to this email directly, view it on GitHub
<https://urldefense.com/v3/__https://github.com/PreTeXtBook/pretext/pull/2336*issuecomment-2686782318__;Iw!!Ka_JY85zDv0FFw!glsKoZ1fDDjfN685Q2Z_m1EUjeXUAhfgR2exLEfJK1kJi7vyptyO2c2HBRxFx5OWicyrhMF7En7v_oRsBRYM87D-N4E$>,
or unsubscribe
<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/ABEDOAHI3C4477VWVEQF36D2R2DH3AVCNFSM6AAAAABUAAAGXKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMOBWG44DEMZRHA__;!!Ka_JY85zDv0FFw!glsKoZ1fDDjfN685Q2Z_m1EUjeXUAhfgR2exLEfJK1kJi7vyptyO2c2HBRxFx5OWicyrhMF7En7v_oRsBRYM59mA3_E$>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
The With this PR, that feature is not working as expected. So that needs to be addressed before this can move forward. Makefile says that a |
Just force pushed. This follows a rebase off
Sorry for deviating from commit message scheme, but I figure you will squash this all anyway. It's hard to manage the contributions from three people here in a way consistent with your commit message scheme. |
Just putting out a light ping about this. I recognize there were several dozen open PRs recently, and a lot being done. But also I started to worry that I did not highlight enough how I think the issue about PG set archiving should be OK now. At least, that is my expectation. |
Still working on changes to
Do the macros need to be distinct from the remainder? Building these early means the construction of a
Similarly, the destination directory should default to the current working directory, at least. Before it gets passed into any libary method. Is that not happening?
How so? |
A few things to know:
OK, I wasn't aware
This is part of the dance that I came up with to continue letting the archive be built in the destination directory but also letting it (when needed) be built within the I think today in one of the group threads, there was mention of WW using base64 encoding. With this PR, base64 is gone (as long as the WW server is 2.19 and above). This is not needed because the .pg files themselves are put in a predictable place within the generated folder. So there is a general need to produce the problem files (the .pg files) and know ahead of time (using managed directories) where they are. But also for backwards compatibility of To make both possible, if the Forcing me to explain myself in writing, I see now that this abuse of
Too long ago to remember but when I get into it again I will check. Although I do not presently remember details, I do remember this was failing to copy over the full tree. Foggy memory notwithstanding, I think it was failing to copy the folder tree in the situations where I need it to copy the folder tree to within the generated folder. |
The
I think you've got it. Getting the managed directories should always return something sensible. I think that might be
thread about STACK. You could mention this there.
That sounds exactly like how things should work.
Maybe the macros went missing. ;-) Short version: |
I would love to see this get closed, so that we can restore full function to active calculus and others. I'm happy to try to help but the conversation above is pretty far into the weeds as far as my familiarity with the code. If there is something I can do to help ensure this gets done soon, please let me know. |
This is a large PR, just in time for everyone to be going on vacation :)
I'm doing my best to group the contributions from @drgrice1. @drdrew42, and myself from Tacoma. According to my testing, with these changes:
Once using a 2.19 server, there are new features that I have tested and documented using the minimal webwork example and the sample-chapter.
Possibly, we need a schedule for pulling the trigger on this. Here's a draft.