spdegabrielle
2020-7-5 09:38:27

I’ll try to reproduce on other platforms this afternoon


spdegabrielle
2020-7-5 10:42:17

I can’t reproduce on MacOS (catalina) or linux (ARM RaspberryPi OS w/BC nightly) I don’t have Windows10 but I made a simple list-box% test https://gist.github.com/spdegabrielle/c32006baa6d285036bb5bae60600ccde


spdegabrielle
2020-7-5 10:44:50

(it’t not really a test it just makes a big list-box for the purpose of determining if it is a problem with the control rather than the package manager GUI.)


samdphillips
2020-7-5 17:58:17

I tested package manager on 7.6CS with Linunx and wasn’t able to reproduce.


samdphillips
2020-7-5 18:09:49

The gist listbox works fine for me @spdegabrielle


spdegabrielle
2020-7-5 18:12:42

Weird. I was assuming it was gui problem.


spdegabrielle
2020-7-5 18:13:24

Does it only happen in ‘currently installed’


spdegabrielle
2020-7-5 18:13:43

? What about the big list of packages?


spdegabrielle
2020-7-5 18:14:03

(Next tab I can’t remember I’m in the kitchen )


samdphillips
2020-7-5 18:17:26

Good question. I’ll try it. (Also try the “Currently Installed” again since the puter has had all night to “rest”)


samdphillips
2020-7-5 18:18:42

Both “Currently Installed” and “Available from Catalog” stop part way through scrolling.


sorawee
2020-7-5 18:25:04

Can anyone run raco test -l tests/match/main and paste the result here? Racket’s CI says that all tests passed, but when I run it locally 6 tests fail.


soegaard2
2020-7-5 18:26:07

sorawee
2020-7-5 18:26:14

Insteresting…


sorawee
2020-7-5 18:27:12

Can you also try to evaluate (match* (3 4)) and paste error message here (no need for context)?


soegaard2
2020-7-5 18:27:51

> (match* (3 4)) ; match*: no matching clause for '(3 4) [,bt for context]


sorawee
2020-7-5 18:28:16

OK, something very weird is going on…


spdegabrielle
2020-7-5 18:28:55

I’d be looking at the source (graphical package manager ?)



sorawee
2020-7-5 18:29:04

This is the test that is failing for me


samdphillips
2020-7-5 18:29:12

Yeah. I’ve taken the plunge.


sorawee
2020-7-5 18:29:20

And it looks like according to the result that you showed me, it should indeed fail


samdphillips
2020-7-5 18:29:30

Wish me luck.


sorawee
2020-7-5 18:29:43

because it expects the text (3 4), but the error message has '(3 4)


sorawee
2020-7-5 18:30:00

And yet somehow the test passed on your computer…


soegaard2
2020-7-5 18:30:37

Maybe the printer is different in the test suite?


samth
2020-7-5 18:30:44

Have you tried running that expression in the mzscheme language?


sorawee
2020-7-5 18:30:56

Ohh


sorawee
2020-7-5 18:31:02

That’s what’s going on


sorawee
2020-7-5 18:31:14

I changed the language


spdegabrielle
2020-7-5 18:31:28

It won’t be bad. It’s not DrRacket.


samdphillips
2020-7-5 18:34:27

Haha


samdphillips
2020-7-5 18:42:50

Resizing the window makes it not get stuck


laurent.orseau
2020-7-5 18:44:12

Woah, that’s impressive debugging skills right there @samth! :clap:


samdphillips
2020-7-5 18:44:15

On some window sizes it doesn’t get stuck scrolling down but once you hit bottom and scroll back up it gets stuck at the same spot scrolling up


soegaard2
2020-7-5 18:45:29

Well - he has an unfair advantage. ;-) He wrote match .


samth
2020-7-5 18:46:33

Honestly, one of my weird talents is figuring out errors without doing any work (for other people, it never works on my bugs)


samth
2020-7-5 18:47:08

For this one, I just noticed that the problem was quote-printing, clicked the link, saw that it used mzscheme, and then hypothesized


sorawee
2020-7-5 18:50:05

