Model driven forms?

Is it it possible to enhance ng2-mobx to make it work in a model driven template environment?

@gideoncatz I think so, but we have reactive form, which right now I'm using for modify the form values then saving to the api and wait for a success response and then update the state, so we need to think if really worth it to change the normal development of forms of angular, for my production project that has a lot of forms this ways is working very well.

@Jonatthu can you post an example of how you are using mobx with reactive forms.  We are considering using mobx-angular for an upcoming project which has a lot of forms, but I haven't been able to find a good example of how to use a Mobx based model with observable properties with an angular form.

@blackbird529 I recommend you to use reactive forms for handle the state of your form.
https://toddmotto.com/reactive-formgroup-validation-angular-2
and mobx to just update the state if is needed like
@action('[USER] [SUBMIT] Try')
public submitNewUser(user: UsermModel) {
    // Handle ajax call
         // On callback change the state
}

Anyway soon I will open a blog putting a better example and a user case :)

Thanks for the quick reply!  So if I am understanding correctly, you could do something like this:
`
@Injectable()
export class Store {
@observable userModel: UserModel;
@action submitNewUser(user: UserModel) {
// code to handle adding a the new user
}
}
@Component({...})
export class UserComponent implements OnInit {
user: FormGroup
 constructor(private fb: FormBuilder, private store: Store) { }

 ngOnInit() {
     this.user = this.fb.group({
         userName: [store.userModel.userName, ['Validators.required']],
         ....... //other property bindings
     });
 }

 // method bound to form's submit event.
 onSubmit(userModel: UserModel) {
    //code to extract the user data from the form
    this.store.submitNewUser(userModel);
 }

}
`
The code is a bit rough, but would that be the general idea?  I look forward to seeing your blog post on the topic!

@blackbird529 Yes that's working with me we have a big project with a lot of forms too, and is working very well this way :)

Cool!  I'll give that approach a try then. Thanks @Jonatthu.

I'm trying to implement mobX into my login page (model driven form) and have some issues with reaction not being triggered.
My store.ts:
export class UserLoginModel {
    @observable email   : string = '';
    @observable password: string = '';

    constructor() { }
}

@Injectable()
export class UserLoginStore {
    @observable user: UserLoginModel = new UserLoginModel();
    @action loginUser(user: UserLoginModel) {

    }
}

My login.ts page:
@IonicPage()
@Component({
    selector       : 'page-login',
    templateUrl    : 'login.html',
    changeDetection: ChangeDetectionStrategy.OnPush
})
export class LoginPage implements OnInit {
    loginForm: FormGroup;

    constructor(
        private _formBuilder       : FormBuilder,
        public userLoginStore: UserLoginStore,
    ) {
    }

    ngOnInit() {
        this.loginForm = this._formBuilder.group({
            email: [this.userLoginStore.user.email, Validators.compose([
                Validators.required,
                EmailValidator.isValid
            ])],
            password: [this.userLoginStore.user.password, Validators.compose([
                Validators.required,
                Validators.minLength(6)
            ])]
        });
    }
}

My template:
<ion-content *mobxAutorun>
    <form
        [formGroup]="loginForm"
        (submit)="loginUser()"
    >
        <ion-item
            [class.invalid]="!loginForm.controls.email.valid && loginForm.controls.email.touched"
            [class.valid]="loginForm.controls.email.valid && loginForm.controls.email.touched"
        >
            <ion-label floating>Email</ion-label>
            <ion-input
                formControlName="email"
                type="email"
            >
            </ion-input>
        </ion-item>
        <ion-item
            class="error-message"
            *ngIf="!loginForm.controls.email.valid && loginForm.controls.email.touched"
        >

Please enter a valid email address.

        </ion-item>

        <ion-item
            [class.invalid]="!loginForm.controls.password.valid && loginForm.controls.password.touched"
            [class.valid]="loginForm.controls.password.valid && loginForm.controls.password.touched"
        >
            <ion-label floating>Password</ion-label>
            <ion-input
                formControlName="password"
                type="password"
            >
            </ion-input>
        </ion-item>
        <ion-item
            class="error-message"
            *ngIf="!loginForm.controls.password.valid && loginForm.controls.password.touched"
        >

                Your password needs more than 6 characters.

        </ion-item>

        <button
            ion-button
            block
            type="submit"
            [disabled]="!loginForm.valid"
        >
            Log In
        </button>
    </form>
</ion-content>

Without *mobxAutorun everything works ok. I can see that the dependecy tree contains only loginForm. Shall I not use the *mobxAutorun with the form? If it's ok then why the form controls state is not updated when input value changes?

@blackbird529  @Jonatthu . I didn't get one part. Why UserModel is observable. I guess you can't modify it from out side of class and if you are passing it via function then it don't required to be observable.
There is a form plug in NgXS which observe on dirty, status like form property. It would be great if we can achieve same here. Or Am I missing something here in mobx specific approach?

Hey,
closing this one. I don't think mobx-angular should handle this.
Form state in Angular is local, so syncing it with a store would be tricky. Updating the entire model on submit sounds more suitable


Char() hardcoded for 4x20 displays

The addressing within the display's RAM as well as the cursor position updating are hardcoded for 4x20 displays.
Determine address bounds per line as well as proper update cursor position dynamically.

This should be fixed in 415897aabea56cce360ce1655766c4276f6fb70b


Benchmarking

I would like for jsdom to care more about performance. This change adds a simple way to create benchmarks using http://benchmarkjs.com/.
When the benchmarks are run in node, only the performance of jsdom is measured. This is useful to compare the effects of a proposed patch or to find out where a performance regression was introduced using git bisect.
If the benchmarks are run in chrome, a comparison will be made with the native DOM of chrome. This is useful to find good spots to improve jsdom. For example one of the benchmarks I included in this PR shows that appendChild is extremely slow compared to chrome if there are a lot of parents (appending elements vertically appears to be something like O(n^2) instead of O(n)).
Currently the benchmarks scripts all use var because strict mode is not yet supported. But I will rebase this PR when support for it lands in the library I am using: https://github.com/bestiejs/benchmark.js/pull/97
Another point of interest is that if you specify setup, tearDown, cycle functions, they will actually all be part of the same function, so they are all in the same variable scope. You can see this in benchmark/dom/tree-modification.js. I am not sure if this is a desired style? Alternatives would include using globals, using this or a big closure around the benchmark.
A couple points on my implementation:

The runner does not use fs at all, every benchmark file is included with a static require(). This makes it easier to browserify. This is different from jsdom's unit test runner
You can specify what benchmarks to run using a command line flag: node benchmark/runner -s jsdom/api,dom/construction/createElement
The browser bundle is generated using node benchmark/runner --bundle, you can then open the browser-runner.html in chrome
You use the console (F12) in chrome to run benchmarks, it also reports to the console. There is no fancy html UI. This is much simpler and lets you more easily do fancy things like profiling: console.profile(); run('dom/construction/createElement', 'jsdom'); console.profileEnd();
I included a few examples in this PR to demonstrate all the features (synchronous test, setup function, async test, etc), but this is of course not complete

Here is some sample output:
# dom/construction/createTextNode #
native x 1,848,191 ops/sec ±18.95% (26 runs sampled)
jsdom  x 6,000,818 ops/sec ±46.22% (64 runs sampled)
Fastest is "jsdom", which is 3.25x faster than the slowest "native"

# dom/tree-modification/appendChild: many parents #
native x 3,983,773 ops/sec ±1.45% (5 runs sampled)
jsdom  x 1,863 ops/sec ±97.50% (22 runs sampled)
Fastest is "native", which is 2138.46x faster than the slowest "jsdom "

Perhaps contributing.md should be updated to ask people to run a benchmark if they change something that might impact performance?

Overall looking really good. I commented mostly on the benchmark files themselves, since that's what we'll be spending the most time maintaining in the future.

The runner does not use fs at all, every benchmark file is included with a static require().

Could we experiment with generating the repetitive "manifest" files, like jsdom/benchmark/index.js, benchmark/jsdom/index.js, etc.? That is, write a script that generates them before bundling/running the benchmarks, and add the actual files themselves to .gitignore? (Also the script should output a comment saying "these files are generated" at the top.)
It would be cool to end up with a usable solution here that we can eventually care over to our unit tests.

Made a lot of improvements today.
A lot of style changes. Also the benchmark functions are no longer compiled, this took some time getting correct.
I am not yet sure if I am happy with how the closures are set up now:
exports["appendChild: many parents"] = (function () {
  const DEPTH = 500;
  let itData;
  let it;

  return suite({
    setup: function (document) {
      itData = new Array(this.count);

      for (let i = 0; i < this.count; ++i) {
        let nodes = new Array(DEPTH);

        for (let n = 0; n < DEPTH; ++n) {
          nodes[n] = document.createElement("div");
        }

        itData[i] = nodes;
      }

      it = 0;
    },
    fn: function () {
      let nodes = itData[it];

      for (let n = 1; n < DEPTH; ++n) {
        nodes[n - 1].appendChild(nodes[n]);
      }

      ++it;
    }
  });
}());

I have not yet thought about the manifest idea.

I'm done with improvements unless someone has something to note.
I think that generating manifest files is not worth the effort. Adding a new benchmark file or test file is relatively rare. I prefer to be a little more verbose instead of doing a lot of clever things, it makes things more straightforward.
It would also complicate things if your test file is using assets which should not be added to the manifest. For example test/living-dom/attributes.js uses the file files/minimal.html, but that html should obviously not be added to the manifest. A file such as test/util.js should not be added either. So you would need to rely on specific path matching, or on scanning javascript files for annotations.

