undefined refrence to '_imp___wassert'

Whenever i compile the program using this command
g++ -std=c++11 main.cpp -lraylib -lopengl32 -lgdi32 -lwinmm
I get these messages from the compiler
C:/Users/User/Crap/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libraylib.a(rglfw.o):rglfw.c:(.text+0x2cd1): undefined reference to '_imp___wassert' C:/Users/User/Crap/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libraylib.a(rglfw.o):rglfw.c:(.text+0x2e76): undefined reference to '_imp___wassert' C:/Users/User/Crap/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libraylib.a(rglfw.o):rglfw.c:(.text+0x2ec1): undefined reference to '_imp___wassert' C:/Users/User/Crap/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libraylib.a(rglfw.o):rglfw.c:(.text+0x2f53): undefined reference to '_imp___wassert' C:/Users/User/Crap/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libraylib.a(rglfw.o):rglfw.c:(.text+0x2f93): undefined reference to '_imp___wassert' C:/Users/User/Crap/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/8.1.0/../../../../i686-w64-mingw32/lib/../lib/libraylib.a(rglfw.o):rglfw.c:(.text+0x38af): more undefined references to '_imp___wassert' follow collect2.exe: error: ld returned 1 exit status
What could be causing the issue?
I use mingw i686 8.1.0 posix dwarf rt_v6 rev0
The compiler provided with the installer works just fine with the command i used

@pointThink No idea... but it seems this issue could be related to this: https://github.com/rust-lang/rust/issues/60912 In any case, it does not seem an issue with raylib but with the MinGW-w64 compiler.

FWIW, I had this same issue when using the pre-compiled binary, but everything works fine when building from source.


enable OptionButton to work from vr-simulator

When trying to click on an OptionButton using the xr-simulator add-on they never popup.  This seems to be due to it receiving double clicks.
I don't know exactly what this push_event function is doing as a lot of events go through it that don't get into the UI (when not holding down the E key in the simulator), but I think it's responsible for duplicate clicks going through and immediately closing the popup.
There's something problematic happening in the implementation, as reported at: https://github.com/godotengine/godot/issues/81579#issuecomment-1729468644
(The other bug where the popup remains activated and pops up again if you had selected the option in the mode of a click release is still there after this change.)

Godot 4's new multiple window support broke a number of things around viewports and events properly being handled because a lot of the UI elements assume subviewports are presented through subviewportcontainers and are thus purely 2D.
The GUI in 3D logic has become very dodgy, see also: https://github.com/godotengine/godot/issues/77189
That said, in XR obviously you don't have a lot of input to worry about, we're using controllers that emulate mouse actions directly on screen. The simulator breaks that so there are limitations to what we can fix without breaking our primary goal, logic working in XR. As an alternative, try out the new XR simulator Meta released so you properly emulate OpenXR without needing a headset.
That all said, I'm happy to accept this fix, we're not expecting mouse input, and the mouse emulation is handled inside of the component. If filtering out mouse events takes away the pain, everyone wins. I would recommend adding a good comment in the code to explain why mouse events are being filtered out.


Implement basic user activity statistics

We need metrics regarding user activity to see how well the project is doing.
One option might be to implement Google Analytics server side.

Implemented rudimentary GA support on the server side.


Allowing to pass multiple unique attributes for tags in a dictionary

Extending the option 'uniqueattrs' by allowing to pass a dictionary where key denotes the tagname and value denotes a list of attributes which must be equal for nodes to match. This extends the current  (tag, attribute)-tuple by providing the possibility to have multiple attributes which must be equal for a match. Helpful for XML represented databases where primary keys consist of multilple fields

Pull Request Test Coverage Report for Build 231

11 of 11 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 227:
0.0%

Covered Lines:
976

Relevant Lines:
976

💛  - Coveralls

OK, that sounds reasonable, I won't get time to look at in detail until a few weeks though.

No problem, thank you very much for your consideration and taking the time to review!


Incorrect VTT subtitles on Chrome (Safari works)

Have you read the FAQ and checked for duplicate open issues?
YES
If the problem is related to FairPlay, have you read the tutorial?

M/A
What version of Shaka Player are you using?

Latest (4.10.9)
Can you reproduce the issue with our latest release version?
YES
Can you reproduce the issue with the latest code from main?
N/A
Are you using the demo app or your own custom app?
My own
If custom app, can you reproduce the issue using our demo app?
N/A
What browser and OS are you using?
Safari and Chrome
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
N/A
What are the manifest and license server URIs?

N/A
What configuration are you using?  What is the output of player.getConfiguration()?

N/A
What did you do?

I'm adding several WebVTT subs in different languages
player.addTextTrackAsync(subs_url, subs_lang, 'captions', 'text/vtt', '', subs_lang);
player.setTextTrackVisibility(true);
What did you expect to happen?
Should work
What actually happened?

Works well in Safari but not on Chrome. Am I doing something wrong here? Why is the same code working differently across 2 browsers?
Any ideas? Thanks!
Are you planning send a PR to fix it?

With Safari

On Chrome

I also don't understand why the tracks are called that way in Safari. Maybe the process of adding VTT subtitles can be made a bit more intuitive?

Sorted by using the Shaka Player UI. I think it should be made more obvious that using the Shaka UI is a requirement rather than an option. It really doesn't work well without it


Add slimevolleygym into dizoo

[x] I have marked all applicable categories:

[ ] exception-raising bug
[ ] RL algorithm bug
[ ] system worker bug
[ ] system utils bug
[ ] code design/refactor
[ ] documentation request
[x] new feature request

[x] I have visited the readme and doc
[x] I have searched through the issue tracker and pr tracker
[x] I have mentioned version numbers, operating system and environment, where applicable (N/A)

slimevolleygym is a pong-like physics game env from the open source community. It follows standard OpenAI gym interface. Naive PPO self-play achieves scores of -0.371 ± 1.085 in slimeVolley-v0 env against built-in AI report.
It would be good to benchmark opendilab's league training and see if it can generate higher results.

@LuciusMos PPO(with RNN and without RNN), on policy training, slimeVolley-v0 env

To clarify let use league training with 3 roles (MA, ME, LE) rather than pure self-play training. There is also a built-in AI and do not use that for training. After training is finished we can evaluate agents against built-in AI and compare the numeric numbers with the report above.

@PaParaZz1 Could you please create an issue for the following PR?


MB-5731 ghcapi payment requests by move handler

Description
Adds a handler at /moves/[locator]/payment-requests/ so that we can pull the payment requests for a specific move from the GHCAPI.
I wound up reusing and lightly extending the service object we're using for the Payment Requests queue. The adjustment allows one to pass in 0s for both the perPage and Page parameters, which then should cause the query to run without pagination but with the locator/move code value as the filter.
Setup
If you populate your db using:
make db_dev_e2e_populate

Then you can go here after the office app is up (as a logged in TIO): http://officelocal:3000/ghc/v1/moves/CFCDFG/payment-requests/
You should get json for two payment requests.
Code Review Verification Steps

[ ] If the change is risky, it has been tested in experimental before merging.
[ ] Code follows the guidelines for Logging
[ ] The requirements listed in
Querying the Database Safely
have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #g-database
[ ] Secure migrations have been tested following the instructions in our docs

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

Messages

:book:
:link: MB-5731

  Generated by :no_entry_sign: dangerJS against 3870df337004c1b21a3eb411691a256c6854889c

@Ryan-Koch In terms of API design it would make more sense to me if the api call was move/{locator}/payment-requests.  If you didn't want to nest them maybe payment-requests/?moveLocator={locator} with a query variable instead of a path one.
I'm not convinced that reusing the queue call is not more trouble than it's worth.  There's a bunch of things we don't need in there such as gbloc filtering, extra joins, and grouping.

@Ryan-Koch In terms of API design it would make more sense to me if the api call was move/{locator}/payment-requests. If you didn't want to nest them maybe payment-requests/?moveLocator={locator} with a query variable instead of a path one.
I'm not convinced that reusing the queue call is not more trouble than it's worth. There's a bunch of things we don't need in there such as gbloc filtering, extra joins, and grouping.

