Undocumented functions. Also getters and setters.

Hi, I'm sorry if this has been said before or if this is not the place to in fact say it, I'm not too much of a github guy.
So, there are some short but useful examples in the overview, but this is my first time doing stuff with interpreters, and I've found out I'm not as comfortable with javascript as I thought. All I'm trying to do is an interface for my c++ stuff. Allow anyone to be able to put together a script real quick and have a decent personalized tool. Use it as a console also.
I've gotten "far", I've only been at it for 2 days, but from what I can see documentation is scarce, I'm using the JRST reference, but I keep finding that some functions are missing, such as JsCreateExternalObjectWithPrototype or JsObjectDefineProperty.
Googling stuff yeilds no results (not that I've ever been brilliant at googling), and right now I've put together all my objects and their members, but I can't seem to get getters to work. I'm looking to do it with c++ natives, as I have been doing with most the other stuff.
I know it likely has something to do with JsDefineProperty, but I really have no clue on how to use it, and after 6 hours I've made no progress.
So I guess my question is how do you set a native getter, and where else should I ask these noob questions?
Thank you.

(Note I'm an external contributor and a user of CC, I'm not a member of the team here)
Firstly: the wiki documentation is basically the comments from ChakraCore.h and ChakraCommon.h but in a slightly nicer format so generally any missing bits can be found in those headers.
As for how to do getters:
JsObjectDefineProperty is probably the easiest option here (it's the same as JsDefineProperty but takes a JsValueRef for the propertyID instead of a JsPropertyId so one less step of setup).
JsObjectDefineProperty is basically a native version of Object.defineProperty from within JS.
JsObjectDefineProperty(
        _In_ JsValueRef object,
        _In_ JsValueRef key,
        _In_ JsValueRef propertyDescriptor,
        _Out_ bool *result);

So the parameters are:
object - a JsValueRef for the object you want to set your getter on
key - a JsValueRef for the property key (e.g. a JavaScriptString or Number or the like)
propertyDescriptor - a JsValueRef for an object that is the property descriptor, property descriptors within JS look like either:
//for an accessor property:
const accessorDescriptor = {
  enumerable : true,//or false defaults to false if not provided - should this property be enumerated by e.g. for...in loops in JS
  configurable : true, //or false - defaults to false - can this property be deleted/replaced
  get : getMethod, //defaults to undefined - getter method
  set : setMethod, //defaults to undefined - setter method
}
//or for a data property
const dataDescriptor = {
  enumerable : true,//or false defaults to false if not provided - should this property be enumerated by e.g. for...in loops in JS
  configurable : true, //or false - defaults to false - can this property be deleted/replaced
  writeable : true, // or false - defaults to false - can this property be assigned to
  values : someValue // defaults to undefined
}

So putting it together to make a property that is a read only getter from native you would:

Make the object that you want to put a getter on - use JsCreateObject
Make the descriptor object - use JsCreateObject
Make the getter function - use JsCreateFunction
Make a JavascriptString with value "get" - use JsCreateString
Set the getter function as a property of the descriptor object - use JsObjectSetProperty
Make a JavascriptString your key with value being whatever name you want this getter to have
Set the getter - use JsObjectDefineProperty providing your object, your key and the descriptor

@rhuanjl Thank you so much.
Though you made a mistake on your code at step 5, object is the parent, you'd wanna set the getter on the descriptor, then the descriptor to the parent's key-"represented" object.
Still took me like 20 minutes to figure it out :P  Wasn't until I went looking for how the deprecated __defineGetter__ did it that I managed to figure out that "key" was actually what you set the descriptor of. So if you had an object in the main scope you'd wanna do AddGetter(globalObject, "NameOfTheObject", getter, cbState);.
There's also another issue. The this pointer (arguments[0]) on the get native, points to the object used to set the getter on it's property. So in the above example, arguments[0] == globalObject, is there maybe some way to have it be the "NameOfObject" object? I've managed to get around the issue by using callbackstate, but that's kinda dirty.
I guess it kinda makes sense since you might want to use something from the parent object, but it becomes an inconvenience when you use the same native for multiple objects.
Anyhow here's it working:

The getter for PEH reads the pe header from the process if it hadn't already.
Side notes for anyone going through the same process:
Getters get stuff, so if you return say a number from the getter, but your code is objectxyz.toString(); the toString will be called on the JsNumber you returned, and not your object, in fact, no function will be called on your object because the getter has precedence.
For this purpose, valueOf is the way to go, since js will call it by default on stuff like arithmetic, and you can still call whatever you want on your other member functions.
In my code, the code that prints the result automatically tries to convert to string, which is why you see a 0x000004550, it calls the toString method of that object, but in the second, it calls valueOf for arithmetic, adds a zero to it, and a JsNumber is printed. Had my getter returned a JsNumber, both would return JsNumber 7.
Again, thank you so much.

With the code that @rhuanjl provided above, the native call AddGetter(jsObj, "name", func, data) is roughly equivalent to the javascript Object.defineProperty(jsObj, "name", {get: func }) where func is also passed data as well. That will result in jsObj.name invoking the func getter when you try to read from it in script.
We have a couple of ways that native functions can be called from script, depending on how you define them. In the code above, it uses JsCreateFunction which expects a JsNativeFunction passed in, which should accept parameters JsValueRef callee, bool isConstructCall, JsValueRef * arguments, unsigned short argumentCount, void *callbackState. For this kind of function, callee is a reference to the javascript function object that was invoked, isConstructCall is whether this is being new'd, and the arguments are the arguments of the function where arguments[0] corresponds to the this of the function; if you called jsObj.name then the getter will be invoked with jsObj as the this.
We also have a newer API where you instead call JsCreateEnhancedFunction and pass in a JsEnhancedNativeFunction which accepts different arguments. The primary difference is that it also takes a JsNativeFunctionInfo which explicitly indicates the this argument and a new.target argument if it is a construct call.
To return to your question, what exactly do you mean by the NameOfObject object? When you define a property, the property itself isn't an object. In the example I give above, there is no jsObj.name "object", although jsObj.name may return an object if that is what the getter chooses to do. If you want your getter to always operate on a particular object, you could use the callback state for that purpose: When creating the getter, you could also create a new object, JsAddRef it since we are about to store a pointer to it in a place that isn't tracked by the GC, and then pass that pointer as the callback state. Then in your getter, the callback state will always be that same pointer, so you can operate on the object that you created up front.

@RealTrisT sorry for the error in the example (I've updated it in case anyone else reads it)

@liminzhu can you double check the wiki for any documentation present in the source but omitted from the wiki?

@MSLaguana I am JsSetPropertying what would be an external object name to jsObj (which would make it a property that is also an object, and then basically doing addgetter, and passing to it as a key the string "name", with the external object as the callbackstate.
So what I meant with NameOfObject was what is effectively name.
Which seems to work because then the getter gets called, and if I return said external object I can call it's member methods.
Though it would also make a lot of sense if addgetter was overriding said external object, because then I would still be returning it on the getter from callbackstate, yielding the same result.
Then said external object would have no references to it in which case JsAddRef would I guess, in fact be the sensible thing to do (I haven't messed with garbage collection yet).
My main issue with the getters having jsObj as the this was that, if for example I had a c++ class with 3 DWORDs, I'd have to get a different getter for each, though now that I think about it, I could just pass their pointers to callbackstate, or if the object itself was a pointer, I guess I could do some offsetof magic.
Sorry for all the speculation, I'm not home atm, though I am going to try all this as soon as I am, and edit if no one's replied.

@dilijev there are quite a few actually. I guess we should've added other docs as we put APIs on the header.
When I get some time, I will write a sync tool between wiki and header (I know I've been saying this for a while...)

Just gonna leave this here:
JsRelease has "The object to add a reference to." as a description for the first parameter in both the header and the reference.

I've opened a PR to add the missing APIs to the wiki.
I've also opened a PR to fix a few typos in the headers including the JsRelease one mentioned by RealTristT above.

I think this was answered/completed above. Further documentation review can be considered later.


OU-456: Add CSRF header on POST requests to avoid proxy filter

The ConsolePlugin.Proxy.Spec requires the CSRF value to be present in both the cookie and the header for POST requests. This PR applies the cookie value into the header on all outbound POST requests.
As of now the only POST request is the single korrel8r API endpoint.  However, we are making this change to all possible POST requests for now to proactively prevent the header from being missed if either korrel8r or the logging proxies end up needing further POST requests in the future.

/retest

/lgtm

/cherry-pick release-5.9


Mixnode HOL blocking

The mixnode handles packet concurrently but then sends them serially, which can cause HOL blocking (https://en.wikipedia.org/wiki/Head-of-line_blocking) if there's a problem with one packet.
For example, a slow connection or a timeout can block the rest of the packets for a considerable amount of time. This is not acceptable in a distributed deployment where it's an easy vector for a denial of service attack.

Right. I'll fix this. I missed this point when we refactored this code (when we introduced the PacketFowarder which sends packets serially).

This issue doesn't exist anymore since we've decided to use QUIC with libp2p that handles connections internally.


Inverter exchange in HA

Hello there
First of all congratulate you on this wonderful integration, I have 2 EM inverters and it allows me to have them controlled from HA.
I have detected some problems and data inconsistencies, I will open another question for inconsistencies, in this I wanted to record possible improvements for the integration.
1.- I have 2 instances of HA, I use one of them as a test bed in which I make modifications that, when I see correct, I transfer to the instance in production, and I have detected a small problem when identifying the inverters in HA .
In my case I have 2 EMs, both identified in 'sensor_name_prefix:' as "Inversor 1 (88)" and "Inversor 2 (99)" respectively, each one with its corresponding IP, however the inverters appear interchanged in each of the HA instances.
I know that is silly, but I have doubts if this could cause that in a restart of HA or integration the inverters would be exchanged, thereby causing the historical data to also be exchanged, I wonder if it would be possible to identify with 'name:' each of the inverters with their respective IP to avoid this.
I attach images of each HA instance.

2.- In the latest version (0.9.1) I have seen that the value of 'sensor.goodwe_diagnose_result:' has been modified so that it now shows a descriptive text of the diagnosis, it is perfect, but I wonder if a sensor could also be maintained 'sensor.goodwe_diagnose_code:' with the code provided by the inverter, it would be more practical to be able to use it in templates or triggers in HA.
(Message translated by google translate from Spanish)

Hi, I will expose the raw diagnose_result code value, good idea.
Regarding the inverter exchange, well, it's really weird since internally the inverter entities in HA are identified by the inverter's serial number. I'll try to look at the code, but at this moment, I don't know what's wrong and why it behaves this way.

I have not explained myself correctly, the exchange of inverters has not occurred in the HA instance in production, in it they are identified in the same way as it was done in the first installation of the component, I meant that, in the second HA instance, the test one, with the same * .yaml configuration, are identified in reverse, so I was worried that they could be exchanged in a HA restart or reinstallation.
If as dice they are identified by the serial number, it should not be a problem since they cannot be exchanged once added to HA.
In my case it affects me for the reason that the yaml code that I make in the HA test instance does not serve me as it is for the other, since when they are exchanged I must modify it to integrate it into the production instance, for that reason I commented on the option to add the "name" parameter in the configuration so that HA can identify them as indicated and not randomly.

I think your problem may disappear anyway, since we are going to switch from yaml configuration to the UI flow configuration in next release.

Can you check if your problem is present also in latest version (with UI configuration) ?

They work correctly, they were not inverted when you set them up.


Add Ubuntu 22.04 support

Pull Request (PR) description

This Pull Request (PR) fixes the following issues

Also done in #134.


Update sitemap to include releases & RPC docs

The current sitemap.xml is generated only using the contents of the _posts directory, meaning it excludes the release notes (_releases) and RPC docs (_docs).  This 4-line diff updates it to include all of the site's Jekyll collections by iterating over the site.collections array that includes _posts and everything else.
This still omits URLs on the site that aren't part of any collection and which Jekyll stores in the site.pages array.  Right now, this entirely consists of content not intended for direct human reading, like CSS and redirect files, which shouldn't be part of the sitemap anyway.  If that changes in the future (and I'd like it to), I'll have to update the sitemap again---but the old version of Jekyll we use now doesn't support a feature I'd like to make that work, so I'm punting for now.
Here's a quick way to check that this PR only adds URLs to the sitemap:
diff -u \
  <( curl -s https://bitcoincore.org/sitemap.xml | grep '<loc>' | sort ) \
  <( grep '<loc>' _site/sitemap.xml | sort ) | colordiff | less -R

(Note: that will report missing files if other PRs adding new content are merged before this PR.)
Likewise, here's a quick way to verify that only additional URLs for translated content are added to the sitemap:
diff -u \
  <( curl -s https://bitcoincore.org/sitemap.xml | grep 'alternate' | sort )
  <( grep 'alternate' _site/sitemap.xml | sort ) | colordiff | less -R

(Ditto on the previous note.)

You are missing backslash in your second command :)
This looks good. ACK


📝 Curate should have the .validate() and .save_artifact() et al. documented

This is why currently docs are failing on main/release.

First step done in the linked PR. Second step requires to merge below in the docs generator:

https://github.com/laminlabs/lndocs/pull/99

Done FYI @sunnyosun @Zethson


880

@GordonDunsire @CECSpecialistI
How we are treating linked fields when we are mapping the 'main' field to a skos:concept? With nomens we are using rdand:P80113 (is equivalent to) "literal value of 880", is there something similar we can do for a concept? Do we mint a separate concept for the 880?

Gordon has previously said: "there can only be one skos:prefLabel per language in a value vocabulary." We have already determined that we can not identify the language using $6. II.G.5.d of the Decisions index says: "Script and language of strings cannot be reliably determined from the MARC format in $6, and so are not mapped." So I do not think that multipel skos:prefLabels are an option.

@cspayne, @CECSpecialistI: The SKOS integrity condition is 'S14', stated here: https://www.w3.org/TR/skos-reference/#L1567
'A resource has no more than one value of skos:prefLabel per language tag.'
I think a script can be encoded in the xml language tag with the language, so in theory this should allow both the original and transliteration to be sources of prefLabel. However, if the script and language cannot be determined, the best options are:

map the 880 value to skos:prefLabel, and the 'main' tag to skos:altLabel, assuming that the main tag is a transliteration of the 880 tag
map both to rdfs:label (there is no skos:label)

Is the assumption correct?

We have decided how to treat 880s in all of the current contexts that we have encountered, so I have moved this to ready for transform.

It is complex code and will not be done until all other fields that have $6 subfields are coded


Locking chapter info

Fixes #10
Utilizing getUserProgress for fetching the last completed chapter by user. Added a lock icon and text under the description of chapters which are yet to be unlocked.
ScreenShots

tACK! Confirmed chapters are locked both on the chapter overview page and when user is in the process of completing Ch. 1. Great work!

Hey @vinayaksh42, thank you for picking this up.
I tested this locally and there is a hydration error on the chapters page. I believe the reason for this error is the display ? block you're using in Chapter.tsx. I noticed your new getUserChapterStatus function is using getUserProgress from our user.ts library. It's good to remember this function should only be executed on the client-side because if you run it on both client and server-side the results will be different. This means different HTML will be rendered on client- vs. server-side, resulting in the hydration error.
I think a better approach would be to modify the new useStatus hook so it can also return unlocked status when you only pass it a chapterId. The hook uses useEffect which ensures the code is only executed on the client-side. You can see how we are using it in components/Navbar/Tab.tsx.

LGTM after conflicts have been resolved.

All merge conflicts resolved


Epyllion: Add Encyclopedia Draconica Playbooks

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

New Sheet Details

The name of this game is: <   >  (i.e. Dungeons & Dragons 5th Edition, The Dresden Files RPG)

The publisher of this game is: <   > (i.e. Wizards of the Coast, Evil Hat)

The name of this game system/family is: <   > (i.e. Dungeons & Dragons, FATE)

[ ] I have followed the Character Sheets Standards when building this sheet.

[ ] This sheet has been made on behalf of, or by, the game's publisher.
[ ] This game is not a traditionally published game, but a copy of the game rules can be purchased/downloaded/found at: <   >
[ ] This sheet is for an unofficial fan game, modification to an existing game, or a homebrew system.

Changes / Description

Adds the Elementalist, Envoy, Orphan, and Rebel playbooks from Encyclopedia Draconica.  Minor fix to Trickster playbook.

Character Sheet Info Roll20 Internal Use only.


[Edit Contact] - The second x button ( clear ) appears on the editable field from Edit Contact form.

Environment:
Version : XComponents - version 0.1
Device : Microsoft IE 11 Windows 8.1 64 bit
Steps to reproduce:

Open the contact List. - http://demo.xcomponents.org:3000/sampler/contacts-flat.html
Add or Edit a contact.
Fill all the editable fields except Comments field and verify the x button ( clear ).

Expected result:
Only one x button ( clear ) appears.
Actual result:
The second x button ( clear ) appears. The second x button appears only when the user edit the field. After leaving the field the second x button is no longer displayed.
Note : This bug is reproducible for all editable fields except the Comments field.

Reproducible.
XComponents - version 0.1
IE 11 Windows 7 x64 SP1


⚠ Bofrost.nl has degraded performance

In a11a1c2, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 969 ms

Resolved: Bofrost.nl performance has improved in bd2b7a3.


IP4: Now dropping packets with destination address not matching local…

… address. Stat for packets dropped added.

Great @AnnikaH, nice find 👍


How do I run this? Could you provide step by step instructions in a wiki.

I was trying to run this, but I am not sure I am doing it right.
I also get this error:
File "blame-bird.py", line 85, in
sys.exit(main())
File "blame-bird.py", line 36, in main
for rowid, name in c.execute('select rowid, zone_name from client_zones'):
sqlite3.DatabaseError: malformed database schema (pending_download_docs) - near "WHERE": syntax error
Thanks

You seemed to have run it just fine, but you hit a bug I have not seen before.
Could you tell me what version of OS X you are running?

OX 10.11.1 El Capitan

I don't have any El Capitan device anymore.  Please let me know if this problem persists after you've upgraded to Sierra.

First let's check the db is OK:
cd ~/Library/Application\ Support/CloudDocs/session/db
sqlite3  client.db "PRAGMA integrity_check"
ok

If there are no errors, there are numerous tutorials [available].(https://www.google.com.hk/#safe=off&q=how+to+fix+corrupt+sqlite+database)
Which version of python are you using? System default or a Homebrew version?
I've got both, but the Homebrew binary comes first in my path:
type -a python
python is /usr/local/bin/python
python is /usr/bin/python

check versions:
$ /usr/bin/python --version
Python 2.7.10

james@Jamess-iMac: ~
$ python --version
Python 2.7.12

james@Jamess-iMac: ~
$ /usr/local/bin/python --version
Python 2.7.12

Next check the sqlite that your python uses. NOTE: full credit to @obsidianforensics at Obsidian Forensics for these troubleshooting steps:
My default:
$ /usr/local/bin/python
Python 2.7.12 (default, Oct 11 2016, 05:24:00)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> sqlite3.version
'2.6.0'
>>> sqlite3.sqlite_version
'3.15.2'
>>>

System default:
$ /usr/bin/python
Python 2.7.10 (default, Oct 23 2015, 19:19:21)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-7<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> sqlite3.version
'2.6.0'
>>> sqlite3.sqlite_version
'<IP_ADDRESS>'

From Ryan's post above:

sqlite3.version gets you the version of the Python sqlite3 database adapter module.  The version we care about – the actual version of SQLite – is sqlite3.sqlite_version.  That’s not confusing at all!

So, the Homebrew version has 3.15.2 and system default has <IP_ADDRESS>. There have been quite a few changes between those versions. I'm not sure if it will fix your problem, but I'm on El Capitan 10.11.6 and it works fine:
$ python blame-bird.py
iCloud.com.astrio.app01                             0.00MB      1
com.apple.Numbers                                   0.00MB      1
4R6749AYRE.com.pixelmatorteam.pixelmator            0.00MB      1
iCloud.nz.co.codepoint.minimetro                    0.00MB      1
JL4AKR8DVC.net.lickability.Quotebook                0.00MB      2
iCloud.com.apple.iBooks                             0.00MB      2
iCloud.is.workflow.my.workflows                     0.00MB      2
iCloud.com.openplanetsoftware.just-press-record       0.00MB      5
5U8NS4GX82.com.dayoneapp.dayone                     0.00MB      1
com.apple.shoebox                                   0.00MB      4
com.apple.TextInput                                 0.05MB     57
com.apple.CloudDocs                                 0.08MB   1198
iCloud.com.readdle.Scanner.PDF                      4.33MB      8
iCloud.com.d3i.momento                             83.08MB     31
57T9237FN3.net.whatsapp.WhatsApp                30277.76MB   1667

Accounted for: 30365MB.  Still unaccounted: 2551MB

DAMMIT WhatsApp!!
So maybe try installing the Homebrew and then install sqlite and python.
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install sqlite
brew install python

During the install of sqlite you'll see this caveat:
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

This is to prevent incompatibility issues if /usr/local comes before /usr/bin in your path and other apps get confused.
It doesn't matter though, the Homebrew python uses the correct sqlite3:
$ python
Python 2.7.12 (default, Oct 11 2016, 05:24:00)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import distutils.sysconfig
>>> >>> print distutils.sysconfig.get_config_var('CONFIG_ARGS').split()[9]
'PKG_CONFIG_PATH=/usr/local/opt/xz/lib/pkgconfig:/usr/local/opt/sqlite/lib/pkgconfig:/usr/local/opt/openssl/lib/pkgconfig'

That gives us the location of the pkgconfig file for the sqlite used by this build of python:
cat /usr/local/opt/sqlite/lib/pkgconfig/sqlite3.pc
# Package Information for pkg-config

prefix=/usr/local/Cellar/sqlite/3.15.2
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: SQLite
Description: SQL database engine
Version: 3.15.2
Libs: -L${libdir} -lsqlite3
Libs.private:
Cflags: -I${includedir}

Anyway, that might not be the problem, if not, and you still have issues, could you post a copy of your client.db file?
If you're worried about data in there, empty it first, after taking a copy:
cp ~/Library/Application\ Support/CloudDocs/session/db/client.db ~/Desktop

Start sqlite3:
$ sqlite3  ~/Desktop/client.db
SQLite version <IP_ADDRESS> 2015-05-20 18:17:19
Enter ".help" for usage hints.

Then paste this into the session:
.output tmp

SELECT "DELETE FROM " || sqlite_master.name ||
";" FROM sqlite_master
WHERE type = "table" AND sqlite_master.name NOT LIKE 'sqlite_%';

.read tmp

You'll get something like this:
$ sqlite3  ~/Desktop/client.db
SQLite version <IP_ADDRESS> 2015-05-20 18:17:19
Enter ".help" for usage hints.
sqlite> .output tmp
sqlite>
sqlite> SELECT "DELETE FROM " || sqlite_master.name ||
   ...> ";" FROM sqlite_master
   ...> WHERE type = "table" AND sqlite_master.name NOT LIKE 'sqlite_%';
sqlite>
sqlite> .read tmp

Thanks

Working fine for me here with 10.11.6 as well. I guess I don't have the Homebrew version of python installed, just the system.  Can I just say that was an impressive bit of troubleshooting above @jamesstout!
Whatsapp is my worst-offender also:
kgreenwell-3288:blame-bird-master kgreenwell$ python blame-bird.py
com.apple.mail                                      0.00MB      1
iCloud.ca.ianpage.Mactracker                        0.00MB      1
com.apple.shoebox                                   0.00MB      4
4R6749AYRE.com.pixelmatorteam.pixelmator            0.00MB     16
com.apple.TextInput                                 0.00MB     11
57T9237FN3.net.whatsapp.WhatsApp                20487.28MB   1267

Accounted for: 20487MB.  Still unaccounted: 4474MB

Thanks @asterizk. Not heard anything from @nidserz yet...

I am afraid I am not well versed enough in all this. I am lost :(

i there any solution to clean up the WhatsApp part (old backups) - but save important backups?

@jamesstout Impressive comment! Thanks for all the help. I was running into the same issue. I'm still not sure what's causing the issue. It might be because I'm using miniconda2's virtual environment python.

@jonluca then you could try to change line 1 in the script from
#!/usr/bin/env python

to
#!/usr/bin/python


Minor: Replace InternalTopicMetadata with InternalTopicConfig

Quick tech debt cleanup. For some reason StreamsPartitionAssignor uses an InternalTopicMetadata class which wraps an InternalTopicConfig object along with the number of partitions. But InternalTopicConfig already has a numPartitions field, so we should just use it directly instead.

@guozhangwang @abbccdda @cadonna @bbejeck @mjsax @vvcephei

Merged #6886 into trunk

@ableegoldman I think there's a JIRA for this clean-up as well, could you update the title with KAFKA-XXXX: ... to reflect it, and also resolve the corresponding ticket as well?

@ableegoldman I think there's a JIRA for this clean-up as well, could you update the title with KAFKA-XXXX: ... to reflect it, and also resolve the corresponding ticket as well?

@guozhangwang I don't see any AK tickets for this although I did find/resolve an internal one

@guozhangwang I don't see any AK tickets for this although I did find/resolve an internal one

Ah sorry, my bad.


Fixes to not have to reinstall testbeds and conda envs

Reference Issues/PRs
Partly solves #104
What does this implement/fix? Explain your changes.
This change is to make it possible to reuse conda environments when running evaluation.

The conda path couldn't be set in run_evaulation.py and was therefore not used in the context_manager.
The conda env list command wasn't properly parsed so the existing environments was detected

@aorwall thanks so much for the original contribution and patience.
While we didn't merge the original code, we accounted for this feature in the new swebench=2.0.0 release.
The docker image caching mechanism takes care of this:

Control how the harness caches images between runs
You can cache three different tiers of images: base, environment, and instance. For running on full SWE-bench test, the number of images associated w/ each tier are as follows:

base: 1 image that is the base image which all instances are built from
environment: 60 images w/ conda environments that all together cover any and all environments used by instances
instance: 2294 images (one per instance), which is just env image + installation of repository at base_commit of instance

The report has more advice on how to appropriately set the cache level.
In a nutshell, this feature has been incorporated in swebench>=2.0.0. Now, with enough storage, instance-specific images can be cached, allowing 2+ evaluation runs of SWE-bench to be completed very quickly.


Improve fluent-builder exception if no Builder class is found.

It took a lot of System.out.println statements for me to figure out what was going on :)
I have a <inheritance:extends>fm.aaia.aces.xml.DigitalFileInformationBase<DigitalFileInformationType></inheritance:extends> which is an abstract class (though, just a fancy interface - I just needed to access the protected methods after enabling -Ximmutable in jaxb2-basics)
This still doesn't fix my issue, but I figured I would at least create a PR for this for anyone elses' benefit.

Apologies, a number of my commits incorrectly referenced this PR. They were meant to reference a different issue.


SAML Identifier mismatch when URL contains an encoded space (%20)

I'm using Azure Single Sign-on and I have a service provider with a space in the EntityID, however Azure doesn't allow for the EntityID to include a space. It does allow for the '%20' encoding for a space in the URL, but then Azure fails to see the application as existing during the SAML authentication process.
The root cause of the error is shown in the portal: "Identifier mismatch. The identifier for the application is https://justanexample.sendsuite.pitneybowes.com/sendsuite live/. You have configured https://justanexample.sendsuite.pitneybowes.com/sendsuite live/ instead.
Resolution: Replace the Identifier value configured for this application with the following value. The issuer value in the sign-in request (SAML request) sent by the application tells us what's the correct identifier to be configured."
It then shows what the identifier should be (https://justanexample.sendsuite.pitneybowes.com/sendsuite live/), and gives a blue 'Fix It' button. However, Azure does not allow for a space in the identifier, so fixing it is impossible
The vendor has requested any documentation that states that a SAML identifier cannot include a space and believes this is an issue with the Azure's SSO platform and not necessarily their application.
Additionally, it should be known that ADFS and Okta both allow for a space in the identifier, and it's therefore not unreasonable to expect similar behavior from Azure.
Thanks, and please let me know if you need any other information.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: f97b43d9-4a25-1552-c719-f0f0b418b0a8
Version Independent ID: 13445782-bdb8-b9fa-b130-630bb770187c
Content: Configure single sign-on - Azure Active Directory
Content Source: articles/active-directory/manage-apps/configure-single-sign-on-portal.md
Service: active-directory
Sub-service: app-mgmt
GitHub Login: @msmimart
Microsoft Alias: mimart

I'm using Azure Single Sign-on and I have a service provider with a space in the EntityID, however Azure doesn't allow for the EntityID to include a space. It does allow for the '%20' encoding for a space in the URL, but then Azure fails to see the application as existing during the SAML authentication process.
The root cause of the error is shown in the portal: "Identifier mismatch.  The identifier for the application is https://justanexample.sendsuite.pitneybowes.com/sendsuite live/.  You have configured https://justanexample.sendsuite.pitneybowes.com/sendsuite live/ instead.
Resolution: Replace the Identifier value configured for this application with the following value.  The issuer value in the sign-in request (SAML request) sent by the application tells us what's the correct identifier to be configured."
It then shows what the identifier should be (https://justanexample.sendsuite.pitneybowes.com/sendsuite live/), and gives a blue 'Fix It' button.  However, Azure does not allow for a space in the identifier, so fixing it is impossible
The vendor has requested any documentation that states that a SAML identifier cannot include a space and believes this is an issue with the Azure's SSO platform and not necessarily their application.
Additionally, it should be known that ADFS and Okta both allow for a space in the identifier, and it's therefore not unreasonable to expect similar behavior from Azure.
Thanks, and please let me know if you need any other information.

@ayprof Thanks for your question. Please provide us with the link to the documentation you are referring to so we can better assist.

https://docs.microsoft.com/en-us/azure/active-directory/manage-apps/configure-single-sign-on-portal

@ayprof Thanks for sharing the document link. I have updated the issue with doc details.
We are currently investigating and will update you shortly.

Hi @ayprof ,
Thanks for reporting this. Spaces are currently not supported in the URL, though I definitely understand why these would be needed in your situation. There are two things we can do.

I suggest for you to report this on User Voice so that the product team can respond to this as a feature request directly. We don't really handle feature requests on Github but we can create work items out of the features added in User Voice. I will upvote it if you share the link. https://feedback.azure.com/forums/169401-azure-active-directory

I will also escalate this to the product team and try to get a work item created internally. When I have an update from them I will update the thread.

Hi @ayprof ,
I made an item to include this as feedback. Please post to user voice as that is the proper channel for product feedbacks.

Comment from the PG:
Yes, you are right. Azure AD does not support the space character in the Identifier value. Per the SAML specifications it should be URL or URN value. In this case as a workaround I suggest to use %20 or "_" and then while sending the SAML request the SAML ISsuer value has to have the same exact value like %20 if you are using that. Then only Azure AD can find that app in customer tenant and then after authentication can respond back. So please test and let us know how this goes.


Improves RSI Validator

About the PR
I've forked the github action. It no longer errors when a meta.json is deleted, and also reduced some unnecessary logging.
In the future we can verify that PNGs actually exist if there's a state name for them, but for now I just want to fix the error.
Screenshots

N/A
Changelog

N/A

Fork: https://github.com/ike709/json-schema-validator

forked to https://github.com/space-wizards/json-schema-validator, please update the pr to use that one instead

@PaulRitter done


Correct comments on node routes for different traffic modes

Signed-off-by: Jianjun Shen<EMAIL_ADDRESS>

Codecov Report

Merging #2737 (a7dd6f4) into main (d8d70ac) will decrease coverage by 19.71%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main    #2737       +/-   ##
===========================================
- Coverage   60.70%   40.99%   -19.72%
===========================================
  Files         285      158      -127
  Lines       23003    19272     -3731
===========================================
- Hits        13965     7901     -6064
- Misses       7544    10623     +3079
+ Partials     1494      748      -746

Flag
Coverage Δ

kind-e2e-tests
?

unit-tests
40.99% <ø> (-0.08%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.


1d problems

For snpe and snl, sbi uses flows per default. Fitting flows over univariate distributions is currently problematic though: If a maf is used, the univariate distribution will be approximated with a single Gaussian (which could be very bad). If a nsf is used, a cryptic error will be thrown as its parameters cannot be properly initialised. We should raise proper warnings and possibly default to using mixture distributions.

Agreement was to

raise Warning for every estimator except MDN and NSF
raise Error for NSF, point at a known issue number in issue tracker.
in case of Warning or Error, recommend the user to choose an MDN as density estimator.


Adjust Mit combos to use a priorty system

[X] DRK
[X] GNB
[X] PLD
[X] WAR

Preview:

@Akechi-kun this is now ready for you to double-check and merge.


CODE NOT COMING IN THE MAIL.

Describe the bug
I do not receive a code in my e-mail to connect my wallet.
Reproduction
I do not receive a code in my e-mail to connect my wallet.
System Info
I do not receive a code in my e-mail to connect my wallet.

Logs
I do not receive a code in my e-mail to connect my wallet.

Validations

[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Please use Gmail mailbox to bind


ListUsers filter does not work

Attempting a search for users using a filter returns the pool as if no filter was added.  Confirmed by attempting the same query in cognito local vs actual cognito
Steps to recreate
aws --endpoint http://localhost:9229 cognito-idp list-users --user-pool-id <local user pool> --filter "family_name = \"WhateverValueYouWant\"

Expected
{
  "Users": []
}

Actual
{
  "Users": [...every user in pool]
}

This behaviour is documented in the readme:

¹ does not support pagination or query filters, all results and attributes will be returned in the first request.

Pull Requests are welcome, this isn't a high priority issue for me personally.

Typically as soon as I closed this issue saying I don't need it I immediately needed it myself 🤦
This has been implemented and released in v3.23.0.


openshift controller-manager pod hotlooping

In a 4.0 cluster I installed today, after the etcd hack for the flannel bridge went in, the openshift controller-manager pod is hotlooping:
I1011 02:51:54.043123       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043138       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043153       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043167       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043182       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043194       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043209       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043222       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043238       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043251       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043266       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043280       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage
I1011 02:51:54.043295       1 resource_quota_controller.go:199] Resource quota controller queued all resource quota for full calculation of usage

It seems like ResourceQuotaSyncPeriod might not be defaulted properly, resulting in no wait in the wait.Until()
https://github.com/openshift/origin/blob/master/vendor/k8s.io/kubernetes/pkg/controller/resourcequota/resource_quota_controller.go#L295
/assign @sttts
@deads2k

after the etcd hack for the flannel bridge went in

what is that? How is that related?

@sttts gets flannel to work with kube-dns.  not material to this situation except that, before the hack, the controller manager couldn't start up.

fixed in https://github.com/openshift/origin/pull/21225


Bug?, Error?: | expected (), found JsValue | and | the trait From<JsValue> is not implemented for () |

Explanation, details:
I'm trying to create a simple web-page app using examples while I review the documentation. However, I encounter an error displayed on the terminal when I attempt to execute it with trunk serve --open.
Sorry if, in the end, the issue isn't actually a problem and it turns out my code is incorrect. My fault.
My code:
Cargo.toml
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
yew = { version = "0.21", features = ["csr"] }
stylist = { version = "0.13.0", features = ["yew", "parser"] }

App.rs
use yew::prelude::*;

#[function_component(App)]
pub fn app() -> Html {
    let a: Style = style!(r#"background-color: red;"#).unwrap();
    html! {
        <main>
            <div class={a}>
                {"da"}
            </div>
        </main>
    }
}

Main.rs
mod app;

use app::App;

fn main() {
    yew::Renderer::<App>::new().render();
}

[Rustc version]
rustc 1.76.0 (07dca489a 2024-02-04)
[Cargo version]
cargo 1.76.0 (c84b36747 2024-01-18)
[Trunk version]
trunk 0.18.8
The docs I read:
link = https://docs.rs/stylist/latest/stylist/

This is the entire message from the terminal.
PS D:\Carpetas\Proyectos\EmailClient\web-app> trunk serve --open
2024-02-24T20:22:06.611349Z  INFO Starting trunk 0.18.8
2024-02-24T20:22:06.613302Z  INFO starting build
2024-02-24T20:22:06.615707Z  INFO spawning asset pipelines
2024-02-24T20:22:06.818957Z  INFO building trunk-template
warning: virtual workspace defaulting to resolver = "1" despite one or more workspace members being on edition 2021 which implies resolver = "2"
note: to keep the current resolver, specify workspace.resolver = "1" in the workspace root's manifest
note: to use the edition 2021 resolver, specify workspace.resolver = "2" in the workspace root's manifest
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
Compiling stylist v0.13.0
error[E0308]: mismatched types
--> C:\Users\user.cargo\registry\src\index.crates.io-6f17d22bba15001f\stylist-0.13.0\src\manager\mod.rs:244:38
|
244 |         .map_err(|e| Error::Web(Some(e)))
|                                 ---- ^ expected (), found JsValue
|                                 |
|                                 arguments to this enum variant are incorrect
|
help: the type constructed contains JsValue due to the type of the argument passed
--> C:\Users\user.cargo\registry\src\index.crates.io-6f17d22bba15001f\stylist-0.13.0\src\manager\mod.rs:244:33
|
244 |         .map_err(|e| Error::Web(Some(e)))
|                                 ^^^^^-^
|                                      |
|                                      this argument influences the type of Some
note: tuple variant defined here
--> C:\Users\user.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library/core/src/option.rs:578:5
|
578 |     Some(#[stable(feature = "rust1", since = "1.0.0")] T),
|     ^^^^
error[E0277]: ? couldn't convert the error to ()
--> C:\Users\user.cargo\registry\src\index.crates.io-6f17d22bba15001f\stylist-0.13.0\src\manager\mod.rs:255:91
|
255 |             if let Some(m) = document.query_selector(&format!("style[data-style={}]", id))? {
|                                                                                ^ the trait From<JsValue> is not implemented for ()
|
= note: the question mark operation (?) implicitly performs a conversion on the error value using the From trait
= help: the following other types implement trait From<T>:
<(T,) as From<[T; 1]>>
<(T, T) as From<[T; 2]>>
<(T, T, T) as From<[T; 3]>>
<(T, T, T, T) as From<[T; 4]>>
<(T, T, T, T, T) as From<[T; 5]>>
<(T, T, T, T, T, T) as From<[T; 6]>>
<(T, T, T, T, T, T, T) as From<[T; 7]>>
<(T, T, T, T, T, T, T, T) as From<[T; 8]>>
and 4 others
= note: required for Result<(), ()> to implement FromResidual<Result<Infallible, JsValue>>
error[E0277]: ? couldn't convert the error to ()
--> C:\Users\user.cargo\registry\src\index.crates.io-6f17d22bba15001f\stylist-0.13.0\src\manager\mod.rs:257:44
|
257 |                     parent.remove_child(&m)?;
|                                            ^ the trait From<JsValue> is not implemented for ()
|
= note: the question mark operation (?) implicitly performs a conversion on the error value using the From trait
= help: the following other types implement trait From<T>:
<(T,) as From<[T; 1]>>
<(T, T) as From<[T; 2]>>
<(T, T, T) as From<[T; 3]>>
<(T, T, T, T) as From<[T; 4]>>
<(T, T, T, T, T) as From<[T; 5]>>
<(T, T, T, T, T, T) as From<[T; 6]>>
<(T, T, T, T, T, T, T) as From<[T; 7]>>
<(T, T, T, T, T, T, T, T) as From<[T; 8]>>
and 4 others
= note: required for Result<(), ()> to implement FromResidual<Result<Infallible, JsValue>>
Some errors have detailed explanations: E0277, E0308.
For more information about an error, try rustc --explain E0277.
error: could not compile stylist (lib) due to 3 previous errors
2024-02-24T20:22:07.228717Z ERROR error
error from build pipeline
Caused by:
0: HTML build pipeline failed (1 errors), showing first
1: error from asset pipeline
2: error during cargo build execution
3: cargo call to executable 'cargo' with args: '["build", "--target=wasm32-unknown-unknown", "--manifest-path", "D:\Carpetas\Proyectos\EmailClient\web-app\Cargo.toml"]' returned a bad status: exit code: 101
2024-02-24T20:22:07.236936Z  INFO serving static assets at -> /
2024-02-24T20:22:07.237214Z  INFO server listening at http://<IP_ADDRESS>:8080

This is caused by an internal workaround for a compiler bug (hard to explain inline here). Duplicate of #129. Simply set resolver = "2" in your workspace's Cargo.toml as the compiler warning tells you to anyway.


CSS affecting other module?

I am currently using eouia's MMM-CalendarEXT2, and when I use Todoist module as well, everything on the monthly look ahead view of my calendar is underlined. Should I edit Todoist's module's CSS to be more module specific (I am assuming maybe some of the variables between these two modules are the same...) Thanks for any pointers.

I noticed this issue as well.  Looks like the class name of "today" in the Todoist CSS gets grabbed into the class name of the today in the calendarEXT2.  I'm going to test just using custom.css to remove the deceration.
.today {
text-decoration: underline #03a05c;
}


octave: 5.2.0 -> 6.1.0

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

OK, changelog seems to be not too much change

build segfaults on darwin:
make[2]: *** [Makefile:30829: libgui/languages/be_BY.qm] Error 139
  /nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin/bash: line 1: 39250 Segmentation fault: 11  lrelease -silent -qm libgui/languages/de_DE.qm libgui/languages/de_DE.ts
  make[2]: *** [Makefile:30829: libgui/languages/de_DE.qm] Error 139
  make[2]: Leaving directory '/private/tmp/nix-build-octave-6.1.0.drv-0/octave-6.1.0'
  make[1]: *** [Makefile:27510: all-recursive] Error 1
  make[1]: Leaving directory '/private/tmp/nix-build-octave-6.1.0.drv-0/octave-6.1.0'

Result of nixpkgs-review pr 105444 run on x86_64-linux 1

2 packages marked as broken and skipped:

octave-jit
python27Packages.python-csxcad

9 packages built:

gama
minc_widgets
octave
octaveFull
openems
python37Packages.python-csxcad
python37Packages.python-openems
python38Packages.python-csxcad
python38Packages.python-openems


[core-amqp,service-bus] add react-native mappings

for entry point
for runtime info

API change check
API changes are not detected in this pull request.

I assume this has been tested in an actual app.

Yes, tested in a sample app on Android Emulator.


Notes on "System Information Discovery Detection"

Hi
I like that search. In theory..  In practice there are some issues:

There should be an alias the  multivalue field process:
.. | stats values(process) AS process ..    (or maybe use 'processes' since there are more than one ?)
This simplifies filtering a lot because referencing values(process) is not really handy.

Please also add the parent process. There is some (legitimate) Software that is running these commands.
Whitelisting by parent process is much easier here.
Thanks

looks good to me now. thanks.

Updated the SPL logic for better output. Here are the results! this way you can now whitelist parent process names correctly


Add plugin name to installation instructions in README.md (Plugin name is not mentioned in the installation instructions)

TLDR; I suggest adding the name of the plugin "Code Editor Shortcuts" to the installation section of the readme.
Steps to reproduce:

Open the Obsidian app.
Click the Settings button.
Click the Community plugins tab.
Search for the plugin "obsidian editor shortcuts".

Expected behavior:
The plugin should be visible in the list of plugins.
Actual behavior:
The plugin is not visible in the list of plugins.
Proposed solution:
Add the name of the plugin to the installation instructions section of the
repository's README.md file. This will make it easier for users to find the plugin in the Obsidian plugin library.
Thank you for your time and consideration.
More information explanation of why anyone should care
I found this plug in by first searching Google for a multi-cursor editor and then reading a thread on the Obsidian forum where this plugin was mentioned. The link looks like this:

The name of the repository for the plugin is obsidian-editor-shortcuts but I can't find this plugin when I search the Obsidian library with the that name. Belatedly I found out that the plugin's name is written at the top of the README.md for the repository. However, I scrolled past the heading of the Readme to find the installation instructions, as one does, and they currently read:

Installing the plugin
Refer to the official installation instructions for third-party plugins here.

It would be good to add the name of the plug in here in the installation instructions for others who have the same problem I did.

Thanks for the suggestion 🙂 this has been included in the latest  README


Core dump when combining VCFs

Hi there
I thought i'd give vcfcombine another go, and on testing on small test VCfs it worked perfectly.
However when I tried this (on a clean git clone --recursive), combining 2600 VCFs, I got this
vcflib/bin/vcfcombine results/*vcf > outvcf
terminate called after throwing an instance of 'std::out_of_range'
what():  basic_string::substr
Aborted (core dumped)
bash-4.1$

What'd you find in "output"?
On Fri, Sep 18, 2015 at 4:33 PM, Zamin Iqbal<EMAIL_ADDRESS>wrote:

Hi there
I thought i'd give vcfcombine another go, and on testing on small test
VCfs it worked perfectly.
However when I tried this (on a clean git clone --recursive), combining
2600 VCFs, I got this
vcflib/bin/vcfcombine results/*vcf > outvcf
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::substr
Aborted (core dumped)
bash-4.1$
—
Reply to this email directly or view it on GitHub
https://github.com/ekg/vcflib/issues/103.

ooh - was just recompiling in debug. Looking

Do you mean "outvcf" ?

Yes! outvcf :)
On Fri, Sep 18, 2015 at 4:36 PM, Zamin Iqbal<EMAIL_ADDRESS>wrote:

Do you mean "outvcf" ?
—
Reply to this email directly or view it on GitHub
https://github.com/ekg/vcflib/issues/103#issuecomment-141484896.

It's empty!

[Thread debugging using libthread_db enabled]
terminate called after throwing an instance of 'std::out_of_range'
what():  basic_string::substr
Program received signal SIGABRT, Aborted.
0x0000003a11e32625 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.149.el6_6.9.x86_64 libgcc-4.4.7-11.el6.x86_64 libstdc++-4.4.7-11.el6.x86_64
(gdb) bt
#0  0x0000003a11e32625 in raise () from /lib64/libc.so.6
#1  0x0000003a11e33e05 in abort () from /lib64/libc.so.6
#2  0x0000003a146bea7d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib64/libstdc++.so.6
#3  0x0000003a146bcbd6 in ?? () from /usr/lib64/libstdc++.so.6
#4  0x0000003a146bcc03 in std::terminate() () from /usr/lib64/libstdc++.so.6
#5  0x0000003a146bcd22 in __cxa_throw () from /usr/lib64/libstdc++.so.6
#6  0x0000003a14661db7 in std::__throw_out_of_range(char const*) () from /usr/lib64/libstdc++.so.6
#7  0x00000000004199ae in vcflib::VariantCallFile::parseHeader(std::basic_string<char, std::char_traits, std::allocator >&) ()
#8  0x0000000000419b60 in vcflib::VariantCallFile::parseHeader() ()
#9  0x00000000004073ff in main ()
(gdb)

Anything useful I can query while in gdb?

If you can add '-g' to
https://github.com/ekg/vcflib/blob/master/Makefile#L100 and recompile, then
we can see exactly what line breaks.
It looks unhappy with the header somehow, but the exact line will explain
what's going on.
On Fri, Sep 18, 2015 at 4:40 PM, Zamin Iqbal<EMAIL_ADDRESS>wrote:

Anything useful I can query while in gdb?
—
Reply to this email directly or view it on GitHub
https://github.com/ekg/vcflib/issues/103#issuecomment-141485688.

Here you go
0x0000003a11e32625 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.149.el6_6.9.x86_64 libgcc-4.4.7-11.el6.x86_64 libstdc++-4.4.7-11.el6.x86_64
(gdb) bt
#0  0x0000003a11e32625 in raise () from /lib64/libc.so.6
#1  0x0000003a11e33e05 in abort () from /lib64/libc.so.6
#2  0x0000003a146bea7d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib64/libstdc++.so.6
#3  0x0000003a146bcbd6 in ?? () from /usr/lib64/libstdc++.so.6
#4  0x0000003a146bcc03 in std::terminate() () from /usr/lib64/libstdc++.so.6
#5  0x0000003a146bcd22 in __cxa_throw () from /usr/lib64/libstdc++.so.6
#6  0x0000003a14661db7 in std::__throw_out_of_range(char const*) () from /usr/lib64/libstdc++.so.6
#7  0x00000000004199ae in _M_check (this=0x19ff280, hs="")
at /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:309
#8  substr (this=0x19ff280, hs="") at /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2003
#9  vcflib::VariantCallFile::parseHeader (this=0x19ff280, hs="") at src/Variant.cpp:1178
#10 0x0000000000419b60 in vcflib::VariantCallFile::parseHeader (this=0x19ff280) at src/Variant.cpp:1172
#11 0x00000000004073ff in openFile (argc=2601, argv=) at src/Variant.h:100
#12 open (argc=2601, argv=) at src/Variant.h:93
#13 main (argc=2601, argv=) at src/vcfcombine.cpp:100

(gdb) frame 8
#8  substr (this=0x19ff280, hs="") at /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/basic_string.h:2003
2003				    _M_check(__pos, "basic_string::substr"), __n); }
(gdb) l
1998	       *  is thrown.
1999	      /
2000	      basic_string
2001	      substr(size_type __pos = 0, size_type __n = npos) const
2002	      { return basic_string(this,
2003				    _M_check(__pos, "basic_string::substr"), __n); }
2004
2005	      /
2006	       *  @brief  Compare to a string.
2007	       *  @param str  String to compare against.

frame 9
#9  vcflib::VariantCallFile::parseHeader (this=0x19ff280, hs="") at src/Variant.cpp:1178
1178	    if (hs.substr(hs.size() - 1, 1) == "\n") {
(gdb) l
1173
1174	}
1175
1176	bool VariantCallFile::parseHeader(string& hs) {
1177
1178	    if (hs.substr(hs.size() - 1, 1) == "\n") {
1179		hs.erase(hs.size() - 1, 1); // remove trailing newline
1180	    }
1181	    header = hs; // stores the header in the object instance
1182
(gdb) print hs
$1 = ""
(gdb)

frame 11
#11 0x00000000004073ff in openFile (argc=2601, argv=) at src/Variant.h:100
100	        parsedHeader = parseHeader();
(gdb)

2601 means the very last file in the list - there are 2600 files

hs = "" means that the header string is empty. The error could definitely
be improved. Doing that now.
I'm concerned that the file name list is too long for some system limit.
On Fri, Sep 18, 2015 at 4:55 PM, Zamin Iqbal<EMAIL_ADDRESS>wrote:

2601 means the very last file in the list - there are 2600 files
—
Reply to this email directly or view it on GitHub
https://github.com/ekg/vcflib/issues/103#issuecomment-141491298.

Hm - ok I'll try splitting in two!

Try the current git HEAD. It should show you what file failed to open now.
On Fri, Sep 18, 2015 at 4:59 PM, Zamin Iqbal<EMAIL_ADDRESS>wrote:

Hm - ok I'll try splitting in two!
—
Reply to this email directly or view it on GitHub
https://github.com/ekg/vcflib/issues/103#issuecomment-141493127.

OK splitting in two has the same problem
But if I restrict to just 500 files, it does not core dump

Will dig around - thanks Erik

If my suspicion is correct, you'll see something with a truncated filename
when you re-run with the commit I just pushed. This means that the only way
to run the merge will be to use an input file, which would require a little
patch to vcfcombine.
On Fri, Sep 18, 2015 at 5:05 PM, Zamin Iqbal<EMAIL_ADDRESS>wrote:

Will dig around - thanks Erik
—
Reply to this email directly or view it on GitHub
https://github.com/ekg/vcflib/issues/103#issuecomment-141494353.

OK, well for now I can manage - thanks a lot Erik. vcfcombine is lovelty and fast

Close.


Cannot patch secret

I seem to be stuck for some reason. I just cloned master of this repository, trying to install StorageOS (with CSI on k8s 1.11.2) and I am stuck at:
kubectl patch secret/storageos-api --namespace default --patch "{\"data\": {\"apiAddress\": \"dGNwOi8vMTAuNDMuMjAyLjEwMzo1NzA1\"}}"
Error from server (NotFound): secrets "storageos-api" not found

I also see no storageos-api in default:
$ kubectl get secrets -n default
NAME                        TYPE                                  DATA   AGE
default-token-kd4q4         kubernetes.io/service-account-token   3      35d
netes-default-token-zrcrj   kubernetes.io/service-account-token   3      35d

Is it related to #38 ?

Just saw that the secret is not needed for CSI, hence it's not created.
Sorry for the noise.


TypeError: search() got an unexpected keyword argument 'page'

Any one know how to fix it?

Are you using the latest version of the scraper?
You can update by doing a pip install -U play-scraper.


This "Daily Comics" app appears to be unmaintained since March 2020

@tardypad and @Maledictus, this "Daily Comics" app appears to be unmaintained since March 2020, meanwhile some issues and pull-requests (PRs) have been piling up.
If both of you cannot or do not want to maintain "Daily Comics" any more, would you transfer this repository to a GitHub-"organisation" I might create for maintaining currently unmaintained apps for SailfishOS?  The idea is to maintain (minimalistically) such apps in a small team with no single human as a point of failure, be open to PRs with enhancements and to carry out administrative tasks, such as as reviewing PRs.  I would provide you with a "collaborator" role for the transferred repo, if you are interested; this would enable you to still commit freely to it.
Background:

By "transferring" a GitHub repository, all issues, releases, PRs etc. are moved over as well (plus the repo's web-page is redirected to its new location), in contrast to cloning ("forking") a git repository, which just issues a git clone command and only copies the code.
Side note: "Transferring" a GitHub repository works via "General settings: Danger zone: Transfer ownership".  Note that one seems to need access to the target organisation for that, so I would have to create this organisation, first.
I also consider to ask a few other former maintainers of apparently abandoned SailfishOS apps, if they transfer their repos.  "Daily Comics" is the first one I address, because I recently submitted multiple PRs for it.
Even though I am also one of three "owners" of the GitHub-"organisation" for the SailfishOS-Chum community repository, I do not consider moving "Daily Comics" there, because that would render the currently published releases at OpenRepos as not updatable (i.e., can be updated only via removing and then reinstalling the app).
We are already successfully practising such a setup (a small maintenance team) for SailfishOS:Chum, Patchmanager and Storeman.

I created the GitHub-"organisation" SFOS-Apps and invited both of you.

Thanks @Olf0 for the interest and effort to keep the app alive!
I'm not ready to completely transfer the repository to such a new organization.
I'd prefer to add you here as a collaborator like I did with @Maledictus.
I can provide basic review of the PRs and take care of the uploading to OpenRepos.

Thanks @Olf0 for the interest and effort to keep the app alive!

As usual with Free Software, I am primarily doing this for myself, because I am using Daily Comics daily!  But as I did the work, I see no reason not to share it with others and hope for some contributing back.

I'm not ready to completely transfer the repository to such a new organization.
I'd prefer to add you here as a collaborator like I did with @Maledictus.

The collaborator role is quite limited, it only allows for write access to the git repository proper (i.e., committing changes), but not any of the settings in the GitHub web-frontend.  Some of these settings are needed for, e.g., Transifex or Weblate integration, web-hooks etc.
Additionally keeping it in a personal repository still retains the single point of failure: one repository owner.

I can provide basic review of the PRs and take care of the uploading to OpenRepos.

Thank you very much, uploading a new release at OpenRepos is much appreciated, because for users at OpenRepos nothing changes, then.
Most PRs accumulated (and all of mine) are trivial.  I personally only plan for minimal maintenance, i.e., keep the app running under recent SailfishOS releases.  If really somebody poses a PR with significantly code changes, you as the original author would be logically the first to address for a review (my C++ skills are bad).
Back to the core point (yes, I am trying to convince you): You lose nothing by transferring this repo to a GH-org you are part of.  I could be as destructive here in the collaborator role (i.e., with write access) as I can at the org.  Furthermore, it is Free Software, any way: I could clone ("fork") this repo and continue as I like, but unfortunately would loose all issues, PRs and releases, plus all the history of these three categories.  This, and the fact that I would be a single point of failure then, lets me strongly suggest to transfer the repo.
P.S.: Due to the experience with the GH-organisations storeman-developers, sailfishOS-patches and sailfishos-chum, where I perform mostly of the administrative work (GH config, overhauling READMEs, playing release manager, but not much else), I am quite savvy with the fine granular access rights which can be provided to members of an organisation on per-repository basis.  If this is important for you, I can assure you that no one except for you, @maledictus and me will gain write or administrative access to the Daily Comics repository; it is just some tedious work for me to configure it as such and not to get lost in the plethora of settings spread over at least two places.

Daily Comics was revived here.


Simplify multi status checks

Proposed Changes

Simplify the conditions to enable validation of the variables that we need to submit status checks. These checks and related logging run only if MULTI_STATUS=true and RUN_LOCAL=false.
Avoid emitting confusing message logs about status reports when RUN_LOCAL=false.

Readiness Checklist
Author/Contributor

[x] I included all the needed documentation for this change.
[x] I provided the necessary tests.

Reviewing Maintainer

[x] Label as breaking if this is a large, fundamental change.
[x] Label as either: automation, bug, documentation, enhancement, infrastructure.

We need #4960 before this one.

@zkoppert going ahead with this one because it's a simple change so you can focus on reviewing other PRs :)


Cannot re-initialize MaterialTheme to override colors with a new palette

Attempting to reinitialie MaterialTheme with a different color palette results in the same color palette from App.xaml being used.
Repro sample:
testcolors.zip

(only working on Windows at the moment but not for the other platforms)

Caused by https://github.com/unoplatform/uno/issues/13724

fixed by https://github.com/unoplatform/uno/pull/13866


Schema generation?

This looks awesome - have you ever considered generating a schema as well?

@henricook Thank you for reporting. What "schema" means? Would you give me some examples?

I mean like an XML schema - https://en.wikipedia.org/wiki/XML_schema
I guess in the spirit of the library you'd have to convert from a JSON schema, which I think play-json can help read but not generate... so perhaps the play-json deficiency needs to be addressed before you'd support it here


when I open the proxt immedietly it closes

log is here :
[2023-07-05 20:04:59.486] [GTProxy] [info] Starting GTProxy v1.4.2...
[2023-07-05 20:04:59.499] [GTProxy] [error] Failed to bind to port 443.

Maybe change 8080

how can I change that?

Just wait for guck tube bro hehe i never get error like that

log is here : [2023-07-05 20:04:59.486] [GTProxy] [info] Starting GTProxy v1.4.2... [2023-07-05 20:04:59.499] [GTProxy] [error] Failed to bind to port 443.

are you using android?

if you are using android, please read the wiki https://github.com/GuckTubeYT/GTProxy/wiki/Connecting-to-GTProxy#android

I am using windows

When I try to change port and compile again it gives this error :
In file included from eventClient.c:4:
eventClient.h:4:10: fatal error: ../enet/include/enet.h: No such file or directory
#include "../enet/include/enet.h"
^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from eventServer.c:4:
eventServer.h:4:10: fatal error: ../enet/include/enet.h: No such file or directory
#include "../enet/include/enet.h"
^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
httpService.c: In function 'HTTPSServer':
httpService.c:171:55: warning: passing argument 4 of 'setsockopt' from incompatible pointer type [-Wincompatible-pointer-types]

please give me all logs when you build it

I am using windows

maybe, the port (443) is already used, find the app using port 443, and then stop it

Okey I found the app and stopped that now proxy opens but it stucks at getting server adress


U+FFFD � REPLACEMENT CHARACTER in internal/cpu doc

Under the variables of internal/cpu header Lots of unknown chars are found for example arm64 var doc:
The booleans in ARM contain the correspondingly named cpu feature bit.��// The struct is padded to avoid false sharing.

My best guess from looking at the Go code is that the unknown characters are:
I'll fix it.


Rename Make target integration-test to integration_test (fixes #1335)

@hannes-ucsc

Looks good. Will merge together with #1330 so I don't have to change Jenkins config twice.


Redundant Parenthesis

Description
Given a string of balanced expression, find if it contains a redundant parenthesis or not. A set of parenthesis are redundant if the same sub-expression is surrounded by unnecessary or multiple brackets. Print True if redundant, else False.
Note: Expression may contain ‘+‘, ‘*‘, ‘–‘ and ‘/‘ operators. Given expression is valid and there are no white spaces present.
Input:
((a+b))
(a+(b)/c)
(a+b*(c-d))
Output:
Yes
Yes
No
Explanation:

((a+b)) can reduced to (a+b), this Redundant
(a+(b)/c) can reduced to (a+b/c) because b is
surrounded by () which is redundant.
(a+b*(c-d)) doesn't have any redundant or multiple
brackets.

Domain
Competitive Programming
Type of Contribution
Addition
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of LearnCPP.

/assign


[improve][broker] Code simplify in AbstractBaseDispatcher in filterEntriesForConsumer loop

Fixes #18328
Modifications

batch subscription.acknowledgeMesage in filterEntriesForConsumer loop

remove unnecessary Optional package parameter for filterEntriesForConsumer metadataArray

avoid call O(consumer) times of topic.getMigratedClusterUrl in checkAndApplyReachedEndOfTopicOrTopicMigration

Verifying this change

[ ] Make sure that the change passes the CI checks.

This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:
If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

@codelipenghui @eolivelli @rdhabalia  sorry for all the change in commit, can you guys take a look?


Support the 'in' idiom for Python

Support Python's containment idiom, such as:
if query_uri in doc.componentDefinitions:
     pass

This can be implemented by creating the method OwnedObject::__contains__(item)

Implemented in f5f96189e7c329d54072cca3b86b2a5188e4f344


fix(rewrite-java): excluding Enum classess from getting serialVersionUid

Changelogs

Excluding Enum classes from getting serialVersionUid

Refereces

https://stackoverflow.com/questions/3057751/how-to-ensure-consistency-of-enums-in-java-serialization/3057790
https://www.infoworld.com/article/2072870/java-enums-are-inherently-serializable.html

Thanks @mrbitrary!

Happy to help @pway99


Emitting COMDAT sections in single file causes size bloat

The fact that we're emitting ReadyToRun helpers as COMDAT foldable no matter what is causing a pretty big size bloat for the default single file configuration. E.g. the simple Delegate test compiles to a 15 MB executable in Debug configuration and more than a half of it is padding inserted by the linker for reasons unknown.

This was fixed in #2248.
21 MB Generics.exe test is now just 6 MB. 🎉


module import binary compatibility never checked in the IDE

When run in the IDE, the JS backend never checks imported modules for BC.

Is this something that happens when loading a JS module with incompatible binary version? Or a JVM module?

It happens with ceylon.collection.


Add deploy resource context menu to apps

Fixes #284
I opted to label the context action as "Deploy Resource" for the following reasons:

Staying consistent to Azure* that typically refers to projects you deploy to web apps as "resources".
Makes it more clear that the web app/slot is being ACTED on as the Resource/Project is the object of the sentence.  I think that this is more clear than "Deploy to Web App"

*https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-template-deploy-cli

Wait but the article you linked is exactly the scenario we want stay away from as much as possible (in terms of wording). That article is about deploying a resource for the first time - aka you're creating a new web app. We want to make as clear as possible that this is deploying your current project to an existing web app.
I think "to" is very important -  "Deploy Web App" and "Deploy to Web App" mean very different things. Without the "to", its synonymous with "Create Web App".

It seems to me that "resource" is used in that article because deploying an ARM template could be pretty much anything. I don't like "resource" here - it's generic for no reason.
I agree with Eric that "to" is the super important part.
Be specific and include "to".. I would really rather this be "Deploy to Web App."

Right, "Deploy Web App" is confusing because there are two things that could be considered a web app.  Your app on Azure and the web app project.  That's why I would opt for something more generic then, like local project or local web app.
I thought the issue we had a few releases ago was that all context menu items assume the "Azure Web App" to be the subject of the verb since that is the item that is right-clicked.  Such as, Start.  Start what?  The Azure Web App.  Or Open in Portal.  What is being opened?  The Azure Web App.
I think if we word it as "Deploy to Web App," we've changed the assumed subject of the context menu.  Deploy what?  The local project.
The alternative, "Deploy Local Project," is assuming that the Azure Web App is the subject.   Deploy to what?  The Azure Web App.
I don't have a strong opinion on this, but I do want to avoid the issues that caused us to remove the context menu item in the first place.

I have a strong opinion against the following:

Deploy Resource
Deploy to Resource
Deploy Web App

The reasons we removed this entry point still exist and I think this entry point will be confusing for some people no matter what. We're only adding this back because we've had several users request it. I'd be fine with any of the following:

Deploy
Deploy to Web App
Deploy to Slot
Deploy local project
Deploy workspace
Deploy workspace folder
Deploy folder
Deploy zip


Reverse beacon sorting

The beacons were sorted from weakest RSSI to strongest. In IndoorPositioning.updateLocation() this resulted in the strongest beacons being discarded if there existed more than 3 beacons that are below the minimumRssiThreshold.
In commit debc2b0f59caf671bae254245c70ffe250466249 the call to Collections.reverse was, I assume accidentally, removed. Introducing this behaviour. Since beacon sorting isn't used elsewhere I think it's safe to reverse the sorting algorithm, but reintroducing Collections.reverse would also work.

Codecov Report

Merging #145 into dev will not change coverage.
The diff coverage is 0%.

@@            Coverage Diff            @@
##                dev     #145   +/-   ##
=========================================
  Coverage     39.42%   39.42%
  Complexity      235      235
=========================================
  Files            40       40
  Lines          1357     1357
  Branches        132      132
=========================================
  Hits            535      535
  Misses          771      771
  Partials         51       51

Impacted Files
Coverage Δ
Complexity Δ

...exenio/bleindoorpositioning/ble/beacon/Beacon.java
51.4% <0%> (ø)
30 <0> (ø)
:arrow_down:

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 2146283...b363778. Read the comment docs.

Hey, thanks for the heads up and the proposed solution.
I would prefer the fix to not be a breaking change (I know projects that are using the current Beacon.RssiComparator). We could create two new comparators (with more meaningful naming) and mark the current one a deprecated, or we could re-add the reversing.

Are RssiHighToLowComparator and RssiLowToHighComparator acceptable?

That looks better. I would suggest Ascending and Descending instead, though.
It would probably make sense to move these two new comparators to new classes instead of them being inner classes of Beacon. What do you think, @Uwinator ?
Also, when deprecating stuff, always add a reference to the class that should be used instead to the JavaDoc. For instance: @deprecated use {@link AscendingRssiComparator} instead

Like so?


React.createElement: type is invalid -- expected a string or a class/function but got: object

Not working after upgrading from react native 0.48 to 0.50. Both ios and android.
Any idea?
I installed using branch 6.0.0: github:react-native-community/react-native-svg#6.0.0
Tried to unlink and relink didn't fix.

Seems to happen on all components that use createReactNativeComponentClass

Fixed on https://github.com/react-native-community/react-native-svg/pull/486

Merged


edit theme and admin

👷 Deploy Preview for adoring-leavitt-e31a11 processing.
🔨 Explore the source changes: 1a85a8ee17c8b6b3e385598a90eddc5a69e34d9f
🔍 Inspect the deploy log: https://app.netlify.com/sites/adoring-leavitt-e31a11/deploys/6227728e10eb030007f499df


Reorder widgets in ReorderableListView with a Controller

explanation
what I mean that I need to reorder a widget without long pressing on it an moving it above or under its current position, instead I want move the widget I press on to the top of the list with the same effect and i can control the duration of the moving time from point A to B
Example
Video of the effect I'm looking to do
https://user-images.githubusercontent.com/28146110/102709361-a5e82b00-42b2-11eb-8877-794d362a9aa6.mp4

cc @darrenaustin

Any updates?


Overlapping matches in String#scan and #rindex

When String#scan finds a match, it advances the search index to the end of the current match:
https://github.com/crystal-lang/crystal/blob/9082692c0156b8924c97b568de8c8b3fb010a58c/src/string.cr#L4696-L4704
This implies the matches must not overlap, but it is equally reasonable to ask for matches that overlap:
"aabcddx".scan(/a...d/, ...).map(&.[0]) # => ["aabcd", "abcdd"]

So I think there should be an optional parameter overlapping : Bool = false added to all #scan overloads; if that parameter is true, then only match_bytesize += char_bytesize_at(byte_offset) is called regardless of the length of the match. This goes for #8162 and #10627 as well.
Overlapping results may also affect the behavior of String#rindex(Regex), which currently does not necessarily return the last possible match index, as it relies on #scan:
https://github.com/crystal-lang/crystal/blob/9082692c0156b8924c97b568de8c8b3fb010a58c/src/string.cr#L3523-L3527
"aabcddx".rindex(/a...d/) # => 0

I don't think there is any PCRE2 API for this, so the only way is to use an overlapping scan inside #rindex too.
Note that some overlapping matches could have quadratic complexity when their non-overlapping variants are linear:
"aaab".scan(/a*b/).map(&.[0]) # => ["aaab"]
"aaab".rindex(/a*b/)          # => 0

"aaab".scan(/a*b/, overlapping: true).map(&.[0]) # => ["aaab", "aab", "ab", "b"]
"aaab".rindex(/a*b/, overlapping: true)          # => 3

For #scan the returned strings must be that large, for #rindex I am not sure if this is always justified.

I just came across this issue while solving the day 1 part 2 problem of Advent of Code because I used String#rindex and ran into exactly the issue @HertzDevil described. The tip by @avitkauskas worked.
The behaviour in String#rindex should most probably be classified as bug.


Scheduling and Alert Messages

DESM sends messages but they need to be reviewed for whether or not details are covered to indicate statuses and cover uses cases including:  As a mapper, I need to know the status of a mapping in relation to the group of mappers and if the spine has been added to.

@jeannekitchens could you add more details about when you think update emails would be useful?
Currently this seems like nice to have rather than essential so am making priority 2.


Holiday in Japan during Jul to Aug are incorrect.

workalendar version: 15.3.0
python version: 3.8.10
extensive details on the country / area Calendar: Japan / asia
The following dates on Japan calendar was incorrect.

Marine Day (2021/7/19) was changed to 2021/7/22 this year
Health and Sports Day(2021/10/11) was changed to 2021/7/23 this year.
Mountain Day(2021/8/11) was changed to 2021/8/8 this year.

because of 2021/8/8 is Sunday, 2021/8/9 is also a holiday.

Is there a general rule that some days will always be shifted when they are a specific day of the week or something, or is it something that is decided arbitrarily by Japan authorities every year ? (my real question is: if we fix it for this year, will we have the same problem next year too ?)

The current logic is correct. The Japanese government change the holiday only for this year because of the Olympics.
Here is the statement from the Japanese government.(Sorry it is in Japanese.)
令和３年（２０２１年）の祝日について
令和３年（2021年）に限り、「海の日」は7月22日に、「スポーツの日」は7月23日に、「山の日」は8月8日(※）になります。

平成三十二年東京オリンピック競技大会・東京パラリンピック競技大会特別措置法等の一部を改正する法律（令和2年法律第68号）が本年12月28日に施行されることに伴い、改正後の令和三年東京オリンピック競技大会・東京パラリンピック競技大会特別措置法（平成27年法律第33号）第32条第2項の規定に基づき、令和3年（2021年）における海の日、スポーツの日及び山の日については、上記の通りとなります。

（※）国民の祝日に関する法律（昭和23年法律第178号）第3条第2項の規定に基づき、8月9日は休日となります。

■祝日移動に関するＱ＆Ａなど、詳しくは、首相官邸ホームページ「２０２１年の祝日移動について」※別ウィンドウで開きますを御参照ください。

※令和２年１２月４日 内閣官房東京オリンピック競技大会・東京パラリンピック競技大会推進本部事務局

Japan government's site

Awesome thanks :)
Do you want to do the Pull Request for fixing that or would you rather we do it ?

For the record, here's a DeepL translation of the above:
National Holidays in 2021

In 2021, Umi-no-Hi will be celebrated on July 22, Sports-no-Hi on July 23, and Yama-no-Hi on August 8 (*).

With the enactment of the Act on Partial Revision of the Act on Special Measures for the Tokyo Olympic Games and Tokyo Paralympic Games in 2020 (Act No. 68 of 2000) on December 28, 2021, in accordance with the provisions of Article 32, paragraph 2 of the revised Act on Special Measures for the Tokyo Olympic Games and Tokyo Paralympic Games (Act No. 33 of 2015), the dates of Marine Day, Sports Day, and Mountain Day in 2021 will be as above.

In accordance with Article 3, Paragraph 2 of the Act on National Holidays (Act No. 178 of 1948), August 9 will be a holiday.

For more information, including Q&A regarding the holiday shift, please refer to the website of the Prime Minister's Office, "Holiday Shift in 2021" *This will open in a new window.

December 4, 2020 Secretariat of the Tokyo Olympic Games and Tokyo Paralympic Games Promotion Office, Cabinet Secretariat

(Translated with www.DeepL.com/Translator)

Awesome thanks :)
Do you want to do the Pull Request for fixing that or would you rather we do it ?

@ewjoachim
I think I can do the pull request. Do I need to fork the master branch or just create new branch from the master branch to open a pull request?

You'll need to fork the repository, and then clone your fork locally. In there, you'll create a new branch (named e.g. japan-olympics-update) and then work on that.
Once you've updated the code (in workalendar/asia/japan.py) and the tests (in workalendar/tests/test_asia.py::JapanTest where you'll add a def test_year_2021(sel) method), and add a changelog in Changelog.md, you commit it, and push it to your fork, then open a PR from <your fork>:japan-olympcs-update to workalendar:master and that should be it :)
Thank you !

@ewjoachim
I opened a PR for this issue.
https://github.com/workalendar/workalendar/pull/663

The latest (15.3.1) Release of Workalendar has been pushed to PyPI. You can now upgrade and enjoy your great patch!

https://pypi.org/project/workalendar/15.3.1/
https://github.com/workalendar/workalendar/releases/tag/15.3.1


Update package script fails if wheel package not installed

Installing packages using scripts/update_package.sh fails if wheel package is not installed in environment.
Current behavior

clone repo

create virtual environment and update pip
python -m venv venv
source ./venv/bin/activate
python -m pip install -U pip

run scripts/update_package.sh

fails because wheel not installed

Expected behavior

wheel is installed, if required and scripts/update_package.sh does not fail

Proposed solution
In short, add pyproject.toml configuration file to all subpackages and specify wheel as a build time dependency.
PEP 518 -- "Specifying Minimum Build System Requirements for Python Projects", introduced the ability to specify build requirements in a new pyproject.toml configuration file. This file is respected and used by package installers (i.e. pip) to verify that build time dependencies are satisfied and installed if required.
Assuming this solution is accepted, before introducing pyproject.tomls, it is prerequisite that we determine the minimum required wheel and setuptools versions.

I don't see this as a bug, per se.  The issue is that step 2 doesn't include the command to install things from requirements.txt.  Those project development dependencies are documented in doc/DEPENDENCIES.md, and those details are referenced and linked within the main README.md.  There are also helper options for that in scripts/update_package.sh.
All that said, this certainly demonstrates that things aren't already handled perfectly and that we should look at improvements.

In short, add pyproject.toml configuration file to all subpackages and specify wheel as a build time dependency.

I am fine with going this direction, but if this isn't a bug or otherwise essential, we will need to prioritize it lower.

I don't see this as a bug, per se. The issue is that step 2 doesn't include the command to install things from requirements.txt. Those project development dependencies are documented in doc/DEPENDENCIES.md, and those details are referenced and linked within the main README.md. There are also helper options for that in scripts/update_package.sh.

Austin, just read the manual... haha. That's fair. My only rebuttal, if you would even call it that :), is that I think you should be able to install a package's dependencies through setup.py or an equivalent package metadata file. That implies that for any package, all required dependencies for that package are all listed in its setup.py. This is not the case at the moment.

I'm bumping the project priority of this to High, and will move into Accepted.  Given our hopes for accelerated involvement of others in the community in the near term, we want to get rid of roadblocks like this.


How to train hok3v3?

I run aiarena/3v3/learner/train.py in terminal (wsl2).  Then I got stuck in the get_sample loop.
[Debug] The sample is less than half the capacity 0 5000
[Debug] The sample is less than half the capacity 0 5000
[Debug] The sample is less than half the capacity 0 5000
[Debug] The sample is less than half the capacity 0 5000

I'm looking forward to some tutorials on 3v3 training.

Employing the pre-built image is strongly recommended. To obtain installation instructions, examine the Dockerfile, and for guidance on training procedures, consult cluster.md.


As a user, I want to be able to search using multiple filters so that I can obtain a more precise search of my places of interest

Since a similar feature has been implemented using tags, the team has decided to assign this a low priority and to push back the implementation till v2.0.


bugfix:修复体验问题

Codecov Report

Merging #83 (901f373) into v2.6.x_develop (ca67afe) will decrease coverage by 0.01%.
The diff coverage is n/a.

@@                Coverage Diff                 @@
##           v2.6.x_develop      #83      +/-   ##
==================================================
- Coverage           51.31%   51.29%   -0.02%
==================================================
  Files                 692      692
  Lines               36553    36573      +20
==================================================
+ Hits                18756    18759       +3
- Misses              17797    17814      +17

Impacted Files
Coverage Δ

itsm/trigger/serializers.py
69.41% <0.00%> (-14.18%)
:arrow_down:

itsm/trigger/permissions.py
34.37% <0.00%> (-2.30%)
:arrow_down:

itsm/auth_iam/resources/trigger.py
23.07% <0.00%> (ø)

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 ca67afe...901f373. Read the comment docs.


ek-components: Delay calling createTranslator() until actually needed

createTranslator() in ek-components now relies on window.kolibri being available, and that’s only initialised as part of the app setup, which is after all the imports are processed.
This causes the createTranslator() calls to fail at import time as window.kolibri is undefined.
Fix that by wrapping them in an internal function, which is only called when translated strings are actually needed. Rely on createTranslator() to cache the translator between calls.
Signed-off-by: Philip Withnall<EMAIL_ADDRESS>Fixes: #817

#819 is also needed for the content apps to work


[Concurrency] Remove redundant Sendable conformances in the standard library.

These conformances are all redundant because the Sendable conformance is inherited from a superclass. This resolves a slew of concurrency warnings about redundant Sendable conformances which were introduced by https://github.com/swiftlang/swift/pull/75135.

@swift-ci please smoke test


Questions from users

Issues found:

First opening the app it sometimes starts collecting the locations and putting it into the queue. Sometimes it just don't start collection at all.
The app does not send info to the server automatically as expected. It sends a fist location when the app opens and then don't send anymore.
When able to start the collection the send interval does not work as expected. It just keeps collecting and never sends. This goes until the app stops collecting location and resets. For example, with 'send interval=2 minutes' the last sent is 8 minutes ad increasing until the app resets. Not a hard reset as reopening the app. But a soft reset where it just clears all the fields.

Answers:

"Sometimes it just don't start collection at all." I'm surprised. Don't expect data to be collected on a regular basis if you are in the same radius. The application is optimized to avoid discharging the phone battery. Without moving, the application will not collect data.
That depends on parameters. "Normally", the batch of location is sent when the size of the queue is reached or when phone activity changes  (move->stationary). interval plays here. it corresponds to the time to wait for a change before sending the data.
I've been bringing this up. thx


Still Wondering Why It Exists

Why not?

But why is all that i am thinking.

because nocode is better than anything any human has ever invented

It enables you to do no-bugs-driven-development: Start with no bugs and then introduce none! Tell me any other project that enables you to do that!

BTW are you looking for bugs-driven-development aka. disruption-driven-development? Try Enterprise™, the first non-deterministic-unnecessarily-statically-typed™ programming language!


Updates to New/Set-SupervisoryReviewPolicy

Per Issue #1739

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/policy-and-compliance/New-SupervisoryReviewRule.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/policy-and-compliance/Set-SupervisoryReviewRule.md
:white_check_mark:Succeeded
View (exchange-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Diary module

Checklist

[ ] I have added a changelog entry to CHANGELOG.md file on the branch/fork (if it is an internal change then it is not needed)
[x] Pull request meets the Coding Conventions standards: https://github.com/MontyTRC89/TombEngine/blob/master/CONTRIBUTING.md#coding-conventions

Links to issue(s) this pull request concerns (if applicable)
(replace this sentence with links to issues this PR concerns, otherwise please write "n/a")
Description of pull request

Here are the files and nodes for testing. Please try to make a diary directly from the module. Nodes will be simplified further.
Diary Test.zip


New Feature: Registry

I was wondering about local (and clustered, for that matter) registries so one can have the following features:

Local discovery of one or more processes
Global discovery of processes
Maybe: Management of an agent-pool

Especially with clustered discovery I feel like the compile-time type checking might be problematic because one can't guarantee that the remote side runs exactly the same version and therefore has the same type-details.

A useful feature for sure! One question is how would we type this? Would all the channels held by the registry have to accept the same message type?

That is a wonderful question I thought about as well. I think this would be the logical way this should work, yes.

Maybe something like pg scopes for different process types?


11-incident-type-fact : completed IncidentTypeFactory

Status
READY
Testing
[X] I have added passing tests for all new functionality.
[X] I have confirmed that all test prior to this pull request still PASS.
Documentation
[X] I have fully documented features in this PR's code. Please put an X in the box to confirm.
[ ] This PR does NOT require documentation.
Description
Generate an Incident Type Factory with the singleton pattern and a method to retrieve all IncidentTypes. Write tests.
Resolves Issue Number
Resolves #11
Deploy Notes
git pull --prune
git checkout 11-incident-type-fact
dotnet run

Steps to Test or Reproduce
Outline the steps to test or reproduce the PR here.

Make sure tests pass

Impacted Files in Application
List general components of the application that this PR will affect:

Factories/IncidentTypeFactory.cs
IncidentTypeFactoryTests.cs

LGTM :+1:

👍 LGTM! All Tests Pass!

All tests pass LGTM!