Skip { after: :other_attribute } validation if other_attribute is nil

🦄 Feature Request
Is your feature request related to a problem?
When I'm using the after syntax using an attribute:
validates :expiration_date, date: { after: :packaging_date }

but then packaging_date is a nilable attribute, the validation fails when packaging_date is blank.
Describe the solution you'd like
The more sensible behaviour to me is if the after validation is only applied in case where packaging_date is present. If packaging_date is blank, the date validation should just check the date format of expiration_date.
If this makes sense with the authors and the users, I'm totally willing to put in a PR!

next if option_value.blank? to > https://github.com/codegram/date_validator/blob/master/lib/active_model/validations/date_validator.rb#L84


[Improvement] Refactor UZVideo Callbacks

Description

Currently the Callbacks are not good naming or all callback functions are not related, so improve it.
See more here: https://uizaio.atlassian.net/wiki/spaces/TT/pages/62980125/New+Function

close as #180


Incorrect behaviour when scrolling downward to dismiss custom keyboard view [iOS]

While a custom keyboard view is selected and dragging downward on the scrollview/flatlist the position of the list ends up with an offset and the custom keyboard toggles no longer work. If you press the reset button everything works again until you repeat the above. onPress={() => KeyboardUtils.dismiss()} works fine to dismiss the custom keyboard
Steps to reproduce:

Tap one of the custom keyboard view toggles (show1 or show2)
Drag/scroll downward on the list such as to collapse the keyboard
Weird offset shows up
Tap on the toggles show1 or show2 again
Nothing happens
Tap the textinput or reset button and the correct behaviour resumes until you try the above again

iPhone X, X 11 Pro
React Native 0.59
RN Keyboard Input 6.0.0

Hi @pribeh,
I'm not sure if the bug that you are reporting is the fact that pressing the show button does not open the custom keyboard (similar to this, but not the same) or that there's a "Weird offset"? If it's the latter, please mark it in the screenshot.


restic -r /srv/restic/ cat pack ... | file - keeps lock in repository

Output of restic version
restic 0.8.3
compiled with go1.10 on linux/amd64
How did you run restic exactly?
 export RESTIC_PASSWORD_FILE=/root/restic-password RESTIC_REPOSITORY=/srv/restic/
restic -r /srv/restic/ cat pack add624760238c24a7dbb01c4bdabfb7b8ab257df6361840b0b097b52de38d4b8  |file -
restic check

What backend/server/service did you use to store the repository?
fs
Expected behavior
repository should not be locked
Actual behavior
restic check
password is correct
create exclusive lock for repository
Fatal: unable to create lock in backend: repository is already locked by PID 18982 on caledvwlch by root (UID 0, GID 0)
lock was created at 2018-05-25 19:03:16 (17.483158175s ago)
storage ID 31086398

Steps to reproduce the behavior
Create repository with unreferenced packs and use one of the IDs like this:
 export RESTIC_PASSWORD_FILE=/root/restic-password RESTIC_REPOSITORY=/srv/restic/
restic -r /srv/restic/ cat pack add624760238c24a7dbb01c4bdabfb7b8ab257df6361840b0b097b52de38d4b8  |file -
restic check

Do you have any idea what may have caused this?
Maybe file does not read all output of restic and therefore it does not properly terminate or there is just code missing to cleanup the lock.
Do you have an idea how to solve the issue?
Remove the lock when restic cat terminates.

restic is probably terminated by a signal because file just reads the first couple of bytes. You should also get a non-zero exit code.
This can be handled better, I think it's a bug.

I have noticed that cat requires a lock.
The --no-lock flag seems to be ignored.
Isn't cat a read only operation?

Closing this as it is a duplicate of #1466.


Processing of reconciliation is slow?

As discussed on Gitter, I'm developing a reconciliation service and I noticed that the time it takes to do the fuzzy search is dominated by the time it takes to process the results.
I'm not sure if you have access to Python, but I've tried to make the instructions as straightforward as possible.  It should work on any platform as long as you set the environment properly.  Also, it's currently set up so you can lower the log level just by pointing FLASK_APP at venv/lib/python3.7/site-packages/csv_reconcile instead of csv_reconcile.
I just threw this up so you could test it.  The tool could use some more polishing.
You can load sample/progressives.tsv into OpenRefine and then reconcile the member column using the service.  On my machine OpenRefine 3.4.1 sends query batches of size 10.  The service takes <2 seconds to process, but there are ~10 secs between batches getting sent.
bash-5.0$ venv/bin/python -m flask run
 * Serving Flask app "venv/lib/python3.7/site-packages/csv_reconcile"
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://<IP_ADDRESS>:5000/ (Press CTRL+C to quit)
start timer
Elapsed: 1.5238202030000014
<IP_ADDRESS> - - [13/Feb/2021 19:45:17] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.5245007290000103
<IP_ADDRESS> - - [13/Feb/2021 19:52:42] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.5689725690000387
<IP_ADDRESS> - - [13/Feb/2021 19:52:44] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.5700575550000053
<IP_ADDRESS> - - [13/Feb/2021 19:52:52] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.7569187119999583
<IP_ADDRESS> - - [13/Feb/2021 19:52:57] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.4609496090000107
<IP_ADDRESS> - - [13/Feb/2021 19:53:09] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.8019815920000042
<IP_ADDRESS> - - [13/Feb/2021 19:53:15] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.667001018999997
<IP_ADDRESS> - - [13/Feb/2021 19:53:18] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.6668618590000506
<IP_ADDRESS> - - [13/Feb/2021 19:53:29] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.7560411690000137
<IP_ADDRESS> - - [13/Feb/2021 19:53:36] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 1.6570629999999937
<IP_ADDRESS> - - [13/Feb/2021 19:53:39] "POST /reconcile HTTP/1.1" 200 -
start timer
Elapsed: 0.5511451229999693
<IP_ADDRESS> - - [13/Feb/2021 19:53:50] "POST /reconcile HTTP/1.1" 200 -

Hmm...  A few of the batches above are faster than I had been seeing.  Not sure why it wouldn't be uniform.  In any event, this is how I produced the results.  Maybe it's affected by other projects running in OpenRefine??  I'm happy to provide more information if you need it.
Regards,

Hmm..  Strangely it looks like I need to use JSONP for this service only to add the service.  Once the service is registered that seems not to be required.  Note that this is a service running on local host so that CORS shouldn't be required.  I can set up CORS, but that means setting up an ssh certificate, etc., which is a bit of a pain as a pre-requisite to development.
If I don't use JSONP, I get this when adding the service, but only when adding the service.

Please let me know if you've had issues with this.  I'll update the code to use JSONP for now.
Regards,

Actually, let alone development, simply running a local service shouldn't require setting up local ssh certificates, etc.  This app for instance is meant to be run locally to be able to reconcile against a CSV file.

Sorry.  I still think it strange that JSONP is required only for adding the service when not using CORS, but I was wrong about CORS requiring ssh.  With flask-cors it was easy enough to implement, so I've removed JSONP and added CORS.

Yes, I got blocked on the JSONP issue when I tried to profile the code and gave up. I'll try to circle back some time to take another look.

I'm on a mac and don't know a better way to monitor activity than using top.  It looks like you can see where the Python service is doing the fuzzy calculation, but other than that it looks like not a lot is going on.  Ideally I'd like to get my results back sooner.  Any help understanding what's taking so long to get subsequent requests would be appreciated.
FWIW, if this is trying to be nice to the server, I'd think it better for the server to throttle and the client to handle getting throttled with a back off rather than slowing down requests for every client usage regardless of how well the service is performing.
$ egrep 'Python|JavaAppLauncher' /tmp/monitor.script
74728  Python          0.0  1   sleeping 00:06.18
26164  JavaAppLauncher 0.0  53  sleeping 02:55.73
74728  Python          13.4 2/1 running  00:06.51
26164  JavaAppLauncher 0.2  54  sleeping 02:55.73
74728  Python          14.6 1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.73
26164  JavaAppLauncher 0.0  54  sleeping 02:55.73
74728  Python          0.0  1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.73
74728  Python          0.0  1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.70
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.70
74728  Python          19.0 1   sleeping 00:06.93
26164  JavaAppLauncher 0.1  54  sleeping 02:55.74
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.93
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.93
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.93
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.93
26164  JavaAppLauncher 0.0  54  sleeping 02:55.74
74728  Python          0.0  1   sleeping 00:06.93
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:06.93
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:06.93
74728  Python          0.1  2/1 running  00:06.94
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          19.2 1   sleeping 00:07.17
26164  JavaAppLauncher 0.1  54  sleeping 02:55.75
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
26164  JavaAppLauncher 0.0  54  sleeping 02:55.75
74728  Python          0.0  1   sleeping 00:07.17
74728  Python          19.1 1   sleeping 00:07.40
26164  JavaAppLauncher 0.1  54  sleeping 02:55.76
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
26164  JavaAppLauncher 0.0  54  sleeping 02:55.76
74728  Python          0.0  1   sleeping 00:07.40
74728  Python          19.2 1   sleeping 00:07.63
26164  JavaAppLauncher 0.1  54  sleeping 02:55.76
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.63
74728  Python          18.5 1   sleeping 00:07.87
26164  JavaAppLauncher 0.1  54  sleeping 02:55.77
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.87
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.87
26164  JavaAppLauncher 0.0  54  sleeping 02:55.77
74728  Python          0.0  1   sleeping 00:07.87
26164  JavaAppLauncher 0.0  54  sleeping 02:55.78
74728  Python          0.0  1   sleeping 00:07.87
26164  JavaAppLauncher 0.0  54  sleeping 02:55.78
74728  Python          0.0  1   sleeping 00:07.87
$

I'm able to reproduce this with 3.4.1, but the HTTP code has been completely rewritten for 3.5, so I'm not sure it's worth spending a lot of time debugging the problem. The problem doesn't exist in 3.5, although there's another problem (https://github.com/OpenRefine/OpenRefine/issues/3664) with reusing HTTP connections that causes every other reconciliation batch to fail.
I profiled this and the time spent calculating features for your example is in the range 1-5 msec for a batch of ten rows, so it's definitely not a bottleneck.

That’s fair enough.  That range sounds much more workable.  If I see the problem in 3.5 I’ll open a new issue.  Feel free to close this one.

Closing then, but I keep in mind your suggestion of lazy computation for recon features, which makes a lot of sense I think (not just for time savings, but also for memory and disk space).

