chore(project): config select changes

Description

Dev environment supported via a query env=dev value, now accessible from the dashboard. When setting the query we change the API_HOST and use the configs from 'dev' folder.

Changed configs location to store them all in one place. Now all the configs are stored in a configs folder. We use prod for a live version and local development (for local we can switch to test). We use dev for our test api. We use test for e2e-tests and PR-previews.

Debug section added. Section is shown only when opening the page without c query. I decided to locate the icon on the bottom of the page for it not to be an eye-catcher. Section reuses Sidebar component with different content.

Configs in a select control are formatted to include several words and also a given siteName. The format of the file should comply with several rules to be shown in a right way.

Docs updated

README preview url updated

Env variables are stored now in one place (env file).

Steps completed:

According to our definition of done, I have completed the following steps:

[ ] User stories met
[ ] Storybook stories
[ ] Unit tests added
[ ] Linting passing
[ ] Unit tests passing
[ ] Docs updated (including config and env variables)
[ ] Translations added
[ ] UX tested
[ ] Browsers / platforms tested
[ ] Rebased & ready to merge without conflicts
[ ] Reviewed own code

Suggestion: move 'internal' (dev api) configs to configs/internal folder. Use dev for real development mode.

Thanks Danny. I will have a look a bit later when having free time during our spotlight project.


CI Failure: k8s upstream test - NetworkPolicy between server and client