OK, all merged! We'll have to work on incorporating this into our workflow from now on. Your help prompting on PRs and such would be appreciated.
Also, maybe you could add a quick npm run benchmark script, and put that in Contributing.md? Maybe add the script in to Travis? (Although I am not sure that Travis would be reliable to compare across runs ... maybe we'd do some kind of git checkout HEAD~1 then benchmark the two?)

Sure I'll do that in a bit.
I am also hesitant to use travis because it is virtualized. Other virtual machines could steal cpu in the middle of a benchmark. So even if you do npm run benchmark; git checkout HEAD~1; npm install; npm run benchmark, you could see a huge difference suddenly, even though all the change did was update README.
The solution would be to use a dedicated machine (which has a cpu without a turbo boost for bonus points), but I am not sure that is worth the effort

Yeah I guess we could just ask contributors to run locally and report back. A dedicated machine would be pretty cool though :P.


Generated docstrings return type could be narrowed

This issue has been fixed in prerelease version 2024.12.100, which we've just released. You can find the changelog here: CHANGELOG.md


addresses failure when public_ip = false

Fixes #1
changes how public IP addresses for management nic are enumerated
fixes a related issue, discovered during testing, with a static lookup for the first management public IP address. The fqdn of the first BIG-IP was applied to all BIG-IPs built, if more than one BIG-IP is requested. Note the hardcoded zero in the snippet below.
data "azurerm_public_ip" "f5vm01mgmtpip" {
  name                = azurerm_public_ip.mgmt_public_ip[0].name
  resource_group_name = data.azurerm_resource_group.bigiprg.name
  depends_on          = [azurerm_virtual_machine.f5vm01, azurerm_virtual_machine_extension.vmext, azurerm_public_ip.mgmt_public_ip[0]]
}

@mjmenger thanks Mark for your fix.


[Android] 'SkImageDecoder::Factory returned null' when using IBarCodeService.Create

Trying to use the returned Stream for ImageSource.FromStream gives the error SkImageDecoder::Factory returned null.

Use acr.barcodes, this library is deprecated

Ah, okay


IPLD Tutorial #2

@mrodriguez3313 can you add a description of the second tutorial you are making?


typo in project description in github - 'marco' rather than macro.

Haha.. Yeah the description thing needs to version controlled also.


Base styling for Quickview and FavoriteProduct on Product List

Create attribute directives for quickview and favoriteProduct
Style quickview to appear on hover only
Group favorite button with addtocart on product card

I see tests are failing on favoriteproduct and quickview. I will address this.

@spencerwalker check out the associated jira tasks


Switch to Backblaze/blazer for the B2 backend

According to https://github.com/kurin/blazer/pull/84#issuecomment-1382526369 the new upstream is https://github.com/Backblaze/blazer . We have to wait until https://github.com/Backblaze/blazer/pull/2 is merged before we can switch.

This appears merged in v0.6.0.

Oh indeed. Anyone up for a PR?

When trying to move to Backblaze/blazer, it fails with:
package github.com/restic/restic/cmd/restic
        imports github.com/restic/restic/internal/backend/b2
        imports github.com/Backblaze/blazer/b2
        imports github.com/Backblaze/blazer/base
        /home/mike/.go/pkg/mod/github.com/!backblaze/blazer@v0.6.0/base/base.go:40:2: use of internal package github.com/kurin/blazer/internal/b2types not allowed
package github.com/restic/restic/cmd/restic
        imports github.com/restic/restic/internal/backend/b2
        imports github.com/Backblaze/blazer/b2
        imports github.com/Backblaze/blazer/base
        /home/mike/.go/pkg/mod/github.com/!backblaze/blazer@v0.6.0/base/base.go:41:2: use of internal package github.com/kurin/blazer/internal/blog not allowed

https://github.com/Backblaze/blazer/pull/6 fixes the issue, so I will give it another try when that PR gets merged and released.

Thanks for giving it a try. The fix has been released as part of 0.6.1.


Attribute logical condition should support !=

Currently the Attribute logical condition works such that if a value to compare is provided, then it compares with .equals regardless of what operator was provided.
If the operator is != then this results in unexpected behavior. The logical condition should support != as expected. (And possibly throw an exception or something if > or < is provided rather than just silently assume it means ==)
See also
Current version:
https://github.com/synthetichealth/synthea/blob/master/src/main/java/org/mitre/synthea/engine/Logic.java#L258 (and the logic is the same going back to the earliest java version)
Ruby version, which had no special logic for strings:
https://github.com/synthetichealth/synthea/blob/ruby/lib/generic/logic.rb#L152

fixed with #668


Make 'update_schema' instruction more useful

We have to pass an argument to the rake task, so let's document it.
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠
Follow these steps if you are doing a Rails upgrade.

Oops 🤦♂ Worryingly I got that command from my bash history, so must have run the wrong one before now.
Amended.


Cherry pick 2.2.2 changes and sync up npm publishes to github versions

On NPM i see:
2.3.0
2.2.4
2.2.3
2.2.0

Here on github, i see 2.2.2.
Oddly enough, the thing I care about #749 is in 2.2.2, but not in later releases.
Can you please create a 2.3.1 that cherry picks from 2.2.2 and publish to github & npm?
Happy to help if things get hairy

We just cut some new releases, let me know if this is still an issue


[Bug] Silent SSO token expiration

resolves #851
Problem
Expired SSO tokens fail silently.
Solution
Catch the specific exception for an expired SSO token and raise it so the user is aware of why the connection is failing.
Checklist

[x] I have read the contributing guide and understand what's expected of me
[ ] I have run this code in development and it appears to resolve the stated issue
[x] This PR includes tests, or tests are not required/relevant for this PR
[x] This PR has no interface changes (e.g. macros, cli, logs, json artifacts, config files, adapter interface, etc) or this PR has already received feedback and approval from Product or DX

looking into the further up swap to a Database Error
looking at open method in connections.py we get to
retryable_exceptions = [
            InternalError,
            InternalServerError,
            ServiceUnavailableError,
            GatewayTimeoutError,
            RequestTimeoutError,
            BadGatewayError,
            OtherHTTPRetryableError,
            BindUploadError,
        ]
        # these two options are for backwards compatibility
        if creds.retry_all:
            retryable_exceptions = [Error]
        elif creds.retry_on_database_errors:
            retryable_exceptions.insert(0, DatabaseError)

        return cls.retry_connection(
            connection,
            connect=connect,
            logger=logger,
            retry_limit=creds.connect_retries,
            retry_timeout=timeout if timeout is not None else exponential_backoff,
            retryable_exceptions=retryable_exceptions,
        )

falling back to dbt-adapters and looking at the method defined there as part of BaseConnectionManager failure seems to happen here
except Exception as e:
            connection.handle = None
            connection.state = ConnectionState.FAIL  # type: ignore
            raise FailedToConnectError(str(e))

applying breakpoint here and checking type and str of e shows:
type(e)
<class 'dbt.adapters.exceptions.connection.FailedToConnectError'>
str: str(e)
'Database Error\n  This error occurs when authentication has expired. Please reauth with your auth provider.'

looking into where the DatabaseError is joined on


Changed logic to include the generated locales if no locale exists.

Quick attempt at solving https://github.com/blackbaud/skyux2/issues/1773

Codecov Report

Merging #449 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #449      +/-   ##
==========================================
+ Coverage   99.32%   99.32%   +<.01%
==========================================
  Files          73       73
  Lines        1922     1925       +3
  Branches      304      305       +1
==========================================
+ Hits         1909     1912       +3
  Misses         13       13

Flag
Coverage Δ

#builder
100% <100%> (ø)
:arrow_up:

#runtime
95.6% <ø> (ø)
:arrow_up:

#srcapp
100% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

lib/sky-pages-assets-generator.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Gift cards Admin: host restrictions selector

Replace the Limit to opensource collectives checkbox by a Restrictions field displayed as a multi-select with the following options :

Any host
Open Source Collective 501c6
BrusselsTogether ASBL
Open Collective Paris

Hey @Betree what would be the API side solution for this? Replacing the switch button for limitedToOpenSourceCollectives which is a boolean check with restrictions which would be an Array of strings require a change in the table schema as well and the logic check to find openSourceHost

Hey @maddhruv we already have the API recipe for this. We only need a way to pick the hosts for Frontend, I already plan to work on this issue as a way to demo the component specified in https://github.com/opencollective/opencollective/issues/2429.

Done in https://github.com/opencollective/opencollective-frontend/pull/2814


wild video infer too slow

Hello, may I ask, I deduce that my own video speed is very slow, 10s video takes more than ten minutes, and there are some warning messages, may I ask why?
MAGEIO FFMPEG_WRITER WARNING:  input image is not divisible by macro_block_size=16, resizing from (923, 924) to (928,  928) to ensure video compatibility with most codecs and players. To prevent resizing, make your input image divisib
le by the macro_block_size or set the macro_block_size to 1 (risking incompatibility).
0% | ▋ | 1/296 [00:00 & lt; 04:16, 1.15 it/s] [
swscaler @ 000001df1adc4300] Warning: data is not aligned!  This can lead to a speed loss
My testloader Settings are as follows: testloader_params = {
'batch_size': 1,
'shuffle': False,
'num_workers': 0,
'pin_memory': True,
'prefetch_factor': 2,
'persistent_workers': False,
'drop_last': False
}

I recall running into this issue as well. In my case, my gpu memory was being occupied but my gpu utilization was still 0%. Could you check your nvidia-smi output? I never explored further to debug my issue, but hopefully this gives you some insight to check your installation / setup or the gpu utilization in the scripts.

Thanks for your reply. I found the infer speed was very fast, and the main time was spent on render

@Ared521 ,
i have same question, how to solve, what is your env and gpu , how many fps ? my GPU is 2080ti, should i change it ?

@luoww1992  #102 maybe fix  render is too slow


Can't extend tailwind config

Hi,
Love this!
But having trouble getting the tailwind config to work.
Using with react. Tailwind works fine with the config if using className
But when trying to use with emotion, tw always defaults to the 'default' config.
"babel-plugin-tailwind-components": "^1.0.0-alpha.0",
"tailwind.macro": "^1.0.0-alpha.10",
"tailwindcss": "^1.1.4",

module.exports = {
  tailwind: {
    styled: '@emotion/styled',
    format: 'auto'
  }
}

const text = tw.div`text-lg`

Everything seems to be working fine except its not pulling in any config.
testing config (make red green to test):
module.exports = {
  important: true,
  theme: {
    extend: {
      colors: {
        red: {
          100: '#f0fff4',
          200: '#c6f6d5',
          300: '#9ae6b4',
          400: '#68d391',
          500: '#48bb78',
          600: '#38a169',
          700: '#2f855a',
          800: '#276749',
          900: '#22543d'
        }
      }
    }
  },
  variants: {},
  plugins: []
}

I specifically require important: true
Using typescript and webpack (if that matters)

Ok so i pinpointed the problem...
Firstly i need to delete the .cache in node_modules for deleting babel cache.
But because the macro only merged the config in production, this causes the problem:
  state.isProd = process.env.NODE_ENV === 'production';

As i set the NODE_ENV to dev when running in dev

Hi! I'm having the same issue, but can't seem to find any .cache folder in node_modules.
Is that all you had to do to get it to work?

Hi! I'm having the same issue, but can't seem to find any .cache folder in node_modules.
Is that all you had to do to get it to work?

Yeah Iv I remember right you have to create the folder.
Are you running with any env variables? Eg production / development?

No env variables, process.env.NODE_ENV is undefined.
And if the folder isn't there then nothing should be cached anyways right?
I have cacheDirectory: false in babel-loader as well. Really stumped on this one.
I see you have babel-plugin-tailwind-components installed, is that necessary?
I'm using the PostCSS plugin and the tailwind.macro.

If i remember right it could also be to do with the macro version.
Try version 1.0.0-alpha.10
Let me know

Already on 1.0.0-alpha.10 :sweat_smile:

Ah,
It could still be the env variable. As it only merges when it detects production env.
So if its undefined it still won't merge.
I made a simple fork to remove this env check:
https://github.com/nicwhitts/tailwind.macro-env-compatible
Give this a try

It's definitely using the tailwind.config.js, because if I delete it then it all crashes.
But when I extend the config PostCSS picks up the new classes correctly, but the macro doesn't. If I change a value then PostCSS shows the new value, while the macro still uses the old one. So has to be something with caching, just can't find any folder with the cached version. Not caching in babel-loader and ts-loader doesn't cache AFAIK.

Didn't work either. Thanks for trying to help me out though :)

@nicwhitts Managed to get it solved. The problem was that babel-plugin-macros.config.js was not being picked up by babel-plugin-macros.

Glad to hear

@mhaagens What did you change to get babel-plugin-macros.config.js to be picked up by babel-plugin-macros?


feat: roundtrip FixedSizeList Scalar to protobuf

Which issue does this PR close?
Closes #8224.
Rationale for this change
This scalar type was missing from the protobuf serialization. Adding it for completeness.
What changes are included in this PR?
Updates protobuf to add a FixedSizeList scalar variant. I've re-used the same serialization mechanism as list, to minimize the changes needed.
Are these changes tested?
I've added a roundtrip test, which I think should be sufficient. I'm not deeply familiar with the proto module codebase, so if you have additional suggestions for tests, I am all ears.
Are there any user-facing changes?
This should be a backwards compatible change to the protobuf messages.

This is stacked on #8221. The base should automatically change when we merge that one, although I may need to rebase.


Added missing 'var' to avoid leaking to the global namespace

Also - I'm using the library in a small React app, and the test suite throws an error because of an undefined variable.

Coverage remained the same at 100.0% when pulling 703851baa1f4a78d591aca40001215e3e8c936fc on qoobaa:master into 55d4e3abc5483cceff92c4bb3fb8f6503bf9fb91 on ansman:master.

Thanks!

Thank you!


Add CodeQL

Coverage remained the same at 96.983% when pulling ae07a2fafbc4c34c68311e6f54a4fc222c928bcd on codeql into 1054fdb3b977862c28f2f1764ce92355912bb9a2 on main.


Ambiguous overloads found

I don't think JPype correctly resolves variadic function overloads properly.
An example:
class Foo{
    public Foo(){} // (separate issue: doesn't work without this - I would've thought it should..?)

    public void bar(int x, String... ss){
        System.out.println("varargs");
    }

    public void bar(int x){
        System.out.println("noargs");
    }

    public static void main(String[] args){
        new Foo().bar(1);
    }
}

Then compile it and run:
import jpype
jpype.startJVM(jpype.getDefaultJVMPath())

foo = jpype.JClass('Foo')
print("Java says:")
foo.main([])
print("..but JPype errors:")
foo().bar(1)

jpype.shutdownJVM()

Output is
stdout:
Java says:
noargs
..but JPype errors:

stderr:
Traceback (most recent call last):
  File "/home/mboughe/Desktop/jpypetest/issue.py", line 8, in <module>
    foo().bar(1)
  File "/home/matt/anaconda3/envs/py27/lib/python2.7/site-packages/jpype/_jclass.py", line 111, in _javaInit
    *args)