FWIW, the other idea I had is to move Levenshtein distance from being a feature to being a “data extension”.    That notion could be extended to allow people to write their own plugins for functionality which suits their domain.  Also as a data extension it’s more explicitly “on demand”.

Just had another simpler idea.  Both Levenshtein distance and Word distance can be exposed as functions so that users can call them as they see fit.  For instance, you could split out all the candidates returned from reconciliation and then apply Levenshtein distance with a GREL expression.  Are these functions already available?  The links to GREL controls, Clojure and Jython seem broken here.

I'm no Clojure wiz, but I got the following to work.  It might be nice to expose it as a function, though.  Also, it might be nice if the documentation had some more examples of Clojure.  I found this useful.
(defn getCol [colnm]
  (.-value (.-cell (.getField cells colnm (new java.util.Properties)))))
(import [org.apache.commons.text.similarity LevenshteinDistance])
(.apply (new LevenshteinDistance) (getCol "col") (getCol "coord"))

Makes sense! If you feel like it, I am sure PRs to the docs in this direction will be welcome :)

For posterity, this is even easier with Jython.  (I have no prior experience with either...)
ld = LevenshteinDistance()
return ld.apply(cells.col.value, cells.coord.value)

@wetneb Added doc about basic Clojure access here.

I don't know if this should be a new issue or not, but reconciliation feels slow again.  Above @tfmorris says that this went away in OpenRefine 3.5 and I seem to remember confirming at the time, but that was before the release.  I've now tested with both OpenRefine 3.5 and 3.6.1 stable releases and both feel slow.  I can see the time spent in the server and its negligible so it looks like the client either isn't processing results quickly or is throttling requests for some reason.
I thought @antoine2711 made some change to batch requests, but I can't seem to find the issue now.

P.S. I'm happy to open a new issue if that's preferred.  I just wanted to draw the connection to the old issue.


Add Bootstrap Template

Add Navbar

Looks like a merge conflict occurred because we merged an earlier pull request.


Fail to check types when extending class that contain object with function that reference to "this"

Bug Report
🔎 Search Terms
Type checking
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about _________

⏯ Playground Link
Playground link with relevant code
💻 Code

interface Container<T> {
  prop: T; // this works
  prop2: this; // this works

  fn: (value: T) => void; // if i comment this line - all is ok
  // fn: (value: this) => void; // this also not work
}

export class Field {
  container!: Container<this>;
}

export class ExtendedField extends Field {
  otherOprop: string = ''; // if i comment this line - all is ok
}

// =======

abstract class A {
  abstract field: Field;
}

class B extends A {
  field!: ExtendedField; // error is here
}

🙁 Actual behavior
Property 'field' in type 'B' is not assignable to the same property in base type 'A'.
  Type 'ExtendedField' is not assignable to type 'Field'.
    The types of 'container.fn' are incompatible between these types.
      Type '(value: ExtendedField) => void' is not assignable to type '(value: Field) => void'.
        Types of parameters 'value' and 'value' are incompatible.
          Type 'Field' is not assignable to type 'ExtendedField'.

🙂 Expected behavior
All is ok

otherOprop: string = ''; // if i comment this line - all is ok

If you comment this line then ExtendedField is absolutely the same as Field and will be treated as such. So having the derived class makes no difference.

fn: (value: T) => void; // if i comment this line - all is ok

This is due to the variance. If you change it to fn(value: T): void it will work as well.

interface Container<T> {
  fn: (cb: (value: T) => void) => void; // this works
}

...

If you change it to fn(value: T): void it will work as well.

I can't understand why?
I can't make any changes if type like Container is places inside third-party library.

More real example:
import { Subject } from 'rxjs';

export class Field {
  onChange$!: Subject<this>;
}

...

Class Subject<T> has property observers: Observer<T>[];;
Observer is:
interface Observer<T> {
  next: (value: T) => void;
  error: (err: any) => void;
  complete: () => void;
}

So i cant use Subject with  by this bug

Hm, fn: (value: any) => T also works. It fails only if T is in function parameters.

fn: (next: (value: T) => void) => void also works

@sviat9440

I can't understand why?

This is not a bug. Generic parameter T in Container<T> is invariance, and use this in a invariance position like Container<this> will make the class itself also invariance. That means if you try to assign a instace type of the extended class to the super class you will violate the LSP.
fn(value: T): void will work because it will remove the contravariance behavior for T due to Function Parameter Bivariance and make it only covariance.

I can't make any changes if type like Container is places inside third-party library.

I don't know what does your real code look like but if you must use it like this you should transform all function properties to methods:
interface Observer<T> {
  next: (value: T) => void;
  error: (err: any) => void;
  complete: () => void;
}

type TransformFunctionPropertiesToMethods<T> = { [K in keyof T]:
    T[K] extends (...args: infer A) => infer R
        ? { _(...args: A): R }['_']
        : T[K]
}

type _Observer<T> = TransformFunctionPropertiesToMethods<Observer<T>>

This is a correct error; a rough sketch of why:
abstract class A {
  abstract field: Field;

  foo(f: Field) {
    this.field.container.fn(f); // <- legal call
  }

}

class B extends A {
  field!: ExtendedField = {
    container: {
      fn(e) {
        console.log(e.otherOprop); // <- undefined read
      },
      prop: null as any,
      prop2: null as any
    }
  }
}

Ok. thank you


Remove xmlns:foo=... from index.html

Resolves #18.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks!


[http-server-csharp] inconsistent status code in some generated operations

when we have this spec:
@delete op delete(
    @path id: TodoItem.id,
  ): WithStandardErrors<NoContentResponse | NotFoundErrorResponse>;

this code was generated:
        [HttpDelete]
        [Route("/items/{id}")]
        [ProducesResponseType((int)HttpStatusCode.NoContent, Type = typeof(void))]
        public virtual async Task<IActionResult> Delete(long id)
        {
            await TodoItemsOperationsImpl.DeleteAsync(id);
            return Ok();
        }

This operation (when succeeded) should always produce 204, but we are returning Ok() which represents to 200.

Update the label as this is a server gen issue.


Student data overwrites the previous data

What happened?
When the program is run multiple times, the data entered overwrites the previous data stored in the file. It should append to the end of the attendance.txt file.
It might help to work on this issue after #10 is complete.
Code of Conduct

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

Go ahead @abhiraj2


Upgrade PHP 7 to 8 due to new warnings in Drupal 9 about deprecated PHP

As written on the tin: Please consider upgrading PHP 7 to 8 due to new warnings (as of 11/30/22) in Drupal 9 about deprecated PHP.
Here is an example screenshot from the Status Report of a site running ISLE-DC with Nginx 1.18.0, Drupal 9.4.8 & PHP 7.4.26

The current nginx service Dockerfile for the  indicates php7 is in use. (this is expected)

I fully anticipate that we should possibly make this into a release / sprint of its own @nigelgbanks given the potential for breakage across all Drupal modules.
We should also consider enlisting more testers etc e.g. maybe make it more formal?
Feels like we could plan for a Jan / Feb release.
Is this something we should bring to the weekly Islandora Tech meeting?
Would love your thoughts, ideas on this when you have a chance. Cheers!

@misilot Understood but that ticket doesn't seem to be very specific about its intent. Additionally we don't know what breaking changes or impact an upgrade to PHP 8 will have on Drupal Modules. I'm recommending to @nigelgbanks to make it a more formal breaking release and to invite the community for a sprint and testing as an idea.
Would that be something you're interested in helping with too?

I would be happy to do some testing, once I can get our custom codebase working on a new install.

Done under #238


cannot change widget background color

This code is supposed to change the background color of a window widget to TRANSPARENT but it does not work.
fn ui(world: &mut World, _cx: EditorWindowContext, ui: &mut egui::Ui) {
        ...
        ui.visuals_mut().override_text_color = Some(egui::Color32::GREEN);
        ui.visuals_mut().window_fill = egui::Color32::TRANSPARENT;
        ui.visuals_mut().panel_fill = egui::Color32::TRANSPARENT;
        ...
    }

finally found it had to tweak the window itself
window.frame(egui::Frame{fill:egui::Color32::TRANSPARENT, ..Default::default()});

Where did you get the window object? I'm running an eframe app and not seeing that passed into any of the functions that I'm working with.


Mesh - FHIR Failed to generate the schema Error: Unable to load fhir.schema.json

Issue workflow progress

Progress of the issue based on the Contributor Workflow

[ ] 1. The issue provides a reproduction available on Github, Stackblitz or CodeSandbox

Make sure to fork this template and run yarn generate in the terminal.
Please make sure Mesh package versions under package.json matches yours.

[ ] 2. A failing test has been provided
[ ] 3. A local solution has been provided
[ ] 4. A pull request is a pending review

Describe the bug
I am trying to run the project given in the example project given in this repository called  json-schema-fhir
To Reproduce
Steps to reproduce the behaviour:
clone this repository  json-schema-fhir
https://codesandbox.io/p/github/nirzaf/json-schema-fhir/draft/upbeat-shtern?file=%2Fexample-queries%2Fpatient.query.graphql&selection=[{"endColumn"%3A2%2C"endLineNumber"%3A18%2C"startColumn"%3A2%2C"startLineNumber"%3A18}]&workspace=%257B%2522activeFileId%2522%253A%2522cl85mvl6n0009lpgl7hjocn5x%2522%252C%2522openFiles%2522%253A%255B%255D%252C%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522gitSidebarPanel%2522%253A%2522COMMIT%2522%252C%2522sidekickItems%2522%253A%255B%257B%2522key%2522%253A%2522cl85n6k28000k356hw6iyfgvq%2522%252C%2522type%2522%253A%2522PROJECT_SETUP%2522%252C%2522isMinimized%2522%253Afalse%257D%252C%257B%2522type%2522%253A%2522TASK_LOG%2522%252C%2522taskId%2522%253A%2522start%2522%252C%2522key%2522%253A%2522cl85muipb0008356hv6chabsl%2522%252C%2522isMinimized%2522%253Afalse%257D%255D%257D
yarn install
yarn run
Expected behaviour
Should begin the localhost:3000 server and should be able to query hapi.fhir.org via graphql
Environment:

OS: Windows 11

yarn --version 1.22.15

@graphql-mesh/...:
NodeJS:  node --version v16.16.0

