Rendering Chinese characters properly in-game may require additional font support

With #2666 merged we have Chinese translations but they do not render in-game (for instance in the language drop-down. I wonder if that's because there is a whole other Noto font family for that character set: https://www.google.com/get/noto/help/cjk/
If we need that to be able to properly display Chinese we may need to build in the possibility to do a full font swap when changing language. Although I wonder what that'll do for untranslated fields?

Added flag and change localisation file name to follow ISO 639-1 convention #2697

I think that having this Chinese dropdown entry should be fixed/removed asap, because it's broken.
I'd like to add typescript support, if possible. What is the smallest subset of character glyphs? It looks like the Table of General Standard Chinese Characters still covers over 8000 glyphs.  Do we need them all? Ping @smsunarto

@msteiger We won't need them all, chinese (Mandarin) doesn't use a system similar to alphabet hence their crazy amount of glpyhs since every word have their own unique glyph. Ideally we should only use the glpyh that is used by the translation. But I'm pretty sure this one should suffice https://en.wikipedia.org/wiki/List_of_Commonly_Used_Characters_in_Modern_Chinese really depends on whether or not the translator uses complex words though.

Here's perhaps an odd thought: should we merge the outstanding languages even without proper font support and just leave them disabled in the drop-down somehow? So we can get the PRs out of the way, keep working on them via Weblate if needed, and focus down to a single effort on better supporting fonts?

Sounds reasonable. I wonder whether it should be in the main project or should live in a module.

@msteiger I'm pretty sure glyph support is an integral part of the system. Im not sure how we can activate a new module outside of the world creation menu too.

To overcome this, we can first move some of the text into icons (a wrench for settings, a globe for language, etc), then use a simpliefied character set. (simplified Chinese vs traditional), and then to really save the space, all text is actually vectors.
Translate our words, load the font up into inkscape, make the labels, then convert font to path.
Now we're just loading a small SVG file instead of loading a massive font. A hack, but a good one.
We'd need SVG support in menu (which would probably end up getting us a better scaling UI anyways).

@MarkDerosier that would mean that we need to add new glyph every time we change/add new words? I like the text into icons idea tho. CC: @Cervator @msteiger

Hello everyone !! I'm from China, I would like to help in this issue ! I've test in a simply module and it seems that our NUI doesn't Chinese character display. Could you please tell me where could I get start ? Thank you :-)

Heya @GabrielXia and welcome to the glorious mess that internationalization appears destined to become! :D
I just merged your PR #2784 and all outstanding language PRs (closed a couple) and pushed to the weblate branch to thus update Weblate so you can see language at http://translate.terasology.org/projects/terasology/menu - only you can't see all of them, hmm. In-game the 5 incomplete languages are now excluded as intended so we have nothing broken going on.
Also managed to forget to first commit locally on Weblate and push out 5 commits with supposedly unique changes from there. In the interest of time I did a reset to get it fully up to date with develop, knowingly erasing some progress. Sucks but the amount of time it would've taken to fix would have been way worse than replicating whichever bits of translations we lost :/
So! Outstanding issues. I renamed the title of this to more accurately describe the challenge: showing advanced language fonts after picking one of the associated languages in-game. They include:

Chinese: Was already merged in the past. Needs font fix. Not showing in Weblate
Korean: #2745  - fixed flag, needs font fix. Not showing in Weblate.
Farsi: #2735 - right-to-left shows on the menu_fa.lang in IntelliJ, neat! But needs font fox. DOES show in Weblate
Arabic: Briefly came up in #2769 as it has no translations (was requested via Weblate). Needs font fix. DOES show in Weblate. Flag is tricky since Arabic covers many countries so there is no single flag and ar conflicts with Argentina. But we shouldn't need an icon for Argentina (Spanish is the official language) so I made a pure green flag_ar.png hoping that'll count as sufficient and non-controversial.
Hindi: #2733. Needs font fix. warn-modules claims to have an illegal escape character - huh? Hindi newline somehow? @VaibhavBajaj help :-)

There is a bunch of information in the linked PRs, especially from @msteiger having experimented with extra fonts with them showing in-game in at least two cases. But exactly how to bundle them is up for debate.
I would start by reading through all the links then maybe summarizing them further here so we have a central place to discuss all the related pieces together :-)
Additional:

We had a Turkish translation PR #2583 but it translated the translation keys verbatim, not their corresponding values in the English file. @tdgunes might be able to help redo that sometime :-)
The Indonesian entry in Weblate looks outdated - the actual menu_id.lang has translations where Weblate is showing identical untranslated string. Maybe we need to re-index something?

@msteiger or @qwc could either of you please check to see if we can badger Weblate to properly index or see if we need to add config to have all the languages present and updated properly?

On text -> icons to translate less I realized a flaw in our cunning plan: another best practice is for icons to have tooltips to explain what they do ....

Had in mind to do a better summary of the options myself, but then suddenly it was nearly 3 am. Not sure how that happened!

@Cervator This particular problem has me confounded. I don't know exactly how I could help. Could you give me more details on the error? Thanks!

This particular problem has me confounded. I don't know exactly how I could help. Could you give me more details on the error? Thanks!

Which error? :D I described several problems, hehe.
Weblate might just need some system administrator review to find out why it isn't showing everything at the latest level. When it is translation for anything remaining should be easy.
Adding support for more fonts is beyond me, hoping @msteiger can help out there as well as others able to research some of his initial findings. I don't know how to guide there better, @VaibhavBajaj :(

Reviving this in light of the Arabic pull.
As a solution, can we say ship with the current Noto font we have and then when a player enables a language like Chinese or similar that requires a separate font file we download it then. If there is no translation we fall back onto the default font?

hi may name is omar
you can add font like (Arial) and its supoort arabic.
i am going to comblete my translation later on
thanks

Belated hello @Omaranwa - there is a Noto font set that does support Arabic and all kinds of other fonts. The problem this issue is meant to cover is that our engine at present doesn't have the logic to switch the active font at runtime in response to a player changing to a language requiring extra characters :-)


Incorrect behavior when mixing functions and operators

