Textual replacement location is incorrect for destructor renaming using AST

While trying to rename a templated class using a within-file rename, explicit destructor call rename is failing. Quite straightforward class with an explicitly defined destructor:
class [[Fo^o]] {
public:
  ~[[Fo^o]]();
};

[[Fo^o]]::~[[Foo]]() {}

int main() {
  [[Fo^o]] f;
  f.~[[Fo^o]]();
}

Test output is as follows:
      Expected: applyEdits(std::move(*RenameResult)).front().second
      Which is: "\n      class abcde {\n      public:\n        ~abcde();\n      };\n\n      abcde::~abcde() {}\n\n      int main() {\n        abcde f;\n        f.abcdeabcde();\n      }\n      "
To be equal to: expectedResult(Code, NewName)
      Which is: "\n      class abcde {\n      public:\n        ~abcde();\n      };\n\n      abcde::~abcde() {}\n\n      int main() {\n        abcde f;\n        f.~abcde();\n      }\n      "
With diff:
@@ -9,5 +9,5 @@
       int main() {
         abcde f;
-        f.abcdeabcde();
+        f.~abcde();
       }

I suspect the problem here is that the textual replacement is applied to the location of ~ while replacing the whole token (which is sadly the "primary" location of destructor decl). The rename attempt for the relevant AST node is made (which is good), but not correctly.
We might also want probably check that the string we're replacing has at least the same length that the identifier being renamed (which is probably what https://reviews.llvm.org/D71598 should have originally done, because it turned into fixing a different stage of renaming which is replacements generation rather than replacements application).