Additional context
package.json file
{
  "name": "json-schema-fhir",
  "version": "0.0.285",
  "license": "MIT",
  "private": true,
  "scripts": {
    "download-fhir-schema": "node scripts/download-fhir-schema.js",
    "build": "mesh build",
    "start": "mesh dev",
    "start:prod": "mesh start"
  },
  "dependencies": {
    "@graphql-mesh/cli": "0.78.15",
    "@graphql-mesh/json-schema": "0.35.12",
    "graphql": "16.6.0",
    "unzip-stream": "0.3.1"
  }
}

##Complete error log
npm WARN config global --global, --local are deprecated. Use --location=global instead.

<EMAIL_ADDRESS>start
mesh dev

� �  Mesh - Server  Generating the unified schema...
� �  Mesh - FHIR  Failed to generate the schema Error: Unable to load ./fhir.schema.json from C:\Users\mmfazrin\RiderProjects\json-schema-fhir
at C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules\json-machete\index.js:157:35
at async dereferenceObject (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules\json-machete\index.js:150:40)
at async dereferenceObject (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules\json-machete\index.js:265:36)
at async dereferenceObject (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules\json-machete\index.js:265:36)
at async dereferenceObject (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules\json-machete\index.js:265:36)
at async Object.dereferenceObject (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules\json-machete\index.js:265:36)
at async getDereferencedJSONSchemaFromOperations (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules@omnigraph\json-schema\index.js:303:35)
at async Object.createBundle (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules@omnigraph\json-schema\index.js:2282:32)
at async Object.getWithSet (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules@graphql-mesh\store\index.js:160:38)
at async JsonSchemaHandler.getMeshSource (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules@graphql-mesh\json-schema\index.js:50:24)
� �  Mesh - Server  Error: Schemas couldn't be generated successfully. Check for the logs by running Mesh with DEBUG=1 environmental variable to get more verbose output.
at Object.getMesh (C:\Users\mmfazrin\RiderProjects\json-schema-fhir\node_modules@graphql-mesh\runtime\index.js:554:15)

I cannot run the sandbox;

Could you update it? It doesn't reproduce your error currently.

I also got the same Permission denied error in the sandbox. Can you clone the repository locally and try please https://github.com/nirzaf/json-schema-fhir

It is not starting the localhost server as well

I manage to run the server. but cannot Query anything
These are screenshot samples of queries which are available in the sample queries folder in the same project using same FHIR resources URL  http://hapi.fhir.org/base64

It seems you use an older version because we don't have a command like mesh serve today.
could you try this example?

It seems you use an older version because we don't have a command like mesh serve today. could you try this example as-is without modifying it? https://github.com/Urigo/graphql-mesh/tree/master/examples/json-schema-fhir

Got this error

Repository Link
https://github.com/nirzaf/graphql-mesh/tree/master/examples/json-schema-fhir


Very long command names cause help formatting degradation

(for click==3.3)
I give you this is quite exotic, but if your command's basename gets quite long, the help string looks… well, funny. Not a big deal, but reporting it anyway, the fix might be easy.
$ bin/one-0.2.0-py2-none-any-pyrun-2.1.0-py2.7_ucs4-linux-x86_64.tgz.pex \
    bin/one-0.2.0-py2-none-any-pyrun-2.1.0-py2.7_ucs4-linux-x86_64.tgz.pex
Usage: one-0.2.0-py2-none-any-pyrun-2.1.0-py2.7_ucs4-linux-x86_64.tgz.pex [OPTIONS]
                                                                          C
                                                                          O
                                                                          M
                                                                          M
                                                                          A
                                                                          N
                                                                          D
                                                                          [
                                                                          A
                                                                          R
                                                                          G
                                                                          S
                                                                          ]
                                                                          .
                                                                          .
                                                                          .
…

A better output would switch to a fixed indent (8 spaces?) when the command name gets "too long".

Could you check if this was fixed with https://github.com/mitsuhiko/click/pull/359?

:+1:


Backend Homework 3

Backend Homework 3
Description:
Inheritance
Polymorphism
overriding
Interface and abstract class
Exceptions
Drift Link : https://video.drift.com/v/abffhNkPQfSpH21bsfPxGC3avsGATOoD4hsgPjuP3JE/
Snapshot:
question 4:

Metric
Value

alert_status
:white_check_mark: OK

bugs
9

code_smells
40

reliability_rating
C (at least 1 Major Bug)Note: A being best, E being worst

security_rating
A (0 Vulnerabilities)Note: A being best, E being worst

vulnerabilities
0


feat(windows): add fabric support

Summary
This PR adds Fabric support and a FabricExample app for Windows.
Windows support for Fabric is experimental and as such APIs are subject to change/break.
Test Plan
https://github.com/software-mansion/react-native-svg/assets/1422161/2a7db119-44a8-4ee1-a837-41ca8320d8fa
Compatibility

OS
Implemented

iOS
❌

Android
❌

Windows
✅

Checklist

[x] I have tested this on a device and a simulator
[ ] I added documentation in README.md
[ ] I updated the typed files (typescript)
[ ] I added a test for the API in the __tests__ folder

Thank you @marlenecota for this contribution! 🎉


Fix/secrets in clusterrole

Please answer these questions before submitting a pull request

Why submit this pull request?

[x] Bugfix

[ ] New feature provided

[ ] Improve performance

[ ] Backport patches

Related issues

ApisixSSL resources operation will fail.

Bugfix

Description

How to fix?

New feature or improvement

Describe the details and related test reports.

Backport patches

Why need to backport?

Source branch

Related commits and pull requests

Target branch

@gxthrj @membphis Please take a look, this is an easy but important fixing.


subscription ackDeadline is not considered with pubsub.subscription()

Environment details

OS: Ubuntu 21.04
Node.js version: v14.15.4
npm version: v6.14.10
@google-cloud/pubsub version: v2.8.0

Steps to reproduce
Here a basic example
const {PubSub} = require("@google-cloud/pubsub");

const pubsub = new PubSub({
  projectId: "mazen-158916",
  keyFile: "key.json",
});

const topicName = "alexandre-testing";

async function getTopic() {
  const [topic] = await pubsub.topic(topicName).get({autoCreate: true});
  return topic;
}

async function main() {
  const topic = await getTopic();

  const [subscription1] = await pubsub
    .subscription(`alexandre-testing-subscription-${new Date().getTime()}`, {
      topic,
      // not works
      ackDeadline: 60,
    })
    .get({autoCreate: true});
}

main().catch(console.error);

Here the result

Please note that it works with pubsub.createSubscription
const [subscription1] = await pubsub.createSubscription(
  topic.name,
  `alexandre-testing-subscription-${new Date().getTime()}`,
  { ackDeadlineSeconds: 60, }
);

Also please note that setOptions not works
let subscription1 = topic.subscription( `alexandre-testing-subscription-${new Date().getTime()}`);
subscription1.setOptions({ackDeadline: 600});
[subscription1] = await subscription1.get({autoCreate: true});

@madeindjs Thanks for the report! I was just looking at a related thing the other day, a test that was broken because it assumed that the metadata options could be passed in as part of the topic.subscription call. I've seen some other issues about the setOptions vs setMetadata thing too. This is honestly confusing as heck. The simplest workaround is to do something like this:
  const [subscription1] = await pubsub
    .subscription(`alexandre-testing-subscription-${new Date().getTime()}`, {
      topic
    })
    .get({autoCreate: true});
  await subscription1.setMetadata({
      ackDeadline: 60
  });

Let me know if that works for you, and I'll shift this over to a doc bug. Something really needs to be improved there.

@feywind I tried setMetadata solution but this does not works. Also this produce a typing error:

Argument of type '{ ackDeadline: number; }' is not assignable to parameter of type 'SubscriptionMetadata'. Object literal may only specify known properties, and 'ackDeadline' does not exist in type 'SubscriptionMetadata'.ts(2345)

Currently, I found a workaround of this problem. I use pubsub.createSubscription (this one can set ackDeadline) and if ressource exists I fallback to topic.subscription. Here an example
const { PubSub, Topic, Subscription, CreateSubscriptionOptions, SubscriptionOptions,} = require("@google-cloud/pubsub");

const pubsub = new PubSub({ projectId: "mazen-158916", keyFile: "key.json",});

async function getTopic(topicName = "alexandre-testing") {
  const [topic] = await pubsub.topic(topicName).get({autoCreate: true});
  return topic;
}

/**
 * @param {SubscriptionOptions} options
 * @returns {CreateSubscriptionOptions}
 */
function buildCreateSubscriptionOptions(options) {
  return {
    ackDeadlineSeconds: options?.ackDeadline,
    flowControl: options?.flowControl,
  };
}

/**
 * @param {Topic} topic
 * @param {SubscriptionOptions} options
 * @returns {Promise<Subscription>}
 */
async function getOrCreateSubscription(topic, options) {
  const RESSOURCE_ALREADY_EXISTS_ERROR_CODE = 6;
  const subscriptionName = `alexandre-testing-subscription-${new Date().getTime()}`;

  try {
    const subscriptionOptions = buildCreateSubscriptionOptions(options);
    const [subscription] = await pubsub.createSubscription(topic, subscriptionName, subscriptionOptions);

    return subscription;
  } catch (error) {
    if (error.code === RESSOURCE_ALREADY_EXISTS_ERROR_CODE) {
      const [subscription] = await topic
        .subscription(subscriptionName, options)
        .get({autoCreate: true});

      return subscription;
    } else {
      throw error;
    }
  }
}

async function main() {
  const topic = await getTopic();
  const subscription1 = await getOrCreateSubscription(topic, { ackDeadline: 600, });

  subscription1.on("error", console.error);
  subscription1.on("message", (message) => {
    console.log(`get message #${message.id} -- receive %o`,  JSON.parse(message.data.toString()) );
    message.ack();
  });
}

main().catch(console.error);

I was mistaken in my last comment. I was thinking of a different change I did... I'm intending to make get() on both Topic and Subscription able to pass creation parameters for autoCreate.

@feywind This issue is now OoSLO.

I think, after reviewing this again, the functionality itself isn't really missing, it's that the names of the fields are really confusing (ackDeadline in the library vs ackDeadlineSeconds in gapic). I'm going to add this as an item for our API update doc and close out the GH issue for now.


fix: Not all runfiles are single files

Handle cases where the defaultInfo file is a directory

@aiuto @cgrindel I added a test case.


1.2 compatibility

Looks like Kerbalism does not work at all with new 1.2

This is not an issue per se. Be patient and don't abuse this github.


D3 inbuilt filter feature

