How to include params inside the body.

Rspec spec fails on the following test case. Can anyone please help me with sending params inside the body?
Test case:
  describe 'POST search' do
    it 'renders search' do
      request.headers['Content-Type'] = 'application/json'
      request.headers['Accept'] = 'application/json'

      post :search, body: {name: {query_type: 'match', value: ['xy']} }.to_json

      expect(response.status).to eq(200)
      expect(response.body.include?('TWEEDLE'))
    end
  end

Controller:
def search
    page_params = pagination_params

    query_hash = QueryPreprocessor.params_to_query_with_types(JSON.parse(request.body.read).deep_symbolize_keys)
    logger.info "query_hash: #{query_hash}"
    es_query_json = Elastic::QueryBuilder.facility_search_v1(query_hash, page_params).to_json
    logger.info "es query: #{es_query_json}"

    facilities = facility_helper.search es_query_json
    json_response build_facilities_response(facilities)
  rescue ApiError => e
    render json: e.response, status: e.status
  end

and these are the params which I want to include inside the body, which is being called in the controller:
def pagination_params
    page_params = {}
    page_params['size_params'] = params[:size] || 50
    page_params['from_params'] = params[:from] || 0
    page_params['sort_params'] = params[:sort]
    page_params['order_params'] = params[:order]
    page_params
  end

Closing as duplicate issue, picking how to send params depends on your version of Rails. Check the documentation for your version of Rails as to how post works (its not RSpec functionality), and then make sure you're using the right kind of spec (which is documented but not mentioned here).

I strongly disagree here. Rails works as expected, RSpec-Rails works unexpected. Sending a request body is standard rest, and also supported in RSpec-Rails. But the behaviour of the post :query_insurances, body: { definition: { corporation_id: 17, currency: "EUR" } } differs from the real-life curl example.
As said, this is not about how to add params inside the body.

rspec-rails is a thin wrapper around the Rails test helpers, post is one of these methods, we don't modify its original Rails behaviour in any way, that Rails has different behavious between your usage of post and how curl invokes the controller is down to how Rails test helpers don't replicate the full stack but instead simulate it, hence why I refer to checking the Rails documentation


fix(build): set the upper bounds of dependencies

The latest commit on the master branch fails to compile. This commit
sets the upper limits of dependencies to prevent this error.

Thank you!


Improve active area edits in RPU Editor

It would be nice to update the edits inside active_area to support replacing a L5 metadata with another L5 metadata.
This would be helpful and very useful for videos that have a variable aspect ratio, for example videos with IMAX scenes.
I mean to do something similar to this:
{
	"active_area": {
		"presets": [
			{
				"id": 0,
				"left": 0,
				"right": 0,
				"top": 138,
				"bottom": 138
			},
			{
				"id": 1,
				"left": 190,
				"right": 190,
				"top": 0,
				"bottom": 0
			}
		],
		"edits": {
			"0, 0, 276, 276": 0,
			"380, 380, 0, 0": 1
		}
	}
}

This way the user would not have to go through the effort of manually searching for all the scenes with different aspect ratios and making a range of frames list of all the scenes.
Thanks and regards!

P.S. If this is finally implemented, it would be ideal if there is also an internal counter that counts each time an L5 metadata is replaced, and once the whole process is finished, a summary is displayed showing the number of times each L5 metadata replacement has been applied.
This would be so that we can check and make sure that all frames have been replaced and there was not some scene that had different L5 metadata (for example "0, 0, 276, 277" instead of "0, 0, 276, 276").

@quietvoid can confirm this, but I am pretty sure you can already do this, "replacing a L5 metadata with another L5 metadata". I am confused by your example, with 4 values provided per edit, instead of a range of frames as required in current syntax. It's also unclear how you're proposing to avoid manually searching for variable L5 scenes through a change in dovi_tool editor either. For a real-world example, I recently worked with a very complex video containing a number of scenes with different framing, and this is the .json I used to make L5 metadata edits:
{
  "mode": 0,
  "active_area": {
    "presets": [
      {
        "id": 0,
        "left": 970,
        "right": 968,
        "top": 277,
        "bottom": 277
      },
            {
        "id": 1,
        "left": 480,
        "right": 480,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 2,
        "left": 478,
        "right": 478,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 3,
        "left": 478,
        "right": 480,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 4,
        "left": 802,
        "right": 802,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 5,
        "left": 830,
        "right": 830,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 6,
        "left": 803,
        "right": 841,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 7,
        "left": 823,
        "right": 827,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 8,
        "left": 807,
        "right": 841,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 9,
        "left": 749,
        "right": 749,
        "top": 277,
        "bottom": 277
      },
                  {
        "id": 10,
        "left": 820,
        "right": 888,
        "top": 292,
        "bottom": 296
      },
                  {
        "id": 11,
        "left": 827,
        "right": 873,
        "top": 290,
        "bottom": 289
      },
                  {
        "id": 12,
        "left": 829,
        "right": 873,
        "top": 286,
        "bottom": 289
      }
    ],
    "edits": {
      "2702-4991": 0,
      "20277-20389": 6,
      "21075-21182": 7,
      "21183-21365": 8,
      "21366-21675": 9,
      "21676-21750": 8,
      "21751-21855": 10,
      "21856-21935": 8,
      "21936-21992": 11,
      "21993-22058": 12,
      "22059-22127": 8,
      "74164-74548": 1,
      "74681-74745": 2,
      "74746-74784": 3,
      "74785-75242": 4,
      "75358-76033": 4,
      "122358-122626": 5
    }
  }
}

@quietvoid That would be a fantastic addition to the export subcommand. If you decide to implement it, I'd definitely find it useful in my scripting. Appreciate your efforts.

I've refactored export to allow setting what data to export. Currently it supports 3 options:

all:    Exports the list of RPUs as a JSON file
scenes Exports the frame indices at which scene_refresh_flag is set to 1
level5: Exports the video's L5 metadata in the form of an editor config JSON

Maybe there are other relevant exports that could be useful, but this is all I could think of for my use cases, at least.

cc @R3S3t9999, anything that could be useful to avoid parsing the big JSON?

L5 and scene cuts sound good to me. That would be enough for my use cases as well. thanks

@manuelrn #256 should be enough for your use case.
You can use dovi_tool export -d level5 to get part of the editor JSON config for the active area.
Then you can edit the presets accordingly.


improve Linux backend of lab train

a few things to improve upon https://github.com/instruct-lab/cli/pull/374

[x] tighten requirements.txt
[ ] addressing TODOs

@alimaredia is this still relevant or can it be closed?

Closing for now, @alimaredia feel free to reopen if you want to revisit it


Sniff service protocol port from device

Fixes #1988
Before landing:

[ ]  Switch sky_engine to use an auto selected port
[ ]  Update iOS physical device
[ ]  Update iOS simulator device

@abarth @devoncarew

@abarth mostly for how you want the other part of this change to land in sky_engine.

lgtm
(in atom you can sort directives using cmd-option-o)

Related https://github.com/flutter/engine/pull/2515

@chinmaygarde for iOS changes.


Image on dockerhub ?

Hi,
I'm really interested with this project (already a user of the previous integration on HA), and I would like to know if it's planned to publish govee2mqtt on dockerhub ?
Indeed, I have a device on which I can run docker images, but only those available from dockerhub.
I'm not sure what are the prerequisites, and maybe you have your own reasons not to do it, but I had to ask :)
Thank you very much.
Pierre.

No plans to do this; it's more engineering work and maintenance effort, which I cannot afford, and shouldn't be necessary since the images are already publicly available via the GH container repo.

Yeah, I totally understand, as I said, I don't really know what the effort are, and I asked only cause I have a pretty limited hardware on this subject.
Maybe in the future they will open other possibilites to build containers. Or maybe I will go for another more openened hardware. Thanks for your reply and your work 👍


Draw Tools Remove Hooks Dragging Enable When clicking on rectangle and then circle without drawing

[ ] I've looked at the documentation to make sure the behavior is documented and expected
[ ] I'm sure this is a Leaflet code issue, not an issue with my own code nor with the framework I'm using (Cordova, Ionic, Angular, React…)
[ ] I've searched through the issues to make sure it's not yet reported

Steps to reproduce
Steps to reproduce the behavior:

step 1 : Click on Rectangle draw tool
step 2: Click on Circle draw tool
-step 3: Draw on map
...

Expected behavior
Circle with expected radius should draw
Current behavior
Map keeps on dragging and circle is not drawn properly
Environment

Leaflet version: 1.6
Browser (with version): Chrome
OS/Platform (with version):Windows

Additional context
I have already resolved this issue by modifying leaflet draw.js by changing remove hooks functionality and calling draggable as true at created event.
Minimal example reproducing the issue
Please create an example using https://leafletjs.com/edit.html or any other jsfiddle-like site.

[ ] this example is as simple as possible
[ ] this example does not rely on any third party code

This is the bug tracker for Leaflet, not for Leaflet.draw.


 I need to patch some things up with the code, but as soon as I do that, I'll put a release so you can use it as a developer plugin.

Hello again, I've just finished updating and fixing the plugin. I released a first experiemental version. You can use it as a dev plugin, since I don't know hhow yet how to place it as a downloadable plugin inside Dalamud. I'll check how and make it work. Thanks.


QueryParIter::map_collect and similar operations

Objective
par_iter is convenient, unless you need to collect the results into a Vec or HashMap.
Bevy commonly uses thread-local collectors, and aggregates them, for example, here:
https://github.com/bevyengine/bevy/blob/101037d0c2b62262a3ad239353bab7af0e69ff56/crates/bevy_render/src/view/visibility/mod.rs#L452-L454
it is not convenient because:

boilerplate thread-local setup
non-deterministic output

Solution
Add QueryParIter functions:

