Error updating to latest version

In 95% of the cases I want to update the application I get the following dialog:

it comes after this:

I dont have any custom antivirus installed
Is there a way to get a debug/log entry so see what is wrong?

it doesn't happen all the time but in most cases. How can I debug/log something to help find the cause of this?

You will need .PDB files next to the binaries of the same name and the source code lying along the same path that was when the .PDB was created. Then, if the dump decryption fails, the debugger from Visual Studio will point to the line in the source where it originated.

You will need .PDB files next to the binaries of the same name and the source code lying along the same path that was when the .PDB was created. Then, if the dump decryption fails, the debugger from Visual Studio will point to the line in the source where it originated.

ok that doesn't seem like a solution I can do sorry.
Perhaps the installer/updater could write a log entry in the windows log when it encounters an error?

I have this issue, apparently Windows Defender is detecting it as a trojan and blocking it. Had to download the executable from the main nightly page

I have this issue, apparently Windows Defender is detecting it as a trojan and blocking it. Had to download the executable from the main nightly page

same here. Trojan:Win32/Wacatac.C!ml

Can you please upload screenshots from defender?

directly from the auto-updater of the app.

Duplicate of #454


[SPARK-47367][PYTHON][CONNECT] Support Python data sources with Spark Connect

What changes were proposed in this pull request?

This PR adds support for registering and using Python data sources with Spark Connect.
Why are the changes needed?

To make Python data source work with Spark Connect.
Does this PR introduce any user-facing change?

No
How was this patch tested?

New unit tests.
Was this patch authored or co-authored using generative AI tooling?

No

Please run dev/reformat-python, thanks!
LGTM after resolving the above comments

Merged to master.


ActiveJob & cron plugin > undefined method `after_abort'

Hi,
I have a RatesJob:
class RatesJob <  ApplicationJob
  queue_as :default
  include RocketJob::Plugins::Cron

  self.cron_schedule      = '*/15 * * * * * UTC'

  def perform
    ...
  end
end

And an ApplicationJob:
class ApplicationJob < ActiveJob::Base
end

But it seems with your cron plugin, I can't perform the job with undefined method `after_abort' issue.
irb(main):003:0> RatesJob.first.update_attributes(run_at: nil)
NoMethodError: undefined method `after_abort' for RatesJob:Class
        from app/jobs/rates_job.rb:3:in `include'
        from app/jobs/rates_job.rb:3:in `<class:RatesJob>'
        from app/jobs/rates_job.rb:1:in `<top (required)>'
        from (irb):3

Can you please help?
Also, I don't see any ActiveJob documentation on your website.
Thanks,
HLFH

ActiveJob does not support using Cron, it supplies a lowest common denominator API.
Cron works only if you use RocketJob directly. There are examples in the RocketJob documentation.
ActiveJob itself is documented on the Rails site.

If I use sidekiq, I can have [sidekiq-cron](https://github.com/ondrejbartas/sidekiq-cron) that is using [rufus-scheduler](https://github.com/jmettraux/rufus-scheduler). sidekiq-cron can be used with ActiveJob.
Can we use  include RocketJob::Plugins::Rufus, on a specified job, using ActiveJob with RocketJob queueing backend?


Command suggestion

Hi!
Is it possible to add a command that would show players a cooldown on the parkour course?

The Command /pa course (course) will display the Course cooldown and it will also show the Player's remaining cooldown time (if existing).


chore: skip form action tests on webkit build

fetch requests sometimes for unknown reasons go into the abyss and never fire off, most commonly on webkit during build mode - therefore disable tests there
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[x] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[ ] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[ ] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. Changesets that add features should be minor and those that fix bugs should be patch. Please prefix changeset messages with feat:, fix:, or chore:.

I think I'd lean towards opt-in rather than opt-out for the webkit tests. There's a few PRs dealing with this, so I opened an issue so that we can have a single place to discuss: https://github.com/sveltejs/kit/issues/8578 (or now we have four places instead of three :laughing:)

Closing this since https://github.com/sveltejs/kit/pull/8585 was merged


Not saving when I'm online

I'm online but it's not saving the data.
The console gives me the next message:

Also experiencing the same warnings that saving will occur when back online even though I'm already online.

Also experiencing the same warnings that saving will occur when back online even though I'm already online.

Hey @dantehemerson and @silverben10, I take if you've taken steps to set this up on your own instances of Firebase/Firestore?
I have the following rules in my Firestore rules:
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read: if request.auth != null
      		&& request.auth.uid == resource.data.userId
                && request.auth.token.email_verified;
      allow write: if request.auth != null
                && request.auth.token.email_verified;
    }
  }
}

Those kinds of errors look like the kinds of things that happen when the rules aren't set up properly.
It's probably at a url like this:
https://console.firebase.google.com/u/0/project/<project-name>/firestore/rules

This is much less secure, but could be helpful to debug by changing the rules to this:
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write;
    }
  }
}


Lights off working in windows 10

HI ok I got it working.  For some reason the control to turn in on and off is sensitive.
Also can you add overhead lighting effects as a separate module to create color accents over the rig?  See State Azure example.
Also see Sworn64 lighting effects.  It would be cool in VCV. Strobes and so forth

HI ok I got it working. For some reason the control to turn in on and off is sensitive.

Thank you for this info, it is no more sensitive than every other hotkeys command in Rack.
On your other requests: These things are unlikely to happen.


[5.4] event:generate throws fatal error if events/listeners already exist

Laravel Version: 5.4.5
PHP Version: 7.0.11
Database Driver & Version: MariaDB 10.1.16

Description:
After updating to 5.4 I added a new event and listener to my app, when I went to run artisan event:generate it throws a fatal error saying 'Cannot declare class App\Listeners\SettingUpdated because the name is already in use', which happens to be the first event in my listeners array. Thinking there might've just been an issue with the upgrade, I tested on a fresh 5.4 install with the same results.
Steps To Reproduce:

Create fresh install (or use existing app)
Add an event & listener to $listeners in EventServiceProvider
Run artisan event:generate to generate events & listeners then run again (same behavior whether new events are added or not).

I tried to reproduce on a fresh 5.45 install to no avail. Everything works as it should.

@devcircus try using the values below, I just tried again with another fresh install and things worked ok just using the default boilerplate that is there, but then if I switch to the values below it'll run once and then start throwing errors everytime.
 protected $listen = [
        'App\Events\SettingUpdated' => [
            'App\Listeners\SettingUpdated',
        ],
        'App\Events\SettingCreated' => [
            'App\Listeners\SettingCreated',
        ],
         'App\Events\SettingDeleted' => [
            'App\Listeners\SettingDeleted',
        ]
    ];

Can't replicate.

This will happen because you have a typo in the filename of one of your php files, or a typo in a class name in the definition. Unrelated to the framework. It happens because the typo makes your code violate psr-4, so the autoloader requires a file twice.

@GrahamCampbell Not sure how it can be unrelated to the framework, if the framework is the one creating the files with the original event:generate command.

I just tried a fresh install on two different machines and get the same behavior on both, the only value I changed from a default install is the name of the listener. Here's a < 30s recording showing this. The error happens anytime the event and listener share the same name.
http://jmp.sh/J7UuQzl


Add instance MonadThrow and MonadCatch for STM

Note that we already have MonadThrow for the Sim's STM, but not MonadCatch.
So the idea is you just requite a MonadThrow constraints for your use of STM m, but that we don't add throwSTM directly to the MonadSTM class. Clear as mud?

bors r+


Fix TypeError when listing tags for empty repo

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


Patch 1

Added JTG

Added JTG

Files have been reorganized for better management. Kindly make changes accordingly.

Added JTG

Files have been reorganized for better management. Kindly make changes accordingly.

let me check and i will make a new pull request no worries


Page misformatted when using cached file