Hi Team,
We are implementing D3 charts in our applications. So we had some queries all about that, are there any inbuilt features such as filters, sorting and line click (if the chart is line) ? Or shall we write custom code on each attribute based on our requirement? If there are any inbuilt features, can you provide sample examples for them so that we will look into them .
Thanks,
Harikrishna

D3 is not a charting library, but you can implement all of these features in your visualizations as desired, and you can find examples of these features in the gallery.

@HarikrishnaVemula I think I understand what you are after.
May I suggest the following resources:

JavaScript's inbuilt functions array.filter and array.map
Cool library by @jheer called Datalib that has nice aggregation capabilities.
D3 Nest Tutorial and examples is useful to get a feel for what d3.nest can do.
Crossfilter Implements filtering as well as aggregation (which you could implement on your own with array.filter and Datalib's aggregation).

Best of luck!


Verify memory and compute

In the given scenario, the web-production machine uses 36% for compute and 62% for memory. Is this correct?

correct


Add link to SQL Server backplane for SignalR

Adding a link to the SqlServer backplane that I've created. https://github.com/IntelliTect/IntelliTect.AspNetCore.SignalR.SqlServer

Is there an issue with this that needs to be resolved? Other similar PRs for adding links to third-party providers were merged fairly quickly, like #16957 and #21405.

@ascott18  thanks for the PR.
Be sure to check out your name as a contributor about the 6th of next month on the What's new page
@Keboo  thanks for the review.


Manage Canonical FIPS stemcell enagement

As a cloud.gov assurance team members, I need Canonical to successfully engage with us to provide essential FIPS-validated products.
Acceptance Criteria:

[ ] Canonical is on-track to provide us with testable stemcells by the end of September, 2023.

We expect (as of 2023-07-17) that Canonical will be ready to engage with use in September 2023 to provide a service that generates stemcells bases on CFF upstream, but including their proprietary fips-update code and entitlements, and then have those available for us in a private object store (S3).

Updates:

our team should have access to a new beta stemcell has been added to the shared bucket with the serial 20240110. (from Ryan Hill, 2024-01-12)
I've requested we get email when new images are available to<EMAIL_ADDRESS>the bucket for stemcells is: arn:aws-us-gov:s3:::cloud-gov-stemcell-share-gov

To do

[ ] Request IAM role access


[Feature] Make Provider (RpcClient) Clone

Component
providers
Describe the feature you would like
currently the Provider and RpcClient are not Clone which is a limitation when we want to use a provider in a type that ideally is Cloneable, otherwise we'd need to go back to Arc<Provider>
all of this can be made Clone, we already assume that Transport is Clone for the Provider to work:
https://github.com/alloy-rs/alloy/blob/4ed367e1dbc4bed77794622fceb9a38131fcc9a6/crates/rpc-client/src/client.rs#L21-L28
Additional context
No response

if making it clone we need to share the id between clones, otherwise pubsub providers may confuse responses

RpcClient is Clone as now it is Arc<RpcClientInner>, and RootProvider is too.
RpcClientInner isn't, but I think this is enough to close this issue.


V3/attrs expansion

Feature or improvement description
This pull request further expands the usage of attrs and numpy workflows. A docstrings linter has also been added with some changes in annotations types.
This is marked as a draft because there are a couple of spots where I have questions regarding a change in typing methods and numpy methods that I'd like your feedback on @rafmudaf. If we go with the NumExpr speedup methods, then the numpy typing won't be available to us because numba is a dependency and has the version of numpy prior to the testing subpackage as a requirement.

@rafmudaf, this should be ready to be merged and incorporated in your branch now. I didn't touch every possible instance, but instead focused on the primary src/ level modules (except utilities) so nothing gets changed too much all at once.

@RHammond2 do you know what's going on with the failing tests here? I haven't looked into it, but I can take that on if you haven't.

@rafmudaf I took care of it, it was a pretty simple fix.

@rafmudaf everything should be all set now!


#3081 adv editor for comments

PR Checklist

Please check all that apply to this PR using "x":

[x] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
[x] I have checked that this PR does not introduce a breaking change
[ ] This PR introduces breaking changes and I have provided a detailed explanation below

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting)
[ ] Refactoring (no functional changes)
[ ] Documentation changes
[ ] Other - Please describe:

Fixes
Issue Number: Fixes #3081
What is the current behavior?
The simple editor is being used for comments, both in Claims and Channels.
What is the new behavior?
There will be a button to toggle between simple and markdown editor.  I placed the button at the upper-right instead of at the bottom so that it doesn't make the "Done|Reply|etc" button area too busy.

Thanks for this! I'll give it a review/test sometime tonight or tomorrow morning.


Optional: Notes About Conversations in UI

Currently: the only contact information available in the Inbox is the the name of the contact and any tags related to the conversation.

Ideally: we should offer Airy system users to write and view notes below the Tags section within the contact information.
Requirements:

If the conversation is displayed and I click on the notes field, I will be able to manually type in and edit notes
If I am editing the notes field and I hit enter, I will be able to save the written note
If I have a long note above 500 characters and I want to see the note, I will only be able to see part of the note (maximum 3 lines of text/special characters/numbers visible at a time)
If I have multiple notes and I want to see an older specific note, I can scroll down to access older notes

Notes:

Allowed input: text, special characters, numbers
No character limit

@lizhutter It's not quite clear to me how this is supposed to look like. Could you perhaps add some mockups for the placement of the "notes field" and how this should work with multiple notes?

@chrismatix this is similar to what I think it would look like:

The notes can be moved up further in the column, but it could have a vertical scrollbar so you can look back at previous notes.
Users should also be able to delete these notes if they're no longer relevant.

Thanks. This makes it clearer. I guess there would be an "add note" button at the bottom and perhaps a trash icon per note to allow for deletion.

Also no character limit is not very practical. I would suggest that we settle on something that is large, but technically feasible. Say 50k characters?

50k characters would be sufficient, thanks for the comment! @chrismatix


lualine gets invisible in the outline window

Description

I can confirm that recent commits of outline.nvim has this problem. When I use :Outline<cr> to open the focused outline, the lualine bar gone. Using native vsplit doesn't have such a problem.
Here is the video with this bug:
2024-09-10 00-08-47.webm
Neovim setup

Neovim version:   v0.10.1
Outline.nvim version:   41e7b88
Neovim distro (if applicable):   my nvim config
Plugin manager:   lazy.nvim

Config:
return {
	"hedyhli/outline.nvim",
	lazy = true,
	cmd = { "Outline", "OutlineOpen" },
	keys = { -- Example mapping to toggle outline
		{ "<leader>lo", "<cmd>Outline<CR>", desc = "Toggle outline" },
	},
	opts = {},
}

I am sorry. It turns out that I copied a weird config about lualine.nvim.
Which has this line in its opts:
disabled_filetypes = { "dashboard", "NvimTree", "Outline" },

After changing it into this, lualine appears correctly:
disabled_filetypes = { "dashboard", "NvimTree" },


Bounding Box not recalculated for animated 3D Models

I have a 3DObject like this

and I call findCollisionsWithRayAsync like this

I get false when I am pointing the chicken head and truewhen I point the belly or even a bit under the model.
I think that model and collider are not at the same point, have we a way to see collider visually?
PD: I have a cross in the centre of the screen (I understand that the ray is cast from the middle of the screen)

Hey @IvanCoronado, you can try toggling the collider visually with the drawBounds={true} property in the physicsWorld attribute under the viroscene control:
https://docs.viromedia.com/docs/viroscene#props
What you've described above does sound like a bug though, could you take a screenshot (With the colliders on) and paste it here? Thanks!

Even without animation, the collider is not covering the model. I will try with another model and with dynamic viro physics body.

I am getting the assets from here https://docs.viromedia.com/docs/assets
I think that problem is related to the assets maybe they are floating or this just happens when the model doesn't fit in a cube.

Hey Ivan, I'm trying to get an idea of the context / background of what you are trying to do above.
Could you briefly explain what it is that you are trying to achieve?
I've taken a quick look at the code sample above, it seems like you might be changing state if the user 'gazes' at the 3D model? If so you can actually use our onHover APIs and should be supported in AR.

Hey @IvanCoronado, unfortunately you may still hit into the incorrectly calculated bounding box issue above. We are aware of this issue and have filed a bug in our backlog. I'll rename the issue to better reflect the bug so that we can track it and will update this issue once it has been pushed to release.
As a mitigation, you may be able to set a transparent box around your model such that correctly represents the onHover area coverage of your model. You can then set an onHover event on that box (try making the box semi - opaque first, so you can visually see where the box encompasses your 3D model to determine a "gaze zone"). You can then set your box to transparent with the following material below (note, do not use the opacity values to make your box transparent).
ViroMaterials.createMaterials({
  "clear" : {
    diffuseColor : "#00000000"
  }
});

To keep the transparent box and model scale in sync, you can then group the model and box under a parent node. You can then scale, move, rotate the parent node, of which should then scale the transparent box + model equally.
Apologies for the workaround, we'll update this issue once a fix has been released.

I was wondering if there was any update regarding this bug?  I have an animated fbx file (converted to vrx) but the bounding box is not recalculating based on the skeleton animation. The bounding box seems to only stay where the initial animation begun at.
Thanks.


Cannot checkout repository on windows

While attempting to clone for my two pull requests, I discovered that the colon characters (:) in several of the dashboard definitions file names are not allowed on windows. The result of this is that the clone succeeds, but the checkout fails - with git restore --staged . one can "un-delete" the other files, but the only way I found to not include the fake deletion of these dashboard definitions in a commit was to work inside WSL (there at least git restore --staged config worked to exclude the deletions from the commit, which I could then finish back under windows).
The clone-error for reference:
error: invalid path 'config/grafana/dashboards/Factorio/1.1 - Default: Electricity.json'
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

After that both git restore --source=HEAD :/ and git restore --staged . printed
error: invalid path 'config/grafana/dashboards/Factorio/1.1 - Default: Electricity.json'
for each file with a colon in its name.
I just wanted to make you aware of this, either to rename the files or as documentation of the workaround for other contributors.

do you have time to rename everything in a PR ?

yes, see the linked PR.


fix(dataseriesformsettings): Set empty strings for missing values

Closes #3680
Summary

Set empty string in case of null or undefined values

Change List (commits, features, bugs, etc)

DataSeriesFormSettings: use nullish coalescing operator to set empty strings

Acceptance Test (how to verify the PR)

Render component with all attributes from content filled
Re-render component with some of them missing

