How can I enter a password in the middle?

Suppose I start A and B simultaneously. If A requires a password input midway, how can I prevent the logs of B from covering the input? Or how can I make B pause and wait until the input is completed?

Hey. There's not much that can be done within concurrently today, any solutions I can think of would involve changing your inputs and might be brittle.
It's also not like concurrently could just detect that the command is waiting for input, as stdin should be open all the time, just ignored until it's expected.
I'm happy to learn if other tools solved this in a creative way though!


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/54374

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/63800

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/69357

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/69772

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/75016


Tor Support

Adding tor support via the Orbot app would be awesome and would allow for easier connections to personal nodes via hidden services, as well as obfuscation of mobile IP addresses when the app queries blockchain.info for Bitcoin data.

It is planned, but realistically not going to happen soon. Unless someone other than me is implementing it. ;-)

I wish I knew how to code so I could help with it... learning, though!

@michaelWuensch @maraph has anyone looked into this one? Something like Orbot?

I think it's possible if zap app were to have settings that would allow it to utilize Orbot's proxy services @ <IP_ADDRESS>:9050
Could setup a hidden service on the machine running LND node, and then just use in LND connect the .onion address.
Actually, I have some time tonight and will play around with it. Might be able to test it by running Orbot in VPN mode to force Zap to use Tor. Not sure if it'll be able to query the .onion address, though.

@05nelsonm have you had any success?

@05nelsonm have you had any success?

No I haven't. What I tried was to:
Create a hidden service by adding to my /etc/tor/torrc:
HiddenServiceDir /var/lib/tor/lnd-connect
HiddenServiceVersion 3
HiddenServicePort 10009 <IP_ADDRESS>:10009

Restarted tor and then obtained the .onion address via:
$ sudo cat /var/lib/tor/lnd-connect/hostname
[Be sure to wait a bit for the .onion address to propagate throughout the Tor network]
Took my lnd-connect cert and replaced the ip address (<IP_ADDRESS>) with the .onion address
On my phone I enabled Orbot as a VPN, making sure to enable coverage of Zap Android
Reconnected Zap Android via the new lnd-connect link while on mobile data.
Results:

Was unable to connect.
Not sure if this is an issue with the torrc configuration, or if Zap Android is able to even recognize the .onion address.

Unfortunately I have litteraly no experience with tor so far, that's why I cannot really help you.
I will have to look into this when we work on tor support.
What I do to establish the connection is building a channel with OKHttp.
mSecureChannel = OkHttpChannelBuilder
                    .forAddress(host, port)
                    .sslSocketFactory(mSSLFactory)
                    .build();

So I guess, the question is if OkHttp can handle tor. But I don't know what Orbot is actually doing or if it helps here in any way.

Results:

Was unable to connect.
Not sure if this is an issue with the torrc configuration, or if Zap Android is able to even recognize the .onion address.

To make sure your tor server is set up correctly, try the same workflow with Zeus LN android app, use 10009 tho:
./lndconnect --lnddir=/var/db/lnd --image --host=blahblahblahblahblahblah.onion --port=10009

torrc:
HiddenServiceDir /var/db/tor/remote_connections
HiddenServiceVersion 3
HiddenServicePort 10009 <IP_ADDRESS>:10009
HiddenServicePort 8080 <IP_ADDRESS>:8080

The above works for me on Zeus but the same workflow with port 8080 for Zap does not work.

Hi seth586,
yes, tor is not supported yet. We use gRPC to make all the API calls which is much more complicated to get to work with tor than REST. We probably will have to write a wrapper that falls back to REST when we connect to a tor node.
It is definetly a feature we want to support soon, but right now I don't think it is possible to connect to a tor node.

👀


Template function for iterating modules in correct build order

I am looking to use the mbt apply function with CI services like Jenkins X and TektonCD but I am unable to render the template in the correct build order (right now it is sorted by name).
Is there a workaround or a feature in the future where I could iterate the list of modules by build order so I can form the pipeline correctly?
Thanks!

🤔 I thought it already did. Interesting. If it’s not doing that already we should make it do so.  Off the top, I don’t think it would break the compatibility.

@dustyhorizon soz, you are right.
https://github.com/mbtproject/mbt/blob/master/lib/apply.go#L294
I can't recall why this list is sorted by name. I will add a new property that preserves the dependency order and get a new release.

@dustyhorizon I managed to land this on master (https://github.com/mbtproject/mbt/pull/133). Could you please try the latest dev build and let me know if it's good enough 😉? Thanks a lot!

Sure thing! Let me get back to you within these few days

@buddyspike looks good so far, although during my test I came into a use case where mbt apply diff would be great so that I can generate an appropriate list of things to build for CIs that do not support some form of dependencies reference etc. but that is something I can workaround right now.
Meanwhile I'll go ahead and close this issue first. Thanks for quick fix though!


docker-compose-elasticsearch crashes upon startup: max virtual memory too low

Describe the Bug
When attempting to use https://github.com/openzipkin/zipkin/tree/master/docker/examples, running
$ docker-compose -f docker-compose-elasticsearch.yml up

Results in an immediate Docker crash on my machine:
ERROR: [1] bootstrap checks failed

[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

ERROR: Elasticsearch did not exit normally - check the logs at /elasticsearch/logs/docker-cluster.log

[2021-10-05T00:14:24,332][INFO ][o.e.n.Node ] [zipkin-elasticsearch] stopping ...

uncaught exception in thread [Thread-2]

java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "getClassLoader")

at java.base/java.security.AccessControlContext.checkPermission(Unknown Source)

at java.base/java.security.AccessController.checkPermission(Unknown Source)

at java.base/java.lang.SecurityManager.checkPermission(Unknown Source)

at java.base/java.lang.ClassLoader.checkClassLoaderPermission(Unknown Source)

at java.base/java.lang.ClassLoader.getParent(Unknown Source)

at org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.locateContext(ClassLoaderContextSelector.java:114)

at org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.getContext(ClassLoaderContextSelector.java:74)

at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:228)

at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)

at org.apache.logging.log4j.LogManager.getContext(LogManager.java:174)

at org.elasticsearch.bootstrap.Bootstrap$4.run(Bootstrap.java:193)

Steps to Reproduce
Attempt to run docker-compose with ElasticSearch using the latest Zipkin tag
Expected Behaviour
A successful startup of Zipkin and ElasticSearch.
Note: I'm running on Windows 10 Pro, 19041.1237 with WSL2 and Ubuntu 20.04 as my distribution.