That's fair, I'll switch the url structure around. I do think we need the gbloc filtering and looking ahead at abstract we will need some of the joins. The query is running without the grouping and pagination for this case also (it'll do this when you pass 0s for page and perpage).
The reason for the gbloc filtering is that would prevent someone from typing in a move code/locator for a move they don't have permission for and then accessing it that way. Having this (and the USMC logic) built in already is what made me think it might be worthwhile to reuse this service.
It occurs to me that we could also pass something in as an optional argument if we want to conditionally limit the joins. Would that do for reducing the concern around extra joins?

@Ryan-Koch In terms of API design it would make more sense to me if the api call was move/{locator}/payment-requests. If you didn't want to nest them maybe payment-requests/?moveLocator={locator} with a query variable instead of a path one.
I'm not convinced that reusing the queue call is not more trouble than it's worth. There's a bunch of things we don't need in there such as gbloc filtering, extra joins, and grouping.

That's fair, I'll switch the url structure around. I do think we need the gbloc filtering and looking ahead at abstract we will need some of the joins. The query is running without the grouping and pagination for this case also (it'll do this when you pass 0s for page and perpage).
The reason for the gbloc filtering is that would prevent someone from typing in a move code/locator for a move they don't have permission for and then accessing it that way. Having this (and the USMC logic) built in already is what made me think it might be worthwhile to reuse this service.
It occurs to me that we could also pass something in as an optional argument if we want to conditionally limit the joins. Would that do for reducing the concern around extra joins?

I think allowing perPage and page zero values to turn off pagination is dangerous then someone could request all data within their gbloc.  Adding an unknown perPage or page value should always go to our defaults.  If we must I say make it explicit and don't reuse any parameters coming from the client.
I just think the queries are going to evolve in different ways and it will be harder to follow all the exclusions for when we really don't want queue data returned.
That's a good point about authorization, I think it is slightly different here because we would be checking that the move exists in the gbloc prior to querying for the payment requests.  We would want to return a not found error or a not authorized error in that case instead of an empty array result I think.
Curious how others feel @monfresh @noelledusahel ?

@Ryan-Koch In terms of API design it would make more sense to me if the api call was move/{locator}/payment-requests. If you didn't want to nest them maybe payment-requests/?moveLocator={locator} with a query variable instead of a path one.
I'm not convinced that reusing the queue call is not more trouble than it's worth. There's a bunch of things we don't need in there such as gbloc filtering, extra joins, and grouping.

That's fair, I'll switch the url structure around. I do think we need the gbloc filtering and looking ahead at abstract we will need some of the joins. The query is running without the grouping and pagination for this case also (it'll do this when you pass 0s for page and perpage).
The reason for the gbloc filtering is that would prevent someone from typing in a move code/locator for a move they don't have permission for and then accessing it that way. Having this (and the USMC logic) built in already is what made me think it might be worthwhile to reuse this service.
It occurs to me that we could also pass something in as an optional argument if we want to conditionally limit the joins. Would that do for reducing the concern around extra joins?

I think allowing perPage and page zero values to turn off pagination is dangerous then someone could request all data within their gbloc. Adding an unknown perPage or page value should always go to our defaults. If we must I say make it explicit and don't reuse any parameters coming from the client.
I just think the queries are going to evolve in different ways and it will be harder to follow all the exclusions for when we really don't want queue data returned.
That's a good point about authorization, I think it is slightly different here because we would be checking that the move exists in the gbloc prior to querying for the payment requests. We would want to return a not found error or a not authorized error in that case instead of an empty array result I think.
Curious how others feel @monfresh @noelledusahel ?

Hm yeah that's a good point, it's likely not great to allow someone to manually pull the whole gbloc if they figure that out. I think what might be a reasonable compromise is punching up another public function as part of the service that has access to the private FilterOption functions. That way I can reuse that filtering logic without it being wrapped up with those other issues.

I agree with @duncan-truss about keeping the 2 separate, and not being able to override the pagination, and returning a 403 if they are trying to access things outside their jurisdiction.

I agree with @duncan-truss about keeping the 2 separate, and not being able to override the pagination, and returning a 403 if they are trying to access things outside their jurisdiction.

I wound up going that route with separate function in the same service 👍

i like the    path taken here, but i'm not as familiar with the security issues that come out of overriding pagination. i like the idea of introducing conditional logic to limit joins though

Thanks for reworking this it looks good to me! Could we add the createdAt field to the PaymentRequest payload? It's needed for the date display in the component.

Just pushed the change to add this to the payload. I'll merge once the tests pass.


Variable initialized with parentheses highlighted as function in C++

A variable initialized using parentheses in C++ is highlighted as a function rather than a variable:
long var2(42'012'593L);

This highlights var2 as blue in default style, for instance.  Other variables (= or {} initialized) are fine.
Sorry about the earlier mixup.  I upgraded, deleted my whole minted cache, and rebuilt and all is well with the quotes now!  Thanks for the pointer!

Yes, this one is a bit problematic... Since the C family declaration syntax is so complex and not using keywords, there's basically no chance to categorize these correctly with the lexing we do. I don't have high hopes for this to be fixed...


How do i handle master-detail view when using the desktop variant?

I just created a new NavHostComponent and nested the navigation view there, I am uncertain if this is the right approach.


Multiples forms

Hi,
I'm making a landing page with multiple form but same fields. ¿There is a way to get the condition by some data- instead of name="" ? because  the requirement is i have to use the same name for the fields.
Here is the example of my problem:
http://codepen.io/anon/pen/gPVvGY
Thanks

I had the same issue and I just submitted a pull request. I modified the code to use id as selectors, allowing you to re-use the input names.
https://github.com/renvrant/conditionize.js/pull/8


why i get the wrong in browser console: index.vue:62 Couldn't initiate Virtual Select

why i get the wrong in browser console: index.vue:62 Couldn't initiate Virtual Select

This issue appears to be echoing the discussion topic opened by the same user at https://github.com/sa-si-dev/virtual-select/discussions/332 and may have been answered there. It may not be an issue with the code but rather a problem with configuration; @avida-1906's response to the reply in the discussion would indicate if their issue was resolved.


Add Sorting Options

Add options for sorting:
Model.asc(:field)
Model.ascending(:field)
Model.desc(:field)
Model.descending(:field)
Model.order_by("field asc, other desc")
Model.order_by(:field.asc, :other.desc)
Model.order_by(field: :asc, other: :desc)

If we're going to cover all bases, I'd add
Model.order_by(:field, :asc)

to the list.

Sure thing.


incorrect comment in ocaml code line starting with close brace or ending with open brace

Sample code:
if my_cond then (
print_int 123;
print_newline ();
) else ()

Commented code at first line and last line show syntax errors (* my_cond then (*) and (*) else ()*)
Solution: please open 1 space before the comment closing and after the comment opening in appropriate cases

This sounds like a problem with the syntax highlighting or your linter, not the commenter. As far as I can  tell (* is a a valid comment leader and it doesn't really depend on other context such as what's inside the line being commented. If this is not the case can you point to OCAML  documentation about this?
If, for the sake of readability,  you would like to turn on adding extra spaces after (and before) comment characters there is an option for this in the config (see the Readme) but unless we're violating the strict definition of what a comment is how it displays should be up to the user which is what the config option is for.

I don't think there is any problem with my linter or the syntax highlighting.
Ocaml supports nested comment, which explains why the plugin cannot close the comment in the following case
Before comment:
if foo then (

After comment:
(*if foo then(*)

Compile the commented code gots this error
File "./tmp.ml", line 1, characters 14-16:
Error: Comment not terminated

My ocaml version via ``ocaml --version`
The OCaml toplevel, version 4.04.0

Official source

OCaml counts nested (* ... *) blocks, and this allows you to comment out regions of code very easily:

(* This code is broken ...
(* Primality test. )
let is_prime n =
( note to self: ask about this on the mailing lists *) XXX;;
*)

i agree with op. (* ......... (*) is parsed from the left as one comment opening then another nested comment opening (where the inner comment text starts with )).


[ios_platform_images] remove deprecated APIs

These APIs were deprecated before the last stable release, and will be removed in a future release of Flutter

test-exempt: code refactor with no semantic change

There was a scheduling issue with Cirrus macOS machines; trying a re-run now in the hopes that it's cleared up.

How do I fix this?

Try merging the latest main in again to re-trigger tests. AFAIK there's no way to manually re-run ci.yaml validation, unfortunately.


Debug console does not stick to bottom of feed

Issue Type: Bug
regularly the debug console stops autoscrolling. Launching the application gives a whole bunch of output messages. The console auto scrolls for a bit then stops, and i have to manually scroll to the bottom.
 I wonder whether there is something different about messages that cause this, for example is the output logging expandable objects, or just plain text, or wrapping? Could you share a screenshot?

here i restart the debugger.
console has paused scrolling at this point:

the next message, after scrolling, is:

it will happen multiple times even if i manually scroll to the bottom.

for example, i restart the debugger again, then once the autoscroll fails the first time, i manually scroll to the bottom. It may follow the tail for a bit, but this is the next instance it stops following:

the next message is:

We do have https://github.com/microsoft/vscode/issues/117674 which sounds pretty relevant but I don't see wrapped text in your sample, is there wrapped text somewhere else?

No, as we can see in my screenshots above,  the debug console is quite wide (maybe around 1500px), and no wrapping is occurring due to a constrained width.
Looks like it mostly happens with the "debugger attached" or "waiting for debugger to disconnect" messages.

@isidorn just wondering whether this sounds familiar to you

It only sounds familiar to #117674 which you already linked to.

I think this is probably a dupe of #117674 even though we don't see wrapped text here


Point KourageousTourists at Lisias' fork on spacedock

Note: transfer was approved by original author here: https://forum.kerbalspaceprogram.com/topic/209560-ksp-131-kourageous-tourists-l-0601-2022-1128/#comment-4224575
A few issues/questions for @Lisias :

Despite using the same identifier, ckan will use the name of the mod from spacedock - i.e. "Kourageous Tourists /L."  If you're OK with that there's nothing we need to do, or else we can override it in the netkan.
I explicitly listed the authors here because your spacedock listing doesn't have whale_2 listed as an author (nor should it necessarily, unless you want them to be able to modify your releases etc).  Since the original license was MIT I think listing whale_2 in CKAN is required, but in any case it's nice to give credit to previous authors and I don't think you'd have a problem with this anyway.  Of course let me know if you have any objections.
Some of your mods use "Lisias" and some use "LisiasT" in the author field - which would you prefer?  I think since your spacedock account is named Lisias the ones that are auto-populated from there are using that name.  We might want to make these more consistent at some point.
Note that your original PR used replaced-by metadata.  Simply re-using the old identifier is cleaner as long as the previous mod author is OK with it (as they seem to be).  We only have one example of replaced-by in use and it's a case where multiple mods were combined into one.
Your installation instructions say that KSPe is a dependency, but it's not indexed on CKAN.  And I just noticed that the release notes say "Replaces KSPe external dependency with embedded KSPe.Light" - can you clarify what is actually needed here?
Any changes to the tags I chose? https://github.com/KSP-CKAN/CKAN/wiki/Suggested-Tags
Any other recommend/suggest/supports relationships you want to include?  Please review the relationships documentation here if you haven't in a while, it's changed recently: https://github.com/KSP-CKAN/CKAN/blob/master/Spec.md#relationships
CKAN now supports multiple-host metadata, in case you want to support downloading from both SpaceDock and Github in case one goes down.  But specifying that in the metadata is pretty clunky - if that's something you're interested in doing we can always add it later.

If you don't have a preference on Lisias vs LisiasT, then I'd suggest just sticking with Lisias since all the automated PRs from Spacedock will be using that.
To be clear, there is no "last update is CKAN" mechanism. I think this might be where some previous misunderstandings occurred. The CKAN metadata indicates where the mod can be downloaded from (in this case, Spacedock).  If you update the mod on Spacedock, that update will be available to ckan users whenever it refreshes, usually within 5-15 minutes.


Issues with ReferenceInput inside List view

Following is code for a basic editor dashboard. I want to assign editors (who are users with special privileges) from the list view.

export const EditorAssignView = (props) => {
  return (
    <List {...props} title="Fresh Tales" perPage={20} >
      <Datagrid>
        <TextField source="taleTitle" label="Title"/>
        <TextField source="taleText" label="Content" style={{maxWidth: '150px'}}/>
        <ReferenceField label="Writer" source="writer_id" reference="appUsers">
          <ChipField source="name" />
        </ReferenceField>
        <ReferenceInput label="Editors" source="id" reference="appUsers">
          <SelectInput  optionText="name" />
        </ReferenceInput>
        <EditButton />
      </Datagrid>
    </List>
  )
}

However using the ReferenceField component inside the dataGrid view causes the page to not render the list view and also pings the API repeatedly with a blank request.
uncaught at handleFetch TypeError: Cannot read property 'value' of undefined
    at Function.mapStateToProps [as mapToProps] (http://localhost:3000/static/js/bundle.js:95847:35)
    at mapToPropsProxy (http://localhost:3000/static/js/bundle.js:37530:47)
    at Function.detectFactoryAndVerify (http://localhost:3000/static/js/bundle.js:37539:20)
    at mapToPropsProxy (http://localhost:3000/static/js/bundle.js:37530:47)
    at handleFirstCall (http://localhost:3000/static/js/bundle.js:37720:19)
    at pureFinalPropsSelector (http://localhost:3000/static/js/bundle.js:37768:82)
    at Object.runComponentSelector [as run] (http://localhost:3000/static/js/bundle.js:35714:26)
    at Connect.initSelector (http://localhost:3000/static/js/bundle.js:35866:24)
    at new Connect (http://localhost:3000/static/js/bundle.js:35807:16)
    at http://localhost:3000/static/js/bundle.js:26434:19

Moving the ReferenceField to within a tale's edit view leads to the component working as expected. Is the ReferenceField not meant to be used within lists? If so then could someone suggest what I do to give users a dropdown selector in the list where they can select from users. (basically want to give users ability to assign an editor to a tale)

On further investigation removing the ReferenceField from above list view stops the repeated pinging of the API. However the page still does not render.
export const EditorAssignView = (props) => {
  return (
    <List {...props} title="Fresh Tales" perPage={20} >
      <Datagrid>
        <TextField source="taleTitle" label="Title"/>
        <TextField source="taleText" label="Content" style={{maxWidth: '150px'}}/>
        <ReferenceInput label="Editors" source="id" reference="appUsers">
          <SelectInput  optionText="name" />
        </ReferenceInput>
        <EditButton />
      </Datagrid>
    </List>
  )
}

We don't provide support through GitHub issues. If you need advice on using or debugging your own project based on admin-on-rest, please use StackOverflow.

Hi @djhi
I was reporting what I think might be a bug. I can remove the request for a solution if you wish.

I can remove the request for a solution if you wish.
What do you mean ?

I have updated the above to sound more like a bug report than support request.

It is not possible currently to have edition fields inside a List. See #335

Aah I see.
Thanks a lot for your time.

Perhaps this could be documented better in the list view.


Phar support?

The best way to avoid dependency conflict is to make phar file? It could reduce composer install time (compared to downloading 1 coveralls.phar file).
But I'm not sure what the phar format is...

I have used box to package coveralls. The box configuration needs some work, but the resulting phar works as intended (see this simple example ).
You can add it to a .travis.yml config like such:
after_script:
 - curl -L  https://github.com/onema/php-coveralls/releases/download/v1.0.0-alpha1/coveralls.phar -o coveralls.phar
 - php coveralls.phar -v

@kherge-old please take a look at the box.json file and let me know if you have any input on how to improve it.
You can run .\Makefile package to re-package the phar.
Let me know how this works for you

phar support seems great. Can anyone volunteer to submit a PR for this?

+1 #124

#124 merged

I will try to release a new version (0.7.0) very soon. From 0.7.0, releases will come with corresponding phar file.Closing.

Thank you!
Nice, Christmas present :)

Awesome! Thanks :D


Text properties for track layer

It does not appear that there is currently an easy way to change the properties of the track id label text that is displayed when display_id is set to True. Looks like the font settings are hard coded in the TracksVisual class. Would be nice for the track layer to have a text parameter similar to the Points layer that allows for specifying the properties of the track id text label.
Thanks so much for creating and maintaining this awesome project.

Yup, I think this was implicitly already on @andy-sweet's "features" radar, but thank you for raising it @neili02! We will definitely implement this as soon as we can. See #2866 for links to many related issues.


Add Parseable provider

Description
Adds query provider for Parseable based on LogCell.
Checklist
Please make sure all of these are checked before merging. Please leave items
you think are non-applicable in the list, but use strike-through (~~) to
indicate they don't apply.

[x] The feature is tested.
[x] The CHANGELOG is updated.

Amazing, thank you so much! I will try to have a look at this on Friday.

Thank you @arendjr for the help. I made all the requested changes. Please have a look and let me know if anything else requires a change
Thanks to you I realized there was a bug with extracting timestamp. Not all queries return a timestamp so i have changed it to return UNIX_EPOCH

Do you want to do any special release announcement for this?

Thank you that would be great. I am guessing this means a special mention on the release notes

We'll definitely add it to the release notes and changelog but also working on joint blog post

Thanks for updating the README.md and CHANGELOG.md! Could you please add an entry to the PROVIDERS constant in xtask/src/constants.rs still? I can merge this right after.

@arendjr Done. Lemme know if anything else is required

Great, thank you!


fix(es/minifier): Apply new SyntaxContext to inlined Arrow correctly

Description:

BREAKING CHANGE:

Related issue (if exists):

It turns out that #8301 is a mistake and didn't update test ref accordingly. This PR effectively revert #8301 and #8310


Github Enterprise Login

is it possible to login to a github enterprise account with this app?

Not yet, it's a long standing issue #14.
Anyhow, it's in my TODO list, so I hope to start working on it soon.

thanks, didn't see #14 when searching


TODO: Bugs

This issue tracks the minor bugs that should be fixed before release:

[x] If user logs out in a different tab and then tries to play a round they get a 500 error.
[x] Counts of “number available” don’t go down as user does annotations.
[x] I think the number of points awards for guessing too late is 1 lower than it should be.
[x] From Chris: When it's entire human-written and user correct guesses this, no points are awarded and the notification message is incorrect.

These issues are all included in other issues, so I'm closing this.


"Wiper" shape on polar machine travelling far along the "periphery"

Hi all,
this is more of an observation/question than an issue. I use the wiper function on my polar table, super handy! I notice it

travels quite far along the "periphery",
doubles back
and then starts on the next "line".

A screenshot from the sandify preview:

I might dive into the code to try and understand. But wanted to ask first: Is this the desired behaviour?
Kind regards,
Roman

I notice it is much less pronounced when the angle between the "wiper line" and the periphery is closer to 90°. This might just be an artefact at some (strange) angles. Nothing important, by any means. Just curious.

This is actually fixed in #124 and will be in the next release (presumably soon).

Haha, thanks. Best thing I could come up with short of actually finding where in the code this "backtracking" comes from.
I'll close this non-issue 👍


Token based flow

Hi I would like to use beta features of Atlas but I do not want to use cloud features.
I created a bot in our cloud account without any project. I added the token into the our provider as this:
provider "atlas" {
  cloud {
    token = 'my-token'
  }
}

I have 401 errors in terraform. I guess I need to add some more parameters? Can someone help me please?

Hello @cemo, please set the token via ATLAS_TOKEN environment variable as in this example on your CI. It should fix the login issue.

Hey @cemo, there's now a fix that allows specifying a token in the provider:
provider "atlas" {
  cloud {
    token = 'your-token'
  }
}

Let's try that, and let me know if there are any issues. Thank you for reporting it. 🚀


Select - add readonly state to code

Description / User Story
Readonly state of select is currently missing in code and needs to be added.

Acceptance Criteria

[ ] Select has a readonly state in code, which looks exactly like in design
[ ] Update component documentation in Storybook

[ ] Move readonly to "States" in the props panel, give it a boolean control and the default "false"
[ ] Add "or readonly" in description of the states section after "disabled"
[ ] Add a sub-section titled "Readonly" incl. the texts defined in the Excel (currently marked red) and a simple example of the default Select, but with readonly=true and label="Readonly"

[ ] Props Excel has been updated / comments have been resolved and props changed from red to black font color

Background information

...

As discussed yesterday with @larserbach, @ChristianHoffmannS2 and @kathikraemer , the readonly state for the select is still something we want to provide, even though this is not part of the standard html select. We already had a somewhat working version with little effort.
As Kathis is no longer on the project, we can pick this up at a later point again.


Algolia Field Groups to Support Event Forwarding and Source Connector

Algolia Event supports the Algolia Event Forward Extension to pull user events from the site and store it in AEP for use
Algolia Profile supports the Algolia User Profile Source connector to pull profile to be stored in the realtime CDP to build audiences

@anandphatak do you have anymore feedback?

@anandphatak Checking on this PR.  any more comments?

Hi @smomin , I think the PR looks good. We can merge it; but release to production will happen only in January '25

hey @anandphatak Jan 25 is fine.  do you execute the merge or do I wait for approval so I can complete the merge?

hey @anandphatak Jan 25 is fine. do you execute the merge or do I wait for approval so I can complete the merge?

I will do the merge.


fix: Introduce aliases for the unsafe lifecycles

Adds UNSAFE_ prefix for deprecated lifecycle hooks. (For more information about this codemod, see React RFC #6)

componentDidMount, componentDidUpdate and componentWillUnmount aren't deprecated.

it's true! =D


[BUG] Get foldBlocks working with cardano-testnet

Internal
Area
Other: Marconi indexer
Summary
Get cardano-testnet running with the foldBlocks function in cardano-api.
Steps to reproduce
Steps to reproduce the behavior:

Start Testnet.Cardano.testnet (renamed to cardanoTestnet on current master, but plutus-apps is on 1.35.3)
start foldBlocks on the socket and with the configuration.yaml that testnet uses
receive error Failed to read or parse the network config file: Error parsing node config: AesonException \"Error in $: key \\\"ByronGenesisHash\\\" not found\"

After adding the key ByronGenesisHash, then the next error is about missing ShelleyGenesisHash, after which the testnet doesn't start.
ByronGenesisHash was created using readGenesisData from cardano-ledger, ShelleyGenesisHash by implementing the hash creation part from cardano-api:Cardano.Api.LedgerState.
Expected behavior
foldBlocks would start receiving LedgerStates
System info (please complete the following information):

OS Name: NixOS
OS Version nixos-unstable
Node version: 1.35.3
CLI version: 1.35.3

@Jimbo4350 I've added a (failing) test case to test/Test/FoldBlocks.hs in this branch here: https://github.com/eyeinsky/cardano-node/tree/ml/foldblocks-test


FF: column reorder doesn't work

Submit an Issue
Someone pointed out on the forums that the enable-column-reorder property doesn't seem to work in Firefox.
https://forum.predix.io/questions/24638/px-data-table-the-option-enable-column-reorder-doe.html
Steps to reproduce the problem:
Will have to run locally or use CodePen, since column reordering is not included in the interactive demo page by default.
Environment (component version number, Browser (including version), operating system, hardware, etc):
Firefox v54
Code examples help us better understand the issue.
https://codepen.io/randyaskin/pen/NgBEXY?&editors=1001

Closing due to age and release of https://www.predix-ui.com/#/elements/data-grid/px-data-grid


Update style in short help commands

Update the cobra commands to homogenize the output of restic help:

Change all commands' short descriptions to imperative voice
Capitalize first character (matches git's style and the Cobra-provided help command)
Include help and dump in manual; this was just out of sync.

Codecov Report

Merging #1230 into master will decrease coverage by 5.68%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1230      +/-   ##
==========================================
- Coverage   52.77%   47.09%   -5.69%
==========================================
  Files         127      127
  Lines       12250    12257       +7
==========================================
- Hits         6465     5772     -693
- Misses       5029     5783     +754
+ Partials      756      702      -54

Impacted Files
Coverage Δ

cmd/restic/cmd_cat.go
1.52% <ø> (ø)
:arrow_up:

cmd/restic/cmd_snapshots.go
35.92% <ø> (ø)
:arrow_up:

cmd/restic/cmd_restore.go
62.5% <ø> (ø)
:arrow_up:

cmd/restic/cmd_tag.go
64.28% <ø> (ø)
:arrow_up:

cmd/restic/cmd_key.go
53.78% <ø> (ø)
:arrow_up:

cmd/restic/cmd_migrate.go
6.89% <ø> (ø)
:arrow_up:

cmd/restic/cmd_backup.go
27.21% <ø> (+0.02%)
:arrow_up:

cmd/restic/cmd_init.go
53.12% <ø> (ø)
:arrow_up:

cmd/restic/cmd_dump.go
1.58% <ø> (ø)
:arrow_up:

cmd/restic/cmd_forget.go
33.33% <ø> (ø)
:arrow_up:

... and 21 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b1af544...9f52fe1. Read the comment docs.


Connectivity test fails with Envoy as DaemonSet

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
When deploying Cilium on an EKS cluster AND configuring it with Envoy as DaemonSet the cilium connectivity test command fails.
Here is an extract of the output (let me know if you need the whole output):
  ℹ  📜 Applying CiliumNetworkPolicy 'client-egress-to-fqdns-one.one.one.one' to namespace 'cilium-test'..
  [-] Scenario [to-fqdns/pod-to-world]
  [.] Action [to-fqdns/pod-to-world/http-to-one.one.one.one-0: cilium-test/client-6b4b857d98-b2mts (<IP_ADDRESS>) -> one.one.one.one-http (one.one.one.one:80)]
  ❌ command "curl -w %{local_ip}:%{local_port} -> %{remote_ip}:%{remote_port} = %{response_code} --silent --fail --show-error --output /dev/null --connect-timeout 2 --max-time 10 --retry 3 --retry-all-errors --retry-delay 3 http://one.one.one.one:80" failed: command terminated with exit code 22
  ℹ  curl output:

  📄 No flows recorded for peer cilium-test/client-6b4b857d98-b2mts during action http-to-one.one.one.one-0
  📄 No flows recorded for peer one.one.one.one-http during action http-to-one.one.one.one-0
  [.] Action [to-fqdns/pod-to-world/https-to-one.one.one.one-0: cilium-test/client-6b4b857d98-b2mts (<IP_ADDRESS>) -> one.one.one.one-https (one.one.one.one:443)]
  [.] Action [to-fqdns/pod-to-world/https-to-one.one.one.one-index-0: cilium-test/client-6b4b857d98-b2mts (<IP_ADDRESS>) -> one.one.one.one-https-index (one.one.one.one:443)]
  [.] Action [to-fqdns/pod-to-world/http-to-one.one.one.one-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> one.one.one.one-http (one.one.one.one:80)]
  ❌ command "curl -w %{local_ip}:%{local_port} -> %{remote_ip}:%{remote_port} = %{response_code} --silent --fail --show-error --output /dev/null --connect-timeout 2 --max-time 10 --retry 3 --retry-all-errors --retry-delay 3 http://one.one.one.one:80" failed: command terminated with exit code 22
  ℹ  curl output:

  📄 No flows recorded for peer cilium-test/client2-646b88fb9b-xsb7z during action http-to-one.one.one.one-1
  📄 No flows recorded for peer one.one.one.one-http during action http-to-one.one.one.one-1
  [.] Action [to-fqdns/pod-to-world/https-to-one.one.one.one-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> one.one.one.one-https (one.one.one.one:443)]
  [.] Action [to-fqdns/pod-to-world/https-to-one.one.one.one-index-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> one.one.one.one-https-index (one.one.one.one:443)]
  [-] Scenario [to-fqdns/pod-to-world-2]
  [.] Action [to-fqdns/pod-to-world-2/https-cilium-io-0: cilium-test/client-6b4b857d98-b2mts (<IP_ADDRESS>) -> cilium-io-https (cilium.io:443)]
  [.] Action [to-fqdns/pod-to-world-2/https-cilium-io-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> cilium-io-https (cilium.io:443)]
  ℹ  📜 Deleting CiliumNetworkPolicy 'client-egress-to-fqdns-one.one.one.one' from namespace 'cilium-test'..

📋 Test Report
❌ 4/42 tests failed (4/284 actions), 13 tests skipped, 0 scenarios skipped:
Test [client-ingress]:
Test [client-egress-l7]:
  ❌ client-egress-l7/pod-to-world/http-to-one.one.one.one-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> one.one.one.one-http (one.one.one.one:80)
Test [client-egress-l7-named-port]:
  ❌ client-egress-l7-named-port/pod-to-world/http-to-one.one.one.one-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> one.one.one.one-http (one.one.one.one:80)
Test [to-fqdns]:
  ❌ to-fqdns/pod-to-world/http-to-one.one.one.one-0: cilium-test/client-6b4b857d98-b2mts (<IP_ADDRESS>) -> one.one.one.one-http (one.one.one.one:80)
  ❌ to-fqdns/pod-to-world/http-to-one.one.one.one-1: cilium-test/client2-646b88fb9b-xsb7z (<IP_ADDRESS>) -> one.one.one.one-http (one.one.one.one:80)
connectivity test failed: 4 tests failed

Please note that the same test works fine when disabling the following values of the Helm chart:
envoy:
  enabled: true

The results when disabling Envoy as DaemonSet:
✅ All 42 tests (284 actions) successful, 13 tests skipped, 0 scenarios skipped.

Cilium Version
cilium version
cilium-cli: v0.15.7 compiled with go1.21.0 on linux/amd64
cilium image (default): v1.14.1
cilium image (stable): v1.14.1
cilium image (running): 1.14.1
Kernel Version
Latest bottlerocket AMI
Kubernetes Version
v1.27.4
Sysdump
cilium-sysdump-20230910-102356.zip
Relevant log output
No response
Anything else?
The whole code used is here
Code of Conduct

[X] I agree to follow this project's Code of Conduct

@Smana can you try the test again? Since the connectivity was to <IP_ADDRESS> it might have failed because it was making connections to the outside world.

@aanm Of course, do I have to change anything? upgrade the cilium CLI version?

I just run the command again and I still get the same errors. I don't understand how it would work without changing anything?
I'm gonna double check again without running envoy as daemonset

@SmaineTF1 Just because we have had CI flakes for connectivity tests done to the outside world.


chore: fix trivy workflow permissions

Trivy is failing on merge to main:
  Warning: Resource not accessible by integration
  Error: Resource not accessible by integration

https://github.com/bcgov/nr-rec-resources/actions/runs/12150219098/job/33882518632
Changed the permissions of the token based on this stackoverflow post:
https://stackoverflow.com/questions/70435286/resource-not-accessible-by-integration-on-github-post-repos-owner-repo-ac

@mishraomp Any thoughts on this? It's not failing in quickstart-openshift repo, maybe they are using PAT?

@mishraomp Any thoughts on this? It's not failing in quickstart-openshift repo, maybe they are using PAT?

I dont think we ever use PAT, @DerekRoberts thoughts?

@marcellmueller No, we're not using PATs...  GitHub has been having a lot of trouble today.  Retry the job and see if this is still happening?


fix(mobile): close menu after navigation

Close the menu when a user clicks on an item in it, by setting setDrawerOpen to false when clicked.
close #413

@Mordechai1323 do you need a help with solve the conflicts?

Hi, how are you? do you need any help or have any question?

thanks❤

run npm i, and push the updated package-lock

have you seen the build output?


train llama-7b with single A100-80G GPU, out of memory error

I use a single A100-80G GPU to train fine tune llama-7b and get OOM error every time.
however, when manually load model, it turns out that the model only takes 20G/80G, which makes this OOM error very strange for me.
here is the error msg
n136-082-206:15496:15968 [0] NCCL INFO comm 0x555b51b3e2d0 rank 0 nranks 1 cudaDev 0 busId c9000 - Init COMPLETE
0%|                                                                                | 0/30033 [00:00<?, ?it/s]Traceback (most recent call last):
File "/opt/tiger/codealpaca/train.py", line 225, in
train()
File "/opt/tiger/codealpaca/train.py", line 219, in train
trainer.train()
File "/usr/local/lib/python3.10/site-packages/transformers/trainer.py", line 1639, in train
return inner_training_loop(
File "/usr/local/lib/python3.10/site-packages/transformers/trainer.py", line 1904, in _inner_training_loop
tr_loss_step = self.training_step(model, inputs)
File "/usr/local/lib/python3.10/site-packages/transformers/trainer.py", line 2662, in training_step
self.scaler.scale(loss).backward()
File "/usr/local/lib/python3.10/site-packages/torch/_tensor.py", line 487, in backward
torch.autograd.backward(
File "/usr/local/lib/python3.10/site-packages/torch/autograd/init.py", line 200, in backward
Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 86.00 MiB (GPU 0; 79.35 GiB total capacity; 74.58 GiB already allocated; 42.19 MiB free; 77.99 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
0%|                                                                                | 0/30033 [00:01<?, ?it/s]
n136-082-206:15496:15973 [0] NCCL INFO [Service thread] Connection closed by localRank 0
n136-082-206:15496:15496 [0] NCCL INFO comm 0x555b51b3e2d0 rank 0 nranks 1 cudaDev 0 busId c9000 - Abort COMPLETE
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 15496) of binary: /usr/local/bin/python3.10
Traceback (most recent call last):
File "/usr/local/bin/torchrun", line 8, in
sys.exit(main())
File "/usr/local/lib/python3.10/site-packages/torch/distributed/elastic/multiprocessing/errors/init.py", line 346, in wrapper
return f(*args, **kwargs)
File "/usr/local/lib/python3.10/site-packages/torch/distributed/run.py", line 794, in main
run(args)
File "/usr/local/lib/python3.10/site-packages/torch/distributed/run.py", line 785, in run
elastic_launch(
File "/usr/local/lib/python3.10/site-packages/torch/distributed/launcher/api.py", line 134, in call
return launch_agent(self._config, self._entrypoint, list(args))
File "/usr/local/lib/python3.10/site-packages/torch/distributed/launcher/api.py", line 250, in launch_agent
raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
train.py FAILED
Failures:
<NO_OTHER_FAILURES>
Root Cause (first observed failure):
[0]:
time      : 2023-04-16_20:21:21
host      : n136-082-206.byted.org
rank      : 0 (local_rank: 0)
exitcode  : 1 (pid: 15496)
error_file: <N/A>
traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
./run.sh: line 16: --save_total_limit: command not found
run.sh
torchrun --nproc_per_node=1 --master_port=9004 train.py
--model_name_or_path "/mnt/bn/moemodel/llama-7b-hf"
--data_path "./data/code_alpaca_20k.json"
--fp16 True
--output_dir "/mnt/bn/moemodel/llama-7b-hf-gg"
--num_train_epochs 3
--per_device_train_batch_size 1
--per_device_eval_batch_size 1
--gradient_accumulation_steps 1
--evaluation_strategy "no"
--save_strategy "steps"
--save_steps 500
--logging_strategy steps
--logging_steps 50
--logging_dir "/mnt/bn/moemodel/tensorboard"
--save_total_limit 1
--learning_rate 2e-5
--weight_decay 0.
--warmup_ratio 0.03
--lr_scheduler_type "cosine"
--logging_steps 1
--deepspeed ds_config.json
--tf32 False
ds_config.json
{
"zero_optimization": {
"stage": 3,
"contiguous_gradients": true,
"stage3_max_live_parameters": 0,
"stage3_max_reuse_distance": 0,
"stage3_prefetch_bucket_size": 0,
"stage3_param_persistence_threshold": 100,
"reduce_bucket_size": 100,
"sub_group_size": 100000000,
"offload_optimizer": {
"device": "cpu",
"pin_memory": true
},
"offload_param": {
"device": "cpu",
"pin_memory": true
},
"stage3_gather_16bit_weights_on_model_save": true
},
"optimizer": {
"type": "Adam",
"params": {
"lr": 0.00002,
"betas": [
0.9,
0.999
],
"eps": 1e-8,
"weight_decay": 0
}
},
"fp16": {
"enabled": true,
"auto_cast": false,
"loss_scale": 0,
"initial_scale_power": 32,
"loss_scale_window": 1000,
"hysteresis": 2,
"min_loss_scale": 1
},
"train_batch_size": "auto",
"steps_per_print": 10,
"train_micro_batch_size_per_gpu": "auto",
"wall_clock_breakdown": false
}

Hi @gzm2062 ,
Can you share the solution to the issue? I am facing the same error as you.


[3-layers] Divide MapperConfig

Description
Depends on #1448
Need to separate mappers configuration into two types of mappers

Mappers that converts Requests and Responces into DTO at controllers level.
Mappers that converts DTO into Entities at services level.

Acceptance Criteria

Divide MapperConfig into two classes ControllerMapperConfig (rename of the previous) and ServiceMapperConfig.
Leave available mappers as is, they will be moved/updated later one by one.
ServiceMapperConfig should be in service implementation module.

Epic link
Epic #1446

I have found a better approach. Let's not divide the Mapper, but Converters. If each Converter is marked with @Component annotation, let Spring add them to Mapper. At runtime Spring will find automatically discover all Converters both in Controller and Service layers.
Please check if it will be enough to change the code of to:
@Configuration
public class MapperConfig {

    /**
     * Converters, that are used by {@link ModelMapper} and are discovered by Spring.
     */
    @Autowired
    private List<Converter> converters;

    /**
     * Provides a new ModelMapper object. Provides configuration for the object. Sets source
     * properties to be strictly matched to destination properties. Sets matching fields to be
     * enabled. Skips when the property value is {@code null}. Sets {@code AccessLevel} to private.
     *
     * @return the configured instance of {@code ModelMapper}.
     */
    @Bean
    public ModelMapper getModelMapper() {
        ModelMapper modelMapper = new ModelMapper();
        modelMapper
            .getConfiguration()
            .setMatchingStrategy(MatchingStrategies.STRICT)
            .setFieldMatchingEnabled(true)
            .setSkipNullEnabled(true)
            .setFieldAccessLevel(AccessLevel.PRIVATE);

        converters.forEach(modelMapper::addConverter);

        return modelMapper;
    }
}


solo: Fix get_helios_version check in helios-use

Due to a change in the formatting of the output from helios --version,
get_cli_version was returning a newline-separated string containing both
the CLI version and the target Docker version.
Fix it to only return the CLI version.

@gimaker

:+1:


Crash on emoji selection

I'm often getting crashes when I search for an emoji and quickly select one. It helps if I wait some time before selecting.
Getting Fatal error: Index out of range when accessing searchResults?[indexPath.row] in ElegantEmojiPicker.swift :
public func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
    let selection = searchResults?[indexPath.row] ?? emojiSections[indexPath.section].emojis[indexPath.row]
    didSelectEmoji(selection)
}

There seems to be a data race. As the capture below demonstrates, the execution of the the delegate method happens at a time the searchResults array was not updated yet in that scope.


Make Script::witness_version public

Originally this function was public (at least I was using it in downstream dependency in https://github.com/LNP-BP/descriptor-wallet). Now, in RC1, it became private. It is quite useful to detect witness scriptPubkeys.

@apoelstra probably it was public in my original PR proposing it and later the export was lost during review/update process

@sanket1729 can you pls merge this? Seems we have two ACKs here and I do not want to merge my own PRs


Fix lang.array sort to return a new array

Purpose

Describe the problems, issues, or needs driving this feature/fix and include links to related issues.

Fixes https://github.com/ballerina-platform/ballerina-lang/issues/33415
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Workflows have been enabled on the langlib-fixes branch and some existing failures have been fixed. Shall we sync this PR also anyway?


Test suite improvements

Not critical, but the last patch fix a longstanding issue: the script always return success, even if one tests fail.

Why not just use multiprocessing.Pool? It's as simple as:
from multiprocessing import Pool

with Pool(processes=os.cpu_count()) as p:
    results = p.map(run_one_test, all_tests_list)

Then it's the matter of defining run_one_test() to return (test_name, True) or (test_name, False) if a particular test fails.

@lpereira
multiprocessing seems to be useful when you want to Python code running in parallel. In our case, the bulk of work is already done forked, so it would just mean one extra fork to run Python first for each worker.
I also like the fact that we can easily return more stuff than the true/false, e.g. we return log pieces, so the final process merge them in the log without races.
I see how Pool is nice, but would be better if we had one of this for threading.

@cmarcelo commented on Aug 4, 2015, 12:23 PM GMT-3:

I see how Pool is nice, but would be better if we had one of this for threading.

In fact, we have: from multiprocessing.pool import ThreadPool. It works like the process-based Pool, but uses threads.

@cmarcelo commented on Aug 4, 2015, 12:23 PM GMT-3:

I also like the fact that we can easily return more stuff than the true/false, e.g. we return log pieces, so the final process merge them in the log without races.

As a suggestion, you could return named tuples, with keys for the test status, log excerpts, test name, and maybe something else.

After looking at the code I'm not convinced we need multiprocessing. The threaded version of pool seems to use the mechanisms in multiprocess with a dummy backend to not create new processes.
Agreed to keep the code as is and revisit next time we make major changes here.

Applied in 67d32716610b3e3bcea30f452976cb64a181d8f0 and parents.


Add public database in CloudKit for configurations

Use iCloud KVO for user-specific configurations / settings.
https://developer.apple.com/library/content/documentation/General/Conceptual/iCloudDesignGuide/Chapters/DesigningForKey-ValueDataIniCloud.html


Error in Syslog

Was review the system and noticed the following in the syslog
Sep 15 17:44:28 Pi-Allsky kernel: [108641.695297] usb 1-1.5: reset high-speed USB device number 4 using dwc_otg
Is this something to worry about?

@maserowik, as far as we can tell, the error occurs whenever we turn on video mode on the ZWO cameras.  If you are using version 0.7 or 0.8 with "Version 0.8 Exposure Mode" turned off, you should see that error whenever you restart the software.  "Version 0.8 Exposure Mode" ON will produce the message at the start of every picture.
From what I can tell, the error is harmless, although it clutters up the log file.
ZWO is looking into it.
If this answers your question, would you please close the issue?  I'll add it to the "troubleshooting" section of the Wiki when I get around to creating it.  Thanks - Eric


cannot define two Rake::ExtensionTasks with separate cross_compiling blocks

eventmachine defines two extension tasks: https://github.com/eventmachine/eventmachine/blob/master/tasks/package.rake#L25-33
each one uses its own cross_compiling block to add a .rb fat-binary wrapper to spec.files, but the second extension gets rubyeventmachine.rb added to it instead of fastfilereader.rb
with this patch:
diff --git a/tasks/package.rake b/tasks/package.rake
index 84e317e..73a5c6f 100644
--- a/tasks/package.rake
+++ b/tasks/package.rake
@@ -16,7 +16,9 @@ else
       ext.cross_platform = ['x86-mingw32', 'x86-mswin32-60']

       # inject 1.8/1.9 pure-ruby entry point
+      p [:outside, ext.object_id, ext.name]
       ext.cross_compiling do |spec|
+        p [:inside, ext.object_id, ext.name]
         spec.files += ["lib/#{ext.name}.rb"]
       end
     end

you can see the first block is getting called twice:
[:outside,<PHONE_NUMBER>, "rubyeventmachine"]
[:outside,<PHONE_NUMBER>, "fastfilereaderext"]
[:inside,<PHONE_NUMBER>, "rubyeventmachine"]
[:inside,<PHONE_NUMBER>, "rubyeventmachine"]

@tmm1, ping? did the above code help you out? please let me know.

No luck:
Don't know how to build task 'native:eventmachine:x86-mingw32'
/Users/test/.rvm/gems/ruby-1.8.7-p330/gems/rake-0.9.2/lib/rake/task_manager.rb:49:in `[]'
/Users/test/.rvm/gems/ruby-1.8.7-p330/gems/rake-0.9.2/lib/rake/task.rb:298:in `[]'
/Users/test/code/em/tasks/package.rake:31:in `setup_cross_compilation'
/Users/test/code/em/tasks/package.rake:30:in `each'
/Users/test/code/em/tasks/package.rake:30:in `setup_cross_compilation'
/Users/test/code/em/tasks/package.rake:39
/Users/test/.rvm/gems/ruby-1.8.7-p330/gems/rake-compiler-0.7.9/lib/rake/baseextensiontask.rb:34:in `initialize'
/Users/test/code/em/tasks/package.rake:36:in `new'
/Users/test/code/em/tasks/package.rake:36

@tmm1, can you try this weird-and-shameful-hack-that-I-m-not-proud-of?
https://gist.github.com/1340253


Switch to use code generated by codegen's protoc

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

Here you go 👍
/approve

/rebase

Fixed this PR. Please take a look at this when you have time.
(The CodeGen action returned an error but it is ok to ignore it at this time.)

Nice work
/lgtm

/approve


Fix integer overflow in 1D buffer image tests

@bashbaug Could you please have a review? Seems I cannot add reviewers.

@bashbaug Thanks for your review. Could you please help merge? I don't have permission to merge pull requests.

Merging as discussed in the October 15th teleconference.


Failure when running a float to float reduction

Two tests fail when running a float to float reduction:

cub.test.device_scan.minimal
cub.test.device_reduce.minimal

The failure occurs when running a float to float scan/reduction:

For cub.test.device_scan.minimal:
The failure is not related to NVC++ nor CUB. It's actually in the test itself, where the value of h_reference[i] gets calculated within a "Solve" call. Test fails when comparing the result correctness to 9 significant figures and it fails with:

INCORRECT: [372510]: (computed) 6.93817e+10 != 6.93747e+10 (difference:6.98778e+06, fraction: 0.000100725)
The naïve approach of summing up the floating numbers, the one that "Solve" call is currently doing, results in having the accuracy of output to less significant figures:
for (int i = 1; i < num_items; ++i)
{
val = static_cast(h_in[i]);
h_reference[i] = static_cast(inclusive);
inclusive = scan_op(inclusive, val);
}
I used Kahan’s method instead which is as accurate as possible using 32-bit numbers:
OutputT s = h_in[0];
OutputT c = 0.0;
OutputT y = 0.0;
OutputT t = 0.0;
for (int i = 1; i < num_items; ++i) {
h_reference[i] = s;
y = h_in[i] - c;
t = s + y;
c = (t - s) - y;
s = t;
}
and test gets passed.

For cub.test.device_reduce.minimal, the reduce function is sum() and if we use Kahan's algorithm, we can get more accurate result to 9 significant figures when using float type input that makes this test to be passed.

I have attached simple example that shows the accuracy difference between using naïve sum and Kahan's sum and it shows that Kahan results with the same accuracy as double inputs:
naive sum result on float = 14.3573579788208
Kahan's sum result on float = 14.3927268981934
naive sum result on double = 14.3927268981934
float_sum.txt

PR #402 should address this. I couldn't reproduce this on nvc++ 21.7 -- if you get a chance to check that this fixes the failing nvc++ tests, let me know!

I used Kahan’s method instead

Unfortunately we can't really use this technique, since scan_op may be a different operation than cub::Sum. Since the error you're seeing (0.0100725%) is only slightly more than the current threshold (0.001%), I've just increased the threshold to (0.0015%).


enhances #448: show datasets tab always

Closes getodk/central#448
What has been done to verify that this works as intended?
Test
Why is this the best possible solution? Were any other approaches considered?
NA
How does this change affect users? Describe intentional changes to behavior and behavior that could have accidentally been affected by code changes. In other words, what are the regression risks?
None
Does this change require updates to user documentation? If so, please file an issue here and include the link below.
No
Before submitting this PR, please make sure you have:

[x] run npm run test and npm run lint and confirmed all checks still pass OR confirm CircleCI build passes
[x] verified that any code or assets from external sources are properly credited in comments or that everything is internally sourced

Looks good! I have a couple nits on the chip and its placement that you may want to track somewhere. I think they're important enough to address in this release. CC @alyblenkin

The vertical alignment feels awkward. It feels to me like either the text baseline should be the same or the chip should be significantly higher.
It doesn't feel linked to the Datasets tab. Maybe reducing the horizontal spacing would help?
A note that may not require action but should at least be considered: "new" may be much longer in other languages.

This is very similar but feels subtly more polished to me:

(https://userpilot.com/blog/new-feature-onboarding/)

Just randomly came across this from Ghost:

I think the caps help! Also so weird that both of these examples I'm just seeing for the first time use magenta!

I love that we are prioritizing this! These are great examples. I've been collecting some examples here as well. I would like to do the [anchor message](https://www.figma.com/file/KFi9hIQdrRgo0rLqIC7Sg8/ODK-user-flows?type=design&node-id=658%3A40862&mode=design&t=I3glp9ydlnamBR5U-1aske we talked about with Collect, but I wasn't sure if that would make it in!
I agree; the text baseline should be the same. All caps aren't great for accessibility, but we could put an exclamation mark to make it more exciting :) We tried the filled chip, but it didn't look as good. I didn't mock it up in figma; we just chatted about it, but here is a quick sketches ⬇  . @sadiqkhoja let me know if you want to talk about tightening this up a bit!

P.S. I may need to get my eyes checked. I see pink with those examples! 👀

Looking forward to small improvements to make it pop! I don't have strong feelings on filled vs not, font size, tab highlight, etc, just spacing and alignment.

I see pink with those examples! 👀

Haha, ok, they're definitely not exactly the same color but in the same family, right??

I prefer option 4, but the leanest thing is likely option 1, and we tweak the radius of the chip and tighten the spacing.


Hide Markup by default

Is there a way to show the ".sg-code-listing" / Markup Region by default as closed?
Now it is open by default, but I would prefer to only show it closed by default.

+1

Searching for showMarkup gives interesting results like section.js but I fail to see if this setting can be overridden from the build task or if a directive is needed...

I know, this is not an urgent and really minor issue, but could you tell us if there is/will be any progress on this?

showMarkupSection option added to the recent release and markup section is open default. But it can be set to false to make markup section close.


How to change the url of the player?

Thank you very much for jsmpeg, I want to know how to change the url of the player, I need to switch the url of the player, from live to playback, how should I do? Do I need to destroy the player and create a new one?

3Q


Jupyter notebook instances are often impossible to terminate

OS/Web Information
OS/Web Information
Web Browser: Chrome Version 93.0.4577.82 (Official Build) (x86_64)
Local OS: MacOS 11.5.2
Remote OS: Operating System: Ubuntu 18.04.5 LTS, Kernel: Linux 5.4.0-62-generic
Remote Architecture: x86_64
code-server --version: 3.12.0 4cd55f9
Particularities: python & multi-GPU work for deep learning (AI)
Description
I'm using the Jupyter extension from the VSX extension store. This is one of the main reasons for me to use code-server, ie as a replacement for jupyter lab. However, a lot of the times, there is no way to interrupt the kernel. Pressing "interrupt" is just ignored a large fraction of the time. I have some cells that can take a full day to run. It forces me to kill the whole server, which is really not ideal.

Kernel management (meaning starting, stopping, saving cells) is very far from as stable as on Jupyter lab, it's basically unusable for me right now. Which is really a shame, because code-server is really great otherwise.

is very far from as stable as on Jupyter lab, it's basically unusable for me right now. Which is really a shame, because code-server is really great otherwise.

That's really unfortunate to hear and we definitely want to improve this for you.
Do you mind updating your description to match the bug report template? I don't use Python or Jupyter Lab so I'm not really familiar with how it works. The clearer the instructions are, the better and faster we can troubleshoot this for you!


Improvements to RO-Crate in Python tutorial

Hello again GTN team, a new job has brought me back :)
Suggesting these changes after following the tutorial myself:

updated output of get_entities() because ./ Dataset always appears first
added "name" property to Donald Duck because if you re-export the crate and then continue with the tutorial, the name can appear as None when you print authors in a later section causing confusion
switched bash commands to Python where possible so it's easier to follow along with the auto-generated notebook
added explanation of what happens when including the exp/logs dataset in the crate
added extra CLI commands

One question:
The command-line interface section has the student clone an entire repository just to get one folder of test data to run rocrate on. I think it'd be better to host this test data in another repository by itself or as a downloadable zip file, which would simplify the commands needed - I'm happy to update the tutorial accordingly but what's the best approach (or most common in the GTN) to storing the data? Zenodo?
Requesting feedback from @simleo as a maintainer of the rocrate package

Hello again GTN team, a new job has brought me back :)

I saw you recently on some registration list and was like --- "What can this be, is Eli back?" --- so happy to see you again! :)

Thanks for this update, Eli. I'm a bit taken aback because I never thought of this tutorial to be something "alive" that would need updating, but only a training component written for the 2023 Smorgasbord. If the intent is to keep it in sync with the development of ro-crate-py, there's the matter of avoiding duplication / out-of-sync with the ro-crate-py docs (which are in the repository's README.md), as noted by Eli in this issue. Eli's proposed solution (see the issue linked above) is to keep updating this tutorial and make it the only documentation source. We could do that, though I have a few doubts. E.g. is there a way to see the rendering of a PR such as this one before it's merged? Is the language just GitHub-flavored markdown or something more specialized to the GTN?

If the intent is to keep it in sync with the development of ro-crate-py,

I think it could be nice? The GTN is a very FAIR training platform, it could be a good way to ensure that it's seen by a number of people.
It's not necessarily that we want to 'take over' your documentation, since you're obviously in the best place to maintain it long term, and this would mean using a different platform and changes going through peer-review which I recognise is an added burden for you @simleo.
I think there are some benefits to having it in the GTN but I can recognise those aren't necessarily aligned with your primary goals of delivering RO-Crate's python library, so, at least from our side, thanks to contributors like @elichad, and potentially others in the future, we can consider also maintaining parallel versions, as an additional place to advertise this really nice library.

Eli's proposed solution (see the issue linked above) is to keep updating this tutorial and make it the only documentation source. We could do that, though I have a few doubts. E.g. is there a way to see the rendering of a PR such as this one before it's merged?

Yes!

if you just want a basic rendering of markdown there is the github view.
If you wish to see a fully rendered preview, it's absolutely possible. (this can also be done locally, but many part-time contributors find gitpod easier.)

The fully rendered preview is potentially more important in this case since this tutorial uses one of the advanced GTN features of converting a markdown document directly into a Jupyter notebook which users can use if they're not following along in their own terminal.

Is the language just GitHub-flavored markdown or something more specialized to the GTN?

It is GFM, you can use all the familiar markdown constructs
But there are some jekyll specific, and GTN-specific additions on top.
Jekyll templates out variables such as {{ site.baseurl }} for us, GTN specific additions include features like tip boxes which are written with standard markdown blockquotes plus a css class, plus a GTN specific title <tip-title>..</tip-title> feature.

I've given you merge permissions @simleo for the future!


Move from OpenAI ➡ PaLm API

Utilize PaLm API in lieu of OpenAI to seamlessly execute identical functions it previously performed.

Implemented here.
Closing this enhancement!


Space tool is only activated upon mouse move after using keyboard shortcut

Hit 'S' on the keyboard to choose the Space tool
Do not move the mouse and immediately click and drag to make space

Expected: The cursor changes immediately after pressing 'S' and dragging actually creates space.
Actual: Making space doesn't work and the Space tool doesn't activate at all. The cursor only changes after moving the mouse.

This is a known bug which unfortunately hasn't been fixed yet. There's a ticket in bpmn-js, too. Thanks for reporting.

Closed via https://github.com/camunda/camunda-modeler/issues/2040.


Review sniff handling of PHP 7.3 list() reference assignment

Since PHP 7.3 it's possible to use reference assignment with list().
Code like
$array = array( 1, 2 );
list( $a, &$b ) = $array;

Won't throw Fatal error: [] and list() assignments cannot be by reference. That means you'd be able to do something like this:
$array = array(1, 2);
list($a, &$b) = $array;

$b = 4;

And the resulting $array would be [1, 4].
PHPCSUtils lists util, already has support for detecting this so we need to examine where lists are used in WPCS, add examples and modify the sniffs to use Utils for this.
From a quick look prefix all globals sniff could be affected by this change so we need to take a look at it.
Refs:

PHP RFC: https://wiki.php.net/rfc/list_reference_assignment

Related to #764

All sniffs have been reviewed and fixed to support modern PHP in as far as my imagination reached.
If any more situations would be discovered which need to be taken into account, a new issue should be opened with code samples etc.
Closing this now as fixed.


Ways to configure the logger

Hi Folks,
Is there a way to configure a new logger? I am thinking of using logrus to structure the logging in json format for a project, so if you have any suggestion, please recommend.
-Kartlee

hi @kartlee
i am not familiar with logrus. what i did in some other project when using go-kit's logger was redirecting the output from the std lib log to the adapter gokit provides:
import (
    stdlog "log"
    kitlog "github.com/go-kit/kit/log"
)

stdlog.SetOutput(kitlog.NewStdlibAdapter(logger))

does something like that work for you?

I think there is a better solution to implement in endless:
var logger = log.New(os.Stdout, "", 0)

var loggerDiscard = log.New(ioutil.Discard, "", 0)

// SetLogger ...
//
func SetLogger(lg *log.Logger) {

	if lg == nil {

		lg = loggerDiscard
	}

	logger = lg
}

func useLogger() {

	logger.Print("foo", "bar")
}

This way I can externally control the logger (prefix, flags, ...) or even discard as I see fit.
I use endless in a daemon and I want to eliminate the output, with the above code implemented in endless it would be possible...


add_xy_data() doesn't seem to work in Streamlit

I'm trying to run leafmap from within Streamlit.  I notice that I get no output when using the add_xy_data() function.
Please see below.  I can get a map when that line is commented out, but not when I leave it in.
It works great in a jupyter notebook.  There are no error messages, just no map.
Example problem
import streamlit as st
import leafmap.foliumap as leafmap
from bqplot import Tooltip
def app():
inCsv = r"C:\Projects\DataViz\WorldGame\EarthDashboard\Extinction\ExtinctWikiSrchd\extinctsWiki.csv"

myMap = leafmap.Map()

# Create a point layer from a CSV file containing lat/long information.
# This works great in a jupyter notebook.  When used within Streamlit, no map is produced
#myMap.add_xy_data( inCsv, x="Longitude", y="Latitude", label="Species", layer_name="World Cities" )

myMap.add_basemap( "OpenTopoMap" )
myMap.info_mode="on_hover"

myMap.to_streamlit()

This function is for ipyleaflet only. It won't work with streamlit. See https://github.com/giswqs/streamlit-geospatial/blob/master/apps/xy.py

Yessir!  The add_points_from_xy() function with a "cleaned up" dataframe
works great!
Thank you for taking the time to answer my question.
Baruch Bashan
On Wed, Jul 6, 2022 at 6:43 AM Qiusheng Wu @.***> wrote:

This function is for ipyleaflet only. It won't work with streamlit. See
https://github.com/giswqs/streamlit-geospatial/blob/master/apps/xy.py
—
Reply to this email directly, view it on GitHub
https://github.com/giswqs/leafmap/issues/261#issuecomment-1176239470,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALADLCDI7TGAQK3T5JGL6WDVSWEQHANCNFSM52QGXG5Q
.
You are receiving this because you authored the thread.Message ID:
@.***>


[ORC] add max/min support for orc decimal reader

fix the crash caused by decimal::max/min In Meituan's orc format environment

Can we just open a Gluten PR to test this branch?

Can we just open a Gluten PR to test this branch?

OK


Update getActivefilterfields, add getFilterFieldValue

@andy-armstrong @dsjen could you review this small improvement? It unblocks some work for Learner Analytics.

LGTM!  My only concern is that the data structure returned by getActiveFilterFields is changing.  Is it correct that Insights is the only application using this?

:+1:

correct, @dsjen. Insights is the only client to this code.


Add tests for modules wrapping flint

This is a work in progress.
Maybe the test script should be reorganised a bit as the current one-test-function-per-module structure will get a bit unwieldy if more tests are added.

I hadn't realised that the Linux builds in CI were still using MPIR rather than GMP. They now fail because they're trying to download from mpir.org which has now expired.

The easiest solution might be to wrap arb_load_str and arb_dump_str.

The easiest solution might be to wrap arb_load_str and arb_dump_str.

It would probably be useful to add those if that's a format already used by arb.
To me the most natural representation in Python would be to convert an arb to/from a tuple of 4 int/fmpz e.g. (m1,e1,m2,e2) for m1*2**e1 +- m2*2**e2. If I understand correctly that's basically the representation apart from a separate flag to indicate special values. I guess if the special exponent values are defined using COEFF_MIN then they aren't really portable because that varies based on FLINT_BITS but there could be another way to encode those like saying that when m1 = 0, e1=0,1,2,... denotes the special values (rather than COEFF_MIN+0,1,2,...).

The dump/load interface is designed to be portable and future-compatible.
The representation used by arb_t in memory does depend on FLINT_BITS, but arb_dump_str converts the special exponent values to something like 0 = 0 0 0 0, +inf = 0 -1 0 0, ...

arb_dump_str converts the special exponent values to something like 0 = 0 0 0 0, +inf = 0 -1 0 0, ...

Yes, that's what I was thinking. It would be good to have a way to convert to and from this format as a tuple of integers rather than a string representation of those integers. I see what you mean though that it might be simplest to just wrap the text dump functions for now.

Okay I think this PR is at a reasonable milestone for review/merge.
Tests are added for almost full line coverage of all modules relating to flint (rather than arb). I've also fixed a few bugs and added __eq__ and __ne__ to fmpz_series and fmpq_series.
Later I think it would be good to reorganise these tests to make more of the testing code generic so that e.g. all poly types are tested by the same test code for consistency. There are currently some inconsistencies about exactly which type has which methods and what exceptions they raise etc so that could be fixed at the same time.
I haven't looked at the arb modules at all yet but again that can be something to follow up. The arb-related modules are only really tested by the doctests and in some cases they give fairly low coverage.
The coverage with both tests and doctests here is:
$ coverage report --sort=cover
Name                        Stmts   Miss  Cover
-----------------------------------------------
src/flint/arb_series.pyx      563    492    13%
src/flint/arb_poly.pyx        195    170    13%
src/flint/arf.pyx             109     85    22%
src/flint/acb_poly.pyx        233    179    23%
src/flint/dirichlet.pyx        56     27    52%
src/flint/arb_mat.pyx         323    127    61%
src/flint/acb_mat.pyx         370    114    69%
src/flint/arb.pyx             835    180    78%
src/flint/functions.pyx        61     12    80%
src/flint/acb.pyx             891    171    81%
test/dtest.py                   8      1    88%
src/flint/fmpz.pyx            340     34    90%
src/flint/fmpq.pyx            181     15    92%
src/flint/fmpz_poly.pyx       295     23    92%
src/flint/fmpz_mat.pyx        268     19    93%
src/flint/fmpq_poly.pyx       234     16    93%
src/flint/nmod.pyx             96      6    94%
src/flint/fmpq_mat.pyx        248     15    94%
src/flint/fmpz_series.pyx     186     11    94%
src/flint/fmpq_series.pyx     369     18    95%
src/flint/pyflint.pyx         132      6    95%
src/flint/nmod_mat.pyx        222     10    95%
src/flint/nmod_poly.pyx       199      5    97%
src/flint/__init__.py           1      0   100%
-----------------------------------------------
TOTAL                        6415   1736    73%

Tests are added for almost full line coverage

The remaining parts that aren't covered are mostly:

Python 2 conditional blocks (I'll remove in a subsequent PR)
Lines with staticmethod, property or cpdef signatures. I'm not sure if these are being incorrectly reported as missed by coverage. I think that the C-code has some invisible branches that I don't see how to hit but it's difficult to decipher from looking at the generated code.
Impossible lines e.g. I think this one:
https://github.com/fredrik-johansson/python-flint/blob/e08d3dfc236f6b38fcc11bcde5c621993761a806/src/flint/fmpq_series.pyx#L203-L210
The code above already tested that s and t are not zero so valuation will be nonnegative and is the index of the first nonzero coefficient. Am I misunderstanding something or am I right that fmpz_is_zero will never return true here?

Equality of series is a bit tricky. It depends whether you want to compare series as symbolic expressions, as elements of R[x] / x^n, or as elements of R[[x]]. In the latter case, the O() term should be understood the same way as an error bound in interval arithmetic, and
1 + x + O(x^2) == 1 + x + O(x^2)
is actually undecidable (following the semantics of arb comparison, it should return False).
BTW, I think fmpz_series([1,2,3],-1) should raise an exception. I don't see any good reason to allow invalid power series.

The code above already tested that s and t are not zero so valuation will be nonnegative and is the index of the first nonzero coefficient. Am I misunderstanding something or am I right that fmpz_is_zero will never return true here?

Yeah, that looks bogus.

BTW, I think fmpz_series([1,2,3],-1) should raise an exception. I don't see any good reason to allow invalid power series.

I don't necessarily disagree but I'm wondering why they were there before. Is it to allow something like a nan e.g.:
In [50]: fmpq_series([1,1],1,3).derivative().derivative().derivative()
Out[50]: O(x^0)

In [51]: fmpq_series([1,1],1,3).derivative().derivative().derivative().derivative()
Out[51]: (invalid power series)

I don't remember why I ever put them in; probably because I was too lazy to implement all edge cases. Case in point: the derivative of O(x^0) should be O(x^0).
(I will add a C type for power series as part of the generics system eventually...)

Equality of series is a bit tricky. It depends whether you want to compare series as symbolic expressions, as elements of R[x] / x^n, or as elements of R[[x]]. In the latter case, the O() term should be understood the same way as an error bound in interval arithmetic

I think that equality also needs to be understood differently from mathematical equality in the context of a programming language. For example in testing we really want assert x == y to mean that x and y are structurally the same although we can have some allowance for things like fmpq(1) == fmpz(1) == 1. My general interpretation of == is that it should be a relatively cheap operation that determines if two things are the same for most purposes.
The general question of mathematical equality or equivalence is something much more involved and that can be interpreted differently depending on the context. Of course it is possible that our notion of series equality can correspond to a particular notion of mathematical equality but in practical terms we want basic properties like x == x which (IIUC) the error bound notion would not allow.

Indeed:
>>> arb("0.1") == arb("0.1")
False

I think the interface should provide separate, explicit functions for testing equality of representations and testing mathematical equality, e.g. x.equal_repr(y), x.equal_value(y).
There are then pros and cons to having Python's == wrap either of these.
For mathematical equality, you could map the truth status to Python booleans in different ways.
Pessimistic logic (current arb behavior):

True -> True
False -> False
Unknown -> False

Optimistic logic:

True -> True
False -> False
Unknown -> True

Strict logic:

True -> True
False -> False
Unknown -> some Exception

Triple-valued logic:

True -> True
False -> False
Unknown -> None or a new Unknown Python object

In the generic-rings wrapper (https://github.com/fredrik-johansson/generic-rings/blob/main/python/flint_ctypes.py), I'm experimenting with allowing users to select semantics at runtime:
    >>> a = (RR_arb(1) / 3) * 3
    >>> a
    [1.00000000000000 +/- 3.89e-16]
    >>> with strict_logic:
    ...     a == 1
    ...
    Traceback (most recent call last):
      ...
    Undecidable: unable to decide x == y for x = [1.00000000000000 +/- 3.89e-16], y = 1.000000000000000 over Real numbers (arb, prec = 53)
    >>> with pessimistic_logic:
    ...     a == 1
    ...
    False
    >>> with optimistic_logic:
    ...     a == 1
    ...
    True

The consideration needed for == specifically in the context of Python is that it is used by all the core data structures. We can have different methods like x.equals(y) and x.equals_modulo(y) etc but the core parts of the language will only use __eq__. This is the case for sets, dicts, tuples, lists etc. It would be useful if the method used for these was different from the method used for the == operator even if they would usually coincide so that you wouldn't have things like this:
>>> {1,1.0}
{1}
>>> {1.0,1}
{1.0}

With that being decided though the context in which we need to think about == specifically is (IMO) not direct usage by end users but rather usage by the core data structures of Python and other downstream library/application code. I envisage that the end user here is some way away e.g. python-flint is a component of a higher-level application and at that higher level == can be overloaded to do something different (e.g. the user is not necessarily even typing Python code or they do so through a wrapper interface like sage).
Having == behave strangely or even having its behaviour depend on global state is something that could be quite problematic for downstream code. The global state part couldn't work with anything hashable because it would invalidate any hash tables for example.

I wanted to run these tests on OSX arm64 after merging #42 but I don't seem to be able to get Cirrus CI to run on this PR.

I think the interface should provide separate, explicit functions for testing equality of representations and testing mathematical equality, e.g. x.equal_repr(y)

Okay, I'll add this and use it for the series tests.

Okay, this is tested with OSX arm64 after rebasing (and the tests pass).

Current coverage report:
Name                        Stmts   Miss  Cover
-----------------------------------------------
src/flint/arb_series.pyx      563    492    13%
src/flint/arb_poly.pyx        195    170    13%
src/flint/arf.pyx             109     85    22%
src/flint/acb_poly.pyx        233    179    23%
src/flint/dirichlet.pyx        56     27    52%
src/flint/arb_mat.pyx         323    127    61%
src/flint/acb_mat.pyx         370    114    69%
src/flint/arb.pyx             835    180    78%
src/flint/functions.pyx        61     12    80%
src/flint/acb.pyx             891    171    81%
test/dtest.py                   8      1    88%
src/flint/fmpz.pyx            340     34    90%
src/flint/fmpq.pyx            181     15    92%
src/flint/fmpz_poly.pyx       295     23    92%
src/flint/fmpz_mat.pyx        268     19    93%
src/flint/fmpq_poly.pyx       234     16    93%
src/flint/nmod.pyx             96      6    94%
src/flint/fmpq_mat.pyx        248     15    94%
src/flint/fmpz_series.pyx     182     11    94%
src/flint/pyflint.pyx         132      6    95%
src/flint/fmpq_series.pyx     355     16    95%
src/flint/nmod_mat.pyx        222     10    95%
src/flint/nmod_poly.pyx       199      5    97%
src/flint/__init__.py           1      0   100%
-----------------------------------------------
TOTAL                        6397   1734    73%

Okay, let's merge this now to have better coverage testing in others PRs.


Add README for lang/elixir

[X] basic info (packages, etc.)
[X] Elixir installation tips
[x] features roundup
[x] setup for LSP with elixir-ls

Looks good! Can I assume this is ready for merging?

@hlissner Yes, it is comprehensive enough for now IMO. I'll open an additional PR if I come up with anything to add

Excellent. Thanks again for all your help!


Add status bar/message for Voxel creation

So user knows that something is happening in the backend

and datalayer upload


README: Add link to QL for Eclipse download on LGTM.com.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[BUG] _modelAdministrationClient.StartBuildModelAsync does not recognize "Prefix" in BuildModelOptions parameter

Library name and version
Azure.AI.FormRecognizer 4.0.0-beta.2
Describe the bug
_modelAdministrationClient.StartBuildModelAsync does not recognize "Prefix" (subfolder path from root of blob container) provided in BuildModelOptions parameter, and always throw error below
Invalid request.
Status: 400 (Bad Request)
ErrorCode: InvalidRequest
Content:
{
"error": {
"code": "InvalidRequest",
"message": "Invalid request.",
"innererror": {
"code": "TrainingContentMissing",
"message": "Training data is missing: Could not find any training data at the given path."
}
}
}
Headers:
Transfer-Encoding: chunked
x-envoy-upstream-service-time: 772
apim-request-id: b91777be-49da-499d-b75f-526507e36806
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
X-Content-Type-Options: nosniff
Date: Sun, 26 Dec 2021 23:30:27 GMT
Content-Type: application/json
Expected behavior
Model administration client should be able to look for training files as per subfolder path provided in "Prefix" option
Actual behavior
receive error like below
Invalid request.
Status: 400 (Bad Request)
ErrorCode: InvalidRequest
Content:
{
"error": {
"code": "InvalidRequest",
"message": "Invalid request.",
"innererror": {
"code": "TrainingContentMissing",
"message": "Training data is missing: Could not find any training data at the given path."
}
}
}
Reproduction Steps
Here is the code to reproduce
var buildModelOptions = new BuildModelOptions
{
Prefix = docType.SubFolderName,
ModelDescription = trainedModel.ModelDescription
};
BuildModelOperation operation = await _modelAdministrationClient.StartBuildModelAsync(new Uri(_trainingDataSASUrl), trainedModel.ModelName, buildModelOptions);
Response operationResponse = await operation.WaitForCompletionAsync();
DocumentModel model = operationResponse.Value;
Environment
.net version 5

Thank you for your feedback.  Tagging and routing to the team member best able to assist.

Thank you for bringing this issue to our attention, @vijumane. I could reproduce the issue on my end, and it seems to be service-related. Could you check if the following workaround works? It solved the problem for me.
var buildModelOptions = new BuildModelOptions
{
    Prefix = docType.SubFolderName + '/', // append a slash to the subfolder name
    ModelDescription = trainedModel.ModelDescription
};

@ctstone Could you confirm if this behavior is intended or a bug? When building a model, it seems users need to append a slash / to the end of the Prefix property if they want to use a subfolder in the container with the training files. Subfolders are not probed by default.

@kinelski , the behavior is intended. Form Recognizer relies on Azure Storage Blob which has the same prefix semantics.

Thank you @kinelski and @ctstone for investigating. I confirm that it worked with '/' prefix. Unfortunately i couldnt find single online example of using "prefix" attribute anywhere, for sdk version 4.x, and in previous version it worked without such prefix. That is why reported as bug. Thanks !!