When building a notebook for use with Documenter and using a cache, I find that the built notebook renders correctly when the notebook is empty (see https://sethaxen.github.io/PlutoStaticHTMLDemo.jl/dev/notebook/), but upon building the docs again, where the previously built notebook is now in the cache, the resulting docs page instead renders as:

For the execution of build_notebooks, see https://github.com/sethaxen/PlutoStaticHTMLDemo.jl/blob/main/docs/make.jl. Have I used previous_dir correctly?

I didn't add a test for documenter_output in https://github.com/rikhuijzer/PlutoStaticHTML.jl/pull/71 because I thought "why would you want cache anyway in Documenter?". I should fix that test. Anyway, are you sure that you want caching in your case? If you link your documentation to your package which is under development like we did at, for example, TuringGLM.jl then you don't want caching to avoid showing outdated information.

Have I used previous_dir correctly?

I looks like it yes

Thanks! Honestly, I'm just using this to speed up local development of the rest of the docs, since the notebook is by far the most expensive part to build. The cache is empty when building on CI.

Nice! I have set DISABLE_NOTEBOOKS_BUILD in systems ENV and check that variable before building, but I like your solution too


Can't get duplicated field names in result rows

Given two tables:

tableA

idA

myColumnName

tableB

idB

myColumnName

(total 4 columns)
Given the code:
var objDBConn = mysql.createConnection( /* ... */ );
objDBConn.connect();
objDBConn.query(
	"select A.*, B.* from tableA aliasA inner join tableB aliasB on aliasA.idA = aliasB.idB",
	function(err, rows, fields){
		console.log(rows);
		console.log(fields);
	}
);
objDBConn.end();                                                                           `

The console output:
// rows:
[
	{
		"idA": 1,
		"myColumnName": "this is column A value 1",
		"idB": 1
	},
	{
		"idA": 2,
		"myColumnName": "this is column A value 2",
		"idB": 2
	},
	{
		"idA": 3,
		"myColumnName": "this is column A value 3",
		"idB": 3
	},
]                                             `

// fields:
[
	{
		//...
		"table": "aliasA",
		"orgTable": "tableA",
		"name": "idA",
		"orgName": "idA",
		//...
	},
	{
		//...
		"table": "aliasA",
		"orgTable": "tableA",
		"name": "myColumnName",
		"orgName": "myColumnName",
		//...
	},
	{
		//...
		"table": "aliasB",
		"orgTable": "tableB",
		"name": "idB",
		"orgName": "idB",
		//...
	},
	{
		//...
		"table": "aliasB",
		"orgTable": "tableB",
		"name": "myColumnName",
		"orgName": "myColumnName",
		//...
	},
]                            `

As we can see, we have only THREE result rows while there is FOUR field definitions. This happens because "myColumnName" is duplicated in both tables and JSON does not allow duplicated key values on the result row variable (rows in our example). If you run the SQL code in the MySQL console, it will output the 4 fields accordingly.
My problem:
As soon as I am not able to declare each column name with a different alias in my SQL statement (despite the fact this is not recommended at all), how do I get all the column values into the rows variable?

The main solution is in our documentation: https://github.com/felixge/node-mysql#joins-with-overlapping-column-names

Neat. Works pretty well. Thanks a bunch.

No problem :)!


[Compute] Fix issue 30009: az vm install-patches fix errors due to typos in install_patches function.

Fix #30009.
Related command

az vm install-patches
Description

Install_patches has paramerters with typos and throw the following error: Error given: kb_numbers_to_inclunde is not a known attribute of class <class 'azure.mgmt.compute.v2024_03_01.models._models_py3.WindowsParameters'> and will be ignored
exclude_kbs_requirig_reboot is not a known attribute of class <class 'azure.mgmt.compute.v2024_03_01.models._models_py3.WindowsParameters'> and will be ignored
Parameters should be kb_numbers_to_include and exclude_kbs_requiring_reboot respectively
Original pull request containing typos:
https://github.com/Azure/azure-cli/pull/17549/commits/3a5091e96092fa563e985df6b0339ba6ebc6ae66
Testing Guide

az vm install-patches --resource-group Repo --name myVM --maximum-duration PT4H --re
boot-setting IfRequired
give error:
kb_numbers_to_inclunde is not a known attribute of class <class 'azure.mgmt.compute.v2024_07_01.models._models_py3.WindowsParameters'> and will be ignored
exclude_kbs_requirig_reboot is not a known attribute of class <class 'azure.mgmt.compute.v2024_07_01.models._models_py3.WindowsParameters'> and will be ignored
History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

Compute


Ursa EOL

Ursa has been moved to EOL status. This means that Anoncreds-rs has to move away from this library as it will not be updated or will get any security fixes.
There is some ongoing work for extracting the work, most notably for this library is anoncreds-clsignatures.
Looking at the codebase, with rg --pcre2 'ursa(?!::cl).*' . shows only some dependency Ursa::bn, which can be replaced with openssl (native depencency) / BigNum (pure rust). Everything else, which is in the cl package from Ursa should be moved to the anoncreds-clsignatures-rs repository, AFAIK.
If this is the only work, moving away form Ursa would be rather easy as long as anoncreds-clsignatures is finished.
@andrewwhitehead Do see any additional work or is really almost everything covered by anoncreds-clsignatures?

Would moving to openssl resolve some of the issues around anoncreds being slow in WASM?

Would moving to openssl resolve some of the issues around anoncreds being slow in WASM?

No, that would need to be done in anoncreds-clsignatures as it is slow because of generating some 1024 bit safe primes for the credential definition.
The person behind libsodium has openssl working for WASM, https://github.com/jedisct1/openssl-wasm, but I am not sure about the build process of including this into rusts openssl-src/sys package so we can use it.
And possibly it is not even faster to use openssl-wasm instead of a pure rust as AFAIK the openssl version is quite faster because half of the big number implementation of openssl is done in assembly. Which would then be done with some polyfill / pure webassembly and I am not aware of any benchmarks between them.

@andrewwhitehead Do see any additional work or is really almost everything covered by anoncreds-clsignatures?

I believe that should be the only (direct) dependency needed. If you're using the big number support directly then we may have to check that it's exposed.
The 'native' backend currently uses glass-pumpkin, but the prime generation is too slow to be practical (last I checked). A recent alternative might be crypto-primes but I haven't benchmarked that yet. There is also num-bigint-dig.


Post with multiple images doesn't bridge all the images

https://tomkahe.com/@pokemon/112372668561541081
https://bsky.app/profile/pokemon.tomkahe.com.ap.brid.gy/post/3krjjqfvpzjw2
I'll probably un-bridge that account for now because I didn't realize Bluesky doesn't support polls yet, but it looks like it's only sending 1 of the 2 images from the status (this might also be because it's an image and a video so it's not two of the same type of media, I'm not certain)

Bluesky doesn't support videos / custom GIFs as of yet, it's most likely failing on that currently.

Right! I'll add this to the docs.

@TomCasavant out of curiosity, if the video can't make it over to Bluesky, would you prefer that the post is bridged without it, ie the current behavior? Or that the post isn't bridged at all?

I think personally I'd prefer to bridge the post even if there's media missing, but I could see how that could get confusing for users on both sides of the bridge
Also, this may be worthy of a separate issue. But that same post has hashtags associated with it on the mastodon side, I've got a slightly customized mastodon server that doesn't show hashtags at the end of a post in the text body- I'm not sure if you're parsing those from the ActivityPub tags or from the text itself but they don't appear to be in the bluesky post


Float types support

Closes https://github.com/project-serum/anchor/issues/1353

@armaniferrante, could you take a look if anything else can be improved in this PR or it's ready to be merged?

Please add a CHANGELOG.md entry and this is good to go!


Hotspots doesn't work when using embed.min.js instead of embed.js

Issue:
when using the minified version of embed.js, trying to add objects to the three.js scene does not work, the object is not shown.
reproduce:

open the hotspots example in vrview/examples/hotspots/ - it should work fine
in the root folder, replace the embed.js with embed.min.js - no hotspots are shown

@borismus

@liorfrenkel you need merge this one https://github.com/googlevr/vrview/pull/148/commits/80e7b3410e1ee8fa817370b7285772f8a4689e69

@fix2015 thank you so much!!! I am on this issue now for 10 hours....

@fix2015 by the way was there any later fix for this? because I see that the latest tween.js is used on the master branch.
thanks


expose: Create objects in a generic way

cc: @smarterclayton

LGTM.

Michail can you explain why you need this (so the change is documented here)?

Well, since the ability to expose more kinds of resources than just services is already in place (--generator flag) it's only natural for this change to happen. With this merged, it'll be easy for someone to register a new resource generator and use expose to generate such resources eg. we want to generate routes from services: https://github.com/openshift/origin/pull/2045

Merging


Make it possible for render_bundle to generate script tags with the async attribute

In our own code, we created a helper called render_async_bundle that does the same thing as render_bundle, but adds an async attribute to the script tag. This is quite helpful in certain situations.

Just released 0.3.2. You can now specify a string to append to the tags. Example,
{% render_bundle 'main' 'js' attrs='async charset="UTF-8"'%}

will add async and charset="UTF-8" attrs to the tag

Awesome! Thanks!


Version bump to 0.3.0

Includes:

Fix provisioner.server.uri for Coopr 0.9.9+ ( Issue: #8 )
Testing updates ( Issues: #9 #11 #16 )
Add coopr::cli recipe ( Issues: #10 #12 #13 )
Update README, LICENSE, metadata ( Issues: #14 #15 COOK-32 )
Add amazon platform_family for Chef 13 ( Issues: #17 COOK-123 )

👍 lgtm


activationHooks: grammar-used doesn't work when restoring a session

Steps to reproduce:

Take a package with activationHooks: grammar-used
Verify that it activates when a file with given grammar is open
Restart Atom, e.g. with ctrl-alt-r (or platform equivalent)

Here is a video that should hopefully illustrate the problem:
https://youtu.be/0viUxFNS-jc
Notice how bottom panel shows up when I open/reopen a file, but NOT when I restart Atom

@lierdakil Can you share a link to your package which you are reproducing this with, so that it's easier for others to reproduce?
Also /cc @joefitzgerald @nathansobo

My package (ide-haskell) has activationHook used only on dev. branch, and setup isn't very easy, so here is a minimal testcase, which should trigger on language-gfm: https://github.com/lierdakil/activation-hook-test
Short howto:

git clone https://github.com/lierdakil/activation-hook-test
cd activation-hook-test
apm link
atom .
Open README.md. Notification pops up and bottom panel is created
Restart Atom (either by closing and reopening, or with View → Reload). No notification, no bottom panel, although README.md is open.
Close README.md and open it again. Notification pops up, and bottom panel is created.

Thanks, @lierdakil.
@joefitzgerald @nathansobo I was able to reproduce the behavior using the instructions above. Is that behavior expected?

Yeah this sounds like a bug. This is not expected behavior.

So... any updates on this?

Okay, so I did some digging, and I think I know why this happens. Grammars are loaded well before actual packages. As a consequence, at the time grammar-used is triggered, actual handlers are not yet registered. This could probably be solved by iterating over all tokenized buffers after packages have loaded, although this seems somewhat hacky. Another solution would be to defer triggers until after all packages are loaded, but that sounds somewhat convoluted. Any thoughts?

So... second idea turned out to be easier to implement than I thought. #8692 has some POC code. Feel free to tear it apart.

Has the fix been released ? I can still reproduce in 1.3.2

I could swear I saw this working, has there been a regression? Also doesn't trigger on reloading in 1.3.2.

Probably a regression. I'm pretty sure this was working at the time #9527 was merged.

Update: I looked around, and apparently fix for this will get only into 1.4.0.


ARROW-18348: [CI][Release][Yum] redhat-rpm-config is needed on AlmaLinux 9

https://github.com/ursacomputing/crossbow/actions/runs/3485133283/jobs/5830385419#step:7:1909
Building native extensions. This could take a while...
ERROR:  Error installing gobject-introspection:
      ERROR: Failed to build gem native extension.

    current directory: /usr/local/share/gems/gems/glib2-4.0.3/ext/glib2
/usr/bin/ruby -I /usr/share/rubygems -r ./siteconf20221117-855-v8bktd.rb extconf.rb
checking for --enable-debug-build option... no
checking for -Wall option to compiler... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
      --with-opt-dir
      --without-opt-dir
      --with-opt-include
      --without-opt-include=${opt-dir}/include
      --with-opt-lib
      --without-opt-lib=${opt-dir}/lib64
      --with-make-prog
      --without-make-prog
      --srcdir=.
      --curdir
      --ruby=/usr/bin/$(RUBY_BASE_NAME)
      --enable-debug-build
      --disable-debug-build
/usr/share/ruby/mkmf.rb:471:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
      from /usr/share/ruby/mkmf.rb:597:in `block in try_compile'
      from /usr/share/ruby/mkmf.rb:546:in `with_werror'
      from /usr/share/ruby/mkmf.rb:597:in `try_compile'
      from /usr/local/share/gems/gems/glib2-4.0.3/lib/mkmf-gnome.rb:65:in `block in try_compiler_option'
      from /usr/share/ruby/mkmf.rb:971:in `block in checking_for'
      from /usr/share/ruby/mkmf.rb:361:in `block (2 levels) in postpone'
      from /usr/share/ruby/mkmf.rb:331:in `open'
      from /usr/share/ruby/mkmf.rb:361:in `block in postpone'
      from /usr/share/ruby/mkmf.rb:331:in `open'
      from /usr/share/ruby/mkmf.rb:357:in `postpone'
      from /usr/share/ruby/mkmf.rb:970:in `checking_for'
      from /usr/local/share/gems/gems/glib2-4.0.3/lib/mkmf-gnome.rb:64:in `try_compiler_option'
      from /usr/local/share/gems/gems/glib2-4.0.3/lib/mkmf-gnome.rb:74:in `<top (required)>'
      from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
      from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
      from extconf.rb:27:in `<main>'

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  /usr/local/lib64/gems/ruby/glib2-4.0.3/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in /usr/local/share/gems/gems/glib2-4.0.3 for inspection.
Results logged to /usr/local/lib64/gems/ruby/glib2-4.0.3/gem_make.out

@github-actions crossbow submit almalinux-9-amd64

+1


Frontend Eslint

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

Project coverage is 94.84%. Comparing base (a853f4c) to head (4dbcfea).
Report is 3 commits behind head on main.

Additional details and impacted files

@@           Coverage Diff           @@
##             main     #165   +/-   ##
=======================================
  Coverage   94.84%   94.84%
=======================================
  Files          79       79
  Lines        1863     1863
  Branches      192      192
=======================================
  Hits         1767     1767
  Misses         94       94
  Partials        2        2

Flag
Coverage Δ

frontend-customer
96.36% <ø> (ø)

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


Add fallback for the test-proxy command in migration script

A couple languages are using the standalone exe primarily. That is not a tool, and as such the exe is named for the namespace of the package.
To account for that, we are updating the migration script to handle the proxy executable.
@samvaity for FYI

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow


Better Handling of Code Fences

Adjustments discovered during  testing of version 0.7.0.

/azp run azure-sdk-tools - warden - ci

Manually Queued

/check-enforcer override


When user click on carousel dots carousel should pause

Hi,
I m using @ngu/carousel v1.5.4 with angular 6. If I click on carousel dots (Carousel points) during the exact timing of the a slide transition(I have enabled auto slide feature), the exact functionality would be to pause the slide. It looks like the carousel auto slide timer doesn't have an impact with the carousel dots click. Is this considered a bug or is there any workaround for this?

Any Updates on this team??


Code editor fixes

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1207910455990430

LGTM


Inccorrect gas reported

http://testnet-api.wallet.cityofzion.io/v2/address/claims/ALfnhLg7rUyL6Jr98bzzoxz5J7m64fbR4s
{
    "address": "ALfnhLg7rUyL6Jr98bzzoxz5J7m64fbR4s",
    "claims": [
        {
            "claim": 232522,
            "end": 867240,
            "index": 0,
            "start": 844201,
            "sysfee": 48210,
            "txid": "4536a2539babf4b4b29e308bc396dc23e407232a5ae88a5ca028d47bd80653c2",
            "value": 1
        }
    ],
    "net": "TestNet",
    "total_claim": 232522,
    "total_unspent_claim": 108267556
}

https://neoscan-testnet.io/api/test_net/v1/get_claimable/ALfnhLg7rUyL6Jr98bzzoxz5J7m64fbR4s
{
    "claimable": [
        {
            "value": 1,
            "unclaimed": 0.00232514,
            "txid": "4536a2539babf4b4b29e308bc396dc23e407232a5ae88a5ca028d47bd80653c2",
            "start_height": 844201,
            "n": 0,
            "end_height": 867240
        }
    ],
    "address": "ALfnhLg7rUyL6Jr98bzzoxz5J7m64fbR4s"
}

Note the difference in claim and unclaimed. They should have the same numbers. I believe that neoscan is wrong because the NEO node is rejecting my tx created by the neoscan data.
Have not tried to claim gas with neonDB data tho. I will leave this in this state for as long as possible.

this is weird... In main net I couldn't find an address with this mismatch between the API's. Did you find any on main net? Its missing exactly 0.00000008 on each wrong one..... can't understand why some are correct and others aren't.

thats like one block off. maybe check your block counting?

the newer claims (with newer starting blocks) looks to be correct now. However, the old data is still there and wrong.

I've been digging the code trying to figure out what may be happening, but didn't changed anything so far. So,  whatever it is, it works for most of the time. Still trying to understand why only these calls are one block off...

I created an algorithm to scan the block range for missing blocks and repair. It solved the problem! There was a missing block for some reason.


accepting url objects in request constructor

I am creating a url object like so:
var url = require('url');
 var $url = url.parse(serverURL.concat(':').concat(serverPort));

it doesn't look like this library accepts a url object as a parameter to request like so:
request($url).post('/event')
                .send('test')
                .expect(400)
                .end(function (err, res) {
                    if (err) {
                        //TODO: handle this error
                        return done(err);
                    } else {
                        res.statusCode.should.equal(400);
                        done();
                    }

                });

is this right? is there a good reason for this?

request.post('/event', {uri:$url})

thanks, that's just great, can someone fix this lib so that request($url) also works? thanks

I don't think this is going to happen, because request uses the passed object for options, not just the url.


Value in angle picker is picked after the drop-down animation ends

This feels very buggy; you can click on an angle, and then it shifts as you move the mouse.

Closing as duplicate of #581, which now has better documentation in the thread.


feat: add backdrop to/in DialogService.ShowConfirmationAsync()-method

🙋 Feature Request
I'd like DialogService.ShowConfirmationAsync-method to be able to show a backdrop (faded background) just like a modal, so the user will not be confused why nothing is happening, since the confirmation modal is not that visibly obvious when opened.

ShowConfirmationAsync is just a utility method. We want to keep this method as simple as possible. It is calling ShowDialogAsync internally. If you want to get the backdrop, you can just use ShowDialogAsync directly.


Changing prosody python version to 3.9

Seems to be working with just this change.
Note: if there's already a deploy with the same commit hash that environment must be deleted in order for the new virtualenv (and python version) to be installed.

Update: Turns the python version is correctly updating in the django directory and virtualenv but we're now breaking the apache-django connection. Looking into it via issue above.

Final update: @rlskoeser made this same fix in a related PR (https://github.com/Princeton-CDH/cdh-ansible/pull/131), meant to solve the apache error (by switching us over to nginx, a preexisting priority). Closing this PR as redundant


Early couldContainTypeVariables check in instantiateType

This PR revises instantiateType to perform an early check of couldContainTypeVariables. Previously this check was performed in multiple places. This change also means that we don't count instantiations of types that don't contain type variables (which are basically no-ops).

@typescript-bot perf test this

@typescript-bot perf test this

@typescript-bot perf test this

@weswigham With my latest commit, couldContainTypeVariables returns false for types that are aliased by a non-generic top-level type alias. That would address the issue you point out about when OtherReallyBigObjectTypeUnion is a union with a top-level type alias.

Nothing that properly tests it since we started deferring mapped type member type instantiation.


optimization in isBoolean

typeof comparison with string is slower than triple equal comparison.

@zaheer-ahmed could you please share some evidence (jsPerf or similar) of it being faster?

Checking Travis build results there seem to be some test failrues that look legitimate. Those would have to be fixed.

rebasing on top of master should fix the Travis error

@zaheer-ahmed haven't hear from you regarding the benchmark / rebase so going to close this one for now. Happy to re-open when you've got more info.


Does this component supports error handling?

Let's say I am loading 6th page and the service returns some error (Gateway time out for example). Does this component have an option to display the error message and have a button to "Try again" ?

Currently, no. The next function prop you send does not expect to be a promise. Instead you can do something like
<InfiniteScroll
  next={() => {
    fetchData().then(res => // set state here in success)
    .catch(err => { this.setState({error: err})}) // show a retry button dependent on this

  }}
>
  {data}
</InfiniteScroll>
{this.state.err && <button>API called failed, try again</button>}

Let me know if this doesn't solve your use case. Closing this, feel free to reopen with more details


Actions: Enforce clang-format clean

Nit: I think the commit message should simply read "[ci] Enforce clean clang-format". I don't like "that"s in commit messages.

Sure, pushed.


default to ceph-volume, discourage ceph-disk usage

The first stable release for Mimic should come at the end of May or early June, although currently ceph-ansible is not defaulting to either one, it appears as if ceph-disk is thoroughly supported/encouraged.
A rework of the options in group_vars for the "osd scenarios" should be done, in such a way that the ceph-volume is the obvious choice and ceph-disk is discouraged. Probably through heavy commenting in both all.yml and osds.yml samples.
The deprecation notice in ceph-disk is enabled for master and Mimic, and ceph-disk is frozen (no new development going on), full removal is expected by the N release.
https://www.spinics.net/lists/ceph-devel/msg41420.html

@alfredodeza Do you have a BZ for that? This is tremendous work, so PMs must vote and prioritize this. We really have to start organizing resources to complete this work.

There is no BZ for this, do note that ceph-disk is about to get removed from master (See linked email from ceph-devel)

https://github.com/ceph/ceph/pull/22343

ceph-disk just got fully removed from master

@alfredodeza can ceph-volume detect ceph-disk prepared OSDs and report them? Thanks.

Yes, that is correct. It has three options to do that:

If the input is the data partition, it will mount it temporarily to parse contents inside
if the input is the running OSD, it will just parse the path contents directly
if the input is the data partition and it is mounted it will check where that is and parse the contents

The prepare step in ceph-disk gets the OSD ready up until the point before actually running the OSD. This is sufficient for ceph-volume to manage it.

Thanks, I guess I wasn't clear enough, do we have a command like ceph-volume lvm list that could list OSDs that were prepared with ceph-disk?
Thanks!

No, that is not possible. An input is required which can be the path to the running OSD, or the data device.

That's too bad, it'd useful to have something like this so when we scan devices we know if they are OSDs prepared with ceph-disk and part of the existing cluster. Particularly useful for choose_disk and potentially other systems that want to determine if a disk is from Ceph.
Now 2 questions:

A question that comes to my mind, if we take over an OSD with the simple command, will the OSD be listed with ceph-volume lvm list?

If 1. is 'no', do you think this is something you might consider implementing?
I can open a tracker for this.

Thanks.

they will not be listed with ceph-volume lvm list because that command lists OSDs created by lvm, ceph-disk is not created by that command so it can't produce a list.
To list OSDs that have been taken over one would just need to look in /etc/ceph/osd/*.json (by default). Although the location can be altered, which is why we can't provide a list that will work reliably in all cases
I am not sure why choose_disk would need to know about this. What consumers need is disks that can be used, not if the disk has a partition from ceph-disk?
Maybe a meeting to clarify this is better, since this doesn't seem to involve discouraging ceph-disk usage anymore

@alfredodeza invit sent!

I tried to warn about this situation in https://github.com/ceph/ceph/pull/22343#pullrequestreview-128765965
Let's discuss this in the meeting then.

@alfredodeza @leseb when ceph-ansible will be switched to ceph-volume, community is need to know how-to properly migrate current ceph-ansible deployments (some doc or playbook). Thanks.

ceph-disk has been dropped as of stable-4.0, closing this issue.


Add TopicsCheck

Ongoing work as part of https://github.com/alphagov/whitehall/pull/2715
So... the Topic in question are actually specialist_sector_tags and getting a content_id for these requires a call out to PublishingApi. Implementing this check as a LinksCheck would have meant having all of that and the logic that goes with it in the format specific checks so I've implemented it as a separate type.
There is duplication with LinksPresenter but I think it is reasonable as this is 'test' code and we have been trying to avoid calling the presenters within the test as they are part of the stack we are
testing.
TopicContentIdMap is essentially a cache of all of the topic base paths -> content ids to prevent repeated api calls. There are < 400 of them in the form {"base_path" => "content_id"} so memory shouldn't be an issue.

Keep an eye on https://github.com/alphagov/whitehall/pull/2735, it'll probably make this PR simpler.

I don't have much context, but the code looks good 👍


Client - allows you to change name of strategy while the bot is active

Describe the bug
We noticed that even if a strategy is actively running, we can execute the config strategy and the client is still modify/save the strategy parameter even a invalid input. Running stop and start command seems to be working ok and still recognizes the initial strategy before it was changed. Example on the screenshot:
config strategy xxx

config strategy

Tried to relaunch the hummingbot client and import the strategy file and we got an error of invalid strategy specified in the file

This issue can normally be found on the following strategies:

liquidity_mining
spot_perpetual_arbitrage
uniswap_v3_lp
amm_arb

The workaround to fix this issue is by manually updating the strategy on the your_strategy.yml file found in conf/strategies folder
Steps To Reproduce

Select and create a simple strategy from the affected list above
Start the strategy
Run config strategy or config strategy xxx then check the updates by using config command
Stop and Start the client, notice the client would still recognize the initial strategy that was used
Relaunch the client and import the strategy file, notice you would get invalid strategy specified in the file

Release version
1.6.0 and development branch 1.7

Severity: P3
Bounty: 10,000 (https://hummingbot.org/maintenance/bugs/)
Rationale: Bug related to component

@rapcmia This does no longer seem to be the case:

Hi @MementoRC yes correct it was observed not happening for other strategies which I assume on the screenshot is Pure market-making.

This issue can normally be found on the following strategies:

liquidity_mining
spot_perpetual_arbitrage
uniswap_v3_lp
amm_arb

@rapcmia got it, it's for the non-ConfigMap strategies, i should have guessed it when observing the non-issue. I can continue to look into it then

Hi @MementoRC, good day
Thanks for your time, yes that's correct it would be better if the expected behavior is the same as for the other strategies therefore the 2nd option is ok :grin:

or rather remove the 'strategy' from the list of configurable fields:

This proposed PR has both included, but ofc the removal from the auto-complete takes precedence

assigned to @MementoRC. thank you for your contribution!

Fixed with https://github.com/hummingbot/hummingbot/pull/5809

Bounty has been paid. Thank you for your contribution!

fix has been deployed and available on the Hummingbot version 1.9.0 release


Advanced Restrict Image Registries

I have modified the policy to scan for namespace and policy looks like this:
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
  name: allowed-registries
  annotations:
    policies.kyverno.io/title: Advanced Restrict Image Registries
    policies.kyverno.io/category: Other
    policies.kyverno.io/severity: medium
    kyverno.io/kyverno-version: 1.6.0
    policies.kyverno.io/minversion: 1.6.0
    kyverno.io/kubernetes-version: "1.23"
    policies.kyverno.io/subject: Pod
    policies.kyverno.io/description: >-
      In instances where a ClusterPolicy defines all the approved image registries
      is insufficient, more granular control may be needed to set permitted registries,
      especially in multi-tenant use cases where some registries may be based on
      the Namespace. This policy shows an advanced version of the Restrict Image Registries
      policy which gets a global approved registry from a ConfigMap and, based upon an
      annotation at the Namespace level, gets the registry approved for that Namespace.
spec:
  validationFailureAction: Enforce
  background: false
  rules:
    - name: validate-corp-registries
      match:
        any:
        - resources:
            kinds:
            - Pod
      context:
        - name: clusterregistries
          configMap:
            name: allowed-registries-kyverno
            namespace: services
      preconditions:
        any:
        - key: "{{request.operation || 'BACKGROUND'}}"
          operator: AnyIn
          value:
          - CREATE
          - UPDATE
      validate:
        message: This Pod names an image that is not from an approved registry.
        foreach:
        - list: "request.object.spec.[initContainers, ephemeralContainers, containers][]"
          deny:
            conditions:
              all:
                - key: "{{element.image}}"
                  operator: NotEquals
                  value: "{{clusterregistries.data.registries}}"

Here is the configmap:
apiVersion: v1
kind: ConfigMap
metadata:
  name: allowed-registries-kyverno
  namespace: services
data:
  registries: '["ghcr.io/*", "quay.io/*", "602401143452.dkr.ecr.ap-southeast-1.amazonaws.com/*", "k8s.gcr.io/*", "registry.k8s.io/*", "public.ecr.aws/*", "nvcr.io/*"]'

Reference : https://release-1-9-0.kyverno.io/policies/other/advanced_restrict_image_registries/advanced-restrict-image-registries/
I have applied the policy and configmap. The version of kyverno is 1.9.0 which is compitable with current k8s version.
This policy block all the image pulls and unable to whitelist the once in the configmap. What am i missing here?

Read the comments here: https://kyverno.io/policies/other/a/advanced-restrict-image-registries/advanced-restrict-image-registries/


Packages not found (cannot be excecuted)

What version?
0.39.2
Which command?
No response
What happened?
Sorry for the fuzzy title... It's quicker to take a look at these screenshots:

For Node:

But I can find npm and corepack in ~/.proto/tools/node/20.16.0/lib/node_modules:

For Python, packages installed by pip cannot be found either:
❯ which python
/Users/royrao/.proto/shims/python

❯ python --version
Python 3.12.4

❯ pip list cyberdrop-dl
Package              Version
-------------------- -----------
cyberdrop-dl         5.3.31

❯ cyberdrop-dl
zsh: command not found: cyberdrop-dl

I can only use it if I export ~/.proto/tools/python/3.12.4/install/bin to PATH.

This is too much trouble. How can I fix this? Thanks!
Trace logs?
No response
Operating system?
MacOS
Architecture?
arm64

@RoyRao2333 A few things:

Node doesn't install npm. Just because npm is shipped with Node doesn't make it available in proto. You need to also install npm with proto.
proto shims don't apply to every binary that a tool has, just the primary one (and sometimes some secondary ones). This is especially true for packages. It's not possible to create a shim for every package binary.

With that said, if you want all of this to "just work", you need to use activation. https://moonrepo.dev/docs/proto/workflows Activation will only enable tools that have a version defined in a .prototools file.

@milesj
Thanks for the reply.
And,

Can I safely delete npm and corepack folders in lib? (I'm a bit of a neat freak, sorry)
I read the doc and added the command to the end of my .zshrc:

# proto
export PROTO_HOME="$HOME/.proto";
export PATH="$PROTO_HOME/shims:$PROTO_HOME/bin:$PATH";
eval "$(proto activate zsh)"
# proto end

But still, I can't invoke cyberdrop-dl (already sourced .zshrc). Is there anything missing or am I getting this wrong? Please give some more specific guidance on how to use packages installed by pip?
Thank you very much for your time!

Activation will only enable tools that have a version defined in a .prototools file.

I do have a .prototools file:

But as far as I know, these versions are from the packages managed by proto, not by pip. Should I add package versions installed by pip? If do, how can I properly do that?

@milesj
Thanks.
So as you can see, I've already appended eval "$(proto activate zsh)" to .zshrc. Why still not working?

Activation updates your PATH so all of these binaries are available. Globals are not enabled by default so you need to pass --include-global.

@milesj
# .zshrc

# proto
export PROTO_HOME="$HOME/.proto";
export PATH="$PROTO_HOME/shims:$PROTO_HOME/bin:$PATH";
eval "$(proto activate zsh --include-global)"
# proto end

I even reinstalled cyberdrop-dl and still no luck...

Are you reloading your shell after making changes to the config?
What's the output of proto activate if you run it manually?

@milesj
Yes, I reload shell everytime.
Here's the output:
❯ proto activate zsh --include-global
export __ORIG_PATH="$PATH"

_proto_hook() {
  trap '' SIGINT
  output=$(proto activate zsh --export)
  if [ -n "$output" ]; then
    eval "$output";
  fi
  trap - SIGINT
}
typeset -ag chpwd_functions
if (( ! ${chpwd_functions[(I)_proto_hook]} )); then
  chpwd_functions=(_proto_hook $chpwd_functions)
fi

Sorry, output of proto activate --export. It will show you the PATH being set.
You can also set PROTO_LOG=trace before activate to see what it's doing.

@milesj
Here's the full output:
PROTO_LOG=trace.txt

@RoyRao2333 I see /Users/royrao/.proto/tools/python/3.12.4/install/bin in your PATH because of activate. Be sure that you are installing pip packages using the proto version of pip. which pip should point to the python 3.12.4 version.

@milesj
Yes, I'm sure that I'm using pip managed by proto. Here's the full output:

As you can see, .proto/tools/python/3.12.4/install/bin is not added to my PATH variable.

@RoyRao2333 Yeah something seems off. Let me dig through the code and see if I can find the bug.

I think this will fix it. It's hard to verify some of this stuff. https://github.com/moonrepo/proto/pull/572

Can you try the latest patch?
If it still doesn't work, could you do the following:

Add PROTO_LOG=trace in your shell, before the activate command.
Add the eval + activate command snippet in your shell.
Open a new terminal (it should show some logs of activate triggering).
CD into a new directory (there should be more logs).
Verify PATH.

Then send over the logs :P

@milesj

Open a new terminal
CD into a new directory
Verify PATH

Thanks, it's working after these steps in v0.39.4 :)

Still got some questions here though:

Why must I change directories before this take effect? Wouldn't it be better to make it work once shell instance is initiated?
As you can see in the screenshot, .proto/shims and .proto/bin is duplicated because I added "$PROTO_HOME/shims:$PROTO_HOME/bin" to my PATH manually in my .zshrc. But If I don't do that, proto can't be found at all.

Thanks for you patience 😊

The hooks right now only fire on cd. The plan is to have it work when shell is activated, but it really depends on if there's a .prototools file and where a new terminal is opened in. There's also a few perf issues to work out. You could always call _proto_hook manually in your shell to trigger it for now.
Activate includes the paths just in case. We can probably filter them if they already exist.

@milesj

We can probably filter them if they already exist

I'd like this very much!

The plan is to have it work when shell is activated

I'll call _proto_hook for now. Hoping it'll work in the future releases.
Again, thanks for this excellent tool you guys brought us! Closing this issue now.

I was looking into removing the duplicate shims/bin paths, but it turns out it was added on purpose, and it's to ensure that proto shims take precedence over the injected tool bin directories.
If you don't care about that, you can pass --no-shim and --no-bin flags to the activate command.

@milesj
Got it. Thanks!
I'll try --no-shim and --no-bin now.


Keyboard shortcut for "new session"

Implement a keyboard shortcut CTRL+N to start a new session.
This works when you are on the chat screen. For this I:

moved the logic to start a fresh session into the chat provider
Added CallbackShortcuts to the Chat page
Adapted the New Session button to call the new method in the Chat provider

Related to #4


TimeKex Demo not working

If I upload one of the 3 example files TimeKex_timeData*, I get shown the week selector, but  not the time entries table.
If I upload the TimeKex_timeData.xlsx in the admin section, I get nothing, not table shown.
Otherwise, I see red buttons. Whereever I press one, I get the message "rejected", although I logged in with a kimai demo user and the password api_kitten.

Sorry, did't read that section: https://katjaglassconsulting.github.io/TimeKex/setup/#cors
Now it works.


Table 'foo_bar' already exists

I've been heavily using django-dbbackup with a MySQL database as part of my development workflow, particularly for use with migrations. I've noticed that if I'm working on a migration that adds a new table and try to use dbrestore to restore a backup from before this migration, the dbrestore command doesn't drop the newly added table. This results in errors like the below:
django.db.utils.OperationalError: (1050, "Table 'foo_bar' already exists")

I imagine this is more of a feature request than a bug, since I'm not sure we should be dropping all tables by default (though maybe we do just that - I haven't looked at the source yet). However, perhaps we could add a flag to wipe everything before doing the restore?

I think you can play with MySQL option to create CREATE TABLE IF NOT EXIST statements.


[Bug]: Cannot build sample projects

Describe the bug

I cannot build the sample projects. yarn build fails. I was able to work through the first failure by removing yarn.lock from the devOpsBot and the teamsChefBot samples. After that yarn build fails with this (dependency?) error.

PS C:\src\teams-ai\js> yarn build
devOps-demo
| src/index.ts(165,5): error TS2345: Argument of type '(context: TurnContext, state: ApplicationTurnState, data: EntityData, action?: string) => Promise' is not assignable to parameter of type '(context: TurnContext, state: ApplicationTurnState, entities: EntityData, action?: string | undefined) => Promise'.
|   Types of parameters 'context' and 'context' are incompatible.
|     Type 'import("C:/src/teams-ai/js/node_modules/botbuilder-core/lib/turnContext").TurnContext' is not assignable to type 'import("C:/src/teams-ai/js/samples/04.ai.e.chainedActions.devOpsBot/node_modules/botbuilder-core/lib/turnContext").TurnContext'.
|       Types have separate declarations of a private property '_adapter'.
| src/index.ts(176,23): error TS2345: Argument of type 'import("C:/src/teams-ai/js/samples/04.ai.e.chainedActions.devOpsBot/node_modules/botbuilder-core/lib/turnContext").TurnContext' is not assignable to parameter of type 'import("C:/src/teams-ai/js/node_modules/botbuilder-core/lib/turnContext").TurnContext'.
|   Types have separate declarations of a private property '_adapter'.
| yarn build failed with exit code 1
Stopping 11 active children
Aborted execution due to previous error
To Reproduce

Steps to reproduce the behavior:

1.In the root JavaScript folder, install and build all dependencies
```bash
cd teams-ai/js
yarn install
yarn build

Expected behavior

I expect to be able to build and run the samples.

Hi @ryriddle, thank you for your patience. It turns out that botbuilder was not the same version across projects; particularly teamsChefBot. 🤦🏻♀ We are working to get a PR merged in today, but if you are in a rush or have a few minutes, could you bump botbuilder to 4.19.3 and let us know how that goes?
If not, again we hope to have the merge in asap.  We still have some more validating to do across samples.

Thanks, this issue is fixed. But now I am facing this issue in node v16 and v18. https://github.com/microsoft/teams-ai/issues/180


Update cwd loss

In the semantic segmentation task, even though the teacher model and the student model are trained in the same data set and have the same size of input, their outputs may be different. For example, the output of the student model is 16 times down sampling while the output of the teacher model is 8 times down sampling, which will lead to the loss cannot be calculated properly. We can resize the output of the student model to the output of the teacher model by adding the resize function in MMCV. Note that resize will not work when the output of the student model is the same as the output of the teacher model.

Hi @ChenDirk！We are grateful for your efforts in helping improve this open-source project during your personal time.
Welcome to join OpenMMLab Special Interest Group (SIG) private channel on Discord, where you can share your experiences, ideas, and build connections with like-minded peers. To join the SIG channel, simply message moderator— OpenMMLab on Discord or briefly share your open-source contributions in the #introductions channel and we will assist you. Look forward to seeing you there! Join us ：https://discord.gg/UjgXkPWNqA
If you have a WeChat account，welcome to join our community on WeChat. You can add our assistant ：openmmlabwx. Please add "mmsig + Github ID" as a remark when adding friends：）
Thank you again for your contribution❤ @ChenDirk


uf case update for contrib/drivers/mysql

Codecov Report
Patch coverage has no change and project coverage change: +0.05 :tada:

Comparison is base (5f14863) 78.65% compared to head (0f5b8f7) 78.71%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2569      +/-   ##
==========================================
+ Coverage   78.65%   78.71%   +0.05%
==========================================
  Files         630      628       -2
  Lines       51509    51389     -120
==========================================
- Hits        40515    40451      -64
+ Misses       9006     8962      -44
+ Partials     1988     1976      -12

Flag
Coverage Δ

go-1.15-386
?

go-1.15-amd64
?

go-1.16-386
78.69% <ø> (+<0.01%)
:arrow_up:

go-1.16-amd64
?

go-1.17-386
78.69% <ø> (+0.01%)
:arrow_up:

go-1.17-amd64
78.69% <ø> (+<0.01%)
:arrow_up:

go-1.18-386
?

go-1.18-amd64
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 4 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


TailwindCSS error

I want to make a project with React Native, Typescript and Tailwind but I always get this error when I work with Tailwind.
No overload matches this call.
  Overload 1 of 2, '(props: ViewProps | Readonly<ViewProps>): View', gave the following error.
    Type '{ children: Element[]; className: string; }' is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes<View> & Readonly<ViewProps>'.
      Property 'className' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<View> & Readonly<ViewProps>'.
  Overload 2 of 2, '(props: ViewProps, context: any): View', gave the following error.
    Type '{ children: Element[]; className: string; }' is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes<View> & Readonly<ViewProps>'.
      Property 'className' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<View> & Readonly<ViewProps>'.ts(2769)

These are my files:
tsconfig.json:
{
  "extends": "expo/tsconfig.base",
  "compilerOptions": {
    "strict": true
  }
}

tailwind.config.js:
/** @type {import('tailwindcss').Config} */
module.exports = {
  content: ["./App.{js,jsx,ts,tsx}", "./src/**/*.{js,jsx,ts,tsx}"],
  theme: {
    extend: {},
  },
  plugins: [],
};

package.json:
{
  "name": "app",
  "version": "1.0.0",
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "web": "expo start --web"
  },
  "dependencies": {
    "@expo/metro-runtime": "~3.1.3",
    "expo": "~50.0.8",
    "expo-status-bar": "~1.11.1",
    "react": "18.2.0",
    "react-dom": "18.2.0",
    "react-native": "0.73.4",
    "react-native-web": "~0.19.6"
  },
  "devDependencies": {
    "@babel/core": "^7.20.0",
    "@types/react": "~18.2.45",
    "tailwindcss": "^3.3.2",
    "typescript": "^5.1.3"
  },
  "private": true
}