Looks like on WSL2 you need to use sysctl to increase the number of virtual memory areas: https://stackoverflow.com/a/66547784/377476 - this worked for me.


 All parameters are optional and should
        only be set if the defaults need to be overridden.

        Authentication should be automatic if the HDFS cluster uses Kerberos.
        However, if a username is specified, then the ticket cache will likely
        be required.

        Parameters
        ----------
        host : NameNode. Set to "default" for fs.defaultFS from core-site.xml.
        port : NameNode's port. Set to 0 for default or logical (HA) nodes.
        user : Username when connecting to HDFS; None implies login user.
        kerb_ticket : Path to Kerberos ticket cache.
        extra_conf : dict, default None
          extra Key/Value pairs for config; Will override any
          hdfs-site.xml properties

        Notes
        -----
        The first time you call this method, it will take longer than usual due
        to JNI spin-up time.

        Returns
        -------
        filesystem : HadoopFileSystem
        """
        warnings.warn(
            _DEPR_MSG.format("hdfs.connect", "2.0.0", "fs.HadoopFileSystem"),
>           DeprecationWarning, stacklevel=2
        )
E       DeprecationWarning: pyarrow.hdfs.connect is deprecated as of 2.0.0, please use pyarrow.fs.HadoopFileSystem instead.

/opt/conda/lib/python3.7/site-packages/pyarrow/hdfs.py:215: DeprecationWarning

https://github.com/dask/dask/runs/2731208592

Thanks for surfacing @jsignell. cc @dask/io if anyone gets a chance to take a look

I think it's super simple, so I just opened a PR to see


added snake game

Closes: Issue #112

Title:  adding a snake game under games section #112
Your Name: Shrishti Singh
Idenitfy yourself:  Contributor in gssoc-ext and Hacktoberfest

Describe the add-ons or changes you've made 📃
Give a clear description of what have you added or modifications made
Key Points:
Game State Management: All the game state (snake, food, direction, etc.) is stored in st.session_state to persist across user actions.
Grid Display: The game grid is displayed using emojis (🟩 for the snake and 🍎 for the food), but you can customize this.
Movement Control: The player controls the snake with W, A, S, D keys via Streamlit buttons.
Game Logic: The snake moves, eats food, grows, and checks for collisions with walls or itself.
Restart Option: A restart button re-initializes the game state.
Checklist: ☑

[x] My code follows the Contributing Guidelines & Code of Conduct of this project.
[x] This PR does not contain plagiarized content.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly wherever it was hard to understand.
[x] My changes generate no new warnings.

Screenshots 📷

@Avdhesh-Varshney resolved the raised issues in PR #117


fix: better case insensitivity fix for `postcss-normalize-timing-func…

…tions`

Coverage remained the same at 99.449% when pulling e689053a741775f9c0a04995796c5f8ebb369c57 on evilebottnawi:fix-better-support-case-insensitivity-postcss-normalize-timing-functions into<PHONE_NUMBER>d686dc82b755d79805b4efa2cd5b2a on ben-eb:master.


Ocean size

Hello everyone from the community!
I'm new to OpenFAST and don't understand it very well yet. Currently, I'm trying to generate a vtk file of a floating wind turbine on OpenFAST, so I can send it to paraview/blender/UE5 to visualize it in virtual reality. However, I want to make the ocean bigger so the visualization is more immersive regarding to sizes, and the motion of the waves remains realistic (below there is an image from blender of the current size of the ocean in comparison to the wind turbine).
I believe that I need to change something in the original code to achieve this. Does anyone knows if it's possible and what do I need to change?
Thank you for the attention!

Dear @Hanashiro2001,
In the current version of OpenFAST (v3.5.4), the visualization of the still water and waves uses a surface that scales with the rotor diameter.  Changing the size of this surface visualization would require a change to the source code.
That said, in the upcoming release of OpenFAST v4, the size of this surface is easily set by the user through the new SeaState module.  I would suggest waiting for the release of OpenFAST v4 (due out soon) or upgrading to the dev branch of OpenFAST to make use of the new SeaState functionality.
Best regards,


May be a bug while transfoming some dcom file to raw data.

Description
I had compiled and try to load and show dcom files.
I download some dcom files from web site, it runs well.
And i went to hospital and get some CT files, it make mistakens.
i try three ways, but it can't run.this is my try code ,and i will uploaded my CT files later.
1.
i try rescale the dcom data like this:
		        using ImageType = itk::Image<unsigned short, 2>;
		        using ReaderType = itk::ImageFileReader<ImageType>;
		        using ImageIOType = itk::GDCMImageIO;
			using RescaledPixelType = unsigned char;
			using RescaledImageType = itk::Image<RescaledPixelType, 2>;
			using RescaleFilterType = itk::RescaleIntensityImageFilter<ImageType, RescaledImageType>;

			RescaleFilterType::Pointer rescaler = RescaleFilterType::New();
			rescaler->SetOutputMinimum(0);
			rescaler->SetOutputMaximum(255);
			rescaler->SetInput(reader->GetOutput());
			rescaler->Update();

i try i cast filter like this:

                       	using OutputPixelType = itk::RGBAPixel<unsigned char>;
			using OutputImageType = itk::Image<OutputPixelType, 2>;
			using CastFilterType = itk::CastImageFilter<ImageType, OutputImageType>;
			CastFilterType::Pointer caster = CastFilterType::New();
			caster->SetInput(reader->GetOutput());

			caster->Update();

3.I read some decode codes, and it means the original image is a grey value,
222.zip
222.zip
so i try to decode myself
		for (int k = 0; k < PixelCount; k++)
		{
			unsigned short PixelValue = gDcmImageData[k];
			PixelValue = PixelValue >> shiftedValue;
			float correctedValue = float(PixelValue) * RescaleSlope + RescaleIntercept;
			unsigned char grey = (uint8_t)std::max(0.0, std::min(255.0, (correctedValue - MinValue) / (MaxValue - MinValue) * 255.0));
			RGB[k * 3 + 0] = grey;
			RGB[k * 3 + 1] = grey;
			RGB[k * 3 + 2] = grey;
		}

           and the minValue and the maxValue depends on the largest pixel value and the smallest pixel value or window level and window width.

	unsigned short SamplesPerPixel = GetSamplesPerPixel(IO);
	unsigned short BitsAllocated = GetBitsAllocated(IO);
	unsigned short BitsStored = GetBitsStored(IO);
	unsigned short HighBit = GetHighBit(IO);
	unsigned short PixelRepresentation = GetPixelRepresentation(IO);

	float RescaleSlope = GetRescaleSlope(IO);
	float RescaleIntercept = GetRescaleIntercept(IO);
	float WindowWidth = GetWindowWidth(IO);
	float WindowLevel = GetWindowLevel(IO);

	unsigned short SmallestPixelValue = GetSmallestPixelValue(IO);
	unsigned short LargestImagePixelValue = GetLargestImagePixelValue(IO);

	float MinValue = SmallestPixelValue;
	float MaxValue = LargestImagePixelValue;

but all the ways failed. so what is the problem?

Steps to Reproduce

Expected behavior

Actual behavior

Reproducibility

Versions

Environment

Additional Information

May be my fault. I try import this and render using vtk, it run well. may be original pixel colors need to rebuild and render? i'll try vtk after soon.


fix creating the cluster template, the version and warehouse of cont…

…ainerd are empty
Signed-off-by: lysign<EMAIL_ADDRESS>
What type of PR is this?
/kind bug

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #15
Special notes for reviewers:

Does this PR introduced a user-facing change?

Additional documentation, usage docs, etc.:

/cc moweiwei

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@d57d65d). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #16   +/-   ##
=========================================
  Coverage          ?   48.33%
=========================================
  Files             ?        6
  Lines             ?      542
  Branches          ?      150
=========================================
  Hits              ?      262
  Misses            ?      219
  Partials          ?       61


Fix nightly tests

[x] Closes #429

Replaces PR #433, which was a starting point
Added tests to catch exceptions
Also avoid pyright 1.1.280 because it has bugs

@bashtage  or @twoertwein  this is now good to go.  Can one of you merge?

Good to have this in.

Nightly will probably be breaking a lot in the next few months unfortunately.


fix(docs): Remove broken link from nav

The SharedMap class was removed from package exports a while back, but our custom nav was explicitly pointing to it, so we have a broken link. This removes the reference to the removed class.

I think it’s just a format issue. For another PR, should we remove the other map interfaces since those aren’t being used? We should also remove v1 packages since that link just goes to complete reference

The ISharedMap interface is still used, we just don't expose the underlying class anymore. I'm not sure about the other interfaces though.
It really isn't clear what should belong under each category, or what the appropriate process is to keep those lists updated. And the contents are very fragile to code changes. I'm going to propose we move away from the curated nav contents here, and just give the complete fluid-framework reference page instead.


Add bdd test cases for update shopcart api

Add feature file for update shopcart api, with all the possible scenarios and their respective implementation in steps.py file


Cleanup after istiod intergrated into pilot

This is kind of clean code, with less risk.

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
89f2f4ac4863ede9f73928d40d680c39aacd6c60
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test unit-tests_istio

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
89f2f4ac4863ede9f73928d40d680c39aacd6c60
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
89f2f4ac4863ede9f73928d40d680c39aacd6c60
link
/test unit-tests_istio

lint_istio
437a7d183e6b349ccc4ef56bcad60cf851ad968a
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

lint_istio
437a7d183e6b349ccc4ef56bcad60cf851ad968a
link
/test lint_istio

unit-tests_istio
437a7d183e6b349ccc4ef56bcad60cf851ad968a
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
037b8ee2c0ca92fb797028eb83d5ab2ca8205b4d
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
e46926592994cfda9fb37bba8f74dc246a1792ea
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
e46926592994cfda9fb37bba8f74dc246a1792ea
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
ad53c098a7f2e20c5078f3cf8a7b0eb30a5f9725
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test unit-tests_istio

@howardjohn Any other comments?

ping @howardjohn


Overlapping appointment creation allowed

Replicate the behaviour:
addappt 2 d/tdy 10am-12pm
addappt 2 d/tdy 9am-12pm
Result:

This is #180 , which Min Rei labelled as Not Allowed to Fix. @minreiseah can check?

Ah so #180 is for different persons' appointments, this is for a single person, which I thought overlap shouldn't be allowed


Disallow deletion of non-orphaned entities

Feature Suggestion
The catalog currently allows deletion of non-orphaned entities, an orphaned entity being one that is not referenced by any other entity and is usually safe to delete. Deleting a non-orphaned entity is really only valid in the case where an entity somehow gets stuck in some way, so it's basically a way to work around bugs in the catalog. The trouble with allowing deletions of non-orphaned entities is that due to caching in the catalog processing, they will remain deleted until something invalidates the cache, which can be tricky to figure out how to do and is not a self-healing problem.
We're thinking that allowing deletion of non-orphaned entities is currently worse than not allowing it, as it's causing quite a lot of confusion. It's arguably more correct to not allow deletion, and if there are any cases where entities get stuck, we can focus efforts towards resolving those bugs instead.
Possible Implementation
We're happy to have people from the community chip in on this one, so let us know if you want to take a stab at it and we can provide additional pointers as needed
The main change will be to update removeEntityByUid to reject the deletion if an entity isn't orphaned. We won't want to rely on the orphan annotation at that point though, as that's not the source of truth. We'll instead want to check the incoming references, just like the Stitcher does when it populates the orphan annotation.
With that in place we'll likely hit some issues though, as we now start rejecting deletions that aren't safe. This is particularly likely to break the location unregistration, which assumes that it is safe to optimistically delete all entities referenced by the location. Most likely the best way to solve this is to move the eager deletion to the backend instead, but to be honest it might already be the case that this happens already  and just needs a bit of verification :grin:
Context
Plenty of reports through Discord of deleted entities not reappearing
Requests such as #8419
Automated cleanup is another way to go about deletions, but we'll likely want a bit of both #7860

Ah, so that's why! I've have many issues with this before and never really understood why that happens. How does one invalidates the cache? Just so I know what to do next time this happens.

@goenning anything that fails this check in the processing engine for the parent location. The deferredEntities entities is that typically the json object of each of the documents in catalog-info.yaml, so changing the contents of the yaml file should invalidate the cache. If you want to poke at the DB then clearing the result hash of the parent location would be a way to go about it.


Simpler GraphQL syntax?

Thinking out loud…
What if we went from:
repository() {
	ref(qualifiedName: "${branch}") {
		target {
			... on Commit {
				history(first: 1, path: "${filePath}") {
					nodes {
						oid
						commitDate
					}
				}
			}
		}
	}
}

To:
repository()
ref(qualifiedName: "${branch}")
target
... on Commit
history(first: 1, path: "${filePath}")
nodes
oid commitDate

where every line break is a { and every missing } is appended.
Most of our queries are allowed with this syntax. Others can keep using the native syntax.
It would be its own helper like:
api.v4(ql`
	  repository()
	  ref(qualifiedName: "${branch}")
	  target
	  ... on Commit
	  history(first: 1, path: "${filePath}")
	  nodes
	  oid commitDate
`)

and multiple queries can be concatenated as strings too:
api.v4(ql`
	  repository()
	  ref(qualifiedName: "${branch}")
	  target
	  ... on Commit
	  history(first: 1, path: "${filePath}")
	  nodes
	  oid commitDate
` + ql`
	  query2: repository()
	  name
`)

Thoughts? Worth it? 😂

I think that kills the beauty of GraphQL. What I like it most is the way the call is made, that is what the response looks like.
It may take up more "lines" but I think the other way is clearer. JMHO

console.debug for every call in api.v4 when installed locally

Big 👍

I find the original syntax more readable.


Change station by selecting new station

Currently one has to Pause, then select from dropdown, then Play.
Faster would be simply changing the station (not having it unselectable while playing).

Haha that is the most roundabout way of giving a :+1: +1. ;) I'll work on this next!

This is fixed in https://github.com/cheshire137/soma-chrome/commit/3d7a47bbd5029b759f2a00fbb6fdf0181e90447c but not yet pushed to the Chrome Store.

Version <IP_ADDRESS> is now live in the Chrome Store!

How deep can this rabbit hole go...?


Dragonrage: Watch allbanglanewspapers24.com

Dragonrage requests the watch of the watch_keyword allbanglanewspapers24\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

allbanglanewspapers24\.com has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Approved by cigien in Charcoal HQ


Add google analytics for chrome extension - requires an option to turn off Analytics tracking

[ ] Add GA to extension
[ ] Add option to turn off analytics tracking

We are already using Amplitude, so closing this.


Arrow gets positioned incorrectly first time if set immediately in. Works in rag

I wanted to have a "hover bridge" between the button opening the tooltip and the tooltip that has an offset. I tried using the arrow middleware for this. It works, but only if I wrap the setting of the arrow elements style in a raf instead of doing it immediately.
Interestingly it is only incorrect the first time. If I dont wrap with a raf it is incorrect on the first open but then when I close and open again it becomes correct. Seems like the middlewareData.arrow.x value is incorrectly calculated at first but then quickly updates to the correct value.
From sandbox below:
without raf
(on the first open the red arrow element is not positioned between the whole tooltip and button)

with raf

Here's codesandbox: https://codesandbox.io/s/floating-ui-dom-template-forked-4i5bnn?file=/src/index.js
(maybe it would make sense to have a new "bridge" middleware or something for this but still I dont see why the raf should be needed for the value to be correct on the first render)

If you remove the width assignment style to the tooltip, it's correct initially. Otherwise it re-runs the lifecycle and gives it the wrong value for some reason (idk why right now). I think the ordering of styles here is not right though, the arrow should have the width style applied to it before arrow() runs, without mutating it in size afterward, as it wasn't meant for that.

the arrow should have the width style applied to it before arrow() runs, without mutating it in size afterward, as it wasn't meant for that.

Ok, how could the "hover bridge" be implemented in another way if not in size afterwards?

I'm not sure how exactly although it's likely possible in some way. You can also write the logic for that in plain JS checking the mouse coordinates during pointermove, without needing to create an element (although it wouldn't block pointer-events/hover effects unerneath like an element would).
Anyway, a triangle polygon is usually better than a rectangle bridge shape like that

Anyway, a triangle polygon is usually better than a rectangle bridge shape like that

Yeah but how can I use safePolygon without react? More specifically in an ember project. Is there a vanilla js version of it? If not, what would have to be done to make the react version non react specific?

It can be made non-React specific a bit easier than other parts of the React library - to do so it needs to accept all the params it receives from the context object during the mouseleave listener. (But of course, setting up the mouseleave part is also a bit of work).


Incorrect image when tile size isn't multiple of image size

Problem
When filling the ImageSpec structs with incoherent tile size and image size, I get a corrupted/undesirable image.
For example:
tile size: 32x32 | image size: 62x62
tile size: 32x32 | image size: 2x2
Expected behavior:
In the first case, the tiles must fit to the image size. In other word, tile size should be resized according to image size.
=> Maybe the first tile can be of size 32x32 and the second one can be 30x30.
In the second case, it should have only one tile of size 2x2.
Actual behavior:
In these both cases, some pixels at the end of the image are skiped (and so, has incorrect values).
Steps to Reproduce

Create an ImageSpec.
Fill the field tile size and image size of the ImageSpec with the values given in my previous example.
Write an exr file with the write_tile() method.

Versions

OIIO branch/version:  1.7.10
OS:  Windows 10
C++ compiler:  Visual studio 14 2015

You don't actually give repro steps that I can directly follow, so I'm assuming you are talking about software you wrote that is making the OIIO calls.
I'm not 100% sure that this isn't a flaw in OIIO itself, but I suspect that the problem is on your end.
oiiotool -pattern checker 62x62 3 -d half -tile 32 32 -o out.exr

reveals that OIIO is certainly capable of producing a correct tiled exr file even when the image size is not a whole multiple of the tile size.
I tested on master, and 1.8, and the most recent version of 1.7 (though not quite as old as 1.7.10, just because software upgrades and whatnot make it a bit of a pain for me to currently compile 1.7.10 on my current machine).
The first thing I'd encourage you to try is to see if you can build your software against a more current releases (1.8.10 is the most recent stable production release) or even against master, just to see if it's a bug that has already been fixed.
If that doesn't help, they I would request that you try to create and post here the shortest possible C++ program that  reproduces the issue. I bet I can spot the problem with it (probably you are not understanding how the stride parameters to the write_tile call are supposed to work in cases of partial tiles -- it's tricky and I get that wrong sometimes, too). But if not, and it really is an OIIO bug (a distinct possibility), it will give me a very focused case to examine to track it down.

Hi lgritz,
Thanks for your answer.
I'm working on the integration of OpenImageIO into Appleseed, which is a software renderer.
Unfortunately, too heavy for debugging purposes ...
So, I made a small program (with pre-built binaries for a complete OpenImageIO 1.7.10 usage for VS2015).
Here is the link of the git repo: https://gitlab.com/Blackhart/oiio_sandbox
Just compile it by calling compile.sh in your command shell :).
It enable you to produce an openexr image of size 2x2 with tile size set to 32x32. The produced image show the two first pixels set with red color (desired color) and the last two pixels are skipped by OpenImageIO ...
As you tell me, maybe I misunderstand the stride parameters ?!
I'll test with a most recent version ...
Thanks a lot.

The problem is this statement:
        if (!m_writer->write_tile(
                static_cast<int>(tile_offset_x),
                static_cast<int>(tile_offset_y),
                0,
                OIIO::TypeDesc::UINT8,
                tile.buffer))

The signature of write_tile is:
bool write_tile (int x, int y, int z, TypeDesc format,
                         const void *data, stride_t xstride=AutoStride,
                         stride_t ystride=AutoStride,
                         stride_t zstride=AutoStride);

The optional stride parameters default to a special value AutoStride which means for write_tile() to assume it is pointing to a data buffer whose layout is the size and shape of a contiguous full tile. In fact, to quote the explanatory comment in imageio.h:
Strides set to AutoStride imply 'contiguous' data in the shape of a full tile, i.e.,
     xstride == spec.nchannels*format.size()
     ystride == xstride*spec.tile_width
     zstride == ystride*spec.tile_height

So, in this case your data buffer is NOT the same layout as a full tile, so you can't rely on the defaults and need to pass the strides explicitly.
I believe the correct code would be:
        stride_t xstride = m_spec.nchannels * sizeof(uint8_t); // because your buffer is UINT8
        stride_t ystride = xstride * std::min (m_spec.width+m_spec.x-tile_offset_x, m_spec.tile_width);
        if (!m_writer->write_tile(
                static_cast<int>(tile_offset_x),
                static_cast<int>(tile_offset_y),
                0,
                OIIO::TypeDesc::UINT8,
                tile.buffer,
                xstride,
                ystride))

Does that help?

Hi lgritz,
It does! I misunderstood the stride parameters.
Sorry for that waste of time and thanks for your explanation!
We can close this issue.


Make guide page titles consistent and easier to find

Goal
As a user, I want to have consistency in page titles under the "guides" section so that pages are easier to find.
Details
Make the page titles under the guides section more consistent.
The main keyword for the page should be in the title as early as possible to make it easier for users to see at a glance, what pages are about. The page titles should be short but also be descriptive enough for users to understand what the content of pages is without opening them.
The guides section index page should also have a table of contents with a small description for every guide page.
The table of contents should be roughly grouped by feature set, e.g. all metrics guides in one group, all observability guides in one group etc.

Hi @mowies, I'd like to take this up!


applying TNDD #24 in TNND

requested: 2024-08-16
completed: 2024-08-21
OK, I've investigated applying TNDD #24 in TNND. For the test in TNND, we can check all codes except \ros*. However there are allowed exceptions for when we are trying to continue an underline while switching between \tre and \teu (either way). See TNND Neh 3:26a. In that case it would be either  \tre*\teu ... or   \teu*\tre .... So, if you can accommodate this exception in your test, I want the message to read: "There should not be a space before this ending character style marker." If you cannot accommodate this exception, I want the message to read: "There should not be a space before this ending character style marker, unless you are connecting underlining codes, such as ' \teu*\tre ...'."

#30 for the general check of all character markup but it excludes: \ros \teu \tre
rules #30.2 and #30.3. catch the \teu and \tre that are not in series


Cell selection is not working when data is loaded afterwards

The issue can be replicated with the attached revised-example.html (uploaded as revised-example.txt)

@nclsclsn Thanks for this!
We have added it to our backlog


Requirement for Scheduler

Right now the API requires defining a Scheduler. Why is that required?
I see two possible defaults:

It just runs on the thread ListenableFuture calls back on
It can be scheduled on Scheduler.computation() by default

I think (1) is the correct default. Someone can use observeOn if they want to move the scheduling. Thus, I don't fully understand why Scheduler even needs to be passed in.

cc @abersnaze

The API for a ListenableFuture requires you to specify the Executor to schedule the completion callback on.  By not adding one in version 1 left it open for adding a overload in the future.  Is there is a reasonable default Scheduler/Executor?

Well that's an awkward callback then. It means it always gets scheduled. Annoying.
I would default to computation like everything else does since this is pure compute, no IO for emitting the result.

Hi @benjchristensen, @abersnaze
Just as a follow up on this, would it be OK to have the following:
public static <T> Observable<T> from(final ListenableFuture<T> future) {
    from(future, Schedulers.computation());
}

and then use
ListenableFutureObservable.from(myFuture)
    .observeOn(Schedulers.io());

I'm asking for a use in the Cassandra driver context which returns a guava ListenableFuture.
I'm still struggling to understand what the real impact of using a scheduler or an other and how the processing switches from one thread to another.
In my use case I guess I could just use from(cassandraFuture, Schedulers.io()) but i'd like to understand a bit more what i'm doing with this.
Thanks


XVim crashes on launch with 8.0 final.

I followed the install instructions using a clean clone of xvim and even installing with sudo to work around the unsign issue, but it just crashes on launch for me.  Is there another step required?
thanks.
Exception Type:        EXC_BAD_ACCESS (Code Signature Invalid)
Exception Codes:       0x0000000000000032, 0x0000000106797010
Exception Note:        EXC_CORPSE_NOTIFY

kernel messages:
-0 sec           	CODE SIGNING: cs_invalid_page(0x106797000): p=27830[Xcode] final status 0x3002200, denying page sending SIGKILL
-0 sec           	CODE SIGNING: process 27830[Xcode]: rejecting invalid page at address 0x106797000 from offset 0x0 in file "/Applications/Xcode.app/Contents/MacOS/Xcode" (cs_mtime:1473900738.0 != mtime:1473946122.0) (signed:1 validated:1 tainted:1 wpmapped:0 slid:0)

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/37905492-xvim-crashes-on-launch-with-8-0-final?utm_campaign=plugin&utm_content=tracker%2F252770&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F252770&utm_medium=issues&utm_source=github).

Rebooting and retrying the install seems to have worked, but I'm not sure what combination did the trick.

Same thing happened for me.
In my case rebooting OSX after make command fixed the crash.

+1 My Xcode crashed at launch time.

Rebooting works for me.

I just only reinstall my xcode 8. Does anyone could tell me when xvim could support xcode8?

Rebooting and reinstalling didn't work for me :( still crashing on launching Xcode 8.

@moophis You should totally clean your preinstall xcode8 app first. I guess your xcode8 has not been remove cleanly. Just remove your xcode8 from Application folder to trash.


Bloated git histories?

So I am thinkin about adding a section in the Git chapter about  how to wiggle out of a situation where you are stuck with a bloated git history because you unthinkingly (as many of us would in our git larval stage) commited a massive file to history. How do you get rid of that burden?
There is an old thread about this on stackoverflow:   https://stackoverflow.com/questions/2100907/how-to-remove-delete-a-large-file-from-commit-history-in-the-git-repository
Thoughts?
Originally posted by @mhasoba in https://github.com/mhasoba/TheMulQuaBio/discussions/98#discussioncomment-3894703

It's useful to know, but I'd argue that a better thing to add is pre-commit. That introduces a huge array of code QA and validation tools - and its industry standard practice for research software engineering. And one of of the common hooks is:
https://github.com/pre-commit/pre-commit-hooks?tab=readme-ov-file#check-added-large-files
That should stop you getting into that mess in the first place. That way we help our larvae be better than us.

@hel0122 , do you mind adding a note box about this (including the link) to the Git Chapter nb?

@hel0122 , I think we can close this now?


Running howdy on Arch Linux

Hey boltgolt,
Earlier, I was curious about getting howdy to run on Fedora and tried to get it running. After it initially didn't work, I just gave up on it. Now that I am on Arch Linux, I retried installing it and finally got it to work with howdy 1.0.0. I don't know how to convert the current deb packages to files that pacman uses, but if you do have an idea, I can give you the current (working) installer.py file. There is no common-auth file in Arch Linux, so you would need to enter the pam.d information into each pam config file.

Thanks for taking the time to look at this! The latest version should probably still be usable if you copy the contents of the src folder. I'm looking into packaging for arch and fedora when i have the time so please do share your installation script.
Could i @ mention you if i have a pacman version to test?

After copying all of the files from the current src folder into /lib/security/howdy and manually symlinking the cli.py file into /usr/bin/howdy, the current howdy works. I had to change the /dev/video* to the correct one with sudo howdy config but it is perfect.

If you would like me to, I can try packaging it for you

That would be great. Does arch use a separate folder (like /debian on apt systems) to store the packaging files? I'm reading the packaging guide and i don't fancy putting the fedora and arch files directly in the root.
The /debian/postinst file contains the current installation script, might be worth looking at.
If you do get a working build, a pull request with the source would be amazing

Well since howdy uses packages from the AUR, your only choice is using the AUR. This will be much easier since you can basically use any format for your source. How the AUR works is there is a file called the PKGBUILD that automates the build and install process. The package is installed in a fakeroot environment and then put into a tar.xz file (Arch's packaging style) and automatically installed. Ignoring a few minor modifications you might need to make when designing the PKGBUILD, it is basically developing a set of instructions to install from source.

Sounds easier than debian, must the PKGBUILD be placed in the root or can the package be build from a subfolder, like /arch?

The file is actually stored in git server on the AUR while your files just need to stay in GitHub. Here is an example of an AUR package.

I'm trying to make the PKGBUILD, but have come across a roadblock. Do you think you could look through the setup.py file in the dlib_clone folder that you create and see if there is anything I can change with sed to allow using a DESTDIR while installing. The Arch Linux packaging needs it.

I don't think packaging all of Dlib with Howdy is a very good idea, as the install size is massive. The only reason the installation script does this manual build of Dlib is that the package in the debian repositories tends to fail on installation.
Maybe you can try if arch has a working Dlib build in pacman?
I was also thinking of how we would do installation steps such as configuring the right camera. Debian has these automatic installation scripts but i don't think arch has the same, am i correct? We might need to move that part of the installation to a command like sudo howdy configure.

If you look at most packages, Arch has more if a "install and then configure" style. For example, when installing the grub package, you are expected to do the installation to the efi partition afterwards (see here). I think the best route would be to leave the postinstallation configuration to the user and make a simple wiki page on the Archwiki explaining how to install and configure the package.
With dlib, I can check whether the installation of dlib on Arch included the things that howdy needs, but I was only going to have the python part of dlib be included with the package. The issue is that a proper Arch package has the final installation of a package (when you would run sudo make install) have a prefix of /usr (which doesn't apply for this dlib python API) and a destdir of $pkgdir/ (see here)

Just so you know, I have finished creating the PKGBUILD and tested it, so I know it's working. I checked to see if the dlib Python API was in the Arch repositories and it didn't seem to be there, so I built it (the proper way according to the ArchWiki). If you want to look (and if you could, possibly check if it works in a live USB of Arch?), I have attached the file. If you're alright with it, could you add yourself as a maintainer and send me the file so I can upload it? If you're alarmed about my name being in the maintainer comment also, the maintainer is for both the package and the PKGBUILD.
PKGBUILD.tar.gz

hello, I test the PKGBUILD,  and I get this errors:

$makepkg
==> Making package: howdy 2.2.2-1 (Sat 23 Jun 2018 03:46:47 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found v2.2.2.tar.gz
  -> Found pam-python-1.0.6.tar.gz
  -> Found pam-python-1.0.6-fedora.patch
  -> Found pam-python-1.0.6-gcc8.patch
==> Validating source files with sha256sums...
    v2.2.2.tar.gz ... Passed
    pam-python-1.0.6.tar.gz ... Passed
    pam-python-1.0.6-fedora.patch ... Passed
    pam-python-1.0.6-gcc8.patch ... Passed
==> Extracting sources...
  -> Extracting v2.2.2.tar.gz with bsdtar
  -> Extracting pam-python-1.0.6.tar.gz with bsdtar
==> Starting prepare()...
Cloning into 'dlib_clone'...
remote: Counting objects: 2277, done.
remote: Compressing objects: 100% (2222/2222), done.
remote: Total 2277 (delta 372), reused 777 (delta 43), pack-reused 0
Receiving objects: 100% (2277/2277), 10.56 MiB | 439.00 KiB/s, done.
Resolving deltas: 100% (372/372), done.
patching file src/pam_python.c
Hunk #1 succeeded at 39 (offset 7 lines).
Hunk #2 succeeded at 1526 (offset 29 lines).
patching file src/pam_python.c
Hunk #1 succeeded at 2227 (offset 53 lines).
patching file src/Makefile
Hunk #1 succeeded at 1 with fuzz 1.
==> Starting build()...
make --directory doc
make --directory src
make[1]: Entering directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/doc'
sphinx-build2 -b html -E . html
make[1]: Entering directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/src'
gcc -O0 -Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-error=cast-function-type -g -o ctest ctest.c -lpam
sed "s,\\\$PWD,$(pwd),g" "test-pam_python.pam.in" >"test-pam_python.pam.tmp"
In file included from /usr/include/link.h:23,
                 from ctest.c:14:
/usr/include/features.h:428:12: fatal error: sys/cdefs.h: No such file or directory
 #  include
            ^~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:29: ctest] Error 1
make[1]: *** Waiting for unfinished jobs....
mv test-pam_python.pam.tmp test-pam_python.pam
CFLAGS="-Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-error=cast-function-type -I/usr/local/lib/ " ./setup.py build
/usr/lib/python2.7/pkgutil.py:183: ImportWarning: Not importing directory '/usr/lib/python2.7/site-packages/sphinxcontrib': missing __init__.py
  file, filename, etc = imp.find_module(subname, path)
/usr/lib/python2.7/pkgutil.py:183: ImportWarning: Not importing directory '/usr/lib/python2.7/site-packages/jaraco': missing __init__.py
  file, filename, etc = imp.find_module(subname, path)
running build
running build_ext
building 'pam_python' extension
creating build
creating build/temp.linux-x86_64-2.7
gcc -pthread -DNDEBUG -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-error=cast-function-type -I/usr/local/lib/ -D_FORTIFY_SOURCE=2 -fPIC -DLIBPYTHON_SO="libpython2.7.so.1.0" -I/usr/include/python2.7 -c pam_python.c -o build/temp.linux-x86_64-2.7/pam_python.o
In file included from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/stdlib.h:25,
                 from /usr/include/security/_pam_macros.h:12,
                 from pam_python.c:33:
/usr/include/features.h:428:12: fatal error: sys/cdefs.h: No such file or directory
 #  include
            ^~~~~~~~~~~~~
compilation terminated.
error: command 'gcc' failed with exit status 1
make[1]: *** [Makefile:11: pam_python.so] Error 1
make[1]: Leaving directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/src'
make: *** [Makefile:6: lib] Error 2
make: *** Waiting for unfinished jobs....
Running Sphinx v1.7.5
making output directory...
loading intersphinx inventory from http://docs.python.org/2.7/objects.inv...
intersphinx inventory has moved: http://docs.python.org/2.7/objects.inv -> https://docs.python.org/2.7/objects.inv
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 1 source files that are out of date
updating environment: 1 added, 0 changed, 0 removed
reading sources... [100%] pam_python
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] pam_python
generating indices... genindex
writing additional pages... search
copying static files... done
copying extra files... done
dumping search index in English (code: en) ... done
dumping object inventory... done
build succeeded.
The HTML pages are in html.
rm -f html/index.html && ln -s pam_python.html html/index.html
make[1]: Leaving directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/doc'
==> ERROR: A failure occurred in build().
Aborting...

PKGBUILD looks good as far as i can see, but i don't have the time right now to get a arch installation going. If it works for you locally and @ataicl's issue is resolved i'd say you could release it.
As for the maintainer field: It's only fitting to put you in there as a maintainer as well, you've done some stellar work so far.  You can use boltgolt<EMAIL_ADDRESS>for my field so it lines up with the debian release.

thank you! Because my notebook is ryzen apu, so I use linux-mainline

@ataicl
Could you try installing lib32-glibc and retry? It might need a 32-bit library.

I installed lib32-glibc , and I got a similar error：
==========
$makepkg
==> Making package: howdy 2.2.2-1 (Sun 24 Jun 2018 03:25:40 PM CST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found v2.2.2.tar.gz
-> Found pam-python-1.0.6.tar.gz
-> Found pam-python-1.0.6-fedora.patch
-> Found pam-python-1.0.6-gcc8.patch
==> Validating source files with sha256sums...
v2.2.2.tar.gz ... Passed
pam-python-1.0.6.tar.gz ... Passed
pam-python-1.0.6-fedora.patch ... Passed
pam-python-1.0.6-gcc8.patch ... Passed
==> Extracting sources...
-> Extracting v2.2.2.tar.gz with bsdtar
-> Extracting pam-python-1.0.6.tar.gz with bsdtar
==> Starting prepare()...
Cloning into 'dlib_clone'...
remote: Counting objects: 2277, done.
remote: Compressing objects: 100% (2222/2222), done.
remote: Total 2277 (delta 372), reused 799 (delta 43), pack-reused 0
Receiving objects: 100% (2277/2277), 10.56 MiB | 2.52 MiB/s, done.
Resolving deltas: 100% (372/372), done.
patching file src/pam_python.c
Hunk #1 succeeded at 39 (offset 7 lines).
Hunk #2 succeeded at 1526 (offset 29 lines).
patching file src/pam_python.c
Hunk #1 succeeded at 2227 (offset 53 lines).
patching file src/Makefile
Hunk #1 succeeded at 1 with fuzz 1.
==> Starting build()...
make --directory doc
make --directory src
make[1]: Entering directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/doc'
sphinx-build2 -b html -E . html
make[1]: Entering directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/src'
gcc -O0 -Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-error=cast-function-type -g -o ctest ctest.c -lpam
sed "s,\$PWD,$(pwd),g" "test-pam_python.pam.in" >"test-pam_python.pam.tmp"
In file included from /usr/include/link.h:23,
from ctest.c:14:
/usr/include/features.h:428:12: fatal error: sys/cdefs.h: No such file or directory
include <sys/cdefs.h>
        ^~~~~~~~~~~~~

compilation terminated.
mv test-pam_python.pam.tmp test-pam_python.pam
make[1]: *** [Makefile:29: ctest] Error 1
make[1]: *** Waiting for unfinished jobs....
CFLAGS="-Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-error=cast-function-type -I/usr/local/lib/ " ./setup.py build
/usr/lib/python2.7/pkgutil.py:183: ImportWarning: Not importing directory '/usr/lib/python2.7/site-packages/sphinxcontrib': missing init.py
file, filename, etc = imp.find_module(subname, path)
/usr/lib/python2.7/pkgutil.py:183: ImportWarning: Not importing directory '/usr/lib/python2.7/site-packages/jaraco': missing init.py
file, filename, etc = imp.find_module(subname, path)
running build
running build_ext
building 'pam_python' extension
creating build
creating build/temp.linux-x86_64-2.7
gcc -pthread -DNDEBUG -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wsign-compare -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-error=cast-function-type -I/usr/local/lib/ -D_FORTIFY_SOURCE=2 -fPIC -DLIBPYTHON_SO="libpython2.7.so.1.0" -I/usr/include/python2.7 -c pam_python.c -o build/temp.linux-x86_64-2.7/pam_python.o
In file included from /usr/include/bits/libc-header-start.h:33,
from /usr/include/stdlib.h:25,
from /usr/include/security/_pam_macros.h:12,
from pam_python.c:33:
/usr/include/features.h:428:12: fatal error: sys/cdefs.h: No such file or directory
include <sys/cdefs.h>
        ^~~~~~~~~~~~~

compilation terminated.
error: command 'gcc' failed with exit status 1
make[1]: *** [Makefile:11: pam_python.so] Error 1
make[1]: Leaving directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/src'
make: *** [Makefile:6: lib] Error 2
make: *** Waiting for unfinished jobs....
Running Sphinx v1.7.5
making output directory...
loading intersphinx inventory from http://docs.python.org/2.7/objects.inv...
intersphinx inventory has moved: http://docs.python.org/2.7/objects.inv -> https://docs.python.org/2.7/objects.inv
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 1 source files that are out of date
updating environment: 1 added, 0 changed, 0 removed
reading sources... [100%] pam_python
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] pam_python
generating indices... genindex
writing additional pages... search
copying static files... done
copying extra files... done
dumping search index in English (code: en) ... done
dumping object inventory... done
build succeeded.
The HTML pages are in html.
rm -f html/index.html && ln -s pam_python.html html/index.html
make[1]: Leaving directory '/tmp/makepkg/howdy/src/pam-python-1.0.6/doc'
==> ERROR: A failure occurred in build().
Aborting...

@ataicl How about this?
pkgfile /usr/include/sys/cdefs.h core/glibc

@KelleyMcChes   I installed glibc and cmake, and i Successful compilation。 thank you !
But, when i pacman -U , I got error:
======
#pacman -U howdy-2.2.2-1-x86_64.pkg.tar.xz
loading packages...
resolving dependencies...
looking for conflicting packages...
Packages (1) howdy-2.2.2-1
Total Installed Size:  202.61 MiB
:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
error: failed to commit transaction (conflicting files)
howdy: /lib exists in filesystem (owned by filesystem)
Errors occurred, no packages were upgraded.

@ataicl I have attached a new PKGBUILD. Please try running this one in a clean directory.
PKGBUILD.tar.gz

@boltgolt I have created a wiki page here for Howdy and have uploaded it to the AUR. If you would like, you can create an account on the AUR and I can add you as a co-maintainer.

Nice work! I've created an AUR account with the same password as the maintainer field in the PKGBUILD.
If you want to update the readme with a link to the wiki (and maybe dropping the "Ubuntu" in the title) feel free to open a pull request. Otherwise i will update it with the 2.3.0 release in a couple of weeks.


Navigate back to login (browser back button) and then login => No matching state found in storage

Same problem as the original library https://github.com/IdentityModel/oidc-client-js/issues/940.

The scenario is:
user lands on app page -> page checks user, if not logged in -> signinRedirect to Id server -> Id server redirects back to auth-callback -> auth-callback navigates to some page in app.
Now if user pressed back button which will take it back to the login (where the state (state which is sent to id server) wouldn't be written to local storage which is why siginRedirectCallback throws this error.

https://github.com/IdentityModel/oidc-client-js/issues/940#issuecomment-532657529
Should oidc-client-ts leave the state available for some time?

I'm not sure how this is related to the current issue, but I'll try to explain in more details in case I'm missing something.
The problem here is that the stored state is removed immediately after the redirection from login. So if the user presses "back", then logs again, there is no more state available, even tho the redirect URL contains a state parameter. In other words, oidc-client-ts tries to load the stored state, but none is available because it removed it the first time the user logged in.
We do use replaceState once we get the "correct" SPA path from the stored state, but we reach never this point when the user presses back and logs again.

I am unable to reproduce your use-case here with my application. I am using react-oidc-context. From which page does the user click back? When he clicks back on which page does he land?
not interrupt-able flow:
_signinEnd -> processSigninResponse(url) -> readSigninResponseState(url, true)

readSigninResponseState removes the state if all good
processSigninResponse returns a user profile, if all is good, which is stored inside _signinEnd

User loads the SPA and is sent to Cognito login page (via signinRedirect):
https://somesubdomain.amazoncognito.com/login?client_id=6rrlpafiu2flt0p0333hmo2g35&redirect_uri=http%3A%2F%2Flocalhost%3A4000%2F&response_type=code&scope=openid&state=24a76892f262438c8e8c62ab26e76507&code_challenge=_rbWr1klF9KeVFXgjngMZsuJb9DGu-9Vz_YtJS8lT6E&code_challenge_method=S256&response_mode=query

After pressing "Sign in", user is sent back to the SPA where oidc-client-ts handles the redirection with signinRedirectCallback.
http://localhost:4000/?code=f6895292-c94f-4b81-b78d-720989f85679&state=24a76892f262438c8e8c62ab26e76507
At this point the state in localStorage is removed.
The user presses "back" and returns to the login page:
https://somesubdomain.amazoncognito.com/login?client_id=6rrlpafiu2flt0p0333hmo2g35&redirect_uri=http%3A%2F%2Flocalhost%3A4000%2F&response_type=code&scope=openid&state=24a76892f262438c8e8c62ab26e76507&code_challenge=_rbWr1klF9KeVFXgjngMZsuJb9DGu-9Vz_YtJS8lT6E&code_challenge_method=S256&response_mode=query

User signs in as same user (or different user, it doesn't matter) and is sent back to the SPA.
http://localhost:4000/?code=859a6911-71d8-41b4-a7b5-da9d775bdc1d&state=24a76892f262438c8e8c62ab26e76507
signinRedirectCallback is called again, but this time the state in the URL doesn't exist in the localStorage, as it was deleted after the first login.
This is the exception:

Thanks for the detailed explanation.
When i reproduce it and press "back" in that case i land on the authorization page without any auth query param: URL=https://xxx.com/as/GlLzt/resume/as/authorization.ping?zone=snx.
The error i get is:

In this scenario even if the state would be still present, it would not help.

I'm probably missing something, but I don't understand why you're showing me your situation. Is it to argue that Cognito is somehow breaking OIDC by allowing the user to go "back" to the login page?

When i reproduce it and press "back" in that case i land on the authorization page without any auth query param

That's quite odd; it would mean your browser history was tempered with. Perhaps you have the login page further back in your history. Or, alternatively, pressing "back" really brought you back to the login page, but the server responded with a redirection to the URL with the state stripped away from the params.

If i press "forward" on that "Page Expired" page, i am still signed-in an can continue to work...

Yes, assuming you've used history.replaceState, forward button should bring you back with the redirection info removed.
But that's only tangentially related to the issue at hand: what should oidc-client-ts do with the stored state if the user might be redirected a second time from the login page?

but the server responded with a redirection to the URL with the state stripped away from the params.

I assume that happen in may case.
The current  oidc-client-ts implementation ex-changes the localStorage state against a profile, which makes it simple. I am afraid if we break that it will make things more complicated. Is only  Cognito affected?
Will using history.replaceState + forward button bring you too back?
@kherock Can you reproduce with your authentication service?

I'm not sure if there's much that can be done here. In my mind, navigating into the middle of an authentication flow is invalid and should generate an error. The spec doesn't seem to have strict prescription on how to treat this scenario, but it does suggesting associating an authentication session cookie with the nonce parameter provided by the client in order to prevent replay attacks. In case the auth server doesn't implement this restriction (as in @pamapa's screenshots), the UX I'd expect from the application side would be an error explaining that the sign in request is invalid with options to restart the sign in flow. We could make this simpler by providing a named error so that applications don't need to parse error message strings.


Update configurations.xml to fix build errors for MPLABX 5.40

Update configurations.xml to fix build errors for MPLABX 5.40
Description

In the latest release of amazon-freertos (2020007.0):
MPLABX 5.40 DOES NOT work with XC compiler version 2.41, 2.40, and 2.30 on both my Windows and Mac environment.
However, MPLABX 5.35 works with XC compiler version 2.41, 2.40, and 2.30 on both my Windows and Mac environment.
I believe CI is using MPLABX 5.35, and both XC compiler versions 2.40 and 2.30.
The error in MPLABX 5.40 of amazon-freertos 2020007.0 stems from passing a string literal as a preprocessor macro in configurations.xml:
<property key="preprocessor-macros" value="MBEDTLS_CONFIG_FILE=\\\"aws_mbedtls_config.h\\\";

This ends up giving the following error in MPLABX 5.40:
In file included from ../../../../../libraries/c_sdk/standard/serializer/src/json/iot_serializer_json_encoder.c:40:0:
../../../../../libraries/3rdparty/mbedtls/include/mbedtls/base64.h:30:10: error: #include expects "FILENAME" or <FILENAME>
#include MBEDTLS_CONFIG_FILE

The fix is to update configurations.xml to use a single backslash instead:
<property key="preprocessor-macros" value="MBEDTLS_CONFIG_FILE=\"aws_mbedtls_config.h\";

Keep in mind that I do not experience the error above in version 202002.00 of amazon-freertos as there is no preprocessor macro for MBEDTLS_CONFIG_FILE.
Checklist:

[ ] I have tested my changes. No regression in existing tests.
[ ] My code is Linted.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/bot run checks

/bot run checks

/bot run checks

/bot run checks

/bot run checks


SeatAndEat : Make The Navbar Responsive

Make the navbar responsive
Create a hamburger menu for the navbar dropdown
Include only the nav list items for the dropdown ( Don't include the SeatAndEat Logo )
Add a small animation to the hamburger menu icon when clicked

I want to ba a part of this issue..

Assigned to you @JoydevDafadar

Can I work on it simultaneously?

Congrats @JoydevDafadar your PR is merged.


:bug: Fixes a small bug in the remark-lint syntax

This pull request fixes a small bug which prevented the remark-lint action to work with the review dog github-pr-review action. The file path is now first ignored and then pushed onto the stack.

I'm unsure why the travis action fails. I think it has to do with a upstream bug as the error it gives:
reviewdog/reviewdog info checking GitHub for latest tag
reviewdog/reviewdog crit unable to find '' - use 'latest' or see https://github.com/reviewdog/reviewdog/releases for details

Has no relationship to the files I changed.

Please remove the errorformat file from your PR.


Update clap to 4.5

What does this PR do?
This commit updates the clap crate in use by lading to the latest
release.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1159  👈 (View in Graphite)
#1158
#1157
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Merge activity

Dec 17, 2:29 PM EST: A user merged this pull request with Graphite.


chore: update phase-vocoder.min.js

Checklist

[ ] Read CONTRIBUTING.md, and accept the CLA by including the provided snippet. We will not accept PR without this.
[ ] Run pre-commit hook.
[ ] If you changed Rust code, run cargo check, cargo clippy, cargo test.

PR Description
overriden -> overridden

Thanks for your PR. however this file was a left over from a previous version and we don't actually need it. I've removed it!


How to setup the default 443 port of the deployment openelb-manager?

Is your feature request related to a problem? Please describe.

Describe the solution you'd like

Describe alternatives you've considered

Additional context

Do you mean to modify the default port? If it is, just modify the exposed port of openelb-manager deployment. Just like changing the default 443 to 3443:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: openelb-manager
  namespace: openelb-system
  ...
spec:
containers:
      - args:
        - --webhook-port=3443
        ...
        ports:
        - containerPort: 3443


HWKAGENT-158 Collection Interval Changes

add new subsystem configuration for minimum collection interval

default to 30s (changed from hardcode of 1s)

let collection interval 0 indicate collection is disabled
consolidate xml and Protocol service on 600s auto-discovery

@jmazzitelli You can take a look as is to see if it looks kosher.  I didn't add any tests yet, I'll look at that on Monday.

LGTM

@jmazzitelli Added an itest (and a little itest infra) but it's not working yet.  It's going to need the full agent restart stuff to work, triggered when updating a metric/avail attribute.  So, waiting on that PR and then I'll rebase and retest.

@jmazzitelli I rebased on master and I've updated AgentInstallerITest to test for a disabled metric (and implicitly a collection interval update restarting the agent).  I think is ready for merge.

Hold On, checking one thing...


Detect external broken links on build

🚀 Feature
Partly inspired by #3048, it would be nice to detect external links in the Markdown docs and signal to the user that they are broken.
Ref projects:

https://github.com/tcort/markdown-link-check
https://github.com/tcort/link-check

Have you read the Contributing Guidelines on issues?
Yes
Motivation
If you want good docs, you probably don't want broken links.
Pitch
We should signal users if any external links are invalid on build.
A by-pass flag would be helpful because there might be cases broken external links are ok (e.g. pages that anticipate a link to become valid later on).
This additional check would be really helpful. I'm suggesting this feature because I am building a docs site on top of Docusaurus and I found a need for this personally. I was actually going to use markdown-link-checker with CI. But if this can be built-in, then it saves a LOT of work.

It will increase build time and I don't think it makes less sense since external link may become dead after the build.

Hi,
That's an interesting feature but I don't think we should make it part of Docusaurus.
This would make the build unstable, slower, dependant of the availability and speed of external link, + as. @anshulrgoyal said they can go offline after the build anyway so you actually prevent nothing.
You definitively can add this easily on your own with the package you linked if you really need this, and we wouldn't really do a better job including this in Docusaurus.

I think that's a fair answer, thanks for taking a look!

NTS: If I ever figure out how to make markdown-link-check work with Docusaurus, I should offer to make additional documentation that shows how to integrate it with Docusaurus' conventions (i.e. ignoring links to internal docs).

@adrianmcli it is very easy to create a new remark plugin for it. I have created one for image and one for assets u can take a look.

Here is my pr for assets check https://github.com/facebook/docusaurus/pull/3096


How to redeploy vmss BUT KEEP THE DATABASE

Hello, I work at a LaaS partner company.
My edx-platform's services got messed up after reboot, and services are always restarting.
So I wonder how to redeploy vmss only?  I tried to rerun oxa-tool, and got an error with key-vault, so I guess it doesn't support that yet.
By the way, I deleted jumpbox months ago. So I recreated one, add extension "installoxa", but the script failed, gets a 404 to download scripts.
I also tried to redeploy a whole set, and move jumpbox to the old one, run upgrade, also failed at copy scripts and got an email says "Unable to copy installer script to '<IP_ADDRESS>' from 'newlabjb' !". Then I tried upgrade without extension parameter, also failed.
Would you please share a guide on custom extension? Or is it a procedure to safely transfer database to another deployment in another resource group? Or is there a guide to run configuration manually? Which part of the scripts shall I look into?
Thanks in advance.

Is it safe to just "sudo bash onebox.sh -b stable" on the vmss instance?

nope. please don't run that command. onebox will attempt to install mysql and mongo databases on the local machine which isn't what you want on your web frontend
@eltoncarr , are you available to help with this?

@seaswander, is your cluster live? Or is it still being setup?

First, given this is a live cluster, you must take all necessary precautions about the availability of your application and your user's experience. The extension is installed automatically during bootstrap. You can review the stamp-v2 ARM template for more details. However, I wouldn't suggest manually doing this since there are lot of parameters you'd need to handle for this to work. You may be better served via the laas partner channel.

Thanks, where is this "laas partner channel" ? Does it provide technical support ?

Yes. https://aka.ms/laas. Please follow up there. I will be closing this issue.


Match the column names in the code to the column names in the dataset

Deep Learning Simplified Repository (Proposing new issue)
:red_circle: Project Title : AI Based Book Recommendation System
:red_circle: Aim : To match the column names in the code to the column names in the dataset
:red_circle: Dataset :final_data.csv
:red_circle: Approach : To change the column names so that the error can be corrected for expected output

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name : Shristi Rawat
GitHub Profile Link : https://github.com/shristirwt
Email ID<EMAIL_ADDRESS>Participant ID (if applicable):
Approach for this Project : To modify the column names in the code to match with column names in the dataset
What is your participant role? (Mention the Open Source program) : GSSoC 2024 Extd

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

Hi @shristirwt thanks for showing interest here. This type of project is already present here in this repository, hence closing this issue as duplicate entry.
You can raise another issue with different problem statement.


Update README.md to be render correctly.

Headlines and links don't render correctly as Markdown due to missing spaces or too many spaces.
@jtattermusch

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Thanks for your pull request. The automated tests will run as soon as one of the admins verifies this change is ok for us to run on our infrastructure.

Interesting, it looks like the way github rendering algorithm might have changed slightly, as this formatting was introduced in PR #160 two years ago (and I am pretty sure the README.md hasn't been broken for all the time).

test this please


Adding convention to load Anonymous components from bundles

Q
A

Bug fix?
no

New feature?
yes

Issues
Fix https://github.com/symfony/ux/issues/2003 (partially)

License
MIT

This adds a fallback convention to check if a requested anonymous component, <twig:Acme:Alert>, exists on the bundle side using the current Twig loading convention.
The resolution process would work like this:

Currently, the finder will check if components/Acme/Alert.html.twig exists (resolving to <app>/templates/components/Acme/Alert.html.twig)
If not, the finder will check if @Acme/components/Alert.html.twig exists (resolving to <bundle>/templates/components/Alert.html.twig) (this is the new code)

Here, the components directory is hardcoded for bundles, as anonymous_template_directory is exclusively a userland configuration.
acme-bundle/
└─ templates/
    └─ components/
        └─ Alert.html.twig

From here, you can organize your components into subdirectories if desired. For example, a component like <twig:Acme:Table:Header> will be located in <acme-bundle>/templates/components/Table/Header.html.twig.
TODO:

[x] Add some tests
[ ] Add doc

Thanks @yceruto!
Am I correct in that there are now two ways to override bundle component templates:

templates/components/Acme/Button.html.twig (not possible to extend from the bundle's version)
templates/bundles/AcmeBundle/components/Button.html.twig (possible to extend bundle version with @! as normal)

This does make me a little hesitant but what does everyone else think? I think, when we document, we only show (2) as the proper way to override a bundle's template as it's familiar.

You are correct Kevin! This adds another way to override the bundle components, with the possibility to extend from the original one with @Acme/ or @!Acme/ directly.
I agree with you that we should not document it and keep the standard one for consistency.

We could change the priority to avoid that, but I’m afraid it might break some apps already using a directory that matches a bundle namespace.

First thing first: thank you @yceruto 🙇
--
Concerning the "extends", we need to tests a lot of differents scenario, because we use the "logical name" during embedding i think and not the full path.
So i'm not entirely sure "bundles/AcmeBundle/components/Button.html.twig" and<EMAIL_ADDRESS>are considered the same template.
Also, i'm not sure parent() will refer to the bundle original template ... because of the fake one we inject.
--
Currently, symfony use "Collector" or "Form" as directory names... should we use "Component" instead of "components" in the bundle structure ?
Singular / plural ?
Once we will open this it will be very very hard to change :)
--
Security point
I also think we need some BC break from now, because we allow any string as bundle name, and this can pose security risks (at least weird DX)..
Not sure which but i remember at least one of these is problematic
<twig:Foo:: />

<twig:..Foo:: />

<twig:../Foo:: />

I suggest we allow only something that looks like a class name (the check may be done earlier in the renderer)
If that's ok for you, i'll open another PR to discuss this and not pollute this one :)
--
After everything, thank you @yceruto ;)

Concerning the "extends", we need to tests a lot of differents scenario, because we use the "logical name" during embedding i think and not the full path.
So i'm not entirely sure "bundles/AcmeBundle/components/Button.html.twig" and<EMAIL_ADDRESS>are considered the same template.
Also, i'm not sure parent() will refer to the bundle original template ... because of the fake one we inject.

As long as the template loading is done using the Twig template naming convention, everything should work. Once Acme:Foo is converted into @Acme/components/foo.html.twig and dumped into the cache, Twig does the rest. Do you have a case where this doesn't happen?

Currently, symfony use "Collector" or "Form" as directory names... should we use "Component" instead of "components" in the bundle structure ?
Singular / plural ?
Once we will open this it will be very very hard to change :)

I've no strong opinion about it. Personally, I prefer a lowercase directory structure, even for bundles, but it's up to you. I used the plural form for consistency with the anonymous_template_directory default config.

Security point ...

The security point is important, but I believe we should address that discussion in a separate PR.

Thanks @yceruto for this great PR! This is a solution I really believe in, but to give some more context 6 months ago I made a similar proposal and it was refused for several reasons:
The bundle doesn't have controls over the components imported or not on the user side (everything is imported by default), and this may be something that the maintainer of the bundle doesn't want. Should we think about a way to exclude some components or not?
This is why I ended up with this proposal a few months ago: https://github.com/symfony/ux/pull/1456

This is why I ended up with this proposal a few months ago: https://github.com/symfony/ux/pull/1456.

The discussion is the foundation of today's work! We agreed on the requirements and acted the "specs" @yceruto filled in this PR :)

this may be something that the maintainer of the bundle doesn't want.

For class-based components, i would totally understand.
For anonymous ones, as templates can already be included (every file in the templates directory can) by the user, i don't see a problem here, but i may not think of every case.
Would you have an example scenario ?

Thanks @WebMamba for your input!

The bundle doesn't have controls over the components imported or not on the user side (everything is imported by default), and this may be something that the maintainer of the bundle doesn't want. Should we think about a way to exclude some components or not?

This is the case for all bundle templates, not just the component ones. Once they're in the templates directory, they become public. Even if some templates are not meant to be extended or used in applications, it's the user's decision and risk. I don't think we can/should prevent that.

For me, this is completely fine! Everything is good for me!

Yep, I totally agree, the opt-in occurs when an app uses the anon component.
@yceruto could you add the docs? I'm thinking a new 3rd Party Bundle section and a sub-section for anon components. We'll add to it once we figure out how to best provide class-based components.
BTW, I think this opt-in strategy works just the same for class-based twig components. For live components, I was concerned about the security concern (someone being able to access the http endpoint for a component that isn't used) but I don't think that'll be an issue either. I forgot about the checksum, unless the end app actually renders a live component in twig, the checksum won't be valid. We'll need to confirm this of course.

We just forced a hardcoded namespace, we need to find something similar to register class-based
This probably means not use the tag i guess ?

Regarding Live component I think checking before would be nice indeed... I am not entirely sure checksum is used for actions for instance (with no changes).

Here also the tag must probably be ignore (at least partially) to prevent route or URL override

Only the doc is left to complete, but I'm having trouble finishing it before next weekend. Feel free to take over if you want to move forward

Update:

Doc for 3rd-party Anon Component added
Updated debug:twig-component command to display 3rd-party Anon components also. As well as adding support to debug Anon components from custom template paths (not only the default Twig path)

This is ready for review!

Thanks again for this first step to better 3rd party bundle support Yonel!

Thank you so much @yceruto !

Sorry, i dont know if this is the correct place to post this, (will be glad to open a new issue if this isnt)

From here, you can organize your components into subdirectories if desired. For example, a component like twig:Acme:Table:Header will be located in /templates/components/Table/Header.html.twig.

Just a heads up, if there is a subfolder inside /templates/components, it breaks the TwigComponentDebugCommand
In ComponentFactory.php line 256:
Unknown component "Cards:Card". And no matching anonymous component template was found.

Even tough, twig correctly renders the component using the :Folder:ComponentName described in the original post.

Thanks @rrenteria-dev, I've created an issue.


Readme: Add descriptions of logged columns and what they mean

The data capture system can capture a lot of data now. It would be useful if we document what the different columns mean.
Follow the example from Whack-A-Mole:
https://github.com/med-material/Whack_A_Mole_VR#mole-whacking-data-collection

@bastianilso it's done

@bilal-62210 nice. one more request: please mention all the possible "Event" labels, and potentially turn them into links to the MDN API.

@bastianilso It's done


Only consider the current file when listing unexpected changes

When running the unexpectedChangeSets command, currently all changesets not in the current file are shown. Instead, we propose to show only change sets
whose recorded filename matches the current change log file's logical
filename. This is a fix for CORE-2496.

Are you running multiple independent changelogs that all use the same schema/databasechangelog table?
The problem with only listing unexpected changeSets in the current changelog file is that you can have include-ed changelog files which report themselves as different paths but are really part of the same changelog and I think should be included.
Are you able to determine the complete list of include-ed paths and only exclude paths that are not in that list?

Thank you for looking at this. Our setup is such that we have three domain schemas and a liquibase schema, and we use a separate changelog for each domain schema, but the changes are all stored in a single schema called liquibase. In other words, we use essentially --defaultSchemaName=domainschema<n> --liquibaseSchemaName=liquibase --changeLogFile=domainschema<n>.xml We do this because we didn't want to mix the domain and liquibase tables.
What we would like to do is to verify that the database schema is not newer than the application. To do this, we are trying to check that there are no unexpected changes for any of our changelog files. However, reading your message, it occured to me that we could just have a changelog which includes the other three, which should solve our immediate problem. However, I still feel that the current behaviour is less-than-intuitive, but I see that a solution which takes into account includes would be quite a bit more complex.

...actually, no, having a changelog which includes the others doesn't help. One of the reasons to have a separate changelog file for each schema was so that we wouldn't have to explicitly name the schema in each change. However, unfortunately, you can't set defaultSchemaName in the changelog file, only on the command line.

Hello @gidoca  - does this still a problem for you? I see that this PR is from pre-liquibase 3.5.0 and the current code has been moved into UnexpectedChangesetsCommandStep class. The output for this command seems to have changed a lot within time too.
I'll close this PR and if you still need this feature please open a new issue so we could think about it and implement it (maybe adding a new flag to this command so we don't follow includes?)
Thanks


Unsubmitted expense report is missing the empty state image

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:
Reproducible in staging?: Needs reproduction
Reproducible in production?: Needs reproduction
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: @shawnborton
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1701700778110689
Action Performed:
Create an expense on a workspace that is not submitted yet
Expected Result:
The expense report should have the empty state at the top of the chat
Actual Result:
No empty state
Workaround:
unknown
Platforms:

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

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

Screenshots/Videos
Add any screenshot/video evidence

View all open jobs on GitHub

@shawnborton I'm not able to reproduce this one, so let me know if you're still seeing it.

Cool, can't seem to reproduce either but will keep an eye out for it.


next/router setting onRouteChangeStart on dynamic pages

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Context
When navigating through my app I find that any time a page requires an api call to load the data I get a delay as the data is loading, so to fix this issue I am using onRouteChangeStart to activate the menu item and provide a skeleton screen so the user knows that something is loading.
This technique is working really as the user gets instant feedback and makes the app look much faster. The issue I am having is when loading a dynamic page eg /news/:article1 the state doesn't change to false and the component appears to be always loading. This is more likely to be an issue with my code not handling a route change in the same 'page'  than a issue with next/router. Can someone provide me with some advice on how to fix this issue please?
Expected Behavior
Basic Page: On home page / click news
this.setState({
        loading: true,
        pageLoading: 'news'
})

Then when news page loads.
this.setState({
        loading: false,
        pageLoading: ''
})

Dynamic Page: Click /news/article-1 (<Link prefetch as={'/news?article=article-1'} href={'/news/article-1'}>{'article 1'}</Link>)
this.setState({
        loading: true,
        pageLoading: 'news'
})

Then when news page loads.
this.setState({
        loading: false,
        pageLoading: ''
})

Current Behavior
Basic Page as described above works as expected.
Dynamic Page as described above appears to be stuck in loading state.  But as you can see multiple states are being printed out here which makes me think its an issue with multiple components mounting?
{
	"loading": true,
	"pageLoading": "news"
}
{
	"loading": false,
	"pageLoading": ""
}

code
import React, { Component } from 'react';
import Router from 'next/router';
import Loading from './Loading'
import { splitString } from '../../helpers/utils'

export default (WrappedComponent) => (
  class MyWrapper extends Component {
    constructor (props) {
      super(props);
      this.setLoading = this.setLoading.bind(this)
      this.state = {
        loading: false,
        pageLoading: ''
      }
    }

    componentDidMount() {
      this.setState({
        loading: false,
        pageLoading: ''
      })
    }
    componentDidUpdate() {
      Router.onRouteChangeStart = url => {
        /* returns the last part of the new url so that we know which page to make active in the loading component */
        const newPage = splitString('/',url,1) !== undefined ? splitString('/',url,1):'...'
        this.setLoading(newPage)
      }
    }

    setLoading(newPage) {
      this.setState({
        loading: true,
        pageLoading: newPage
      })
    }

    render() {
      return (

{JSON.stringify(this.state, null, '	')}

          {
            this.state.loading ?
            <Loading page={this.state.pageLoading} />
            :<WrappedComponent {...this.props} />
          }

      )
    }
  }
)

Your Environment

Tech
Version

next
^3.0.3

node
v8.4.0

OS
macOS 10.12

browser
chrome  61

@timneutkens is there any additional information I can provide here?  I am still seeing this issue after upgrading to next 4.1.4


deliver exports screenshots from iTC as JPEG, saves them as PNG

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description
When first using deliver and it pulls down the metadata from iTC, it downloads the screenshots and saves them with a .png extension.
However iTC appears to be serving JPEG images, so we end up with screenshots in JPEG format but the png extension.
When deliver tries to upload these again to iTC it fails, with the confusing error message:
[14:48:56]: [IMG_BAD_COLOR_SPACE] This does not use RGB color space. Please edit the image to use the RGB color space and re-save it.

The color space is in fact correct, the format (for the stated extension) is incorrect. It is unclear whether this is a fastlane/deliver bug or a change in iTC.
I checked the formats of the "png" files that deliver saved when initialising:
marc$ identify fastlane/screenshots/en-US/*.png
fastlane/screenshots/en-US/1_ipadPro_1.ipad-pro-store.png JPEG 2048x2732 2048x2732+0+0 8-bit sRGB 533310B 0.000u 0:00.000
fastlane/screenshots/en-US/1_ipad_1.ipad-store.png JPEG 1536x2048 1536x2048+0+0 8-bit sRGB 334928B 0.000u 0:00.000
fastlane/screenshots/en-US/1_iphone6Plus_1.iphone-store.png JPEG 1242x2208 1242x2208+0+0 8-bit sRGB 229927B 0.000u 0:00.000
fastlane/screenshots/en-US/2_ipadPro_2.ipad-pro-share.png JPEG 2048x2732 2048x2732+0+0 8-bit sRGB 402192B 0.000u 0:00.000
fastlane/screenshots/en-US/2_ipad_2.ipad-share.png JPEG 1536x2048 1536x2048+0+0 8-bit sRGB 262801B 0.000u 0:00.000
fastlane/screenshots/en-US/2_iphone6Plus_2.iphone-find (1).png JPEG 1242x2208 1242x2208+0+0 8-bit sRGB 284442B 0.000u 0:00.000
fastlane/screenshots/en-US/3_ipadPro_3.ipad-pro-comment.png JPEG 2048x2732 2048x2732+0+0 8-bit sRGB 395176B 0.000u 0:00.000
fastlane/screenshots/en-US/3_ipad_3.ipad-comment.png JPEG 1536x2048 1536x2048+0+0 8-bit sRGB 243573B 0.000u 0:00.000
fastlane/screenshots/en-US/3_iphone6Plus_3.iphone-share.png JPEG 1242x2208 1242x2208+0+0 8-bit sRGB 187988B 0.000u 0:00.000
fastlane/screenshots/en-US/4_ipadPro_4.ipad-pro-find.png JPEG 2048x2732 2048x2732+0+0 8-bit sRGB 533208B 0.000u 0:00.000
fastlane/screenshots/en-US/4_ipad_4.ipad-find.png JPEG 1536x2048 1536x2048+0+0 8-bit sRGB 338265B 0.000u 0:00.000
fastlane/screenshots/en-US/4_iphone6Plus_4.iphone-comment.png JPEG 1242x2208 1242x2208+0+0 8-bit sRGB 168436B 0.000u 0:00.000

You can see they are all JPEG sRGB, not PNG.
The workaround is to get the original PNGs again and save them over these bad images.
However I notice in iTC web UI that the screenshots are displayed as JPEGs. If this is the same endpoint spaceship is using, then this would appear to be the source of the problem.
It seems like quite a bad bug in that the deliver init process is no longer symmetrical - you can download but cannot upload that same data.

I'll retest this over the weekend


Typo

There is a typo, I assume, on the front page. Under 'Awesome Technology' it says, "Grav employees..."  I'm sure someone meant employs. ;)

Yes, thanks


Directive templates are always created in the HTML namespace

The problem:
When you create a new directive that has directive definition object as follows
myApp.directive('myDirective', function(){
return {
replace:true,
restrict: 'E',
template: 'some-html-content-that-git-hub-flavored-markdown-wont-let-me-paste-in'
}
});
The elements contained within the template are always created in the HTML namespace.  Whilst this is probably fine for the fast majority of cases if someone ever uses AngularJS with another XML document like SVG this could cause some problems.
Take the following plunker  http://plnkr.co/edit/WNSc7Ux99MJWf9yPQpQf.  When you view this (Chromium Version 31.0.1650.57 (235101) snapshot version of Angular)  you should see two red squares side by side, but nothing comes up.  If you open up the inspector inside chrome and look at the SVG element you should see two SVG paths that create the squares.  If you right click on one of the paths and go to "Inspect DOM properties".  If you look at the namespaceURI property of the object returned it has the HTML namespace "http://www.w3.org/1999/xhtml" and not the SVG namespace "http://www.w3.org/2000/svg" it was created inside.
If you contrast this to the two path elements that have been commented out by uncommenting them. Then two squares should then display.  These two squares have exactly the same markup as the rendered directive the only difference is that these ones are in the correct SVG namespace.
Use case:
This is a problem for a project that I am working on where I have bound my Angular model onto SVG elements inside of a ng-repeat.  At the moment I am not using directives and just the plain SVG constructs.  However some of these are quite large and make the markup look like a mess and I would like to abstract this mess into a directive.

templateNamespace has been part of the directive definition for a long time and there's also some auto-detection going on. I guess this issue is resolved.


Add schwifty migration

Needs tests to be written

Reopening to show the diff

Going a different route with schwifty-migration in the hapi-pal-verse!


Can you release more result files from the validation leaderboard?

Would be interesting to see the actual distribution of answers. Also commands to replicate those numbers?

Sorry. We might not have the predictions for all the models as a large amount of leaderboard scores were submitted by the authors.