Okay, so this code does not work as intended because findExplicitReferences does returns one location for f.[[~Foo]]() (destructor) and one location for f.~[[Foo]](). The first location comes from refInExpr from MemberExpr (as in the AST below)
    `-CXXMemberCallExpr 0x3bedee0 <line:10:3, col:10> 'void'
      `-MemberExpr 0x3bedeb0 <col:3, col:6> '<bound member function type>' .~Foo 0x3bed888
        `-DeclRefExpr 0x3bede80 <col:3> 'Foo' lvalue Var 0x3bedb48 'f' 'Foo'

And the second location is retrieved from TypeLoc associated with f.~[[Foo]]().
I'm currently exploring different solutions on fixing this and here are few options I'm currently considering:

Change destructor reference location from f.[[~Foo]]() to f.~[[Foo]](). This would result in two references pointing to the same location (destructor and typeloc) which is probably not the best scenario (we might want to have a single reference with both targets), but this would work.
Post-process destructor reference location and move it from f.[[~Foo]]() to f.~[[Foo]]() in Rename.cpp when we compare Ref.Targets against the renamed declaration. This looks like a hack, but this might do.
Find a way to exclude the reference coming from TypeLoc (might be tricky because I didn't figure out a reliable way to find out which AST node it's coming from, but explicit references finder processes destructor first, so it's potentially possible to save information about the range which should not be considered when reporting TypeLocs). However, 1. or 2. would be still needed after doing this. Excluding TypeLoc from destructor might not be desired behaviour, so I don't think it's worthy to invest into resolving this.

So far I'm thinking 1

D72638 is up for review.


[Feature Request]: Increase Correction Period Option

it would be cool if you could change the correction period time limit option from 5s to 60s. this would allow us to use the same value as the ping duration, which would effectively make every player only have one active marker at a time.
edit: speaking of values, why is ping duration an integer and correction period a float? for consistency reasons, can you make both variables use the same type?

Thanks for bringing this to my attention!
For now, you could increase the correction period in the config file, but keep in mind that it is a client-side setting, so it only affects your pings.
The user interface limits the correction period to between 0.1 and 5 seconds, since most players will use a value around 1 seconds (the default), so the slider should have an appropriate range for that.
I will probably address this similar to the maximum range slider, to have some sort of "always replace" value.
The type difference is simply explained by the scales, the correction period could be seen as a "millisecond" value, while a ping duration below one second doesn't make sense.

This is now introduced in v1.9.0 🎉


Requirements to run OpenSlides on a server at home

Hey,
we are planning to use OpenSlides for a big online meeting. Because we don't have the necessary funding, I am trying to run OpenSlides on a computer/server from my home. I couldn't find any information about that endeavour anywhere else so I am trying to post my question here:
Is it possible to use my old pc as a server to run OpenSlides from home (8GB Ram, 500GB SSD, i5-3k, nVidia 1050)?
If the hardware requirements are met, what do I have to consider when configuring the server (apart from the OpenSlides installation, which seems to be straight forward)?
Would you recommend trying to use a home server for that (about 150 participants connecting at once) to someone who has a basic idea about ssh and installing stuff on computers and people to help who have an IT background (but no own servers)?

If this is not the right place for my questions, could you please point me to a better place to ask them?
Best regards!

For individual support you might want to access the support tracker via<EMAIL_ADDRESS>
Is it possible to use my old pc as a server to run OpenSlides from home (8GB Ram, 500GB SSD, i5-3k, nVidia 1050)?

Technichally yes, thus said, the RAM might not be enough to serve 150 people at once. Especially electronic voting was apparently a heavier task. I'd also recommend to clean the history periodically (If you work with motions a lot), that might save you a lot of storage.

If the hardware requirements are met, what do I have to consider when configuring the server (apart from the OpenSlides installation, which seems to be straight forward)

If you can, use the docker image. If you want to install OpenSlides manually using python, do not let your users access the Django development server, but proxy the OpenSlides server through nginx (or apache) and configure postgresql to replace sqlite. Needless to say, you have to have your port forwarding accordingly so users can reach your server over the internet. Besides that you should be good to go.

Would you recommend trying to use a home server for that

The actual bottleneck will, most likely, be your upload bandwidth from your home server to the internet. Depending on your location, home internet connections have proven to be very limited in terms of upload bandwidth.

That's comprehensible. In any case, using a dedicated server and not using your home internet will be the safer option.


Dropdown issue fixed, Light mode problem resolved manually, Unwanted print removed, Pdf open in default app Added,mail.py removed and otp content added in screen.py

Looks great!
Plus I don't think we need mail.py anymore so we're good to remove it.

'mail.py' has been removed.

waiting for filebrowser fixes to be added

Done !


Compile error on crate alloc with no-alloc feature enabled

The line https://github.com/chuckcscccl/fixedstr/blob/ea7c149693caafa467a1c387f827a9d7f92ecf10/src/zero_terminated.rs#L29 causes the following compile time error on a no-std, no-main, no-alloc (arduino) environement:
   Compiling fixedstr v0.5.2
error[E0463]: can't find crate for `alloc`
  --> /home/dandaedre/.cargo/registry/src/index.crates.io-6f17d22bba15001f/fixedstr-0.5.2/src/zero_terminated.rs:29:1
   |
29 | extern crate alloc;
   | ^^^^^^^^^^^^^^^^^^^ can't find crate

Preposing it with #[cfg(not(feature = "no-alloc"))] solves this issue for me

Yes, that line should be there.  The error did not show up in my build environment.
This has been fixed in Version 0.5.3


Filter object segmentations according to area

We basically want to preserve objects that have at least 200px in one of the sides of its bounding box. Anything smaller is not worth keeping.

The class SimulatorDataManager.py provide methods to create set of objects which fulfill that one of the sites of its bounding box have at least Npx.


Create new Debug Run build scheme

Create a new build scheme for running with the dev server and one for production server.

No dev server for uplift


issue with station sampling at edge of face in LLC grids

This is actually some standing issue also with the new implementation of mooring array (serialized)..
ospy.subsample.stations is quite identical to mooring_array in the sense that both identify the nearest neighbors (via xoak) and at center points (XC, YC), and then extract, if specified in VarList, variables that at the neighboring vector points to the left, right, bottom and top (C-staggered grid). The different is that with stations, there all other (XC, YC) are not connected (like in mooring array)....
The issue is when extracting a scalar variable at the edge of the face, at index X=89 or Y=89 (or both). Then, to extract the vector variable at to the right of top, it needs to sample from a neighbor face. It does not... This needs to be fixed...
simplest example to reproduce this error in Sciserver (with ECCO)
import oceanspy as ospy

od = ospy.open_oceandataset.from_catalog('ECCO')
od._ds = od._ds.drop_vars({'k', 'k_u', 'k_p1', 'k_l', 'niter'})
co_list = [var for var in od._ds.variables if "time" not in od._ds[var].dims]
od._ds = od._ds.set_coords(co_list)

od_sts = od.subsample.stations(Xcoords =-38.9333 , Ycoords = 36.2402)

The end of the Traceback is:
IndexError: index 90 is out of bounds for axis 0 with size 90

Solution:
I have  already been working on a solution within mooring array that will actually solve this. So nothing to do for now until I merge an upcoming PR...
Until then, If this happens perturb slightly the longitude of latitude value so that if does not sample from the edge of the face.

closed by #399


Incompatible mods for 1.20.1

This is a list of mods that need to be updated before the transition to 1.20.1 can be completed. This list is pulled from the Packwiz update command.

[ ] Charmonium
[x] Create Enchantment Industries
[ ] Smooth Boot
[ ] SkyLib (DEPEND)
[ ] Advancements Debug
[ ] BYG
[ ] Charm
[ ] Mega Parrot
[ ] Celestria (Might be removed)
[ ] Charm Fixer
[ ] CC: Restitched
[ ] ELLP
[ ] Phosphor

Mods are No longer created for 1.20.1 except for CEI


Less ramda

run tests

@kdhttps testing in my fork

run test

run tests

Sorry not getting you.


Issues with Koenig/Warszawksi Binding Affinity Data

For the Koenig and Warszawski sets, I have been trying to find out what the fitness values actually represent. They are surely not KD values in nM as labeled. At least for the Koenig set, your 'fitness' seems to be positively correlated with binding affinity (unlike KD) so then I find myself confused by why the correlations with affinity were calculated with -np.log(fitness) - this seems like the wrong direction at least for the Koenig binding affinity data. I'll justify this in the third paragraph based on sanity checks from the Koenig manuscript data.
Rows for the wildtype do not exist in your csvs. I noticed that something called 'wildtype' was somehow plotted in some deleted plots in the commit history. However, in the plots that show wildtype against the rest, the thing labelled 'is_first_row' is deemed wildtype in the plots, but the sequence is clearly not actually the wildtype sequence. See the PDB fastas and code, csvs, plots I attached here that are pulled from this commit: https://github.com/Graylab/FLAb/commit/39fec5a77a6eb4a99c1ac7013105a683830fb078. "wildtype" is not the correct wildtype, just seems like some mutated sequence labelled as wildtype. The wildtype sequences for Koenig:G.6.31 and Warszawski:D.44.1 can be inferred from looking at the different mutants or by looking at the respective PDB fastas (Koenig: https://www.rcsb.org/fasta/entry/2FJF/display, Warszawski:https://www.rcsb.org/fasta/entry/1MLC/display). The wildtype affinity values are supposed to be 0.36/0.4 nM for G.6.31 and 135/137 nM for D.44.1 (the stated values vary a bit even within the publications).
Based on the plot in the Koenig paper, the wildtype affinity (~0.36nM KD)  should sit between that of light chain mutants I106V (KD of ~0.3, fitness of 1.993) and F83S (KD of ~0.4, fitness of 1.6879). That should put the wildtype 'fitness' for Koenig G.6.36 somewhere around 1.8. As a further check, the Koenig paper says that the G.6.31 F83A light chain mutant is supposed to have a binding affinity 3x greater than the wildtype -  so approximately KD of 0.12 nM. The fitness value provided for that entry is 5.689, which is one of the higher fitness values and also around 3x of 1.8 which I'm ballparking as the wildtype 'fitness'. Fortunately this all checks out so the relative rankings seem to make sense, but this 'fitness' definitely seems positively correlated with binding affinity.  I wasn't able to find the full Koenig data online and the source seems to be the early commit from Jeffrey Ruffolo in this repo. If someone could provide the original source or find it online for me - I can try to get the data in actual KD form myself and make a contribution.
Then for Warzawski, the fitness is also clearly not KD in nM as labeled. If 'fitness' were actually equal to KD in nM, then the wildtype fitness of 135nM would either be the strongest or weakest binder of the whole set which is obviously not the case based on the manuscript. At least I can find the original log-enrichment data online, so I can try processing it myself.
I wasn't interested in the other sets so I haven't checked those yet. But for Koenig and Warszawksi sets, I would like to warn everyone that these 'fitness' values absolutely cannot be interpreted as KD values in nM as labeled. For Koenig they actually seem to correlate with binding affinity in the other direction from KD. The exact relationship of these fitness values to KD is unclear to me right now.
There's something way back in the commit history called "all model scripts, still need to fix W_kd, K_Kd, K_er" so there seemed to be awareness of these issues at some point - but the fitness values don't seem to have changed since then. It might have fallen off the radar, but I'd like to put this out there for anyone else who tries to use this data so they can be aware of the headaches in advance.
Here's some relevant attachments as support for my points:
Koenig2017_g6_Kd_ppl.csv

Warszawski2019_d44_Kd_ppl.csv

002_score.py.txt

For the Koenig and Warszawski sets, I have been trying to find out what the fitness values actually represent. They are surely not KD values in nM as labeled. At least for the Koenig set, your 'fitness' seems to be positively correlated with binding affinity (unlike KD) so then I find myself confused by why the correlations with affinity were calculated with -np.log(fitness) - this seems like the wrong direction at least for the Koenig binding affinity data. I'll justify this in the third paragraph based on sanity checks from the Koenig manuscript data.
Rows for the wildtype do not exist in your csvs. I noticed that something called 'wildtype' was somehow plotted in some deleted plots in the commit history. However, in the plots that show wildtype against the rest, the thing labelled 'is_first_row' is deemed wildtype in the plots, but the sequence is clearly not actually the wildtype sequence. See the PDB fastas and code, csvs, plots I attached here that are pulled from this commit: 39fec5a. "wildtype" is not the correct wildtype, just seems like some mutated sequence labelled as wildtype. The wildtype sequences for Koenig:G.6.31 and Warszawski:D.44.1 can be inferred from looking at the different mutants or by looking at the respective PDB fastas (Koenig: https://www.rcsb.org/fasta/entry/2FJF/display, Warszawski:https://www.rcsb.org/fasta/entry/1MLC/display). The wildtype affinity values are supposed to be 0.36/0.4 nM for G.6.31 and 135/137 nM for D.44.1 (the stated values vary a bit even within the publications).
Based on the plot in the Koenig paper, the wildtype affinity (~0.36nM KD) should sit between that of light chain mutants I106V (KD of ~0.3, fitness of 1.993) and F83S (KD of ~0.4, fitness of 1.6879). That should put the wildtype 'fitness' for Koenig G.6.36 somewhere around 1.8. As a further check, the Koenig paper says that the G.6.31 F83A light chain mutant is supposed to have a binding affinity 3x greater than the wildtype - so approximately KD of 0.12 nM. The fitness value provided for that entry is 5.689, which is one of the higher fitness values and also around 3x of 1.8 which I'm ballparking as the wildtype 'fitness'. Fortunately this all checks out so the relative rankings seem to make sense, but this 'fitness' definitely seems positively correlated with binding affinity. I wasn't able to find the full Koenig data online and the source seems to be the early commit from Jeffrey Ruffolo in this repo. If someone could provide the original source or find it online for me - I can try to get the data in actual KD form myself and make a contribution.
Then for Warzawski, the fitness is also clearly not KD in nM as labeled. If 'fitness' were actually equal to KD in nM, then the wildtype fitness of 135nM would either be the strongest or weakest binder of the whole set which is obviously not the case based on the manuscript. At least I can find the original log-enrichment data online, so I can try processing it myself.
I wasn't interested in the other sets so I haven't checked those yet. But for Koenig and Warszawksi sets, I would like to warn everyone that these 'fitness' values absolutely cannot be interpreted as KD values in nM as labeled. For Koenig they actually seem to correlate with binding affinity in the other direction from KD. The exact relationship of these fitness values to KD is unclear to me right now.
There's something way back in the commit history called "all model scripts, still need to fix W_kd, K_Kd, K_er" so there seemed to be awareness of these issues at some point - but the fitness values don't seem to have changed since then. It might have fallen off the radar, but I'd like to put this out there for anyone else who tries to use this data so they can be aware of the headaches in advance.
Here's some relevant attachments as support for my points: Koenig2017_g6_Kd_ppl.csv  Warszawski2019_d44_Kd_ppl.csv  002_score.py.txt

Thank you for your meticulous review and kind reminder! I encountered the same confusion in my research. As 'the largest therapeutic antibody design benchmark to date' as the authors claimed, I hope the authors can re-verify the accuracy of the data to avoid causing misunderstandings for future researchers.


[SPARK-37422][PYTHON][MLLIB] Inline typehints for pyspark.mllib.feature

What changes were proposed in this pull request?

This PR migrates type pyspark.mllib.feature annotations from stub file to inline type hints.
Why are the changes needed?

Part of ongoing migration of type hints.
Does this PR introduce any user-facing change?

No
How was this patch tested?

Existing tests.

Merged to master.


Adds a tutorial on finding tests to write

needs an image -- not sure how to supply one, should I find a public domain image?

I’ve been finding colorful images on unsplash.com. I can help with that, if you like.

@omerida, take a look at my changes here: 1102043af59b6432eb6dbfe0533be882c2a9e3b7
The edits are very light. Most changes were adding or updating URLs.
I noticed that "https" times out when attempting to reach your personal website, so you might want to check on that. Using "http" works.


Update queues debug logging to ignore aborted requests

WIP

Ignore "aborted" requests and only log info on timeouts
TODO: Add more contextual info (user account ID)

CC: @a-robinson

I'm not seeing an existing way to get the owner ID

To be clear, hopefully I've just missed something, but it doesn't look promising.

Two force pushes:

Rebase onto main
Add scriptId to the log (tested locally to work as intended)


Corrupted execution history store for empty directories causing incorrect up-to-date checks

Version
Gradle 6.5
Step to Reproduce
This issue is hard to reproduce. When it happens, it's something like this:

In the first build, task A generates an empty directory. Task B uses the empty directory as one of its input files.
Perform some other builds. (This part is why it's hard to reproduce.)
Then delete the empty directory (e.g., manually or by running clean to delete the entire build directory).
In the next build, task A is (incorrectly) UP-TO-DATE, and therefore doesn't recreate the empty directory. Task B then fails because its input directory does not exist.

Workaround
Delete <project>/.gradle/<gradle-version>/executionHistory/ (or <project>/.gradle).
Context
This issue was originally reported on AGP issue tracker (without knowing the root cause): http://issuetracker.google.com/142788472. I then came across this bug myself and found that it's probably an issue in Gradle.
Debugging Process
I've managed to localize the issue to the way Gradle fingerprints empty directories.
In a correct build (where in step 4 task A is out-of-date), the fingerprint of the empty directory is:

(c1) a SerializableFileCollectionFingerprint with 1 fingerprint and 1 rootHash after the last execution (when the directory was not deleted yet)
(c2) an EmptyCurrentFileCollectionFingerprint with 0 fingerprints and 0 rootHashes for the current execution (when the directory has been deleted)
when comparing these two states, Gradle is able to detect a change (which is correct).

In an incorrect build (where in step 4 task A is UP-TO-DATE), the fingerprint of the empty directory is:

(i1) FileCollectionFingerprint#EMPTY with 0 fingerprints and 0 rootHashes for the last execution (when the directory was not deleted yet)
(i2) is the same as (c2)
when comparing these two states, Gradle does not detect a change (which is incorrect).

Note that (c1) and (i1) are read from the data in <project>.gradle/6.5/executionHistory/ (the relevant code is FileCollectionFingerprintSerializer#read), so it seems that this data is somehow corrupted for (i1).
(I see BTreePersistentIndexedCache has lots of TODOs, with mentions of "thread safety" and "file corrupt", not sure if it's related.)

@hungvietnguyen It seems like the behavior you describe would happen if the output directory already exists before you first run task A. Then the output directory is not counted as an output produced by task A and task A does not have any outputs.
Deleting the empty directory then doesn't have any effect on the outputs of task A - since Gradle thinks there aren't any.
Can you confirm that this is the reason for the behaviour you are seeing?

Ah yes, I've just confirmed that is the correct explanation. (Not sure why it was a bit hard to reproduce before.)
I wonder if there is anything Gradle can do to avoid this issue, as I can imagine users deleting <project>/.gradle without cleaning their build directory first won't be too uncommon. (I've seen 3 bug reports on this: https://issuetracker.google.com/142788472, https://issuetracker.google.com/158674351, and 1 internal bug.)

Gradle could consider the root directory as always belonging to the task's output. That would mean that the root directory would belong to multiple tasks. That seems to not cause any test failures on our side, and makes sense since the task would create the root directory if it would run.

as I can imagine users deleting /.gradle without cleaning their build directory first won't be too uncommon.

Do you know why folks are deleting the .gradle directory? And when they do so, they need to run a clean afterwards.
It shouldn't be necessary to delete the .gradle directory. If it is necessary, then it is a bug in Gradle which needs to be fixed.

Actually, now I've found that this issue doesn't happen when I delete <project>/.gradle, it happens only when I delete <project>/.gradle/<gradle-version>.
When I delete <project>/.gradle (or upgrading the Gradle version), I see that Gradle deletes the existing output directory first before snapshotting (probably by CleanupStaleOutputsExecuter, and using <project>/.gradle/buildOutputCleanup), and therefore the snapshot is correct.
So everything is still as expected: Deleting <project>/.gradle does not cause issues, whereas deleting anything inside <project>/.gradle may (understandably) cause issues.

Do you know why folks are deleting the .gradle directory? And when they do so, they need to run a clean afterwards.

When running into build failures, people try all sorts of things to reset to a clean state. But fortunately, as mentioned above, deleting .gradle without running clean still works.

It shouldn't be necessary to delete the .gradle directory. If it is necessary, then it is a bug in Gradle which needs to be fixed.

Yes, I agree. And it turns out that there is no bug.
But note that I didn't mess with <project>/.gradle right in the beginning. I ran into this issue first, then I found deleting <project>/.gradle fixed the issue, and then I played around with <project>/.gradle/<gradle-version>/executionHistory to try to reproduce the issue. It's impossible to find the original cause now---I'll ping this bug if it comes up again.
I think this can be closed, thank you for looking into this!


widered the compare side bar & change the shopping cart icon to text

PTAL

PTAL

How about putting it on the top right instead of bottom right since the "Compare instance" in the sidebar is on the top right

SGTM

PTAL


Add a 'paths' optional parameter

Overview
We ran into some additional limitations that were troublesome when attempting to use local refs as provided by<EMAIL_ADDRESS>As a result, we needed finer grained control over which paths of a given OpenAPI spec we render at a particular location in our docs.
This PR adds an additional paths option to the .. openapi:: directive that allows the user to specify which paths they want to render using the directive. If not provided, the directive continues to render all paths found in the file.
Sample Usage
Sample usage is demonstrated by the changeset in docs/index.rst:

Testing
Tests should continue to pass. Run tests by ensuring tox is installed (via pip or in a virtualenv or other), then simply run tox with no arguments in the project dir after checking this branch out.
You may see an error for any versions of python that aren't installed on your system. This should be fine as long as tests pass on at least one version of python 2 and python 3.

The branch feature/awf/param-paths is in use in the requirements.txt file. When this PR is merged, address azavea/climate-change-api#223


fix: start menu launchers rsync of directory symlinks

When using a profile containing icons having a symlink such as:
/etc/profiles/per-user/USER/share/icons/hicolor -> /nix/store/fvlvfdkc9hh7icadwqxfiazifmsxprrl-home-manager-path/share/icons/hicolor

The merge of several rsync sources doesn't work properly. With this fix it will copy the symlinked directory instead and in that way support the rsync.

This doesn't have conflicts and didn't touch the same lines as the other change after all, so I guess no need to rebase.


Only set missing csrftoken cookie if needed by current page

See comment on https://github.com/simonw/datasette/pull/798#issuecomment-639249743 - right now this middleware sets the csrftoken cookie if it is missing on EVERY page.
This is bad, because it doesn't take caching into account. Pages should not be cached by Varnish/CloudFlare etc if they are setting a secret cookie value!
Instead, we should do what Django does. Here's a snippet from the Django docs on CSRF and caching: https://docs.djangoproject.com/en/3.0/ref/csrf/#caching

If the csrf_token template tag is used by a template (or the get_token function is called some other way), CsrfViewMiddleware will add a cookie and a Vary: Cookie header to the response. This means that the middleware will play well with the cache middleware if it is used as instructed

Since the token is passed as part of the scope, I'm going to change scope["csrftoken"] from a string value into a function which returns a string value.
That way the outer middleware can detect if the csrftoken was accessed or displayed on a page, which means it knows if it should set the cookie on the response or not.


add support for heterogeneous features

We want higher order cells to optionally have their own feature spaces, instead of using the base feature space of nodes.

Addressed in #60.


Implement environmental lookup sensors.

🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸🔸
🎉 New feature
Supercedes #1660.
Summary
Implements a lookup sensor for environmental data.
Test it
You can run the example world:
gz sim environmental_sensor.sdf

Then listen on the main topic:
gz topic -e -t /world/environmental_sensor_test/model/model_with_sensor/link/link/sensor/custom_sensor/environmental_sensor/humidity

Press play, you should see the sensor go from 80%-90% humidity within a second and then stopping.
Checklist

[x] Signed all commits for DCO
[x] Added tests
[ ] Added example and/or tutorial
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] Consider updating Python bindings (if the library has them)
[ ] codecheck passed (See contributing)
[x] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

Most review comments still apply here @arjo129.

OK looks like I dont know how to use git :man_facepalming: - I accidentally pushed all the fixes to #1748. Working on backporting :skull_and_crossbones:

On second thoughts it'll be faster to review #1748 straight away.


Serialize a database

I'm wanting to send databases over a network. It would be great to be able to serialize a database as specified in the C interface here:
https://www.sqlite.org/c3ref/serialize.html

This API is:

disabled by default (https://www.sqlite.org/compile.html#enable_deserialize).
available only since recently (https://sqlite.org/changes.html#version_3_23_0).
Why not use the backup API ?

@link2xt Original post doesn't say that there is a space issue (and explicitly specifies which C API is expected to be used).
Also you should already be able to reimplement sqlite3_db_dump by using current rusqlite API.

Fixed in version 0.30.0 (#1341)


Delete mmdet.ops

delete mmdet.ops because it has been moved to mmcv

The directory of mmdet.ops should also be deleted.


Update secrets to match those in Vault

These changes update the pipeline code to match the renaming of secrets in concourse.suse.dev. This is needed to make secrets in Vault and concourse.suse.dev consistent.

Blocked by https://github.com/SUSE/cap/issues/74


Rlp decoding fails for byte strings that also happen to be hex.

For example, Eth::Rlp.decode(Eth::Rlp.encode("a")) throws RLP string ends with -32 superfluous bytes (Eth::Rlp::DecodingError)
The issue is the hex conversion here: https://github.com/q9f/eth.rb/blob/main/lib/eth/rlp/decoder.rb#L34

How do i replicate this error ? @RogerPodacter

If you run Eth::Rlp.decode(Eth::Rlp.encode("a")) you expect to get back ”a” but you get an exception instead.

Okay! I have a fix. I will send in a PR now, maybe you can review as well and test.

https://github.com/q9f/eth.rb/pull/293
This is a temporary draft PR where you can test that. @RogerPodacter

I think the problem is not RLP coder but the utility function that handles binary versus hexstrings.
I just discovered this:
Util.bin_to_hex Util.hex_to_bin "a"
=> "a0"

Which is a very obvious bug. I'll try to fix this first and then revisit the RLP issue above.
Sorry for the slow response, I'm not spending so much time on this library anymore.

@RogerPodacter can you check if #298 works for you?


Add labels for all inputs

Summary
Adds missing aria labels for all inputs.
Adjust some existing labels to be more useful.

Relevant Technical Choices
This PR removes the default values for labels since the "Standard input" aria label is not really useful, however, since it exists, a warning of missing label is not shown.
The default values are removed and all labels are changed to be required to enforce adding labels per use case, and not general labels.

To-do

User-facing changes
None.

Testing Instructions
I

Add 1 of each element type (1 video, 1 image, 1 shape, 1 text)
Click on all the elements
Verify there are no missing label errors in the console.

II

Click on the Document tab
Verify there are no missing label errors in the console.

Fixes #742

@barklund:
Changed made and using getByRole now in many places. Not sure if I caught it all but most, I think. Please check.


Investigate SimCommand

SimCommand looks pretty good, but waiting for Vighnesh to see if we should actually use it.


Is global 3D mesh (covering the entire trajectory) enabled?

I can see the single frame mesh in the riz, is the global 3D mesh implemented in this project? if so. how could I enable it and  visulize it?  Thanks

Hi @jguan2984-1! The global 3D Mesh is built using this package: https://github.com/MIT-SPARK/Kimera-Semantics

Hi @jguan2984-1! The global 3D Mesh is built using this package: https://github.com/MIT-SPARK/Kimera-Semantics
Hi, thanks for the reply, I also tried to run the kimera-semantics, as far as I can see, the kimera-semantics could only load input from the simulated dataset you provided. It seems that the kimera-semantic and kimera-vio have not been incorporated together(which should be according to the paper)? Is there a way I could get the global 3D mesh by combining the kimera-vio and kimera semantic now? Thanks

They actually are!
The launch file provided in Kimera-Semantics can be used for both simulation and kimera-VIO.
Check the comments in the launch file itself:
  <!-- Change sensor frame to:
   - VIO's estimated base_link: `left_cam_base_link`
   - Or, if you want to use simulator's ground-truth: `left_cam`
  -->

Sorry for the confusion, we plan to document everything thoroughly but it takes a bit of time.
Also, I will perhaps push a launch file in kimera-semantics to run everything in Euroc dataset to show how to connect with VIO.

They actually are!
The launch file provided in Kimera-Semantics can be used for both simulation and kimera-VIO.
Check the comments in the launch file itself:
  <!-- Change sensor frame to:
   - VIO's estimated base_link: `left_cam_base_link`
   - Or, if you want to use simulator's ground-truth: `left_cam`
  -->

Sorry for the confusion, we plan to document everything thoroughly but it takes a bit of time.
Also, I will perhaps push a launch file in kimera-semantics to run everything in Euroc dataset to show how to connect with VIO.

Thanks for the quick reply,  a document and "pushing a launch file in kimera-semantics to run everything in Euroc dataset to show how to connect with VIO." would help a lot.
Anyway, I will first try your suggestions.

They actually are!
The launch file provided in Kimera-Semantics can be used for both simulation and kimera-VIO.
Check the comments in the launch file itself:
  <!-- Change sensor frame to:
   - VIO's estimated base_link: `left_cam_base_link`
   - Or, if you want to use simulator's ground-truth: `left_cam`
  -->

Sorry for the confusion, we plan to document everything thoroughly but it takes a bit of time.
Also, I will perhaps push a launch file in kimera-semantics to run everything in Euroc dataset to show how to connect with VIO.

Hi, I changed the launch file for kimera semantic, but it is still not ok.
For kimera semantic, I don't need to load the bag file right?
It seem that kimera semantic could only get input(current position,cam_base link) from kimera vio,but could not get any single frame 3d mesh, it could only show the trajectory of the sensor, no global mesh, no single frame mesh.
I suppose I still need to change something in the launch file, but don't know how?

Hi @jguan2984-1, we don't use the per-frame 3D Mesh to generate the global 3D Mesh, instead, a dense stereo depth pipeline runs in parallel, providing accurate dense (pixel-wise) depth maps for Kimera-Semantics. Inside Kimera-Semantics launch file, there is a way to generate dense depth maps by calling a ROS package that implements StereoBM.

Hi，
Thanks for the reply. So if I understand correctly, the kimera semantic only take the camera trajectory of kimera-vio as input, and the 3d mapping is built using stereoBM code inside kimera semantic itself.
What I am running now is

inside kimera vio workspace run :roscore
inside kimera vio workspace run :roslaunch kimera_vio_ros kimera_ros_euroc.launch
inside kimera semantic workspace run :roslaunch kimera_semantics_ros kimera_semantics.launch
inside kimera semantic workspace run : rviz -d $(rospack find kimera_semantics_ros)/rviz/kimera_semantics_gt.rviz
inside kimera vio workspace run :rosbag play --clock /media/nvidia/3466-6434/jguan/euroc/MH_02_easy.bag
The result is shown in the figure, it seems that the kimera semantic can receive the trajectory input "left_cam_base_link" from kimera vio, but can not get input the stereo input.
Except

  <!-- Change sensor frame to:
   - VIO's estimated base_link: `left_cam_base_link`
   - Or, if you want to use simulator's ground-truth: `left_cam`
what else do I need to change for the camera image (or depth) input of kimera semantic in the launch file?

What else I should change except changing sensor frame to  left_cam_base_link?

Oh, so, you need to explicitly tell kimera_semantics to run StereoBM:
The default is set to false:

<arg name="run_stereo_dense"     default="false"/>

See here.

And last thing, if you don't have semantic labels and just want to reconstruct the scene, set as well the metric_semantic_reconstruction parameter to false.

  <!-- If you just want to run 3D reconstruction without semantics, set this flag to false-->
  <arg name="metric_semantic_reconstruction" default="true"/>

See here.

Oh, so, you need to explicitly tell kimera_semantics to run StereoBM:
The default is set to false:

<arg name="run_stereo_dense"     default="false"/>

See here.

And last thing, if you don't have semantic labels and just want to reconstruct the scene, set as well the metric_semantic_reconstruction parameter to false.

  <!-- If you just want to run 3D reconstruction without semantics, set this flag to false-->
  <arg name="metric_semantic_reconstruction" default="true"/>

See here.
I still get the following error, it seem that I need to change the input topic for the kimera semantic?
[ WARN] [1584064385.789873963]: The input topic '/tesse/left_cam/image_raw' is not yet advertised
[ WARN] [1584064385.789985130]: The input topic '/tesse/left_cam/camera_info' is not yet advertised
[ WARN] [1584064385.790024681]: The input topic '/tesse/right_cam/image_raw' is not yet advertised
[ WARN] [1584064385.790067977]: The input topic '/tesse/right_cam/camera_info' is not yet advertised

Yes, so basically, summarizing, all the arg elements in the launch file(s) need to be adapted to your particular use case. Are you using Euroc?

Yes, so basically, summarizing, all the arg elements in the launch file(s) need to be adapted to your particular use case and also all the topic names (aka the ones with remap).
Are you using Euroc?
yes, I am using EUROC, could you provide a lauch file for euroc?

I'll put it in my todo list, I think another user also asked the same. Thank you!

ok, thanks..

ETA Saturday afternoon though, I'm a bit busy with other urgent things :+1:

Saturday afternoon will be great, it would be much better with also updated rviz file.

ETA Saturday afternoon though, I'm a bit busy with other urgent things

Hi,
Any update about the launch file and rviz file?

I find there exists the launch file called kimera_semantics_euroc.launch in the kimera-semantic package, and I try to follow your steps to run the program, but it still doesn't visualize the mesh.

@jguan2984-1 when run the kimera_semantics.launch or kimera_semantics_euroc.launch, the stereo_image_proc ros node will start and accept the input camera_images and camera_infos, but the bag file doesn't include the camera infos. So it can't generate depth_image so I cannot see the mesh....

 Hi， Thanks for the reply. So if I understand correctly, the kimera semantic only take the camera trajectory of kimera-vio as input, and the 3d mapping is built using stereoBM code inside kimera semantic itself.
What I am running now is

inside kimera vio workspace run :roscore
inside kimera vio workspace run :roslaunch kimera_vio_ros kimera_ros_euroc.launch
inside kimera semantic workspace run :roslaunch kimera_semantics_ros kimera_semantics.launch
inside kimera semantic workspace run : rviz -d $(rospack find kimera_semantics_ros)/rviz/kimera_semantics_gt.rviz
inside kimera vio workspace run :rosbag play --clock /media/nvidia/3466-6434/jguan/euroc/MH_02_easy.bag
The result is shown in the figure, it seems that the kimera semantic can receive the trajectory input "left_cam_base_link" from kimera vio, but can not get input the stereo input.
Except
How did you get the mesh,I follow your steps, but the global grid is still not displayed

hi there, i am also facing to the same problem. I run rostopic echo /kimera_semantics_node/mesh to see if there some output but none. And i also want to ask if the Kimera can do global mapping and export the map? thank you! @ToniRV

Hi There, I also face the same issue. To add more details, in rviz, I can get the per-frame mesh if I choose the fixed frame to be base_link, however, then the VoxbloxMesh will error out since "Frame [world] does not exist". Not sure if it is the reason that there is no global mesh showing up. Anyone can help confirm and resolve the issue?


XMLProfile for multicastLocatorList doesn't support address even though it's in docs

So I was attempting to configure the multicast locator addresses to use something other than 'any' because we need the locators to bind to a specific interface. I thought I could do so using XML Profiles as it is detailed in the online documents: http://docs.eprosima.com/en/latest/pubsub.html#publisher-and-subscriber-configuration (under Multicast locators).
However when I tried to use an XML profile with the suggested tags I got the following:
[XMLPROFILEPARSER Error] Tag 'address' do not supported for now -> Function getXMLLocatorList
and it turns out that it's actually marked as commented out:
https://github.com/eProsima/Fast-RTPS/blob/master/src/cpp/xmlparser/XMLProfileElementParser.cpp#L1290
Is there reason why this is disabled?  Is it possible to get it enabled? If it's as simple as uncommenting the code I can submit a PR.  If it's not so simple, I would recommend removing this from the documentation.

Commit 1cfb2301f578fd4eec62f320050770095f220beb fixes it. Thanks for the reporting.

Thanks for the quick response, that worked!


Figure out how to dynamic update the xcodeproj framework version on release

done using xcconfig files that gets updated via build scripts.


[Bug Report] Table calculate height incorrectly with fixed row

Element UI version
1.4.12
OS/Browsers version
win10
Vue version
2.5.10
Reproduction Link
https://codepen.io/anon/pen/XVbOXW
Steps to reproduce
Resize the browser, it will appear when the browser window width is between 1157px and 1172px ( chrome-v62).
What is Expected?
Height of the fixed row should calculated correctly.
What is actually happening?
Height of the fixed row is incorrectly.

1.x version is no longer maintained. 2.x has fixed this.


Credit authors in mod info

Now that loader 0.4.0 gives us a proper mod.json format, it'd be nice if ModMenu displayed the authors' names in the mod info screen. Bonus points for links to home page and source/issues too.

This has been added in v1.3.0


report the exception on consuming messages

When consuming messages, if a custom exception is thrown, it just logs the error to the output and then returns false, since there might be some reporting methods available on the custom exception, this causes Laravel default exception handling not to work, so I just used report() helper on the exception.

Thanks @behzadev, I'm going through some really busy weeks so I didn't had the time to work on it yet, even tho it's a preatty simple fix.


Key and certificates management and storage

Introduce an API for storing keys in JDK KeyStore, Apple KeyChain, SecureEnclave and other places.

Any high level thoughts on how to do this until the library supports it?

Hey @eygraber, unfortunately, not at this point. I haven't really investigated this a lot, as there is a lot of questions and differences in behaviour on different OS's.

I'm investigating this, and got a good implementation on JVM.
Android is an issue because it doesn't allow you to export any Key that was added to the AndroidKeyStore. I tried creating my own KeyStore, and encrypt the password for it with a SecretKey from the AndroidKeyStore but that doesn't work since Android doesn't support JKS keystores and PKCS12 only allows PrivateKey not SecretKey.
Is there any way to add some interop there so it is easy to create Cipher from a JSecretKey directly? Otherwise I don't see a way to make this work with the AndroidKeyStore.

And right after I sent that I found that on Android the BKS KeyStore should work :sweat_smile:

Yeah, providing some interop functions for JDK APIs would be nice, though it's not a priority at the moment. Feel free to create an issue for that, and if you do want to contribute I would be glad to discuss design. Until now, you can take a look on Cipher implementations in JDK - they are really rather simple.

I have a working version abstracting this across Android, iOS, JVM, and web here. The web implementation unfortunately just stores the key in indexedDb, so it should only be used in scenarios where there is implicit trust in the environment or there is reliance on external factors to maintain security (e.g. the browser won't be accessible unless the user has logged into their OS account).


Tabs dropdown not dismissing when reselecting tab header on Phone devices

Issue Description

Context- On the Terra UI site while using an iPhone selecting the tab header opens the dropdown but reselecting the header does not dismiss the dropdown.  Works as expected on desktop devices and closes the dropdown on the second interaction

Issue Type

[ ] New Feature
[ ] Enhancement
[x] Bug
[ ] Other

Expected Behavior

Function the same on any device and close dropdown when selecting outside of the menu (including the tab header where the dropdown originated).
Current Behavior

Steps to Reproduce

Login to Terra UI and open Tabs from an iPhone
Select the tab header (dropdown appears)
Re-select the tab header (dropdown does not dismiss)

Environment

Component Version: iPhone 5s and iPhone 8
Browser Name and Version: Safari

@PaulSolDev can you recreate this issue on http://engineering.cerner.com/terra-ui/#/home/terra-ui/index For either tabs or the select?

I get the following error when tapping outside of the popup menu in the terra-tabs component on mobile:
"ERROR: Unable to preventDefault inside passive event listener due to target being treated as passive."
This error gets thrown in the handleOutsideClick function in _PopupContent.jsx and could be the cause of the issue being seen here.

Piggybacking on @BrandonKraus30, here's some more information. On Chrome, the following is shown when clicking on the tab header when the popup is open.
.
It leads to the event.preventDefault() call in PopupContent's handleOutsideClick function.
The tap on the header will call the onRequestClose function in _TabMenu.jsx to close the popup, but since the click is not prevented, it also triggers the onClick within _TabMenu.jsx which re-opens the popup. Hence the following effect,

After digging through this a little more, I believe a possible solution to this problem would be to update react-onclickoutside to its latest version 6.7.1 in terra-hookshot. There have been updates to react-onclickoutside that will prevent the passive error from occurring. A preventDefault prop set to true will need to be passed into the HookshotContent component in _PopupContent and then the event.preventDefault() in the handleOutsideClick of _PopupContent would no longer be needed.
Additional customProps passed in by react-onclickoutside will need to be removed in HookshotContent to prevent unrecognized props on DOM elements. I'm still looking into any unwanted side effects that updating react-onclickoutside might cause.


Parameterize LDAP search scope

Codecov Report

Merging #95 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #95   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           9      9
  Lines         885    897   +12
=====================================
+ Hits          885    897   +12

Impacted Files
Coverage Δ

ldap2pg/ldap.py
100% <100%> (ø)
:arrow_up:

ldap2pg/config.py
100% <100%> (ø)
:arrow_up:

ldap2pg/manager.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


new feature: Python binding in multiprocessing context

Feature Description
The operator is stateless, so we have no reason to reject its use in Python's multiprocess environment.
Problem and Solution
Python uses the pickle format to serialize and deserialize Python objects between multiple processes. If it is a native Python object, it is naturally supported to be converted by pickle. However, as an extension, we must implement it manually.
There are two hooks for the purpose, __setstate__ and __getstate__.
However, the two methods means that a Operator must expose all information that can be used to construct it. Currently, the public interface can't do that.
@Zheaoli Can you provide some ideas to achieve the purpose?
Additional Context
Here are examples in polars:
https://github.com/pola-rs/polars/blob/18786acd8d1eb68fc87982b07ce29ecbae0923f0/crates/polars-python/src/lazyframe/serde.rs#L16-L36
Are you willing to contribute to the development of this feature?

[X] Yes, I am willing to contribute to the development of this feature.

There are two hooks for the purpose, __setstate__ and __getstate__.

We could store the configuration provided by users during the operator build process and reconstruct it when needed.

I'm guessing we can save scheme and map in python side:
https://github.com/apache/opendal/blob/41b6f27052a4629b4deeee40bb7bfe73b33b2522/bindings/python/src/operator.rs#L33

Next: https://github.com/PyO3/pyo3/issues/4728


chore: update client sdk debugger docs

🚀 Deployed on https://663a89de798529545be363a4--cozy-fox-0defec.netlify.app


Removed .idea directory.

As per the removal of keys discussion - the .idea directory was also identified as problematic so removing it.

Re--opening accidentally closed request.


Update scalafmt-core to 3.5.3

Updates org.scalameta:scalafmt-core from 3.5.2 to 3.5.3.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "scalafmt-core" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequest = { frequency = "@monthly" },
  dependency = { groupId = "org.scalameta", artifactId = "scalafmt-core" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:n:2

I filed an issue to investigate it later: https://github.com/scalameta/scalafmt/issues/3215

Superseded by #116.


Fix all the parsing errors

Fixed according to a pattern observed in the Excel sheet. This pattern is followed everywhere in the RBI excel sheet. i.e.
ADDRESS = BRANCH + "," + ACTUAL_BRANCH_ADDRESS

Fixes https://github.com/razorpay/ifsc/issues/9

Thanks a lot :100:
While I'll merge this, this will very likely show up in the next release again, unless the parser is fixed.

@captn3m0 I could fix the parser to take into account some sane defaults, such as:

If city can't be parsed, then take the district as the city, or try to infer city from the address (Slightly involved)
If the branch can't be parsed, then take the prefix of the address, since the address is always strictly -BRANCH,ADDRESS (Should be easy)

Will have a look at the parser.


glk_request_line_event and non make_arg_array arrays

So I've run into a problem with my new project: Calling glkapi.js's glk_request_line_event doesn't work for arrays which haven't been passed to make_arg_array, and there doesn't seem to be an easy way to pass them to make_arg_array because neither it nor ArgInt/ArgChar are exposed on GiDispa. (We mustn't have ever tested ZVM with GiDispa or it wouldn't have worked.)
I see two options: expose those functions, or make retain_array not throw if it doesn't work. But I don't really understand the purpose of the system, so I don't know which option to take.

Or another option would be to use remglk more fully and communicate directly with GlkOte rather than glkapi.js. But remglk isn't set up for doing file over JSON so it might just be trading one problem for another...

GDC is coming up so it may be a couple of weeks before I can look at this. Or maybe I'll get bored at GDC and look at it, but no bets...

Of course.
I've tentatively edited GiDispa to ignore arrays it doesn't know about, and it seems to be working okay, though I don't know the full implications.

The point of this mess is this: When glkapi is used from Quixe, we can't just pass a JS array into glk_request_line_event and be happy. At some future time, the array is going to be filled out and copied back into Glulx memory. We need to keep a record of the VM address where that's going to happen.
This record is constructed in the code generated by build_function (the call to self.make_arg_array). Then glk_request_line_event calls GiDispa.retain_array to put it into a global list, where it will hang around until the line event completes.
I'd say that gi_dispa.js is specific to Quixe. It makes sense for you to fork it and make whatever changes are appropriate for emglken. If you never call make_arg_array(), then retain_array() can be a no-op.

Closing with the advice that VMs provide their own GiDispa implementation.


Pause Recording Button

User story:
As a user I want to pause my entire recording of my history for a period of time.
Implementation idea:
There could be a button in the drop down, letting people chose to pause the recording for a chosen time. They may have a drop down with the selections: 5;10;20;30;60;120;180 min and a small confirm button
When people activate it, there could be a system popup, indicating that the recording is now paused for X minutes.
It pops up again, when the recording is back on again. This popup though should be one a user can only remove by actively clicking on it. So not a temporary one that automatically disappears after X seconds.
As long as the pausing is activated, there might be a count-down timer (in min) that indicated how long it will still be active. It could be at the place in the drop down, where the choice to activate pausing was before.
Also a user should be able to stop the pausing by just clicking on a small X icon next to the count-down timer.

Ideas for this:
The triggering of the pause will happen in popup script, while the actual timeout will need to happen in background script.
Background script should have listeners for the main two actions from the popup:

user sets history recording pause (variable time)
user cancels history recording pause

1 can set a flag in local storage to denote sleepy-times for log-page-visit module, and then set a timeout to reset that flag after X time.
2 can cancel the timeout, from 1, and immediately reset local storage flag
Popup will also need access to the current background script's pause recording state. This could just be a bool, but maybe see if it can keep track of the time remaining (if there is timeout set). A 3rd listener could take care of this, and popup will be able to call onload and render the button's state accordingly.


Python infrastructure for integration tests

As recently discussed on the team, and approved by upstream, we are going to write integration tests in Python, in addition to shell scripts.
Python version
We are going to use Python 3, not Python 2.
Python 3.0 was released in 2008, and its current version is 3.6.
Python 2.7.0, the last v. 2 minor version, was released in 2010, and its end of life is in 2020.
The migration of the ecosystem to Python 3 is almost complete, and we will not be needing additional libraries anyway (with one exception, see below).
The Python 3 interpreter has been available for years on NixOS, on Ubuntu, and on most other platforms.
Both Ubuntu 14.04 and NixOS include at least Python 3.4, therefore we will be able to use the enum and pathlib libraries introduced in v. 3.4.
Also, implicit namespace packages (introduced in Python 3.3) will avoid unsightly __init__.py files all over the place.
Last but not least, Python 3 is better overall. :-)
Test framework
We are going to use the standard unittest library. Other testing frameworks are available, but they don't add enough value for our use case to justify adding a dependency.
Subprocess handling
The standard subprocess library is not easy to use, and feature incomplete.
We are going to use the sh library, which handles gracefully most of our use cases with a clear and terse syntax. It has been around for years and is implemented by one single file that we are adding to our repo, to avoid having dependencies other than the Python 3 interpreter.
Code structure
Integration tests are run by the make test command, which calls all selftest.sh shell scripts in the codebase. We will have a single entry point for all lwAftr Python tests, located in the src/program/lwaftr/tests/selftest.sh script.
A single entry point reduces setup code duplication and avoids the overhead of starting up the Python interpreter multiple times. We will still be able to run individual tests using the unittest command-line interface.
Furthermore, Python integration tests will be confined to the src/program/lwaftr/tests/, to ease human and automated discoverability.
Security
Snabb commands executed in integration tests need root privileges. However, tests as a whole do not have to be run under sudo anymore: individual commands are run under sudo as needed.
The user under which tests are executed still has to be added to /etc/sudoers with a NOPASSWD clause, to enable unattended execution.

Hrmpf. Spoke too soon with regard to not having to pepper all test directories with __init__.py files: apparently recursive test discovery in namespace packages is currently broken. So peppering it is, for now.

This is now in place with #750, #751 and subsequent changes (notably #763).

Fantastic, thank you!


fix: Tag fix attempt round 2

:tada: This PR is included in version 1.0.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Configuration setting 'thread_scheme' more or less ignored, should we change that?

In config targets, we have the key thread_scheme that can be set to "(unknown)" (which flags that we don't know what the threading scheme is), or a string that describes the scheme we expect for the config target...  except not.
The reality is that except for "(unknown)", thread_scheme's value is completely ignored, and the threading scheme is assume based on platform specific C macros (simply put, for anything that looks like Windows, we assume Windows threads, and for anything else we assume that pthread is supported).
So thread_scheme ends up being a flag that simply tells if we should expect one of those thread models to be available or not.
The question is if this should change or not.
One possible change could be to use the thread_scheme to decide which crypto/threads_whatever.c should be compiled.  It's not very hard work, but we do need to decide how to handle the thread related stuff in include/openssl/crypto.h in that case...
Other ideas welcome.

And as already said elsewhere, my suggestion is to assign thread_scheme straight to file to compile, e.g. crypto/threads_pthread.c. As for thread related stuff in crypto.h. I consider it poor design. Since we aim to provide kind of OS-neutral interface, it's only appropriate to make up neutral types to expose to application, void * is likely to do.

Actually, regarding the types made in crypto.h, they could certainly move to opensslconf.h and thereby become parametrized.

Actually, regarding the types made in crypto.h, they could certainly move to opensslconf.h and thereby become parametrized.

I'd argue that it's as poor design decision as original :-) Allow me to reiterate. "Since we aim to provide kind of OS-neutral interface, it's only appropriate to makeup neutral types." This effectively [also] means that OS-specific header has no place in our public headers. For application it's sufficient to know which interfaces does it call, but it doesn't need the kind of details that are currently provided [e.g. by imposing pthread.h on application]. Less parameterization is better, and no parameterization is best. It means I'd even go as far as aiming for getting rid of opensslconf.h [as public header]. One can surely argue that it's unattainable goal, but I'd say that at least considering it as possibility is a useful model to base new decisions on.

I think there was an attempt to make platform neutral types when the locking stuff was revamped, but that this failed, and that's the reason we have what we have today.
Me, I'm not sure I understand why we made our new locking stuff public at all.  I would gladly make all of that internal.  The only reason I can find is BN_MONT_CTX_set_locked, and I'm not sure I understand why that one is public either...

This looks like a cleanup for post 1.1.1. Moving the milestone.

https://github.com/openssl/openssl/issues/12921


how can I logout using local authentication?

This is a question rather than an issue:
I'd like to know if there is a specific endpoint to do a log out from the API like "/logout" if not how can I implement the logout method in the server?
M mental map is like having a simple link (href="/logout") on the client side like I mentioned earlier do the procedure and then redirect to the homepage "/"
I've been looking for that in the documentation and I didn't find anything.
Thanks!

Hi @pedrommuller, If you start an app with the feathers-cli pre-release generator (npm install -g feathers-cli@pre), you'll be able to use the feathers-authentication-client.  The two new plugins together include a logout implementation.  The new client plugin actually sets up app.logout() to interact with the server to accomplish this.

I'll add that it doesn't do anything other than discard your accessToken on the client, and trigger a log out event on the server. If you wanted to ensure the JWT access token can't be used before it expires you would need to manually blacklist it yourself.

Going to close this as I think @marshallswain answered, but @pedrommuller feel free to comment if that's not the case and we can re-open. 😄

@ekryski kind of touched on this, but it's also important to note that the /authentication service has a remove method.  It's what handles the logout on the server side.  You can customize the behavior by adding before and after hooks on it:
// on the server
app.service('authentication').hooks({
  before: {
    remove: [
      function (hook) {
        // Customize the logout flow in hooks
      }
    ]
  },
  after: {
    remove: [
      function (hook) {
        // Customize the logout flow in hooks
      }
    ]
  },
  error: {
    remove: [
      function (hook) {
        // Customize the logout flow in hooks
      }
    ]
  }
});


chore: update vulnerable dependencies

Selectively upgrade only tar in lib/vscode, and then upgrade stylelint with yarn upgrade-interactive, and then add node-forge in resolutions.
Closes #2860.

Network error with macos build...
Re-running jobs


⚠ Bofrost.fr has degraded performance

In 1afe03c, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1219 ms

Resolved: Bofrost.fr performance has improved in 047f035 after 12 minutes.


Need to have timestamp information and other information in runtimestate reporting message, need to have a special routing path for runtime state messages

Added timestampe.
Routing path can already be selected through the --ett event topic template string on command line.  Default is {Root}/events.
Changed to emit event as retained message.


Faker with different Locale does not seem to work

Describe the bug
I am trying to use the Faker with a different Locale ("de"), but it doesn't seem to be working, as I keep getting results based on the default en Locale.
To Reproduce
Faker faker = new Faker(new Locale("de"));
for(int i = 0; i < 20; i++) {
	System.out.println(faker.address().city());
}

Expected behavior
I would expect some German cities names, instead I get, for instance
East Cristopherstad
Josefville
Port Ofeliaton
Jeffryside
West Lashunda
North Dexterport
West Joetteside
Lake Herta
Breitenbergshire
Rudystad
Pfannerstillhaven
East Mildredmouth
Durganton
Dariaton
Ratkeview
North Garland
Port Shantafort
Port Berrychester
Lake Arlashire
West Percyberg

Versions:

OS: linux
JDK java 17
Faker Version 2.4.2

Additional context
I also tried with other Locale ("it", "ar") and the result is the same.
I checked with faker.locality().allSupportedLocales() and these should all be supported Locale.

A Locale being supported just means there is "a" faker specific to that locale, not necessarily that there is "full" support across all fakers.
Also if something is resolved for a particular Locale doesn't necessarily mean it's "real" data it could be derived from other components/details (as seems to be the case for "de" city names).
Looking at the data file for "de" it seems the city names are truly faked based on first names:
https://github.com/datafaker-net/datafaker/blob/59eebb9cf32e5511b9254b364b1e3aa3d8b6a7b7/src/main/resources/de.yml#L16-L20
If you know a good source of city names for the Locales you care about please feel free to fire in some PRs 😀

I would expect some German cities names, instead I get, for instance

Based on what line in doc this expectation is?
IIRC it is a wrong expectation, in fact it tries to get data from files related to the specified locale
2.1 Ideally there should be data in corresponding language, if you are talking about de then in German
2.2 However it doesn't mean that cities should be limited to German cities only

Also if something is resolved for a particular Locale doesn't necessarily mean it's "real" data it could be derived from other components/details (as seems to be the case for "de" city names).
Looking at the data file for "de" it seems the city names are truly faked based on first names:
https://github.com/datafaker-net/datafaker/blob/59eebb9cf32e5511b9254b364b1e3aa3d8b6a7b7/src/main/resources/de.yml#L16-L20

If I look at the file you sent here, for instance, the city names should be taken from this list
      state: [Baden-Württemberg, Bayern, Berlin, Brandenburg, Bremen, Hamburg, Hessen, Mecklenburg-Vorpommern, Niedersachsen, Nordrhein-Westfalen, Rheinland-Pfalz, Saarland, Sachsen, Sachsen-Anhalt, Schleswig-Holstein, Thüringen]

but also this does not seem to be the case, as I only get US states. So, it seems the file is just ignored...?

There are states not cities

Hi @isalvadori , thanks for reporting, but as written above, there simply aren't any cities translated to German yet. However, if you want them in the library, you're more than happy to contribute, and we're willing to help wherever we can.
As a starting point, it might be good to look at pt.yml or pl.yml, these contain translated cities.
Also, I'm not sure what you mean with the states.
Given the following code:
    @RepeatedTest(10)
    void germanAddress() {
        Faker DE_FAKER = new Faker(new Locale("de"));

        System.out.println("city: " + DE_FAKER.address().city());
        System.out.println("state: " + DE_FAKER.address().state());
    }

When I run this, I get this as the output:
city: Groß Aysehagen
state: Rheinland-Pfalz
city: Süd Carolinberg
state: Mecklenburg-Vorpommern
city: Süd Mika
state: Brandenburg
city: Treffheim
state: Niedersachsen
city: Charlottaberg
state: Bayern
city: Fitschenhagen
state: Berlin
city: Linndorf
state: Baden-Württemberg
city: Tangburg
state: Baden-Württemberg
city: West Stephan
state: Hessen
city: Neu Lucienland
state: Sachsen

Those look like German states to me?

Yes, sorry. I am working in OSGi and I tried to repackage your jar into an osgi bundle.
I wasn't packaging the resources such as the yml files properly, and so it couldn't find the de.yml file.
Now I managed to get it work.
Sorry, and thanks for the support.

Thanks for letting us know.


youtube feeds seems broken

Hello @benasse have you checked with the latest commit? https://github.com/RSS-Bridge/rss-bridge/commit/eeb6c9681d944a2501e43724ecb3801e0a96fe90
There was a bug before though it was fixed yesterday. If the issue is still present please post your request URI.

Hi, you're right, does it work well with the lastest commit, thanks !


[UI] Dropdown not visible

On the last Task in a column, the dropdown is not fully visible, only after scolling

.

Duplicate with #635

ah okay


if statements

Hello. I want to share a way to make if statements a bit nicer, but I'm not sure whether it's worth a commit ( don't know if you like this way ) or not.
You have a code like this :
if check_subdomains:
    if check_ranges:
        if enumerate_flag:

You could use:
if check_subdomains and check_ranges.....

but long lines are against POP, therefore this should work :
conditions = [check_ranges,
enumerate_flag,
check_subdomains]

if all(conditions):
   print("yay")

Would like to hear your opinion. Cheers.

Hello,
thanks for opening this issue, the reason I used multiple "if" statement is that we have "else" statement as well, but I believe I used many wrong statements in the code, and we already created this issue in here #135
please feel free to contribute and send your PR. I may close this issue and we can continue in #135
Best Regards.


ATEM Instance Feedback

Hi, I use the ATEM instance and its brilliant. Is it possible to add either a Page Change or Button Press based on ATEM feedback ?
I have 3 PTZ cameras controlled by 3 x Visca instances and have created 3 pages of preset recalls, 1 per camera. I would like the Preview Bus of an ATEM mixer to switch the page so that the preset recalls are always available for the camera that is on preview
Thanks Jonathan

@Jonhug82, unfortunately there isn't an "automation" structure to hook feedbacks and trigger actions.  I know there's a standing ticket in the main Companion repo for this feature, so I'm going to close this out for now.  Thanks for the feedback!


tray icon

Just wanted you guys to give you a heads up on the indicator/notification problem with QT and Ubuntu: https://code.launchpad.net/~mitya57/appmenu-qt5/menus-and-systemtrayicons
As soon as this gets approved and merged you can provide a tray icon for linux. :)

Thanks for the tip!

Any updates on this? The desktop app isn't so useful without the tray icon, imho.

its implemented; we're going to release it any moment now


[ML][Pipelines] Support xxx model outputs in parallel-for body

Description
Please add an informative description that covers that changes made by the pull request and link all relevant issues.
After this change, all asset type outputs in loop body will be mapped to mltable type in parallel-for node.
If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
All SDK Contribution checklist:

[ ] The pull request does not introduce [breaking changes]
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[ ] I have read the contribution guidelines.

General Guidelines and Best Practices

[ ] Title of the pull request is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

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


using CF tasks form running migrations

Using CF tasks for running db and data migrations during deploy
https://docs.cloudfoundry.org/devguide/using-tasks.html

 [TARIFF16] Update deployment to use CF tasks

You know, now im looking at this - due to the two deploys (one to get the code for the db migrations and another to restart the app) im not sure this is much better than what we have now. closing for now


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_f20bcf5d-fd6c-4811-bebe-e9a33d85deb3/pull/1 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-target_f20bcf5d-fd6c-4811-bebe-e9a33d85deb3.git

Docs Build status updates of commit 7e2cf20:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch Release_Archive_master_2021-07-19-05-32-49 has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


[ADP-3226] Use even more IsRecentEra.

Issues
ADP-3226 (Follow-on from #4422)
Description
This PR adjusts even more functions to use an IsRecentEra era constraint instead of a RecentEra era parameter.

This seems outdated, closing for now.


llbuild: 'sqlite3.h' file not found

Description
When trying to build swift 5.9.2 in Homebrew, the build fails with:
2023-12-24T16:55:37.9717810Z /tmp/swift-20231224-11721-bkt1we/llbuild/lib/Core/SQLiteBuildDB.cpp:28:10: fatal error: 'sqlite3.h' file not found
2023-12-24T16:55:37.9717913Z #include <sqlite3.h>
2023-12-24T16:55:37.9717995Z          ^~~~~~~~~~~
2023-12-24T16:55:37.9718084Z 1 error generated.

Despite sqlite3 being included as a dependency.
Reproduction
See https://github.com/Homebrew/homebrew-core/pull/157113 for the full build
Expected behavior
Completed build
Environment
Swift 5.9.2
Additional information
While this very well might be a Homebrew issue, we could use some help trying to figure out if it is.

How are you invoking swift build?  You should be passing the header search path or ensuring that the systemLibrary dependency is set up with the right paths.


Add desktop install instructions for macOS

Instructions for adding an extremely simple application wrapper for macOS

Ah whoops I saw #301 right after creating this. Closing.


Initial repo setup

Initial commit to enable development to start.

LGTM

Thanks for taking a look. It says I am not authorised to merge.


Add support for source terms to cells from particles.

@klbudzin This PR adds support for particle source terms to the flow/cell field.  It only works with fields with one component but this should be fixed by PETSc in the future. It requires the petsc branch knepley/fix-swarm-fv for now.

@klbudzin The particle push should now work but other tests are broken.  I think we are going to remove a special case/hack in PETSc because it is no longer needed but you should be able to start developing based upon this branch.  If you don't mind take a look at the test with the push and see if the value conserves as you would expect.


07/11/2018 18:53 : Create Pull Request for branch master -> prTesting1_2018071118

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

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.


Hi, is this lib support GPU?

I found that when the matrix is too large, using CPU to deal with factoring matrix is too slowwwwwwwww.

Yes, downhill uses Theano for its computation graph, so if you can get Theano set up properly to use a GPU on your machine, then downhill will automatically also work on GPU.


Add filetype extensions to modifiedFiles, createdFiles, and deletedFiles

As per #80, I propose to change modifiedFiles, createdFiles, and deletedFiles to be of type File from String, adding Name and FileType properties.
This will break some Dangerfile workflow, requiring users to potentially have to access the .name property to get a regular string. In return, users a get type-safe enum property called fileType for .h, .json, .m, .markdown, .pbxproj, .plist, .storyboard, .swift.
In Ruby, detecting the filetype is rather straightforward because of easy-to-use regex support built right in. Swift, on the other hand, would require users to use the clunky NSRegularExpression class, which is bothersome to do inside the Dangerfile.
Example of use in Dangerfile
import Danger

let codeWasModified = git.modifiedFiles
    .filter { $0.fileType == .swift || $0.fileType == .m  || $0.fileType == .h }
    .count > 0

let changelogWasModified == git.modifiedFiles
    .filter { $0.name == "Changelog.md" }
    .count > 0

if codeWasModified && !changelogWasModified {
    warn("Please update the changelog")
}

I must have bad luck: Error:  Error: Results passed to Danger JS did not include fails.

Error: Error: Results passed to Danger JS did not include fails I feel is a weird thing we've been seeing in danger-js, I don't think it's your issue

Perfect 👍

Danger JS is less mature, that's all. That bug has been real hard to get in danger-js.
FWIW, I'll never build danger for Swift myself, too small of a community (and largely inactive in contributing back) for such a large amount of my time, this technique allows danger-swift to actually exist and to potentially allow it to run on Peril.

Fair enough. 👍


How can I use it on multiple nodes without slurm?

Thanks for the excellent work!
And I want to run the code on multiple nodes, but I don't have slurm. Is there any feasible solution that does not use slurm?

Hi if a scheduler system is not available, you can run the command below on each node to do distributed training:
node1:
composer --world_size 16 --node_rank 0 --master_addr <IP_ADDRESS> --master_port 7501 train.py 1.3B.yaml
node2:
composer --world_size 16 --node_rank 1 --master_addr <IP_ADDRESS> --master_port 7501 train.py 1.3.yaml
You will need to change the world_size to be the total number of GPUs and the master address of the program. You can also refer to the composer setup for more detaills.


drag or zoom in/out in geolocation

In geolocation-orientation example (https://github.com/openlayers/openlayers/blob/main/examples/geolocation-orientation.js) we cant drag or zoom in/out
Provide some tweak to enable drag/zoom
In geolocate event also it is not working
I want to add a Recenter button to get back to tracking mode
Thanks in advance

Your button would need to activate/deactivate the centering and rotating of the view.  Because an overlay does not rotate with the view and relies on the view rotating to show the heading you would need to replace it with a feature with icon style which shows the  heading regardless of the view rotation.  https://codesandbox.io/s/geolocation-orientation-nkb08p?file=/main.js

Thanks a lot
It works
On Sat, 4 Jun, 2022, 2:29 pm mike-000, @.***> wrote:

Your button would need to activate/deactivate the centering and rotating
of the view. Because an overlay does not rotate with the view and relies on
the view rotating to show the heading you would need to replace it with a
feature with icon style which shows the heading regardless of the view
rotation.
https://codesandbox.io/s/geolocation-orientation-nkb08p?file=/main.js
—
Reply to this email directly, view it on GitHub
https://github.com/openlayers/openlayers/issues/13726#issuecomment-1146571766,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWOLXPINWLN5U2CLFO6IYILVNMLGHANCNFSM5XZMXGCA
.
You are receiving this because you authored the thread.Message ID:
@.***>


Define guidelines for writing a library/emitter around scoping

Typespec is design so you can define your service/architectgure as a single spec and emitter should be able to pick what they care about without being poluted by other emitters. We should describe those guidelines so make sure emitters and libraries are design to work together.
Example for azure and tcgc playground

est: 3


⚠ Roblox Site (Under Aritifical Testing) has degraded performance

In ba81fcf, Roblox Site (Under Aritifical Testing) (https://www.roblox.com) experienced degraded performance:

HTTP code: 200
Response time: 4839 ms

Resolved: Roblox Site (Under Aritifical Testing) performance has improved in a4fe464.


Adds support to the zookeeper service watcher for haproxy_server_options

This is such a bad design, I really dislike that we munge the zk data
multiple times. Unfortunately I don't know a better way to do it yet. I
will work on it.

I did some manual tests, but it would be great if we had zk specs at some point ...


Can't Download APK file up to 2GB From Store

Hello,
When I try to download my apk file (2GB). The download start correctly but never completes.
The download correctly completes for the more smaller file .
In my test, the download manager crash for the file bigger than 1.7GB

What's your device OS version? Actually if download manager fails downloading this, it's beyond our control as we use Androids' built in download manager for downloads. But if your device vendor has not released a patch/OS upgrade for this issue, you can try changing WSO2 android agent app to use HTTPClient to download the file rather than using the download manager. It's easily switchable in code (Check line 435 onward on https://github.com/wso2/product-emm/blob/master/modules/mobile-agents/android/client/client/src/main/java/org/wso2/emm/agent/api/ApplicationManager.java). You can use chunking for large files as well.


[6.0] Temporarily turn off completing lifetimes of block arguments

Explanation: Fixes a compiler crash due to calling complete lifetimes from the move-only address checker.
Scope: Affects compiler diagnostics for move-only values
Risk: Low.
Testing: Passes unit tests
Issue: rdar://130077346
Reviewer: @nate-chandler
Main branch PR: https://github.com/swiftlang/swift/pull/74660

@swift-ci test


Malformed asm! causes opaque storage class inference conflict errors and/or ICEs

I was trying to get the type of a pointer in a generic fashion, however I've been running into some errors in using inference that are preventing me from doing so. Version 1 of the ASM code causes an inference conflict error, and the second version causes an ICE.
cc @eddyb
Code
#![no_std]
#![feature(register_attr, asm)]
#![register_attr(spirv)]

use spirv_std::{scalar::Scalar, storage_class::Input};

pub fn ptr_inference(input: &Input<f32>) {
    let mut result = 0.0;

    // Version 1
    unsafe {
        asm! {
            "%result = OpLoad _ {ptr}",
            "OpStore {result} %result",
            ptr = in(reg) input,
            result = in(reg) &mut result
        }
    }

    // Version 2
    unsafe {
        asm! {
            "%ptr_type = OpTypePointer Generic _",
            "%result = OpLoad %ptr_type {ptr}",
            "OpStore {result} %result",
            ptr = in(reg) input,
            result = in(reg) &mut result
        }
    }
}

#[spirv(fragment)]
pub fn main(x: Input<f32>) {
    ptr_inference(&x);
}

Inference Conflict Error
inference conflict: Concrete(IdRef(21)) vs Instance(Instance { generic_id: 3, generic_args: InferVar(7)..InferVar(8) })
    in OpStore 23 27

ICE Error
thread 'rustc' panicked at 'index out of bounds: the len is 1 but the index is 1', crates/rustc_codegen_spirv/src/builder/spirv_asm.rs:296:30
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

error: internal compiler error: unexpected panic

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/EmbarkStudios/rust-gpu/issues/new

note: rustc 1.52.0-nightly (476acbf1e 2021-03-03) running on x86_64-apple-darwin

note: compiler flags: -Z unstable-options -Z codegen-backend=/Users/erin.power/src/scratchpad/rustgpu.dylib -Z symbol-mangling-version=v0 -C embed-bitcode=no -C debuginfo=2 -C incremental --crate-type dylib

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
end of query stack
note: `rust-gpu` version 0.3.0

@eddyb Just to be clear, what's malformed about this asm?
        asm! {
            "%u32 = OpTypeInt 32 0",
            "%scope = OpConstant %u32 0",
            "%semantics = OpConstant %u32 0",
            "%result = OpAtomicLoad _ {ptr} %scope %semantics",
            "OpAtomicStore {result} %scope %semantics %result",
        }

That asm! takes in two values ({ptr} and {result}), and its validity depends on their types, can't really be malformed on its own as-is, it's just incomplete, really.
My guess is that typeof(*ptr) != typeof(*result), but if it's not that, it could be a bug elsewhere.

I also get the inference bug on the following code.
pub unsafe fn atomic_store<S: spirv_std::scalar::Scalar>(ptr: &mut S, value: S) {
    asm! {
        "%u32 = OpTypeInt 32 0",
        "%scope = OpConstant %u32 0",
        "%semantics = OpConstant %u32 0",
        "%value = OpLoad _ {value}",
        "OpAtomicStore {ptr} %scope %semantics {value}",
        ptr = in(reg) ptr,
        value = in(reg) &value,
    }
}

#[spirv(fragment)]
pub fn main(mut output: Image<f32>) {
    unsafe {
        spirv_std::arch::atomic_store(&mut *output, 5.0);
    }
}

@XAMPPRocky That's also malformed asm!, I assume you meant to write %value instead of {value} - should probably avoid reusing names between the two, and call the input e.g. {value_ref} instead.

@eddyb Yep, only caught that after I posted it. 😅 It works when fixed.

I don't think improving the error messages of asm! is important to us right now, and ICE'ing is probably fine (it ICEs in a whole bunch of other places, in a way that I think we would need to do validation on the instructions ourselves, and that's just too much)

Wait, how are you getting that? Should be impossible now that we've updated rspirv to include @khyperia's gfx-rs/rspirv#184.

Well I just figured that one out: we never did bump our dependency to include gfx-rs/rspirv#184.
I'm not sure what happened, because I clearly recall getting its effect locally.
I either forgot to commit, or it was in a commit that got lost in a rebase.


Correct way to change tcp_keepalives settings

I want to change the following parameters of postgres config, tcp_keepalives_count,  tcp_keepalives_idle,  tcp_keepalives_interval.
What is the recommended way to change them?
Following is my docker-compose.yml
postgres:
  restart: always
  image: postgres:latest
  volumes:
    - /data:/var/lib/postgresql
  ports:
    - "5432:5432"
  environment:
    - POSTGRES_USER=admin
    - POSTGRES_PASSWORD=postgres
    - POSTGRES_DB=postgres

Solved it with this
postgres:
  restart: always
  image: postgres:latest
  container_name: postgres
  volumes:
    - /data:/var/lib/postgresql
  ports:
    - "5432:5432"
  environment:
    - POSTGRES_USER=admin
    - POSTGRES_PASSWORD=postgres
    - POSTGRES_DB=postgres
  command: postgres -c tcp_keepalives_idle=60 -c tcp_keepalives_interval=60 -c tcp_keepalives_count=60


Nix does not build on Apple Silicon

Summary
After finishing the Plutus Pioneer Program using a Google Cloud compute instance, I was holding off on Plutus development and waiting for my new MBP M1 to come, so I could make use of the VSCode Haskell plugin. The day finally arrived and I was super stoked to get Plutus up and running. Unfortunately, Nix failed to build.
Steps to reproduce the behavior

Setup IOHK caches:

% cat /etc/nix/nix.conf
substituters        = https://hydra.iohk.io https://iohk.cachix.org https://cache.nixos.org/
trusted-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= iohk.cachix.org-1:DpRUyj7h7V830dp/i6Nti+NEO2/nhblbov/8MW7Rqoo= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=

Install Nix

% sh <(curl -L https://nixos.org/nix/install) --daemon

Clone this repo and nix-build

% git clone https://github.com/input-output-hk/plutus-apps
% cd plutus-apps
plutus-apps % nix-build -A plutus-playground.server

Actual Result
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
`cc' failed in phase `C Compiler'. (Exit code: 1)
error: builder for '/nix/store/3w27fs094aacf570g1jx2q0fgawkn5bz-scrypt-lib-scrypt-0.5.0.drv' failed with exit code 1;
       last 10 log lines:
       > /nix/store/qc4fzcja2bs760vsqcsc6v28imjwy0wi-clang-wrapper-11.1.0/resource-root/include/mmintrin.h:525:12: error:
       >      error: invalid conversion between vector type '__m64' (vector of 1 'long long' value) and integer type 'int' of different size
       >         return (__m64)__builtin_ia32_psubw((__v4hi)__m1, (__v4hi)__m2);
       >                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       >     |
       > 525 |     return (__m64)__builtin_ia32_psubw((__v4hi)__m1, (__v4hi)__m2);
       >     |            ^
       > fatal error: too many errors emitted, stopping now [-ferror-limit=]
       > 20 errors generated.
       > `cc' failed in phase `C Compiler'. (Exit code: 1)
       For full logs, run 'nix log /nix/store/3w27fs094aacf570g1jx2q0fgawkn5bz-scrypt-lib-scrypt-0.5.0.drv'.