babel.config.js:
module.exports = function (api) {
  api.cache(true);
  return {
    presets: ["babel-preset-expo"],
    plugins: ["nativewind/babel"],
  };
};

App.tsx:
import { StatusBar } from "expo-status-bar";
import { Text, View } from "react-native";

export default function App() {
  return (
    <View className="flex text-green-500">
      <Text>Open up App.tsx to start working on your app!</Text>
      <StatusBar style="auto" />
    </View>
  );
}

Please can someone help me

You haven't installed nativewind - its not listed in your package.json dependencies....?
Also if you're using typescript consider adding this here to add types to your project for className property

TypeScript issues depend on your projects

structure
dependencies
configuration

I cannot provide any assistance with out a full minimal reproduction repo.
I'm going to close this issue as there is not enough information here for me to provide assistance, but if you reply with a mimimal reproduction that I can reopen the issue


Eliminate null errors in resolver

Issue #, if available:
Closes #375
Description of changes:
Make WithError conditional on the presence of an error in resolveFetcher
Testing performed:
Ran integration test suite. Confirmed approximately 80 fewer instances of "error":null.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Confirmed approximately 80 fewer instances of "error":null.

Is this implying that there are no instances of this error after the change?

Is this implying that there are no instances of this error after the change?

No. There are still approx 43 instances, which I noted in #375 are due to us using an old version of containerd. I'll be PRing a bump of that version soon, separately and with mostly unrelated other motivation.