Actually, I didn’t change mzscheme on that file itself. I changed scheme/base to racket/base in the entry file (https://github.com/racket/racket/blob/master/pkgs/racket-test/tests/match/main.rkt)


soegaard2
2020-7-5 18:50:48

Didn’t mzscheme use an older match?


samth
2020-7-5 18:51:17

mzlib/match denotes a different pattern syntax than racket/match


laurent.orseau
2020-7-5 18:52:01

That’s a very useful talent!


sorawee
2020-7-5 18:57:05

Btw, @laurent.orseau, I just make (recompile Racket from source) and it shows this error to me:

raco setup: 1 rendering: <pkgs>/quickscript/scribblings/quickscript.scrbl open-input-file: cannot open input file path: /Users/sorawee/git/racket/racket/share/pkgs/quickscript/img/warning.png system error: No such file or directory; errno=2 context...:


sorawee
2020-7-5 18:59:58

I think you might need define-runtime-path?


laurent.orseau
2020-7-5 19:00:10

yes, looks like it :disappointed:


laurent.orseau
2020-7-5 19:00:19

thanks for the quick report!


laurent.orseau
2020-7-5 19:02:38

Initially I had used a utf8 char, but it broke the nightly build… So I just removed it altogether now, it caused too much pain already.


laurent.orseau
2020-7-5 19:02:41

(pushed)


laurent.orseau
2020-7-5 19:09:24

Annoying that this doesn’t raise an error locally


samth
2020-7-5 19:10:01

it will raise an error if you run it in a different directory


samdphillips
2020-7-5 19:15:59

OK. I was able to get the dimensions of just the list-box% control when it was wonky and when I use those values for the min-width and min-height in your simpler gist code I’m able to reproduce the problem.


samdphillips
2020-7-5 19:16:15

:tada:


samdphillips
2020-7-5 19:16:43

Seems to behave weird with: [min-width 780] [min-height 485]


samdphillips
2020-7-5 19:18:01

The width most likely doesn’t matter.


spdegabrielle
2020-7-5 19:18:05

Only on win10?


samdphillips
2020-7-5 19:38:56

Yeah I checked with my Linux box with those sizes and it works fine. Now peeking at the wx list box code.


samdphillips
2020-7-5 20:00:04

Through some strategic display usage I’ve found it only happens when there are a multiple of the scroll step visible.


samdphillips
2020-7-5 20:00:27

So default is 3 so it happens with 12, 15, 18, 21, etc items


samdphillips
2020-7-5 20:22:29

Alirghty


samdphillips
2020-7-5 20:23:33

https://github.com/racket/gui/blob/master/gui-lib/mred/private/wx/win32/list-box.rkt#L414

I think that’s why it doesn’t work. If the item we are trying to set as the top item is the same as the number of visible items it doesn’t actually move the list.


samdphillips
2020-7-5 20:24:21

Not sure what the reasoning behind that is


samdphillips
2020-7-5 20:26:05

If the scroll preference was set to 1 it would happen on every list box


spdegabrielle
2020-7-5 20:59:05

So the code to stop scrolling when the scroll box is small is also triggering in for multiples?


spdegabrielle
2020-7-5 20:59:27

Sorry not at a computer so can’t look at the code.


brentgordon146
2020-7-5 22:33:29

I’m using call/input-url so the port is closed automatically for me and Im using linux


notjack
2020-7-6 06:45:23

Can anyone help me figure out what’s wrong with this syntax class? Trying to use the enum-id.predicate attribute raises enum-descriptor-predicate: unbound identifier; also, no #%app syntax transformer is bound. #lang racket/base (require racket/contract/base) (provide enum-id (contract-out [enum-binding (-> enum-type? identifier? enum-binding?)])) (require (for-label racket/base rebellion/type/enum/descriptor) rebellion/type/enum/base syntax/parse) ;@------------------------------------------------------------------------------ (struct enum-binding (type descriptor)) (define-syntax-class enum-id #:attributes (type descriptor predicate) (pattern binding #:declare binding (static enum-binding? "a static enum binding") #:attr type (enum-binding-type (attribute binding.value)) #:with descriptor (enum-binding-descriptor (attribute binding.value)) #:with predicate #'(enum-descriptor-predicate descriptor)))


notjack
2020-7-6 06:45:43

(I’m on Racket BC 7.7)


laurent.orseau
2020-7-6 06:48:41

Guessing from my phone: the no app% error often happens when some require is missing in the syntax phase, so missing a for-syntax of something?


notjack
2020-7-6 06:49:05

tried that, didn’t work :(


notjack
2020-7-6 06:49:54

logically I think I have everything needed, because #' is being used at phase 0 and enum-descriptor-predicate is being used at phase –1, and I have (for-label racket/base rebellion/type/enum/descriptor).


notjack
2020-7-6 06:51:12

dammit I just realized the problem: I used for-label but I meant for-template


notjack
2020-7-6 06:51:39

Update: fixed the bug. The for-label is supposed to be for-template.


laurent.orseau
2020-7-6 06:52:06

Well you have two directions: try adding things until it works, or try removing things until it works ;)


laurent.orseau
2020-7-6 06:53:24

That was neither haha (changing things)