flat_map_collect (similar to .flat_map(...).collect()
filter_map_collect
map_collect

These functions might be not as universally applicable as for_each with thread-local aggregators, because more expensive, but:

easy to use
deterministic

Changelog
QueryParIter has new functions: flat_map_collect, filter_map_collect, map_collect.

This can be quite performance sensitive code. Some form of profiling on our existing stress tests would be nice. I'm also hesitant to promote a option that allocates on every call as well, particular if it's a Vec being recreated and regrown every tick of the app.

@james7132 suggestions how to benchmarks?
Overall, I don't believe, it will be bad. Malloc is cheap. Moreover, it is quite possible, it will actually increase performance, because it gives users an instrument to parallelize code, which was too hard to parallelize before.

I was helping some who needed this yesterday. This allows us to, for example, buffer events parallel and then dispatch them in sequence. Seems super useful to me.
Many useful features can degrade performance if misapplied. If the docs are clear about the performance characteristics, I think allocation shouldn't be a blocking issue.

I did lame benchmark.
I ran
cargo run --example many_cubes

and patched check_visibility function, because it seems to be a bottleneck.
https://github.com/bevyengine/bevy/blob/c1b785c360924d35789cfe5ad7e51a19efee0f4a/crates/bevy_render/src/view/visibility/mod.rs#L404
By default on my laptop it outputs about 18.5 FPS.
If I replace par_iter with non-parallel iter, FPS drops to about 15.0 FPS. So this function is indeed a bottleneck.
If I rewrite the function with .filter_map_collect(), performance stays at about the same 18.5 FPS. (diff).
Also tried running the same test with --release, performance of all three is roughly the same 200 FPS, so bottleneck is elsewhere.
To get precise perf difference, much better benchmark is needed.
So my conclusion is that if filter_map_collect is slower, it is not significantly slower. So seems to be good enough.

There is one bench that tests parallel iteration. You can run it with cargo bench heavy when in the `benches folder.

Ok, I tried adding another fake benchmark there.

Reduce the iterations from base benchmark to 10 (to make it a bit more realistic)
But increase batch size 10 times
copy-paste base benchmark to map_collect (non-parallel) and par_map_collect

diff
The output is
heavy_compute/base
                        time:   [530.31 µs 531.80 µs 533.31 µs]
heavy_compute/par_map_collect
                        time:   [570.93 µs 572.52 µs 574.15 µs]
heavy_compute/map_collect
                        time:   [2.4066 ms 2.4105 ms 2.4144 ms]

In this artificial setup, parallel map_collect is somewhat more expensive than parallel for_each and as expected significantly faster than non-parallel version.
Which is exactly what is expected: code is doing what it is supposed to do.
More correct benchmark would be comparison with Local<ThreadLocal<Cell<Vec<bool>>>> shenanigans. That would be a bit more effort to write, and this is probably not what we'd recommend to users anyway.

can you compare heavy_compute/base to main branch?
For checking with many_cubes, we usually use tracy https://github.com/bevyengine/bevy/blob/main/docs/profiling.md. And use show the histograms diff for the relevant systems.

I can compare against main branch, but:

criterion is not reliable benchmarking tool. It can easily show reliable 5% speedup with no changes at all
this PR does not change compilation of for_each implementation, only syntax. fold_impl() now returns Vec<()>, but

it has no allocations
it was there before, only hidden, here:

https://github.com/bevyengine/bevy/blob/06bf9289276bdaa9397a03ccb54f02c9f1de2dcc/crates/bevy_tasks/src/task_pool.rs#L287

OK, benchmark against main.
On main.
cargo bench -p benches --bench ecs -- heavy_compute --save-baseline main

on this branch:
cargo bench -p benches --bench ecs -- heavy_compute --baseline main

heavy_compute/base      time:   [564.08 µs 565.16 µs 566.09 µs]
                        change: [-0.4176% -0.0620% +0.2685%] (p = 0.73 > 0.05)
                        No change in performance detected.
Found 11 outliers among 100 measurements (11.00%)
  2 (2.00%) low severe
  4 (4.00%) low mild
  3 (3.00%) high mild
  2 (2.00%) high severe


Android version

Will you ever develop a version of this app for android? This software is way better than welle.io, and lighter.

Currently I have no plans for that because I have no bandwidth to work on additional OS (even support for Ubuntu needs significantly more time compared to other OS) and I also have no experience with Android development and no Android HW for testing it. It would also require major UI redesign since existing UI is not suitable for touch screen.


Useragent for online validator is "-"

Generally accepted best practice is to identify one's service (and associated reporting mechanisms) by setting a unique and informative user agent string. Currently, the jsonlint.com online validator uses only "-".

@paregorios I'm sorry but I don't know what do you mean. Is it a server header?


Configurations

Hi @skoruba ,
Is there any particular reason why some Configurations Implement an interface like :

AdminConfiguration --> IRegisterConfiguration
RegisterConfiguration -->  IRegisterConfiguration
(RootConfiguration --> IRootConfiguration )

and others not, like :

LoginConfiguration
SendgridConfiguration
CertificateConfiguration
...

Thank's
Thomas

Because they are never injected

Thanks for feedback, I will take a look at these configurations and create same identical approach. What do you suggest?


Don't assume ticket format to code, dash, numbers

Some Test Management Tools use different formatting than Jira, e.g. issues/1 on github.
Currently, extension assumes ticket code will me CODE-1234, where we can specify CODE in configuration, but the dash is assumed to separate digits from CODE part.

Added with version 0.0.5


Validate username: can't be empty

In addition to checking this condition, it would probably be good to add an informative error message (you can modify the current one, which only displays the "alphanumeric" requirement)

Hello, I would like to work on that.

Welcome.  Felt great to contribute to the project. It has a very beautiful UI.


fix: bump KMS to unblock renovate terraform-modules

Description

Release required?

[ ] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

/run pipeline

/run pipeline

Renovate will be able to look after this change.


404 at /docker-for-mac/)

I found a broken link : https://docs.docker.com/docker-for-mac/)
I arrived on this page through: https://www.youtube.com/

Hi @Naveen8562 , the link is working for me. Would you verify the issue is still happening for you and provide more detail on how you are connecting to the internet? Thanks!

Do you have a link to the video that linked to the docs? I've seen some reports about a broken link in some YouTube videos. Unfortunately we can't fix those here, so I'll close this ticket, but perhaps we can contact the owner of the YouTube video (or fix the link there, if it's a video published by Docker)

Do you have a link to the video that linked to the docs? I've seen some reports about a broken link in some YouTube videos. Unfortunately we can't fix those here, so I'll close this ticket, but perhaps we can contact the owner of the YouTube video (or fix the link there, if it's a video published by Docker)


Exploring Linked Lists: A Beginner's Guide

Title Of Blog Post : Exploring Linked Lists: A Beginner's Guide
Short Description of what is expected : This blog post aims to provide a beginner-friendly introduction to linked lists, covering singly linked lists, doubly linked lists, and circular linked lists. It will explain their structure, operations, and real-world applications, making it easy for new programmers to understand and implement these data structures.
Category : Programming, Data Structures, Algorithms
Tags : Linked Lists, Singly Linked Lists, Doubly Linked Lists, Circular Linked Lists

Hi, I can work on this. Please assign to me.

yeah sure you can work on it and please refer to contributing guidelines.


the config not work without internet

require 2 files
<EMAIL_ADDRESS>in
http://go2rtc:1984/editor.html:35
const editor = ace.edit('config', {
mode: 'ace/mode/yaml',
});
and
<EMAIL_ADDRESS>in
http://go2rtc:1984/main.js](http://<IP_ADDRESS>:1984/main.js:188
updateDarkMode();

There are more external dependencies in go2rtc. All of them are not required to provide the basic functions. There are no plans to add them to the binary.
If you really want to - you can connect your local UI to the go2rtc binary. See the documentation for details
https://github.com/AlexxIT/go2rtc?tab=readme-ov-file#module-api


My app cannot see simulated beacons

I have little problem with detect simulated beacons. I try simulate ibeacon from my second phone by Beacon Simulator on android. But my app can't see these beacons, but when I simulate beacon from my macbook, my app see this beacon.
I don't have phisical beacon yet, so I don't tested it.
Maybe have you any idea what I doing wrong ?

I use this to use my macbook to simulate a beacon and it works quite well: https://github.com/timd/MactsAsBeacon

Since it's working when you simulate a beacon with your macbook, the lib is generally working. Seems to be an issue with your beacon simulator on Android.


"Action required: Greenkeeper could not be activated 🚨" issue raised, possibly in error?

After installing Greenkeeper, it created a pull request to complete its configuration.  A CI build ran and completed successfully, and a build status was set on the commit in the pull request.  But then, an issue was raised saying that CI builds are not running, or not setting a status against the commit.
It looks like everything turned out OK in the end, and Greenkeeper is showing as enabled.  Possibly Travis took a little long to set a status or something?
Anyway, great product, thanks!

Hi James, thanks for getting in touch and sorry for the delay. I know you’ve switched away from Greenkeeper in the meantime, but anyway: Yes, that sounds like a timing issue. Greenkeeper waits for half an hour for the first CI run to complete and then opens the issue you saw, sometimes the status and the issue just miss each other.


Change format of the posted file name

This pull request is about  #24.
The posted file name format is changed from yyyy-mm-dd HHmmss-post-tile.md to yyyy-mm-dd-HHmmss-post-tile.md

Thank you!

thanks to you


chore: upgrade vega dependency to version v0.71.4

Updating the vega dependency in Vega Capsule to the latest released version

This PR has been super-seeded by #399


Update AppsResource_create.md

Fixed a minor error with the JSON with missing " and using a valid app id as upper case letters are not allowed in the app id.

Thanks @Poltergeist !
    .  o ..
     o . o o.o
          ...oo
            __[]__          Shippin'
         __|_o_o_o\__         it!
         \""""""""""/
          \. ..  . /
     ^^^^^^^^^^^^^^^^^^^^

❤


Ability to ignore disabled clips

The tool should have a the function to ignore disabled clips.
This option could be used: --exclude-disabled

This is fairly easy to implement and could be in 0.2.6 probably.

Question:
Would it make sense for exclusion to be default behavior, but provide an opt-in flag like --include-disabled to extract them?

Makes sense. Let's go for it.

[disabled clip] exclusion to be default behavior, but provide an opt-in flag like --include-disabled to extract them

Implemented in DAWFileKit. Will add CLI flags to MarkersExtractor shortly.

Awesome! Does it make sense to make it automatic? If a clip is disabled, any Markers on the clip will be ignored.

Yes, omitted by default as I said. Have to opt-in to including disabled clips.
This is done. Will be in 0.3.4.

Just tested seems to be working! Will close this for now. Thank you.


Offer different styles of borders

Like dotted, dashed etc.
Also see: https://stackoverflow.com/questions/30590780/how-to-draw-dotted-line-in-pdfbox

Fixed in v0.7.0


Private variable stores only the default value

Describe the bug
The variable should keep the value passed to it in the constructor.
OpenMP reference (5.3 List Item Privatization):

The value and/or allocation status of the original list item will change only:

If accessed and modified via a pointer;
If possibly accessed in the region but outside of the construct;
As a side effect of directives or clauses.

Library version(s) affected
1.0.0
Steps to reproduce
public static void main(String[] args) {
    Variable<Integer> privateVariable = new PrivateVariable<>(0);
    privateVariable.set(-1);
    Variables variables = Variables.create().add("privateVariable", privateVariable);

    Parallel.defaultConfig()
            .block(variables, (id, vars) -> {
                Variable<Integer> privateVar = vars.get("privateVariable");
                privateVar.set(id);
                System.out.printf("Thread %d\n", privateVar.value());
            })
            .join();

    System.out.printf("Private variable %d%n", privateVariable.value());
}

In this code, the value of the private variable is restored to its default value after all threads have completed their execution.
Additional context, environment
For example, in this C code snippet the value -1 is kept until the end of the program:
#include <stdio.h>
#include <omp.h>

int main(int argc, char *argv[]) {
    int private_variable = -1;

    #pragma omp parallel private(private_variable)
    {
        private_variable = omp_get_thread_num();
        printf("Thread %d\n", private_variable);
    }

    printf("Private variable: %d\n", private_variable);

    return 0;
}

Logs
In the Java code:

Thread 0
Thread 1
Thread 2
Thread 3
Thread 4
Thread 5
Thread 6
Thread 7
Thread 8
Thread 9
Thread 10
Thread 11
Private variable 0

-------------------------------------------------------------

In the C code:

Thread 8
Thread 1
Thread 6
Thread 3
Thread 4
Thread 2
Thread 11
Thread 0
Thread 5
Thread 10
Thread 9
Thread 7
Private variable: -1

This can be done in the FirstPrivateVariable and LastPrivateVariable. Remove the call to InitialValues.getInitialValue.


[Incompatible] aioredis 2.0.0

After updating to aioredis-2.0.0 the following error occurs
Traceback (most recent call last):
File "/home/tnnt_auth/TerraNanotechAuth/bot_conf.py", line 14, in <module>
main()
File "/home/tnnt_auth/TerraNanotechAuth/bot_conf.py", line 10, in main
launcher.run_bot()
File "/home/tnnt_auth/auth-system/venv/auth/lib/python3.7/site-packages/aadiscordbot/launcher.py", line 15, in run_bot
bot = AuthBot()
File "/home/tnnt_auth/auth-system/venv/auth/lib/python3.7/site-packages/aadiscordbot/bot.py", line 60, in __init__
self.redis = self.loop.run_until_complete(aioredis.create_pool(getattr(settings, "BROKER_URL", "redis://localhost:6379/0"), minsize=5, maxsize=10))
AttributeError: module 'aioredis' has no attribute 'create_pool'

https://aioredis.readthedocs.io/en/latest/migration/#connecting-to-redis


Review our environmental scan re procurement - Ontario, Alberta, New Brunswick

Describe the issue
Recent call with AWS Federal team discussed CSP procurements underway in Alberta, Ontario and New Brunswick.
Need to verify that we know all that we need to know about these procurements - it may be very much to our advantage to follow the New Brunswick pattern.
Which Sprint Priority is this issue related to?
The 'Milestone' should clearly list Sprint Priorities - which one is this issue related to?
Additional context
Add any other context, attachments or screenshots
Definition of done
Zach to share summary of whatever research has already been done on these procurements;
If there is more to explore, we can schedule meeting(s) as needed.

Do we have any details on these procurements? I have nothing at this time.

@paulroberts68 @scayzer I'm closing this ticket since this looks pretty old. Pls let me know if i'm wrong in assuming that.


Set BTC to default currency and first in currencies list

Previously, if a currency was not set, the currency option in the settings menu would be blank even though the currency defaulted to BTC. The currency still defaults to BTC, but it will now show in the settings menu that the currency is BTC. It also makes sense to make BTC first in the list as it's more universal than USD (which was first in the list).

nice +5 👍🏻


ng help generate does not work in 1.0.0-beta.14

OS: OS X, 10.11.6

Versions: angular-cli: 1.0.0-beta.14
node: 6.5.0

STR: Generate a new application, cd in the application folder, run ng help generate

I'm getting You cannot use the help command inside an angular-cli project. instead of the available blueprints list

Confirmed it's a bug, fixing right now. SHouldn't take long.

'ng help' does not work too with this message :
Cannot find module './build.d'
Error: Cannot find module './build.d'
at Function.Module._resolveFilename (module.js:455:15)
at Function.Module._load (module.js:403:25)
at Module.require (module.js:483:17)
at require (internal/module.js:20:19)
at /usr/local/lib/node_modules/angular-cli/commands/help.js:28:33
at Array.reduce (native)
at Class.run (/usr/local/lib/node_modules/angular-cli/commands/help.js:26:39)
at Class. (/usr/local/lib/node_modules/angular-cli/node_modules/angular-cli/lib/models/command.js:152:17)
at tryCatch (/usr/local/lib/node_modules/angular-cli/node_modules/rsvp/dist/lib/rsvp/-internal.js:215:12)
at invokeCallback (/usr/local/lib/node_modules/angular-cli/node_modules/rsvp/dist/lib/rsvp/-internal.js:230:13)
at publish (/usr/local/lib/node_modules/angular-cli/node_modules/rsvp/dist/lib/rsvp/-internal.js:198:7)
at flush (/usr/local/lib/node_modules/angular-cli/node_modules/rsvp/dist/lib/rsvp/asap.js:82:5)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)

Fixed by #2146

@hansl I've checked 1.0.0-beta.14 and help works better indeed. However ng help generate used to provide a list of available blueprints, now it doesn't. Should I file another issue?


add Windows support, fixes #52

Add Appveyor CI, fix tests of src-d/ci itself to run on Appveyor.
example: Avoid subshell on Makefile before including Makefile.main. This fixes the build for mingw32-make on Windows. Alternative might be setting SHELL=/bin/bash on Makefile, but avoiding the subshell is just simpler and works.

Signed-off-by: Santiago M. Mola<EMAIL_ADDRESS>

Fixes https://github.com/src-d/ci/issues/52


[SPARK-28863][SQL][FOLLOWUP] do not reuse the physical plan

What changes were proposed in this pull request?

This is a followup of https://github.com/apache/spark/pull/29469
Instead of passing the physical plan to the fallbacked v1 source directly and skipping analysis, optimization, planning altogether, this PR proposes to pass the optimized plan.
Why are the changes needed?

It's a bit risky to pass the physical plan directly. When the fallbacked v1 source applies more operations to the input DataFrame, it will re-apply the post-planning physical rules like CollapseCodegenStages, InsertAdaptiveSparkPlan, etc., which is very tricky.
Does this PR introduce any user-facing change?

No
How was this patch tested?

existing test suite with some new tests

Test build #127685 has started for PR 29489 at commit 816ac73.

cc @brkyvz

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/32309/
Test PASSed.

Test build #127685 has finished for PR 29489 at commit 816ac73.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/127685/
Test PASSed.

merging to master/3.0


Install Runtime Dependencies Only

What are the install-deps.sh args to install runtime dependencies only?  I'd like to build once and distribute the artifacts with a package server.

What kind of package is it? Is it for a non-debian based system?
install-deps.sh is more geared towards setting up a dev env and I'm unware of a nice way to know all the files it (and build.sh) installed but you could do something like to install all:
./scripts/install-deps.sh -a -d ubuntu1804
./scripts/build.sh -c --build-packages

This will install other things not necessary for runtime such as catch2 for building du agent unit tests (and gtest for DO tests).
Maybe you could do a recursive listing of all affected dirs before the above and diff it after?
If you don't need to build from source, or if alternatively building the du agent debian packages via build.sh's --build-packages cmdline arg, then you could go with something like this SO article.
The above SO article uses apt-cache depends, downloading with apt-get download, and dpk-scanpackages + gzip to make a package including all recursive dependencies.

Closing this issue due to inactivity. Please feel free to open a new issue if needed.


annotation rule triggers false positive when annotation with parameters is on parameter type

Observed Behavior
Following code:
@AnnotationA
fun Demo(arg: @AnnotationB(10) String) {
}

produces
Annotation with parameter(s) should be placed on a separate line prior to the annotated construct (annotation)
error message. Annotations are already on two separate lines, so it's not clear how to even resolve this. Likely false positive.
Expected Behavior
Above code should not trigger any rules
Your Environment

Version of ktlint used: 0.48.2

With new ktlint_official code style, the original code gets formatted as:
@AnnotationA
fun Demo(
    arg:
        @AnnotationB(10)
        String,
) {
}

Isn't that code style very unreadable? It inserts newlines for no apparent reason.

Yeah, it is not the one thing that I am most proud of. But it does follow the coding conventions (https://kotlinlang.org/docs/coding-conventions.html#annotations) and is in sync with the way how annotations above functions and classes are formatted. So there is an apparent reason for inserting the newlines.
With a 'simple' example like yours, it is very debateable whether code readability has increased/decreased. But, if you would have more annotations on the type, it makes more sense to insert newlines.

fun demo(arg: @AnnotationA @Annotation @AnnotationC String) {}


Fix solvePoly() 3.0.0

Solving equations x^4 - x^2 = 0, and x^2 - 2x + 1 = 0 returns "nan" roots.

Please run git rebase -i upstream/master and remove all useless "merge" commits. Only one commit with actual changes is expected here. After that use "git push -f  fix_solvePoly_3.0.0".

:+1:
#5605


Remove deprecated code

We have a few deprecated things around the code we may fix in the next releases:

[ ] Remove older config flags (ie, secret and configmap flag)
[ ] Remove DeprecatedConfigMap in master addon trait
[ ] Remove Timeout in MavenSpec
[ ] Remove Kit from IntegrationSpec
[ ] Remove Flow from KameletSpec
[ ] Remove NewFilteredSharedInformerFactory

@astefanutti @nicolaferraro can you please confirm we should be fine removing all this stuff?

That looks good to me. There is also the container trait configuration parameters related to health checks that are deprecated and that we may want to remove as well.

That looks good to me. There is also the container trait configuration parameters related to health checks that are deprecated and that we may want to remove as well.

I think it was deprecated quite recently. I'd wait for at least one more major upgrade before removing that one.

That looks good to me. There is also the container trait configuration parameters related to health checks that are deprecated and that we may want to remove as well.

I think it was deprecated quite recently. I'd wait for at least one more major upgrade before removing that one.

Right, that sounds good. The others you've listed are older enough.

Looking at e2e tests, property-file also appears deprecated too.
Warn: --configmap has been deprecated. You should use --config configmap:my-configmap instead.
Warn: --secret has been deprecated. You should use --config secret:my-secret instead.
Warn: --property-file has been deprecated. You should use --property file:/path


Getting error when creating KMS etcd encrypted AKS

I would like to create new AKS cluster with etcd encryption using this document: https://learn.microsoft.com/en-us/azure/aks/use-kms-etcd-encryption
I tried to follow the steps for the "non-RBAC key vault", but I got error:
The behavior of this command has been altered by the following extension: aks-preview
(AzureKeyVaultKmsValidateIdentityPermissionCustomerError) The identity does not have keys encrypt/decrypt permission on key vault "https://ruzickap1aks.vault.azure.net"
Code: AzureKeyVaultKmsValidateIdentityPermissionCustomerError
Message: The identity does not have keys encrypt/decrypt permission on key vault "https://ruzickap1aks.vault.azure.net"

I'm using the following commands based on the documentation above:
export AZURE_LOCATION="westeurope"
export CLUSTER_NAME="ruzickap1aks"

# Create a key vault and key for non-RBAC key vault
az group create -n "${CLUSTER_NAME}" -l "${AZURE_LOCATION}"
az keyvault create --name "${CLUSTER_NAME}" --resource-group "${CLUSTER_NAME}"
az keyvault key create --name "${CLUSTER_NAME}" --vault-name "${CLUSTER_NAME}" --kty EC
export KEY_ID=$(az keyvault key show --name "${CLUSTER_NAME}" --vault-name "${CLUSTER_NAME}" --query 'key.kid' -o tsv)
# Create a user-assigned managed identity
az identity create --name "${CLUSTER_NAME}" --resource-group "${CLUSTER_NAME}"
export IDENTITY_OBJECT_ID=$(az identity show --name "${CLUSTER_NAME}" --resource-group "${CLUSTER_NAME}" --query 'principalId' -o tsv)
export IDENTITY_RESOURCE_ID=$(az identity show --name "${CLUSTER_NAME}" --resource-group "${CLUSTER_NAME}" --query 'id' -o tsv)
# Assign permissions (decrypt and encrypt) to access key vault
az keyvault set-policy -n "${CLUSTER_NAME}" --key-permissions decrypt encrypt --object-id "${IDENTITY_OBJECT_ID}"

# Create an AKS cluster with KMS etcd encryption enabled
az aks create \
  --assign-identity "${IDENTITY_RESOURCE_ID}" \
  --enable-azure-keyvault-kms \
  --azure-keyvault-kms-key-id "${KEY_ID}" \
  --azure-keyvault-kms-key-vault-network-access "Public" \
  --kubernetes-version 1.26.3 \
  --name "${CLUSTER_NAME}" \
  --resource-group "${CLUSTER_NAME}"

After running the commands above I got:
The behavior of this command has been altered by the following extension: aks-preview
(AzureKeyVaultKmsValidateIdentityPermissionCustomerError) The identity does not have keys encrypt/decrypt permission on key vault "https://ruzickap1aks.vault.azure.net"
Code: AzureKeyVaultKmsValidateIdentityPermissionCustomerError
Message: The identity does not have keys encrypt/decrypt permission on key vault "https://ruzickap1aks.vault.azure.net"

Is there anything I'm missing?
Thank you...

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

ID: f29e6da4-fd14-a166-e21e-6b87a0f491b8
Version Independent ID: b5ec3a1e-88c2-8dcb-05f7-226a633718a1
Content: Use Key Management Service (KMS) etcd encryption in Azure Kubernetes Service (AKS) - Azure Kubernetes Service
Content Source: articles/aks/use-kms-etcd-encryption.md
Service: azure-kubernetes-service
GitHub Login: @MGoedtel
Microsoft Alias: magoedte

@ruzickap
Thanks for your feedback! We will investigate and update as appropriate.

@ruzickap
I'm going to assign this to the document author so they can take a look at it accordingly.
@MGoedtel
please review it.

Is there any update about it?

@ruzickap - Sorry for not responding to your issue sooner. I am going to take the time tomorrow to repro this in my lab and determine if the command(s) used have changed and the script isn't up to date with the revised syntax. I'll respond tomorrow by EOD with an update.

#reassign:schaffererin

Hi, @ruzickap, thank you for your patience. I've successfully tested the commands in the article. As there are no article updates required at this time, I will close this GitHub issue. Please open a new issue if you run into an AKS docs issue in the future. Thank you again! #please-close


Application Questions

Is your feature request related to a problem? Please describe.
Not really. This is just a cool idea for a feature.
Describe the solution you'd like
VAs are able to add both long answer and multiple choice questions (somewhat like a google form) that pilots can fill out. The multiple choice questions would be very cool if they could be predetermined correct and wrong answers. This information could be collected into an "Applicant's Summary" showing their email, Grade and violations-landings, percentage of correct multiple choice answers. Using this could help fill in variables in email sent to applicant.
Describe alternatives you've considered
Using a different platform for an entrance exam.
Additional context
I can provide Thai Group Virtual's entrance exam to show what kind of things would be awesome to see.

This will become a core feature in the future


Re-add autoFocus prop for ExpensiText components

@roryabraham will you please review this?
Details
This is a regression from https://github.com/Expensify/App/commit/2231d55a6ddf189042c680979e4981c6c00d178b, we just need to ensure that autoFocus is still included.
Fixed Issues
$ https://github.com/Expensify/App/issues/6298
Tests/QA

Log in and open a chat
Click on the + button and select Request Money or Send Money
Enter a value and hit Next
Confirm that the What's It For input on the following screen autoFocuses and you can see both the label and the placeholder

Tested On

[x] Web
[x] Mobile Web
[x] Desktop
[x] iOS
[x] Android

Screenshots

Web
Mobile

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by @roryabraham in version: 1.1.14-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

The accessibility issues found in this PR:
Web/mWeb/Android

The focus should be set to the first interactive element of the newly opened overlay ("Back" button) instead of auto-focusing the text field - failure of WCAG SC 2.4.3.
https://user-images.githubusercontent.com/88733897/142882486-5e421ad1-342f-4124-95fb-f536a47154e0.mp4
https://user-images.githubusercontent.com/88733897/142884550-04f1fe4a-4518-47ef-b3fb-3f8a6d93afdc.mp4

🚀 Deployed to production by @AndrewGable in version: 1.1.15-15 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


[WelcomeUX] Search not working in settings window

Type in setting search box and nothing happens. On Windows 10.
Might just be something wrong with that build. Current insiders build is fine.

Indeed, fixed with #18557


Quantum Themed Maze Game (Issue #1868)

Quantum Themed Maze Game
Issue: #1868
https://github.com/user-attachments/assets/203a205e-9957-40a3-a8fb-8743dc895766

@shriyadindi resolve the conflict


Allow for different evaluation metric than the one used in the optimization/objective

I have been experimenting and modifying the LightGBMLSS code. One thing I have done is implemented the option of using a different evaluation metric than the one defined by the distribution class.
If in our use case we care more about the point predictions than the prediction of the distribution we might choose to evaluate the model based on the MSE of the torch_distribution.mean vs the target.
Or we might create an evaluation metric such as the MSE of abs(torch_distribution.mean- target) vs  torch_distribution.std
Or we might optimize with NLL but evaluate using CRPS.
We can also provide multiple metrics and compare the different values for the early_stopping_round.
Some observations of trying this
Optimizing using NLL and evaluating with MSE of the torch_distribution.mean vs the target, resulted in more boosting rounds. It seems like there was a point that the accuracy of the distributions where decreasing but the loc parameter was still improving.
If we evaluate on a different metric to that we optimize the early stopping is sometimes triggered when using the training set as an evaluation set. This seems quite useful if we are lacking in data as we dont necessarily require a hold out set.
Next Steps
@StatMixedML  I'm happy to put this together in a PR, but only want to do so if you have time to review etc

@Fish-Soup Thanks for opening the issue and please do excuse my late reply.
Using a different metric to that we optimize sounds interesting, even though I don't agree that we should use MSE for evaluating the accuracy of a distributional model.


S02-190 Group4blandine created a file

WELCOME TO DEVOPS-EASY-LEARNING PULL REQUEST SYSTEM
Description of the change

Group4blandine create a file

Checks and balances

[ ] Tests added and run
[ ] (External) Interfaces documented
[ ] Has security implications (describe below)

Type of change

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

Related stories, issues and pulls
 here
Security considerations

Describe any security impact this change may have

I thing, we can move on with those changes.


enable SCIM simulation with rotor currents

This PR mainly enables simulation of SCIM (LamSquirrelCage rotors) with rotor currents.
The rotor bars now have only positive winding direction, with one phase each bar.
There are also some bug fixes and code optimizations included.
At most the names/labels of the surfaces of the windings are unified to contain 'Stator' or 'Rotor' instead 'S' or 'R' by the introduction of the Slot class method get_name_lam. This also enables to easily change the names e.g. to 'Lam_x' later on (with MachineUD).

Thank you for this PR. Some label clean up won't hurt the project and being really able to set current on the rotor as well is a great step.


Configurable endpoint for S3 object storage

From @markkwasnick on September 1, 2016 16:43
Deis currently supports Minio (S3-compatible API) for object storage only within the cluster and not for production deployments. Deis also supports S3 for object storage, but not with a configurable "regionendpoint", requiring the use of specific Amazon AWS regions.
Request is to modify Deis to accept a s3.region_endpoint parameter within the generate_params.toml file on the deis/charts project, which will be stored as a Kubernetes secret like the other parts of configuration. This will allow for operators to configure Deis Object Storage to use hosted S3-compatible deployments outside of the cluster.
(Related) Is a change to the deis/object-storage-cli to pass in the configurable endpoint above to the s3 driver via the optional "regionendpoint" param.
(per doc: https://github.com/docker/distribution/blob/master/docs/storage-drivers/s3.md)
Copied from original issue: deis/workflow#481

From @markkwasnick on September 7, 2016 0:50
Adding a note here: Probably also want to include an option to toggle secure yes/no for the docker storage driver.

From @bacongobbler on March 27, 2017 22:7
If anyone has a good doc on getting this set up, that would be appreciated. We can fizzle that down into a consumable document for other users.

There's enough in that Gist right now that if you have an external Minio endpoint (with or without persistence) and some credentials, you can masquerade and populate them into your variables DEIS_MINIO_SERVICE_HOST and _PORT in a couple of places, set your access keys and secret key in the template, and get off and running.
For my personal (minikube / home cluster on a very minimal system requirements) this is enough to get a database and controller off the ground pretty reliably, whereas if I leave the defaults and don't set any external object storage, with my slow disk that has to do everything, the thing tends to go into swap and builder will fall over pretty easily (that is if you can even get it started.)
My modest machine cannot really handle Database and Controller and (in-memory) Storage all at the same time.  Builder also really would prefer an SSD, I think.  Lots of my Deis knowledge centers around how to get it to run on a fairly modest system without actually becoming totally unusable.
But any Deis (/Hephy) guide for newbies should absolutely spend some time on setting up Object Storage properly (and the different ways that you can do that, because why not...)
You probably want deis postgres if you need postgres and don't have something like RDS stood up already that you can use
Other than getting the MINIO variables in place, all you really need to know to make it work is that the accesskey and secretkey you generated when you started Minio externally (however you did that) should be put in your chart at workflow/templates/objectstorage-secret.yaml as base64 encoded strings, and kept secret
(We can certainly do better than that, but we could also build a bikeshed...)

actually, the Gist only "almost works"
Slugbuilder can't find S3_HOST and I don't see a deployment resource for it, either...

Yep not exactly stable without the deis-minio service in place
I stood up a "socat" listener to forward to my remote minio service, and that is not apparently exactly stable.  I'm not currently sure how to go about proxying minio but I figure I might have better luck with something that is intended to do multithreading and proxy http, like nginx.
It would maybe be better to just rewrite slugbuilder and slugrunner so they accept a "region endpoint" setting that is passed in somehow, and so would everything else in {builder,database,controller,registry} set that depends on the presence of the deis-minio service when the minio storage config is in use.

Great work on this!

Super! I'm catching up, just saw teamhephy/distribution#1
Timing couldn't be better!  Thanks @rwos


Ics2 1045- added outbound wsdls

There is nothing in the story to relate to the structuring of the files. I looked at the structure and they are very long with ~ symbols. The filenames are different so it made more sense to have them at top level rather than have huge complex urls to pass around everywhere.

PR updated, ready to be re reviewed, readme updated, files not amended, more it tests added


Display version number during setup

It would be great to see something like this:
Calculated Semantic Version: 0.5.0
Building version 0.5.0 of Cake.SendGrid (Release, AppVeyor) using version <IP_ADDRESS> of Cake. (IsTagged: True)
Using Cake.Recipe version x.x.x

I like this, could be helpful for debugging as well.

@Jericho @AdmiringWorm you can see this in action here:
https://ci.appveyor.com/project/chocolatey/chocolateygui/build/0.16.0-unstable.81.build.416#L238


"multi-file" file loading API could be moved to F3D application

The multi-file part of the loader API is quite specific to F3D application so it could make sens to move it there and provide a simpler API in libf3d. eg:
The loading API could be reduced to:

loadModel(filename, options) clear scene, load a model from disk
loadModel(buffer, options) clear scene, load a model from memory

I've been thinking about this and starting to like the idea, especially in regards to https://github.com/f3d-app/f3d/issues/127.
Here is what we could do:

drop geometry-only f3d::options
modify f3d::loader API like this:

loader::loadGeometry(std::string file, bool resetScene)
loader::loadScene(std::string file)

implement the resetScene == false case in the vtkF3DGenericImporter by using multiple reader when needed in the default scene

Move multi files management to F3D Application and use loadGeometry/loadScene accordingly to --geometry-only option

Add a --multi-files-mode command line option (global options only) with following possible parameters:

switch: current behavior, when loading multiples files, one can switch between files using the arrow keys. default.
load: load all provided files as multiple models in the same default scene.
folder: show all files in a folder view (cf https://user-images.githubusercontent.com/3129530/145460406-bc9b190a-ad7b-4b45-80d3-95cd01f49bcc.png) will not be implemented right away.

wdyt @snoyer @Meakk @nermolov @SamuelTallet ?

FYI @GitCodeBoy

"Multi files mode" option is a good idea! 🙂

* Add a `--multi-files-mode` command line option (global options only) with following possible parameters:

1. switch: current behavior, when loading multiples files, one can switch between files using the arrow keys. default.

2. load: load all provided files as multiple models in the same default scene.

3. folder: show all files in a folder view (cf https://user-images.githubusercontent.com/3129530/145460406-bc9b190a-ad7b-4b45-80d3-95cd01f49bcc.png) will not be implemented right away.

These points all feel orthogonal to one another.
The "folder view" sounds like an alternative way to render/navigate, independently of the multi-file stuff (ie. the folder view could be implemented with the current file loading as an alternative to left/right arrows if I'm undertanding correctly).
I think the general multi-file case should be somehow allowing to group filenames instead of treating them individually.
Then you could navigate (arrow keys, or grid view) between groups of files (if all groups are one file each then the behavior would be the same as the current one).
Now how to provide options to group files is another question... I'd argue there's a whole lot of cases between viewing "each files individually" and "all files together"
Consider the following list of files passed to F3D:

~/3dp/first-simple-object.stl
~/3dp/second-simple-object.stl
~/3dp/first-complex-object_part1of3.stl
~/3dp/first-complex-object_part2of3.stl
~/3dp/first-complex-object_part3of3.stl
~/3dp/second-complex-object_part1of2.stl
~/3dp/second-complex-object_part2of2.stl
~/3d-models/bunny.obj
~/3d-models/dragon.ply

Could we somehow come up with (preferably flexible and user-configurable) mechanism that would let us batch the files as:

~/3dp/first-simple-object.stl
~/3dp/second-simple-object.stl
~/3dp/first-complex-object_part1of3.stl, ~/3dp/first-complex-object_part2of3.stl, ~/3dp/first-complex-object_part3of3.stl
~/3dp/second-complex-object_part1of2.stl, ~/3dp/second-complex-object_part2of2.stl
~/3d-models/bunny.obj
~/3d-models/dragon.ply

Maybe a regular expression, or a simpler glob pattern?

From libf3d perspective, instead of loadGeometry and loadScene, I would prefer:
loader::addGeometry(std::string file)
loader::resetScene()
loader::loadFullScene(std::string file)

On the application side, I like @snoyer approach of a glob pattern, maybe something like:
Calling  f3d simple*.stl "complex_*.stl" would work because the first argument is expanded by the shell, and the second one (with quotes) is a glob pattern.
Also, I agree that the folder view should be an alternate view, but unrelated to the multi-file stuff.

From libf3d perspective, instead of loadGeometry and loadScene, I would prefer:

Indeed, sounds good.

the folder view should be an alternate view, but unrelated to the multi-file stuff.

Fair enough

Calling f3d simple*.stl "complex_*.stl" would work because the first argument is expanded by the shell, and the second one (with quotes) is a glob pattern.

This may work but may also be confusing to users. Does it work in all shells ?

This may work but may also be confusing to users. Does it work in all shells ?

I don't think we're responsible for user knowledge on shells. We need to provide a solution that makes sense, and we can document it. This is an advanced feature anyway for shell power users.
I think it should work on all POSIX shells (I have no idea about Windows).

To rephrase/elaborate: I'd like to have a grouping function g(str) -> str that would give colliding outputs for input filenames that should be grouped together. The usage could then look something like:
map<str, list<str>> groups
for(filename : filenames)
    groups[g(filename)].add(filename)

It would then be irrelevant where the filenames came from (shell expansion or not, drag-and-dropped into the window, ...), adding files incrementally would also be supported.
In my previous example just replacing _part* by an empty string does the trick and such cases would be easy to hardcode. The difficult part is to find a configurable way to do it. I don't think it can be done with pattern matching only, but a find-and-replace would work I believe.

dirty python POC using regex capture groups:
from collections import defaultdict
import re

filenames = [
    '~/3dp/first-simple-object.stl',
    '~/3dp/second-simple-object.stl',
    '~/3dp/first-complex-object_part1of3.stl',
    '~/3dp/first-complex-object_part2of3.stl',
    '~/3dp/first-complex-object_part3of3.stl',
    '~/3dp/first-complex-object_part1of3.step',
    '~/3dp/first-complex-object_part2of3.step',
    '~/3dp/first-complex-object_part3of3.step',
    '~/3dp/second-complex-object_part1of2.stl',
    '~/3dp/second-complex-object_part2of2.stl',
    '~/3dp/third-complex-object.1.stl',
    '~/3dp/third-complex-object.2.stl',
    '~/3d-models/bunny.obj',
    '~/3d-models/dragon.ply',
]

patterns = {
    'no grouping': r'(.*)',
    'by "_part*.ext"': r'(.+)_part.+(\..+)',
    'by ".*.ext"': r'(.+?)(?:\..+)*(\..+)',
    'by "_part*.ext" and ".*.ext"': r'(.+)_part.+(\..+)|(.+?)(?:\..+)*(\..+)',
    'by folder': r'(.+/)*.+',
}

for desc, pattern in patterns.items():
    def g(fn):
        match = re.match(pattern, fn)
        return match.groups() if match else fn

    groups = defaultdict(list)
    for filename in filenames:
        groups[g(filename)].append(filename)

    print(f'### {desc} (with pattern `{pattern}`)')
    for i,vs in enumerate(groups.values()):
        print(f'{i+1}.', ", ".join(f'`{v}`' for v in vs))
    print()

no grouping (with pattern (.*))

~/3dp/first-simple-object.stl
~/3dp/second-simple-object.stl
~/3dp/first-complex-object_part1of3.stl
~/3dp/first-complex-object_part2of3.stl
~/3dp/first-complex-object_part3of3.stl
~/3dp/first-complex-object_part1of3.step
~/3dp/first-complex-object_part2of3.step
~/3dp/first-complex-object_part3of3.step
~/3dp/second-complex-object_part1of2.stl
~/3dp/second-complex-object_part2of2.stl
~/3dp/third-complex-object.1.stl
~/3dp/third-complex-object.2.stl
~/3d-models/bunny.obj
~/3d-models/dragon.ply

by "_part*.ext" (with pattern (.+)_part.+(\..+))

~/3dp/first-simple-object.stl
~/3dp/second-simple-object.stl
~/3dp/first-complex-object_part1of3.stl, ~/3dp/first-complex-object_part2of3.stl, ~/3dp/first-complex-object_part3of3.stl
~/3dp/first-complex-object_part1of3.step, ~/3dp/first-complex-object_part2of3.step, ~/3dp/first-complex-object_part3of3.step
~/3dp/second-complex-object_part1of2.stl, ~/3dp/second-complex-object_part2of2.stl
~/3dp/third-complex-object.1.stl
~/3dp/third-complex-object.2.stl
~/3d-models/bunny.obj
~/3d-models/dragon.ply

by ".*.ext" (with pattern (.+?)(?:\..+)*(\..+))

~/3dp/first-simple-object.stl
~/3dp/second-simple-object.stl
~/3dp/first-complex-object_part1of3.stl
~/3dp/first-complex-object_part2of3.stl
~/3dp/first-complex-object_part3of3.stl
~/3dp/first-complex-object_part1of3.step
~/3dp/first-complex-object_part2of3.step
~/3dp/first-complex-object_part3of3.step
~/3dp/second-complex-object_part1of2.stl
~/3dp/second-complex-object_part2of2.stl
~/3dp/third-complex-object.1.stl, ~/3dp/third-complex-object.2.stl
~/3d-models/bunny.obj
~/3d-models/dragon.ply

by "_part*.ext" and ".*.ext" (with pattern (.+)_part.+(\..+)|(.+?)(?:\..+)*(\..+))

~/3dp/first-simple-object.stl
~/3dp/second-simple-object.stl
~/3dp/first-complex-object_part1of3.stl, ~/3dp/first-complex-object_part2of3.stl, ~/3dp/first-complex-object_part3of3.stl
~/3dp/first-complex-object_part1of3.step, ~/3dp/first-complex-object_part2of3.step, ~/3dp/first-complex-object_part3of3.step
~/3dp/second-complex-object_part1of2.stl, ~/3dp/second-complex-object_part2of2.stl
~/3dp/third-complex-object.1.stl, ~/3dp/third-complex-object.2.stl
~/3d-models/bunny.obj
~/3d-models/dragon.ply

by folder (with pattern (.+/)*.+)

~/3dp/first-simple-object.stl, ~/3dp/second-simple-object.stl, ~/3dp/first-complex-object_part1of3.stl, ~/3dp/first-complex-object_part2of3.stl, ~/3dp/first-complex-object_part3of3.stl, ~/3dp/first-complex-object_part1of3.step, ~/3dp/first-complex-object_part2of3.step, ~/3dp/first-complex-object_part3of3.step, ~/3dp/second-complex-object_part1of2.stl, ~/3dp/second-complex-object_part2of2.stl, ~/3dp/third-complex-object.1.stl, ~/3dp/third-complex-object.2.stl
~/3d-models/bunny.obj, ~/3d-models/dragon.ply

@snoyer How do you envision that in terms of command lines options ?

From command line you could do something like f3d *.stl --group-by='(.+)_part.+(\..+)'
But realistically you'd want the --group-by argument in a config file according to your use-cases (I'm sure everyone would have different naming conventions) because it's not really convenient to type and too easy to get wrong, and command-line isn't the only entry point for F3D (eg. right-click -> open with F3D, drag and drop, ...).
Opening each file individually should still be the default, opening all files at once should have a simple argument like --multi, and then if there are widespread/standard advanced grouping patterns they could be aliased so you could type something like f3d */*.stl --by-folder instead of f3d */*.stl --group-by='(.+/)*.+'
I'm not fully clear on all the different use cases so I'm not claiming to have the perfect solution here, but regardless of what the user-facing system ends up being I believe the backend should be able to handle groups of one or more files where it handles individual files currently

Great, I'll think about it.

First step here: #634

With @Meakk we discussed the future of F3D in regards to loading multiple files, full scene and default scene, which is loosely related to this issue. We will open an issue to track these future changes.
In the meantime, I may not implement everything that was discussed here but keep it simple.

I've added a simple --group-geometries option for now.

@snoyer Let me know what you think.


Add a note when the revision can't be loaded to encourage people to just skip it

Bug: https://phabricator.wikimedia.org/T161102

Looks OK to me.


cannot resize nvs partition table for 16MB flash part

Ran into this on my own project. tried it again on the nvs_rw_blob example and get the same result. When I try to use a custom partition table, I get a reset loop which appears to be coming from nvs_flash_init_custom(). Attached is the sdkconfig, map file, partition table and source (which is just the example code that came with the espIdf).
nvsNotInitializing.zip

I updated the to the latest version of Master of the espIDF and still get the same behavior.
esp problem.zip


afSelectOptionAtts helper missing?

Hi,
I noticed that all my default option (options:) fields were missing the value attribute.
Schema:
tags:
      type: [String]
      optional: true
      autoform:
        type: "select2"
        options: ->
           [{label: "test", value: "test"},{label: "test2", value: "test2"}]
        multiple: true
        select2Options:
          tags: true
          placeholder: "Add tags"

This is standing inside autoform-select2.html:
<option {{afSelectOptionAtts}}>{{this.label}}</option>
Fixed it by writing the deleted helper function again:
Template.afSelect2.helpers({
  atts: function addFormControlAtts() {
    return _.omit(this.atts, 'select2Options');
  },
  afSelectOptionAtts: function afSelectOptionAtts() {
    var item = this;
    var atts = {
      value: item.value
    };
    if (item.selected) {
      atts.selected = "";
    }
    return atts;
  }
});

I don't know if this is a bug or a new 5.0 feature, but if anyone has the same problem they can use this quick fix.

It is a global helper defined by autoform, since 5.0 I think. Yes, if you're not using 5.0 yet, you may need to define it yourself. Just copy this into your app. Thanks.


DO NOT MERGE - android SDK boost to address WebView errors

Description
After investigating a render error related to WebView, I found this
https://stackoverflow.com/questions/67314727/react-native-application-not-working-on-android-version-11
I suspect this will need an OTA - will investigate when have more time.
On what platform have you tested the change?

[ ] Android - Emulator
[ ] Android - Physical device
[ ] iOS - Emulator
[ ] iOS - Physical device

Out of scope and potential follow-up
Screenshots
Checklist (for submission)

[ ] Analytics/tracking events have been added (if relevant)
[ ] Added new screen(s) to src/features/screens.ts and new Redux slice(s) to mocks/mockedInitialState.ts (if relevant)

Checklist (for reviewers)

[ ] Checked against Figma designs (if relevant)
[ ] Checked that data has been successfully saved to the backend (if relevant)

Checklist (for merger)

[ ] Make sure the right merge strategy is chosen, commit merge into master and squash merge into develop.

Closing as we can pick this up in 2.7.0


Allowing constructing CredentialsFile from string

PR aiming to tackle issue described here: https://github.com/yoshidan/google-cloud-rust/issues/200

Please run
cargo clippy --fix
cargo fmt

to fix CI.

Oupsie ! Fixing it now :)

done !

Overriding environment variables cause other tests to fail.
In the scope of your addition, only test_credentials_file_new_from_str is sufficient as a test, so could you please remove the other tests, leaving only test_credentials_file_new_from_str for the time being? I would appreciate it if you could delete the other tests.

Hey @yoshidan !
Would it be ok to use a dedicated env var crates tackling those challenges?
It will allow to set env vars, test it without any issue having tests running in parallel?
It allows to keep tests on this part :)
Cheers

Thanks!

Hey @yoshidan ! Would you mind creating a new release with this change?
Thanks a lot :)

Hi @benjaminch
I published new release now.


BZ 62496: Add possibility write remote user/auth type to response header

Two issues:

I have opted not to make the header names configurable to reduce complexity in the first place. This can be done if someone really requests it.
I did not document the flag for the SSLAuthenticator because this happens before HTTP on the gateway, thus the gateway has the remote_user already and will forward the cert to the Tomcat instance.

If approved, I'll port back to 8.5.x and 7.0.x

I concur the X- because of RFC 6648.
I can convert them to lower, no issue, but  when I see the usage of setHeader() on AuthenticatorBase and friends, it is still upper kebab case. For consistency reasons, this should be done in one go. Shall I do then lowercase for this case only for now?

@markt-asf lower cased with a force push.


Property multi does not exist on type ChainableCommander

Hey all!
Apologies in advance if this issue does not follow any issue guidelines. I couldn't find a document describing issue structure, so I will do my best to give it some structure.

Package version: v5.3.1
Node: v16.15
Typescript: v4.9.5

I am trying to use a feature described in the readme about the ability to use inline transactions with pipelining. However, if I start a pipeline and try to call multi, I get a try a type error.

Thank you!

noted the same issue today


Split library code into smaller repositories?

The libraries made available through this project are awesome.  It's a bit cumbersome to use them, though, due to the size of the repo.  For example, importing the cache go library requires cloning the entire 68MB repo for a few KB of code.  Splitting off go/* (excepting go/vt) into a separate repo would result in only a single additional repository but provide the bulk of the benefit in terms of size reduction.

It sounds nice, but I'm worried it would cause more trouble than it's worth. We'd lose the ability to update both trees in a single commit or pull request. We'd have to use either "go get" or godep to import our own changes, each of which has its issues in general for Go dependency management. If the only benefit is reducing the data size of a clone, it doesn't seem worth it to me.
As a compromise, maybe we could copy out the libs into a fresh repo, but leave them frozen and keep working in this repo. But then, you could just do that yourself - make a pseudo-fork that copies the libs but not the history.

I have feeling it is better to move these independent go libs into a separate repo at some point. So that go folks could utilize them to build great applications. It's worth the effort, like Guava guys did. In the meanwhile, Vitess could have its own libs and developers could sync the changes manually, so you still have the ability to update change in a single commit.

As articulated by @joshk0 in #819, there is another argument for doing this besides the size of the repo, which to me is just the price we pay for using Git. Basically he said it's more about discoverability - if we clearly advertise that these are general-purpose libraries, more people will use and hopefully contribute to them.
It's starting to sound good to me, but I'd like to see where the vendoring discussion goes before doing a big migration. Basically they're trying to get the Go community to agree on a single convention for doing vendoring.

Golang vendoring is no longer experimental as of 1.6.
https://golang.org/doc/go1.6
Any further thoughts on this issue?

We do use native Go vendoring for all external dependencies now, and we're reasonably satisfied with it. One question that remains is what level of granularity to use for breaking out packages: (1) separate repository per package (e.g. github.com/youtube/cgzip), or (2) a single break-out repository for non-vitess packages (a la https://github.com/dropbox/godropbox).

IMO from a client's perspective the ideal granularity would be close to (1), although you might try to group closely related functionality together (e.g. "cacheservice" and "memcache"). It's rare that users want to pull a whole grab bag of utility code into their project.

That's a good point, although logistically I'm worried that github.com/youtube may not be the right namespace in which to dump ~30 small Go packages (whereas a github.com/dropbox/godropbox-style repository would be an easier sell). I'll bring it up with the team and see what they say.

This issue is old. Looks like we're sticking to the default decision of status-quo.


After recent update (0.6.1) connection fails - returns InvalidResponse(HTTP/1.1 404 Not Found)

Hi!
It appears that something has changed not for the better in my case, because websocket connection fails to get established.
2019-07-03T12:49:47.377Z debug: Negotiate completed with OK status code
2019-07-03T12:49:47.377Z debug: Negotiate response: {"connectionId":"BrBwByiNWeTQ9Y0zJhhxZQ","availableTransports":[{"transport":"WebSockets","transferFormats":["Text","Binary"]},{"transport":"ServerSentEvents","transferFormats":["Text"]},{"transport":"LongPolling","transferFormats":["Text","Binary"]}]}
2019-07-03T12:49:47.382Z debug: Negotation response received
2019-07-03T12:49:53.665Z info: Starting WebSocket transport
2019-07-03T12:49:54.016Z info: WebSocket error. Error: InvalidResponse(HTTP/1.1 404 Not Found)
2019-07-03T12:49:54.017Z info: Transport closed
2019-07-03T12:49:54.018Z debug: Attempting to chage state from: '(nil)' to: 'stopped'
2019-07-03T12:49:54.019Z debug: Changing state to: 'stopped' succeeded
2019-07-03T12:49:54.020Z debug: Previous state connecting
2019-07-03T12:49:54.020Z debug: Leaving startDispatchGroup (transportDidClose(_:): 240)
2019-07-03T12:49:54.020Z debug: Invoking connectionDidFailToOpen
[WebSocket] Failed to connect to server: (The operation couldn’t be completed. (SwiftSignalRClient.WebSocketError error 4.)

Any guesses why it might work out like that?
Never had that "InvalidResponse(HTTP/1.1 404 Not Found)" on 0.4.1.
Considering making a rollback.
Some backtrace – code which worked before:
        let wssEndpoint = networkConfig.websocketBaseUrl // Acquiring WS url.
        let url = "\(wssEndpoint)/hub/?access_token=\(accessToken)&id=\(connectionId)" // In our scheme, access token and connectionId is passed here.
        let socketUrl = URL(string: url)!

        let chatHubConnection = HubConnectionBuilder(url: socketUrl)
            .withLogging(minLogLevel: .debug)

           /// The following lines were added as of 0.6.1:
            .withHttpConnectionOptions(configureHttpOptions: { (options) in
                options.accessTokenProvider = { accessToken }
            })

            .build()

        /// Some event subscription, etc
        /// ...
        chatHubConnection.delegate = self
        chatHubConnection.start()

Thanks in advance for any input.

Can you check and show what URL is being used to start the webSocket connection? It seems that the webSocket URL was modified and as a result it is no longer correct so the server returns 404. One culprit I can think of is 4080d6a82a95dcd5a2d546a5abfa2cf3d06c7be1 which fixes a bug where the connectionId was not appended to the URL when opening a webSocket. I wonder if this logic plays well with existing query string parameters.
I am not sure if you need the accessTokenFactory if you send access tokens in the queryString. The client will use accessTokenFactory to get the access token each time it opens a connection (just in case the token changed between requests) and will set the Authorization header. Since you are not using this you may not need this.

I checked and having additional parameters in the query string does not cause the URL to be garbled. Just in case I also set accessTokenProvider in the options but this did not change anything (as expected since my test server is not using authentication). I think you need to check on your side what is causing the 404 error - whether the client is actually trying to use an incorrect URL or the issue is with authentication where the token is not send or is incorrect and because of that the resource is not visible.

Hey moozyk,
Thanks for the feedback. Delving deeper into the code and analyzing possible changes lead to solution.
Crucial change was the following:
Previously, I've had the following line to pass connectionId and token:
        let url = "\(wssEndpoint)/hub/?access_token=\(accessToken)&id=\(connectionId)"
It has since been shortened down to:
        let url = "\(wssEndpoint)/hub/"
Specifically, connectionId was the connection ID that I used to manually acquire by calling Negotiate request by my own means. Upon the recent update this caused conflict and failed to work.
So the changes I made to resolve my connection issue was to:

Deprecate (remove) manual negotiate request, stop passing connectionId manually and let your library perform all the job.
Deprecate manual token pass via query (similar as connectionId).
Implement accessTokenProvider to pass token correct way.

That's it.
Basically, the resulting function:

   func establishConnection() {
       guard
           let accessToken = sessionDao.getAccessToken(),
           let socketUrl = URL(string: "\(networkConfig.websocketBaseUrl)/hub/")
       else {
           return
       }

       let chatHubConnection = HubConnectionBuilder(url: socketUrl)
           .withLogging(minLogLevel: .debug)
           .withHttpConnectionOptions(configureHttpOptions: { (options) in
               options.accessTokenProvider = { accessToken }
           })
           .build()

       chatHubConnection.delegate = self
       chatHubConnection.start()

       /// Subscription
       /// chatHubConnection.on(method: ...

   }

Bottom line:
Your library is 💯% intact and kicking! :-)
Thanks! 👍

I am glad you got to the bottom of it. I was a little bit worried about
this potential issue.
As a side note - when using web sockets negotiating (if you know that your
server supports web sockets and you are not using Azure SignalR Service )
and sending the connection id is not required. The C# client has an option
to disable that and I am planning to implement this feature  in this client
as well.
On Mon, Jul 8, 2019 at 7:23 AM Hexfire<EMAIL_ADDRESS>wrote:

Closed #59 https://github.com/moozzyk/SignalR-Client-Swift/issues/59.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/moozzyk/SignalR-Client-Swift/issues/59?email_source=notifications&email_token=AAK7JJABLPFYBHOFEPBFKE3P6NEXFA5CNFSM4H5FU2WKYY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOSMAUILA#event-2466333740,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAK7JJH22GNDEKUIATQTWUTP6NEXFANCNFSM4H5FU2WA
.


Revision of install steps

This commit updates the install directions and corrects some inconsistencies in the directory references. It also removed the step to create a vagrant_data directory directly in Windows as this is really only used in the VM environment as a link to the windows directory vodm_data. It also adds a step to create a separate install directory for the ODM application software to overcome a sym link problem with windows.

This is pretty well tested and works 100% as far as I can tell. Every test imagery set completes on my local machine. You can copy/paste almost all the commands, except the commands with the Windows directory paths as they are just example paths.
The only problem is that I have to manually edit install.sh from the main ODM repo to change libboost-dev-all to libboost1.48-dev-all or the ODM install will fail.
I think this should be changed in the main ODM repo and will submit a pull request if you agree.

@bgirardot -- re: libboost-all-dev vs. libboost1.48-all-dev -- is this with 12.04 or 14.04? May need to add an IF FI in the install.sh to handle the two differently. I'll reopen https://github.com/OpenDroneMap/OpenDroneMap/issues/30

Hi, vagrant installs "precise32" which is a Ubuntu 12.04 LTS.

Ah, so that is it.
Can you test this branch on a new VM? : https://github.com/OpenDroneMap/OpenDroneMap/tree/test-12.04-14.04-install

I'll test it right now

Interestingly, in Ubuntu 14.10 and 14.04 it gives the same error, but the install continues. In 12.04 the error stops the install.
The if test change I made works in all three Ubuntu versions I tested.

Awesome. A pull request and it's in.

I tested on 12.04 64-bit as well.

@smathermather PR coming up shortly. Includes your changes + my 1 tweak. Just final testing at the moment before hitting the PR button.

Merged.


[BUG] Status Check : Server resulted ECONNREFUSED

Environment
Self-Hosted (Docker)
System
No response
Version
No response
Describe the problem
I'm having an issue with the Status Check.
I installed dashy and specified the port "<IP_ADDRESS>:4000:80" to work only on local I don't want to expose the app for external users.

and any App i want to deploy it, I make the same thing in the port "<IP_ADDRESS>" to make it locally when I try to check the status in dashy i get this error : "service unavailable: Server resulted ECONNREFUSED (-111)"

Additional info
No response
Please tick the boxes

[X] You have explained the issue clearly, and included all relevant info
[X] You are using a supported version of Dashy
[X] You've checked that this issue hasn't already been raised
[X] You've checked the docs and troubleshooting guide
[X] You agree to the code of conduct

Environment
Self-Hosted (Docker)
System
No response
Version
No response
Describe the problem
I'm having an issue with the Status Check.
I installed dashy and specified the port "<IP_ADDRESS>:4000:80" to work only on local I don't want to expose the app for external users.

and any App i want to deploy it, I make the same thing in the port "<IP_ADDRESS>" to make it locally when I try to check the status in dashy i get this error : "service unavailable: Server resulted ECONNREFUSED (-111)"

Additional info
No response
Please tick the boxes

[X] You have explained the issue clearly, and included all relevant info
[X] You are using a supported version of Dashy
[X] You've checked that this issue hasn't already been raised
[X] You've checked the docs and troubleshooting guide
[X] You agree to the code of conduct

Why do you use <IP_ADDRESS>:4000:80?
Why two ports?

@CrazyWolf13
it's only 1 port.
normally you will use "4000:80" but anyone in your network can access to the website by using your ip and the port
adding "<IP_ADDRESS>" making it work only locally so no one can access to your dashy.
I hope it makes sense to you now.

@CrazyWolf13
it's only 1 port.
normally you will use "4000:80" but anyone in your network can access to the website by using your ip and the port
adding "<IP_ADDRESS>" making it work only locally so no one can access to your dashy.
I hope it makes sense to you now.

Oh okay.
Yeah surely did know about <IP_ADDRESS> but not about the port.

@CrazyWolf13
if you are familiar with docker you will know that.
"4000:80" mean that the first port "4000" is the host machine's port, that what you will use to access your dashy. Any traffic that comes to this port on your host machine will be forwarded to the container.
And "80" This is the container's port. It's the port where your application inside the Docker container is listening for incoming network requests.
So, when you use 4000:80, it means that the Docker container is set up in a way that any requests made to port 4000 on your host machine will be redirected to port 80 inside the container. This is useful because it allows you to run multiple containers on your host, each using port 80, but with different host port mappings.
I recommend you to read more about docker to understand.

There's a section in the Troubleshooting guide about Failing Status Checke that you might find helpful.
My guess is this is either a misconfiguration or a CORS error. There's also bunch of extra Status Check Settings you can use to (hopefully!) get it working for your use case.
But as @Minatowalid pointed out, that's your docker-compose, rather than your Dashy config. If you can share the config file, that'll help. Also if you pop open the browser console, you should see some more details about the error there (here's how if your unsure).

I'm going to close this ticket, as the issue template isn't properly filled in so there's not enough info for me to look into it.
Failing status checks is quite a common issue, and usually caused by the server config for the service your trying to check the status of (CORS), or a mistake in your Dashy config.
For future reference, try and include the relevant parts of your config, and any logs, as well as fill in the issue template.
If you can provide the extra info - feel free to comment below, and I'll try and help, or re-open this ticket if needed.

Ohh I get that just now!
Yeah sure I know docker very good.
Didn't know what I was thinking back at this morning, maybe it was a bit too early 😆

@Lissy93
here is the conf.yml I convert it to txt so I can upload it here
conf.txt
and here is the console logs
console-export.txt


🐛 BUG: slow internet connection causes crashes

Which Cloudflare product(s) does this pertain to?
Pages
What version(s) of the tool(s) are you using?
wrangler 3.26.0
What version of Node are you using?
v20.11.0
What operating system and version are you using?
Mac Sonoma 14.3
Describe the Bug
Observed behavior
/Users/user/Desktop/projects/project/node_modules/wrangler/wrangler-dist/cli.js:29572
            throw a;
            ^

FatalError: Failed to upload files. Please try again. Error: {"text":"Received a malformed response from the API","notes":[{"text":"Expired JWT"},{"text":"POST /pages/assets/upload -> 403 Forbidden"}],"kind":"error","name":"APIError"})
    at /Users/user/Desktop/projects/project/node_modules/wrangler/wrangler-dist/cli.js:147236:13
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async run (/Users/users/Desktop/projects/project/node_modules/wrangler/wrangler-dist/cli.js:146760:26) {
  code: 1
}

In essence, because of my slow internet and just a few large uploads, I am never able to publish my website to Cloudflare pages.
Expected behavior
Uploads all files successfully.  Allow for resuming uploads or refreshing the JWT or increasing the JWT timeout.
Steps to reproduce

Have a slow internet connect.
Have a plain static site with say 10 large images that are 20mb each.
Run npx wrangler pages deploy dist

Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
/Users/user/Desktop/projects/project/node_modules/wrangler/wrangler-dist/cli.js:29572
            throw a;
            ^

FatalError: Failed to upload files. Please try again. Error: {"text":"Received a malformed response from the API","notes":[{"text":"Expired JWT"},{"text":"POST /pages/assets/upload -> 403 Forbidden"}],"kind":"error","name":"APIError"})
    at /Users/user/Desktop/projects/project/node_modules/wrangler/wrangler-dist/cli.js:147236:13
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async run (/Users/users/Desktop/projects/project/node_modules/wrangler/wrangler-dist/cli.js:146760:26) {
  code: 1
}

It looks like your upload JWT is expiring during the upload process. I need to look up what the expiry time on that token is but I can't imagine it is that small.
Do any assets get uploaded? You mention 10 x 20Mb files. If, say, the first 3 get uploaded before it crashes, then the next time you try a deployment it should skip those, which means that you would get to full deployment eventually. (I am not saying this is acceptable DX but it is a workaround).
I think we probably just need to make Wrangler more resilient to the upload token expiring, renew it more automatically, and try again, without bothering the user.

Do any assets get uploaded?

Yes, but often it’ll get say 30 files or 50 files and hit that error.

If, say, the first 3 get uploaded before it crashes, then the next time you try a deployment it should skip those, which means that you would get to full deployment eventually.

I don’t think that’s happening, but I could be wrong.  I re-ran it 10 times and it never successfully deployed past my 50 files.  Does that occur even on the first deploy?

I think we probably just need to make Wrangler more resilient to the upload token expiring, renew it more automatically, and try again, without bothering the user.

I feel it may still timeout regardless due to my upload speed, so making the JWT expiration longer would help too.  Retrying logic would be fantastic.


Send password reset emails during mass user upload

Closes #362

I'm not really sure what else I can do regarding my diff coverage since the mailer returns if the env is test, but I can try to get that tested if you'd like.


Dev

FDEM refactor:

Sources are classes and can have derivatives. All sources are defined based on the first order form of maxwell, having a magnetic source S_m and an electric source S_e. The problem then performs the elimination to get the rhs.
FDEM Fields organized: each problem has one known field and one aliased field. All aliased fields have a deriv wrt the model, m and the known field u
each of the four problem types, e,b,h,j only has: getA, getADeriv, getRHS and getRHSDeriv (all of these derivs are wrt m)
FDEM uses PropMap

TDEM: lightly refactored - sources to have it running and passing within the same base class as FDEM. Lots still to be done here to make it more consistent with the FDEM implementation

This issue was moved to simpeg/simpeg#150


Copy Git objects in Docker build steps

This is a preparation step for updating to Go 1.18.
Go 1.18 embeds VCS info into built binaries by default, based on the contents of the .git directory. (Ref. #673)
Without the objects/ directory and index file, go build can't obtain the Git status and fails with:
error obtaining VCS status: exit status 128
	Use -buildvcs=false to disable VCS stamping.

Alternatively, we could disable VCS stamping, as the error message suggests.
I believe including VCS information might be useful in case some package wants to depend on that information for any reason, but I don't have strong opinions about it.

For the curious, here is a sample of the VCS information included in the compiled binary's buildinfo:
(*debug.BuildInfo)(0xc000354360)(go     go1.18.1
...
build   vcs=git
build   vcs.revision=8a454dc07dc762ed5083515b56a9ab44aafe6f67
build   vcs.time=2022-04-15T16:32:54Z
build   vcs.modified=true
)

Note: vcs.modified will always be true in a Docker build, because some irrelevant files are excluded via .dockerignore and therefore show as D (deleted) in git status. I don't think that's important.


add to loop{} a max loops

Make it easier for users to not fall into an infinite loop.
loop(2,5){ }
loop back 2 steps and don't allow anything that has been looped more than 5 times.
Should it be?
loop(2,{it.loops < 5}){ }
???

Not going to do. it.loops < x is sufficiently concise.


How to schedule task with dynamic time though rufus-scheduler

My main problem is to set dynamic scheduler through rufus-scheduler, let suppose i have a text fields on which we put minutes, base on that minutes re-schedule rufus-scheduler.

Answered at https://groups.google.com/forum/#!topic/rufus-ruby/aOVCwXJCUT4
See gist at https://gist.github.com/jmettraux/230aa2e06507a457455a63ad04487481
Closing the issue but not the conversation.

scheduler.interval (SchedulerConfig.find_by_job_name "kk").duration, :overlap => false, :first => :now, :tags => [ 'cont.ct' ] do
....
end
when updating the interval time scheduler is not taking the updated value.
i just want to change the interval time of the particular job

You have first to unschedule the job, else you will end up with two jobs.
Best regards.

@rageshpillai this might also interest you: https://github.com/jmettraux/rufus-scheduler#every-jobs-and-changing-the-next_time-in-flight
Instead of unscheduling and then rescheduling the job, you can simply follow the example and change the next_time on the fly.

thank u john

You are welcome.

scheduler = Rufus::Scheduler.new
scheduler.every '5s' do |job|
p "job time",job.next_time
job.next_time=Time.now+30
p "fd",job.next_time
end
=> "every_1498036590.9886_70118179576740"
"job time"
#<EtOrbi::EoTime:0x007f8b525793f8 @seconds=1498036600.9887328, @zone=#<TZInfo::TimezoneProxy: Etc/UTC>, @time=nil>
"fd"
2017-06-21 14:47:06 +0530
pls check this code
its not updating the interval.
pls help me resolve

Hello,
here is something that works for me:
require 'rufus-scheduler'

class Rufus::Scheduler::EveryJob
  #
  # allow setting the frequency directly
  #
  attr_writer :frequency
end

scheduler = Rufus::Scheduler.new
scheduler.every '2s' do |job|
  p [ :in, Time.now ]
  job.frequency = rand(4) + 1
  job.next_time = Time.now + job.frequency
  p [ :new_frequency, job.frequency ]
end

scheduler.join

I hope it helps. Best regards.

i added the same code in the rails console its showing
ArgumentError: comparison of Time with EtOrbi::EoTime failed

@rageshpillai I need the complete error stack trace.

is it possible to update the job.original value?

@rageshpillai wrote:

y we need to add frequency in it?

What do you mean?

is it possible to update the job.original value?

Yes, it's Ruby, you can override it.

Please try with:
require 'rufus-scheduler'

class Rufus::Scheduler::EveryJob
  #
  # allow setting the frequency directly
  #
  attr_writer :frequency
end

scheduler = Rufus::Scheduler.new
scheduler.every '2s' do |job|
  p [ :in, Time.now ]
  job.frequency = rand(4) + 1
  job.next_time = ::EtOrbi::EoTime.now + job.frequency
  p [ :new_frequency, job.frequency ]
end

scheduler.join

y we need to change the frequency is it req or not?

y we need to change the frequency is it req or not?

The frequency is the "interval" you were asking for above.
If you don't change the frequency, the scheduling will occur always at the original interval.

scheduler.every '2s' do |job|
p [ :in, Time.now ]
job.next_time = ::EtOrbi::EoTime.now +60
p [ :new_frequency, job.next_time ]
end
this one is working for me. with out updating the frequency

Ah OK, then you're good to go.
Well done!

thank u :)

scheduler.join is required?

Hello,
scheduler.join tells the current Ruby thread to join the scheduler instance thread. It is useful for small scripts running rufus-scheduler. If you run a rufus-scheduler instance in a web application (Ruby on Rails for example), scheduler.join is not necessary (it should even be avoided). It is not necessary because the web server takes care of not exiting its own process unless told otherwise.
Best regards.
See also https://github.com/jmettraux/rufus-scheduler#schedulerjoin

is there any way "interval" jobs and changing the next_time in-flight?

Hello,

is there any way "interval" jobs and changing the next_time in-flight?

Yes, in the exact same way you did it above with an EveryJob.
Best regards.

which class i need to override?
"next_time" option  should work as well with cron jobs, not so with interval jobs whose next_time is computed after their block ends its current run.

"next_time" option should work as well with cron jobs, not so with interval jobs whose next_time is computed after their block ends its current run.

You are right.

which class i need to override?

IntervalJob
Best regards.

Or you could simply set the @interval and be done.

k

@rageshpillai wrote:

k

Sorry, what do you mean by that?

does overlap:false option work with every jobs

@rageshpillai I am sorry, I am too busy to take the time to read the documentation for you. Please read the documentation by yourself. If it's not in the documentation, just simply try. If there is anything wrong, please open a detailed issue.

In our apps we have 10 background jobs, all are interval jobs
class Rufus::Scheduler::IntervalJob
 attr_writer :interval
end

am using this class to overidde the interval timing
``
time_delay=(SchedulerConfig.find_by_job_name "job_name").duration
job.interval=(time_delay.include?("m")) ? (time_delay.scan(/\d+/).first.to_i60) : (time_delay.include?("h")) ? (time_delay.scan(/\d+/).first.to_i6060) : (time_delay.scan(/\d+/).first.to_i606024)
next_job_time = Time.now + job.interval
Rails.logger.info "[UANOCJ] Next job_time=#{next_job_time} and frequency=#{job.interval}s "
all the jobs are working as expected .but after 3 days after the deployment some of the jobs are failing. am not able to under stand what is the exact issue in this.

@rageshpillai This issue is closed. Feel free to open a new, DETAILED, issue if you encounter a new problem. Thanks for your understanding.


Add safe accessor on name

In the case where the select has no value, notion will return a nil
value on the select property. This was assumed to be present, so calling
.name on nil returned an exception.
This adds the safe accessor in the event it's not set, the returned
property value from NotionToMd::Page::CustomProperty will also be nil.

Hey @MattHall,
Thank you very much for your contribution. The changes looks good to me. I will release a new version soon with your fix.

@MattHall it is done. Fix published 👇

https://github.com/emoriarty/notion_to_md/releases/tag/2.2.1
https://rubygems.org/gems/notion_to_md/versions/2.2.1

Thanks again and congrats, you're the first contributor on this project 🥇 .


Outdated code job link

Current behavior

This code comment links to https://www.consumerfinance.gov/jobs/technology-innovation-fellows/, which contains outdated job links and info about fellows who are no longer with the bureau.

Expected behavior

https://www.consumerfinance.gov/jobs/technology-innovation-fellows/ is worded to reflect the current workforce and opportunities at the bureau.

The page in question, which was both wildly out of date and not linked to anywhere else on CF.gov except on a legacy blog post circa 2015, has been unpublished and now redirects to "Careers at the CFPB," so users will not be directed to outdated information. Up to the dev team whether to update the URL in that code comment or to leave as is now that it ultimately leads somewhere more current.


fixed forced autologin with cleos

Fixes #137
This need to be tested in mobile using Anchor Authenticator.

@Viterbo I've tested on my iphone with Anchor, and I could sign in, vote and sign out successfully.

This branch is rebased (48cbbab) on develop and ready to be merged.


AtomicServer not published cargo publish fails

For some reason, cargo publish fails, whereas cargo build works just fine.
It can't find the ../browser folder. I think the relative path changes when running publish... Maybe there's a way to target the project path?
EDIT: Turns out the CARGO_MANIFEST_DIR is ...atomic-server/target/package/atomic-server-0.36.0, so not the project folder root!

Seems like a step in cargo publish is to individually clone the folders of workspace members, which makes sense when publishing.
I can try making a bunch of changes to build.rs to copy the dist folder

copying the folder seems to work partially, but I still get this:
error: environment variable `OUT_DIR` not defined at compile time
  --> src/routes.rs:15:18
   |
15 | include!(concat!(env!("OUT_DIR"), "/generated.rs"));
   |                  ^^^^^^^^^^^^^^^
   |
   = help: Cargo sets build script variables at run time. Use `std::env::var("OUT_DIR")` instead
   = note: this error originates in the macro `env` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0425]: cannot find function `generate` in this scope
  --> src/routes.rs:25:37
   |
25 |             ResourceFiles::new("/", generate())
   |                                     ^^^^^^^^ not found in this scope

Problem was the line include = ["src/**/*", "Cargo.toml", "assets_tmp", "build.rs"]


Arena hard elad2

I added my comments.    One additional point I see, is there is delicate code which does not have tests (e.g. calculating mean rate).