Are we sure we want to log every digest, or just ones with errors?

I might suggest that the errors show up at level:error and the others at info or debug. I opened #426 today about configurable test output verbosity. However, that's another concern for another issue/PR. I'd like to land this to get it off my plate.


SPARKC-531: Allow non-cluster prefixed options in sqlConf

Previously, parameters set in the SqlConf via "SET ? = ?"
required setting cluster/parameter. With default/parameter
being the catch all for non specific clusters. In this patch
we allow setting a parameter without any cluster prefix.

Build against Scala 2.10 finished with failure

Build against Scala 2.11 finished with failure

Build against Scala 2.11 finished with success

Build against Scala 2.10 finished with failure


Addressed Target Tracker Assert Errors

Along with addressing the 0 probability issue, I turned target_desc's traits into numpy arrays because the target_desc's probabilities for each description was an integer, so in close_match, it would be doing scalar multiplication and then summing up the vector into one value instead of a dot product.
Target Tracker passes the assertion test now. I forgot to write the code on a different branch.

Closing as duplicate of #37


fix([BUG] Fix the problem caused by duplicate component names and htm…

Issue Number: close #1267
<!--

Thank you for contributing to StreamX! Please make sure that your code changes
are covered with tests. And in case of new features or big changes
remember to adjust the documentation.

### What problem does this PR solve?

Issue Number: close #1267

Problem Summary:

### What is changed and how it works?

Fix the problem caused by duplicate component names and html tags

Feel free to ping committers for the review!

LGTM


Building for iOS, but the linked library 'libktx_read.a' was built for iOS Simulator.

/Volumes/ShareDisk//IOS/Unity-iPhone.xcodeproj Building for iOS, but the linked library 'libktx_read.a' was built for iOS Simulator.
what can i do for this

Hi and thanks for reporting,
I've added iOS simulator binaries in 1.3.0 and 2.2.1 respectively, having tested that it works both in simulator and on device.
You seem to have a conflict of the libraries now. Can you share which versions of KtxUnity, Unity and Xcode your are using?

How did you install KtxUnity?
If you cloned it from GitHub (or downloaded a ZIP), make sure the binaries are properly fetched (since they are GIT LFS files).

i try copy *.a to Simulator dir
it is ok

Hello everyone.
I am also experiencing the same issue on my end.
XCode version: 13.4.1
Unity version: 2021.3.11
KtxUnity version: 2.2.2
KtxUnitx was installed using Unity´s package manager and openupm.
I can confirm that Unity exports all binaries (simulator and device) during xcode generation, but Xcode tries to build the project with the simulator binaries instead of the device binaries.
Deleting the simulator binaries inside the xcode project solved the problem for me. I do not know if there is a way to tell xcode which binaries to build or if I am missing a setup step.

Hello everyone.
I am also experiencing the same issue on my end.
XCode version: 13.4.1 Unity version: 2021.3.11 KtxUnity version: 2.2.2
KtxUnity was installed using Unity´s package manager and openupm.
I can confirm that Unity exports all binaries (simulator and device) during xcode generation, but Xcode tries to build the project with the simulator binaries instead of the device binaries.
Deleting the simulator binaries inside the xcode project solved the problem for me. I do not know if there is a way to tell xcode which binaries to build or if I am missing a setup step.

@Elyptos Thanks for the feedback.
Any chance you could try Xcode 14.1 ? I'm asking, since I don't have a problem and we should find out why.
Thanks

I finally know a proper solution that was applied in another package. The fix will come in an update soon™.

Fixed in KTX for Unity 3.3.0! Please transition to that package, as it is the official successor.
Full list of changes
Added

Embedded Linux support
Apple tvOS support
Android x86 and x86_64 support
Runtime tests that load KTX 2.0 files

Changed

Moved Editor scripts into namespace KtxUnity.Editor
Updated binaries to version 1.2.1.

Fixed

Code format in markdown files
Apple iOS device and simulator SDK binaries are properly included/excluded, depending on target SDK.
Compilation succeeds on non-supported platforms
System.EntryPointNotFoundException for symbols ktx_get_image_offset and ktx_get_image_size on Windows.
Using GraphicsFormatUsage (instead of the obsolete FormatUsage) in 2023.2 or newer.
Crashes and undefined behavior caused by incorrect marshaling when using the IL2CPP scripting.


Implemented ConnectionManager and InvocationService

There are lots of style issues in this PR. When I run npm test, tslint fails with numerous errors. Please correct them.

other than minor comments, :+1:

:+1:

:+1:


Add powershell command to create dev drive

Suggested new feature or improvement
It would be nice if there is command like Create-DevDrive -Path <path> -Size <size> to create and mount/unmount dev drive from powershell.
Scenario
I like to automate my initial setup, and right now i can't find a way to script creation of dev drive.
Additional details
No response

Not exactly what you described, but as a step in that direction, there is a -DevDrive switch that was recently added to Format-Volume which might help with what you are trying to do. https://learn.microsoft.com/en-us/powershell/module/storage/format-volume?view=windowsserver2022-ps#-devdrive

@soredake
This can be done via a WinGet Configuration file.
The StorageDSC Module supports this functionality, and there is an issue at GitHub:

https://github.com/dsccommunity/StorageDsc/issues/276

I've reached out to ask the team to add an example at https://aka.ms/dsc.yaml


Redefined WIN32 for MINGW

c:/msys1100/bin/../lib/gcc/x86_64-w64-mingw32/11.0.0/../../../../x86_64-w64-mingw32/bin/ld.exe: IlmThread\IlmThreadPool.o:IlmThreadPool.cpp:(.text+0x53): undefined reference to `IlmThread::Mutex::lock() const'
c:/msys1100/bin/../lib/gcc/x86_64-w64-mingw32/11.0.0/../../../../x86_64-w64-mingw32/bin/ld.exe: IlmThread\IlmThreadPool.o:IlmThreadPool.cpp:(.text+0x69): undefined reference to `IlmThread::Mutex::unlock() const'

@Jamaika1, thanks for the fix. Simple as it is, the project require that all contributors sign the CLA form, could you click through the EasyCLA form above? Thanks.

This is a simple fix. I am amateur and afraid of the legal consequences of unknown EasyCLA options. Thanks.

I am amateur and afraid of the legal consequences of unknown EasyCLA options.

What legal consequences are you worried about?

Nowadays in Europe there are many paid or unpaid interesting websites with various options where you can then look for a lawyer. I'm not interested, although I'm bored.

The CLA primarily says that you own the code and have the legal rights to send it to the project, and that you agree that it is to be licensed under the project's open source license (BSD 3-clause, in this case). It doesn't obligate you to anything beyond what you probably already think you would be doing by making the open source contribution. But it protects both you and the project by stating it outright instead of letting your and our obligations lapse to whatever default is implied by your or our jurisdictions and that you may not even be aware of. And if you are employed by a company that might think they have any claim to your IP output, then the corporate CLA is also highly protective of you by ensuring that your employer acknowledges that you have the right to send the code to the project under our license and that they can't really object after the fact and claim you did something unauthorized.

Problem with IlmThreadWin32 in jpegXL
https://gitlab.com/wg1/jpeg-xl/-/commit/849ebf6e9493ffd65d9ce72b3ac8cbe52a2a3bd3
cjpegXL_jxl.exe image_21447.pgx image_21447.jxl -q 68 -s 8
djpegXL_jxl.exe image_21447.jxl image_21447.exr
Read 416995 compressed bytes [0.0.1-849ebf6e Supported/generated: Scalar]
Wrote 7610279 bytes; done.
1563 x 1558, 13.08 MP/s [13.08, 13.08], 1 reps, 4 threads.

Library:          brotli        1.0.9        c   [24 Sep 2020]
                  brunsli                    c++ [11 Aug 2020]
                  butteraugli   JXL          c++ [29 Sep 2020]
                  highway       JXL          c++ [29 Sep 2020]
                  skcms                      c++ [31 Jul 2020]
                  libJPEG-turbo 2.0.6 8bit   c   [23 Jul 2020]
                  libsJPEG      0.1.0        c++ [03 Mar 2020]
                  lodePNG                    c++ [15 Jun 2020]
                   libPNG       1.6.38       c   [24 May 2020] {for APNG}
                   giflib       5.2.1        c   [24 Jun 2019]
                     zlib       <IP_ADDRESS>     c   [09 Jul 2019]
                  openexr       2.5.3        c++ [25 Sep 2020] {instead TIFF, Adobe DNG}
Compiled by Jamaika

Allocations: 2600 (max bytes in use: 1.109184E+08)
Assertion failed: status == WAIT_OBJECT_0, file IlmThreadWin32.cpp, line 83

Hi @Jamaika1, does your PR fix the issue you reported with jpegXL? The assert failure appears to be unrelated to that.
It may be that the 'WaitForSingleObject' and 'CloseHandle' added to the destructor by #828 should not be called if join() has already been called. Perhaps Thread::join() should set _thread to zero, and Thread::~Thread and Thread::join() should do nothing if _thread==0. The assert should probably also accept status==WAIT_ABANDONED
(It's not easy for me to test set up a case to reproduce and test this, though, as I'm in a Windowsless office)

HI @peterhillman, my PR fix allowed me to merge IlmThreadPool with IlmThreadMutex in GCC.
However, I haven't tested the JPEGXL codec.
JPEXL creator recommends delete openexr and after the problem.
https://gitlab.com/wg1/jpeg-xl/-/issues/44


Should fix licenses

Recently npm deprecated the object-literal license format in favor of SPDX license specifiers. See https://docs.npmjs.com/files/package.json#license
We should update both 1.x and 2.x branches with just "MIT" instead of the current object literal.
Spotted via http://npm1k.org/

Ah I see #693 takes care of this for the 1.x branch.

Landed for v1 and I’ve got a fix for v2 in my working copy. Closing this to get it out of the inbox.

@kriskowal Not seeing this in v2 still. Just curious if this is still a valid bug?


Sets CameraSystemType on non-default config profiles

Overview
The following profiles didn't have their CameraSystemType set:

EyeTrackingDemoConfigurationProfile
HandInteractionAllExampleMixedRealityToolkitConfigurationProfile
Dictation.MixedRealityToolkitConfigurationProfile.asset
Speech.MixedRealityToolkitConfigurationProfile.asset

/azp run mrtk_pr


ANKFixedWidthInteger.BitPattern

I realized, while pondering some improvements to ANKSignedMangitudeConvertible (#85), that ANKFixedWidthInteger should require it's BitPattern to be of the same type as Magnitude.BitPattern (they could share a separa type for interoperability or whatnot). This makes perfect sense for fixed-width binary integers (which have two's complement semantics in Swift). Having built a two's complement-based big integer model before, I claim that the same cannot be said for flexible-width integers. The reason being that such types may or may not allow trailing zero-words depending on their signed-ness, meaning that their bit patterns may be different.

This will ban differently sized (sign/magn)itude integer pairs, which seems reasonable.


Add LottieFiles / Miscellaneous

website:
https://lottiefiles.com/
examples:
https://matterport.com/
https://www.axure.com/
https://gifs.com/
https://calendly.com/
https://www.cetelem.fr/
https://www.chargify.com/
Hey @AliasIO  Couldn't identify here. https://strapi.io/
Although there is a great identifier that I wanted to take but did not work during the tests. If we take it then we can remove all low-frequency fingerprints.
Will this work?
"dom": {
      "clipPath": {
        "attributes": {
          "id": "__lottie_element_\\d+"
        }
      }
    },

That should work, or you can do clipPath[id=*"__lottie_element_"]. I also found figure[class*="styles_lottieWrapper__"].

That should work, or you can do clipPath[id*="__lottie_element_"]. I also found figure[class*="styles_lottieWrapper__"].

Triggered a number at the end for some reason and did not think that you can not pay attention to it. ; (
Thanks!!


not correct dependency

org.nextrtc.signalingserver
nextrtc-signaling-server
0.0.6-SNAPSHOT

should be changed to

org.nextrtc.signalingserver
nextrtc-signaling-server
0.0.6

now version is set to 1.0.0-RC1


Actually real retries

So I sorted this out in a different project, but basically the Faraday retry middleware only handles timeouts on the request side.  Once you get into the response processing, that retry won't actually help you, which is kind of a problem for rate limit exceeded errors.
@jarthod

sorry wrong branch


Log learner data processing times

This also adds the answer count to the log message.
In additional it handles a new case where lara_start is nil
lara_start will be nil if there aren't any 'dirty' or modified answers in the data sent from LARA.
If the logging mechanism works with CloudWatch then I'm going to consider
not storing these events in the database and removing the web routes to access the data.
I won't really know how it works out until we get this on staging and I can try setting up the CloudWatch metrics.
https://www.pivotaltracker.com/story/show/157824597

@knowuh The test failures here seem to be random so I think this is ready to go.


Syntax error when navigate to another version

Hi
Created a table all is fine.
but when I try this
df_history1 = spark.sql("SELECT * FROM agg VERSION AS OF 1")
I get
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/richardg/dist/spark-3.0.2-bin-hadoop3.2/python/pyspark/sql/session.py", line 649, in sql
    return DataFrame(self._jsparkSession.sql(sqlQuery), self._wrapped)
  File "/Users/richardg/dist/spark-3.0.2-bin-hadoop3.2/python/lib/py4j-0.10.9-src.zip/py4j/java_gateway.py", line 1305, in __call__
  File "/Users/richardg/dist/spark-3.0.2-bin-hadoop3.2/python/pyspark/sql/utils.py", line 134, in deco
    raise_from(converted)
  File "/Users/richardg/dist/spark-3.0.2-bin-hadoop3.2/python/pyspark/sql/utils.py", line 33, in raise_from
    raise e
pyspark.sql.utils.ParseException:
mismatched input 'AS' expecting {<EOF>, ';'}(line 1, pos 26)

== SQL ==
SELECT * FROM agg VERSION AS OF 1

working with pySpark on Spark 3.0.2 and delta lake 0.8.0.
Seems strange because all other feature works as they should
Any idea ?

VERSION AS OF in SQL command is not supported in OSS Delta Lake because Spark's SQL parser doesn't support it yet. As a workaround, you can use the DataFrame APIs to do the time travel. See https://docs.delta.io/latest/quick-start.html#read-older-versions-of-data-using-time-travel

Hi
Thanks for the help.
But I've defined the delta as hive table and I cannot see how to use API instead of SQL in this case do you have any idea ?
Thanks

Hi
I've found the way to use it on hive table you just have to know the location of the table by making
DESCRIBE FORMATTED
Then you got the data Location and you can use the API
Thanks

There is a relate issue tracking the addition of this feature:
https://github.com/delta-io/delta/issues/128


Validators for add_crawl

Need validators on the file uploads that constrain the file type allowed in.

Flask-wtf is not cooperating on this one. Gonna move it back to backlog to be fixed next week.

No longer a problem in memex-django.


[docs]  copy link not including token category

Describe the bug
On the Tokens documentation on ux.redhat.com the link does not include the category for the token.
Which Component?
tokens docs
Steps to reproduce

Go to https://ux.redhat.com/tokens/color/

Find the token --rh-color-white

Click the "Copy" icon on the right for --rh-color-white

The link copies over as https://ux.redhat.com/tokens/#rh-color-white instead of https://ux.redhat.com/tokens/color/#rh-color-white

Expected behaviour
The copied links should include the category
Screenshots
No response
Element HTML
No response
Operating System (OS)
macOS
Browser
No response
More browser information
No response
Additional Info
No response

Closed with PR #1210


Include build.sh script

This is helpful to package the extension up with all the compiled assets. Would like to get some feedback from @franzliedke and @tobscure on extension distribution, but I'd say having easy support for developers to create an archive of an extension that can then get uploaded to GitHub for users to download is good first step.

We'll work on something like this when building the extension repository. For now, please take care of packaging yourself. :)

I did whip this up (untested) while writing the docs as an example.


Move jsonutils module to java interop

Purpose

$title.

Fixes #
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[ ] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

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

@@           Coverage Diff           @@
##           master   #20072   +/-   ##
=======================================
  Coverage    19.9%    19.9%
=======================================
  Files          55       55
  Lines        1437     1437
  Branches      218      218
=======================================
  Hits          286      286
  Misses       1138     1138
  Partials       13       13

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 85308fc...af5ea1b. Read the comment docs.


can't got requirejs domReady.js

hi,  FYI bower-installer can't separate domReady.js to path folder.
hope on only me
thanks

Can you paste your bower.json?

{
"name": "myapp",
"version": "0.0.0",
"authors": [
"Wandy Irawan<EMAIL_ADDRESS>],
"description": "this for learn express",
"license": "MIT",
"ignore": [
"**/.",
"node_modules",
"bower_components",
"test",
"tests",
"LICENSE",
"package.json",
".md",
"*.json"
],
"dependencies": {
"angular": "~1.2.8",
"requirejs": "~2.1.17",
"requirejs-domready": "~ 2.0.1",
"angular-bootstrap": "~0.12.1"
},
"install" : {
"path"  : {
"js": "/public/vendor/js/",
"css": "/public/vendor/css/"
}
}
}

Please have a look into the sources property. https://github.com/blittle/bower-installer#install-files-to-multiple-locations
As a sibling property to install.path, you can list the sources that should be mapped directly to the defined path.


Can't edit files

CentOS 7.7.1908, Nginx 1.16.1, OnlyOffice Community 10.5.2
Nextcloud 18.0.3 on another server with FreeBSD 12 and Nginx, OnlyOffice Nextcloud app 4.1.4
Everything worked fine before. Now I can't edit any files via Nextcloud app. The files open successfully but I can only see content but can't edit.

I suppose the ticket should be closed. I discovered that OnlyOffice app for Nextcloud can't edit old formats (doc, xls) but can edit new docx, xlsx. Is it correct behavior?

Hello @slaver666 Yes, doc and xls need to be converted to docx or xlsx format for edit.


Refactor Importers::Organisations

This is the first iteration into refactoring Importers::Organisations.  There is more work to do, it is now in a good position to create a PR.
Why
This is a big refactor for Importers::Organisations. This class was doing too many things; it broke the single responsibility principle and it is making things really hard to test. We decided to postpone refactoring it because we were not sure about the source and format of the information we were fetching from the Content Store and the Search API.
To list a few things this class needed to know about:

SearchAPI query format and URLs
Content Store query format and URLs
Pagination through search API responses
Data transformation
Persistence of ContentItems and Organisations

Changes

Extraction of two services: one to retrieve Content Items from the ContentStore, and another one to fetch all the Organisations.
Isolation of the clients to connect to the Content Store and the Search API
New rake task to import all organisations.
Creation of a new importer, to load all the organisations in one go.
Add feature tests to exercise all the stack because we are mocking most of the interactions.

Next steps

Introduce query objects to query Content Store and Search API.
Decrease the number of mocks.
Return ContentItems in the ContentItemsService and Organisations in the OrganisationsService.
Move to the models the methods create_or_update!
Clients for the content store and the search API would need to be replaced by GOVUK adapters. We will do it once we move to the new infrastructure.
Use Webmock instead of stubbing HTTParty

The naming of classes and methods in importers and the name-spacing in services could mirror the aforementioned theme. Ideally naming of a class follow noun pattern and methods mostly verbs.

Not sure what do you mean by this. I do think I am mirroring it using proper naming for classes and methods. Indeed I find that your suggestion is not following the pattern you advice: Importers::ContentItem.new.by_organisation is not using a verb for the method name.

You may want to consider the renaming Importers::AllOrganisations to Importers::Organisation and renaming (i.e in this context) the somewhat obscure def run..;end method to def all..; end so this would read Importers::Organisation.new.all.

Same goes for Importers::ContentItemsByOrganisation, here the relationship between ContentItem and Organisation is made too apparent and to a large extent rigid. IMHO it should be ContentItem and then this exposing how (i.e a ContentItem) it establishes its relationship (i.e with an Organisation via it's slug) in its behaviour or method. So run which imports ContentItems by an organisation's slug should be renamed todef by_organisation(slug);...end;, Hence Importers::ContentItem.new.by_organisation('slug')

The intent here is to foster sensible defaults, avoid plurality, avoid any future mis-representation of identity (i.e easier to visualize / represent in Diagrams and easier to know where future changes should be made) and to an extent make clearer the specs/tests narratives. An example of the latter can be found here.

Observe that expect { subject.run('the-slug') }.to change { ContentItem.count }.by(0) and expect { subject.by_organisation('the-slug') }.to change { ContentItem.count }.by(0) the latter more explicit and keeps the context.

Also this will lead to narrative like these:

Sorry @ikennaokpala, I am not very happy with using the pattern Importers::ContentItem.new.by_organisation, for the same reason I would prefer not adding all the find methods to a model.  It might feel right at the beginning, but it doesn't evolve well.
This approach promote long classes doing more than 1 thing at a time. This could cause a number of issues like merge conflicts and other clashes when developers modify the same class for two different things.
Adding new importers for Content Items will also be more tricky, as they need to be accommodated in the same class. Say you want to import all content items that have been updated in the last 24 hours. I would prefer not to add a new method to the Importers::ContentItem, and create a new class with its unit test.
As a general principle, it feels to me that it breaks the Single Responsibility Principle, or at least, we are not promoting it.
When it comes to your RSpec example, agree that it does not read very well, but I think it is related to a misused of subject. The alternative is not great either. I will prepare a commit to make it more explicit.
When it comes to the narrative examples, this narrative is good enough for me, I honestly don't see a big difference between your examples and mine:

Importers::ContentItemsByOrganisation
  #run
    when the content item does not exist
      creates a content item per attribute group
      updates the attributes
    when the content item already exists
      updates the attributes
      does not create a new one

The same theme also goes for all under Services, consider name-spacing with Services preceding rather the ...Service suffix. The Clients namespace is an example of this, SearchAPI and ContentStore stand out and their find_each and find methods convey a somewhat multiple and singular message respectively.

I am not sure either about using a namespace instead of a Suffix, although I don't have a strong opinion about it.
These are the pros for using a Suffix for Services:

It is the way it is usually done in Rails community, or at least, I have always seen it this way. If you search for Service Objects and Rails in Google, most of the references uses the suffix (in other languages like Java is also a common practice)
Using suffix seems to be the Rails way for: controllers, helpers, mailers and jobs.
I don't favor using a namespace unless I have a folder for it, although, I know this is just a personal preference.

This commit e21ef60 appears redundant further down the line of commits. A possible fixup.

Not sure why you think this is redundant. Our test suite had a timezone issue that surfaced once I run them in Spain.
I placed the fix as the first commit because I wanted to make it explicit that I was fixing an existing issue. If I fix it up I will hide this fact, so I am not very happy doing it.

DRY-UP and other smaller commits IMHO can also be squashed or fixed up.

Sorry, I disagree here as well. A dry-up commit do not need to be squashed. I didn't dry-up before because I wanted to have readable diffs to facilitate the review, as the whole PR is not easy to follow.

Enjoyed the Collectors idea but noticed later you move away from it, really why? 🤔. I encourage you to re-visit this area and possibly to squash or fix it up to make this easier to follow. IMHO importers and its related parts are growing, we should consider moving it back to /lib, this is because it plays a complimentary role and to a large extent it is becoming isolated/independent in it's own right.

Agree that collectors is a cool name, but I wasn't sure about them because what we have is very simple, and move into collectors feels like over-engineering. Once we start doing more advanced stuff, we can revisit it.
Not sure why you want to move stuff to the lib folder. lib is not autoloaded in Rails 5, and if you autoload it, you need to add it to the eager_load_paths folder; this is not recommended, as the lib folder is supposed to be used by non-vendor plugins.
But even without the lib issue in Rails 5, I can't see the benefit of having the importers in the lib folder, to be honest. Indeed, I would like to run away from having a lib folder in our app, or use it only for vendor plugins.

Readme section on the importers rake tasks needs to be a lot more explicit so none Rails devs can follow with little hand holding. Also, some background given of the SearchAPI and ContentStore and also information on errors like Errno::ETIMEDOUT: Failed to open TCP connection to www.gov.uk:443 (Operation timed out - connect(2) for "www.gov.uk" port 443) would be a nice to have.

I don't know how I can be a lot more explicit on something so simple, but I would love to learn how to do it. I will be more than happy to accept a PR with improvements to the documentation.
If you want to document TCP errors in the PR, although I am ok with it, but please, add a markdown document into the docs folder in the app.
@ikennaokpala I appreciate all your feedback, and although I think it is legitimate, I just think we have very different ways to develop Rails apps. I guess this is the reason behind not being happy accepting these changes.

@pmanrubia glad to read through your comments.. the context of the renaming part of this review was from a more traditional OOP view. I understand this doesn't alway cut it. I am delighted that your changes here have brought in some progress. I hope this PR comments from both of us will be re-visited at some point.

@pmanrubia glad to read through your comments.. the context of the renaming part of this review was from a more traditional OOP view. I understand this doesn't alway cut it. I am delighted that your changes here have brought in some progress. I hope this PR comments from both of us will be re-visited at some point.

@ikennaokpala thank you again for your review. I am very happy to revisit this approach at any time, but I would like to merge it as this PR is moving forward the codebase into a better position.
I am closing this PR, so the comments and fixups are not removed.
Superseeded by #39


Validate input for cilium policy enforcement mode

Description of changes:
This PR validates the input for cilium's policy enforcement mode, allowed values are "default", "always", "never" as per cilium docs https://docs.cilium.io/en/v1.8/policy/intro/
Design doc for reference: https://github.com/aws/eks-anywhere/blob/main/designs/cilium-configuration-policy.md
The PR to set this value in the cilium chart values isn't merged yet, so an e2e test will follow with the PR that sets this value
Testing (if applicable):
unit tests
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm


commands: Add quiet mode

Does this flag require some sort of testing?
Fixes #1218

Does this flag require some sort of testing?

Only manual.

How quiet is this?

Hugo will show no error messages, e.g. if you include a partial that doesn't exist or your call a template function with a wrong number of arguments.

And fatal isn't the same as error.

Which of JWW's logging level should I use instead? It's need have a higher priority than ERROR.

As I see it quiet mode should only show ERROR or FATAL -- nothing else, not even the stats.

What is the status on this one?

I'll work next on it. Quick question: arcoding to jww's docs jww.FEEDBACK seems to write to the console regardless which logging level is set.
For example should Hugo show that the web server is available? Should such messages also suppressed?

I don't thinks this is a simple task, probably not worth it.
quiet means .... quiet, so nothing to stdout or stderr that isn't prefixed with ERROR or FATAL. Nothing.

We should either stop using FEEDBACK or FEEDBACK should be altered in some way.  It should either respect the logging thresholds or provide some other way to squelch the output.

Feedback uses fmt.Println and which isn't controlled by the logger. It would require that jww has an option for disabling this behavior. But you're right: Is it worth it?

But you're right: Is it worth it?

No. Don't spend time on this. This can easily be handled by the user by redirecting output.

Then I'll close this pull request.


freerdpUnstable build error

Currently this is happening when trying to build freerdpUnstable, I'm not sure what the reason is that it can't find gstreamer so I'm going to report it as an issue. There has been a beta9 update since then by the way. Thanks!
-- checking for module 'gstreamer-1.0'
--   package 'gstreamer-1.0' not found
-- checking for module 'gstreamer-base-1.0'
--   package 'gstreamer-base-1.0' not found
-- checking for module 'gstreamer-app-1.0'
--   package 'gstreamer-app-1.0' not found
-- checking for module 'gstreamer-audio-1.0'
--   package 'gstreamer-audio-1.0' not found
-- checking for module 'gstreamer-fft-1.0'
--   package 'gstreamer-fft-1.0' not found
-- checking for module 'gstreamer-pbutils-1.0'
--   package 'gstreamer-pbutils-1.0' not found
-- checking for module 'gstreamer-video-1.0'
--   package 'gstreamer-video-1.0' not found
-- Could NOT find GSTREAMER_1_0 (missing:  GSTREAMER_1_0_LIBRARIES GSTREAMER_1_0_INCLUDE_DIRS)
CMake Warning at cmake/FindFeature.cmake:46 (message):
      feature GStreamer_1_0 was requested but could not be found! ON / FALSE
Call Stack (most recent call first):
  CMakeLists.txt:504 (find_feature)

-- Skipping optional feature JPEG for codec (use JPEG library)
--     Enable feature JPEG using "-DWITH_JPEG=ON"
-- Skipping optional feature GSM for codec (GSM audio codec library)
--     Enable feature GSM using "-DWITH_GSM=ON"
-- Skipping optional feature IPP for performance (Intel Integrated Performance Primitives library)
--     Enable feature IPP using "-DWITH_IPP=ON"
-- FreeRDP GIT
CMake Warning at winpr/CMakeLists.txt:82 (export):
  Cannot create package registry file:

    /homeless-shelter/.cmake/packages/winpr/a995248e89e614f61fc6d45f7162a6c5

  No such file or directory

This build problem persists with version 1.2.0-beta1+android9. Not sure whats the cause. @wkennington do you have any ideas?

No gstreamer is passed to the package, and it never mattered in succeeding builds http://hydra.nixos.org/build/22026054/log/raw.

I think this is what stops it: CMake Error at channels/client/CMakeLists.txt:27 (list):   list sub-command REMOVE_DUPLICATES requires list to be present.
I skimmed what's changed between last success and first failure on Hydra, but I saw nothing related. https://github.com/NixOS/nixpkgs/compare/7021988dd1d7b5b4e2abf852fee872085ab892da...aef701babc933a2d8a4059029f81743ab4a555b5

Hmm, maybe the range returned by Hydra was wrong. I suspect cmake update is the cause, merged into master on 07338d13c97df.

@vcunat Thanks for looking in to this by the way. :beers:

Confirmed that the mentioned merge commit contains the culprit.