error: 1 dependencies of derivation '/nix/store/phv89ijk0lindnpjvh10bn5hv3inw8lq-cardano-wallet-core-lib-cardano-wallet-core-2022.1.18-config.drv' failed to build
error: 1 dependencies of derivation '/nix/store/c2wbx39k5804ifjg3sdjnfjf7q9ky0v2-cardano-wallet-core-lib-cardano-wallet-core-2022.1.18.drv' failed to build
building '/nix/store/s7790i5399d0knlsinpb1r9jcl55kyvj-attoparsec-lib-attoparsec-<IP_ADDRESS>-config.drv'...
error: 1 dependencies of derivation '/nix/store/in76rncrqv7z1ah82w60sy0gg8861m29-plutus-contract-lib-plutus-contract-<IP_ADDRESS>-config.drv' failed to build
error: 1 dependencies of derivation '/nix/store/f5g6ngllgspr7hxvjns0py3q6vn8xdkz-plutus-contract-lib-plutus-contract-<IP_ADDRESS>.drv' failed to build
error: 1 dependencies of derivation '/nix/store/af1531h59nhk24p83p00qww7jajayw4f-plutus-playground-server-exe-plutus-playground-server-<IP_ADDRESS>.drv' failed to build

Expected Result
No error observed and nix is able to build.
Describe the approach you would take to fix this
I am not familiar enough with this repository or Nix to give an idea, but I would ask the following questions:

Is it possible to test this in CI/CD at all?
Is there a stable commit to reference in the README to suggest to users to build from?

System info
MacOS 12.3, 16 inch 2021
Apple M1 Max
Memory 32 GB
% clang --version
Apple clang version 13.0.0 (clang-13<IP_ADDRESS>)
Target: arm64-apple-darwin21.4.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin

Also, FYI, I do have ghcup globally installed as well outside of Nix:
% curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
# ...
% ghcup --version
The GHCup Haskell installer, version v<IP_ADDRESS>
% ghc --version
The Glorious Glasgow Haskell Compilation System, version 8.10.7

I did not see this. I will revert Nix and re-attempt using those instructions. If that works, I'll add a link to the readme.


[$500] Workspace - User redirected to launching expensify screen after selecting free plan on OD

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.25-7
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:

Log into ND with an existing account
Log into OD with a different account
In OD navigate to Settings > Workspaces
Click on New Workspace and select Free plan

Expected Result:
User is redirected to ND and lands on new workspace settings
Actual Result:
User lands on the "Launching Expensify" screen and is not redirected to ND after waiting for a while. On the original ND tab "Something went wrong screen" is displayed
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] Windows: Chrome
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/bb7d428e-d1bb-4978-b47f-b19e879bdf67
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01167f01a930e82f63
Upwork Job ID:<PHONE_NUMBER>973366784
Last Price Increase: 2024-01-16