Regression Test (how to make sure this PR doesn't break old functionality)

tests here

Things to look for during review

[ ] Make sure all references to iot or bx class prefix is using the prefix variable
[ ] (React) All major areas have a data-testid attribute. New test ids should have test written to ensure they are not changed or removed.
[ ] UI should be checked in RTL mode to ensure the proper handling of layout and text.
[ ] All strings should be translatable.
[ ] The code should pass a11y scans (The storybook a11y knob should show no violations). New components should have a11y test written.
[ ] Unit test should be written and should have a coverage of 90% or higher in all areas.
[ ] All components should be passing visual regression test. For new styles or components either a visual regression test should be written for all permutations or the base image updated.
[ ] Changes or new components should either write new or update existing documentation.
[ ] PR should link and close out an existing issue

@herleraja @EdmondCShaffer could you take a look?

@davidicus FYI

Doing the steps outlined in this issue on this story, it seems like the fields get updated.

Hi @davidicus @herleraja
I was able to reproduce the issue in this story following these steps:

Select timeseries card
Switch to Settings tab
Note that Unit, Decimal Precision and Maximum Data Points are empty
Add new card
Select Time Series Line
Give it a title Test
Switch to Settings tab
Fill Unit, Decimal Precision and Maximum Data Points with value
Select timeseries card again
Note that Unit, Decimal Precision and Maximum data points value are not reset

I have commented in the original defect:

I see 3 possible approaches:

Provide empty strings for Data Series Form Settings attributes - Monitor UI
Check null and undefined values and replace with empty strings - PAL lib (solution tested)
Apply check for null/undefined check in TextInput - Carbon lib

Should we opt for the 1st option?

@vaffonso can we not provide a null value for these fields?

I pushed a couple changes to this PR. Instead of empty strings, number inputs from DataSeriesFormSettings receive key prop to force a render.
In addition, field decimal precision was changed to number.


Docker-based dev setup

This PR solves #18: It contains the necessary changes to get a docker-based dev setup running.
Starting the docker environment:
cd mrmap/docker
docker-compose -f docker-compose-dev.yml up --build

The command above will start containers for the following services:

PostgresSQL 11 (with PostGIS)
Redis 6.2
MapServer 7.6
Nginx 1.19 (proxying access to the host's Django development server)

Starting the django development server for the docker environment:
DJANGO_SETTINGS_MODULE=MrMap.settings_docker python mrmap/manage.py runserver <IP_ADDRESS>:8000

The command above will start a Django development server with configuration for the docker environment.

the following commands should be run the first time, after docker-compose up:
python manage.py migrate
python manage.py setup

Through the nginx server the application is reachable under port 80 and 443 on localhost.

also docker v20 or greater and docker-compose v1.28 or greater is needed

@MrSnyder @simonseyock
pls grant rights for maintainers on this pr. Otherwise can't edit your branch.

Thanks for the link, I wasn't aware of this GitHub feature.
However, I didn't uncheck "Allow edits from maintainers." when creating the PR... and cannot find the option when editing the PR. Still, I assume pushing to the feature branch doesn't work for you at the moment?

We just found that one needs to specifiy the DJANGO_SETTINGS_MODULE in order to start Celery worker/beat for the docker-based setup as well:
DJANGO_SETTINGS_MODULE=MrMap.settings_docker celery -A MrMap worker -l INFO
DJANGO_SETTINGS_MODULE=MrMap.settings_docker celery -A MrMap beat -l INFO

BTW, we introduced the usage of DJANGO_SETTINGS_MODULE to allow different environments without changing files manually. Does this work for you and should we have a short discussion about this approach?

Yeah this works for me and i have already written docs for this. But at the moment i can't push it to your branch from fork or edit it in this PR.

maybe come up for a short session on https://meet.jit.si/gdirp


Constructing the pre

The current implementation to build the pre element will do some funny things, like add ="" after newlines, parenthesis, and brackets, etc. This brings in jsdom, not a lite library but it helped me build valid elements and get around some of the issues. Open to any comments.
Here's the bit of code that first exposed the issue(s).
var year = 1975;
var fashion;

if (year >= 1960 && year <= 1969) {
  fashion = 'Bell Bottoms';
} else if (year >= 1970 && year <= 1979) {
  fashion = 'Afros and Lip Gloss';
} else if (year >= 1980 && year <= 1989) {
  fashion = 'Shoulder Pads and Bangle Bracelets';
} else if (year >= 1990 && year <= 1999) {
  fashion = 'Wallet Chains';
} else {
  fashion = 'T-shirts and skinny jeans';
}

console.log(fashion);

would insert
var year = 1975;
var fashion;

if (year >= 1960 && year <= 1969)="" {="" fashion="Bell Bottoms" ;="" }="" else="" if="" (year="">= 1970 && year <= 1979)="" {="" fashion="Afros and Lip Gloss" ;="" }="" else="" if="" (year="">= 1980 && year <= 1989)="" {="" fashion="Shoulder Pads and Bangle Bracelets" ;="" }="" else="" if="" (year="">= 1990 && year <= 1999)="" {="" fashion="Wallet Chains" ;="" }="" else="" console.log(fashion);="" <="" pre="">

into the plugin.

Also noticed strange behavior between environments. jsdom took care of everything on my mac, but when deployed in a linux enviroment, I was getting encoded HTML entities in block.body, along with \s everywhere. I had to use he to decode the entities and then .replace the \s

I'm current offering this implementation under gitbook-plugin-tonic-aca until we can get this resolved

ping @SamyPesse


Columns are not aligned in the virtualized rows example

Using v7?
YES
In the virtualized row example, the rows and header columns are not aligned. I am not sure if this is a recent regression, or if that was always the behavior in the example.
Steps to reproduce the behavior:
Example: https://github.com/tannerlinsley/react-table/tree/master/examples/virtualized-rows
Code Sandbox: https://codesandbox.io/s/github/tannerlinsley/react-table/tree/master/examples/virtualized-rows
Screenshot:

Hi,
It is due to the scrollbar width. You can add a margin to your last cell of the header with:
.th {
&:last-of-type {
margin-right: 17px;
.resizer {
${'' /* note that the 15 is the scroll width and if also referenced in the getHeaderGroupProps for the header row below /}
${'' / todo: resolve this value dynamicaly from element.scrollWidth to account for OS/Browser differences  */}
right: -10px;
}
}
}

@ZimboQC this is not good potential fix for the table to use, and Mac and Windows width of the scroll bar is different in almost 20px which doesnt fix for both at all. Also you cannot make it work properly because sometimes Mac's scrollbar might not be displayed due to user preferred settings.
@Chetane I am currently wrestling with same behavior for my table and I am trying to use different windows virtualization and stick the header in to it. My potential solution is to move header to the virtualize row.

@Chetane current option I found after looking more into react-window where you can make a sticky option off the row you wanted is here.

You can also manually force a scroll-bar to appear on your headers by making them overflow: scroll. Other than that, there is not a good story to solve this as it's simply a limitation of how browsers and OSs implement their scrollbars and the styles around them.

I know this has been closed now.
I was also having this problem. I tried the above two ways suggested. Both have their limitations.
another way to fix this is to use custom scrollbars (which have a very less width) for react-window.
react-window issue link: https://github.com/bvaughn/react-window/issues/110
sandbox for custom scrollbar: https://codesandbox.io/s/vmr1l0p463?file=/index.js


Remove ramda as a dependency and fix breaking toolbar when custom actions are passed

This PR fixes issue #24. The problem was caused by ramda not being declared as a dependency and by v0.27.0 of the same package which was not exporting a .includes property due to their own issues.
We decided to rid ourselves of the few ramda instances we were using by utilizing JavaScript built-in methods instead.
A new test for checking the toolbar working when is passed custom toolbar actions via toolbarActions prop now exits.
@abhaynikam something I wasn't too sure about was, in one instance passing the "action name" i.e (toolbarActionKey) and in another passing index as the key for ToolbarButton. Lmk what you think.

@alejo4373 PR looks awesome to me ❤ . Merging this PR to run some test before release. Please feel free to open a PR to add a changelog if you find time else I can take care of it before release 😊

something I wasn't too sure about was, in one instance passing the "action name" i.e (toolbarActionKey) and in another passing index as the key for ToolbarButton. Lmk what you think.

I won't worry too much about it. We won't mount both components at a time as they are rendered conditionally based on props passed to the component.

This is what I have in mind for the CHANGELOG. Change the messaging from the previous release and say ReactTrixRTEToolbar was fixed in the 1.0.12.

Change log
master (unreleased)
1.0.12 (some-time-soon)
Fixes the ReactTrixRTEToolbar breaking when passed toolbarActions due to issues in ramda by removing all instances of the rambda lib
1.0.11 (11-March-2021)
Remove duplicate peer dependencies in package.json - (@Axxxx0n)

What date do you foresee releasing a new version? I assume it would be you the one creating a new tag and release.
Any other thoughts?

You can add it under master(unreleased) for now. I usually add the version and date before release in the logs. Waiting for merging PR #27 but will soon release the new version in day or two. 😊


[v1] Update tdex-protobuf to v2

We should let the trader pick which asset he wants to be charged the fee in a chosen market. (now we always charge in the asset "on the way in")
One caveat is that there should be a "fee policy" in place that allow operators to disable the fee to be charged in a specific asset, especially important in the case of securities where you MUST charge always in the quote asset (or in general in the non-security asset).
Breaking change
This should bump the protocol to the V2, since the behavior of clients will then need to change along with the Swap protocol messages, where amount_p and amount_r will need to be the actual amount WITHOUT fee added/subtracted (depending on the tradeType) and the fee_asset and fee_amount should be explicit in the SwapRequest

We published tdex-protobuf@v2, let's update business logic accordingly:
When making a preview, the daemon must return the fee amount for the asset specified by the user (he basically selects on the way in/out) and the corresponding price without charged fees. It's up to the user to correctly add or subtract the fee amount to craft the swap transaction properly.
When serving a trade proposal, the daemon must make sure the amounts in the transaction match those defined in the swap request message by repeating the same operation of applying the fees to the propose swap amount.

Closed by #697.


Reducing redundancy in data structures

Signed-off-by: Tushar3099<EMAIL_ADDRESS>Fixes Issue: #299
Type Of Change

[x] Clean Up

Changes

Refactored the redundant fields that were used in different data structures.
Deleted fields from higher-level data structures that can be accessed from lower-level data structures.

@Harkishen-Singh  Please review my PR. I am not sure why there is a CI issue. On local everything worked fine.

Not sure if we could rename Ping -> PingDataValue or something which signifies that the struct contains the data points collected by the Ping module.

@aquibbaig, of course, changing the name from Ping to something more meaningful like PingDataValue will be more reasonable. If you say I can make the changes.

@aquibbaig I think Ping is enough. Otherwise, if we want the struct to speak themselves as they are representatives of values, then all other struct's will have to be changed to xDataValues where x can be FloodPing, Jitter, etc.
@Tushar3099 this PR looks good. I will take a closer look shortly. Thank you.


Open H5 file in readonly mode

Use the mode='r' parameter of h5py.File(self.file_path, libver='latest') in miapy/data/extraction/reader.py to open the h5 in readonly mode.
Reason: Sometimes during a debugging session the file seems to be kept blocked and ill have to reset its flags manually (h5clear -s ).
As we are not writing to the file, readonly would make sense anyway...

@alainjungo Do you see any problems with this?

@fabianbalsiger Not really. Since it is called reader we should only use it for reading purposes.
@soomy  I think you already fixed this in your clone. Can you directly provide a pull request?

Done!


Contibuting guidelines by pragati

Copyedited the content for relevance and accuracy. Revised content for contributing to Git and browser sections. Added new sections for contributing using Gitpod and GitHub desktop.

@pragatijain Thanks for the update and also for adding information on Gitpod 🎉🎉. This looks great. I will move it to this repo https://github.com/mautic/user-documentation

Sounds good! Please share the published link when available.


ALPN not available

mitmproxy is crashing with the below error, not sure how to resolve since OpenSSL has ALPN support and I have recompiled cryptographgy, pyOpenSSL and mitmproxy from source.
mitmproxy --version
Mitmproxy: 4.0.3
Python:    3.6.3
OpenSSL:   OpenSSL 1.0.2l  25 May 2017
Platform:  Linux-4.9.35-v7+-armv7l-with-debian-8.0
mitmproxy has crashed!
Please lodge a bug report at: https://github.com/mitmproxy/mitmproxy
<IP_ADDRESS>:56144: Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/proxy/server.py", line 121, in handle
root_layer()
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/proxy/modes/transparent_proxy.py", line 19, in call
layer()
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/proxy/protocol/tls.py", line 279, in call
self._establish_tls_with_client_and_server()
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/proxy/protocol/tls.py", line 355, in _establish_tls_with_client_and_server
self._establish_tls_with_server()
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/proxy/protocol/tls.py", line 444, in _establish_tls_with_server
**args
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/connections.py", line 292, in establish_tls
self.convert_to_tls(cert=client_cert, sni=sni, **kwargs)
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/net/tcp.py", line 386, in convert_to_tls
**sslctx_kwargs
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/net/tls.py", line 285, in create_client_context
**sslctx_kwargs,
File "/usr/local/lib/python3.6/site-packages/mitmproxy-4.0.3-py3.6.egg/mitmproxy/net/tls.py", line 194, in _create_ssl_context
context.set_alpn_protos(alpn_protos)
File "/usr/local/lib/python3.6/site-packages/pyOpenSSL-18.0.0-py3.6.egg/OpenSSL/SSL.py", line 650, in explode
raise NotImplementedError(error)
NotImplementedError: ALPN not available

I'm afraid that's not a mitmproxy bug. What's the output of the following?
from OpenSSL import SSL
print(SSL._lib.Cryptography_HAS_ALPN)

@mhils The fact it crashes ungracefully is the bug I was reporting. I've no idea why, but:

Python 3.6.3 (default, Oct 27 2017, 12:40:04)
[GCC 4.9.2] on linux
Type "help", "copyright", "credits" or "license" for more information.

from OpenSSL import SSL
print(SSL._lib.Cryptography_HAS_ALPN)
0

Thanks for clarifying. You are very right, we shouldn't crash like this. :)
I unfortunately cannot help you with your actual problem, which is why your pyOpenSSL doesn't ship with ALPN. Can't you just install the manylinux wheel?

We had many of these checks in the past, but since we moved and depend on newer versions of cryptography/pyopenssl we removed them because by following the dependency graph we SHOULD always have ALPN.
Our dependencies should provide ALPN. If HAS_ALPN is 0, then cryptography or pyopenssl are messed up (either local installation or the package itself).
We have to draw the line somewhere - we rely on the "public API" our dependencies provide. We can't double or triple check everything.


Language selector cancel function [ENHANCEMENT]

Is your feature request related to a problem? Please describe.
Clicking on language selector cannot be cancelled by user, user must set a language in order to exit the dialog.
Describe the solution you'd like
Either a cancel on lost focus or a cancel button would suffice.

closes #99

closes #99


Parameters with contents

A parameter today has either a content or a regular type.
@darrelmiller suggested we should not allow for more than one media type for parameters.
@earth2marsh asks if there are examples of this
@fehguy and @darrelmiller - Please discuss

I talked with @webron about this, I'll retract my concern about limiting the acceptable types to just one.  And since @webron and @darrelmiller have some crazy cosmic communication mechanism, I am pretty sure they're on the same page.

@OAI/tdc Add text to limit media type map in parameters to just one entry

Fixed and merged.


Bug: Playground crashes viewing config with parserOptions not containing ecmaFeatures

URL(s)
https://eslint.org/play/#eyJvcHRpb25zIjp7InBhcnNlck9wdGlvbnMiOnsic291cmNlVHlwZSI6InNjcmlwdCJ9fSwidGV4dCI6Ii8qZXNsaW50IG5vLWltcGxpY2l0LWdsb2JhbHM6IFwiZXJyb3JcIiovXG5cbnZhciBmb28gPSAxO1xuXG5mdW5jdGlvbiBiYXIoKSB7fVxuIn0=
What did you do?

Encoded an eslint.org/play URL that contains { "parserOptions": { "sourceType": "script" } } under options
Visited that URL -> the page does successfully render
Clicked Versioning and Config in the right sidebar

What did you expect to happen?
If the user has encoded a parserOptions object that doesn't contain ecmaFeautures, the sidebar should still render properly when the config section is clicked.
What actually happened?
On section click, the page goes blank (except for the header) as a result of this crash:
playground.js:2 Uncaught TypeError: Cannot read properties of undefined (reading 'jsx')
    at playground.js:2:2175396
    at Array.filter (<anonymous>)
    at jv (playground.js:2:2175341)
    at wo (playground.js:2:131194)
    at ka (playground.js:2:142809)
    at Cl (playground.js:2:189016)
    at bu (playground.js:2:177131)
    at Eu (playground.js:2:177059)
    at yu (playground.js:2:176922)
    at ou (playground.js:2:173729)

Participation

[X] I am willing to submit a pull request for this issue.

Additional comments
Context: https://github.com/eslint/eslint/pull/17306

Good catch 👍

I don't think this classifies as a bug. The playground was designed to only accept configurations that it generated itself because that was the only use case. Anyway, we can support passing partial configs if that's useful for https://github.com/eslint/eslint/pull/17306.

URL(s)
https://eslint.org/play/#eyJvcHRpb25zIjp7InBhcnNlck9wdGlvbnMiOnsic291cmNlVHlwZSI6InNjcmlwdCJ9fSwidGV4dCI6Ii8qZXNsaW50IG5vLWltcGxpY2l0LWdsb2JhbHM6IFwiZXJyb3JcIiovXG5cbnZhciBmb28gPSAxO1xuXG5mdW5jdGlvbiBiYXIoKSB7fVxuIn0=

Click on Environments is also broken. And the Rules list is empty.


Random refactoring to simplify some code

Hey check out #106
Turns out fatih/color isn't being actively maintained anymore for the past 2 years. The project has been archived. If you don't mind please make a PR of your changes to my fork iambenkay/color

Why did you say it's archived?

If it's archived, maybe I should start a new one myself.

Okay then. Drop the link to the fork. I have a PR too for rich text formatting 😉


Stub file generation

Generate stub files from the data generated from the tracing. Find a library to assist this.

Starting this now. stubfile and inline type hint generation will be researched by me

Not particularly important for our project, but maybe a nice to have feature

An implementation will be made using mypy stubgen. However, as the API does not fit our requirements, the current implementation requires two temp files to generate a stub: One to store the type hinted file, and the other to store the stub.
If anyone wishes to try to implement without using these files - using the type hinted file content directly, here is an attempt:
    def _store_hinted_ast(self, source_file: pathlib.Path, hinting: cst.Module) -> None:
        # Stub means generating a stub without overwriting the original
        with source_file.open('rb') as file:
            contents = file.read()

        filename = source_file.stem
        output_path = source_file.with_suffix('.pyi')
        path_to_stub = str(output_path.relative_to(pathlib.Path.cwd()))
        options = stubgen.parse_options([str(source_file)])
        mypy_opts = stubgen.mypy_options(options)
        module = stubgen.StubSource(filename, str(source_file))

        source = mypy.util.decode_python_encoding(contents, mypy_opts.python_version)

        errors = stubgen.Errors()
        module.ast = mypy.parse.parse(source, fnam=module.path, module=module.module,
                                      errors=errors, options=mypy_opts)
        assert not errors.is_blockers()
        module.ast._fullname = module.module

        with stubgen.generate_guarded(module.module, path_to_stub):
            stubgen.generate_stub_from_ast(module, path_to_stub,
                                           False, mypy_opts.python_version)

Stubbed files do not require a file with type hints. e.g. a stub for a/b/c.py would be stored in a/b/c.pyi.
The annotations live ONLY in the .pyi, and there are none in the .py code.
Variable annotations do not seem to be present in such files, as callables do not have bodies.
See https://github.com/PyGithub/PyGithub/tree/master/github for an example.

The StubFileGenerator does not override the original, only generates the stubs with hints. Example vom test:
def function(c):
    return c.outer(5)

class AnotherC:
    pass

def another_function(c):
    return "4"

With the sample test trace data, it generates:
from tests.resource.typegen.callable import C as C

def function(c: C) -> int: ...

class AnotherC: ...

def another_function(c: AnotherC) -> str: ...

Need to implement #119 first to prevent the original type hints from being removed. Is required for a test.


Fix calls to linear-gradient

There is a typo in calls to the CSS function linear-gradient (currently linear_gradient instead). This PR fixes that. Tested on Windows/Chrome Version 66.0.3359.181 (Official Build) (64-bit). Fixes #24.
Here's a little before (top) after (bottom):

Thanks @lambdacasserole!


Use templates for HTML generation

I think it would be a good idea to parameterize the generation of HTML separating the structure of the views in templates from the logic of the generation which would be done by the library.
A decision should be made about what technology to use for the templates and I added this ADR to record that decision and talk about the alternatives considered.

This has already been done in #81


&& python3 /install/bringup/ODriveAcorn/tools/fibre/python/setup.py install' returned a non-zero code: 2

Docker would only run as root, is that the problem here?
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Removing intermediate container 087b8b36bcc1
---> 00371d17bcd6
Step 13/18 : COPY bringup/ODriveAcorn /install/bringup/ODriveAcorn
---> 76ff29e0a506
Step 14/18 : RUN cd /install/bringup/ODriveAcorn/tools/ && python3 /install/bringup/ODriveAcorn/tools/fibre/python/setup.py install
---> Running in b115c61e0bd4
/bin/sh: 1: cd: can't cd to /install/bringup/ODriveAcorn/tools/
ERROR: Service 'acorn_vehicle' failed to build: The command '/bin/sh -c cd /install/bringup/ODriveAcorn/tools/ && python3 /install/bringup/ODriveAcorn/tools/fibre/python/setup.py install' returned a non-zero code: 2

sam@Thinkpad:~/acorn-precision-farming-rover$ sudo ./run_docker_simulation.sh
Step 14/18 : RUN cd /install/bringup/ODriveAcorn/tools/ && python3 /install/bringup/ODriveAcorn/tools/fibre/python/setup.py install
---> Running in 0e2f9c7322f8
/bin/sh: 1: cd: can't cd to /install/bringup/ODriveAcorn/tools/
ERROR: Service 'acorn_vehicle' failed to build: The command '/bin/sh -c cd /install/bringup/ODriveAcorn/tools/ && python3 /install/bringup/ODriveAcorn/tools/fibre/python/setup.py install' returned a non-zero code: 2

The errors you saw were from building the docker image, and the root cause is can't cd to /install/bringup/ODriveAcorn/tools/. I didn't see anything under the bringup/ODriveAcorn so the error is not surprising. @tlalexander maybe forgot to add the relevant files to the repo?

Oh yeah that is strange, it looks like I forgot to add the files. I was doing a lot of wild hacking over the summer, which never got nailed down completely, and sometimes I don't like to check in messy stuff.
But we just got the new PCBs yesterday and we will no longer be using odrive. There's going to be a lot of changes to the code repo over the next couple of months, and I will make sure to check things in as soon as I can. Once I get basic functionality with the new system I am also going to work on a lot of clean up and documentation for all our resources.
@samuk what is your goal right now? to run simulation? I can make sure to un-break whatever it is you are working on.

I was just wanting to understand the system/ run the sim. Interested in whether I could integrate some visual navigation: https://github.com/Agroecology-Lab/visual-multi-crop-row-navigation/tree/ROS2

Checking up on old issues here. Odrive is deprecated in our repo and references to it will soon be removed, so I will close this.
Regarding ROS integration, we have once again discussed how our system architecture and ROS should be integrated and I foresee more work on that over the next year, so as we move towards release it will be clearer how to integrate ROS components.


Angular 15 new project node_modules bug

Issue
ng serve has a compilation error in the node_modules folder. The file single-spa-angular.d.ts does not exist but singleSpaAngular is available in index.d.ts

Steps to Reproduce
Pushed this issue to a branch called angular15
This project was created using create-single-spa with single-spa-angular@8
Steps to reproduce
git clone https://github.com/jeremyspatrick/single-spa-angular14-routing-bug
cd single-spa-angular14-routing-bug
git checkout angular15
npm i
npm start

Workaround/Hack fix
I'm able to work around the issue by modifying the node_modules package

Expected Behavior
ng serve should compile and start without modifying node_modules

This is an issue of the @nrwl/angular:package builder. I've created an issue in their repository.

Should be resolved this week and I'll be able to publish a minor version once Nx publishes new minor version too.

Published 8.0.1.


Put whitespaces around equal sign on README

Codecov Report

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

@@           Coverage Diff           @@
##           master     #207   +/-   ##
=======================================
  Coverage   94.56%   94.56%
=======================================
  Files           9        9
  Lines         681      681
=======================================
  Hits          644      644
  Misses         37       37

Continue to review full report at Codecov.

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

LGTM. please sign CLA.

LGTM. please sign CLA.

Can you please verify if it has been signed correctly? Thanks!

yes the bot is confirming that. now you just need to rebase your branch with master.

actually it is fine. I can just merge it, the change is trivial. thanks.


Member.GuildID is an empty string

Hello. I created the following structure:
func ExecuteCommand(session *discordgo.Session, event *discordgo.MessageCreate) {
    member, err := session.GuildMember(event.GuildID, event.Author.ID)
    if err != nil {
        panic(err)
    }
    fmt.Println("ID:", member.GuildID)
}

and it prints me ID:  in the console.
I can't explain why this happens and I think this is an actual bug, but I'm not sure. Does somebody else have this problem?

It seems guild_id is not even present in the member object from Discord, so that explains why it remains empty.
The GuildID field should be removed from the Member struct.

After I rewrote my code and used the Session.State.Member() function in every normal case and the Session.GuildMember() function only as fallback, the GuildID field works as expected. So I think this is an issue with the Session.GuildMember() function itself.

It seems the GuildID only gets filled by the state, I think it would be a good idea to add a comment this does not get filled by the endpoint.
But that is something for a PR

Or at least implement a wiki page that explains why this function does not fill the GuildID field and a code example that shows how to fetch the Guild ID in another way.

I added a small FAQ entry about this topic and I hope it won't get deleted :D


update predicate for Rails 5 compatibility

Discovered an if statement that doesn't address Rails 5.

Thanks @briantigerchow. Could we consider to merge it ?

@X0nic can we merge this and release rails 5 compatible version? Thanks!

Closed By https://github.com/GetJobber/recurring_select/pull/122


Support and testing for python <= 3.7

As a result of #25 the minimum python version was set at 3.8 to satisfy the minimum numpy of 1.22, which in turn was required to pass mypy --strict (full type hinting support of internal functions was only added in numpy 1.22).
However, the code runs perfectly fine on python 3.7.
Can we remove mypy as a dependency and install/run it only during the CI process?
And if so can we set things up so that we run CI testing on python <= 3.7, but not mypy?
One Qn - if we do this how do we indicate this in documentation given we will be passing strict mypy, but only on certain versions?

I'd recommend keeping all developer stuff as an optional dependency in the pyproject.toml, and only putting necessary components in dependencies:
[project]

dependencies = [
    "numpy>=1.20.3",
]

[project.optional-dependencies]
test = [
    "pytest>=7.2.0",
]
lint = [
    "black>=22.12.0",
    "pylint",
    "flake8",
    "mypy>=1.0.0",
]

Then in the linter CI jobs you can replace pip install . with pip install .[lint]. I'd probably also keep mypy separate from testing, as a type checker failure doesn't necessarily mean the code doesn't work. I'd see no issue with running testing over a matrix of Python 3.7 -> 3.11, but running linters on just a single Python version (probably the latest one?).
Regarding the question about documenting the fact that strict mypy won't be verified on older versions: I personally wouldn't worry about it as long as your tests are passing. Python 3.7 is going out of support in a few months anyway.

Thanks.
Only comment is that there is now some code (the tests) that will not run with only the core dependencies installed.
Whilst this is nominally fine (don't need to run tests in deployment) it does mean that there is technically unrunnable in a basic install. Is this acceptable practice?


Cannot connect from paho client library

I have an issue with this snippet.:
https://github.com/alexCajas/EmbeddedMqttBroker/blob/1917a4480da34aa8a2454c3d3d09c3243a291d03/src/ConcurrentTasks/NewClientListenerTask.cpp#L27-L31
I'm working on an app for android to connect to a MQTT broker, I'm using "org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5". This library has no issue to connect to other esp32 MQTT broker library excepted this one.
I found out others libraries do not validate client.available(). When I comment out those lines, the connection succeed.
Is a paho's library flaw?

HI! @SteeveGL, this issue is interesting, I don't now what to think, I was looking for any similar issue in [https://github.com/eclipse/paho.mqtt.java] and [https://github.com/espressif/arduino-esp32/], but I didn't find anything.  My main question here is, if the issue happen in other mqtt broker libraries which uses WiFiClient::available() or not. Let me do some research about that and I will comment what I find. Probably I will write a version of this library compatible with eclipse/paho.client.mqtt, (when I have that, let me now if the issue is fixed using your app! thanks! ) and I will open an issue on [https://github.com/espressif/arduino-esp32/].

So, I investigate a little more and I found a fix.
I find out the client.available() return false because for some reasons the Paho's library take time to fill up the buffer. So, we need to wait.
My workaround probably works because the moment between the client got from the tcpServer->available() and the ConnectMqttMessage connectMessage = messagesFactory.getConnectMqttMessage(client) read the buffer, is long enough to get the buffer filled. But client.available() is called too soon.
I added a very simple timeout loop to wait to get the buffer filled up:
...
int count = 1000; // 1 sec
for (size_t i = 0; i < count; i += 10)
{
  if (client.available())
    break;
  vTaskDelay(100);
}
...

The function in my code now looks like that:
void NewClientListenerTask::run(void *data)
{
  tcpServer->begin();
  while (true)
  {
    // Check for a new mqtt client connected
    WiFiClient client = tcpServer->available();
    if (!client)
    {
      vTaskDelay(10); // yield cpu, This line is necessary for meet freeRTOS time constrains
      continue;       // next iteration
    }

    // Waiting client to send mqttpacket
    int count = 1000; // 1 sec
    for (size_t i = 0; i < count; i += 10)
    {
      if (client.available())
        break;
      vTaskDelay(100);
    }

    if (!client.available())
    {
      continue; // next iteration.
    }

    /** reading bytes from client, in this point Broker only recive and
     acept connect mqtt packets **/
    ConnectMqttMessage connectMessage = messagesFactory.getConnectMqttMessage(client);

    if (!connectMessage.malFormedPacket() && !broker->isBrokerFullOfClients())
    {
      sendAckConnection(client);
      broker->addNewMqttClient(client, connectMessage);
    }
  }
}

Yes! That is, I have come to the same conclusion, but depending of the time to wait in the loop, others mqtt libraries fails to XD, testing with org.eclipse.paho.mqttv5.client, it fails some times but  org.eclipse.paho.client.mqttv3:1.2.5 had success always, for now I using vTaskDelay(10) and waiting at most 1500, and it looks good. I will do some test with others mqtt tecnologies and I will update in a few days.


Silence per receiver

Hi there. We have a scenario where we need to silence the alerts going to one receiver but not to others (e.g. alert goes to support staff but not to other users during the period).
I can't see any way to do that with the current silence model. Is there any way to effect this (e.g. upstream via Prometheus)? Any advice appreciated.

There's no such support, and we don't plan on on adding it. Silences are based on labels, so you could either ensure alerts share a label or handle it downstream of the alertmanager.

thanks @brian-brazil

This sounds similar in some ways to https://groups.google.com/forum/#!topic/prometheus-developers/NqjstvKSDfI, which contains some more background on the rationale.


Show execute transaction checkbox for unexecuted transaction

What it solves
Resolves #2955
How this PR fixes it
Show the execute transaction checkbox checkbox when the last transaction has yet to be executed.
How to test it
Queue a transaction on a Safe which has >1 owners and has a threshold of >1. The threshold deciding signer should see the option to execute the transaction.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 31.577%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2978

Relevant Lines:
8409

💛  - Coveralls

@francovenica FYI we decided to remove what caused this bug: hiding the checkbox if there are pending txns (#2940).
With this check, the logic becomes very complex.
I think it's less critical if the user wants to execute but it won't happen because of pending txns.

The revert is fine.
The execute tx checkbox shows fine for 2 or more owners,
It doesn't show for 2 or more owners when there is already a tx in the queue table
It shows again for 1 owner when the tx cannot be executed because a tx is already in queue tab (basically what it was reverted)


Trouble setting up next auth

When I select the NEXTAUTH_ENABLED=true and use a https://generate-secret.vercel.app/32 for the NEXTAUTH_SECRET=dummy I get a blank screen when running the npm run dev.
Would it be okay if you do a tutorial on how to get this up and running?

@QuickResolveAI
Unlike chatbot-ui, smart-chatbot-ui requires MongoDB.
So, unfortunately, it is currently not possible to run it just by deploying to Vercel.
If you want to run smart-chatbot-ui in Vercel, you should be able to use MongoDB Atlas.
https://vercel.com/integrations/mongodbatlas

@GEMTechnologies
Here is the easiest way.
https://github.com/dotneet/smart-chatbot-ui#deploy
To publish a service to internet, you need to sign up for IaaS or VPS like AWS or GCP or Linode and set up the servers and DNS.
Do you need instructions that include even how to set these up?
If so, it is difficult to give you a set-up procedure because the procedure varies depending on which infrastructure service you choose.

@GEMTechnologies Here is the prompt that generate the way to deploy smart-chatbot-ui to Linode. ChatGPT will be your partner.
How can I deploy a service that uses nodejs and MongoDB to Linode and publish it to the internet?
The files needed to start this service can be obtained with the following command.

`git clone git@github.com:dotneet/smart-chatbot-ui.git`

The service can be started with the `docker compose up -d` command, including MongoDB. docker-compose.yml is already provided.


Added support for installing tsserver

Add support for installing tsserver prior to running Endor's github action

Looks good to me but adding @hghmn as well.

@hghmn can you take another look?


[Bug] CMake keywords as substrings in larger text still highlighted

For example, keyword EXPR and TYPE in https://github.com/AdeptLanguage/Adept/blob/master/CMakeLists.txt
p/s: Is it a solvable problem? Github's syntax highlighter suffered the same problem.

With pattern-based highlighters is really tricky to solve it. Depends basically on the case. For this particular case I don't see any quick fix for the moment. It seems that it's tricky to parse CMake since I found highlighting errors using that file on all editors (but not all with this same issue). Some do a nice job, Kate seems to do the best job and it's pattern based, so it's possible (lang definition here).


LSP Semantic Token Provider

Trying to merge the TypeScript TextMate grammar and an updated CoffeeScript grammar seems like it would be an unspeakable nightmare. So it would be nice if the Civet parser / LSP could provide semantic tokens.
Essentially tokens that have {$loc} would be source tokens styled from the nearest ancestor that has some sort of {sematicToken} property. It might require passing a flag into the parser and skipping normal AST processing instead constructing a stream of semantic tokens.
https://code.visualstudio.com/api/references/vscode-api#DocumentSemanticTokensProvider (looks like it is very similar to how source maps work)

As discussed in Discord: We should aim to solve syntax highlighting at the same time. One approach is for each leaf token (with $loc) to have a group that defines what type of token it is (e.g. keyword), where group could be from this TextMate list. Input tokens that don't appear in the output could still received a group via {$loc, group: <something>, token: ''}.  A highlighting pass would take the ASP, visit all tokens with group, highlight those accordingly, maybe merge together adjacent equal groups, and assume everything else isn't highlighted in any way.
Semantic Tokens might need more of a hierarchy (e.g. for foldable sections) so the semanticToken parent structure might be more useful there. Or some combination thereof.


feat: add new types to hasType

[x] add new type assertions for:
Promise, AsyncFunction, GeneratorFunction, Map, WeakMap, Set, WeakSet, Error, DataView, ArrayBuffer, Symbol
[x] add nyc

typo in commit description: "generater -> generator"


admin: add /routes endpoint

WIP - add a /routes endpoint to print out loaded dynamic route tables
TODO:

[ ] add params (route_config_name, cluster) to only print selected route tables.
[ ] save the json rds response in order to print.
[ ] actually print in the http handler.

closing until #1449 lands.


changed signatures of methods and functions

all users must update their code to reflect the changes on the next pip release.
also @SilkePilon please spell things correctly

I don't think it's wise to change the names of in input variables. The mineflayer.createBot uses profileFolder. I think it's better to keep it the same

pep 8 style conventions says to only use snake case for variable names

pep 8 style conventions says to only use snake case for variable names

yeah, the internal vars can stay the same. only the input vars in the createbot need to stay the same as the normal mineflayer. so the docs match

we need a style guide
yeah mineflayer uses pascalcase, which is javascripts style guide. so ig parameters to mineflayer createbot can be pascalcase, but what abt lodestone only ones? like stop bot on death, etc

k making a new pr on the plugin update


Enable zwave test_network command.

Description:
Enable the openzwave test_network command.
Checklist:
If code communicates with devices:

[ ] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[ ] New dependencies have been added to the REQUIREMENTS variable (example).
[ ] New dependencies are only imported inside functions that use them (example).
[ ] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[ ] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[ ] Tests have been added to verify that the new code works.

Allows for testing the zwave network by sending
a no-op command to all the nodes. In theory,
this will also bring back nodes which have been
put in the "presumed dead" state.

Bueno :dolphin:


add document entry

Hi ,
First many thanks for creating this go project, im also getting in to golang and did just wanna take a look on your  nosql server.
Im in the following problem while testing the server (probably my error).
I did not found a way to add an entry to a existing document...

create?col=123
'{"a": 1, "b": 2}'  insert?col=123

now i need to add c3 so my steps are

query?q=123 (so i get the document ID)
get?col=Feeds&id=123123123123123123123
Save response in memory (on local computer)
add additional key/value in memory (on local computer)
'{"a": 1, "b": 2, "c": 3}' update?col=Feeds&id=123123123123123

Because its my first document DB i would like to ask if this way is correct, or is there a shorter way like:
'{"c": 3}' addvalueallifnotexist?col=123
'{"c": 3}' addvaluealloverwriteifexist?col=123
i am asking this because i have only 1 document per collection and the documents are kind big.
currently there is not so much traffic and concurrent sessions... but in the future it could really have a impact :-(
If im doing all wrong, then you can close the case, otherwise its a feature request. (yes im using your DB as a key/value store)
Best regards
And many thanks for developing such a great Server

Appreciate your feedback, and the procedure you described is the best approach as of now.
A more convenient way to update values inside document should be a good enhancement.


[Feature] Today is another Peaceful Day should default to the character's max energy

Currently Today is another Peaceful Day's max boost doesn't change per character, which each character's Max energy is different
Goal: Set the default to the character's base max energy

Released in https://github.com/fribbels/hsr-optimizer/pull/204


Support Kafka as a Sink

Is your feature request related to a problem? Please describe.
Some pipeline authors want to send events from Data Prepper into Kafka. This can allow them to use an existing Kafka stream or send data to other destinations via Kafka.
Describe the solution you'd like
Create a Kafka sink to send events to Kafka. It should batch these events when sending to Kafka.
sink:
- kafka:
    bootstrap_servers:
      - localhost:9092
    topic: my-topic

The configuration should also support many of the producer configs. It should certainly support the configurations which the Kafka client will handle completely and do not require anything from Data Prepper beyond passing the configurations.
The Kafka producer client supports sending to multiple topics. If there is value in making topics dynamic, the configuration could support a parameterized topic. For example, topic: my-topic:${/type}.
For connections, this plugin should use the existing mechanisms in Data Prepper for getting SSL certificates, such as from the file, S3, or ACM.
Additional context
https://kafka.apache.org/33/javadoc/index.html?org/apache/kafka/clients/producer/KafkaProducer.html

We should allow DLQ support also here.

are you going to add it to your road map?

I am starting to work on this one in slow-pace mode . If you know of anyone that started it or wants to participate, please let me know.

The producer should support  Plain, SASL_SSL, oAuth and configurable compression types.

log-pipeline:
  source:
    kafka:
      bootstrap_servers:
        - <IP_ADDRESS>:9093
        - <IP_ADDRESS>:9094
        - <IP_ADDRESS>:9095
      auth_type: plaintext
      topic: my-topic-1
      authentication:
          sasl_plaintext:
             username: admin
             password: admin-secret


Successive calls to repositionToolbars()

Is there are reason that there are two successive calls to repositionToolbars() within autoRepositionToolbars()?

To be sure toolbar is well positioned?
Just joking, I don't know :)
poke @orthes :point_up:

I don't really remember, but I remember that it was a workaround for some problem we had. If you remove one of the calls, I think it will break for some reason. Feel free to fix the underlaying problem if you want.


[Feature Request]: Support Container Instance deployment to private network

Description
Extend current Azure Container Instances module to support deploying container groups in private networks.
ipAddressType parameter has no impact and it has confusing description:

Specifies if the IP is exposed to the public internet or private VNET. - Public or Private.

We miss subnetId that should be used if ipAddressType parameter is set to  'Private'.

@KamilWiecek great discovery! Do you already have a solution implemented? Always looking for PRs.

@rahalan please assign this issue to me, I will improve documentation part in solution I have implemented and create PR.