RuntimeError: No matching overloads found for [init in find. at native/common/jp_method.cpp:127

Note that JPype behaves correctly (and doesn't error) when you omit the "int x" argument to the methods.
This is with JPype 0.6.3 and py36_0.

Hmm.  I will have to investigate this.  The argument matcher should try all combinations of the overloads independently thus if any matches it should have produced a correct match.  As there are two overloads both should have been checked.  I guess the correct way to debug would be to use the match report function but I have not tested that recently.

Actually I think there may be a misinterpretation.  It didn't say it can't find 'bar', it said it can't find '[init'.  Thus the problem is with the constructor and not the varargs.  But rerunning it does show a problem with the current master version.
noargs
Java says:
..but JPype errors:
Traceback (most recent call last):
  File "Foo.py", line 8, in <module>
    foo().bar(1)
RuntimeError: Ambiguous overloads found: (LFoo;I) vs (LFoo;I[Ljava/lang/String;)
        at unknown(native\common\jp_method.cpp:124)

It did not consider the int to be an exact match so it tagged that an empty list could be a possiblity.  Forcing the issue by casting the python int to a java int corrects the issue.
foo().bar(jpype.JInt(1))
              ^^^^^^^  Casting forces bar(int) to match better than bar(int, String...)

I am currently taking a break from the project due to a departing employee at my work, but I will leave this request open and test it with the current development branch when I return.

Sorry about that - I pasted the wrong error. I had meant to paste the RuntimeError: Ambiguous overloads found one. (though when I was playing around I noticed that you get RuntimeError: No matching overloads found for [init when a constructor isn't defined in the Java class)

Does the exact match method work for you? I can try to give preference something that matches all over matches all and an empty list but there will always be edge cases as we only have 4 matching levels.  Those being exact, implicit, explicit, none.  As both the overloads were implicit, (python long to java int, and empty to null list) they are being tagged as implicit and thus triggering ambiguous warning.  To break this implicit axact arguments would need to be given preference over implicit various args.  I wonder if the Java binding rules would help.

I am going to tag this one to be fixed when I port over the C++ method resolving code to java.  It isn't too hard to check to see if a method takes the same type arguments as another through is assignable ignoring the extra vargs argument and placing it into the precedence list.  But the current C++ logic for it would take some time add.  Once I finish the porting, performing the check will be pretty trivial.  Thus I will leave this open until that time.

I want to know this problem that RuntimeError: No matching overloads found for [init in find. at native\common\jp_method.cpp:127 ,has been solved?

Not sure.  Need to run a test on the new master.  It was addressed, but we do not have  test for it yet.

My python's environment is python3.7


Duplicate link

What's wrong?
If I cd into the deportal directory, and run the following commands:
make clean
make html

I see an error saying
<home>/sw/aiven/devportal/docs/products/mysql/howto/connect-from-cli.rst:61: WARNING: Duplicate explicit target name: "mysql documentation".

(where <home> will be replaced by your home directory).
If you look in the file docs/products/mysql/howto/connect-from-cli.rst and search for "mysql documentation", you will find two links with the same name but different targets:
`MySQL documentation <https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-install.html>_`

and
`MySQL documentation <https://dev.mysql.com/doc/refman/8.0/en/mysql.html>_`

It should be possible to fix this issue by adding another underscore (_) to the end of each link - that is, so they both end in >__ instead of >_.

This is no longer an issue in main


Out of memory error (Pytorch)

I suspect this may be a combination of factors, however we are getting the following error:
NET ERROR: CUDA out of memory. Tried to allocate 308.00 MiB (GPU 0; 8.00 GiB total capacity; 6.17 GiB already allocated; 0 bytes free; 6.48 GiB reserved in total by PyTorch)
When we try to run with a larger single TIFF stack (~200MB, representing a time course).
Not sure why Pytorch is hogging 6.5GB of memory, but I suspect that this can be parallelized. We have 4 Nvidia Quadro P4000's and only 1 is being slammed right away at the moment with the entire memory load. I am not sure if the combination of all 4 would be enough, but my guess would be that it would help. I'd also guess that Pytorch's Data Parallel function would help a lot with this well (maybe an easy fix?).
We can segment with the CPU, but that is obviously not ideal given the time hit we'll take on every single dataset we'd hope to segment. The alternative is just scripting everything and doing it frame by frame; however, we were hoping to use the GUI for those in the lab who aren't as technically savvy.
If I missed anything, please let me know! Happy to provide more information as needed as well.

As a temporary workaround, in case anybody else runs into this issue, the best way to segment time course images (in 2D at least) appears to be by treating the dataset as a list of 2D numpy image arrays rather than as a single 3D numpy array. This gets around the issue of GPU memory utilization.
Might be nice to include an optional parameter in the model eval to set 3D arrays as either time course or Z-stacks.

hmm, I think the napari plugin for cellpose will run your stacks correctly without utilizing too much memory, check it out here: https://github.com/MouseLand/cellpose-napari. I am not really supporting time series data in the cellpose native GUI, but I am supporting it (hopefully :)) in the napari plugin.
Other options are to reduce the batch_size but that would also involve scripting.

Gotcha, that makes a lot of sense! Do you have any specific plans for support to prefer one/the other? We've found Cellpose to be super useful in many of the projects we're working on, and having an easy to use interface has been awesome! Thanks for all of your work on this.


Uncaught ConsumerStoppedError exceptions on closed streams

Describe the bug
Streams running with the UDF approach are not silently shutting down when the consumers are stopped. The ConsumerStoppedError raised is never caught. In our application this is causing sentry errors while this is a graceful shutdown.
To Reproduce
Run a UDF consumer stream and shut down the application.
Expected behavior
I would expect stream.start() to suppress the ConsumerStoppedError.
Logs
Task exception was never retrieved
future: <Task finished name='Task-10' coro=<Stream.start() done, defined at /app/.venv/lib/python3.11/site-packages/kstreams/streams.py:334> exception=ConsumerStoppedError()>
ConsumerStoppedError: null
File "kstreams/streams.py", line 361, in start
await self.func_wrapper_with_typing()
File "kstreams/streams.py", line 367, in func_wrapper_with_typing
cr = await self.getone()
File "kstreams/streams.py", line 277, in getone
consumer_record: ConsumerRecord = await self.consumer.getone()  # type: ignore
File "aiokafka/consumer/consumer.py", line 1160, in getone
msg = await self._fetcher.next_record(partitions)
File "aiokafka/consumer/fetcher.py", line 1086, in next_record
raise ConsumerStoppedError()

closed by https://github.com/kpn/kstreams/pull/238


lorri: reserve attribute name

lorri is a nix-shell replacement for project development.
Since it’s public beta announcement was noticed by many people, they
are going to assume it is available from nixpkgs. We lead them to the
installation instructions while the tool is not yet ready for nixpkgs.
Related-issue: https://github.com/NixOS/nixpkgs/pull/60211

[x] tested warning thrown when the user tries to build lorri.

I support this PR. I have run into this problem and the error message would have helped me.

I think this sets a very weird precedent. Why not just package the beta?

Yeah, I think I agree with @srhb.

I think we’re in a special situation here, because it’s specifically a nix tool that people would expect for nix, but we don’t want to make any commitments to stability right now, nor any releases.
When we give it an error message, the user experience is much better.

I will not stand in your way if more people agree that this is fine, but I personally feel like it's essentially an in-tree advertisement. And what would you do if some random person decided to package lorri anyway?

And what would you do if some random person decided to package lorri anyway?

https://github.com/NixOS/nixpkgs/pull/60211

I think that message has a very confusing "we" -- "we" as in nixpkgs maintainers, or "we" as in lorri authors?
I'm sorry to harp on this, and maybe we should indeed special case this as you suggest, but in that case I'd like it to have at least been explicitly discussed, so it doesn't just look like preferential treatment of some company's project by virtue solely of them having nixpkgs maintainers on board. :)

Mostly “we” as @Profpatsch @grahamc and @shlevy, as people who want the freedom to quickly iterate on it while people seem to be interested in trying it out in the current state (which might change significantly over the next few weeks).

Thanks for clarifying.

Would adding a package named lorri-unstable (alpha/beta) be a solution? Or is there a technical reason lorri can't be in nixpkgs?
Then adding a hint when trying to install lorri wouldn't be such a weird precedent. I would be like a "did you mean..'" with some extra info about package state.

Would adding a package named lorri-unstable (alpha/beta) be a solution?

I don’t think that makes any sense. We’ll push lorri into nixpkgs once we think it’s stable enough, until then people can go to the project page, installing it is just a simple nix-env -i.

@Profpatsch Are you at all ready to revisit this? I think especially now that there is a daemon, it would be nice to have a module that handles starting a systemd service for you.

We don’t have the resources right now to maintain & support a stable version in nixpkgs. See https://github.com/target/lorri/issues/96 for approaches other people have used. I think it’s good experiment to collect a few approaches first.

I'm with @srhb — this is a bad precedent. :)
In the meanwhile, I'm cheating because lorri is amazing! Thanks so much for building this tool!


Opera Install Google Chrome extension is not working.

I just download opera, donwload the extension. I go in the google web store donwload an extension.I click on add to opera and its say to : To complete installation, go to extensions manager and confirm installation by clicking install button for the Opera Install Google Chrome extension. Plz repair your extension.

@NarshTheReal Have you done all instructions? "To complete installation, go to extensions manager and confirm installation by clicking install button for the Opera Install Google Chrome extension" is a necessary step and cannot be skipped.

@suevalov
Step2) https://i.imgur.com/nlR9VGw.png
Step3) https://i.imgur.com/HMsCbbk.png - There is no "install" button. Nothing new is showing in extensions tab.
Tested in Opera Stable & Opera Developer.

I have the same problem. Opera version:63.0.3368.94, windows 7

Same problem here. Not even remotely usable. Trying to install keepassxc chrome extension in opera. When I press add to opera a pop-up window comes up which guides me to the opera extension page where there should be some magical install button associated with the extension to install (keepassxc in this case). However all I see is the same extensions page as if I opened it manually (no entry for keepassxc visible, hence no install button as well). I tried turning off all add-ons besides install chrome extensions and deactivated my antivirus software but the behavior remained unchanged. Please help out here.
Opera version: 66.0.3515.72


Remove duplicate displayed node update call

Each time a new node is selected in the scene tree dock, both _node_selected() and _selection_changed() are called.
They are then both calling editor->push_item(), resulting in potentially lots of duplicate calls downstream (eg a Gridmap node is loaded twice)
This fixes this.
Ideally I think that _node_selected() and _selection_changed() should be merged, they are redundant.

As it's not critical, let's merge it after 3.2 and cherry-pick if no regressions happen.

@Nehluxhes Is this still desired? If so, it needs to be rebased on the latest master branch.

@aaronfranke @akien-mga It is still desired and I just rebased on latest master.

Thanks!

Cherry-picked for 3.2.4.


when in tab form is cleared

Hi,
I'm trying to use this form in react tab but form is rerendered when switching tab so inputs are empty. How can I handle this? by storing form values in parent component? or in store?

react specific. was only learning react :)


Immediate: add missing header (NFC)

This adds a missing header when building with the latest version of
swift/next.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

CC: @hyp

CC: @hyp

@swift-ci please smoke test

@swift-ci please smoke test


Support summer activity

as title

Please run nox -s reformat instead of formatting manually. (See CONTRIBUTING.md for instructions)
A CHANGELOG.md entry would be appreciated.
# 1.2.3

## What's new

- Added summer activity

Still some little issues, I would fix it tmr

I try to run the code but get summer -> challenge -> records -> 0 -> finish_time  because the finish time is null in sometime.
I tried this finish_time: typing.Optional[datetime.datetime] = None but not work 🥲

Well, this is weird, the PR got closed after I made changes to your code. I still have everything locally though.


Removing inappropriate phrasing

+1

👍

Why not :-) Thank you.

I believe that political correctness is just politically correctly named ordinary hypocrisy, but who am I to judge other people feelings, so, thank you again :-)


Wireless USB Connection?

Hi,
have you ever tested a wireless USB Connection via devices like AAWireless?
This enables i.e. Android Auto via WiFi or Bluetooth.
Not having to plug in your phone everytime you drive, but use AAIdrive functionality would be a big benefit.
best regards
Chris

I've never considered those solutions, figuring they were specific to only running Android Auto.
From the car's perspective, the app would be running via USB, which gains faster performance than the Bluetooth connection but doesn't support the audio context.
Try it out and share your experience!

I wish I still had my Mini to test, The AAWireless dongle has a USB Direct mode that I see possibility working with this.

Did you test the AAWireless dongle? Your car can still connect over USB, even if it supports Bluetooth, though MyBMW's USB support seems less than perfect.


Contour 0.4 draft release notes

For March 15th.
Signed-off-by: Dave Cheney<EMAIL_ADDRESS>

Merged, feel free to send a pr.


WIP: Enable developer to add link to Stack Overflow profile

This PR adds Stack Overflow social link for developers.

Display Stack Overflow social link just like how other social links are displayed.
Adding a form field for the developer to add a link to their Stack Overflow profile.

Related issue: https://github.com/joemasilotti/railsdevs.com/issues/561

[x] My code contains tests covering the code I modified
[x] I linted and tested the project with bin/check
[ ] I added significant changes and product updates to the changelog


HSEARCH-2663 Null handling for elements in container bridges isn't consistent with non-container bridges

https://hibernate.atlassian.net//browse/HSEARCH-2663
Based on #1974, which should be merged first.
Just a non-regression test checking we don't have this problem in Search 6 anymore.

Pull Request Test Coverage Report for Build 1

132 of 137 (96.35%)  changed or added relevant lines in 33 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.02%) to 88.658%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