Production:
https://github.com/Expensify/App/assets/78819774/ccc7139e-9161-4c96-91a3-d90b9df7eb9f

@lanitochka17 can you re-test this please? This CP should have fixed this issue https://github.com/Expensify/Web-Expensify/pull/40515

Checking with QA team will back to you shortly. Thank you

Issue is still reproducible
https://github.com/Expensify/App/assets/78819774/5ef7989e-0d3b-4057-a31e-8e598b1fac25

Issue not reproducible anymore in build 25-10 🎉
https://github.com/Expensify/App/assets/44479856/c467e157-6a16-40aa-ad43-d1ba606a4396

QA confirmed the fix 🎉


Add more spatial examples

Originally filed as https://github.com/aspnet/EntityFrameworkCore/issues/1100#issuecomment-491697516 by @zp987

Cant find much documentation on how to use NetTopologySuite with Entity Core. Looking for stuff like
Inserting a Poligon suing Entity Core Classes and NetTopologySuite, Inserting a Location Point using Enity Core with NetTopologySuite datatypes/property.
Links to any documentation on CRUD operations using Enitity Core/NetTopologySuite will be great.
Was looking for examples of CRUD operations to geography type columns .
Inserting a new row using (entity core/nettopologysuite) in DB with a Geography column type that will store a Polygon ? or Even inserting a new row in the DB with column (geography) storing location pount?
Have also checked http://www.npgsql.org/efcore/mapping/nts.html not much info there either.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: c2dcf82b-f177-e91b-96a5-67f2f57bd6c4
Version Independent ID: 89c0803f-570f-07a6-6dc2-285678712c86
Content: Spatial Data - EF Core
Content Source: entity-framework/core/modeling/spatial.md
Product: entity-framework
Technology: entity-framework-core
GitHub Login: @bricelam
Microsoft Alias: bricelam