Hi!
I have the following code snippet:
val evaluator = Keval {
  includeDefault()
  function {
    name = "if"
    arity = 3
    implementation = { args -> if (args[2]==1.0) args[1] else args[0] }
  }
  println(evaluator.eval("if((1*1),4,5))
  println(evaluator.eval("if(1*1,4,5))
}

The first expression evaluates to 4 (as expected), the second one evaluates to 1 (not expected).
Do you agree that this is a bug?
Another thought: the argument order confused me a bit, I was expecting args[0] to be the leftmost argument of the function, but it is the other way around..

I was looking for an even simpler example:
eval("max(5*6,7)") evaluates to 42 (which is in general a good answer, but not the one I expect here :) )

Damn, thanks !  I know exactly what the problem is (I pop the syntax tree from the end, which is obviously wrong), I'm probably going to fix this later that day.
As for the other one, I'll look into it, but I currently have no real idea why it acts so. This may take a little longer.

I should have posted this a while ago ; but this issue is gonna take longer to fix than i thought. The order one is fixed, but the argument ambiguity is due to an unfixable problem with the shunting yard algorithm. I already planned for a rework of the backend with a proper grammar engine for a long time now, but I didn't find the time to do it. This shouldn't be a problem anymore and is gonna my next focus for this library. This is gonna enable unary operators too, probably.

I believe there is a way to solve the bug without replacing parser.
The idea is to keep some semantical context while transforming the list of tokens in string form to nodes form.
I'll try to implement it tomorrow or in two days.
It will require (, ) and , to be a illegal operator name. I believe now it is technically possible to create operators with those names, but the parser will ignore those operators. So technically it will be an API breaking change (from ignoring those cases, it will be an exception)

That would be great ! I don't have much time recently (working on other projects), so a bit of help is very welcome


fixshow error msg if cast to decimal literal overflows

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall


Bug Two Sockets one room

Sometimes two of the same socket id can fill a room
Replicated when joining a room twice two seperate browsers, then the third time trying to join via link and it says full, then leave one room via leave button.
then try to join again via link, it wont work.

Not Reproducible after optimizations


Deprecation warning in default UuidValue constructor

Adresses #98
@daegalus Do you prefer to bump to 4.2.0 or 4.1.1? The 4.1.0 update wasn't really breaking, as the constructor wasn't made private nor it was marked as deprecated.

Do 4.2, I tend to be bad with versioning, but I think that's the right call for breaking changes.
And I might be a few days before I can merge it. My wife just went into labor.

@daegalus Perfect, I bumped the version and added the changelog entry.

And I might be a few days before I can merge it. My wife just went into labor.

No worries, congratulations for that!


Claiming: As a user that has no profile, claim a paper

Special case: no profile
When a user is logged in but there is no author record containing his ORCID.

Don't display the unclaimed flags
Display the claim menu at the top and the checkboxes on every paper
Add claim menu on every paper
The claim menus are not clickable and display the following message on hover: "There is no profile associated to your account. Please contact us at<EMAIL_ADDRESS>with a clickable email address. The email has a prepopulated title: "Profile association for {orcid}" and body "[Explain the situation here]".

When are users allowed to claim papers from other profiles

If the paper is currently unclaimed, AND
The names are compatible, namely there is a last name in common between the signature that the user wants to claim and the names (including variants) in the user profile

RT ticket example
Title: Claims by user {preferred_author_name} require curator action

The following claims performed by author {author_profile_url} were not handled automatically and require manual intervention.

Names in profile:
* {name_1}
* {name_2}
[etc.]

Already claimed:
* {paper_url_1} is already claimed to {author_url_1} with name "{author_name_1}"
* {paper_url_2} is already claimed to {author_url_2} with name "{author_name_2}"
[etc.]

Incompatible names:
* {paper_url_A} is in profile {author_url_A} and has signature "{signature_full_name_on_paper_A}"
* {paper_url_B} is in profile {author_url_B} and has signature "{signature_full_name_on_paper_B}"
[etc.]

https://github.com/inspirehep/inspirehep/issues/2354

TECH NOTES

add a new context for that case that will check if user is loggedIn.
create a new component (AssignNoProfileAction) for claiming menu, it doesn't need to have onAssign function and any menu items, it has to be always disabled with a tooltip "There is no profile associated to your account. Please contact us at [authors@inspirehep.net](mailto:authors@inspirehep.net).".
Add an option disabled to the PublicationsSelectAllContainer and disable the checkbox in PublicationsSelectAll if it's set to true.
Pass also disabled prop to PublicationSelectContainer here.
if user is logged in:

in LiteratureItem add a new menu here if the new context is true
In LiteratureSearchContainer add a new menu here and add disabled prop for checkboxes here and here if the context is true


rolling: periodic

[x] Closes #2007
[ ] Tests added (for all bug fixes or enhancements)
[ ] Tests passed (for all non-documentation changes)
[ ] Fully documented, including whats-new.rst for all changes and api.rst for new API

Ok, this was easier to do than initially thought, we can use np.pad(a, pads, mode='wrap') in nputils.rolling_window. However, I'm not sure if that is enough already*.
I added an initial test, but could use some pointers where else you want this to be tested.
Questions:

is fill_value='periodic' a good api?
should the fill_value keyvalue be ported to rolling?
should this also be mentioned in the docs for rolling  (I only learned about rolling.construct yesterday)

*rolling is present incore/dataset.py, core/dataarray.py, core/variable.py, core/rolling.py, core/dask_array_ops.py, core/nputils.py, core/ops.py, core/common.py, core/missing.py, and core/duck_array_ops.py that can be a bit daunting...

We would probably have to test how min_periods and periodic play together..., see #2010

Thanks for sending a PR.

is fill_value='periodic' a good api?

Maybe better API would be boundaries='peiodic' (see comments), but changing the public API is not an easy task.
Let's keep it now as is and decide it later.

should the fill_value keyvalue be ported to rolling?

I don't think so. I think we can keep rolling as similar to that of pandas,
and this option should be specific to construct method.

should this also be mentioned in the docs for rolling (I only learned about rolling.construct yesterday)

I think at least we need to add this to the docstring of construct.

Some comments.

We need to also support a dask array.
Can you update dask_array_op.rolling_window? Maybe this page would help for the implementation.

We use this here
https://github.com/pydata/xarray/blob/7c2c43ce6b1792e1193635ab9b64fd248266f632/xarray/core/dask_array_ops.py#L78-L79
I suspect this would be already working, but it would be nice if we can add some test cases.

Maybe we can also add boundary='reflect' option to make this as similar to dask.ghost.

Thanks for the discussion. I could not get it to work with dask - the problem is the 'padding before ghosting'.
https://github.com/pydata/xarray/blob/7c2c43ce6b1792e1193635ab9b64fd248266f632/xarray/core/dask_array_ops.py#L60-L62
I see no way how to get the boundary='periodic' working afterwards...

Ah, you are right.
The only way to realize rolling.periodic with dask would be to manually attach a chunk in the other side to the boundaries, construct rolling window array and then remove unnecessary boundaries by slicing.

Rather than letting this PR lie dormant, maybe we should just move forward without dask support and raise an appropriate error if the user tries it with dask arrays.

It might make sense to start with the higher level pad() with periodic boundary conditions first (https://github.com/pydata/xarray/issues/2605). Then rolling with periodic boundary conditions is a simple matter of padding, then rolling.

is fill_value='periodic' a good api?

fill_value='periodic' almost suggests padding with the string 'periodic'. Maybe padding='periodic' vs padding=None (default)?


whatsie: init at 4.15.3

Description of changes
Whatsie is a WhatsApp client/webview wrapper written in QT5. Homepage: https://github.com/keshavbhatt/whatsie.git
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Extra thing: split this in two commits (no need for a PR).
The first will be to maintainers file.
Tha second is for the package itself.

@AndersonTorres btw, thank you so much, for this thorough review. I learned a lot about making nix packages, thanks to that :)


[zkd] testInBox speedup

Scope & Purpose
This is a feature branch for #13650. This is a speedup for the testInBox and compareWithBox function.

https://jenkins.arangodb.biz/job/arangodb-matrix-pr/14578/

https://jenkins.arangodb.biz/job/arangodb-matrix-pr/14581/


file path filter

the tool atm is already amazing. But it will be better if users can specify some filters to filter out or only display files matching the filter rules.
For example, users may not want to spend time looking at driver code

thanks for the suggestion, I added support for this in this commit: https://github.com/zolutal/kheap_sift/commit/19aab0009c36f763e48624244512c7a33fadbc6b, see the updated readme for an example of how it can be used

This is amazing. Thx!

======== Found allocation sites for: struct nft_table ========

struct nft_table {
    struct list_head list;                      	/*   16 |    0 */
    struct rhltable chains_ht;                  	/*  136 |   16 */
    struct list_head chains;                    	/*   16 |  152 */
    struct list_head sets;                      	/*   16 |  168 */
    struct list_head objects;                   	/*   16 |  184 */
    struct list_head flowtables;                	/*   16 |  200 */
    u64 hgenerator;                             	/*    8 |  216 */
    u64 handle;                                 	/*    8 |  224 */
    u32 use;                                    	/*    4 |  232 */
    u16 family:6;                               	/*    2 |  236 */
    u16 flags:8;                                	/*    2 |  236 */
    u16 genmask:2;                              	/*    2 |  236 */
    u32 nlpid;                                  	/*    4 |  240 */
    char *name;                                 	/*    8 |  248 */
    u16 udlen;                                  	/*    2 |  256 */
    u8 *udata;                                  	/*    8 |  264 */

    /* total size: 272 */
};

./kinetic/net/netfilter/nf_tables_api.c:1167
static int nf_tables_newtable(struct sk_buff *skb, const struct nfnl_info *info,
			      const struct nlattr * const nla[])
{
...
	struct net *net = info->net;
	const struct nlattr *attr;
	struct nft_table *table;
	struct nft_ctx ctx;
	u32 flags = 0;
...

	err = -ENOMEM;
	table = kzalloc(sizeof(*table), GFP_KERNEL_ACCOUNT);
	if (table == NULL)
		goto err_kzalloc;
...
err_kzalloc:
	return err;```

Somehow it will still match GFP_KERNEL_ACCOUNT when I need GFP_KERNEL

it is a regex match on the flags argument so 'GFP_KERNEL' also matches for 'GFP_KERNEL_ACCOUNT', try something like "GFP_KERNEL$''' or "(GFP_KERNEL$)|(GFP_KERNEL|.*)" and see if that works

oh I see. So even the flag is regex. cool. thx!


Extra vertical space in two column list

Description
typst 0.11.1 (50115102)
I am not sure if the source of the bug is in the typst compiler or in the https://github.com/andreasKroepelin/polylux package.
#import "@preview/polylux:0.3.1": *

#import themes.simple: *
#show: simple-theme.with()

#slide[
== Title
#columns(2)[
+ #only(1)[airhdl] #uncover(2)[#text(red)[airhdl]]
+ AGWB
+ #only(1)[AutoFPGA] #uncover(2)[#text(red)[AutoFPGA]]
+ Cheby
+ Corsair
+ #only(1)[FPGA Vendors] #uncover(2)[#text(red)[FPGA Vendors]]
+ hdl_register
+ II & CII
+ IP_XACT
+ Opentitan Register Tool
+ #only(1)[Register Wizard] #uncover(2)[#text(red)[Register Wizard]]
+ RgGen
+ SystemRDL
+ vhdMMIO
+ wbgen2
+ Others (2)
]
]

Generated pdf:

As you can see, there is an extra vertical space between the item 11 and 12 on the first page.
Reproduction URL
No response
Operating system
Linux
Typst version

[ ] I am using the latest version of Typst

This is almost certainly an issue with polylux, so I'll close this for now.

Actually, I don't think this is a bug at all. uncover(2) means that the content is still there on the first slide, just hidden, while only(1) means that the content is only there on the first slide. That means that on the first slide, both texts are present in the item, and will overflow on the next line since they do not fit on a single line

You are right, thanks.


Homepage added to Cargo.toml

Let me know if this works !

@hiirrxnn I think we want to add the website to each of the Cargo.toml in each of the crates, for example here: https://github.com/apache/iceberg-rust/blob/b7031464dfd57dbfb9e872121377d3a6a6b401c5/crates/catalog/hms/Cargo.toml#L23-L27

Is it alright now ? I've done it in the way mentioned by the doc referenced here . Let me know if something has to be changed here .

Hi, @hiirrxnn There is another approach for this, please follow these steps:

You can add the home page info in Cargo.toml of workspace.
Then in Cargo.toml of each package, set the filed value  to homepage = {workspace = true}.

Here is a great example from cargo: https://doc.rust-lang.org/cargo/reference/workspaces.html#the-package-table
This way we don't need to repeat same thing for each package.

I have done that ! Is that what you meant ? Let me know if there's something wrong !

I have done that ! Is that what you meant ? Let me know if there's something wrong !

Yeah, exactly, thanks!
There are also several fields which are shared among all packages in a workspace:

version
edition
license
repository

Do you want to modify them together or we can do it in later prs, it's up to you.

I will start doing those other packages asap , but i think i should do that in a different pr as too much modified code in one pr might not be ideal . Please tell me how you think about this , otherwise i can do it in this pr as well !

Should i follow the exact same approach for all of them , in essence referring them from workspace Cargo.toml?

Should i follow the exact same approach for all of them , in essence referring them from workspace Cargo.toml?

Yes, thanks!

I will start doing those other packages asap , but i think i should do that in a different pr as too much modified code in one pr might not be ideal . Please tell me how you think about this , otherwise i can do it in this pr as well !

Cool, looking forward to your next pr!

Since this PR hadn't been merged yet , the new changes in new PR contains both original issue changes and new ones . Please check that out and let me know if something has to be changed !

I tried to resolve conflicts, but failed 😞

Seems duplicated with #160. How about we close this pr and focus on #160 only?

Thanks! It's better to run taplo fmt to format the toml files.

Good suggestion!


pdb-litemol viewing PDB file not working when resurce redirected via HTTP 302

pdb-litemol viewing PDB file not working when resurce redirected via HTTP 302.
This can be reproduced when trying to first view a PDB file from dropbox provider, where first touch downloads it to locally and exposes it via virtual folder WEBDAV interface.

Not reproduced in 17.05


Make it possible to build dpbench without having to install and build all included implementations

Currently, building dpbench requires installing all dependencies for each framework and implementation bundled in-tree. This includes the native dpcpp implementations.
We should make it possible to build and install dpbench with only the core infrastructure. It will make it much simpler for others to use the infrastructure and not have to install and build all benchmarks if they do not want to do so.

https://github.com/IntelPython/dpbench/pull/268 allows to build dpbench without SYCL(DPCPP).
We still need to upgrade infrastructure to skip frameworks if their dependencies are not installed.


Import libs

move some mosn interface define and some common packages into other repos.
if a user want to write a mosn filter extension, can import the lib project instead of mosn project.
new project:
github.com/mosn/pkg (mosn.io/pkg)
github.com/mosn/api (mosn.ip/api)

Codecov Report

Merging #955 into master will decrease coverage by 0.29%.
The diff coverage is 33.4%.

@@            Coverage Diff            @@
##           master     #955     +/-   ##
=========================================
- Coverage   55.55%   55.25%   -0.3%
=========================================
  Files         237      226     -11
  Lines       23877    23046    -831
=========================================
- Hits        13265    12735    -530
+ Misses       9398     9147    -251
+ Partials     1214     1164     -50

Impacted Files
Coverage Δ

pkg/upstream/healthcheck/session_checker.go
86.66% <ø> (ø)
:arrow_up:

pkg/istio/mixerclient/report_batch.go
100% <ø> (ø)
:arrow_up:

pkg/istio/control/http/report_data.go
0% <ø> (ø)
:arrow_up:

pkg/protocol/rpc/sofarpc/codec/boltv2.go
35.89% <ø> (ø)
:arrow_up:

pkg/config/config.go
56.25% <ø> (ø)
:arrow_up:

pkg/config/dumper.go
44.26% <ø> (ø)
:arrow_up:

pkg/filter/stream/commonrule/metrix/stat.go
91.83% <ø> (ø)
:arrow_up:

pkg/sync/workerpool.go
57.5% <ø> (ø)
:arrow_up:

pkg/api/v2/types.go
67.66% <ø> (ø)
:arrow_up:

pkg/mtls/sds/subscriber.go
56.92% <ø> (ø)
:arrow_up:

... and 94 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 4553e52...1f69869. Read the comment docs.


Getting the  element's tag name

Hi,
I pass nodes to different classes for special handling, I want each class to check if the correct tag type has been provided. I can check if required attributes are there with hasAttr but how do I check if the correct tag is provided in the query?
I think it is possible to get tag name by using the dom object associated with the node but that would somehow kill the purpose. How about adding a function for this?
Thanks

Not really, FluentDOM\Query is a node list, just like jQuery. If you're working with a single node, using the extended DOM node objects is not a bad idea. If you iterate a FluentDOM\Query the items are node objects. FluentDOM\Element even provides ArrayAccess for the attributes.
See: https://github.com/FluentDOM/FluentDOM/wiki/Element-ArrayAccess
A node name is complex. It is actually 3 properties. DOMNode::$nodeName,  DOMNode::$localName and DOMNode::$namespaceURI.  The node name is the tag name including the namespace prefix. It is not stable (the namespace prefix can change and is optional). To validate a node you should verify the local name and the namespace URI.
if ($node->namespaceURI= 'urn:foo' && $node->localName = 'foo') {
  ...
}

So I suggesting working with the element nodes and only putting them back into a FluentDOM\Query if you really need the traversing/manipulation API again.
Additionally FluentDOM\Query::is() and FluentDOM\Query::filter() could be used to verify the condition.

Thanks Thomas, but I still believe adding functions for getting full name or local name to your query/element object would be very useful. Something like this:
$fd->find('//div')->children()->first()->getlocalTagName()

Most XML documents used in the web for casual porpuses don't have namespaces. Including, HTML.

Why not just:
$fd->find('//div')->children()[0]->localName
or as a validation
$fd->find('//div')->children()->first()->is('local-name() = "span"')
The jQuery API is large and a little messy. So I am feeling a little queasy about adding more methods. Especially if they are not in jQuery.

I understand your feeling ... but ... you know ... people care about methods that are not there, not the extra methods that they do not use. It's also quite a useful feature. And "children()[0]->localName" is not as elegant as "getLocalName()".
Anyway, it's your library and you're in charge. Do what you believe is the best...

Well it is FluentDOM($node)[0]->localName vs FluentDOM($node)->getLocalName(). The difference is not that big.


jsk_apc: 0.2.0-1 in 'indigo/distribution.yaml' [bloom]

Increasing version of package(s) in repository jsk_apc to 0.2.0-1:

upstream repository: https://github.com/start-jsk/jsk_apc.git
release repository: https://github.com/tork-a/jsk_apc-release.git
distro file: indigo/distribution.yaml
bloom version: 0.5.21
previous version for package: null

jsk_2015_05_baxter_apc
* Update APC 2015 for Advanced Robtoics Paper

    * Update rvizconfig for segmentation in bin
    * Update README for pick-and-verify
    * Know gripper status in control
    * Does not generate json when exists
    * Update json file with more jsons
    * Use verify-object for if grasped with point cloud
    * More jsons for pick-and-verify experiments
    * Add json files for 2016_ar
    * Fix number of trials
    * Abondont oreo
    * Update layout1
    * Update rviz config
    * Improve pick for vertical objects
    * Abondon difficult objects
    * Fix return traj speed
    * Improve picking motion
    * Large queue size
    * Use machine
    * Launch kinect2 on setup
    * Rename setup files
    * Larger queue_size
    * Swap kinect2
    * Improve return motion
    * Add limit
    * Update eps
    * Initialize tolerance
    * Stop grasp if needed
    * Remove wall picking avoidance
    * Revert avoid shelf pose
    * Euclid k cluster in main.launch
    * Fix pick-object for grasped
    * Unregister in euclid_k_clustering
    * Add catkin_INCLUDE_DIRS for std_msgs/Bool.h
    * Disable test for recognition
    * Fix roslaunch args for recognition test
    * Pass manager as argument
    * Pass manager as argument for torso
    * Update segmentation in bin gtol
    * Add layout1.json
    * Stop grasp unless grasped in bin
    * Update rviz
    * Update kinect2_head tf
    * Stable euclid k clustering
    * Detect object in bin with size feature
    * Clear params for euclid clustering
    * Stat object sizes
    * Approach to center of mass
    * EuclidKClustering with number of objects in bin
    * Use kinect2_torso for verification
    * Faster verify picked-object with pick-and-verify
    * Each view hand pose
    * In-hand object recognition with kinect2_torso
    * Input image argument for recognition_in_hand
    * Update kinect2_torso_rgb_optical_frame tf
    * More queue_size in extract_indices for bin
    * Update how to launch gazebo for APC2015

* Update for real demo on Jan 2016
  * Upgrade baxter_simulator 0.9.0 -> <IP_ADDRESS>
  * Add gazebo vacuum gripper plugin
  * Add movie of real demo
  * Documentation how to run demo on real and sim world
  * Update demo_1.json
  * Do not verify_object unless grasping objects
  * Update real_demo.rviz
  * Remove no need tmp baxter_common version specification
  * Add README for jsk_2015_05_baxter_apc
  * Use jsk_recognition_msgs/ClassificationResult for color_hist
  * Fix wait-for-opposite-arm
  * Add sample of picking with clustering points
  * Update color_histogram object recognition for multi regions
  * Use boost_object_recognition in object_recognition
  * Update boost object recognition as transport
  * Fix color_object_matcher as transport
  * Boost object recognition
  * [jsk_2015_05_baxter_apc] Add place-object methodModified:
  - jsk_2015_05_baxter_apc/euslisp/jsk_2015_05_baxter_apc/baxter-interface.l

    * Launch visualize_json.py
    * Add queue_size option for recognitions
    * Update demo_1.json
    * Add option of queue_size
    * Update demo-1 json
    * Add INPUT_DEPTH arg for torso kinect2
    * Update tf of kinect2 torso
    * Fix opencl error on kinect2 head
    * Rename function name object_list -> get_object_list
    * Add demo_1.json
      Added:
      - jsk_2015_05_baxter_apc/json/demo_1.json
    * Respawn object recognition nodes
      Modified:
      - jsk_2015_05_baxter_apc/launch/include/object_recognition.launch
    * Longer spin off for object grasped
      Modified:
      - jsk_2015_05_baxter_apc/euslisp/jsk_2015_05_baxter_apc/baxter-interface.l
      - jsk_2015_05_baxter_apc/euslisp/main.l
    * Add picking method with solidity rag merging and its example
    * Launch solidity_rag_merge for grasp planning with vacuum gripper
    * Update kinect2_head position on 2016-01-27
    * Update self filter padding
    * Remove kiva_pod joint_states
    * Update kinect2_torso tf
    * Add in_bin_vision.launch
    * Update ik to bin
    * Faster verify pose
    * [jsk_2015_05_baxter_apc] Do not depends on mahotas
    * [jsk_2015_05_baxter_apc] Extract the cached test_data
    * [jsk_2015_05_baxter_apc] Fix broken topic names
    * [jsk_2015_05_baxter_apc] Test time-limit 60 -> 360
    * [jsk_2015_05_baxter_apc] Add jsk_tools as test_depend
    * [jsk_2015_05_baxter_apc] Use cached test_data
    * [jsk_2015_05_baxter_apc] Use bof_object_matcher in jsk_perception
    * [jsk_2015_05_baxter_apc] Real demo rviz config
    * Add retry 3 for recognition test by BOF
    * Update gazebo_demo.rviz
    * Add fold/reset/untuck pose script
    * Add FIXME
    * Minor change of apc_gazebo world
    * Update rviz config for gazebo demo
    * Fix typo
    * Add rviz config for gazebo
    * Add visualization script on rviz
    * Put objects in all bins
    * [jsk_2015_05_baxter_apc] Add order-bin and stage to the world
    * [jsk_2015_05_baxter_apc] Add paper mate
    * Remove no need static
    * [jsk_2015_05_baxter_apc] Fixed end effector and baxter base
    * Fix eus for gazebo
    * [jsk_2015_05_baxter_apc] Move interactive_marker config
    * [jsk_2015_05_baxter_apc] Fix transform world to base invalid arg
    * [jsk_2015_05_baxter_apc] Set camera_name
    * Adjust kinect
    * [jsk_2015_05_baxter_apc] Put kiva correct place and safety glass also
    * [jsk_2015_05_baxter_apc] Fix typo
    * Add left state publisher
    * Set /apc_on_gazebo param
    * [jsk_2015_05_baxter_apc] Rename to baxter_sim.launch
    * [jsk_2015_05_baxter_apc] Add gazebo mode vacuum gripper
    * Update test_data
    * [jsk_2015_05_baxter_apc] Refactr urdf files
    * [jsk_2015_05_baxter_apc] Add fold-pose-back.l
    * [jsk_2015_05_baxter_apc] Add right_end_effector and vacuum_gripper
    * Recognize bins at first
    * Adjust kiva pos
    * Enhance picking
    * Fix bbox x, z comparison
    * Recognize bins at first
    * Adjust kiva pos
    * Enhance picking
    * Fix bbox x, z comparison
    * [jsk_2015_05_baxter_apc] Pass timestamp to recognition method
    * [jsk_2015_05_baxter_apc] Adjust place-object-pose
    * [jsk_2015_05_baxter_apc] Adjust place-object-pose
    * Use robot_self_filter package
    * [jsk_2015_05_baxter_apc] Remove approximate_sync (no need)
      This is no need with change in
      PR2/pr2_navigation/pr2_navigation_self_filter
      Related to https://github.com/PR2/pr2_navigation/pull/24

* Recognition in bin for APC2015
  * [jsk_2015_05_baxter_apc] Run main as script
  * [jsk_2015_05_baxter_apc] Add script to move arm and do verify pose
  * Add timeout
  * Add mahotas as run_depend
  * Remove duplicate rostest declaration
  * Add gdown as run_depend
  * Run depends on imagesift
  * [jsk_2015_05_baxter_apc] Run test actually
  * [jsk_2015_05_baxter_apc] Make color_object_matcher as transport
  * [jsk_2015_05_baxter_apc] Test recognitioin in hand
  * Rename scripts -> node_scripts
  * [jsk_2015_05_baxter_apc] Update kinect2_torso tf
  * [jsk_2015_05_baxter_apc] fix approach to object
  * [jsk_2015_05_baxter_apc] Fix return object avoid shelf
  * [jsk_2015_05_baxter_apc] Fix typo
  * [jsk_2015_05_baxter_apc] Custom baxter urdf for gazebo world
  * jsk_2015_apc_common -> jsk_apc2015_common
  * Add catkin_lint
  * [jsk_2015_05_baxter_apc] Fix return height
  * [jsk_2015_05_baxter_apc] Work :try-to-pick
  * [jsk_2015_05_baxter_apc] Go to wait after all orders
  * [jsk_2015_05_baxter_apc] Add doura.launch
  * [jsk_2015_05_baxter_apc] Update segmentation_in_bin.rviz
  * [jsk_2015_05_baxter_apc] Remove self filter from baxter.launch
  * [jsk_2015_05_baxter_apc] Make faster localization in handuse self_filter in bottom

    * [jsk_2015_05_baxter_apc] Specify max_depth in kinect2_bridge.launch
      Remove points_reachable
    * Revert "[jsk_2015_05_baxter_apc] filter by x"
      This reverts commit 590ad8d96b56a72ba47eb5bd1864b51657ff56df.
    * [jsk_2015_05_baxter_apc] Visualize objects and bins
    * [jsk_2015_05_baxter_apc] Fix :get-next-order
    * [jsk_2015_05_baxter_apc] filter by x
    * [jsk_2015_05_baxter_apc] Split segmentation in bin for atof and gtol
    * [jsk_2015_05_baxter_apc] Add kiva_pod_state.launch
    * [jsk_2015_05_baxter_apc] See same package config dir
    * [jsk_2015_05_baxter_apc] Add rvizconfig to adjust kiva pod
    * [jsk_2015_05_baxter_apc] Update box position for g to l
    * [jsk_2015_05_baxter_apc] Segmentation for A to F
    * [jsk_2015_05_baxter_apc] 1.2 passthrough z
    * [jsk_2015_05_baxter_apc] Use self_filtered points
    * [jsk_2015_05_baxter_apc] min_size 200 -> 500
    * [jsk_2015_05_baxter_apc] Initialize param in main.launch
    * [jsk_2015_05_baxter_apc] Stop using kiva_pod_filter
    * [jsk_2015_05_baxter_apc] Fix verify-object
    * [jsk_2015_05_baxter_apc] Remove timeout in recognize-object-in-hand
    * [jsk_2015_05_baxter_apc] pick wall near object
    * [jsk_2015_05_baxter_apc] stop-grasp to place
    * [jsk_2015_05_baxter_apc] middle is right work
    * [jsk_2015_05_baxter_apc] left_process -> left_hand
    * [jsk_2015_05_baxter_apc] typo
    * [jsk_2015_05_baxter_apc] typo
    * [jsk_2015_05_baxter_apc] typo
    * [jsk_2015_05_baxter_apc] Fix typo
    * [jsk_2015_05_baxter_apc] namespace change
    * [jsk_2015_05_baxter_apc] Add :try-to-pick-in-bin
    * [jsk_2015_05_baxter_apc] Add :try-to-pick-object
    * [jsk_2015_05_baxter_apc] Archive test file
    * [jsk_2015_05_baxter_apc] Archive test file
    * [jsk_2015_05_baxter_apc] Archive test file
    * [jsk_2015_05_baxter_apc] Fix main params
    * [jsk_2015_05_baxter_apc] z direction pick object
    * [jsk_2015_05_baxter_apc] Stop using one-shot-publish
    * [jsk_2015_05_baxter_apc] Fix include path
    * [jsk_2015_05_baxter_apc] Fix tf-transform
    * [jsk_2015_05_baxter_apc] :recognize-object-in-bin topic change
    * [jsk_2015_05_baxter_apc] :recognize-bin-boxes topic change
    * [jsk_2015_05_baxter_apc] Update setup.launch for latest software
    * [jsk_2015_05_baxter_apc] Refactor baxter.launch
    * [jsk_2015_05_baxter_apc] Add segmentation_in_bin.launch
    * [jsk_2015_05_baxter_apc] Remove object_segmentation.launch
    * [jsk_2015_05_baxter_apc] Add segmentation_in_hand.launch
    * [jsk_2015_05_baxter_apc] Move deprecated launch files
    * [jsk_2015_05_baxter_apc] Move meshes location
    * [jsk_2015_05_baxter_apc] Remove upload_baxter.launch
    * [jsk_2015_05_baxter_apc] Launch vacuum_gripper in baxter.launch
    * [jsk_2015_05_baxter_apc] Rename to vacuum_gripper.launch
    * [jsk_2015_05_baxter_apc] Add self_filter.launch
    * [jsk_2015_05_baxter_apc] Filter reachable clouds
    * [jsk_2015_05_baxter_apc] Remove base_footprint
    * [jsk_2015_05_baxter_apc] Add jsk_rqt_plugins to run_depend
    * [jsk_2015_05_baxter_apc] Archive motion codes
    * [jsk_2015_05_baxter_apc] Archive setup_params.py
    * [jsk_2015_05_baxter_apc] Refactor mainloop
    * [jsk_2015_05_baxter_apc] Remove speak-en
    * [jsk_2015_05_baxter_apc] Use one-shot-subscribe to get bin_contents
    * [jsk_2015_05_baxter_apc] Use one-shot-subscribe in :get-work-orders
    * [jsk_2015_05_baxter_apc] Use one-shot-subscribe in recognize-objects-in-bin
    * [jsk_2015_05_baxter_apc] arm-symbol-to-str -> arm-symbol2str
    * [jsk_2015_05_baxter_apc] Use one-shot-publish to control gripper
    * [jsk_2015_05_baxter_apc] Add _ prefix for slots
    * [jsk_2015_05_baxter_apc] Use one-shot-subscribe for recognize-bin-boxes
    * [jsk_2015_05_baxter_apc] Add get-a-work-order
    * [jsk_2015_05_baxter_apc] Add :wait-for-user-input-to-start
    * [jsk_2015_05_baxter_apc] symbol2str, str2symbol
    * [jsk_2015_05_baxter_apc] Add :get-target-bin
    * [jsk_2015_05_baxter_apc] kinect2 -> kinect2_head
    * [jsk_2015_05_baxter_apc] Add concatenate_clouds.launch
    * [jsk_2015_05_baxter_apc] Remove kinect2_tf.launch
    * [jsk_2015_05_baxter_apc] Archive robot-recognition.l
    * [jsk_2015_05_baxter_apc] Methodize real-sim-end-coords-diff
    * [jsk_2015_05_baxter_apc] Rename robot-main.l -> main.l
    * [jsk_2015_05_baxter_apc] Methodize graspingp
    * [jsk_2015_05_baxter_apc] Methodize verify-object
    * [jsk_2015_05_baxter_apc] Remove robot-init.l
    * [jsk_2015_05_baxter_apc] Remove utils.l and robot-utils.l
    * [jsk_2015_05_baxter_apc] Adjust kinect2_head tf
    * Add object_segmentation.launch
    * Update kinect2 torso tf
    * Use cpu for kinect2 torso
    * [jsk_2015_05_baxter_apc] Add roslaunch for kinect2_head
    * arg default -> value
    * [jsk_2015_05_baxter_apc] Add iai_kinect2 in rosinstall
    * [jsk_2015_05_baxter_apc] roslaunch for kinect2_torso
      Closes #907 <https://github.com/start-jsk/jsk_apc/issues/907>
      Closes #909 <https://github.com/start-jsk/jsk_apc/issues/909>
    * [jsk_2015_05_baxter_apc] Error catch when object cloud is not found
    * [jsk_2015_05_baxter_apc] Fix test for new *ri* :pick-object
    * [jsk_2015_05_baxter_apc] Add pick-object method
    * Flexible env var for APC shelf model for Gazebo
    * Pick object from object :z axis
    * Improve ik for bin entrance
    * [jsk_2015_05_baxter_apc] Remove robot-input
    * Add :avoid-shelf-pose to avoid shelf collision
    * Add :arm-symbol-to-str
    * (:ik-avs->object-in-bin) to pick object
    * Recognize bin boxes once and memorize these position
    * Refactor: Remove baxter :locate from robot-init
    * bin-entrance is half of dim-x distance from the center
    * [jsk_2015_05_baxter_apc] Remove update-score
    * [jsk_2015_05_baxter_apc] Remove robot-communication.l
    * [jsk_2015_05_baxter_apc] Remove (return-object)
    * Refactor: Remove orderbin
    * Refactor: Remove visualization lines
    * Refactor: Remove *tfb*
    * (move-for-verification) -> (send *ri* :move-arm-body->head-view-point)
    * [jsk_2015_05_baxter_apc] remove (look-at-other-side)
    * [jsk_2015_05_baxter_apc] remove (look-at-other-side)
    * [jsk_2015_05_baxter_apc] Remove (rotate-wrist)
    * (place-object) -> (send *ri* :move-arm-body->order-bin)
    * (send *ri* :move-to-bin) -> (send *ri* :move-arm-body->bin)
    * [jsk_2015_05_baxter_apc] Use :hard-coded-pose method
    * [jsk_2015_05_baxter_apc] Use :l/r-reverse
    * [jsk_2015_05_baxter_apc] Add .gitignore to test dir
    * [jsk_2015_05_baxter_apc] Add TODO for baxter location
    * [jsk_2015_05_baxter_apc] Download rosbag and make the test passes
    * [jsk_2015_05_baxter_apc] Remove :untuck-pose
    * [jsk_2015_05_baxter_apc] Fix bin-box using copy-object
    * [jsk_2015_05_baxter_apc] Remove move-to-target-bin function
    * [jsk_2015_05_baxter_apc] Remove position decision tool
    * [jsk_2015_05_baxter_apc] Complete :move-to-bin method
    * [jsk_2015_05_baxter_apc] Remove untuck-pose
    * [jsk_2015_05_baxter_apc] Remove fold-to-keep-object-av
    * [jsk_2015_05_baxter_apc] (load "..") -> (require "..")
    * [jsk_2015_05_baxter_apc] Refactor: (apc-init)
    * [jsk_2015_05_baxter_apc] Refactor: remove (fold-pose-back)
    * [jsk_2015_05_baxter_apc] Remove fold-pose-* functions
    * [jsk_2015_05_baxter_apc] Add :fold-pose-* methods
    * [jsk_2015_05_baxter_apc] fix path and name changed class
    * [jsk_2015_05_baxter_apc] Add subclasses
    * [jsk_2015_05_baxter_apc] robot-interface.l -> baxter-interface.l
    * [jsk_2015_05_baxter_apc] Add baxter-interface.l
    * [jsk_2015_05_baxter_apc] move model
    * [jsk_2015_05_baxter_apc] Move rosinstall to package dir
    * [jsk_2015_05_baxter_apc] run_depend jsk_pcl_ros
    * [jsk_2015_05_baxter_apc] Use jsk_2015_apc_common.data:object_list
    * Move mesh files jsk_2015_05_baxter_apc -> jsk_2015_apc_common
    * Adjust kinect2 tf and baxter custom link after calibration of kinect2
    * Publish tf's at launch of baxter.launch
    * Rename pkg: jsk_2014_picking_challenge -> jsk_2015_05_baxter_apc

* Contributors: Isaac IY Saito, Kentaro Wada

jsk_2016_01_baxter_apc
* Try APC2016 with program for APC2015
  * Json file for picking: Layout1
  * Add Shared files for jsk_2016_01_baxter_apcModified:
  - jsk_2016_01_baxter_apc/README.md
* Semi for 2015B4
  * apc_pick modified
  * json files for simulation added
  * documentation added
  * add interface_generator
  * [2016 apc] rename launch file
  * change baxter software version
  * rm json file
  * stow recognition modified
  * [2016apc] modify stow recognition launch file
  * [2016apc] modify viz-recog.l and add json
  * [2016apc] add stow recognition launch
  * [2016apc] add visualize program for recognition
  * Add kinect2_external
  * [2016 apc] modify stow_kiva.world.erb for stow tasks
  * add initial camera position
  * add kiva_stow and baxter_stow
  * add ruby to build depend for erb
  * add jsk_2016_01_baxter_apc
* Contributors: Heecheol Kim, Kei Okada, Kentaro Wada, Shingo Kitagawa, Masahiro Bando

jsk_apc
* jsk_2015_apc_common -> jsk_apc2015_common
* [jsk_apc] Add jsk_2015_apc_common to run_depend
* [jsk_apc] Add Metapackage
* Contributors: Kentaro Wada

jsk_apc2015_common
* Fix for APC2016
  * Dynamic visualization for given number of bin_contentsModified:
  - jsk_apc2015_common/src/jsk_apc2015_common/__init__.py
* Fix for ONEDO 2015 December
  * Visualize bin_contents and work_order with jsonModified:
  - jsk_apc2015_common/src/jsk_apc2015_common/__init__.py
  Added:
  - jsk_apc2015_common/node_scripts/visualize_json.py
  - jsk_apc2015_common/src/jsk_apc2015_common/util.py

    * Use RosPack for data file
    * Rename function name object_list -> get_object_list
    * [jsk_apc2015_common] Add object image files
      Added:
      - jsk_apc2015_common/models/champion_copper_plus_spark_plug/image.jpg
      - jsk_apc2015_common/models/cheezit_big_original/image.jpg
      - jsk_apc2015_common/models/crayola_64_ct/image.jpg
      - jsk_apc2015_common/models/dr_browns_bottle_brush/image.jpg
      - jsk_apc2015_common/models/elmers_washable_no_run_school_glue/image.jpg
      - jsk_apc2015_common/models/expo_dry_erase_board_eraser/image.jpg
      - jsk_apc2015_common/models/feline_greenies_dental_treats/image.jpg
      - jsk_apc2015_common/models/first_years_take_and_toss_straw_cup/image.jpg
      - jsk_apc2015_common/models/genuine_joe_plastic_stir_sticks/image.jpg
      - jsk_apc2015_common/models/highland_6539_self_stick_notes/image.jpg
      - jsk_apc2015_common/models/kiva_pod/image.jpg
      - jsk_apc2015_common/models/kong_air_dog_squeakair_tennis_ball/image.jpg
      - jsk_apc2015_common/models/kong_duck_dog_toy/image.jpg
      - jsk_apc2015_common/models/kong_sitting_frog_dog_toy/image.jpg
      - jsk_apc2015_common/models/kyjen_squeakin_eggs_plush_puppies/image.jpg
      - jsk_apc2015_common/models/laugh_out_loud_joke_book/image.jpg
      - jsk_apc2015_common/models/mark_twain_huckleberry_finn/image.jpg
      - jsk_apc2015_common/models/mead_index_cards/image.jpg
      - jsk_apc2015_common/models/mommys_helper_outlet_plugs/image.jpg
      - jsk_apc2015_common/models/munchkin_white_hot_duck_bath_toy/image.jpg
      - jsk_apc2015_common/models/oreo_mega_stuf/image.jpg
      - jsk_apc2015_common/models/paper_mate_12_count_mirado_black_warrior/image.jpg
      - jsk_apc2015_common/models/rolodex_jumbo_pencil_cup/image.jpg
      - jsk_apc2015_common/models/safety_works_safety_glasses/image.jpg
      - jsk_apc2015_common/models/sharpie_accent_tank_style_highlighters/image.jpg
      - jsk_apc2015_common/models/stanley_66_052/image.jpg
    * Fix collision of apc_order_bin model
    * Add black stage
    * [jsk_apc2015_common] Add apc order bin
    * Add f2.json
    * [jsk_2015_05_baxter_apc] Light mass param
    * less slippely
    * [jsk_apc2015_common] Fix texture png name for mesh models
    * [jsk_apc2015_common] Lighter objects
    * [jsk_apc2015_common] Test jsk_apc2015_common python package
    * [jsk_apc2015_common] Refactor python package
    * [jsk_apc2015_common] Rename to a.json
    * [jsk_apc2015_common] F2 G1 json
    * jsk_2015_apc_common -> jsk_apc2015_common
    * Add catkin_lint
    * [jsk_2015_apc_common] Add credit for gazebo models
    * [jsk_2015_apc_common] Add gazebo model files
    * [jsk_2015_apc_common] Adjust kiva pod
    * [jsk_2015_apc_common] Update json
    * [jsk_2015_05_baxter_apc] Fix main params
    * [jsk_2015_apc_common] Adjust kiva_pod_interactive_marker
    * [jsk_2015_05_baxter_apc] Remove object_segmentation.launch
    * [jsk_2015_apc_common] Update in_bin_each_object.launch
    * [jsk_2015_apc_common] Update in_bin_atof.launch
    * [jsk_2015_apc_common] Update in_bin_atof.launch
    * [jsk_2015_apc_common] Update in_kiva_pod.launch
    * [jsk_2015_apc_common] Add kiva_pod_filter
    * [jsk_2015_apc_common] Adjust kiva_pod
    * [jsk_2015_apc_common] Add install scripts for data
    * [jsk_2015_apc_common] Rename download script
    * [jsk_2015_apc_common] Add bof object recognition test script
    * [jsk_2015_apc_common] Create trained_data/ and dataset/
    * Add option -O create_mask_applied_dataset.py
    * Add download script and README
    * Add script to create mask applied dataset
    * Add arg in roslaunch files
    * [jsk_2015_apc_common] Keep vision timestamp even if transformed
    * [jsk_2015_apc_common] Increase max_size for object cloud
    * [jsk_2015_apc_common] Fix model path for kiva_pod_filter
    * [jsk_2015_apc_common] gazebo_ros to pass models path to gazebo
    * [jsk_2015_apc_common] kiva_pod -> models/kiva_pod
    * [jsk_2015_apc_common] Move kiva_pod to models dir
    * Revert "[jsk_2015_apc_common] Move kiva_pod model files to urdf/ & meshes/"
      This reverts commit 91a818229d2b6e9faa66912bbbef7370941d30f5.
    * [jsk_2015_apc_common] Move kiva_pod model files to urdf/ & meshes/
    * [jsk_2015_apc_common] keep_organized for each cloud in bin
    * [jsk_2015_apc_common] Change launch syntax arg should be capital
    * [jsk_2015_apc_common] Object clouds in each bin
    * [jsk_2015_apc_common] Add object_segmentation.launch
    * [jsk_2015_apc_common] Segmentation of objects in bin_a
    * [jsk_2015_apc_common] stop creating manager in_bin_atof.launch
    * [jsk_2015_apc_common] Create root topics
    * [jsk_2015_apc_common] Extract pc in each a-f bin
    * [jsk_2015_apc_common] Some ns change of in_kiva_pod.launch
    * [jsk_2015_apc_common] Remap to output
    * [jsk_2015_apc_common] Clip clouds in kiva pod
    * [jsk_2015_apc_common] Add jsk_demo_common as run_depend
    * [jsk_2015_apc_common] Filter kiva pod pointcloud
    * [jsk_2015_apc_common] Add kiva_pod urdf model
    * [jsk_2015_apc_common] Add kiva_pod model
    * [jsk_2015_apc_common] Add python package
    * Move mesh files jsk_2015_05_baxter_apc -> jsk_2015_apc_common
    * Add jsk_2015_apc_common for common programs

* Contributors: Kentaro Wada

jsk_apc2016_common
* Initialize common package for APC2016
  * Fix version number of jsk_apc2016_common
  * Add object data for APC2016
* Contributors: Kentaro Wada

I had
 %YAML 1.1
  # ROS distribution file
 -# see REP 143: http://ros.org/reps/rep-0143.html
 +# see REP 141: http://ros.org/reps/rep-0141.html

again...


Task Module in Teams not working in IOS Using Bot framework

Github issues for C# /JS / Java/ Python should be used for bugs and feature requests. Use Stack Overflow for general "how-to" questions.
Sample information

teams-task-module
.net core
Bot Framework V4

Describe the bug
I am showing the Task module on click on the adaptive card button. It is working fine in the Teams Desktop application and in the android Teams Mobile app but it is not working in the IOS Teams Mobile app.
Task module is not opening in IOS on click on the button.
This is the iframe that I am displaying on Task Module on the button click and a form is showing on the Task module in Android Teams app and Desktop app.
<iframe width="850px" height="725px" src="https://forms.office.com/Pages/****" frameborder="0" marginheight="0" marginwidth="0" max-width="100%" sandbox="allow-forms allow-modals allow-orientation-lock allow-popups allow-same-origin allow-scripts" scrolling="no" style="border: none; max-width: 100%; max-height: 100vh" allowfullscreen mozallowfullscreen msallowfullscreen webkitallowfullscreen></iframe>

This is the adaptive card I am using
{"type":"AdaptiveCard","version":"1.0","body":[{"type":"TextBlock","text":"Click on the below button to open task module","size":"Medium","weight":"Bolder"}],"$schema":"http://adaptivecards.io/schemas/adaptive-card.json","actions":[{"type":"Action.Submit","title":"Open Task Module","data":{"msteams":{"type":"task/fetch"}}}]}

Expected behavior
Task module should open in IOS Teams Mobile app as well
Additional context

Adaptive Cards on Task module are also not working in the IOS Teams app and working fine for Android and Desktop.
In Desktop application, it is showing the Microsoft form to fill the details on Task module whereas, in the Android Teams app, It is not showing the Microsoft form. Please find the Screenshot

Hello All, Any update on this because one of our features is dependent on Task module.
Thanks.

This looks like it needs to be assigned to the Teams folks, as it's in their module. @clearab Can you please assign/transfer this as needed?

We currently believe there is a regression in the iOS app - the dev team is investigation.

The fix for this bug has been coded and tested and will be rolling through our deployment rings over the next few weeks.

@clearab What is the status on this?

The fix for this has been deployed, and is rolling through the Teams deployment rings. It should be available as part of the July iOS build. Please contact the Teams developer support team if the issue persists (https://docs.microsoft.com/en-us/microsoftteams/platform/feedback)

Hi
with update V2.0.15 I able to see it working on my iPhone X. Will it be working for all iPhone devices on which this version is installed?
can you please confirmed once
thanks ,
sujit

Hi,
I am also facing above issue : "Task Module not working using bot framework" in latest teams app (version 4.7 to 4.8.1)on ios mobile devices.
Task module not opening in chatbot using adaptive card button, and it is giving below error:
"msrest.exceptions.DeserializationError: Unable to deserialize to object: type, AttributeError: 'str' object has no attribute 'get'".
I am using Python Bot Framework SDK.


Throttle operator

Hi there,
great to watch your progress with v2 and I already saw, that you are about to integrate Qt again.
I would have another request for an operator: this time it is "throttle".
Once Qt and throttle is there, I will switch to RppV2 and serve as tester :)
Thanks again and best regards!

Hi @victimsnino,
Ok, let me explain the difference.
'debounce' emits only after a particular time span has passed without another source emission.
'throttle' emits immediately but then ignores subsequent source emissions for a particular time span, then repeats this process.
You can also check:
https://rxjs.dev/api/operators/debounce
https://rxjs.dev/api/operators/throttle

@mincequi, everything is ready =)


How to get rid of "vscode-icons has detected conflicting project icons"?

[x] I'm sure this issue is not a duplicate.

I don't use any other folder icon set except of the default single icon for all the folders. For that I've configured my project to use it in .vscode/settings.json:
{
  "vsicons.presets.foldersAllDefaultIcon": true
}

(It's in my global settings.json as well)

Yet, whenever I open a project I see a message, again and again:

which is not even relevant because my project is neither Angular not NestJS one.
Why do I see this message and how to get rid of it?

@OnkelTem not sure what's going on, tbh. Normally, this message only appears if somehow you have any of these dependencies in your project. Let me look at it with more detail and I'll come back to you. Unfortunately, I'm a little busy these days so I'm not sure how quick I will be with the support. :(

@robertohuertasm Sure, take your time. If you need more information I can provide it!


Support Chart: Add daemonset to install GPU drivers to nodes

This PR adds a template file to the support chart that creates a daemonset for installing the Nvidia device plugin for GPU nodes and places it behind a flag. The config is taken from these Azure docs: https://docs.microsoft.com/en-us/azure/aks/gpu-cluster#manually-install-the-nvidia-device-plugin
I have also updated CarbonPlan's Azure config to enable this in their support namespace, but haven't tested it yet.

k8s-device-plugin vs driver-installer
I don't think this is a plugin to install a driver, but you need another DaemonSet for that. You typically need two daemonsets. One makes sure that a node starting up with a GPU is exposing the GPU and couples with k8s to have a GPU or similar, perhaps also ensure the node isn't considered ready until things are setup. Another daemonset typically installs drivers on the node, and you can choose what driver version etc as well.
For GPU setup to work, I think you will need both daemonsets.
While I think its quite clear that the driver installer installs the graphics card driver, it would be great to have clarity on what specifically the device plugin does and not just vaguely understand it.
I have used https://github.com/NVIDIA/k8s-device-plugin in GKE and AWS clusters, but I have no GPU experience on Azure. I wonder if you really need the Azure specific thing or can work with the nvidia-general thing.
Googling some I found these nvidia-driver-installer links:

https://github.com/GoogleCloudPlatform/container-engine-accelerators/blob/master/nvidia-driver-installer/ubuntu/daemonset.yaml

Related - eksctl installation
See https://github.com/2i2c-org/infrastructure/pull/436/files#diff-2913cb40ae1ad80f097b0f052b51771f17cde8d998b99b6bb924e8e0b18bf36fR232-R302
About tolerating dedicated user nodes
You want the device plugin to run also on the dedicated user nodes if the cluster has such. To do that, you need to have a toleration for it. I'll make a code suggestion about this.

Nice @sgibson91! I think the only concrete action point I have is to update a deployer script configuration schema if there were such in place for what configuration is allowed to pass to it.
Oh... wait... You added something to the support chart configuration, not the deployer script configuration... I assume there isn't a schema for that helm chart? Then this LGTM.

After fixing a small typo, this deployed successfully to the support namespace.
Now what I think I'll do is the following:

Hold off on merging this for now
Start a new PR to add the GPU option to JupyterHub
Deploy that to staging
Test and debug from there


Followed docs - reset share - what do?

resetShareIntent  - no idea what this is used for.  please explain

 const { hasShareIntent, shareIntent, resetShareIntent, error } = useShareIntent();

when you received a share intent, hasShareIntent is true and  shareIntent got the intent data.
when calling resetShareIntent we set hasShareIntent to false and shareIntent to null.
it's usefull to change your UI without restarting your app or with an external state.

i got the code to work.   However when I share say text from an app into my
app - i see a FLASH of a dialog box that auto disappears before my app
comes up with the shared text.
This flash dialog box is not my code.   It appears to be your code?  Is
it?   How make it not flash up?
On Tue, Jun 25, 2024 at 1:43 AM Anselme Chorein @.***>
wrote:

const { hasShareIntent, shareIntent, resetShareIntent, error } = useShareIntent();
when you received a share intent, hasShareIntent is true and shareIntent
got the intent data.
when calling resetShareIntent we set hasShareIntent to false and
shareIntent to null.
it's usefull to change your UI without restarting your app or with an
external state.
—
Reply to this email directly, view it on GitHub
https://github.com/achorein/expo-share-intent/issues/75#issuecomment-2188324592,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABS6UT7AERDXMPOCKLYBNHDZJEUTJAVCNFSM6AAAAABJ2K7QT6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBYGMZDINJZGI
.
You are receiving this because you authored the thread.Message ID:
@.***>


add no_bos_eos mode in sentencepiece and llama tokenizers

What does this PR do? Please describe:
Add no_bos_eos mode in sentencepiece tokenizer and llama tokenizer.
Fixes #{issue number}
Does your PR introduce any breaking changes? If yes, please list them:
List of all backwards-incompatible changes.
Check list:

[ ] Was the content of this PR discussed and approved via a GitHub issue? (no need for typos or documentation improvements)
[x] Did you read the contributor guideline?
[x] Did you make sure that your PR does only one thing instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests?
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (no need for typos, documentation, or minor internal changes)

LGTM, but curious, any reason for not using create_raw_tokenizer() if we don't want any prefix/suffix symbols?

Oh sorry I didn't saw there is such method :D (Do you mean create_raw_encoder btw ?)

Oh sorry I didn't saw there is such method :D (Do you mean create_raw_encoder btw ?) So I think yeah this is not necessary

Oh right, I mean create_raw_encoder :)

Ok, closing for now, but feel free to reopen it if for some reason create_raw_encoder does not work for your use case.


Branch name must be unique?

Just starting to play with this resource and I am immediately seeing an issue.  If try to create a repo and branch with this, it works:
apiVersion: repo.github.upbound.io/v1alpha1
kind: Repository
metadata:
  name: crossplane-test
spec:
  forProvider:
    visibility: private
    archiveOnDestroy: false
    template:
    - owner: myorg
      repository: repository-template
  providerConfigRef:
    name: my-provider
---
apiVersion: repo.github.upbound.io/v1alpha1
kind: Branch
metadata:
  name: dev
spec:
  forProvider:
    repository: crossplane-test
    repositoryRef:
      name: crossplane-test
  providerConfigRef:
    name: my-provider

But, since these resources are Cluster wide resource, the Branch name will be unique in the cluster.  So, if I try to create another Branch named dev for another repo, it won't work.
Shouldn't the branchName be an attribute of the Branch resource so it does not use the resource name for the branch?

OK, I found an answer.  I am not sure if this is the recommended way.  I was wondering how to handle importing resources in Crossplane and I found out about the external-name annotation. It looks like I can use that to create a resource with an arbitrary resource name and use the annotation to name the branch what I want.
apiVersion: repo.github.upbound.io/v1alpha1
kind: Branch
metadata:
  name: crossplane-test-dev
  annotations:
    crossplane.io/external-name: dev
spec:
  forProvider:
    repository: crossplane-test
    repositoryRef:
      name: crossplane-test
  providerConfigRef:
    name: my-provider

While this works, it is not obvious, it is not documented in the Branch resource and it is overloading an annotation that is meant to be used for importing a resource.
Thoughts?
Also, I see a number of documentation issues.  Should I submit a PR with the corrections or would you like an issue first?


Zod Tuple type shows

On a zod tuple, there is an additional parameter at the end of the tuple. ...unknown[]. Is this expected? Possibly in relation to the support for .rest, but shouldn't the spread items not even appear in the type of .rest is omitted?
import { z } from 'zod';

const athleteSchema = z.tuple([
  z.string(), // name
  z.number(), // jersey number
  z.object({
    pointsScored: z.number(),
  }), // statistics
]);

Here is the type I expect:
type Athlete = z.infer<typeof athleteSchema>;
// type Athlete = [string, number, { pointsScored: number }]

However, this is the type that I see (note the ...unknown[]:
// type Athlete = [string, number, { pointsScored: number }, ...unknown[]]

From the type tuple, this should be invalid:
const a: Athlete = ['1', 2, { pointsScored: 3 }, 4];

Is this a bug, or expected behavior? Feels like a bug to me, but as a beginner-intermediate zod user, maybe there is an explanation.

Sigh. { strict: true } in tsconfig.


Review nmdc_schema/class_sparql.py from issue-1070-content-from-mongo

I would like to make the code in nmdc_schema/class_sparql.py really high quality and or integrate it's capabilities into sparqlfun
@cmungall already wrote https://github.com/linkml/sparqlfun which probably address much of the content of nmdc_schema/class_sparql.py
nmdc_schema/class_sparql.py might require users to write less out in a templating language, and it does some autodetected aggregations that  sparqlfun doesn't
Also only includes columns for slots that have actually been populated in the metadata
use case: what are all of the OmicsProcessings in the NMDC metadata that are part of NEON study nmdc:sty-11-34xj1150 and all related Biosamples. Will aid @aclum and Reddy in reconciling the NEON records in NMDC and GOLD

switch from PyCharm's proprietary code formatting to Black... can do it at save time or with the black cli
remove unused imports
parameterize any hardcoded filenames
click options: add shorter aliases, descriptions and genrally make them more consistent

type hints


Suggestion Backlog Slog, 8/6/2018

#5453 Variadic kinds - what use cases remain here?
#26234 Disallow truthy checks of void
#5203 Disallow OOB access on tuples
#5863 Static polymorphic this
#23005 T[K] should be never when K is never
#22892 string enum object should be indexable type
#22851 esModuleInterop should work when target = esnext
#22815 Abstract classes that implement interfaces shouldn't require method signatures
#22806 Partial<T> should be a weak type
#22769 Allow unshadowed parameter initializer references in ES6+
#22759 Let JSX children be subject to tupleness
#22709 Allow references to literal-ish-initialized enums in type positions
#22669 Add a new overload to Function#bind
#22665 Add a mode to make TS act like JS
#22649 Combine tsconfig with file list
#22610 Keep infer variable in scope in false arm of conditional type
#22609 Do some type guards based on overload when a good discriminant is present
#22605 Provide a back-compat mechanism for bundled .d.ts files in package.json
#22598 Allow speculative union type property access in typeof (expression) operands
#22509 Something something mapped types
#22311 Error on out-of-scope literal assigned to enum
#22230 Allow implicit undefined->0 coercion under strictNullChecks for bitwise ops
#22208 Prefer .d.ts over .ts if it's in files array
#26136 Arg union type inference for overloads
#26129 Forbid illogical generic declarations

#5453 Variadic kinds

Currently we allow you to capture tuples in variadic rest positions
But the tuples themselves cannot contain rests
This would allow deconstruction of tuples
What functions would be typable with this that currently aren't?

Promisify

Should we close holes that allow people to write trivial turing machines in the type system?

??

Disallow testing void exprs

Breaking change
All goodness
Found bugs in us and VS Code
Found "type errors" in a couple other projects

#5203 OOB on tuples should be errors

:+1:

Polymoprhic this

Static inheritance in signatures is plainly unsound
So calls to the polymorphic this are right out
Isn't what people want just the non-signature side?
Do people want instance-this or static-this ?
Representation vs checking
Discuss soundness

#23005 T[K] should be never

:+1:

#22892 String enums should be indexed types

Our dot behavior makes this a bad idea

#22815 Interface members in abstract classes

Should we copy them automatically?

It's presumably what you want

What happens to optional members?

They become... abstract optional? What is that even?

How do you not-implement an optional abstract member?

Need to avoid hop-skip-jump problem

Post some questions on this

#22806 Partial<T> should be weak?

It is
Weak checking applies to assignability, not comparability
WIA

#22769 Parameter initializers

Allow in ES6, error in downlevel only

#22759 Allow tuples in JSX children

:+1:

#22709 Enum literals

There are actually many kinds of enums under the hood
Union enums only get created when only bare literals (or nothing) are initializers
These kinds of enums behave differently
You might want one or the other and this is how you choose
WIA; would be a BC

#22311 Out-of-range enum assignment

Back compat problem
Not really a trap
Problem for e.g. mod flags
Maybe disallow in strict

#22230 undefined/null in & / |

:-1:

#26136 Inference of unions from argument lists

Would this imply filtering if you weren't capturing the whole argument list?
No (spreading back would be a nightmare)

WIA

Wounded in action?

Well, it's accepted
Wondering if actionable
We're imitating ActionScript


complex support for reduce

Support for reduce operations on complex types.  This also includes reduce operations on the absolute value of the input for both real and complex types.

Coverage increased (+0.03%) to 61.942% when pulling cf9444df59779dc464da54aaebe8621b4e9042a5 on jaycedowell:master into 8e1c0e13f8ba916ee1fc271943f7a2d0a836e849 on ledatelescope:master.

Docker is unhappy.

Codecov Report

Merging #118 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #118   +/-   ##
======================================
  Coverage    58.8%   58.8%
======================================
  Files          63      63
  Lines        5093    5093
======================================
  Hits         2995    2995
  Misses       2098    2098

Impacted Files
Coverage Δ

python/bifrost/reduce.py
50% <ø> (ø)
:arrow_up:

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 8e1c0e1...ea0b243. Read the comment docs.

Any action on this?

Oh yeah, good call.  I had forgotten about the blocks.

I don't think there is anything I can do about codecov checks failing because the reduce block runs on the GPU.

Well, FWIW I'm happy for this to be merged

to add -- the unittest for complex reduce passes when I ran it too

Ok, cool.  @benbarsdell any other comments?

No further comments after three weeks, merging.


toLazySignal broken with Angular 18.1.x

ToSignalOptions in @angular/core/rxjs-interop now requires a generic type, which breaks toLazySignal because it's options doesn't have a type.
Only workaround I can think of is to roll back to Angular 18.0.x

Typing a generic type doesn't always work.
for example:
toLazySignal<string>(..., {
  requireSync: true
});

Infers as Signal<string | undefined> incorrectly. (Should be Signal<string>)
I believe this update was caused by a typescript update. Looking at Angular's code, they changed the type definitions of toSignal to use NoInfer and pass a generic to options. If you do the same changes for toLazySignal it works:
export declare function toLazySignal<T>(source: Observable<T> | Subscribable<T>): Signal<T | undefined>;
export declare function toLazySignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | undefined> & {
    initialValue?: undefined;
    requireSync?: false;
}>): Signal<T | undefined>;
export declare function toLazySignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | null> & {
    initialValue?: null;
    requireSync?: false;
}>): Signal<T | null>;
export declare function toLazySignal<T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T> & {
    initialValue?: undefined;
    requireSync: true;
}>): Signal<T>;
export declare function toLazySignal<T, const U extends T>(source: Observable<T> | Subscribable<T>, options: NoInfer<ToSignalOptions<T | U> & {
    initialValue: U;
    requireSync?: false;
}>): Signal<T | U>;

So a better workaround than rolling back would be using patch-package with these changes, or creating your local copy of toLazySignal. Hopefully you can revert that once it gets fixed in ngxensions.

I'm on it

as soon as ngx-tension update its deps to 18.1+, tests in this PR will stop failing: https://github.com/ngxtension/ngxtension-platform/pull/484#issuecomment-2289723478


In ProviderRepository.php line 208: Class 'Modules\Modulename\Providers\ModulenameServiceProvider' not found

When i run php artisan module:make Modulename, files were created in terminal but actually there is no module and its file. I am using laravel 5.5 and modules ^2.0.

Hello,
Version 2 is not supported anymore. Please update to the latest.
It looks like some files were generated though, otherwise, you wouldn't have this error.

Is there a solution for this? I am using Laravel 5.6 and v3.2 and getting this same error. Thanks!

Not without more information no.

@nWidart
I installed the package and published the configuration file.
I ran the the artisan command to create a "Meal" module:
php artisan module:make Meal
Files are created and it says Module [Meal] created successfully.
I then run composer dump-autoload and get the following error:
Generating optimized autoload files

Illuminate\Foundation\ComposerScripts::postAutoloadDump
@php artisan package:discover

In ProviderRepository.php line 208:
Class 'Modules\Meal\Providers\MealServiceProvider' not found
Script @php artisan package:discover handling the post-autoload-dump event returned with error code 1
At this point, I am no longer able to run any artisan commands as I get the following error:
In ProviderRepository.php line 208:
Class 'Modules\Meal\Providers\MealServiceProvider' not found
Hope this helps!  Thanks!

did you add the autoloading in composer.json?

@nWidart, that was it! I didn't have it in the main composer.json file. Thanks!

@nWidart how?

How what?
The autoloading section is mentioned here: https://github.com/nWidart/laravel-modules#autoloading


TypeScript: rendered markdown base uri should be relative to defining file

TypeScript issue
https://github.com/microsoft/TypeScript/issues/50665

VS Code Version:
commit 389938998fa2ca900f9730839c2ee8c90ae0a68c

OS Version:
macOS Monterey 12.5.1 (Apple M1)

Steps to Reproduce:

Completions:

Hover widget:

In the current B's link, the content in the markdown previewer will be <root_of_project>/b.ts
But it should be <root_of_project>/folder/b.ts(relative to folder/A.ts)

relation issues: https://github.com/microsoft/vscode/issues/86564

I am creating a typescript issue for the response file path field when executing any command with documentation field.

Closing this in favor of the upstream issue: https://github.com/microsoft/TypeScript/issues/47718


Version 3.0 ToDos

https://github.com/jedfoster/Readmore.js/tree/version-3.0

[ ] Tests?
[x] Investigate need for CSS prefixes on supported browsers (do we need -moz, et al?)
[ ] Validate package structure against...

[ ] Yarn
[ ] Rollup
[ ] Webpack
[ ] Browser

[x] Document new/changed APIs
[x] Evaluate #132 for adoption/inclusion. (Feature for controlling where toggle link is inserted—before/after block)
[x] Evaluate #140 for adoption/inclusion. (Stop expanding content if beforeToggle returns false)
[x] Evaluate #207 for adoption/inclusion. (Allow moreLink and lessLink options to use callbacks)
[x] Fill in destroy() method
[x] Refactor toggle() and constructor() to work with querySelectorAll
[x] Update README on master branch
[x] Evaluate #224 for adoption/inclusion
[x] Evaluate #225 for adoption/inclusion
[ ] Refactor toggle() to expose as a static method Not sure of the utility of this; toggle depends on options which is an instance property.

Re: tests,
Puppeteer looks promising. Decent tutorial on using it with Mocha: https://medium.com/@ankit_m/ui-testing-with-puppeteer-and-mocha-part-1-getting-started-b141b2f9e21

transition is the only CSS property that would conceivably need to be prefixed, but http://shouldiprefix.com/#transitions says "No prefixes!" So, 🎉


Implement Project page and search.

Add the following functionalities

View the list of projects
Access detailed information when a project is clicked.
Search projects
Sort projects
Prerequisites: #1

Requirements
Fetch Projects

View a list of projects on the project page.
Open a separate project page when a project is clicked.

Search projects

Search by Project Name
Users should be able to search for projects using the project name or partial keywords that match the project name.

Search by Project Tags
Projects should be searchable by tags that have been assigned to them. Users should be able to enter one or more tags to find relevant projects.

Sorting Options
Users should have the ability to sort the search results using the following criteria:

Latest Posts: Sort projects based on the date the project was created, with the most recent projects displayed first.
Oldest Posts: Sort projects based on the date the project was created, with the oldest projects displayed first.
Last Update: Sort projects based on the latest project update date (whenever the project content was last modified), with the most recently updated projects displayed first.

How?

Implement a new API endpoint to fetch all existing projects from the database.
Implement a new API endpoint to fetch a single projects information from the database.
Modify the actions.ts file to fetch the projects from the newly implemented backend API.
Modify the actions.ts file to fetch information about a single project from the newly implemented backend API.
Implement sorting by modifying in the Project Page
and corresponding Backend APIs.

Acceptance Criteria

Users should be able to view all existing projects on the Project page after they are created.
Users should be able to click on a particular project to get more information about that project.
Users can search for projects by entering a full or partial project name.
Sorting should be done according above-mentioned specifications.
UI for searching with Tags should be done using Chips with the close button.
The sorting and filtering options should be available both before and after a search query is made.
Handle error handling and feedback if no projects match the search criteria.
Bonus points: Modify projects to have multiple tags and enable searching with multiple tags.

Additional Notes

UI for displaying all projects and viewing a particular project exists, update the backend to provide APIs for fetching project info and all projects.
UI for searching by project name is implemented. You would need to implement the UI for searching by Tags.

can i be assigned

Bots down. Give us a sec.

sure , started working on it

!assign @Rex-8

!assign @Rex-8

!assign @Rex-8

!assign @Rex-8

!assign @Rex-8

!assign @Rex-8

!assign @Rex-8

assigned

!assign @Rex-8

db created succesfully


Mockbuilder: looking for a special example. (this is not an issue)

Hi again,
It's not an issue but I'm looking for an equivalent to :
  beforeEach(() => {
    TestBed.configureTestingModule({
      imports: [
        MyModule.forRoot()
      ]
    });
  });

with MockBuilder.
My purpose is to test the module MyModule.
Thank you in advance.
Best regards.
Cyril

Hi there,
depends what you want to achieve. If you want to test how MyModule.forRoot() works - then you don't need neither TestBed nor MockBuilder.
If you want to mock / keep it in an imported module you can use .keep or .mock, it affects providers too.
@NgModule({
    imports: [
        HttpClientInMemoryWebApiModule.forRoot(),
    ],
})
export class AppModule {}

MockBuilder(Something, AppModule)
  .keep(HttpClientInMemoryWebApiModule) // won't mock the module and all providers
  .mock(HttpClientInMemoryWebApiModule) // will mock the module and all providers
;


Fix class that shouldn't be extended/instantiated/mixedin

This was discovered when investigating which classes could potentially be used as a mixin and may need a mixin class modifier in Dart 3. This class came up as potential mixin candidates even though it really shouldn't be candidates.
Part of https://github.com/flutter/flutter/issues/118837.

It's really just the one class, right? Or is this missing some? The description talks about multiple classes.

Yeah, just one class. Copy and Paste error on the test, I re-used the PR description for the engine, which did have multiple.

I thought abstract classes can't be instantiated anyway?

I thought abstract classes can't be instantiated anyway?

oh nvm, this way another library can't sub-class it and then instantiate.

test-exempt: code refactor with no semantic change


Card doesn't show the real status of AC

I successfully installed the add-on and connected the Toshiba air conditioning. AC can be turned on, switch modes, change temperature. But the unit card does not show the current AC status correctly. If the AC is off and I turn it on using the controls on the Home Assistant card, the card does not change and still shows the AC status "off". However, the AC actually turns on and runs. Temperature control or mode change also work, but also do not show up on the card. So the AC responds, the change is reflected correctly in the Toshiba Home AC Control app, but the card still shows the "off" status in HA. It doesn't work to turn the AC off, maybe because the add-on "thinks" the AC is off?
HA log shows this error:
WARNING (MainThread) [homeassistant.components.climate] Entity None (<class 'custom_components.toshiba_ac.climate.ToshibaClimate'>) implements HVACMode(s): off, auto, cool, heat, dry, fan_only and therefore implicitly supports the turn_on/turn_off methods without setting the proper ClimateEntityFeature. Please create a bug report at https://github.com/h4de5/home-assistant-toshiba_ac/issues

You can enable debug logs for toshiba-ac by adding this to your configuration.yaml:
logger:
  default: warning
  logs:
    # log level toshiba-ac
    toshiba_ac: debug
    custom_components.toshiba_ac: debug

Either for some reason cloud is not sending the state updates or the format for your device is not correctly supported. Please post your findings (remove any sensitive info before posting) here so we can debug further.

i think this issue arises when it switches to the self-cleaning mode.
i see the same message in the logs every now an then, but i cannot really trigger it. I guess I have to fix this in the ha-integration.

Hello, the issue was solved with the last update 2024.8.0. Integration works fine since than. Thank you.
I think that was the same problem as https://github.com/h4de5/home-assistant-toshiba_ac/issues/186 or rather https://github.com/KaSroka/Toshiba-AC-control/issues/50.


[Python][Documentation] Clarify language around use_deprecated_int96_timestamps

Describe the enhancement requested
PyArrow's ParquetWriter has an argument, use_deprecated_int96_timestamps, which is used to write timestamps as int96 which is deprecated in Parquet. I think the docstring may be confusing to new users as it's not entirely clear if this is something deprecated in PyArrow that may be removed at some point or if it's just deprecated elsewhere and PyArrow maintains support for it. The case is the latter.
See the docstring:
https://github.com/apache/arrow/blob/f59e37f8a676a13f0bd82a09c211ddb45c6b48ac/python/pyarrow/parquet/core.py#L772-L774
I think the Parquet section in the PyArrow docs does a better job of explaining this feature,

Older Parquet implementations use INT96 based storage of
timestamps, but this is now deprecated. This includes some older
versions of Apache Impala and Apache Spark. To write timestamps in
this format, set the use_deprecated_int96_timestamps option to
True in write_table.

I think the docstring could be improved by using similar language to the above.
Component(s)
Documentation, Python

That can indeed use some clarification!


typo: ssm:sSendCommand has extra s

Typo: ssm:sSendCommand should be ssm:SendCommand

Thank you for finding this @StevenSmiley and for submitting a PR. Someone else submitted the same PR #25 before this one so i just merged that one into main. Let me know if that fixes the issue. I'll generate a new release now


Extension seems to be getting clobbered by other Telescope extensions

I'm trying to use telescope-luasnip.nvim with LazyVim, which bundles a few other telescope extensions. The issue I'm having is that :Telescope luasnip works exactly once, then subsequent invocations give the following error:
Error  21:39:19 msg_show.lua_error   Telescope luasnip Error executing Lua callback: vim/shared.lua:0: after the second argument: expected table, got nil
stack traceback:
	[C]: in function 'error'
	vim/shared.lua: in function 'validate'
	vim/shared.lua: in function 'tbl_extend'
	...scope-luasnip.nvim/lua/telescope/_extensions/luasnip.lua:74: in function <...scope-luasnip.nvim/lua/telescope/_extensions/luasnip.lua:73>
	...re/LazyVim/lazy/telescope.nvim/lua/telescope/command.lua:193: in function 'run_command'
	...re/LazyVim/lazy/telescope.nvim/lua/telescope/command.lua:259: in function 'load_command'
	...l/share/LazyVim/lazy/telescope.nvim/plugin/telescope.lua:108: in function <...l/share/LazyVim/lazy/telescope.nvim/plugin/telescope.lua:107>

My config is:
"benfowler/telescope-luasnip.nvim",
  config = function()
    require("lazyvim.util").on_load("telescope.nvim", function()
      require("telescope").load_extension("luasnip")
    end)

where on_load is used for other telescope etensions in LazyVim that work correctly. I've also tried a lot of different orders to ensure the extension isn't being loaded until after Telescope is setup, as well as not adding any explicit config at all and just letting the extension autoload but no dice. The fact it works properly once makes me think that's not an issue with it loading the first time, rather something corrupting/clobbering/overwriting it.
it seems like this extension sets a global and my guess is that somehow gets clobbered when other extensions are invoked. This is supported by the fact that :Telescope luasnip will give that error on the first invocation if I call any other Telescope picker first.
I'm certainly far from an nvim plugin or Lua expert, but I'm confused why M appears to be global here. That said, I tried renaming it and the issue persisted, so it doesn't seem to be a name collision. I haven't tried disabling other extensions yet because this one is less critical to my workflow and all of the others seem to work alongside along side each other without any issues. Any thoughts on how I might debug this? Thanks!

I've the same problem and no solution.

Not sure why M.opts is nil in luasnip_fn, even though it's set at the top-level of the module, but anyway, here are the changes I made to workaround it...
luasnip.lua @ line 68:
Changed:
M.opts = {
  preview = {
    check_mime_type = true,
  },
}

To:
local _opts = {
  preview = {
    check_mime_type = true,
  },
}
M.opts = _opts

luasnip.lua @ line 74:
Changed:
opts = vim.tbl_extend('keep', opts or {}, M.opts)

To:
local opts = vim.tbl_extend('keep', opts or {}, M.opts or _opts)

luasnip.lua @ line 177:
Changed:
M.opts = vim.tbl_extend('keep', optsExt, opts)

To:
M.opts = vim.tbl_extend('keep', optsExt or {}, opts or {}, M.opts or _opts)

Hi; sorry I'm late to the party. I've been flat out with real life.
I'm not a plugin expert myself, I'm afraid. This was originally meant as a straightforward port of the Ultisnips Telescope extension to LuaSnip to scratch a personal itch, and has sprouted a few legs since. Issues may have crept in as we've found and fixed edge cases.
I looked OP's stack trace, and then noticed independently that M isn't local. The new configuration scheme came in with a recent PR to fix an unrelated issue, and nobody caught it in review. Sorry!
I myself had thought that the proper way to define modules was to declare M as a local and then return it to avoid polluting the global namespace -- that's certainly how I do it in my own personal config.
I tried out simply declaring M as local in that module, and it seemed to work fine for me.
Would somebody else like to give that a go too and then test it a bit, just to double-check this solution works?

I put @xorander00's changes into a branch - debugExtensionLoading - to ease testing, and opened a PR - benfowler/telescope-luasnip.nvim#23 -  to get some more review on it.
Thanks again, @prurph and @xorander00 !

I myself had thought that the proper way to define modules was to declare M as a local and then return it to avoid polluting the global namespace -- that's certainly how I do it in my own personal config.

This is what I do too and is a very common pattern in Lua. You've got it right, IMO.

I tried out simply declaring M as local in that module, and it seemed to work fine for me.

I completely missed that M wasn't local lol. That could have something to do with opts being nil in luasnip_fn, though I don't remember lifetime/scoping rules in Lua off the top of my head.
My workaround is pretty lame and just defensively falling back to empty tables + the locally declared _opts table. It would be better to figure out why M.opts is nil in luasnip_fn.

Agreed -- I think this needs a bit more investigation.
I'll try and get to this shortly, as I've just gotten past crunch time, but if you've got time to dig in a little further, I won't stop you ;-)

I reset my changes back to the latest commit and took a look again really quick. I changed M to be local and merged the M.opts {} assignment into the M initialization line.  Seems to be working for me, but I've only used it for a couple of minutes and I have a bunch of stuff left on to todo-list for today.
If anyone else wants to try it and see how it goes for them, the patch is below. If a PR is needed, let me know.
diff --git a/lua/telescope/_extensions/luasnip.lua b/lua/telescope/_extensions/luasnip.lua
index 7eee771..05beaff 100644
--- a/lua/telescope/_extensions/luasnip.lua
+++ b/lua/telescope/_extensions/luasnip.lua
@@ -14,7 +14,11 @@ local conf          = require("telescope.config").values
 local ext_conf      = require("telescope._extensions")
 -- stylua: ignore end

-M = {}
+local M = {
+  preview = {
+    check_mime_type = true,
+  },
+}

 local filter_null = function(str, default)
   return str and str or (default and default or '')
@@ -65,11 +69,6 @@ local default_search_text = function(entry)
     .. filter_description(entry.context.name, entry.context.description)
 end

-M.opts = {
-  preview = {
-    check_mime_type = true,
-  },
-}
 M.luasnip_fn = function(opts)
   opts = vim.tbl_extend('keep', opts or {}, M.opts)

It would be better to figure out why M.opts is nil in luasnip_fn.

Late to the party here, but I think the reason is that if any other extension also sets M as a global, and loads after this extension, it wipes out the global created here. I ran into this yesterday and tracked it down to orgmode using the same M = {} as a global, so if orgmode loaded after telescope-luasnip, I'd get this stack trace.
orgmode addressed this quickly once I reported it, and their fix was also to just do a local M.

This should be addressed now. I've applied a pair of small fixes, and tested it. Nothing seems to have regressed so far.
Please shout if you see anything!

Fix applied.


Add instructions in Contributing to not put issue # in commit msgs

Pre-Submission Checklist

[x] Your pull request targets the staging branch of FreeCodeCamp.
[x] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[x] You have only one commit (if not, squash them into one commit).
[x] All new and existing tests pass the command npm test. Use git commit --amend to amend any fixes.

Type of Change

[x] Small bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would change existing functionality)
[ ] Add new translation (feature adding new translations)

Checklist:

[x] Tested changes locally.
[x] Closes currently open issue (replace XXXX with an issue no): Closes #12140

Description

Added instructions in the CONTRIBUTING.md doc to not add issue number in commit messages.

@dhcodes Updated with the requested changes.
Just wanted to ask something basic. When I tried "git commit --ammend", it returned me an error "error: unknown option `ammend'"
I instead made a new commit and squashed it into previous one. But it would be very helpful if you could guide me as to what went wrong!

@FlameFractal you have a typo, it's not ammend its amend

file, do a git add [filename], then git commit --amend, then push the branch again with -f.

#LGTM
Thanks and congratulations on your first contribution to FreeCodeCamp! 👍 🌮 🎉 💯

My first contribution to opensource actually. Thank you both @dhcodes @raisedadead 😃

Even better :)

@FlameFractal Congratulations! Keep them coming. 🎉 ✨ 🎊


leaderboard, player

Hi!
How to display your position in the leaderboard as agar.io? For example, if I'm not 10 leaderboard, it shows my current position, for example, 27.
Know what not to write, but maybe you know how to do it.
This has made in agar.lol

Client Side

@pabloalber84 well I ask on the client side to help Cigar

This isn't client sided. Has the code been added for the leaderboard changes yet? (Haven't been able to check)

no i think its client sided because ive been testing on mine and it dosnt work

@MastaCoder The code has been added.]
Idk how to get this to work tho.

This can be added with custom packet leaderboard type 48, but with the problem to remake leaderboard positions system, adding again in currently gamemode.

The question is still open, ask someone to give the correct answer. Thank you.

@TopoR1 русские везде!

I did it, yay!

@TopoR1  HOW?


Update remaining actions

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 76.81%. Comparing base (22b7518) to head (8ca490b).
Report is 4 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff              @@
##           develop    #4949       +/-   ##
============================================
+ Coverage    61.65%   76.81%   +15.16%
============================================
  Files          806     1128      +322
  Lines        70967   132058    +61091
  Branches     36690    39697     +3007
============================================
+ Hits         43752   101443    +57691
- Misses       19856    24724     +4868
+ Partials      7359     5891     -1468

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Introduce RegisterPluginsBefore, OnTx instances interceptor

Coverage decreased (-0.01%) to 88.423% when pulling 10d47c4f94fc7f44c0931fed117dd960ace3c1ed on plugin-order into b6a3b7004a04a8bf0c46dacb61cfe9c9b15347e9 on master.


Queries with spaces in don't work

Search for Orobanche returns 4 rows
Search for Orobanche hederae returns nothing
Search for Ivy Broomrape (common name) returns nothing

Yes, I thought I had this working, but now can’t get any combination of query to yield any results.  Have asked Sophia for some guidance.
From: Charles Roper @.>
Sent: 18 April 2021 03:58
To: jdrever/ShropBotSoc @.>
Cc: James Drever @.>; Assign @.>
Subject: [jdrever/ShropBotSoc] Queries with spaces in don't work (#101)
Search for Orobanche returns 4 rows
Search for Orobanche hederae returns nothing
Search for Ivy Broomrape (common name) returns nothing
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHubhttps://github.com/jdrever/ShropBotSoc/issues/101, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAPKYJMEEZP7OXPGCMOGAGTTJJDFLANCNFSM43DXGASA.

With the quote stripping in NbnRecords sorted, this is also sorted.