Unfortunately there isn't a bugtool report for that test but it looks like it's related with all failures we are having with service translation.
17:35:52 • Failure [92.594 seconds]
17:35:52 [sig-network] NetworkPolicy
17:35:52 /home/vagrant/go/src/github.com/kubernetes/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/framework.go:22
17:35:52   NetworkPolicy between server and client
17:35:52   /home/vagrant/go/src/github.com/kubernetes/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/network_policy.go:47
17:35:52     should enforce multiple, stacked policies with overlapping podSelectors [Feature:NetworkPolicy] [It]
17:35:52     /home/vagrant/go/src/github.com/kubernetes/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/network_policy.go:204
17:35:52
17:35:52     Oct  1 15:35:43.809: Pod client-a should be able to connect to service svc-server, but was not able to connect.
17:35:52     Pod logs:
17:35:52     Connecting to svc-server.e2e-tests-network-policy-4c849:80 (<IP_ADDRESS>:80)
17:35:52     wget: download timed out
17:35:52     Connecting to svc-server.e2e-tests-network-policy-4c849:80 (<IP_ADDRESS>:80)
17:35:52     wget: download timed out
17:35:52     Connecting to svc-server.e2e-tests-network-policy-4c849:80 (<IP_ADDRESS>:80)
17:35:52     wget: download timed out
17:35:52     Connecting to svc-server.e2e-tests-network-policy-4c849:80 (<IP_ADDRESS>:80)
17:35:52     wget: download timed out
17:35:52     Connecting to svc-server.e2e-tests-network-policy-4c849:80 (<IP_ADDRESS>:80)
17:35:52     wget: download timed out
17:35:52
17:35:52
17:35:52      Current NetworkPolicies:
17:35:52     	[{{ } {allow-ingress-on-port-80  e2e-tests-network-policy-4c849 /apis/networking.k8s.io/v1/namespaces/e2e-tests-network-policy-4c849/networkpolicies/allow-ingress-on-port-80 8afdc1fb-c58f-11e8-aefc-080027b66966 1832 1 2018-10-01 15:34:53 +0000 UTC <nil> <nil> map[] map[] [] nil [] } {{map[pod-name:server] []} [{[{0xc4202f26f0 80}] []}] [] [Ingress]}} {{ } {allow-ingress-on-port-81  e2e-tests-network-policy-4c849 /apis/networking.k8s.io/v1/namespaces/e2e-tests-network-policy-4c849/networkpolicies/allow-ingress-on-port-81 8afe57fe-c58f-11e8-aefc-080027b66966 1833 1 2018-10-01 15:34:53 +0000 UTC <nil> <nil> map[] map[] [] nil [] } {{map[pod-name:server] []} [{[{0xc4202f2750 81}] []}] [] [Ingress]}}]
17:35:52
17:35:52      Pods:
17:35:52     	[Pod: server, Status: &PodStatus{Phase:Running,Conditions:[{Initialized True 0001-01-01 00:00:00 +0000 UTC 2018-10-01 15:34:17 +0000 UTC  } {Ready True 0001-01-01 00:00:00 +0000 UTC 2018-10-01 15:34:27 +0000 UTC  } {ContainersReady True 0001-01-01 00:00:00 +0000 UTC 0001-01-01 00:00:00 +0000 UTC  } {PodScheduled True 0001-01-01 00:00:00 +0000 UTC 2018-10-01 15:34:17 +0000 UTC  }],Message:,Reason:,HostIP:<IP_ADDRESS>,PodIP:<IP_ADDRESS>,StartTime:2018-10-01 15:34:17 +0000 UTC,ContainerStatuses:[{server-container-80 {nil ContainerStateRunning{StartedAt:2018-10-01 15:34:19 +0000 UTC,} nil} {nil nil nil} true 0 gcr.io/kubernetes-e2e-test-images/porter-amd64:1.0 docker-pullable://gcr.io/kubernetes-e2e-test-images/porter-amd64@sha256:824f041b2757f8da2980092ace0991b4b8c6689e76c3b94f677521f7157bc7b8 docker://cef944745b4d5608ddc8fd50e47d6ac4440e21b06467e536bf08c207efaa2014} {server-container-81 {nil &ContainerStateRunning{StartedAt:2018-10-01 15:34:19 +0000 UTC,} nil} {nil nil nil} true 0 gcr.io/kubernetes-e2e-test-images/porter-amd64:1.0 docker-pullable://gcr.io/kubernetes-e2e-test-images/porter-amd64@sha256:824f041b2757f8da2980092ace0991b4b8c6689e76c3b94f677521f7157bc7b8 docker://eed17d72be34cfbafe5c74e6bd3e5da9365cb4d72776f5222eed1ddf38c96ade}],QOSClass:BestEffort,InitContainerStatuses:[],NominatedNodeName:,}
17:35:52      Pod: server, Status: &PodStatus{Phase:Running,Conditions:[{Initialized True 0001-01-01 00:00:00 +0000 UTC 2018-10-01 15:34:17 +0000 UTC  } {Ready True 0001-01-01 00:00:00 +0000 UTC 2018-10-01 15:34:27 +0000 UTC  } {ContainersReady True 0001-01-01 00:00:00 +0000 UTC 0001-01-01 00:00:00 +0000 UTC  } {PodScheduled True 0001-01-01 00:00:00 +0000 UTC 2018-10-01 15:34:17 +0000 UTC  }],Message:,Reason:,HostIP:<IP_ADDRESS>,PodIP:<IP_ADDRESS>,StartTime:2018-10-01 15:34:17 +0000 UTC,ContainerStatuses:[{server-container-80 {nil ContainerStateRunning{StartedAt:2018-10-01 15:34:19 +0000 UTC,} nil} {nil nil nil} true 0 gcr.io/kubernetes-e2e-test-images/porter-amd64:1.0 docker-pullable://gcr.io/kubernetes-e2e-test-images/porter-amd64@sha256:824f041b2757f8da2980092ace0991b4b8c6689e76c3b94f677521f7157bc7b8 docker://cef944745b4d5608ddc8fd50e47d6ac4440e21b06467e536bf08c207efaa2014} {server-container-81 {nil &ContainerStateRunning{StartedAt:2018-10-01 15:34:19 +0000 UTC,} nil} {nil nil nil} true 0 gcr.io/kubernetes-e2e-test-images/porter-amd64:1.0 docker-pullable://gcr.io/kubernetes-e2e-test-images/porter-amd64@sha256:824f041b2757f8da2980092ace0991b4b8c6689e76c3b94f677521f7157bc7b8 docker://eed17d72be34cfbafe5c74e6bd3e5da9365cb4d72776f5222eed1ddf38c96ade}],QOSClass:BestEffort,InitContainerStatuses:[],NominatedNodeName:,}
17:35:52     ]
17:35:52
17:35:52
17:35:52

https://jenkins.cilium.io/job/Cilium-PR-Kubernetes-Upstream/691

I do not see this one in the master:
https://jenkins.cilium.io/view/Cilium-master/job/cilium-master-K8s-Upstream/
Andre are you sure that it's not related with your changes?

@eloycoto it could have been a flake. but yes, it was related with my changes.


[CHANGE ME] Re-generated Asset to pick up changes in the API or clien…

…t library generator.

This generation is based on an out-of-date snapshot of the repository. Regeneration with https://github.com/googleapis/google-cloud-php/commit/3a09e7d9c047d8dca3a9c30bc25caf1c950edf12 shows no changes.


Reformatting: add linebreaks to meet the rule of blank line number

Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Improve Repo
For resources
Description
This PR is trying to fix a formatting problem cause by a recent PR (#4767 )
The problem is the incorrect number (except 2 but have 1) of blank lines above and below the "Language Translations" section of  free-programming-cheatsheets.md
After #4767 merged, all commits did not pass the Travis-CI format check.
Why is this valuable (or not)?
All commits after #4767 won't pass the Travis-CI format check. This PR is trying to fix this problem.
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[ ] Not a duplicate
[ ] Included author(s) if appropriate
[ ] Lists are in alphabetical order
[ ] Needed indications added (PDF, access notes, under construction)

Just wanted to note that this PR also fixes the issue, but it also adds a resource as well:
https://github.com/EbookFoundation/free-programming-books/pull/4800

sorry about this problem we fixed it elsewhere


Enable emoji for wiki view

Enable emoji for wiki page content. It is enabled in the edit preview so the view should match.

CI failure not related to PR so LGTM

LGTM

Codecov Report

Merging #3158 into master will increase coverage by 0.17%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #3158      +/-   ##
==========================================
+ Coverage   34.57%   34.74%   +0.17%
==========================================
  Files         276      276
  Lines       39945    39945
==========================================
+ Hits        13809    13880      +71
+ Misses      24155    24071      -84
- Partials     1981     1994      +13

Impacted Files
Coverage Δ

modules/indexer/repo.go
60.86% <0%> (-6.96%)
:arrow_down:

models/repo_indexer.go
51.94% <0%> (-0.98%)
:arrow_down:

models/repo.go
41.47% <0%> (+0.18%)
:arrow_up:

models/lfs.go
28.26% <0%> (+2.17%)
:arrow_up:

modules/lfs/server.go
35.01% <0%> (+14.32%)
:arrow_up:

modules/lfs/content_store.go
43.75% <0%> (+35.93%)
:arrow_up:

Continue to review full report at Codecov.

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


Make debug messages a bit more readable.

This makes debugging a bit more easier.
Signed-off-by: Charles Short<EMAIL_ADDRESS>

I'm a little reluctant. Users can run with -vvv if they want to. Thoughts @zulcss

@zulcss Closing this based on previous comment. Hope that is fine. Please, reopen if you feel differently.


Pretrained weights link (GoogleDrive) not accessible.

Hello!
I was hoping to test your model's but the Google Drive link to a pre-trained weight link throws an 404 error.
Can I ask you to confirm?

Hi. Sorry about that.
We are in the middle of a server migration. We plan to notify the updated download link at Wednesday evening.
Sorry for the inconvenience.

We replaced the download link to new one.
Thanks for your comment! :)


⚠ Bofrost.at has degraded performance

In 7d20384, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1588 ms

Resolved: Bofrost.at performance has improved in 84f9738.


UR will not stop at the target position unless speed is set to 100%

Using MoveIt to compute trajectory and execute.
If I set the speed to 100%, no problem. (set on the panel with the slider)
If I set the speed to n < 100%, robot will not stop at the target location, but continues to move and slowly stop little by little.
Ubuntu 18.04
ur_modern_driver compiled from catkin
(It also affect ubuntu 16.04 on another machine)
command executed from websocket through rosbridge.
Is this a bug in the driver?

The driver will assume that motion commands take a certain amount of time. By changing the speed slider value, you change that time, but unilaterally: MoveIt doesn't get notified, nor do the controllers.
This is the likely cause of the "desync" that you observed.

Is this a bug in the driver?

No. At the moment this is expected behaviour.
You could see whether configuring the same velocity and acceleration scaling in your MoveIt plan request improves the situation, but especially the acceleration scaling will not be trivial to get just right.

I'm going to close this as I'm going to assume that we've sufficiently dealt with the issue you report and that it's not something we can change in the driver for now.
Feel free to keep commenting on the issue of course.

this should be documented in the README


Fix organization producers page

cc @jdesboeufs

Codecov Report

Merging #495 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master     #495   +/-   ##
=======================================
  Coverage   22.42%   22.42%
=======================================
  Files         166      166
  Lines        1231     1231
=======================================
  Hits          276      276
  Misses        955      955

Impacted Files
Coverage Δ

...ges/OrganizationProducers/OrganizationProducers.js
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Not showing Previous/From Page when directly hitting a page that needs authorisation.

Hey there,
Thanks for building this this awesome plugin. My app needs to know the previous route before redirecting to the login page if unauthorised. I was thinking of storing this in a Store for safe keeping.
It seems, if I'm coming from a valid page, then hit a route with meta: {auth: true}, it redirects me and shows me the previous page fine. However if i directly hit that unauthorised page it comes back with an empty from, and also empty auth.redirect() object.
By directly I mean a new chrome tab - then hit https://domain/requires-auth, it doesn't show me the previous page, but if I'm in a https://domain/open-page, then click a link that takes me to https://domain/requires-auth it shows me the previous page.
This is the method I'm using to try and find the previous page:
router.beforeEach((to, from) => {
console.log('from');
console.log(from);
console.log(auth.redirect())
})
I hope this explanation makes sense. I must be doing something wrong?
Cheers

.redirect() will only return the page doing the redirect when it comes from vue-router can you make me a minimal reproducible example?

Hey @tachibana-shin, Thanks for getting in touch with me.
See here: https://github.com/nimashoghi0/vue-auth
When you hit /demo directly, vue-auth-3 redirects to the /login page, and there is no data on the previous page (/demo), vue router also doesn't show any info so that's probably why.
I need to capture this previous data, so I will write my own wrapper to check authorisation, where I can store the information in local storage, it would have been great to use your meta field checker though. Maybe something to consider in the future?
Cheers


Fail to save data to harddisk by config

In line 1533 of redis.c
appendServerSaveParams(6060,1);  / save after 1 hour and 1 change /
appendServerSaveParams(300,100);  / save after 5 minutes and 100 changes /
appendServerSaveParams(60,10000); / save after 1 minute and 10000 changes */
These hard code bypassed the config file for saving data to hard disk from memory and supposed to be be commented out to enable the config settings.

Hi @jackyjqzhang
those are just default values that are overwritten later when the configuration file is loaded.


[Feature] YOLO loss definition

Prerequisites
Please answer the following question for yourself before submitting an issue.

[x] I checked to make sure that this feature has not been requested already.

1. The entire URL of the file you are using
https://github.com/tensorflow/models/tree/master/official/vision/beta
2. Describe the feature you request
A clear and concise description of what you want to happen.
YOLO loss definition consists of

generalised IoU (considers shape, orientation in addition to overlap)
center IoU (considers overlap, distance between center, aspect ratio)
distance IoU (considers distance of center of bbox)

3. Additional context
Add any other context about the feature request here.
4. Are you willing to contribute it? (Yes or No)
Yes

https://github.com/miemie2013/Keras-YOLOv4/tree/master/model
https://github.com/wangermeng2021/Scaled-YOLOv4-tensorflow2/blob/main/model/losses.py
Check against other implementations. The one that was modelled after seems fishy..


Replace Pplint:autoloader_layout

https://docs.puppetlabs.com/guides/style_guide.html#separate-files
http://puppet-lint.com/checks/autoloader_layout/

@racodond Care to take a look.

Nice job!
PR: https://github.com/iwarapter/sonar-puppet/pull/119 and my review: https://github.com/iwarapter/sonar-puppet/commit/801b5ee280ea343e71a459868d4d49b94349fcee
You can also directly create the PR when you want me to review


Display version again...

homplexity-cli --version should display current version.

Thank you very much!


Problems trying to bind with Ruby to create a native extension

I am not sure if I should file this issue here but maybe it's something that could improve in the section talking about C in the user guide.
I am trying this small example from this Gist. It's yet-another-poc for a ruby native extension in Crystal.
I tweaked the Makefile to look like this (to work under Ubuntu 14.04 64bits):
CRYSTAL = crystal
UNAME = "$(shell llvm-config --host-target)"
LIBRARY_PATH = /opt/crystal/embedded/lib
LIBS = -levent -lpcl -lpcre -lgc -lpthread
LDFLAGS = -Wl,-undefined,dynamic_lookup

TARGET = crystal_example_ext.bundle

$(TARGET): crystal_example_ext.o
	$(CC) $^ -o $@ -L$(LIBRARY_PATH) $(LIBS) $(LDFLAGS)

crystal_example_ext.o: crystal_example_ext.cr
	$(CRYSTAL) build --cross-compile --target $(UNAME) $<

.PHONY: clean
clean:
	rm -f bc_flags
	rm -f crystal_example_ext.o
	rm -f $(TARGET)

When I try to make it results in this:
$ make                [ruby-2.3.1]
cc crystal_example_ext.o -o crystal_example_ext.bundle -L/opt/crystal/embedded/lib -levent -lpcl -lpcre -lgc -lpthread -Wl,-undefined,dynamic_lookup
crystal_example_ext.o: In function `__crystal_main':
main_module:(.text+0x396): undefined reference to `setup_sigfault_handler'
crystal_example_ext.o: In function `*CallStack::decode_frame<Pointer(Void), Pointer(Void)>:(Tuple(Int64, Pointer(UInt8)) | Nil)':
main_module:(.text+0x90ef): undefined reference to `dladdr'
crystal_example_ext.o: In function `Init_crystal_example_ext':
main_module:(.text+0x12270): undefined reference to `rb_cObject'
main_module:(.text+0x1227b): undefined reference to `rb_define_class'
main_module:(.text+0x122d2): undefined reference to `rb_define_method'
crystal_example_ext.o: In function `*salute<Pointer(Void), Pointer(Void)>:Pointer(Void)':
main_module:(.text+0x12d74): undefined reference to `rb_str_to_str'
main_module:(.text+0x12d83): undefined reference to `rb_string_value_cstr'
collect2: error: ld returned 1 exit status
make: *** [crystal_example_ext.bundle] Error 1

All the other Pocs I found trying to compile a native extension for Ruby has a similar Makefile - and they all error out the same with undefined reference
The -bundle flag fails so I removed it. But I don't know what changed to the cross-compiling up until 0.18.2 that is changing how those pocs work. Maybe extra flags are needed to CC?

It means you're not linking against libruby, try adding a -lruby.

Forgot to say I did add -lruby and I get this:
/usr/bin/ld: cannot find -lruby

I have RVM. Any other configuration I should add?

I guess you could do something like -L$(ruby -e "print RbConfig::CONFIG['libdir']") -lruby or try to use Ruby's mkmf stdlib.

Following your recommendation, the one-liner above returns nothing running from inside the Makefile but I hardcoded it just to see how it goes and now there is a different error:
make                [ruby-2.3.1]
crystal compile --cross-compile --target "x86_64-pc-linux-gnu" crystal_example_ext.cr
cc crystal_example_ext.o -o crystal_example_ext  -rdynamic  -L/usr/lib -L/usr/local/lib -lpcre -lgc -lpthread /opt/crystal/src/ext/libcrystal.a -levent -lrt -ldl
cc crystal_example_ext.o -o crystal_example_ext.bundle -L/opt/crystal/embedded/lib -L/home/akitaonrails/.rvm/rubies/ruby-2.3.1/lib -levent -lpcl -lpcre -lgc -lpthread -lruby -Wl,-undefined,dynamic_lookup
/usr/bin/ld: crystal_example_ext.o: undefined reference to symbol 'dladdr@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libdl.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make: *** [crystal_example_ext.bundle] Error 1

Duh, I added the missing -ldl and finally, I have this other error:
$ LIBS=-ldl make      [ruby-2.3.1]
crystal compile --cross-compile --target "x86_64-pc-linux-gnu" crystal_example_ext.cr
cc crystal_example_ext.o -o crystal_example_ext  -rdynamic  -L/usr/lib -L/usr/local/lib -lpcre -lgc -lpthread /opt/crystal/src/ext/libcrystal.a -levent -lrt -ldl
cc crystal_example_ext.o -o crystal_example_ext.bundle -L/opt/crystal/embedded/lib -L/home/akitaonrails/.rvm/rubies/ruby-2.3.1/lib -levent -lpcl -lpcre -lgc -lpthread -lruby -ldl -Wl,-undefined,dynamic_lookup
crystal_example_ext.o: In function `__crystal_main':
main_module:(.text+0x396): undefined reference to `setup_sigfault_handler'
collect2: error: ld returned 1 exit status
make: *** [crystal_example_ext.bundle] Error 1

not sure where to link setup_sigfault_handler from.

from /opt/crystal/embedded/src/ext/libcrystal.a or whatever the path in the omnibus package was again.

It's from ext.o generated by the compiler: https://github.com/crystal-lang/crystal/blob/master/src/ext.cr
You should like against that .a, but I don't know why it's not in the cc command. Probably because the prelude is not required? In that case you can do require "ext" in your code, maybe it'll work.

Very strange, I tried to both add the libcrystal.a path directly as a -L flag and I added the require "ext" in the source and still the same error. This is the hardcoded version of the Makefile I am trying:
CRYSTAL = crystal
UNAME = "$(shell llvm-config --host-target)"
LIBRARY_PATH = /opt/crystal/embedded/lib
LIBS = -levent -lpcl -lpcre -lgc -lpthread -lruby -ldl -lm -lc
LDFLAGS = -Wl,-undefined,dynamic_lookup

TARGET = crystal_example_ext.bundle

$(TARGET): crystal_example_ext.o
	$(CC) $^ -o $@ -L$(LIBRARY_PATH) -L/opt/crystal/src/ext/libcrystal.a -L/home/akitaonrails/.rvm/rubies/ruby-2.3.1/lib $(LIBS) $(LDFLAGS)

crystal_example_ext.o: crystal_example_ext.cr
	$(CRYSTAL) compile --cross-compile --target $(UNAME) $<

.PHONY: clean
clean:
	rm -f bc_flags
	rm -f crystal_example_ext.o
	rm -f $(TARGET)

and the same result:
$ make                [ruby-2.3.1]
crystal compile --cross-compile --target "x86_64-pc-linux-gnu" crystal_example_ext.cr
cc crystal_example_ext.o -o crystal_example_ext  -rdynamic  -L/usr/lib -L/usr/local/lib -lpcre -lgc -lpthread /opt/crystal/src/ext/libcrystal.a -levent -lrt -ldl
cc crystal_example_ext.o -o crystal_example_ext.bundle -L/opt/crystal/embedded/lib -L/opt/crystal/src/ext/libcrystal.a -L/home/akitaonrails/.rvm/rubies/ruby-2.3.1/lib -levent -lpcl -lpcre -lgc -lpthread -lruby -ldl -lm -lc -Wl,-undefined,dynamic_lookup
crystal_example_ext.o: In function `__crystal_main':
main_module:(.text+0x396): undefined reference to `setup_sigfault_handler'
collect2: error: ld returned 1 exit status
make: *** [crystal_example_ext.bundle] Error 1

-l, not -L. -L defines the search path.

  So, now this one works:
CRYSTAL = crystal
UNAME = "$(shell llvm-config --host-target)"
LIBRARY_PATH = /opt/crystal/embedded/lib
LIBCRYSTAL = /opt/crystal/src/ext/libcrystal.a
LIBRUBY = /home/akitaonrails/.rvm/rubies/ruby-2.3.1/lib
LIBS = -levent -lpcl -lpcre -lgc -lpthread -lruby -ldl -lm -lc
LDFLAGS = -L. -fstack-protector -rdynamic -Wl,-export-dynamic,-undefined,dynamic_lookup
TARGET = crystal_example_ext.so

$(TARGET): crystal_example_ext.o
	$(CC) -shared $^ -o $@ $(LIBCRYSTAL) -L$(LIBRARY_PATH) -L$(LIBRUBY) $(LIBS) $(LDFLAGS)

crystal_example_ext.o: crystal_example_ext.cr
	$(CRYSTAL) compile --cross-compile --target $(UNAME) $<

.PHONY: clean
clean:
	rm -f bc_flags
	rm -f crystal_example_ext.o
	rm -f $(TARGET)

I compiles a proper shared object that I can require from Ruby.
The issues I was not able to figure out yet are:

how to make a shell command to find the /opt/crystal/embedded/lib and libcrystal.a paths from the Makefile (they are hardcoded to my machine's path)
how to make a shell command to find the current ruby library directory from RVM (the snippet from @jhass did not work from the Makefile)
I am not familiar with extconf.rb and mkmf so they are probably the way to go, but I am not sure how to mix that yet.

For now I think this question can be closed. Thanks to @jhass and @asterite for the time.

@asterite @jhass  maybe I am doing something wrong but it seems that under OS X the crystal command can both compile and link the shared-object, but under linux it compiles the .o and I have to use GCC to link it, is that correct?
I just sent this PR to crystalized_ruby. It's a rough version but it works in both my OS X El Capitan and Ubuntu 14.04 64-bits.

@akitaonrails crystal should be able to link it too, it just invokes cc for that, or whatever is set in the CC environment variable.


Multiline sensitive output causes cli task to fail when running terraform output

First of all thanks for creating this awesome extension!
Terraform 0.15 makes it mandatory to mark output as sensitive, if it includes data that a provider marked as sensitive. However, using TerraformCLI@0 with the 'output' command blocks multiline output: 'Secrets cannot contain multiple lines'
This is a problem, as some multiline output is flagged sensitive by the provider e.g.
azurerm_kubernetes_cluster.kube_admin_config_raw
tls_private_key.private_key_pem
For now I hold off on upgrading to terraform 0.15, but I think it is a good practice to flag output as sensitive when appropriate. I'm hoping the extension will address this scenario.

@geekzter would you mind adding a sample build log that shows what happens in this case? Also, can you confirm if you just bash/powershell terraform output on this multiline sensitive value, that the same error does not occur? I do not believe there is an error message in the extension that you are reporting.

@charleszipp here is the relevant section from the diagnostic log. It is indeed the task output with 'issecret=true' that won't accept multi-line output. It would be nice if these can be dropped altogether instead of causing the issue.
##[debug]Exit code 0 received from tool '/opt/hostedtoolcache/terraform/0.15.5/x64/terraform'
##[debug]STDIO streams have closed for tool '/opt/hostedtoolcache/terraform/0.15.5/x64/terraform'
##[debug]set TF_OUT_ADMIN_PASSWORD=********
##[debug]Processed: ##vso[task.setvariable variable=TF_OUT_ADMIN_PASSWORD;isOutput=false;issecret=true;]***
##[debug]set TF_OUT_ADMIN_USERNAME=ciuser
##[debug]Processed: ##vso[task.setvariable variable=TF_OUT_ADMIN_USERNAME;isOutput=false;issecret=false;]ciuser
##[debug]set TF_OUT_CERT_PASSWORD=********
##[debug]Processed: ##vso[task.setvariable variable=TF_OUT_CERT_PASSWORD;isOutput=false;issecret=true;]***
##[debug]set TF_OUT_CLIENT_CERT_COMMON_NAME=P2SChildCertci3
##[debug]Processed: ##vso[task.setvariable variable=TF_OUT_CLIENT_CERT_COMMON_NAME;isOutput=false;issecret=false;]P2SChildCertci3
##[debug]set TF_OUT_CLIENT_CERT_MERGED_PEM=********
##[debug]allowTelemetryCollection=true
##[error]Error: Secrets cannot contain multiple lines

Thanks @geekzter for testing this and providing the output.  Given this looks to be a limitation in azure pipelines itself, i agree we should to try to mitigate the impact by updating the task to not set an output that we expect to fail. This would allow use of the rest of the outputs. Here is what I would propose...
As the outputs are being evaluated and set, inspect the value to determine if it contains multiple lines.

if is multi line, treat as unsupported data type and follow same logging practice as outputs with unsupported types.
if not multiple lines, treat as supported data type and set as pipeline variable

Would this resolve your issue @geekzter ?

Hi @charleszipp,
Perfect! That would indeed resolve the issue and limits the changes I need to make for TF 0.15 significantly. In the multiline cases I just have to perform 'terraform output' from script, but there is no way around that.
Thanks

@geekzter I think I am encountering your issue with not just sensitive outputs but all outputs - or I am understanding the output command wrong. Can the output command be used to get a single value like on the CLI by passing the output variable to the command? I had a look at the code and it seems like it should but my tasks just seem to run terraform version and then terminate without error. Any ideas?
snippet from my pipeline:
      - task: TerraformCLI@0
        inputs:
          command: 'output'
          workingDirectory: '$(System.DefaultWorkingDirectory)/iaac/azure/kubernetes'
          commandOptions: 'AZURE_STORAGE_ACCOUNT_NAME_BASE64'
          allowTelemetryCollection: true

Then expecting AZURE_STORAGE_ACCOUNT_NAME_BASE64 as a variable.
But the output from the task does not seem to run terraform output at all:
2021-12-07T07:07:30.4842875Z ##[section]Starting: TerraformCLI
2021-12-07T07:07:30.4851226Z ==============================================================================
2021-12-07T07:07:30.4851549Z Task         : Terraform CLI
2021-12-07T07:07:30.4851794Z Description  : Execute terraform cli commands
2021-12-07T07:07:30.4852023Z Version      : 0.6.30
2021-12-07T07:07:30.4852232Z Author       : Charles Zipp
2021-12-07T07:07:30.4852441Z Help         :
2021-12-07T07:07:30.4852681Z ==============================================================================
2021-12-07T07:07:30.7561528Z [command]/usr/local/bin/terraform version
2021-12-07T07:07:30.8112248Z Terraform v1.0.11
2021-12-07T07:07:30.8112643Z on linux_amd64
2021-12-07T07:07:30.8112951Z + provider registry.terraform.io/hashicorp/azurerm v2.88.1
2021-12-07T07:07:30.8113305Z + provider registry.terraform.io/hashicorp/random v3.1.0
2021-12-07T07:07:31.8904446Z ##[section]Finishing: TerraformCLI

I added -raw to the command options and it errors about raw and json being incompatible so it does seem to be running the command, there is just no output?
Really keen to help on this issue as I would like to automate my deployment using secrets created in terraform and not having to manually deploy them.

Hi @bjacog, sorry for responding so late.
I'm no longer using TerraformCLI@0 for anything else than downloading Terraform itself. Instead I run Terraform from AzureCLI@2.

Hi @bjacog, the output command actually injects the variables into the pipeline as pipeline variables.  There is no output.

Hi, having the output:
output "tooling_bastion_ssh_private_key" {
  value     = tls_private_key.as_bastion_key.private_key_openssh
  sensitive = true
}

I also get the fatal error:
##[error]Error: Secrets cannot contain multiple lines
In consequence I cannot use the command: output at all :worried:
I would love to have a functionality to skip such problematic outputs to be able to use the rest of the outputs :crossed_fingers:


Stix 2.1 support

Codecov Report

Merging #76 (1bd36b0) into master (5b7f59d) will decrease coverage by 0.99%.
The diff coverage is 72.22%.

@@            Coverage Diff             @@
##           master      #76      +/-   ##
==========================================
- Coverage   90.49%   89.50%   -1.00%
==========================================
  Files          13       13
  Lines        1126     1153      +27
==========================================
+ Hits         1019     1032      +13
- Misses        107      121      +14

Impacted Files
Coverage Δ

stix2matcher/matcher.py
86.68% <72.22%> (-1.18%)
:arrow_down:

Continue to review full report at Codecov.

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

In stix2matcher/matcher.py, lines 1062 & 1066, is there a case where the if statement on line 1062 would be true, but the if statement on line 1066 would be false? Is 1066 needed?

I don't see "if" statement on line 1062 to compare. I guess you mean the "for" cycle. The data passed to the function (observed_data_sdos) is different in 2.0 and 2.1. In case of 2.1 we need to to additional operations to "number_observed" value.

@clenk can you please have a look at this PR? Since this is an enhancement so we would like tor run by you before we merge it in?

I am not quite sure why the check does not pass https://github.com/oasis-open/cti-pattern-matcher/runs/6779347901?check_suite_focus=true#step:5:334

I am not quite sure why the check does not pass https://github.com/oasis-open/cti-pattern-matcher/runs/6779347901?check_suite_focus=true#step:5:334 what import sorting is required? Any ideas @clenk ?

It shows the change needed in the output: https://github.com/oasis-open/cti-pattern-matcher/runs/6779347901?check_suite_focus=true#step:5:348 (the lines that start with - and +)

Here are some of my observations.  The matcher seems to exhibit some odd behavior.
Expected input seems to now be a list of bundles.  Consider the following STIX content to be matched against (a list with one bundle; this content is a derivative of one of the unit tests):
[
    {
        "id": "bundle--c2a23389-17c9-4247-8aa2-d2ffde3de334",
        "type": "bundle",
        "objects": [
            {
                "id": "observed-data--647947aa-4cc3-43a3-a42f-2c670986d777",
                "type": "observed-data",
                "spec_version": "2.1",
                "number_observed": 1,
                "first_observed": "2014-04-19T06:51:26Z",
                "last_observed": "2014-04-19T06:51:26Z",
                "object_refs": [
                    "test--9c61d8ff-21ca-489a-accd-7356c2ea0a7b"
                ]
            },
            {
                "id": "test--9c61d8ff-21ca-489a-accd-7356c2ea0a7b",
                "type": "test",
                "spec_version": "2.1",
                "int": 5
            },
            {
                "id": "test2--ac61d8ff-21ca-489a-accd-7356c2ea0a7b",
                "type": "test2",
                "spec_version": "2.1",
                "int": 5
            }
        ]
    }
]

I observe the following:

The matcher seems to match against anything in a bundle, regardless of STIX type or whether it is part of an observation.  You can even match the observation itself as if it were an SCO.  For example,
  [observed-data:number_observed = 1]

matches.  This should not match, because comparison expressions only match SCOs which are part of an observation.  observed-data objects are not SCOs.

It will match SCOs which are not part of any observation.  For example,
  [test2:int = 5]

matches.  This should not match, because the test2 object is not a part of any observation.

These matches can be confirmed with the commandline tool, e.g.
stix2-matcher -s 2.1 -f .\bundles.json -p .\patterns.txt

(where the above content is in bundles.json and the patterns are in patterns.txt.)
Additionally, the match() function now seems to return lists of bundles.  In order to find matches to STIX patterns, the matcher must find bindings of observations to observation expressions.  To help users understand the matches they get, I think it ought to return those bindings, which means returning the observations.
A bundle need not contain only one observation, right?  Are there assumptions about what each bundle must contain?  If so, that should be documented, and maybe checked to ensure users don't get garbage results due to malformed bundles.  Better yet, I think the matcher should be flexible in what it accepts.  I think it should be easy to include the observations and those SCOs they refer to via object_refs, and ignore everything else.  Bundles are fine as a means of content delivery, but since they have no meaning, I think the matcher should internally act as if they did not exist (e.g. discard them and only use their contents).

Thanks @chisholm  for your reviewing and bringing the examples.
Can I ask to bring example of json (whatever part of bundle it be) as input and the output of match() function, for version 2.1.
Is the input you think is just the content of the "object" field of the bundle (list of the lists, considering there can be multiple bundles)? And the output is the same list of lists without "observed-data" elements, and without the elements that did not match or are not referenced in matched elements?
Thanks in advance.

It sounds like you are asking about the structure of input (as opposed to its content)?  As mentioned above, I think the structure could be flexible, as long as it contains the minimum necessary content to allow the matcher to do its job.  The minimum necessary content includes the observations and all SCOs they reference.
I think the simplest possible input structure is probably an ordinary list or iterable of STIX objects, similar to the input for the old matcher.
For example:
[
    {
        "type": "observed-data",
        "spec_version": "2.1",
        "id": "observed-data--1209f166-bba6-4307-a566-60e3a6c39cd2",
        "created": "2022-10-25T08:59:09.295455Z",
        "modified": "2022-10-29T01:53:18.132077Z",
        "first_observed": "2022-11-27T19:50:46.889315Z",
        "last_observed": "2023-01-05T05:35:31.372958Z",
        "number_observed": 1,
        "object_refs": [
            "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
        ]
    },
    {
        "type": "observed-data",
        "spec_version": "2.1",
        "id": "observed-data--9813cee6-9e9d-4199-88d2-a740331fa8a1",
        "created": "2021-09-17T05:06:25.871976Z",
        "modified": "2022-06-19T20:23:09.126157Z",
        "first_observed": "2022-11-05T10:47:16.435447Z",
        "last_observed": "2023-01-17T23:00:47.872163Z",
        "number_observed": 1,
        "object_refs": [
            "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
        ]
    },
    {
        "type": "ipv4-addr",
        "spec_version": "2.1",
        "id": "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5",
        "value": "<IP_ADDRESS>"
    }
]

The above includes two observations, each of which shares the same SCO.  The return value of the matcher was intended to be explanatory: to help users understand how and why a pattern matched.  So I think output ought to include the observations which bind to the observation expressions and produce the match.  For example, if the pattern were:
[ipv4-addr:value = '<IP_ADDRESS>'] REPEATS 2 TIMES

Then minimal output would be:
[
    {
        "type": "observed-data",
        "spec_version": "2.1",
        "id": "observed-data--1209f166-bba6-4307-a566-60e3a6c39cd2",
        "created": "2022-10-25T08:59:09.295455Z",
        "modified": "2022-10-29T01:53:18.132077Z",
        "first_observed": "2022-11-27T19:50:46.889315Z",
        "last_observed": "2023-01-05T05:35:31.372958Z",
        "number_observed": 1,
        "object_refs": [
            "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
        ]
    },
    {
        "type": "observed-data",
        "spec_version": "2.1",
        "id": "observed-data--9813cee6-9e9d-4199-88d2-a740331fa8a1",
        "created": "2021-09-17T05:06:25.871976Z",
        "modified": "2022-06-19T20:23:09.126157Z",
        "first_observed": "2022-11-05T10:47:16.435447Z",
        "last_observed": "2023-01-17T23:00:47.872163Z",
        "number_observed": 1,
        "object_refs": [
            "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
        ]
    }
]

I would say it is not necessary to return the referenced SCOs as well.
So your characterization of the output as "output is the same list of lists without "observed-data" elements..." is incorrect I think.  I think the bound observed-data objects are the most important things to return.
In the spirit of flexibility, here are some additional input structures.  Output should be the same as long as the content of the input is the same, regardless of how that input is structured.
The following is a list-of-lists structure, where there is one observation and related SCOs per inner list.  This may have been closer to what you were originally thinking?
[
    [
        {
            "type": "observed-data",
            "spec_version": "2.1",
            "id": "observed-data--1209f166-bba6-4307-a566-60e3a6c39cd2",
            "created": "2022-10-25T08:59:09.295455Z",
            "modified": "2022-10-29T01:53:18.132077Z",
            "first_observed": "2022-11-27T19:50:46.889315Z",
            "last_observed": "2023-01-05T05:35:31.372958Z",
            "number_observed": 1,
            "object_refs": [
                "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
            ]
        },
        {
            "type": "ipv4-addr",
            "spec_version": "2.1",
            "id": "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5",
            "value": "<IP_ADDRESS>"
        }
    ],

    [
        {
            "type": "observed-data",
            "spec_version": "2.1",
            "id": "observed-data--9813cee6-9e9d-4199-88d2-a740331fa8a1",
            "created": "2021-09-17T05:06:25.871976Z",
            "modified": "2022-06-19T20:23:09.126157Z",
            "first_observed": "2022-11-05T10:47:16.435447Z",
            "last_observed": "2023-01-17T23:00:47.872163Z",
            "number_observed": 1,
            "object_refs": [
                "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
            ]
        },
        {
            "type": "ipv4-addr",
            "spec_version": "2.1",
            "id": "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5",
            "value": "<IP_ADDRESS>"
        }
    ]
]

With this type of structure the SCO is repeated, making it more verbose.
The above two structures can use bundles, for additional variations (the following leave out some required bundle properties for brevity):
{
    "type": "bundle",
    "objects": [
        {
            "type": "observed-data",
            "spec_version": "2.1",
            "id": "observed-data--1209f166-bba6-4307-a566-60e3a6c39cd2",
            "created": "2022-10-25T08:59:09.295455Z",
            "modified": "2022-10-29T01:53:18.132077Z",
            "first_observed": "2022-11-27T19:50:46.889315Z",
            "last_observed": "2023-01-05T05:35:31.372958Z",
            "number_observed": 1,
            "object_refs": [
                "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
            ]
        },
        {
            "type": "observed-data",
            "spec_version": "2.1",
            "id": "observed-data--9813cee6-9e9d-4199-88d2-a740331fa8a1",
            "created": "2021-09-17T05:06:25.871976Z",
            "modified": "2022-06-19T20:23:09.126157Z",
            "first_observed": "2022-11-05T10:47:16.435447Z",
            "last_observed": "2023-01-17T23:00:47.872163Z",
            "number_observed": 1,
            "object_refs": [
                "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
            ]
        },
        {
            "type": "ipv4-addr",
            "spec_version": "2.1",
            "id": "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5",
            "value": "<IP_ADDRESS>"
        }
    ]
}

and
[
    {
        "type": "bundle",
        "objects": [
            {
                "type": "observed-data",
                "spec_version": "2.1",
                "id": "observed-data--1209f166-bba6-4307-a566-60e3a6c39cd2",
                "created": "2022-10-25T08:59:09.295455Z",
                "modified": "2022-10-29T01:53:18.132077Z",
                "first_observed": "2022-11-27T19:50:46.889315Z",
                "last_observed": "2023-01-05T05:35:31.372958Z",
                "number_observed": 1,
                "object_refs": [
                    "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
                ]
            },
            {
                "type": "ipv4-addr",
                "spec_version": "2.1",
                "id": "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5",
                "value": "<IP_ADDRESS>"
            }
        ]
    },
    {
        "type": "bundle",
        "objects": [
            {
                "type": "observed-data",
                "spec_version": "2.1",
                "id": "observed-data--9813cee6-9e9d-4199-88d2-a740331fa8a1",
                "created": "2021-09-17T05:06:25.871976Z",
                "modified": "2022-06-19T20:23:09.126157Z",
                "first_observed": "2022-11-05T10:47:16.435447Z",
                "last_observed": "2023-01-17T23:00:47.872163Z",
                "number_observed": 1,
                "object_refs": [
                    "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5"
                ]
            },
            {
                "type": "ipv4-addr",
                "spec_version": "2.1",
                "id": "ipv4-addr--0ddfa859-1a40-4aa0-b440-136c498cc5a5",
                "value": "<IP_ADDRESS>"
            }
        ]
    }
]

Again, input structure can be flexible, but should include whatever you think the most likely structure is that users will have, so there is minimal burden imposed on them to transform their content into what the matcher expects.  If it were me, I think I would support the simple flat list/iterable input structure at minimum.

I think the second to last example is what we would like. The observed-data objects are returned along with the unique SCOs that they reference. That is how stix-shifter is returning STIX 2.1 results, and that's based on the examples given in the 2.1 spec.

It looks much better.  Looks like the input requirement is more flexible now but still requires bundles, and requires that an observation and its referenced SCOs can't be split across multiple bundles.  They all have to be together.

Just one observation that I found while implementing this: based on your first example in your last comment, if we have 2 matches for [ipv4-addr:value = '<IP_ADDRESS>'], the matcher will only return first occurrence of the sdo and its referenced cso objects matching the patter. The second observed-data--9813cee6-9e9d-4199-88d2-a740331fa8a1 will not be included in the result. It is filtered out here so the result will look like:

It was intentional to return only the first binding (it was not clear that multiple explanations for a match would be useful; you just needed some explanation to show that the pattern did match).    And it looks like that is still the case, so that's good.
This funny special case (with respect to type_) caught my eye:
https://github.com/baulus/cti-pattern-matcher/blob/55f7c76512f21a188a4ab3b54e22235158e44f7a/stix2matcher/matcher.py#L2210
So there is hard-coding to skip observations and identities as object path types.  Really, you'd want to skip any non-SCO.  But most non-SCOs shouldn't appear in an observation anyway.  There actually is one non-SCO which is legal in a STIX 2.1 observation, and that's a relationship SRO.  So I came up with the following example:
[
    {
        "id": "bundle--c2a23389-17c9-4247-8aa2-d2ffde3de334",
        "type": "bundle",
        "objects": [
            {
                "id": "observed-data--647947aa-4cc3-43a3-a42f-2c670986d777",
                "type": "observed-data",
                "spec_version": "2.1",
                "number_observed": 1,
                "first_observed": "2014-04-19T06:51:26Z",
                "last_observed": "2014-04-19T06:51:26Z",
                "object_refs": [
                    "ipv4-addr--9c61d8ff-21ca-489a-accd-7356c2ea0a7b",
                    "domain-name--57196be9-5512-4867-8c86-8c622c741c31",
                    "relationship--e9a303d2-3b43-4e20-aedd-29cd9afede78"
                ]
            },
            {
                "id": "ipv4-addr--9c61d8ff-21ca-489a-accd-7356c2ea0a7b",
                "type": "ipv4-addr",
                "spec_version": "2.1",
                "value": "<IP_ADDRESS>"
            },
            {
                "id": "domain-name--57196be9-5512-4867-8c86-8c622c741c31",
                "type": "domain-name",
                "spec_version": "2.1",
                "value": "example.com"
            },
            {
                "id": "relationship--e9a303d2-3b43-4e20-aedd-29cd9afede78",
                "type": "relationship",
                "spec_version": "2.1",
                "relationship_type": "related-to",
                "source_ref": "ipv4-addr--9c61d8ff-21ca-489a-accd-7356c2ea0a7b",
                "target_ref": "domain-name--57196be9-5512-4867-8c86-8c622c741c31"
            }
        ]
    }
]

and pattern:
[relationship:relationship_type = 'related-to']

This content is STIX compliant and actually results in a match, but it shouldn't because relationships are not SCOs.

hi @chisholm the recommendations are implemented, please take a look, basically I learn new things about the stix spec as I implement them.
Thanks for the explanation for REPEATS matching results.
For searching in multiple "bundles", at this moment I saw the most efficient to merge multiple bundles into one, once, at the very beginning, and then let the script do the regular matching, rather than modify the script even more to have it searching in all bundles (that might add more complexity).
For the non-SCO types, a list of stopper type names are added, retrieved from cti-stix-validator project . I thought it is not a good idea to include cti-stix-validator module as required only for this purpose.
Please, let me know if the changes are efficient and cover your recommendations.

Yes, I see they are merged, and then re-split into new bundles.  Looks like that issue is now fixed.
Here is a question: according to STIX 2.1 spec section 12.7.1, STIX patterning conformance level 1, which is the minimum level, requires support for all comparison operators.  Are there plans to add support for the EXISTS comparison operator, which was new in 2.1?

Here is a question: according to STIX 2.1 spec section 12.7.1, STIX patterning conformance level 1, which is the minimum level, requires support for all comparison operators. Are there plans to add support for the EXISTS comparison operator, which was new in 2.1?

It would be a good idea to support it but I'd be inclined to open a new issue to add it rather than further block this PR.


Create Base Objects for User and Flight

Problem: No base objects for Users and Flights
Customers should have:

Name
Email
Password
Phone No.
Address
Age
CRUD operations

Flights should have:

Schedule
Number
Origin City
Destination City
Gate
Time in Flight
Number of Seats
Customers on Flight

Customer

[ ] Add Name, Email, Password, Phone Number, Address, Age
[ ] Add CRUD operations

Flight

[ ] Add schedule, number, origin, destination, gate, numSeats, customers
[ ] Add flight distance calculator
[ ] Add flight time calculator
[ ] Add flight schedule display
[ ] Add flight schedule generator

Additional feature add:

[ ] ASCII art functionality for ease of use

Added ASCII art to new ticket

Flight migrated to new ticket


Update Configuration for Tailwind 1.8 and newer

Some welcome simplifications of the CSS pipeline can be made:

remove manual purgecss setup and include 'purge' in the tailwind config (can remove purgcss from list of dependencies as well, as Tailwind installs that automatically)
wrap all the styles I've defined in theme-custom.css around '@layer` directives
check postcss-preset-env for more cool future CSS stuff and evaluate whether I really need precss.

Did the first bullet point, won't touch the second and third in this project.


"Python was not found" error message when running inside virtual environment

When running the command
gimme-aws-creds -k --profile
inside a venv I get the following error with no other details:
Python was not found; run without arguments to install from the Microsoft Store, or disable this shortcut from Settings > Manage App Execution Aliases.
This is a fresh Windows 10 install. Python 3.9.7 and 3.10.0 were just installed under C:. Default installation options and installed for all users. Both Python versions are on PATH.
Running -V commands verifies that both Python installations are available.
gimme-aws-creds is running inside a venv created with Python 3.9 (due to the endless installation bug with 3.10).
Expected Behavior
Generate temporary credentials for the specified profile.
Current Behavior
Error message:
Python was not found; run without arguments to install from the Microsoft Store, or disable this shortcut from Settings > Manage App Execution Aliases.
Steps to Reproduce (for bugs)

py -3.9 -V
py -3.9 -m venv venv
venv\Scripts\activate
pip install gimme-aws-creds
Create okta_aw_login_config under user directory
python -V
pip -V
gimme-aws-creds -k --profile

Your Environment
Brand new Windows 10 laptop (Windows 10 Entreprise 64 bit). Brand new Python 3.9.7 and 3.10.0 installations from the Windows installers. Only non-default options are installing for all users, placing in C:, and checking "add to PATH". gimme-aws-creds was installed using pip inside a virtual environment. virtual environment was Python 3.9.7 because 3.10.0 produces issue #320

You have to modify the file named gimme-aws-creds.cmd. (located probably in the Site folder of your Python environment)
Line 8: for %%j in (python3.%%i) do ( must be changed to for %%j in (python.%%i) do (
In older version of Python, the python executable for Python 3 was named python3.exe to differentiate with Python 2 which was python.exe. The gimme-aws-creds.cmd command file is still looking for this old executable.


Add support for deserializing arrays

Once #97 is merged this can be rebased.
Adds support for fixed-length arrays.
Question for James: are there any other edge cases you can think of that should be tested?

I added some padding fields and verified that this does indeed result in some padding (see below). I'm not 100% sure this covers all the padding-related edge cases we want to test?

I added some padding fields and verified that this does indeed result in some padding (see below). I'm not 100% sure this covers all the padding-related edge cases we want to test?

This is what I was asking for; I don't know that it covers every possible weird padding/alignment thing, but mostly this should confirm that the new code is handling padding correctly so long as flatc is generating the schemas correctly.


File name hint provided when a scene is saved is not displayed/given

Godot version
4.2.dev.4
System information
Windows 11
Issue description
When you save a scene, then in the file save dialog the file name is provided based on the root node.
e.g.,
if root node is SomeName then typically based on the settings the hint will be some_name.tscn
This is no more available as part of 4.2.dev.4, but working in 4.1.1
Steps to reproduce

Create a Project
Create a Scene
Add a node and name something like SomeName
Now Save the Scene
Expected to provide a hint like in 4.1.1 as some_name.tscn, but it will not show in the save dialog.

Minimal reproduction project
N.A

Thanks for opening a bug report. This is a duplicate of https://github.com/godotengine/godot/issues/81225, so I'm going to close this to consolidate the discussion.


Stacks not showing anymore after updating to 1.3.4

⚠ Please verify that this bug has NOT been reported before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

Description
I ran docker-compose pull && docker-compose up -d to update Dockge, but now my stacks aren't showing in Dockge.

👟 Reproduction steps
docker compose pull && docker compose up -d
👀 Expected behavior
Update dockge
😓 Actual Behavior
Stacks showing
Dockge Version
1.3.4
💻 Operating System and Arch
Ubuntu 23.10
🌐 Browser
Google Chrome 119.0.6045.200
🐋 Docker Version
24.0.7
🟩 NodeJS Version
No response
📝 Relevant log output
No response

I have the same issue on Raspberry Pi 4B. The subdirectory /stack has not been created on the host. I used the following command to pull image and create container: docker compose up -d.
The compose.yaml file is:
version: "3.8"
services:
  dockge:
    image: louislam/dockge:latest
    restart: unless-stopped
    ports:
      - 5001:5001
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /home/dockge/data:/app/data
      - /home/docker/stacks:/home/docker/stacks
    environment:
      # Tell Dockge where to find the stacks
      - DOCKGE_STACKS_DIR=/home/docker/stacks

I cannot reproduce. I suspected it is related to #299.
Can you show the output of this?
docker compose ls

You can downgrade by changing the image to image: louislam/dockge:1.3.3 at this moment.

Looks normal, can you try this command in the Dockge's console?
http://hostname:5001/console

That is weird...
It said the --all is a unknown flag
Could you also try this in Dockge's console
docker compose ls --all

docker compose version

Like this ?

Thanks, that is helpful. I think the problem is #303. I was trying to update the docker compose without Debian repo (it is still in old version).
For some reason, it is working on all my intances (armv7, arm64, amd64)
I am going to rollback it now. I will release 1.3.5 soon.

1.3.5 has been released.
Docker Compose should be downgraded back to v2.21.0.

Updated to version 1.3.5, it works fine now, thanks.


Make historical records' m2m fields type-compatible with non-historical

Fixes #1186

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have run the pre-commit run command to format and lint.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] I have added my name and/or github handle to AUTHORS.rst
[ ] I have added my change to CHANGES.rst
[ ] All new and existing tests passed.

Is this something you are still working on? We'll need to update the documentation and determine if this needs a deprecation path. The tests seem to indicate we may be changing an interface.


[Bug]: segmentation fault MC3 package after running light curves

FAQ check

[X] Yes, I checked the FAQ and my question has not been addressed.

Instrument
Light curve fitting (Stages 4-6)
What happened?
I get a segmentation fault after running light curve fits (same for dynesty and emcee, and not on all light curves) and I traced down to MC3 package.
It's the function from MC3 from mc3.stats import time_avg that causes it, previous Allan plot looks fine so I'm not sure what the issue is that MC3 crashes - is it a Eureka! or a MC3 problem? Either way it's flagged this way.
I created a new conda environment and new installation and it still pops up.
Error traceback output
When running with gdb:
EMCEE RESULTS:
rp: 0.09314383900504214 (+0.00023746832716464716, -0.00024390231091873937)
t0: 60336.16629344476 (+0.0001366072174278088, -0.00014108874165685847)
inc: 86.14041037419365 (+0.03564806637537288, -0.03959720206140105)
a: 7.5178380816512576 (+0.012216578350765062, -0.012060384627009313)
u2: 0.0596876616903001 (+0.01720078126260373, -0.016858445839115672)
c0: 1.0037328901325697 (+3.041406496073762e-05, -2.8784564057193762e-05)
c1: -0.00018125230315689576 (+0.00021138404946226995, -0.00022132731635158144)
scatter_mult: 4.604809762772209 (+0.1430173800715835, -0.12412840317554785);<PHONE_NUMBER>63214 (+15.212425121351847, -13.203248708624503) ppm
Program received signal SIGSEGV, Segmentation fault.
0x00007ffe987d7c1e in invgamma ()
from /home/ahrer/.conda/envs/eureka-dev/lib/python3.9/site-packages/mc3/lib/_time_averaging.cpython-39-x86_64-linux-gnu.so
What operating system are you using?
Linux
What version of Python are you running?
Python 3.9.7
What Python packages do you have installed?
No response
Code of Conduct

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

@evamariaa, can you see if Kevin's tweak in PR #609 for the file src/eureka/S5_lightcurve_fitting/plots_s5.py fixes this issue for you?

Ok, just installed from PR https://github.com/kevin218/Eureka/pull/609 and running through Stage 5 now, so far I didn't get a segmentation fault yet so I'm cautiously optimistic and will let you know if it stays like this! Thanks!

Same problem, but using MacOS.

Can one or both of you please try the code in PR #609 and confirm that the problem is resolved for you if you use that version of the code? We'll hopefully have this bug patched ASAP

I just merged #609 into the Main branch.  Try updating your version of Eureka! and let me know if you still have problems.

Did your installation of mc3 succeed? It looks to me like you might've been missing a C compiler or something which meant mc3 didn't finish installing or something

@evamariaa, can you confirm whether this issue is resolved now?

I just updated to the latest version of Eureka! on my Linux machine and I'm getting a similar error.

ImportError: /opt/anaconda3/envs/eureka/lib/python3.9/site-packages/mc3/lib/_binarray.cpython-39-x86_64-linux-gnu.so: undefined symbol: _ZGVbN2v_exp

I can confirm that I have a valid C compiler, so maybe this is a Linux issue.

Interesting, I'm running Ubuntu on Windows Subsystem for Linux which should be sufficiently similar to have encountered such an issue on my end if it were a Linux-based issue. I can try reproducing this with a Docker build though to reduce the number of unknowns.

@taylorbell57 I'm also getting this now, on Ubuntu/WSL.

I pushed a workaround to Main, so updating Eureka! should "fix" the problem until we find a more permanent solution.

@kevin218 and @jbrande, did you get those ImportError messages when importing Eureka! or when it came to finally making the plot? Just need to know where it was happening so I can figure out if/when I've reproduced the issue

The error is on import. If it fails, you'll get a warning message that states MC3 failed to import.

I just created a new conda environment and performed a fresh install using Python 3.10 and has no issues importing MC3.  Perhaps MC3 has compatibility issues with Python 3.9.

Sorry for the delay on this, this got a little bit lost in my to-do list.
I did what you said Taylor, did a fresh install of Eureka with a new conda environment and python 3.10 and ran from mc3.stats import time_avg and that ran without an error!

Alright, since two of you who previously had issues with this no longer do after creating a new conda environment, I'm going to close this issue as it seems not to be reproducible anymore. If anyone re-encounters this issue, feel free to leave a comment and we can re-open this issue


Fix requirements + add Colab

Same as the other fork, fixed the requirements and added an example colab notebook

Changed to gdown, added colab file to demo folder


[WIP] Initial work on ordered_use_length fixer

This is currently broken and the test cases are totally wrong. This is a wip...

out of curiosity... any framework use that kind of import sorting ?

out of curiosity... any framework use that kind of import sorting ?

Yep, laravel.

We're moving to PSR-2 for laravel 5.1, but we also need some other fixers, like this one :)

I will start again on this in July when I have way, way more time.

Or just consider using current ordered_use fixer ;)
It will need less time to do so ;)

@keradus If it were up to me, we would, but Taylor wants ordered by length...

OK, I see.
It is always great to have sth standarized and automated ;)


Add manual testing instructions in DG for delete, deleteModule, find

Closes #248.

Codecov Report

Merging #270 (9cae15c) into master (63cfcb7) will increase coverage by 2.36%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #270      +/-   ##
============================================
+ Coverage     70.41%   72.78%   +2.36%
- Complexity      727      754      +27
============================================
  Files           105      105
  Lines          2434     2436       +2
  Branches        325      325
============================================
+ Hits           1714     1773      +59
+ Misses          596      537      -59
- Partials        124      126       +2

Impacted Files
Coverage Δ

...rc/main/java/seedu/address/model/ModelManager.java
89.89% <0.00%> (+14.14%)
:arrow_up:

...n/java/seedu/address/model/AddressBookHistory.java
54.54% <0.00%> (+29.54%)
:arrow_up:

...a/seedu/address/logic/commands/HistoryCommand.java
83.33% <0.00%> (+66.66%)
:arrow_up:

...java/seedu/address/logic/commands/UndoCommand.java
77.77% <0.00%> (+66.66%)
:arrow_up:

.../main/java/seedu/address/model/CommandHistory.java
100.00% <0.00%> (+76.00%)
:arrow_up:

...du/address/logic/commands/ConfirmClearCommand.java
100.00% <0.00%> (+83.33%)
:arrow_up:

Continue to review full report at Codecov.

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


chore: add more pre-commit checks

check yaml documents
check json documents
remove trailing whitespaces

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[Monorepo] ESlint Nullish Operator

Add the nullish coalescing operator preferred rule to ESLint

+1 for erroring. Use //ignore comments to exempt and justify when we need to disable the check for particular code

Going to rework this another time.


bazel_5: get libtool from path

Description of changes
We're resolving most cc toolchain tools from the path and environment variables, but we hardcode libtool. This makes it hard to point libtool to the specific one you need, for example to work around issues like https://github.com/NixOS/nixpkgs/pull/180251#issuecomment-1200096413. Make it consistent by getting libtool from path too, like other cc toolchain tools.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

@ofborg build python3packages.jaxlib

@ofborg build python3Packages.jaxlib

Sent upstream too: https://github.com/bazelbuild/bazel/pull/16010, https://github.com/bazelbuild/rules_cc/pull/135.


Add my first file

I have created a new branch, created a file, and made a commit !!

Just trying to learn about how it goes generally


Enable usage of brm as a single-file executable so there is no .NET requirement

Created out of #192
It would be great to ship brm as a self-contained binary (or better yet as part of the bicep CLI). This will allow us to expose the generation and validation capabilities more broadly. You can imagine a command like:
az bicep publish --generate ...

Dear @alex-frankel, Azure Verified Modules (AVM) will become the single Microsoft standard for Bicep modules. Transitioning to AVM, requests for new features or bug fixes will need to be submitted against the appropriate AVM module via AVM Module Issues.
As part of this transition, the new AVM CI environment is replacing the existing CI formerly leveraged within the Bicep Registry Modules (BRM) repository. As a result of this, issues and features related to the existing BRM CI will be closed. If you think your issue still needs addressing, please raise a new issue related to the AVM CI, here.
See this informational notice for more details on the upcoming changes.
Thank you for your understanding!


Trivial fix according to discussion about init-containers (#12)

@PiotrProkop
Signed-off-by: DTadrzak<EMAIL_ADDRESS>

According to #12

LGTM.


Improve loading time for images

Currently, images take a while to load as they're quite large. Can we compress the images when they are committed using a GitHub action to improve loading speeds?

Do we need to run a compression when something is pushed to the main branch or do we need this during something else too?


kmeans2 '++' method is orders of magnitude slower than sklearn.cluster.KMeans()

The implementation of kmeans that uses the '++' method is orders of magnitude slower than the same algorithm in sklearn.cluster.KMeans(). This happens when n_clusters>10 in the code below.
With a 'random' initialization scipy's method is faster, so the problem is with '++'.
Reproducing code example:

import numpy as np
from sklearn.cluster import KMeans
from scipy.cluster.vq import kmeans2
import time as t

N = 1000
data = np.random.uniform(0., 1., (N, 4))

n_clusters = 50

s = t.time()
centroid, labels1 = kmeans2(
    data, n_clusters, minit='++', iter=10, thresh=1.e-4)
print("scipy:", t.time() - s)

s = t.time()
# KMeans
model = KMeans(n_clusters=n_clusters, init='k-means++', n_init=10, tol=1.e-4,
    max_iter=1000, verbose=0)
model.fit(data)
labels2 = model.labels_
print("sklearn", t.time() - s)

Scipy/Numpy/Python version information:

1.4.1 1.18.1 sys.version_info(major=3, minor=7, micro=6, releaselevel='final', serial=0)

Hello,
Is this a good first issue to pick? :)

Fixed by gh-11982. Thanks @jjerphan, and thanks for reporting @Gabriel-p


Tree widget: Categories tree doesn't react to Category visibility changes from Models tree

http://localhost:3000/?iTwinId=b391ba44-add7-47a0-8375-f2889a3540e8&iModelId=ba504f88-a479-4156-9d81-658ee169588e

Just to explain what's happening there...
The Categories tree just shows a list of categories, one category can only show up once in the hierarchy. Categories visibility is determined purely by looking at categories' selector.
The Models tree shows categories under models, and the same category may appear multiple times under different models. When user turns off visibility of category in this tree, we're not really turning off the whole category in categories' selector, but only its intersection with the parent model. As a result, that change is not noticed by the Categories tree.


Demo analytics code

We could/should have a quick example of how to add analytics. We don't need to pick a provider, let's leave that to the user. But for a SvelteKit noob, we can tell them where to put it.
Tasks:

[ ] Add comment where the analytics JS code should be injected. Probably app.html? Can be as simple as
[ ] Add a step in README guide for replacing that comment with the tracker of your choice, with links to GA, PostHog, Plausible docs for getting your code/ID.

#159 Is something like this too complicated?


feat(protocol-kit): smart contract signatures (EIP-1271)

What it solves
Currently we do not support off-chain signing for smart contract owners using EIP-1271.
Resolves #407
How this PR fixes it

Adds new dynamic SmartContractSafeSignature
When adding a signature to a transaction we check if the signer address is a smart contract and if it is we use the new signature for smart contracts

Todo

[ ] Extend e2e test with a test for nested Safes
[ ] Check isValidSignature before adding the signature?
[ ] Copy new signatures correctly
[ ] Build SafeTransaction from transaction service response correctly

Implemented in https://github.com/safe-global/safe-core-sdk/pull/556


Job Listing Cards (do after issue-53)

Please do work for this task in a branch named issue-54.

[x] Create a Job Posting card, data from Job Posting form (JobCollection)
[x] Display Job Posting card on Job Listings page on Navbar

Job Listing page not implemented.


Analyzing tainted variables

Hi everyone! Are there any guides or documentations that I can read on how FBinfer performs checks on tainted variables that I can learn from and hopefully contribute back to the site.
Thank you very much!

+1
I would love to know more too. It shows that some db variables are reaching sensitive functions. But which db variables are flagged and which are not isn't clear. A little more information can help me getting these issues fixed by developers. Clearly, this category is very important from security context. A little help from the community in understanding these issues, would go a long way.
Thanks everyone!

The taint analysis is an experimental feature that's still under development, but I can share a few details on what it can do now.

The taint checks Infer does fall into two categories: security and privacy. Security checks ensure that user-controlled input does not flow to sensitive functions, and privacy checks ensure that sensitive user data does not escape to the outside.

There are a few built in taint checks in the open-source version of Infer (most notably, the SSL hostname verification check), but you can also specify your own sources and sinks using the PrivacySource, PrivacySink, IntegritySource, and IntegritySink annotations. Once you add these annotations, Infer will report source-sink flows between the annotations.

At the theoretical level, the taint analysis works using the same bi-abduction technique that Infer uses to compute function pre and postconditions. When the analysis encounters a taint sink, it generates a proof obligation that flows into that sink are untainted, and it propagates that proof obligation into the precondition. When applying that precondition at a call site where the precondition cannot be met, Infer will report a warning.

@sblackshear Thank you very much for your reply! Just one clarification for

Once you add these annotations, Infer will report source-sink flows between the annotations.

Does it mean I do not need to change anything on the OCaml code? Or in the OCaml code I have to do some changes as well?
Right now I am trying to implement a checker that will detect the tainted variables that was brought over from one function to another function.

![Image of checker]
(http://i.imgur.com/Dpq07Nv.png)
Like from the above image, inside one of my function it will call AsyncTask.get() which will return an object,
and the checker's code to identify the AsyncTask.get is
let do_instr node = function
    | Sil.Call (_, Sil.Const (Sil.Cfun pn), _, loc, _) when
          Procname.java_async_method pn ->
        (* How may I continue from here to get the returned variable
         from async which is a File Object and access it at the box in green*)
    | _ -> () in
Cfg.Procdesc.iter_instrs do_instr proc_desc

The functionality for propagating tainted sources to tainted sinks lives in the main bi-abduction analysis, so you won't be able to leverage it from a custom checker.
I don't fully understand what you are trying to do with your checker, but if you explain a bit more I can try to help.

I would like to implement a checker such that it is able to detect programs that attempt to download files over the internet and perform operations (e.g. unzipping or executing) with the files that have been downloaded.
Hence the thoughts of utilizing and tracking tainted variables would be very useful to detect such patterns.

If you want to implement such a checker from scratch, Infer's abstract interpretation framework for checkers would be quite suitable for this. See liveness.ml for an example of a simple AbsInt checker and annotationReachability.ml for an example of a more advanced one.
However, if you want to take advantage of Infer's builtin capabilities for propagating taint, you'll have to build your checker on top of the core bi-abduction algorithm. This would probably be simpler; you should just need to add the methods you care about as sources and sinks. See inferTaint.ml for examples of how to to this.

Thank you very much, I will go take a closer look at these files, by the way, has inferTaint.ml been renamed? I could not find it in the current sources.

Sorry, I meant taint.ml.
You need to include the android JAR and Infer annotations JAR to compile this file. You can take a look at the BUCK file that runs the test to see the compilation command that is used.

Closing for now; please feel free to open a new issue if you have additional questions.

Hello! Just a quick question, is it feasible to use taint analysis engine of Infer at this point?


bgzclone missing

Tried to use Menu->Clone and bgzclone is missing.  Looked in the repo and didn't find it anywhere.

The Clone operation has to be done from Repository option 2 on Git Interface Primary Option Menu,
or if you are usingthe action bar Menu--> 3. Git Repository.
On the Git Repository panel, you'll have to use the first blank line on the list to clone a repository to a working directory of your choice.
I confirm there is no BGZCLONE module in ISPF Git, and we'll have to remove this wrong choice "2. Git Clone" on the action bar Menu.

I have fixed this by exiting out gracefully if the BGZCLONE table is already open. These Menu options are actually not very useful in this client. You are generally in a repo, so can't switch to the init or repos options as the BGZCLONE table is already in use. The only option you can really go to is preferences. But was too hard to rebuild all the DTL!


Fatal Python error: Illegal instruction

**Home Assistant 2021.2.3

Version
core-2021.2.3

Installation Type
Home Assistant OS

Development
false

Supervisor
true

Docker
true

Virtual Environment
false

Python Version
3.8.7

Operating System Family
Linux

Operating System Version
5.4.94

CPU Architecture
x86_64**

Version of the custom_component
Current version: 1.11
Configuration
default
Describe the bug
Frigate upon starting generates this error then fails to start.
Debug log
**Logger: libav.tcp
Source: components/stream/worker.py:79
First occurred: 3:22:46 PM (5 occurrences)
Last logged: 3:24:36 PM
Connection to tcp://<IP_ADDRESS>:554?timeout=5000000 failed: Host is unreachable**
##Add your logs here.

Starting nginx nginx
...done.
Fatal Python error: Illegal instruction
Current thread 0x00007fa39631a740 (most recent call first):
File "", line 219 in _call_with_frames_removed
File "", line 1101 in create_module
File "", line 556 in module_from_spec
File "", line 657 in _load_unlocked
File "", line 975 in _find_and_load_unlocked
File "", line 991 in _find_and_load
File "", line 219 in _call_with_frames_removed
File "", line 1042 in _handle_fromlist
File "/usr/local/lib/python3.8/dist-packages/tflite_runtime/interpreter.py", line 36 in
File "", line 219 in _call_with_frames_removed
File "", line 783 in exec_module
File "", line 671 in _load_unlocked
File "", line 975 in _find_and_load_unlocked
File "", line 991 in _find_and_load
File "/opt/frigate/frigate/edgetpu.py", line 15 in
File "", line 219 in _call_with_frames_removed
File "", line 783 in exec_module
File "", line 671 in _load_unlocked
File "", line 975 in _find_and_load_unlocked
File "", line 991 in _find_and_load
File "/opt/frigate/frigate/app.py", line 19 in
File "", line 219 in _call_with_frames_removed
File "", line 783 in exec_module
File "", line 671 in _load_unlocked
File "", line 975 in _find_and_load_unlocked
File "", line 991 in _find_and_load
File "/opt/frigate/frigate/main.py", line 7 in
File "/usr/lib/python3.8/runpy.py", line 87 in _run_code
File "/usr/lib/python3.8/runpy.py", line 194 in _run_module_as_main

@ionultd is this still an active issue? This is the repo for the Home Assistant integration for Frigate, and those logs appear to be for Frigate itself. If this is stale or not reproducible, would you mind closing it? If it's a bug report for Frigate itself, please file at https://github.com/blakeblackshear/frigate . Thanks!


Update primercss.io website

Make primercss.io a 1 page overview & archive old website
It's been killing me for a while that we have such an out of date public website. Most primer modules have up-to-date style documentation that is a lot more useful than the out of date website, and it's probably not very obvious to people that those docs are there.
We're making good progress on the new documentation website and our intention was to make primercss.io a 1 pager of information with links to install and overview of packages, and then link to the new style guide documentation. This update sets us up for that.
In this pr

archives old site, with link to it in case people still want to access it
makes primercss.io a 1 page overview with summary of packages, links to all the useful things such as installation instructions, the changelog, and all the modules.
uses latest primer-css styles

This is what it looks like:

For a more robust implementation we should automate the list of modules in each meta-package as well as version numbers. I think this static page will do for now, but we could probably make this a jekyll site and borrow some of the scripts we're using in the new documentation to keep this up-to-date.
⚠ This pr should not be shipped until we ship the 9.3.0 release which will contain the remaining documentation and consolidated changelog.
To do

[ ] check the css maps correctly to the archived site - cc @jonrohan for halp with this
[ ] Ship primer-css 9.3.0

cc @primer/design-systems

Is the intent to host any future Primer documentation on this site, or is it all going in our upcoming styleguide redesign?

@mdo The intention is to host all style documentation and design guidelines in the new style guide, and for primer.io to be a 1 page overview of packages, and perhaps installation instructions, and to link to the style guide from there.

Thanks @jonrohan - I realized I didn't map any of the urls and meant to comment, will fix those up.

@jonrohan @shawnbot I tried adding a package.json on this branch and installing primer but it gets "confused" and picks up node modules for dependencies from other branches (such as lerna and storybook). I think it might be better to move the website to it's own separate repo, that would also allow us to use gh pages to publish storybook or other pages that we want to look nice  (the readme or /docs folder can be published and it uses primer markdown styles, here's an example from another repo). I'll add this to the agenda for our sync today.

Closing this in favor of https://github.com/primer/primercss.io/pull/1


Avoid hit-Enter prompt with "Running: …" message

Without this patch the "echo" might trigger a
"Press ENTER or type command to continue" before running the command.
Ref: https://github.com/neovim/neovim/pull/10845
NOTE: when using the 'highlight' flag (not on by default), the feedkeys() for setting hls overwrites/clears it anyway (https://github.com/mhinz/vim-grepper/blob/ebe6d1ffd1fb2faada867c56a55f44cbaa0248e3/plugin/grepper.vim#L710).

Thanks! ✨


fix: Remote file transfer strategy refactoring

closes https://github.com/ansys/pyfluent/issues/2710 https://github.com/ansys/pyfluent/issues/2711 https://github.com/ansys/pyfluent/issues/2721

Remote FTS was running in the background even after calling session.exit() or session.force_exit() in the wsl. Now it is deleted after calling session.exit() or session.force_exit()
Nightly Dev Test Fix - Runners are subject to change for each CI therefore this scenario is handled now.
More configuration options are provided for remote file transfer startegy.

Do we need these being printed to the user console?
I believe these should only show up in debug logging calls

Point 1 - related to [2024-04-18 08:12:49.360737] [0x0000000000de8500] [info]    File transfer server started.
We had a user requirement to get information about file upload/download progress therefore we are running this gRPC FTS container without detach mode.
Point 2 - related to
>>> solver.exit()
>>> 67bfe7fb1fe2

This is docker's default behavior. Docker return ID of container when we use docker kill <id>

This is docker's default behavior. Docker return ID of container when we use docker kill <id>

The Docker API provides a container stop method that doesn't do this, can we use that or does the current implementation not allow this?

This is docker's default behavior. Docker return ID of container when we use docker kill <id>

The Docker API provides a container stop method that doesn't do this, can we use that or does the current implementation not allow this?

@raph-luc
I have tried docker stop but gRPC FTS is not terminated, it is still running. It terminates only using docker kill

Thanks for the suggestion.

This is docker's default behavior. Docker return ID of container when we use docker kill <id>

The Docker API provides a container stop method that doesn't do this, can we use that or does the current implementation not allow this?

@raph-luc
I have tried docker stop but gRPC FTS is not terminated, it is still running. It terminates only using docker kill

Thanks for the suggestion.

@raph-luc Ok. It is terminated now.
docker stop takes some time where as docker kill terminates it quickly. Ultimately both uses SIGKILL behind the scene. Thank you.

Do we need these being printed to the user console?
I believe these should only show up in debug logging calls

@raph-luc This is not appearing as we are using Docker SDK now. Thank you.

This is docker's default behavior. Docker return ID of container when we use docker kill <id>

The Docker API provides a container stop method that doesn't do this, can we use that or does the current implementation not allow this?

@raph-luc Done. Thank you.

Not sure if the permission issue in self-hosted runs
PermissionError: [Errno 13] Permission denied: '/home/ansys/.local/share/ansys_fluent_core/examples/serverinfo-ggcxfjqg.txt'

started coming from this PR. Probably the permission of EXAMPLES_PATH directory is somehow changed.

As I have tested, the file-transfer container doesn't support a graceful stop. I passed a large value to the -t parameter of docker stop and it is waiting for that many seconds. So, we can replace docker stop with docker kill, because docker stop will anyway do a forced stop (equivalent to docker kill) after a default grace period. This will reduce the time to exit() and will probably fix the failing test.

@hpohekar @PipKat note that some of these doc suggestions are for docstrings copied from src\ansys\fluent\core\launcher\fluent_container.py. The final docstring updates should therefore be made in both locations (as applicable). Perhaps we can do that in a separate PR to avoid bundling unrelated changes in this PR.

@hpohekar @PipKat note that some of these doc suggestions are for docstrings copied from src\ansys\fluent\core\launcher\fluent_container.py. The final docstring updates should therefore be made in both locations (as applicable). Perhaps we can do that in a separate PR to avoid bundling unrelated changes in this PR.

I'm fine with that. I assume that the changes only need to made in src\ansys\fluent\core\launcher\fluent_container.py and will then somehow eventually get copied to here? Is this something that you need or want me to do--or will you or the PyFluent team take care of it?

@PipKat we will take care of it, what I meant is the changes to the docstrings being made here should later be applied to the location where these docstrings were copied from (fluent_container.py).

As I have tested, the file-transfer container doesn't support a graceful stop. I passed a large value to the -t parameter of docker stop and it is waiting for that many seconds. So, we can replace docker stop with docker kill, because docker stop will anyway do a forced stop (equivalent to docker kill) after a default grace period. This will reduce the time to exit() and will probably fix the failing test.

Yes, right. All tests are passing after using 'docker kill`. Thanks a lot for having look into it.

Not sure if the permission issue in self-hosted runs
PermissionError: [Errno 13] Permission denied: '/home/ansys/.local/share/ansys_fluent_core/examples/serverinfo-ggcxfjqg.txt'

started coming from this PR. Looks like the permission of EXAMPLES_PATH directory is somehow changed:
ansys@pyfluent-ci-3:~$ ls -ltr /home/ansys/.local/share
total 20
drwxr-xr-x 3 ansys ansys 4096 Feb  9  2023 pyvista
drwxr-xr-x 2 ansys ansys 4096 Jul 31  2023 ansys_tools_path
drwxr-xr-x 3 ansys ansys 4096 Sep 22  2023 ansys_mapdl_core
drwxr-xr-x 4 ansys ansys 4096 Mar 29 10:09 virtualenv
drwxr-xr-x 4 ansys ansys 4096 Apr 18 19:19 ansys_fluent_core
ansys@pyfluent-ci-3:~$ ls -ltr /home/ansys/.local/share/ansys_fluent_core/
total 44
drwxr-xr-x 4 ansys ansys 36864 Jun 13  2023 examples.bkp
drwxr-xr-x 2 root  root   4096 Apr 18 19:19 examples

I have cleaned up the examples path within the runners, will keep checking what is going on.

@mkundu1
This is happened again.

I have cleared examples folder and changed it's read-write permission then this issue is resolved.
No idea why this is happening to this PR particularly.


Running dep i removes exports from already-installed libraries

When dep i is run, new libraries are properly exported, but the exports of previously installed libraries are destroyed and not re-exported.

Fixed in https://github.com/finwo/dep/commit/57dfc5988165705bdaa338b727650aaf044d19ac


aur-repo: bsdtar errors on packages not available in repo

Simple way to reproduce:
aur sync -d custom <package not in custom>

bsdtar: */desc: Not found in archive
bsdtar: Error exit delayed from previous errors.

Correction to the above: it only happens on an empty repository, not a new package


Fix relative path zipping

Addresses relative path zipping mentioned in https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/issues/3137#issuecomment-2211107551

GH still failing with weird error, doesn't seem to be our issue. Tests pass locally on both macOS and Linux.

❯ docker run --rm -v "$PWD":/host -w /host swift:5.10.0-amazonlinux2 swift test

warning: 'host': dependency 'swift-crypto' is not used by any target
[0/1] Planning build
[1/1] Compiling plugin AWSLambdaPackager
Building for debugging...
[1/5] Write sources
[2/5] Write swift-version-24593BA9C3E375BF.txt
[4/7] Compiling DocUploader Version.swift
[5/8] Emitting module DocUploader
[6/8] Compiling DocUploader DocUploader.swift
[7/18] Wrapping AST for DocUploader for debugging
[9/22] Compiling Executable main.swift
[10/22] Emitting module Executable
[11/23] Emitting module DocUploaderTests
[12/23] Compiling DocUploaderTests DocUploaderTests.swift
[14/23] Write Objects.LinkFileList
[16/18] Linking doc-uploader
[17/18] Linking DocUploaderPackageTests.xctest
Build complete! (9.31s)
Test Suite 'All tests' started at 2024-07-06 11:37:25.906
Test Suite 'debug.xctest' started at 2024-07-06 11:37:25.907
Test Suite 'DocUploadBundleTests' started at 2024-07-06 11:37:25.907
Test Case 'DocUploadBundleTests.test_String_pathEncoded' started at 2024-07-06 11:37:25.907
Test Case 'DocUploadBundleTests.test_String_pathEncoded' passed (0.001 seconds)
Test Case 'DocUploadBundleTests.test_init' started at 2024-07-06 11:37:25.907
Test Case 'DocUploadBundleTests.test_init' passed (0.001 seconds)
Test Case 'DocUploadBundleTests.test_issue_10' started at 2024-07-06 11:37:25.908
Test Case 'DocUploadBundleTests.test_issue_10' passed (0.0 seconds)
Test Suite 'DocUploadBundleTests' passed at 2024-07-06 11:37:25.909
Executed 3 tests, with 0 failures (0 unexpected) in 0.002 (0.002) seconds
Test Suite 'ZipTests' started at 2024-07-06 11:37:25.909
Test Case 'ZipTests.test_unzip' started at 2024-07-06 11:37:25.909
Test Case 'ZipTests.test_unzip' passed (0.002 seconds)
Test Case 'ZipTests.test_zip_roundtrip' started at 2024-07-06 11:37:25.911
Test Case 'ZipTests.test_zip_roundtrip' passed (0.005 seconds)
Test Case 'ZipTests.test_zip_roundtrip_shellTool' started at 2024-07-06 11:37:25.916
/host/Tests/DocUploadBundleTests/ZipTests.swift:92: ZipTests.test_zip_roundtrip_shellTool : Test skipped: required true value but got false
Test Case 'ZipTests.test_zip_roundtrip_shellTool' skipped (0.0 seconds)
Test Case 'ZipTests.test_zip_roundtrip_shellTool_relative_paths' started at 2024-07-06 11:37:25.916
/host/Tests/DocUploadBundleTests/ZipTests.swift:143: ZipTests.test_zip_roundtrip_shellTool_relative_paths : Test skipped: required true value but got false
Test Case 'ZipTests.test_zip_roundtrip_shellTool_relative_paths' skipped (0.0 seconds)
Test Suite 'ZipTests' passed at 2024-07-06 11:37:25.916
         Executed 4 tests, with 2 tests skipped and 0 failures (0 unexpected) in 0.007 (0.007) seconds
Test Suite 'DocUploaderTests' started at 2024-07-06 11:37:25.916
Test Case 'DocUploaderTests.test_logUrl' started at 2024-07-06 11:37:25.916
Test Case 'DocUploaderTests.test_logUrl' passed (0.0 seconds)
Test Case 'DocUploaderTests.test_reportResult' started at 2024-07-06 11:37:25.916
Test Case 'DocUploaderTests.test_reportResult' passed (0.014 seconds)
Test Suite 'DocUploaderTests' passed at 2024-07-06 11:37:25.930
         Executed 2 tests, with 0 failures (0 unexpected) in 0.014 (0.014) seconds
Test Suite 'debug.xctest' passed at 2024-07-06 11:37:25.930
Executed 9 tests, with 2 tests skipped and 0 failures (0 unexpected) in 0.023 (0.023) seconds
Test Suite 'All tests' passed at 2024-07-06 11:37:25.930
Executed 9 tests, with 2 tests skipped and 0 failures (0 unexpected) in 0.023 (0.023) seconds

✦ ❯ swift test
warning: 'spi-doc-uploader': dependency 'swift-crypto' is not used by any target
Building for debugging...
[31/31] Applying doc-uploader
Build complete! (18.75s)
Test Suite 'All tests' started at 2024-07-06 13:38:17.682.
Test Suite 'DocUploaderPackageTests.xctest' started at 2024-07-06 13:38:17.682.
Test Suite 'DocUploadBundleTests' started at 2024-07-06 13:38:17.682.
Test Case '-[DocUploadBundleTests.DocUploadBundleTests test_init]' started.
Test Case '-[DocUploadBundleTests.DocUploadBundleTests test_init]' passed (0.001 seconds).
Test Case '-[DocUploadBundleTests.DocUploadBundleTests test_issue_10]' started.
Test Case '-[DocUploadBundleTests.DocUploadBundleTests test_issue_10]' passed (0.000 seconds).
Test Case '-[DocUploadBundleTests.DocUploadBundleTests test_String_pathEncoded]' started.
Test Case '-[DocUploadBundleTests.DocUploadBundleTests test_String_pathEncoded]' passed (0.000 seconds).
Test Suite 'DocUploadBundleTests' passed at 2024-07-06 13:38:17.684.
	 Executed 3 tests, with 0 failures (0 unexpected) in 0.001 (0.001) seconds
Test Suite 'DocUploaderTests' started at 2024-07-06 13:38:17.684.
Test Case '-[DocUploaderTests.DocUploaderTests test_logUrl]' started.
Test Case '-[DocUploaderTests.DocUploaderTests test_logUrl]' passed (0.000 seconds).
Test Case '-[DocUploaderTests.DocUploaderTests test_reportResult]' started.
Test Case '-[DocUploaderTests.DocUploaderTests test_reportResult]' passed (0.003 seconds).
Test Suite 'DocUploaderTests' passed at 2024-07-06 13:38:17.687.
	 Executed 2 tests, with 0 failures (0 unexpected) in 0.003 (0.003) seconds
Test Suite 'ZipTests' started at 2024-07-06 13:38:17.687.
Test Case '-[DocUploadBundleTests.ZipTests test_unzip]' started.
Test Case '-[DocUploadBundleTests.ZipTests test_unzip]' passed (0.003 seconds).
Test Case '-[DocUploadBundleTests.ZipTests test_zip_roundtrip_shellTool_relative_paths]' started.
Test Case '-[DocUploadBundleTests.ZipTests test_zip_roundtrip_shellTool_relative_paths]' passed (0.006 seconds).
Test Case '-[DocUploadBundleTests.ZipTests test_zip_roundtrip_shellTool]' started.
Test Case '-[DocUploadBundleTests.ZipTests test_zip_roundtrip_shellTool]' passed (0.005 seconds).
Test Case '-[DocUploadBundleTests.ZipTests test_zip_roundtrip]' started.
Test Case '-[DocUploadBundleTests.ZipTests test_zip_roundtrip]' passed (0.003 seconds).
Test Suite 'ZipTests' passed at 2024-07-06 13:38:17.704.
	 Executed 4 tests, with 0 failures (0 unexpected) in 0.017 (0.017) seconds
Test Suite 'DocUploaderPackageTests.xctest' passed at 2024-07-06 13:38:17.704.
	 Executed 9 tests, with 0 failures (0 unexpected) in 0.021 (0.021) seconds
Test Suite 'All tests' passed at 2024-07-06 13:38:17.704.
	 Executed 9 tests, with 0 failures (0 unexpected) in 0.021 (0.022) seconds

Self-merging so I can test this in the builder and hopefully wrap this up.


sprintf -> snprintf

The last commit needs discussion of how to deprecate an API and replace it with another, and to choose its name...

I would suggest breaking it up to do one directory at a time, E,g, for libdap4, libhdf5, etc.

Breaking what up?  The big commit?  By my count that would be 17 commits.
Is this to make bisecting possible regressions easier?  (Trying to understand why...)

Agreed this is a lot of files, but given the consistent nature of the change, it is something I can commit to spending some time going through.  The main issue will be if there are any strings which should not be NULL terminated but now are.  I can't think of any instance off the top of my head, but it's still part of the job XD.  Also, the Appveyor CI indicates a failure compiling w/ Visual Studio; I haven't looked at that more closely, but we'd want to fix that too.

Also the last commit is a WIP... A public API needs to change to be given the length of a buffer...  What would you like to call it?

@WardF @edwardhartnett @DennisHeimbigner I'd like to fix up the last of the commits in this PR...
How does NetCDF deal with deprecating and replacing APIs?  i.e. for this part:
-extern void cdRel2Iso(cdCalenType timetype, char* relunits, int separator, double reltime, char* chartime);
+extern void cdRel2IsoNew(cdCalenType timetype, char* relunits, int separator, double reltime, char* chartime, size_t chartime_size);
+extern void cdRel2Iso(cdCalenType timetype, char* relunits, int separator, double reltime, char* chartime); // deprecated

what shall we call the new API?
do you have a deprecation macro that does similar to C23's [[deprecated]]?

Thanks.

In the hopes of actually getting this merged, I moved the WIP part to a new PR: https://github.com/Unidata/netcdf-c/pull/2743
This one is now ready to merge, after review.

Merged conflicts fixed.
@WardF @DennisHeimbigner this one is ready to merge IMHO, pending your reviews.

Testing on Windows for completeness sake; our current CI builds but doesn't run the tests, due to hangs on the underlying systems.  It's been a while, I need to double-check that again, we really need to get Windows CI running again (not just building).

@WardF did your Windows test pass?
@edwardhartnett are you good with these changes now?