Ditto.  I am converting .NET Framework v4.8/EF code with a DbGeography data type to .NET Core/EF Core 2.2, and am getting a "cannot bind 'spatialServices', 'spatialProviderValue' in DbGeography(DbSpatialServices, object spatialProviderValue)" exception when I am trying to use this POCO.  Cannot find good examples that use the DbGeography type as a column in the new Core.

@Kurtbaby DbGeography and DbGeometry are specific to EF6. They cannot be used with EF Core. The NTS types are essentially replacements for these types.

Duplicate of #1118


Update dbt-semantic-layer.md

Description & motivation

To-do before merge

Prerelease docs
If this change is related to functionality in a prerelease version of dbt (delete if not applicable):

[ ] I've added versioning components, as described in "Versioning Docs"
[ ] I've added a note to the prerelease version's Migration Guide

Checklist
If you added new pages (delete if not applicable):

[ ] The page has been added to website/sidebars.js
[ ] The new page has a unique filename

If you removed existing pages (delete if not applicable):

[ ] The page has been removed from website/sidebars.js
[ ] An entry has been added to _redirects
[ ] Run link testing to update the links that point to the deleted page

hey @pylenin ! great catch and thanks for opening this PR to fix the typo! I've approved and merged this fo you :D


Tabs do not shrink, resulting in unreachable tabs

Intended: As tabs come closer to the right-side edge, they should be shrinked to fit more.

Different solution implemented, a scroll bar.