backend/lucene/src/main/java/org/hibernate/search/backend/lucene/document/impl/AbstractLuceneDocumentBuilder.java
11
12
91.67%

engine/src/main/java/org/hibernate/search/engine/backend/document/model/dsl/impl/IndexSchemaElementImpl.java
11
12
91.67%

mapper/pojo/src/main/java/org/hibernate/search/mapper/pojo/extractor/builtin/impl/OptionalDoubleValueExtractor.java
0
1
0.0%

backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/gson/impl/RootJsonAccessor.java
0
2
0.0%

Files with Coverage Reduction
New Missed Lines
%

backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/orchestration/impl/ElasticsearchBatchingSharedWorkOrchestrator.java
1
70.93%

Totals

Change from base Build 238:
0.02%

Covered Lines:
17392

Relevant Lines:
19617

💛  - Coveralls

Merged, thanks!


Hosted fields tabbing on iOS disabled in 3.52.1 version

General information

SDK version: 3.52.1
Environment: Sandbox/Prod
React Native iOS WebView

Issue description
In 3.52.1 ability to 'tab' between hosted fields on iOS was removed/broken.

As you see on the screenshot there is no active arrows for tabbing. Previously we were using v3.51.0 and tabbing with iOS keyboard arrows works. We would like to still use v3.51.0 but there are another issue with tabbing https://github.com/braintree/braintree-web/issues/456.

We made some changes to how tabbing works on devices with software keyboards, but the only way we could do it reliably was to depend on the inputs being in a form element. Simply wrapping your hosted fields in a <form> element should cause the tab arrows to re-appear.
I'll get the documentation updated to reflect this.

yep, wrapping in the form tag helped, thank you


Notepad++ entry does not appear

After the last update of Notepad++ (5.8.3), the "Edit with Notepad++" entry does not appear anymore in shell:

While it works fine in W11 and W10 context menus:

I think this is an issue with shell because it even appears in Files (https://github.com/files-community/Files) context menu:

I have now realised there was not a bug, a Notepad++ update changed the text and one of the lines of code I was using sundenly started to hide the entry...


Do not run forever in request worker threads

I've added code that tracks the worked threads spawned in Kore.JsonRpc.Server.srv, and polls them on their status when spawning a new one. It turns out, that they never exit, because we will spawn a new worker for every request.
We end up with logs like when submitting several copies of the same requests one after the other:
.build/kore/bin/kore-rpc test/rpc-server/simplify/and-simplify/definition.kore --module TEST --server-port 12341 --log-level info
...
    Verifying the definition TimeSpec {sec = 0, nsec = 1467} []
mkore-rpc: [173420029] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 27
kore-rpc: [173421622] Info (LogJsonRpcServer):
    Status of worker threads:
kore-rpc: [173422274] Info (LogJsonRpcServer):
      ThreadId 27: ThreadBlocked BlockedOnSTM

kore-rpc: [173423187] Info (LogJsonRpcServer):
    Process request 1 simplify
kore-rpc: [178823488] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 35
kore-rpc: [178824515] Info (LogJsonRpcServer):
    Status of worker threads:
kore-rpc: [178824876] Info (LogJsonRpcServer):
      ThreadId 35: ThreadBlocked BlockedOnSTM
      ThreadId 27: ThreadBlocked BlockedOnSTM

kore-rpc: [178825417] Info (LogJsonRpcServer):
    Process request 1 simplify
kore-rpc: [181816914] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 43
kore-rpc: [181817559] Info (LogJsonRpcServer):
    Status of worker threads:
kore-rpc: [181817869] Info (LogJsonRpcServer):
      ThreadId 43: ThreadBlocked BlockedOnSTM
      ThreadId 35: ThreadBlocked BlockedOnSTM
      ThreadId 27: ThreadBlocked BlockedOnSTM

kore-rpc: [181818666] Info (LogJsonRpcServer):
    Process request 1 simplify

and with change we get the threads to stop:
.build/kore/bin/kore-rpc test/rpc-server/simplify/and-simplify/definition.kore --module TEST --server-port 12341 --log-level info
kore-rpc: [2199] Info (LogMessage):
    Reading the input file TimeSpec {sec = 0, nsec = 607689} []
kore-rpc: [26521] Info (LogMessage):
    Parsing the file TimeSpec {sec = 0, nsec = 1467} []
kore-rpc: [74874] Info (LogMessage):
    Verifying the definition TimeSpec {sec = 0, nsec = 1397} []
kore-rpc: [137888] Info (LogMessage):
    Executing TimeSpec {sec = 0, nsec = 59132870} []
kore-rpc: [143984] Info (LogMessage):
    Reading the input file TimeSpec {sec = 0, nsec = 531772} []
kore-rpc: [171454] Info (LogMessage):
    Parsing the file TimeSpec {sec = 0, nsec = 1467} []
kore-rpc: [217430] Info (LogMessage):
    Verifying the definition TimeSpec {sec = 0, nsec = 1886} []
kore-rpc: [22047663] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 27
kore-rpc: [22048451] Info (LogJsonRpcServer):
    Status of worker threads:
kore-rpc: [22049142] Info (LogJsonRpcServer):
      ThreadId 27: ThreadBlocked BlockedOnSTM

kore-rpc: [22049871] Info (LogJsonRpcServer):
    Process request 1 simplify
kore-rpc: [24260908] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 36
kore-rpc: [24261398] Info (LogJsonRpcServer):
    Status of worker threads:
kore-rpc: [24261677] Info (LogJsonRpcServer):
      ThreadId 36: ThreadBlocked BlockedOnSTM
      ThreadId 27: ThreadFinished

kore-rpc: [24262226] Info (LogJsonRpcServer):
    Process request 1 simplify
kore-rpc: [25892950] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 45
kore-rpc: [25893404] Info (LogJsonRpcServer):
    Status of worker threads:
kore-rpc: [25893620] Info (LogJsonRpcServer):
      ThreadId 45: ThreadBlocked BlockedOnSTM
      ThreadId 36: ThreadFinished
      ThreadId 27: ThreadFinished

kore-rpc: [25894108] Info (LogJsonRpcServer):
    Process request 1 simplify

How exactly is this being tested? From the logs, it would appear that each request is using a brand new client connection (since the request ID is always 1). If this is the case, the old behaviour is to be expected, unless the client connections were actually closed, in which case it's definitely a bug.

Upon closer inspection, the thread status logging itself unfortunately creates a misleading picture:

I added logging to the jsonRpcServer worker function (within runGeneralTCPServer. This shows that indeed there is a new thread for every session - actually 3 of them (the first one's ID is logged). These threads come from inside the Conduit engine room, and I assume they terminate or get killed when the session is closed.

Worker threads for each session are indeed killed, unless we log them in the added code:
By adding the worker ThreadId to the global list, we create a reference from the main thread (actually, any thread) to the worker thread. This prevents worker threads from receiving a BlockedIndefinitely exception during garbage collection, which would otherwise terminate the orphan workers.

I changed the code to use Weak references to ThreadId (there is a dedicated mkWeakThreadId) and the logging confirms that these threads disappear. Running three invocations of kore-rpc-clients with 3 requests each, I am getting the following output on the third invocation:
kore-rpc: [7223752] Info (LogJsonRpcServer):
    Process request 1 execute
kore-rpc: [7225970] Info (LogJsonRpcServer):
    Process request 1 execute
kore-rpc: [7227838] Info (LogJsonRpcServer):
    Process request 1 execute
kore-rpc: [7229554] Info (LogJsonRpcServer):
    Process request 1 execute
kore-rpc: [30711541] Info (LogJsonRpcServer):
    Json RPC Request handler in thread ThreadId 44
kore-rpc: [30711800] Info (LogJsonRpcServer):
    Spawned worker with thread id ThreadId 48
kore-rpc: [30711907] Info (LogJsonRpcServer):
    Status of worker threads:
      Just (ThreadId 48): ThreadBlocked BlockedOnSTM
      Nothing: Gone
      Nothing: Gone

i.e., the previous two worker threads have been removed (by garbage collection).
So I think all is well with the current server code in that respect.
Code changes to avoid holding thread references:
diff --git a/kore-rpc-types/src/Kore/JsonRpc/Server.hs b/kore-rpc-types/src/Kore/JsonRpc/Server.hs
index fe3d8b7cf..9c05b183c 100644
--- a/kore-rpc-types/src/Kore/JsonRpc/Server.hs
+++ b/kore-rpc-types/src/Kore/JsonRpc/Server.hs
@@ -18,7 +18,7 @@ import Control.Concurrent (forkIO, throwTo)
 import Control.Concurrent.STM qualified as GHC
 import Control.Concurrent.STM.TChan (newTChan, readTChan, writeTChan)
 import Control.Exception (Exception (fromException), catch, mask, throw)
-import Control.Monad (forM, forM_)
+import Control.Monad (forM, forM_, forever)
 import Control.Monad.IO.Class (MonadIO (liftIO))
 import Control.Monad.Logger (MonadLoggerIO)
 import Control.Monad.Logger qualified as Log
@@ -33,6 +33,7 @@ import Data.Conduit.Network (ServerSettings, appSink, appSource, runGeneralTCPSe
 import Data.Conduit.TMChan (closeTBMChan, sinkTBMChan, sourceTBMChan)
 import Data.Maybe (catMaybes)
 import Data.Text qualified as Text
+import System.Mem.Weak qualified as GHC
 import GHC.Conc.Sync qualified as GHC
 import Kore.JsonRpc.Types (FromRequestCancellable (isCancel), ReqException (..), rpcJsonConfig)
 import Network.JSONRPC hiding (encodeConduit, runJSONRPCT)
@@ -88,6 +89,8 @@ jsonRpcServer ::
     m a
 jsonRpcServer serverSettings respond handlers =
     runGeneralTCPServer serverSettings $ \cl ->
+        liftIO GHC.myThreadId >>= \me ->
+        Log.logInfoNS "kore-rpc" (Text.pack $ "Json RPC Request handler in thread " <> show me) >>
         runJSONRPCT
             -- we have to ensure that the returned messages contain no newlines
             -- inside the message and have a trailing newline, which is used as the delimiter
@@ -101,7 +104,7 @@ jsonRpcServer serverSettings respond handlers =
 data JsonRpcHandler = forall e. Exception e => JsonRpcHandler (e -> Log.LoggingT IO ErrorObj)

 {-# NOINLINE workerList #-}
-workerList :: GHC.TVar [GHC.ThreadId]
+workerList :: GHC.TVar [GHC.Weak GHC.ThreadId]
 workerList = IO.unsafePerformIO $ GHC.newTVarIO []

 srv ::
@@ -130,13 +133,14 @@ srv respond handlers = do
              in loop
     newWorkerTid <- spawnWorker reqQueue
     Log.logInfoN $ "Spawned worker with thread id " <> Text.pack (show newWorkerTid)
-    atomically $ GHC.modifyTVar workerList (newWorkerTid :)
-    Log.logInfoN "Status of worker threads: "
+    weakWorkerTid <- liftIO $ GHC.mkWeakThreadId newWorkerTid
+    atomically $ GHC.modifyTVar workerList (weakWorkerTid :)
     workerIds <- atomically $ GHC.readTVar workerList
-    workerStatuses <- forM workerIds $ \tId -> do
-        status <- liftIO $ GHC.threadStatus tId
-        pure $ "  " <> show tId <> ": " <> show status
-    Log.logInfoN . Text.pack . unlines $ workerStatuses
+    workerStatuses <- forM workerIds $ \wkTId -> do
+        mbTId <- liftIO $ GHC.deRefWeak wkTId
+        status <- liftIO $ maybe (pure "Gone") (fmap show . GHC.threadStatus) mbTId
+        pure $ "  " <> show mbTId <> ": " <> status
+    Log.logInfoN . Text.pack . unlines $  "Status of worker threads: " : workerStatuses

     mainLoop newWorkerTid
   where
@@ -205,7 +209,7 @@ srv respond handlers = do

         liftIO $
             forkIO $
-                id $
+                forever $
                     bracketOnReqException
                         (atomically $ readTChan reqQueue)
                         (withLog . processReq)

Closing this is this is not a valid solution, see #3727 instead.


Searching and writting data with an SQL query engine?

Request
I'm looking at CLP and would like to know if you have tried writing an SQL query engine or a query engine for any other declarative language that would make it easier to search over CLP.
Possible implementation
Implementing SQL over CLP using https://github.com/dolthub/go-mysql-server

Hey @twoMatches-admin, that sounds interesting. Are you looking specifically for a way to use SQL syntax when querying CLP or a MySQL-compatible interface (such that you can use MySQL client libraries) to query CLP?

If it's the former, we have been looking into providing support for querying using the Kibana Query Language (KQL). Would that be something you're interested in or do you want SQL specifically?
If it's the latter, we hadn't considered that but the library you mentioned does sound promising.
Another area we have been dabbling with off and on is writing a connector for a system like Presto so that Presto users could query CLP.

Let me know which of those sounds most useful to you. On another note, do you have any example queries top of mind that you'd like to run atop CLP?

A way to use SQL syntax and already available tools. Specifically SQL to use with in house analytics service that don’t support KQL.

Hey @twoMatches-admin, that sounds interesting. Are you looking specifically for a way to use SQL syntax when querying CLP or a MySQL-compatible interface (such that you can use MySQL client libraries) to query CLP?

If it's the former, we have been looking into providing support for querying using the Kibana Query Language (KQL). Would that be something you're interested in or do you want SQL specifically?

I think being able to use CLP logs via Kibana is a killing feature if that's what you mean. Elastic is a de-facto standard for logs analysis, so that would help with CLP adoption immensely.

Hey @gerilya, are you looking for support for querying CLP data using Kibana Query Language queries or support for using the Kibana UI with CLP?
If it's the former, clp-s has support for KQL. You can try it out using the clp-core container.
If it's the latter, we do have a UI for CLP which you can try by using the CLP package; You'll need to build it from source but we should be making a release in the next week or so. If we were to pursue an integration with Kibana, what features would you say are most important for your use cases?


Use simplified MMR Proof

Description
SimplifiedMMRProof is pre-processed MMR proof format that is very easy to be verifiable by Solidity code while maintaining same security guarantee provided by regular MMR Proof.
How does it work?
It works by pre-calculating order of the merkle tree proof so that we don't have to use mathematic operation to determine the same on solidity side. It also takes advantage of nervos library optimization where the last proof item is already bagged from right hand side. Combining all of the above means that solidity code does not have to do any mathematical operation instead just iterating through both peaks and proof and hash them.
TODO:

[x] Writing go code to convert normal mmr proof to simplified version
[x] Writing test for the conversion function
[ ] Writing solidity code to verify simplified mmr proof
[ ] Integrating  code
[ ] Make sure e2e passes

Awesome, looking forward to see contract + relayer integration and getting tests passing.
I put our code from the Slack discussion here: https://github.com/Snowfork/snowbridge/blob/main/ethereum/contracts/utils/MerkleProof.sol#L39 - given this is no longer relevant and not 100% usable, you should be able to replace/remove the createMMRRoot function in this PR too and replace it with a SimplifiedMMRVerifier contract

Awesome, looking forward to see contract + relayer integration and getting tests passing.
I put our code from the Slack discussion here: https://github.com/Snowfork/snowbridge/blob/main/ethereum/contracts/utils/MerkleProof.sol#L39 - given this is no longer relevant and not 100% usable, you should be able to replace/remove the createMMRRoot function in this PR too and replace it with a SimplifiedMMRVerifier contract

Added unpolished solidity code. Do check it out.

@musnit Let's merge this. Tests are passing now. And I have tested the implementation thoroughly.

@philipstanislaus @musnit Everything is fixed now. I am keeping the normal mmr contract since @musnit has written a test to show the gas cost difference. Let's merge it.

Thanks Parth! Merging...

Looks good. merged now so we can start testing it on staging but @philipstanislaus plz check over the last new commita still too, thanks!


Got a error tip "Invalid initializer - player target already is initialized"

I use fluid 3.29 as video player in the html page,  init multi unique players on same page,  setup unique video id per video div.
some time i got the follow error tip in the browser console:
"Invalid initializer - player target already is initialized", this is happened on follow js code
if (o.classList.contains("js-fluid-player"))                     throw "Invalid initializer - player target already is initialized";
Can u guys help me, thanks.

Hi @andyzhou thanks for using Fluid Player! Normally this error happens if you have used an ID more than once. For every new instance you make, you need to give it a different ID.

@andyzhou Did Zento's feedback help you? Does the problem persist or can we close this issue? Thank you!

@andyzhou I will close the ticket due to lack of feedback. If there is still an issue please open a new ticket/re-open this one. Thank you!


Remove "black lives matter" related content

This change removes the "black lives matter" banners from the website. This site is not - or at least should not be - a political platform and as such it should be free from divisive [1] political content which does not bear any relation to the site subject.

In what way is that closed thread related to this PR? The PR deals with the fact that golang.org currently hosts a politically divisive banner. The mentioned thread was closed by Ian Lance Taylor, the Gerrit issue was closed by him as well. The PR was not aimed at a single person nor was it in reaction to that closed thread, it is related to golang.org - a site ostentatiously related to a programming language but, if I understand the reasoning here effectively part of a political campaign - hosting a banner for a divisive political organisation.
While I can not change Ian Lance Taylor's decision on closing the thread and the Gerrit issue I can influence those around me to add blocking rules to their content filters. Eventually those rules will make their way into distributed filter lists.
So be it.

In what way is that closed thread related to this PR?

I linked to a specific message from Russ Cox explaining the Go project's stance on the banner.

@Yetangitu It took several months, but it finally happened. https://github.com/golang/website/commit/8a86c4a6dbe5e8bdf59f9d68538cf0fc5852be5a

Better late then never, the hope is that it does not get replaced by the next social/climate/whatever justice fad. I'm fine with people posting their personal messages on their personal forums and I can even imagine someone doing that on a personal project but large projects like this with thousands of participants are much better off being politically neutral. Leave your politic at the login prompt and we're capable of moving mountains. Bring them to the table and we'll just hide behind those mountains to lob grenades at each other.


Improved readability, grammar, and correct name usage of OAI, OAS, an…

…d The Linux Foundation
Closed #19

Ted, thank you for taking the time and scrutiny for your review.

@tedepstein, Can you please re-review?


Fix xmldoc typo GetBlockBlobClient

Change "append blob" to "block blob"

Can one of the admins verify this patch?

Thanks for the fix @davidjnet!


Fail to display GEOJSON Points as Data Feed

I try to add a FeatureCollection of Point (sample below); however, the data points are not counted and shown on map (see screenshot).
https://raw.githubusercontent.com/ubriela/test/master/mediaq3.geojson

I try to inspect and figure out that the function call outputLayer.addData(geojson) on leaflet_parser_helpers.js did not successfully add the geojsond data. This is because an exception in leaflet-sc.js, the layer parameter is undefined for some reason.
var layer = L.GeoJSON.geometryToLayer(geojson, options.pointToLayer, options.coordsToLatLng, options);
layer.feature = L.GeoJSON.asFeature(geojson);

I've pulled Khazhy's fix into my system and I'm seeing the points on the map. We'll continue to expand the capabilities using the services you defined to see if we can successfully query your system.


14 - show cts role-based permissions

gw1>show cts role-based permissions
RBACL Monitor All for Dynamic Policies : FALSE
RBACL Monitor All for Configured Policies : FALSE

gw2>show cts role-based permissions
IPv4 Role-based permissions default:
        Permit IP-00
IPv4 Role-based permissions from group 42:Untrusted to group Unknown:
        Deny IP-00
IPv4 Role-based permissions from group 199:FAILED_AUTH to group Unknown:
        Deny IP-00
IPv4 Role-based permissions from group 22:Untrusted to group 22:Untrusted:
        Deny IP-00
IPv4 Role-based permissions from group 100:Tech to group 6:Trusted:
        NFS-08
        ACCESS-01
        Deny IP-00
IPv4 Role-based permissions from group 101:Mars to group 5:Trusted:
        Deny IP-00
IPv4 Role-based permissions from group 111:Technicolor to group 9:Printers:
        PRINTING-10
        GENERIC-14
        Deny IP-00
IPv4 Role-based permissions from group 102:Moon to group 6:Printers:
        ICMP-01
        PRINTING-10
        Deny IP-00
IPv4 Role-based permissions from group 199:FAILED_AUTH to group 9999:QUARANTINE_REDIRECT_PORTAL:
        Deny IP-00
RBACL Monitor All for Dynamic Policies : FALSE
RBACL Monitor All for Configured Policies : FALSE

gw3>show cts role-based permissions
IPv4 Role-based permissions default:
        Permit IP-00
IPv4 Role-based permissions from group 12:Untrusted to group Unknown:
        Deny IP-00
IPv4 Role-based permissions from group 17:Web to group Unknown:
        Deny IP-00
IPv4 Role-based permissions from group 199:FAILED_AUTH to group Unknown:
        Deny IP-00
IPv4 Role-based permissions from group 5016:Quarantine to group Unknown:
        Deny IP-00
RBACL Monitor All for Dynamic Policies : FALSE
RBACL Monitor All for Configured Policies : FALSE

https://github.com/CiscoTestAutomation/genieparser/pull/250

completed


JS issue in Angular8 Project

Hi ! I dont really know if I can ask for this here but here's the problem, I got this error in my console :

I've tried with both js scripts you gave in the README file, and got the same error each time.
For the css, I think there is no problem but as long as I can't load the JS, I just can't see any html element.
I'll be checking there once a day with hope that you could help me.
Thanks !

got the solution, no problem

Hi, can you please tell me what was the solution.
I'm facing the same issue, it would be of great help if you can provide the solution for this

I think (not sure, been a long time), that I was loading JS directly into my base.html. I actually created the 2 js scripts into my assets folder, then copy past the code you gave.
Hope it'll help, have a great day !


Added ImageBuilderRAM folder for Blog Post

Description of changes:
Added a Folder for Blog post related to EC2 Image Builder - Image Sharing via RAM for Dynamic Versioning
The folder contains templates that will be used for the blog post walkthrough.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks, I have made all the necessary modifications

Thanks , appreciate your suggestions, changes have been completed and pushed


PowerShell error when running the configure-AKSWorkloadCluser.ps1

Is your issue related to a Jumpstart scenario, ArcBox, HCIBox, or Agora?
<!--- A link to the Jumpstart scenario you are working on. --->
Describe the issue or the bug
I have sucessfully deployed the HCI box in my Azure subscriptiona and followed the pre-requisite steps to setup a Kubernetes Cluster. I have updated the ps1 file with the Object ID of my security group, however when I run the PowerShell script to setup the AKS cluster I get the following error:
2024-03-23 21:49:29.047726 Error: BadRequest
Detail: admission webhook "vhybridakscluster.kb.io" denied the request: Logical network hcibox-aks-lnet-vlan110 does not have an ippool.
The AKS cluster gets created but in a failed state
To Reproduce
Running this scrip should successfully create the AKS cluster in an active state
Environment summary

Have you looked at the Troubleshooting and Logs section?

Screenshots

Additional context

This looks like a similar issues to #2474

Apologies I am not familiar with the process of logging a support issue in GitHub. Can you explain what the resolution is for this? What do I need to do to get this working in my environment?
From: Dale Kirby @.>
Date: Tuesday, 26 March 2024 at 15:35
To: microsoft/azure_arc @.>
Cc: IAmITGeek84 @.>, Author @.>
Subject: Re: [microsoft/azure_arc] PowerShell error when running the configure-AKSWorkloadCluser.ps1 (Issue #2469)
Closed #2469https://github.com/microsoft/azure_arc/issues/2469 as completed via #2475https://github.com/microsoft/azure_arc/pull/2475.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/azure_arc/issues/2469#event-12252374896, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ASY4PHQJOSDDFNKBWL7I44LY2GIUJAVCNFSM6AAAAABFE6UYK6VHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGI2TEMZXGQ4DSNQ.
You are receiving this because you authored the thread.Message ID: @.***>

Apologies @IAmITGeek84
Try the following to fix the issue in your environment.

Grab the latest version of Configure-AKSWorkloadCluster.ps1
From Azure portal, delete the hcibox-aks-lnet-vlan110 Az Stack HCI Logical network
Uncomment and add your AAD groupID to the script
re-run the script


V2/documentation insomnia

Cherry picked from 12b89a7986c80e5f79eaae1ab54869e4925f08fa
Added insomnia documentation

@pedrocarr Please try to follow the guide in the readme 5. Setup Rest client


colors don't seem to be working

Expected behaviour.
Console or terminal colors
Actual behaviour.
No colors being displayed
Steps to reproduce behaviour.
Python 3.7
python -m venv .tclib
.tclib\scripts\activate
pip install -f requirements.txt

from tclib import TinychatClient

if __name__ == '__main__':
    client = TinychatClient('room', account='acct', nick='acctNick', password='pwd')
    client.run()

Setup.
pip install -r requirements.txt
Notes/Code/Other information.
It seems a lot of the functionality isn't coming through, though most likely i'm doing it wrong.
Maybe a bit more in the way of a user guide?  How does the banning work, I don't see anything that would pull from a file or a preserved list.

It seems a lot of the functionality isn't coming through, though most likely i'm doing it wrong.
Maybe a bit more in the way of a user guide? How does the banning work, I don't see anything that would pull from a file or a preserved list.

This is a library to interface with TC, as such it doesn't handle ban lists or even chat commands. I suspect eventually someone will write a bot that uses tclib; right now it's just a bit of an experiment into how a lib like this should/could/would look (versus pinylib/pinylib-rtc).
Regarding console colors:
If we look at https://github.com/nortxort/tclib/blob/master/tclib/console.py#L110
  def write(self, text, color='', *, ts=True):
   ......

Console.write() can accept a color parameter but is never passed in client.py
aida@butt:~$ grep -n color client.py
aida@butt:~$


Alter priority order of textual gender markers

The first heuristic for the algorithm is based on the text of the account's bio. This change alters the priority ordering of the words used for that heuristic. In particular, the old priority order had pronouns (e.g. "they") before other descriptors (e.g. "nonbinary"). This commit reverses that. It also puts the more direct descriptors, like "man," before the less direct descriptors, like "father."
I believe that this will create more accurate determinations. In particular, it will mark a bio that says "nonbinary, she/her pronouns" as nonbinary, and a bio that says "woman, they/them pronouns" as a woman. This reflects more accurately what the users are telling us.

Update: I also snuck in a second edit that adds "enby" to the list of indicators that someone's nonbinary. This is a somewhat common word in the nonbinary community; it comes from the initialism NB (for NonBinary), which sounds like enby. I'm happy to make that a separate PR if you like.

Neat, thanks.

I've redeployed https://www.proporti.onl with this change.


Swift

Books on Swift

[ x] I have read freeCodeCamp's contribution guidelines.
[x ] My pull request has a descriptive title (not a vague title like Update index.md)
[x ] My pull request targets the master branch of freeCodeCamp.
[x ] None of my changes are plagiarized from another source without proper attribution.
[x ] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

LGTM! Thanks for adding this section for Swift books, @weerd-space and congratulations on your first contribution to this repository! 🎉 📖 📚 We look forward to future contributions!


fix: rivet exec does not work with --rivet-servers

#222
#221
#220  👈
main

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

Join @NathanFlurry and the rest of your teammates on  Graphite


[Network] az network dns zone import: Add support for ALIAS record

Related command

az network dns zone export -g <ResourceGroupName> -n <ZoneName> -f <FileName>
Description

Currently dns zone import doesn't support alias import. So Adding support to import alias record from the zone file.
The import format of the alias record implemented is <recordname> <ttl> AZURE ALIAS A <target resource>

Testing Guide

Example zone file to import.

; Exported zone file from Azure DNS
;      Zone name: demoaliasimport.com
;      Resource Group Name: Fayaz-Onboarding-test
;      Date and time (UTC): Wed, 20 Jul 2022 16:29:18 +0530

$TTL 300
$ORIGIN demoaliasimport.com.

@ 3600 IN SOA ns1-09.azure-dns.com. azuredns-hostmaster.microsoft.com. (
              1 ; serial
              3600 ; refresh
              300 ; retry
              2419200 ; expire
              300 ; minimum
              )

  172800 IN NS ns1-09.azure-dns.com.
  172800 IN NS ns2-09.azure-dns.net.
  172800 IN NS ns3-09.azure-dns.org.
  172800 IN NS ns4-09.azure-dns.info.

abcddemo 60 AZURE ALIAS A /subscriptions/52bae96a-3806-426c-a5dc-1ae6016b5f15/resourceGroups/aliastest/providers/Microsoft.Network/trafficManagerProfiles/test123wsx

aliazcname 3600 AZURE ALIAS CNAME /subscriptions/52bae96a-3806-426c-a5dc-1ae6016b5f15/resourceGroups/aliastest/providers/Microsoft.Network/trafficManagerProfiles/aliastmtestipv6

cname 3600 IN CNAME testcname.com.

cxzczxcx 3600 IN A <IP_ADDRESS>

myrescordres 60 AZURE ALIAS AAAA /subscriptions/52bae96a-3806-426c-a5dc-1ae6016b5f15/resourceGroups/aliastest/providers/Microsoft.Network/trafficManagerProfiles/test123wsx

Here we have 3 alias records. Running the above command will add the following to the dns zone.

History Notes

Currently it doesn't brake any existing record set import

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

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

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

Network


Seed node redundancy

Looking into ob.cfg, it seems there is only a single seed node SEED_NODE = <IP_ADDRESS>:18467. (BTW, who maintains this node?)
Having a single seed node introduces a single point of failure (in particular, high exposure to DDoS).

btw: A few days ago I tried to start OpenBazaar Server but it failed because it wasn't able to contact the seed node.

That SEED_NODE should probably be renamed. It's really a relay node for hole punching (which run on the same server as our seed), but eventually we will need more redundancy.


Compile warnings

.pio/libdeps/esp-wrover-kit/TCA9548A/src/TCA9548A.cpp: In member function 'uint8_t TCA9548A::read()':

.pio/libdeps/esp-wrover-kit/TCA9548A/src/TCA9548A.cpp:84:54: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:

     this->myWire->requestFrom(this->_address, 1, true);

Would be nice to have a clean build.

Ah, the Wire.cpp has a bunch of overload functions.
Try pulling the latest changes, it should remove the ambiguity.

thanks, looks good now. Can you release this?

Sure - it might take a while to appear in any library managers.


dropDownList validator

i have
...
<?= $form->field($model, 'filters[]')->dropDownList([0=>'Mobile',1=>'Brow',2=>'Win'] ,['class'=>'form-control chosen-select','multiple'=>true,'size'=>3] ) ?>
...
`

`
java script works fine
but if i do update then i got error

rules() contains that [['filters'], 'string', 'max' => 1024]
i want to have multiple select saved in db, how i can get it?

i change rules() so
[['filters'], 'filter', 'filter' => function ($value) {return json_encode($value);}]
now i can save my array
but how i can return my array from db?

please use the forum to ask questsions, github is a bug/feature tracker.


SSL error, version number

Describe the bug
Upon reaching to the localhost:5000 on the host system for the docker, I am getting the following error
Eg
curl -X GET "https://localhost:5000/v1/api/one/user" -k
results in
curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number
To Reproduce
Steps to reproduce the behavior:

curl  "https://localhost:5000/v1/api/one/user"  --verbose

TLSv1.3 (OUT), TLS handshake, Client hello (1):
error:1408F10B:SSL routines:ssl3_get_record:wrong version number
curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

See error

Environment
IBeam version: lastes of 3 of July 2023
DIGEST:sha256:b370977232b157a75247fd5d3b9524e4a36f78c0834c2006242c6e3d828d9801
Docker image or standalone: Image
OS: Running on Synology DSM 7.0

hey @dabrazhe thanks for describing your issue in detail 👍
I've never seen that error before, so unfortunately I don't have a solution for you right away. These are some resources I've found on debugging this problem:
https://superuser.com/questions/1754642/ssl-error-wrong-version-number
https://stackoverflow.com/questions/55085550/tls-wrong-version-number-with-openssl-1-1-1
https://stackoverflow.com/questions/50840101/curl-35-error1408f10bssl-routinesssl3-get-recordwrong-version-number
https://community.letsencrypt.org/t/unable-to-establish-ssl-connection-wrong-version-number/155529
Look through these links and see if any of the suggestions there helps in solving the error.
Can you share the command that is used to run the IBeam image?

Thank you.
The image is run via Synology Docker interface, here is a very detailed guide https://linuxhint.com/run-docker-containers-synology-nas/
Below is the json configuration file.
Just to verify, I need to run the IB GW for authentication with the IB Client API https://interactivebrokers.github.io/cpwebapi/
Is this container image the right one?
   "CapAdd" : [],
   "CapDrop" : [],
   "cmd" : "/srv/ibeam/run.sh",
   "cpu_priority" : 50,
   "enable_publish_all_ports" : false,
   "enable_restart_policy" : false,
   "enable_service_portal" : null,
   "enabled" : false,
   "env_variables" : [
      {
         "key" : "PATH",
         "value" : "/opt/venv/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
      },
      {
         "key" : "LANG",
         "value" : "C.UTF-8"
      },
      {
         "key" : "GPG_KEY",
         "value" : "A035C8C19219BA821ECEA86B64E628F8D684696D"
      },
      {
         "key" : "PYTHON_VERSION",
         "value" : "3.11.3"
      },
      {
         "key" : "PYTHON_PIP_VERSION",
         "value" : "22.3.1"
      },
      {
         "key" : "PYTHON_SETUPTOOLS_VERSION",
         "value" : "65.5.1"
      },
      {
         "key" : "PYTHON_GET_PIP_URL",
         "value" : "https://github.com/pypa/get-pip/raw/0d8570dc44796f4369b652222cf176b3db6ac70e/public/get-pip.py"
      },
      {
         "key" : "PYTHON_GET_PIP_SHA256",
         "value" : "96461deced5c2a487ddc65207ec5a9cffeca0d34e7af7ea1afc470ff0d746207"
      },
      {
         "key" : "JAVA_HOME",
         "value" : "/usr/lib/jvm/default-java"
      },
      {
         "key" : "USER_ID",
         "value" : "1000"
      },
      {
         "key" : "GROUP_ID",
         "value" : "1000"
      },
      {
         "key" : "USER_NAME",
         "value" : "basic_user"
      },
      {
         "key" : "GROUP_NAME",
         "value" : "basic_group"
      },
      {
         "key" : "SRC_ROOT",
         "value" : "/srv/ibeam"
      },
      {
         "key" : "OUTPUTS_DIR",
         "value" : "/srv/outputs"
      },
      {
         "key" : "IBEAM_GATEWAY_DIR",
         "value" : "/srv/clientportal.gw"
      },
      {
         "key" : "IBEAM_CHROME_DRIVER_PATH",
         "value" : "/usr/bin/chromedriver"
      },
      {
         "key" : "PYTHONPATH",
         "value" : ":/srv:/srv/ibeam"
      },
      {
         "key" : "IBEAM_ACCOUNT",
         "value" : "myusername"
      },
      {
         "key" : "IBEAM_PASSWORD",
         "value" : "mypassword"
      }
   ],
   "exporting" : false,
   "id" : "0094637c8bcec6cd7ef6299956d425cfe16c8422aa25975faa39b360367d33b6",
   "image" : "voyz/ibeam:latest",
   "is_ddsm" : false,
   "is_package" : false,
   "links" : [],
   "memory_limit" : 0,
   "name" : "voyz-ibeam1",
   "network" : [
      {
         "driver" : "bridge",
         "name" : "bridge"
      }
   ],
   "network_mode" : "bridge",
   "port_bindings" : [
      {
         "container_port" : 5000,
         "host_port" : 550,
         "type" : "tcp"
      },
      {
         "container_port" : 5001,
         "host_port" : 551,
         "type" : "tcp"
      }
   ],
   "privileged" : false,
   "shortcut" : {
      "enable_shortcut" : false,
      "enable_status_page" : false,
      "enable_web_page" : false,
      "web_page_url" : ""
   },
   "use_host_network" : false,
   "volume_bindings" : [
      {
         "host_volume_file" : "/docker/ibeam1",
         "mount_point" : "/usr/ibeam",
         "type" : "rw"
      },
      {
         "host_volume_file" : "/docker/ibeam1/env.list",
         "mount_point" : "/env.list",
         "type" : "rw"
      }
   ]
}

The issue can be closed. The problem went away once I had fixed the synology nas egress, there needs to be a firewall rule to allow traffic to connect to the IB GW.

Hi @dabrazhe glad to hear you've figured out the root cause of the original issue 👏👏
Just to clarify:

Just to verify, I need to run the IB GW for authentication with the IB Client API https://interactivebrokers.github.io/cpwebapi/
Is this container image the right one?

Yes, IBeam works with that Gateway, this is the correct image.


There is no way to makeValue for Text type, instead of String

There is no way to makeValue for Text type, instead of String. That's a problem when for any reason it is mandatory to have it a Text.
I guess there are other examples, but my case is another appengine code uses a framework that will fail when trying to fill a Java class field that is supposed to be a Text, with a String.
Cannot cast object 'Hello' with class 'java.lang.String' to class 'com.google.appengine.api.datastore.Text'

I guess it’s not going to make the cut! They’re ghosting their own functionality—talk about getting friend-zoned by your own code!


Add directory_exists

I think it can be handy, and it provides some kind of consistency with the already present file_exists.

Do you have a C++17 compiler?  If so you can use the standard library for filesystem stuff now.  Which is totally better than what's in dlib :)  Check out https://en.cppreference.com/w/cpp/filesystem
If this is a "yeah but I don't have C++17 thing" then that's cool though.

I do have a C++17 compiler, so I don't really need it myself.
Honestly, I was a bit lazy here, and since I was already using the dlib dir_nav.h to get the files in a directory recursively. I just wanted to check that the path given to perform the search was a directory, so it was natural to do it in dlib. But I can get around it with std::filesystem, I've used it several times :).
Feel free to close this PR :)

Na it's cool.  Just pointing it out in case you didn't know it was there.  Thanks for the PR :)


fix: ccls interfering with lsp mode in other modes

When init.el had both (cc +lsp) and (clojure +lsp), documentation
wouldn't show in the echo area, or would flash and be replaced by the
text: Error processing message (wrong-type-argument hash-table-p nil).
ccls-code-lens-mode was being enabled in the clojure buffers and I would
assume the same can happen with other languages when using LSP.

Restricted ccls-code-lens-mode to cc modes.

It’s probably going to be superseded by https://github.com/hlissner/doom-emacs/pull/5430, since ccls got its lenses normalized with the rest of lsp-mode

Duplicate of #5430


Update win32_callstack.cpp

Module offset mistakenly being erased together with .pdb extension

Description

For modules without debug information, offsets were not appearing in the callstack list because the offset info was being erased together with the .pdb extension just after having been appended.

Sorry for the default commit message! I mistakenly put the commit description in the extended field instead of the main one :-/

It's not a big deal for a small commit to a rarely touched file like this. I can wait to merge if you'd like to update the commit, or I can merge as is - up to you.

Okay, just merge as it is then, sorry... I'll be more careful next time! And congratulations for the wonderful beast that is RenderDoc!!!


Make a new example notebook

Say what I did

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 96.032%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
121

Relevant Lines:
126

💛  - Coveralls


feat: Add payments claimed to storage

Links to issue 114
This PR adds claimed payments to storage in {baseStoragePath}/payments_claimed.json
Would like feedback on if the strategy for storing transactions is correct. Could possibly be a parameter to lm.start() where it could be a read/write interface for developers to choose a storage strategy.

Thanks @bennyhodl looks good will test and run. Mind just running the lint foxes so the checks pass?

@Jasonvdb updated with lint fixes.
e2e was passed with example running, but yarn test and yarn e2e:test:debug was failing with ReferenceError: device is not defined


What dataset?

Hello sir,
i was wondering how fast-gector is capturing context of long sentences when it is only trained on some english tokens/words.

Hey, GECToR is a seq2edit model which mainly captures the edits from source to target instead of words/tokens. The long dependencies of error editing may require more iterations for a single instance. In the paper, the author indicates that there's a trade-off between speed and correction.

@Jason3900
Thanks for replying,
What do you mean by More iterations for single instance?
You mean running more number of epochs while training??

What I mean is that GECToR uses iterative editing strategy in inference mode which modifies a sentence step by step. If an error requires long dependencies to find out, you can set more iteration number in order to capture it.


SQL relations required?

When no sql relations defined in connector, ConnectionsBundle fails, because it expects at least one relation. Should relations be required?
example relation:
https://github.com/ongr-io/MagentoConnectorBundle/blob/master/Resources/config/services.yml#L7

Does it still fail?

i'm not shure yet, maybe this was fixed in newest version of connectionsbundle, we'll find out soon when writing sync test in oxid connector.

we tested this, with newest release of ConnectionsBundle even if there are no relations, errors are not thrown. closing this issue.


Add TOC in Documentation

Enhancement Type
Improve an existing feature
Describe the enhancement
It would be very helpful, to add a table of contents in the head of the Documentation.
This would make the docs so much more useable and give them additional structure.

There's already the navigation banner at the top and section TOC's within each

I really don't know how to implement what you want in mkdocs without an incredibly tedious, error prone task. Please point me to mkdocs plugins that would help achieve what you're thinking.

Didn't know about this page. Where can i find it?
Just came here via google and meant the TOC for the Readme.md
But this page looks much better than the md.

Ah... found it: https://docker-minecraft-server.readthedocs.io/en/latest/?badge=latest sorry

For future reference, all GitHub readme's (markdown in general) provide a TOC drop-down


Two dispmanx layers when using pngview?

I'm trying to make a system that plays videos using omxplayer and superimposes graphics on top using pngview, however I have run into an issue for some files.
I have a video with the H.264 profile<EMAIL_ADDRESS>When I play this video without pngview, it plays fine. But if I launch pngview, the HDMI signal drops. The signal won't recover until I either stop the video or kill pngview.
If I play other videos with a lower profile, such as<EMAIL_ADDRESS>there doesn't seem to be any issues.
So I've had a look at the output of vcgenmod dispmanx_list and I can see that pngview creates two layers.
When pngview is not running (but omxplayer is running at layer 5), the output is:
pi@raspberrypi:~ $ vcgencmd dispmanx_list
display:2 format:XRGB8888 transform:0 layer:-127 src:0,0,1824,984 dst:48,48,1824,984 cost:1103 lbm:0
display:2 format:YUV_UV transform:0 layer:5 src:0,0,1920,1080 dst:0,0,1920,1080 cost:1216 lbm:30720

However, when I load a transparent logo using pngview on layer 10, the HDMI signal dies. The layer output is:
pi@raspberrypi:~ $ vcgencmd dispmanx_list
display:2 format:XRGB8888 transform:0 layer:-127 src:0,0,1824,984 dst:48,48,1824,984 cost:1103 lbm:0
display:2 format:RGBA16 transform:0 layer:0 src:0,0,0,0 dst:0,0,0,0 cost:1186 lbm:1024
display:2 format:YUV_UV transform:0 layer:5 src:0,0,1920,1080 dst:0,0,1920,1080 cost:1216 lbm:30720
display:2 format:RGBA32 transform:0 layer:10 src:0,0,1920,1080 dst:0,0,1920,1080 cost:1156 lbm:0

Which got me wondering. Why does pngview create layer 0 and would the Pi be able to run the video if layer 0 wasn't created?
Would upgrading to a RPi3 fix the issue (I'm using RPi2) ?
Update
Just tried with an RPi3 board, but the results are the same.

Hi,
pngview creates a background layer, which probably is not needed in your case. Try adding using
pngview -b 0 image.png
Setting the background colour to zero is a special case that stops the background layer from being created.
Hope that helps!

@AndrewFromMelbourne Thanks. This was exactly what I needed. Now pngview only creates one layer. 👍


Popup cut off + gaps

When opening a popup, the screen got cut off. Also add a gap between the header and the screen.

Gaps have been added and a border at the bottom of the popup header. This issue will be closed, because the cut off problem is actually the problem of issue #112.


pip-compile may add unwanted requirements from future versions of package dpendencies

pip-compile may add unwanted requirements from future versions of package dependencies.
E.g. when collecting third-level dependences (celery->amqp->vine), when second-level
dependency changes (ampq 2.0.2 -> 1.4.9), 3rd-level requirement (vine) might remain in resulting output. In fact second compilation gives expected results (don't know why).
Steps to replicate
Tried on fresh virtulaenv, OS X with pip==8.1.1 and pip-tools==1.6.5
$ echo "celery\nlibrabbitmq" > requirements.in
$ pip-compile -r -v

Expected result
No vine package in requirements.txt
amqp==1.4.9               # via kombu, librabbitmq
anyjson==0.3.3            # via kombu
billiard==<IP_ADDRESS>        # via celery
celery==3.1.23
kombu==3.0.35             # via celery
librabbitmq==1.6.1
pytz==2016.4              # via celery

Actual result (unwanted vine requirement is present)
amqp==1.4.9               # via kombu, librabbitmq
anyjson==0.3.3            # via kombu
billiard==<IP_ADDRESS>        # via celery
celery==3.1.23
kombu==3.0.35             # via celery
librabbitmq==1.6.1
pytz==2016.4              # via celery
vine==1.1.0

Full log (first run, actual result): https://gist.github.com/coagulant/db486bd554bd34d2074d9e2df8e25105
Full log (second run, expected result): https://gist.github.com/coagulant/e66e9ad23e2572757ca710cd0865b0d0

Great catch, and great report, too! This behaviour can definitely be explained by the current implementation. After a few rounds of dependency resolution, some package version (in this case ampq 2.x) may indeed include some extra packages (in this case vine). Then after some more rounds, it may turn out ampq 2.x cannot satisfy the dependencies, but 1.x can, so it "drops down". This action should then also remove vine from the dependencies again of course, but this is not checked in the current implementation.
The proper way to implement this is probably to trace all dependencies back to all the instances that referred to it. So that, as soon as we remove ampq==2.0.2 from the graph, the vine package becomes unreachable and gets dropped, too.
The explanation for why it works the second time is that it's not run with the --upgrade option, which would re-hit PyPI to get the latest versions. If you omit an explicit --upgrade, the normal behaviour is to only add/remove lines but not touch versions (unless we have to). The way it achieves this is by pretending that the existing requirements.txt is the "first PyPI" server it checks. By that time, it concludes that there's only ampq==1.4.9, and as such the vine dependency is unused and thus removed. Two ways to replicate the initial behaviour would be to either: (1) edit the requirements.txt manually to point ampq to 2.0.2 and then re-run pip-compile. This will bump the version down again, but you'll note the vine dep is not removed; or (2) call pip-compile --upgrade.
So yes, this is a bug, and I welcome a PR for it for anyone that wants to give it a try.


docs: adjusted CONTRIBUTING

Description
Adjusted Contributing to

use new branch scheme, e.g., fix/234/short-description-of-fix
removed staging. we will now use only main

@JeremyTheocharis docker hub seems stuck.


try to fix backgroud issue on the logos in the installer

added icon file

Icon Setup works. But installer images not fixed.

test all three valves for WizardImageAlphaFormat but nothing works.
@jakoch what i´m doing wrong?

Merged fife.ico support: https://github.com/fifengine/fife-windows-sdk/commit/89805e8c20d30342d0329ab08e5be74f9a7659eb


Add asr packages to melodic distro docu index

Adding all ASR packages (documented here: http://wiki.ros.org/asr) which are currently in the docu index for kinetic to melodic
Removing asr_approx_mvbb from kinetic docu index since it is no longer in a public repo

Updated PR due to requested changes


#8 Completed (fix)

@rultor merge

@rultor merge

@driver733 OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@driver733 Done! FYI, the full log is here (took me 4min)

Changes Unknown when pulling b3effdbedbf9b2447b3668324977eb36a8da40b8 on #8 into ** on master**.


Custom asset files don't unload when restarting

Describe the bug
When adding custom units, you used to be able to make small changes in, for example the .object file, reload the editor by clicking "restart game" and the changes would take effect right away. This doesn't seem to work anymore and you have to relaunch the whole game for the changed files to load.
When restarting the level or going back to the main menu and load back into the editor, the old file is still loaded even when you swap it out entirely.
Steps to reproduce the issue
units.zip
<add unload_on_restart="true"> 		<unit path="units/pd2_mod_hot/test"/> 		<object path="units/pd2_mod_hot/test" /> 		<model path="units/pd2_mod_hot/test"/> 		<texture path="units/pd2_mod_hot/gov_c_int_marble_c_white_df"/> 		<material_config path="units/pd2_mod_hot/test"/> 	</add>

Add attached custom unit to a level.
Load into level and spawn the unit.
Alt-tab out of the game and change something in the files (e.g. rename the material in the test.material_config).
Switch back to the game and restart the editor by clicking on "restart game" or go to main menu and back in the level.
The unit doesn't change.
Relaunch the game and load back into the level.
Custom unit should have a missing material now.

Generally best way to report these issues is to provide a project, so I can go straight to the issue. does adding reload="true" work?

Another Fucking Test Project.zip
here's test project with the custom asset set up
reload="true" did not work, neither did unload="true", but the wiki says that is true by default anyway.


About loading CLIPScore and BLIPScore

Hi,
Is it correct to load the CLIPScore and BLIPScore to reproduce the results in your paper? Check the below codes.
# load BLIPScore
blipscore = RM.load_score("BLIP")
blipscore.score(prompt, image_file_dir)

# load CLIPScore
clipscore = RM.load_score("CLIP")
clipscore.score(prompt, image_file_dir)

# load ImageReward
image_reward = RM.load("ImageReward-v1.0")
image_reward.score(prompt, image_file_dir)

Best,

You can refer to test.py


Configuring multiple years

How could we go about configuring for multiple years? I have all years in a single repo and would love to show status of each year.

First of all thanks a lot for checking out the action and giving feedback.
It was really just a small project to get to know github actions and spice up my aoc repo a bit.
So great to see people from the other side of the world using it 😄👍
For now you could just have the aoc badges action multiple times (once for each year) and have slightly different badges for each year with a custom regex (use starsRegex and daysCompletedRegex inputs).
The day badge probably doesn't makes sense for multiple years as it only depends on the current date (and therefore only works in December).
Also make sure to set the leader board url to the leader board of the proper year using the optional leaderboard import.
It would make sense to add an additional year input to make that stuff easier. But I'll probably won't work on this before next aoc as this really is a December project.  I might then also tweak some other stuff to make it easier to use.
If you have some more questions feel free or an example feel free to ask.