Getting Error while running Queries on SQL LAB for MSSQL

A clear and concise description of what the bug is.
How to reproduce the bug

Enable MSSQL DataSource.
Run Query on SQL LAB
Create Charts

Expected results
Should able to run query
what you expected to happen.
Should able to run query via SQL Lab
Actual results
For Point 2 : Run Query on SQL LAB
I am getting this error : '_AppCtxGlobals' object has no attribute 'user'
For Point 3: If we create charts directly via Charts tab it's working fine
Screenshots
If applicable, add screenshots to help explain your problem.
Environment
(please complete the following information):

browser type and version:
superset version:  1.1.0
python version: python --version 3.7.9
node.js version: node -v
any feature flags active:

Checklist
Make sure to follow these steps before submitting your issue - thank you!

[x] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[ ] I have reproduced the issue with at least the latest released version of superset.
[x] I have checked the issue tracker for the same issue and I haven't found one similar.

Additional context
Add any other context about the problem here.

Does this issue persist for you?  I am able to run queries in SQL Lab on a SQL Server data source, in versions 2.0.0 and 2.0.1.

Closing as resolved, but if you still face this in the versions mentioned by @sfirke, we can revisit the discussion. Thanks!


GO load filtering

Could we get  a copy of (or a link to) the code that is used for PomBase  GO filtering for the GO consortium?

Could we get a copy of (or a link to) the code that is used for PomBase GO filtering for the GO consortium?

It's here: https://github.com/pombase/pombase-chado/blob/master/lib/PomBase/Chado/GOFilter.pm
I'm not sure it's going to be helpful to anyone as it's very Chado and somewhat pombe specific.  Would a description of the algorithm be more useful?

Yes the algorithm description would be much better. I think you actually provided this once before for Chris many moons ago when GO were thinking about filtering.

Yes the algorithm description would be much better.

Sorry for the slow reply.  Here's the overview of the algorith:

We have a priority list of evidence codes:
inferred from biological aspect of descendant
inferred from biological aspect of ancestor
inferred from reviewed computational analysis
inferred from electronic annotation
inferred from expression pattern
non-traceable author statement
traceable author statement
inferred from sequence model
inferred from sequence or structural similarity
inferred from sequence orthology
inferred by curator

Annotations with evidence codes at the bottom are kept in preference to those nearer the top of the list.

we iterate through the evidence codes above in order then:

for each annotation with that evidence code, delete the annotation if there is another annotation for the same gene with:

a more specific term
or same term but a different evidence code

if there are duplicate annotations (same term and gene) with that evidence code, delete all but one

Also the list is configurable and we intend to make the PAINT codes (IBA and IBD?)
primary codes once we are happy that the QC is completed.
And now I can't remember who asked for this. Tagging @cmungall
I guess we can close the ticket though.

Thanks, v useful.
Wow, you rank IEP over IBA. But this of course reflects pombase curation standards and presumably more conservative use of IEP than seen elsewhere
Yes, you can close the ticket, thanks

Well it isn't that we particularly trust IEP over IBA.  The only reason that I'm still reviewing PAINT annotations We implement this order at the moment is so that  we don't see any IBA which are covered by any other annotation. The ones we did not make ourselves already  are the only ones we need to check.  It is much easier for me to review the  3281 remaining  PAINT annotations rather than the total 15944. I thought we would have switched by now to give IBA the 'best status', but I'm still reporting quite a lot of errors:
57 open 493 closed
https://github.com/geneontology/go-annotation/issues?q=is%3Aopen+is%3Aissue+label%3A"PAINT+annotation"+author%3AValWood
But yes IEP is a crap evidence code, and we are phasing out its use completely, we only use it 18 times...

correction:
I thought we would have switched by now to give IBA the 'best non-experimental status (but above IEP)'


[Fix #3947] Fix Rails/FilePath for dstr calling Rails.root without path

Fix a false positive in Rails/FilePath cop for Rails.root without path in dstr.
Fixes #3947 and #3974 (duplicated).

[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number]
[x] Used the same coding conventions as the rest of the project.
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] All tests are passing.
[x] The new code doesn't generate RuboCop offenses.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.

"rm -rf #{Rails.root}/foo/bar"
I think the cop should add an offense for the above code, but this change makes to ignore the code.

How about something like "#{Rails.root.join('tmp', user.id, 'icon'')}.png"? I don't want this cop to accept the code.

"#{Rails.root.join('tmp', user.id, 'icon'')}.png"
I don't want this cop to accept the code.

What's wrong with this example?

I understand the cop is to recommend using Pathname#join for pathname construction, instead of string manipulation. I don't think concatenating extension, by string operation, to obtain a file name is good idea.

I took just a cursory look at this and I find it really odd we need another special matcher just for dstr nodes. Seems to me that makes the code even more convoluted than it currently is. I'd rather be applying the same matching rules to interpolated nodes as other nodes.

@bbatsov sorry, I didn't write this code, this comes from #3977. That's why I also added @jspanjers to the CHANGELOG. The only thing I did was to add more tests, as requested by you here.

I guess I forgot this. Well, the tests I fine, but I really dislike this approach, so I'd rather us come up with something else to solve the bug.

Just to be clear - there's nothing special about interpolated code, so it shouldn't be treated differently IMO.

@bbatsov any news on this one?
Cheers.

Well, nothing really changed - as I mentioned I think this approach is wrong and it has to be changed with something simpler and generic.

@bbatsov can you please let me know how you want it to be, so I can update it? Thanks.

@bbatsov?

As mentioned before:

I took just a cursory look at this and I find it really odd we need another special matcher just for dstr nodes. Seems to me that makes the code even more convoluted than it currently is. I'd rather be applying the same matching rules to interpolated nodes as other nodes.

Basically there's nothing special about the target code being interpolated, so I don't understand why this approach was chosen to solve the problem.


spwn: support multipart events

Will close #5
Multipart events will have stream qualities named according the the SPWN API part name (day1_144p, ..., day1_1080p, day2_144p, ..., day2_1080p, ...)

If a video ID/part has no available streams (because it hasn't started or the VOD streaming period ended), that part won't have any listed stream qualities

Streams are weighted using streamlink's default handling - by stream resolution and then listed order

best will apply to the best quality of the last video ID (which should be equivalent to preferring live streams over VODs assuming SPWN's API is sane and always sorts/names video IDs in chronological order)
worst will apply to the worst quality of the first video ID (which will be the oldest VOD - this isn't ideal but dealing with stream weights in streamlink is a pain since Plugin.stream_weight only works off of the string stream name)
This should be good enough for most users that will generally be using best to get the current live stream or day<n>_1080p for VODs

Deprecates #4 (--spwn-video-id option is still supported, but plugin will give a warning suggesting to just use the stream quality name instead)

When specifying a video ID, only streams for that ID will be returned

example output (assuming streams for fes day2 actually existed):
$ streamlink https://spwn.jp/events/22031901-jphololive3rdfes
[session][info] Resolved plugin spwn with deprecated can_handle_url API
[cli][info] Found matching plugin spwn for URL https://spwn.jp/events/22031901-jphololive3rdfes
[plugins.spwn][info] Logged into SPWN as xxx
[plugins.spwn][info] Found SPWN event: hololive 3rd fes. Link Your Wish Supported By ヴァイスシュヴァルツ
[plugins.spwn][info] Multi-part event: DAY1 (Vi22031901-jphololive3rdfesC1v1)
[plugins.spwn][info] Multi-part event: DAY2 (Vi22031901-jphololive3rdfesC2v1)
[cli][info] Available streams: day1_144p (worst), day2_144p, day1_240p, day2_240p, day1_360p, day2_360p, day1_480p, day2_480p, day1_720p, day2_720p, day1_1080p, day2_1080p (best)


Docs and sample for combined OIDC and JWT authentication

There don't seem to be any docs and samples that show how to combine Azure AD OIDC and JWT authentication in the same site.
You can call AddAzureAD() and AddAzureADBearer(), but you have to deduce that on your own, and it's not clear if order matters. Then, once you have both, strategies for using Authorize on API controllers vs view controllers should be discussed.
Current SPA guidance also discusses using cookie auth for API calls if the auth cookie is same-site. This should be in the docs too.
It would probably be useful to consider both "standard" OIDC and JWT in addition to the AAD/B2C-specific versions.

Thank you for contacting us. Due to a lack of activity on this discussion issue we're closing it in an effort to keep our backlog manageable. If you believe there is a concern which hasn't been addressed, please file a new issue.


Validation for a unique constraint/index on a "text" field is bugged

Pocketbase version: 0.21.1
The collection schema:
{
        "id": "33k8eew6vs8xu2o",
        "name": "words",
        "type": "base",
        "system": false,
        "schema": [
            {
                "system": false,
                "id": "ielji3mk",
                "name": "word",
                "type": "text",
                "required": true,
                "presentable": false,
                "unique": false,
                "options": {
                    "min": 5,
                    "max": 5,
                    "pattern": ""
                }
            },
            {
                "system": false,
                "id": "aznshfgs",
                "name": "number_id",
                "type": "number",
                "required": true,
                "presentable": false,
                "unique": false,
                "options": {
                    "min": null,
                    "max": null,
                    "noDecimal": true
                }
            }
        ],
        "indexes": [
            "CREATE UNIQUE INDEX `idx_x6YKA9s` ON `words` (\n  `word`,\n  `number_id`\n)"
        ],
        "listRule": "",
        "viewRule": "",
        "createRule": null,
        "updateRule": "",
        "deleteRule": null,
        "options": {}
    }

It will not throw an error if the "word" field is not unique and just creates the record:

It works on the number_id field, and if the number_id value is not unique, it will also error on the "word" field

Trying to set a unique index only on the "word" will result in an error:

But it works if it's on both of the "number_id" and "word" fields, but will only show a count of 1:

It is not "bugged" and it works as intended.
Having a combined fields unique index require the combined value of your fields to be unique (aka. tests + 1 and tests + 2).
Having a single field unique index requires only the specific field to be unique and in your case it fails because you already have duplicated "tests" value for the "word" field.

It is not "bugged" and it works as intended.
Having a combined fields unique index require the combined value of your fields to be unique (aka. tests + 1 and tests + 2). Having a single field unique index requires only the specific field to be unique and in your case it fails because you already have duplicated tests value for the word field.

Sorry for wasting your time, I wasn't aware of combined unique indexes 🙏


Add BioDrop

We need to add BioDrop under 'Beginner-Friendly Repositories'.
Details:
Name: BioDrop
Link: https://github.com/EddieHubCommunity/BioDrop

Hi @Sriparno08 , can I contribute to this issue? Thanks in advance.


Slow OGG Decoder

The ogg decoder right now is very slow and inefficient and will freeze for a millisecond every time it loops.

Fixed on #8


Timestamp as version on SNAPSHOTs

To follow SemVer2.
While uploading to Artifactory repo it is impossible to override already deployed version - hence need to follow maven approach. Once SNAPSHOT - replace "SNAPSHOT" with timestamp.

locally tests failed => Fixing InitMojoTest class.

@fabian-schlegel please take a look.


Change timing to use steady_clock

Linux
Not sure if it adds elo to the current strength branch, but sure seems to add elo to the qsearch branch? Didn't test fully. We can assume it's 0 elo.
Windows
+inf elo. Basically this unbreaks windows builds. It would be very helpful to have this, since it would allow to test further changes ~10 times faster and avoid nonsense like spending hours figuring out what's happening in qsearch testing.
If running really dry on bytes, could revert back to clock(), but while the engine is being worked on it's nice to have.
Size
3528 --> 3560
+32

By not having easy access to a Windows machine, I can't really confirm this one - though I'm happy to take your word for it. I am cautious about relying on chrono however. Perhaps this would be nicer?
#include <ctime>

[[nodiscard]] static auto now() {
    timespec t;
    clock_gettime(CLOCK_MONOTONIC, &t);
    return t.tv_sec * 1000 + t.tv_nsec / 1000000;
}

Personally I'd probably put this in a header file within src/engine. If you can test it for accuracy and size, I'd gladly merge it. Thanks.

Using the code in my previous comment, it looks like it might actually be a slight elo gainer in exchange for 51 bytes.
Score of 4ku-comment vs 4ku-strength: 79 - 44 - 277  [0.544] 400
...      4ku-comment playing White: 35 - 24 - 141  [0.527] 200
...      4ku-comment playing Black: 44 - 20 - 136  [0.560] 200
...      White vs Black: 55 - 68 - 277  [0.484] 400
Elo difference: 30.5 +/- 18.8, LOS: 99.9 %, DrawRatio: 69.3 %

The PR is a few bytes larger on my machine, but also seems to test stronger.
Score of 4ku-pr vs 4ku-strong: 91 - 39 - 270  [0.565] 400
...      4ku-pr playing White: 42 - 20 - 138  [0.555] 200
...      4ku-pr playing Black: 49 - 19 - 132  [0.575] 200
...      White vs Black: 61 - 69 - 270  [0.490] 400
Elo difference: 45.4 +/- 19.2, LOS: 100.0 %, DrawRatio: 67.5 %

Just out of curiosity I put them in a head to head I got the following.
Score of 4ku-comment vs 4ku-pr: 69 - 56 - 275  [0.516] 400
...      4ku-comment playing White: 30 - 30 - 140  [0.500] 200
...      4ku-comment playing Black: 39 - 26 - 135  [0.532] 200
...      White vs Black: 56 - 69 - 275  [0.484] 400
Elo difference: 11.3 +/- 19.0, LOS: 87.8 %, DrawRatio: 68.8 %

Looks good, thanks.


Automatically generate tsconfig paths based on svelte config aliases

Describe the problem
Now to setup a custom alias we have to put it in both tsconfig.json and svelte.config.js (according to FAQ). This is an extra hassle and unnecessary duplication of the same logic.
Describe the proposed solution
Since tsconfig.json already extends .svelte-kit/tsconfig.json which is create by svelte kit, I propose to generate typescript paths based on vite aliases provided by svelte.config.js.
So, user writes:
import { resolve } from "path";

const config = {
  ...
  kit: {
    ...
    vite: () => ({
      resolve: {
        alias: {
          $components: resolve("./src/components")
        },
      },
    }),
  },
};

And the following is generated in .svelte-kit/tsconfig.json:
{
  "compilerOptions": {
    "paths": {
      "$lib": ["src/lib"], //These are already in place
      "$lib/*": ["src/lib/*"],
      "$components": ["src/components"], //These are generated
      "$components/*": ["src/components/*"],
    }
  }
}

Alternatives considered
Right now, not only you have to specify your alias twice, but also forced to override $lib alias in your tsconfig.json since paths don't merge (otherwise you get a compiler warning).
tsconfig.json:
{
  "extends": "./.svelte-kit/tsconfig.json",
  "compilerOptions": {
    "paths": {
      "$lib": ["src/lib"], //We are forced to write these, despite already heaving them in .svelte-kit/tsconfig.json
      "$lib/*": ["src/lib/*"],
      "$components": ["src/components"],
      "$components/*": ["src/components/*"],
    }
  }
}

Importance
would make my life easier
Additional Information
No response

Oh. I did not realize there is already an issue for this. So, this is closed in favor of https://github.com/sveltejs/kit/issues/4734.


Log rotation

Hi,
It would be great to have logrotate preconfigured, since /var/lib/ghost/content/logs folder is ever-growing. That cause issues when deploying to k8s, since pod would eventually crash:
[ghost-56f4c644f9-gps8f ghost]  [2021-11-24 15:46:52] INFO Ghost server started in 0.512s
[ghost-56f4c644f9-gps8f ghost]  events.js:377
[ghost-56f4c644f9-gps8f ghost]        throw er; // Unhandled 'error' event
[ghost-56f4c644f9-gps8f ghost]        ^
[ghost-56f4c644f9-gps8f ghost]
[ghost-56f4c644f9-gps8f ghost]  Error: ENOSPC: no space left on device, write
[ghost-56f4c644f9-gps8f ghost]  Emitted 'error' event on Logger instance at:
[ghost-56f4c644f9-gps8f ghost]      at WriteStream.onStreamError (/var/lib/ghost/versions/4.20.3/node_modules/bunyan/lib/bunyan.js:627:18)
[ghost-56f4c644f9-gps8f ghost]      at WriteStream.emit (events.js:400:28)
[ghost-56f4c644f9-gps8f ghost]      at emitErrorNT (internal/streams/destroy.js:106:8)
[ghost-56f4c644f9-gps8f ghost]      at emitErrorCloseNT (internal/streams/destroy.js:74:3)
[ghost-56f4c644f9-gps8f ghost]      at processTicksAndRejections (internal/process/task_queues.js:82:21) {
[ghost-56f4c644f9-gps8f ghost]    errno: -28,
[ghost-56f4c644f9-gps8f ghost]    code: 'ENOSPC',
[ghost-56f4c644f9-gps8f ghost]    syscall: 'write'
[ghost-56f4c644f9-gps8f ghost]  }

I'm a bit confused -- from what I read in https://ghost.org/docs/config/#logging, log rotation should be already enabled by default?  Did you customize the logging configuration?

That's the thing — I have not, so it should work. However, the actual outcome was a single file of 3.4G that eaten up volume space.

By default Ghost keeps 10 log files and rotates every day. Rotation is enabled by default in production and disabled in development.

contrary to the default mentioned in the linked documentation, this image defaults to NODE_ENV=production (so development mode needs to be explicitly specified if desired)

apiVersion: apps/v1
kind: Deployment
metadata:
  name: ghost
  labels:
    app: ghost
    k10/injectKanisterSidecar: "true"
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ghost
      tier: web
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: ghost
        tier: web
    spec:
      containers:
        - name: ghost
          # https://github.com/TryGhost/Ghost/releases
          # https://hub.docker.com/_/ghost
          image: ghost:4.20.3
          ports:
            - containerPort: 2368
          env:
            - name: url
              value: https://site.com/blog/
            - name: database__client
              value: mysql
            - name: database__connection__host
              value: ghost-mariadb
            - name: database__connection__user
              value: root
            - name: database__connection__password
              valueFrom:
                secretKeyRef:
                  name: ghost-mariadb
                  key: root-password
            - name: database__connection__database
              value: ghost
            - name: mail__transport
              value: "SMTP"
            - name: mail__options__host
              value: "smtp.sendgrid.net"
            - name: mail__options__port
              value: "587"
            - name: mail__options__auth__user
              value: "apikey"
            - name: mail__options__auth__pass
              valueFrom:
                secretKeyRef:
                  name: sendgrid
                  key: ghost-api-key
          volumeMounts:
            - mountPath: /var/lib/ghost/content
              name: ghost-content
      volumes:
        - name: ghost-content
          persistentVolumeClaim:
            claimName: ghost-content

Yeah, I posted about this a while back on the Ghost forums. Ghost's default configuration is definitely broken, even on a local install.
If you want to fix this temporarily, you can see how I fixed it here:
Save Disk Space By Setting Up Logrotate with Your Ghost Blog
Currently, I'm busy, but I can look into patching this myself in the image later.

This is managed by the config file when you start ghost. Per example - https://github.com/firepress-org/ghostfire/blob/master/config.production.json#L25


Feature request: nested hash maps declaration (collections)

Hello,
while it seems the VM is already supporting nesting the collections by storing them in different variables (as far as I understand from C++ code it works because variables could be stored as references):
// it works
var a = {"test1": 1, "test2": 4};
var b = {"test2" : 2};
var c = {"test4": 54};

b.test3 = a;
b.test3.test4 = c;
print(b.test3.test4.test4);

it's not possible to declare nested hash maps with 1 variable:
// it doesn't work (feature request)
var a = {"test1": {"test2" : 1}};

And also it's not possible to assign another collection to a key of existing collection:
// it doesn't work (feature request)
var a = {"test1" : 1};
a.test2 = {"test3" : 2};

hmm... yeah I can do this the first is easy but the second will be more of a challenge.

Hi there @jingoro2112 ,
I want to achieve the next functionality,  but it seems there is no such a strait forward solution for that:
var table = {};
table["a"] = 100;
table["b"] = 1200;
table["c"] = 10;

Can you give me some advice on how to do that?

I am actually working on the hash/array parsing right now. This does work
but you need to declare table as a hash, not an array:
var table = {:};  // note ':' making this a hash table
table["a"] = 100;
table["b"] = 1200;
table["c"] = 10;
println( table["a"], " ",table["b"], " ",table["c"], " " );
produces the output:
./wrench r test.c100 1200 10
Without the colon you declared 'table' as an array. I definitely need
to make this more clear in the future, any suggestions are welcome!
On Fri, Jun 7, 2024 at 12:49 PM Max @.***> wrote:

Hi there @jingoro2112 https://github.com/jingoro2112 ,
I want to achieve the next functionality, but it seems there is no such a
strait forward solution for that:
var table = {};
table["a"] = 100;
table["b"] = 1200;
table["c"] = 10;
Can you give me some advice on how to do that?
—
Reply to this email directly, view it on GitHub
https://github.com/jingoro2112/wrench/issues/22#issuecomment-2155192542,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AALIKA3RPTVR5TGZO62ITDDZGHQDJAVCNFSM6AAAAABISWUYNCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJVGE4TENJUGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

Thx! Now it's more clear. Adding such examples to your website will help to avoid such issues in the future.
Another thing that I am working on now is testing scripts.
The import feature is really helpful on it, but it's a lot of work that could be done in that field for me.

One more off-topic thing. What IDE do you use for your development?

I totally agree that documentation and examples could be better. I'm sort
of hoping as wrench gets more use I'll visit more and more parts of it for
polish. Keep in mind as much as I take pride in fixing bugs quickly and
having clean code, it's just me and this is not my dayjob :)
For code-editing I use epsilon (https://www.lugaru.com/), but for general
development and debugging I use Visual Studio, currently 2022.
-Curt
On Fri, Jun 7, 2024 at 1:51 PM Max @.***> wrote:

One more off-topic thing. What IDE do you use for your development?
—
Reply to this email directly, view it on GitHub
https://github.com/jingoro2112/wrench/issues/22#issuecomment-2155271620,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AALIKA5IA6KQVPZYA5EEOZ3ZGHXJNAVCNFSM6AAAAABISWUYNCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJVGI3TCNRSGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

This has been completed in version 5.0.1

Just replying in thread for anyone interested.. the current release 5.0.1
has all feature-requests (nested declaration etc) completed.
-Curt
On Fri, Jun 7, 2024 at 2:44 PM Curt Hartung @.***> wrote:

I totally agree that documentation and examples could be better. I'm sort
of hoping as wrench gets more use I'll visit more and more parts of it for
polish. Keep in mind as much as I take pride in fixing bugs quickly and
having clean code, it's just me and this is not my dayjob :)
For code-editing I use epsilon (https://www.lugaru.com/), but for general
development and debugging I use Visual Studio, currently 2022.
-Curt
On Fri, Jun 7, 2024 at 1:51 PM Max @.***> wrote:

One more off-topic thing. What IDE do you use for your development?
—
Reply to this email directly, view it on GitHub
https://github.com/jingoro2112/wrench/issues/22#issuecomment-2155271620,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AALIKA5IA6KQVPZYA5EEOZ3ZGHXJNAVCNFSM6AAAAABISWUYNCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJVGI3TCNRSGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Curt, thank you for all your efforts! We will try everything out soon together with Max.
We have also successfully compiled wrench in Emscripten and will try to embed this library into our backend code. Later we can share details if that will be interesting for anybody.
We also tried to create a syntax highlighting plugin for VSCode. It's very basic currently and not everything is working. But if we will manage to have something working good, we will share it.


SwaggerWcfParameter Required does not work

using [SwaggerWcfParameter(Required = false)] on method parameter does not change required value to false in generated json

+1

It appears that you have to provide a default value for the parameter in your method signature; otherwise it is deemed to be required.

Yes, without a default value WCF forces the parameter as required
Swagger JSON must describe correctly the WCF endpoint


No task for cov-build command

Hi,
I noticed that you dont have a task for cov-build command which is to be run before the emmit command. Please give me more information about this.

cov-build is a wrapper for whatever your normal build command is.  It does some magic to listen in on your build and automatically does cov-emit and cov-analyze.  The point of this plugin is to act as a substitute for cov-build, not to support it.

 I tried the cov-emit command by mentioning the location of jar files but it does not find them.
C02RT2U3G8WP:sat-starter-service anushakokkula$ cov-emit-java --classpath build --findsource src --findjars build/libs --dir ~/coverity-build
Coverity Java Emit version 8.1.0 on Darwin 15.4.0 x86_64
Internal version numbers: 5511032c07 p-jasper1-push-24789.298.98
ERROR: Compiler outputs are missing. If this is intentional specify --no-compiler-outputs
C02RT2U3G8WP:sat-starter-service anushakokkula$ ls build/libs/
sat-starter-service-null.jar		sat-starter-service-null.jar.original
C02RT2U3G8WP:sat-starter-service anushakokkula$
Can you please suggest.
Thanks,
Anusha

This plugin runs cov-emit against Gradle projects, you don't run it manually.
I am not offering Coverity support.  Please reach out to Coverity support, stackoverflow, etc.


[T6A3][T10-C2] KelvinNg

@kelvinnpc Some comments added. Please close the PR after reading comments.


Remix logs unusable from 500-item JSON object logged by performance.checker.ts

In Remix apps the console log of the repeated 500-item JSON object logged by performance.checker.ts is put into the server logs, rendering them unusable (since console.clear() does nothing there) filling up over 10,000 lines in every page load.
    '480': '480',
    '481': '481',
    '482': '482',
    '483': '483',
    '484': '484',
    '485': '485',
    '486': '486',
    '487': '487',
    '488': '488',
    '489': '489',
    '490': '490',
    '491': '491',
    '492': '492',
    '493': '493',
    '494': '494',
    '495': '495',
    '496': '496',
    '497': '497',
    '498': '498',
    '499': '499'

etc, looping over and over.
I have not been able to fix this by overriding devtoolsDetector.launch() as advised in another issue (of console clearing). That solution did not work. Is there a way to add an option to devtools-detector to disable this performance.checker.ts logging?

This is Remix: https://github.com/remix-run/remix/discussions/4599
For a reproducible demo, run:
npx create-remix@latest --template remix-run/indie-stack blog-tutorial
Then, to run the app:
npm run dev
Confirm that the logs look good. Then stop the server, run npm i devtools-detector, and then import it anywhere in the project. Bam, your logs will be full of 20,000 lines of JSON object from performance.checker.ts on every request.

Maybe fixed, Please try install<EMAIL_ADDRESS>

Looks like that fixed it! Thank you so much AEPKILL!


Add yank reason to release history page

Adds the yank reason to the release history page.
Notes:

I'm happy to change the text colour to blue instead of red, but I thought the red matches the callout on the release page.
I've added the existing @include ellipsis; to ensure the yank reason is always restricted to one line.
As mentioned in the issue, the full (possibly multi-line) reason is on the release page for those who want to see it.
I've included  Reason this release was yanked: with the screen reader-only class, because it's obvious looking at the release box, but a screenreader might need some context.

Closes #9837

Yanked reason styling updated.

@cofiem Thanks for working through this! I manually purged one example page to confirm, and it looks good: https://pypi.org/project/Red-DiscordBot/#history
The rest of pages should naturally expire from cache in a day, or as they yank/unyank their HTML will be refreshed.


Using cartopy projections sometimes results in garbled plots

🐛 Bug Report

I'm very grateful for geovista supporting cartopy projections, but the interface seems to contain a few bugs :smiley:
One bug leads to the data not displayed correctly for some values of the central_longitude parameter in the Plate Carree projection. For example, the plot looks OK for central_longitude=0 or 90 or 180, but not for 45, 135, etc. (see screenshots below). This is likely related to the arcsin issue, because I sometimes see that error too.
I also noticed that some of the projections are not displayed correctly, such as Mercator.
How to Reproduce

Click to expand this section...
Data source: LFRic C48 simulation.
import cartopy.crs as ccrs
import geovista as gv
import iris
from geovista.pantry import capitalise
from iris.experimental.ugrid import PARSE_UGRID_ON_LOAD

fname = "lfric_diag.nc"
with PARSE_UGRID_ON_LOAD.context():
    my_cube = iris.util.squeeze(iris.load_cube(fname, "toa_upward_longwave_flux"))
face_node = my_cube.mesh.face_node_connectivity
lons, lats = my_cube.mesh.node_coords
indices = face_node.indices_by_location()
mesh0 = gv.Transform.from_unstructured(
    lons.points,
    lats.points,
    indices,
    data=my_cube.data,
    start_index=face_node.start_index,
)

file_prefix = __file__.lower().replace(".py", "")

# Point no. 1: central longitude causes the mesh to display incorrectly
for cen_lon in [0, 45, 90, 135, 180]:
    mesh = mesh0.copy()
    plotter = gv.GeoPlotter(
        off_screen=True, crs=ccrs.PlateCarree(central_longitude=cen_lon), border=True
    )
    sargs = dict(title=f"{capitalise(my_cube.name())} / {my_cube.units}")
    plotter.add_title(f"LFRic C48\nPlateCarree(central_longitude={cen_lon})")
    plotter.add_mesh(
        mesh, cmap="thermal", show_edges=True, edge_color="grey", scalar_bar_args=sargs
    )
    # plotter.add_base_layer(texture=gv.natural_earth_1())
    # plotter.add_coastlines(resolution="10m", color="white")
    plotter.view_xy()
    # plotter.add_axes()
    plotter.camera.zoom(1.5)
    plotter.show(screenshot=f"{file_prefix}__platecarree_cen_lon{cen_lon}.png")

Expected Behaviour

Robust and valid plots.
Screenshots

Point no. 1: central longitude causes the mesh to display incorrectly

Environment

OS & Version: Ubuntu 22.04.1 LTS 64-bit
GeoVista Version: 0.1a1.dev460

@dennissergeev Thanks for raising this :+1:
There's some technical debt that I need to service which I think is related to this issue. Basically for geovista to take a different more robust approach to supporting projections prior to ripping the unstructured mesh.

@dennissergeev Just to let you know that I've been making good progress on this issue and essentially resolved the problem of cells smearing across the projection when ripped...

I've been stress testing the basic geovista projection support with more complex mesh geometries and uncovered a few other interesting cases where this can occur. So I'm going to tackle those also, then I'll update you here went you can pick up the changes and test at your end i.e., this fix isn't available just yet.
Additionally, I want to revisit pole singularity handling as there is obvious incorrect behaviour that requires to be flushed out... but once that's done, this would be a reasonable first stable step forwards.
Noted about Mercator support 👍 I'll create a separate issue for that. Over time the projection support will become more mature (gotta start somewhere 😉)... but in this particular case for Mercator I specifically require to honour max_latitude and min_latitude.
BTW It would be really great to know the basic projections that you tend to use for your workflow. This'll help me prioritise effort on those projections first, ensuring that they're feature complete and with most wrinkles ironed-out - flushing these out just needs mileage, so keep reporting issues to me when you find them. Much appreciated 🤩🍻

... more like Spilhaus World Ocean, no?

Hey @dennissergeev,
I've pushed up c90b2baa686b9c2dc54721eaf4f8475ff9470052 which should address your issue.
So any dev version of geovista north of 0.1a1.dev518+dirty should have more stable behaviour.
Give it a try on your side and let me know. Once you're happy I'll close this issue :+1:

Hey @bjlittle,
Thanks very much, it now works for me too! :+1:

@dennissergeev Awesome, thanks for confirming! :beers:

@all-contributors please add @dennissergeev for bug

Much appreciated @bjlittle !!


Pulse class misses attribute use_lookup, which is necessary for usage in the Gates class.

Problem:
At the moment, some pulses have the attribute "use_lookup", which tells the integrator to use the lookup table or perform numerical integration. The Pulse class does not have this attribute.
Solution:
Either we get rid of the attribute and use another method to determine which type of integration we use, or we add the attribute to the Pulse class as well.
Note: This is mainly a design choice.

Implemented on the interfaces branch, will be part of the next pull request.


Yatin: Watch may589228(?:@gmail.com)?

Yatin requests the watch of the watch_keyword may589228(?:@gmail\.com)?. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

may589228(?:@gmail\.com)? has been seen in 1 true positive, 0 false positives, and 0 NAAs.


Fix LL-LanguagesGenderData.json to include languages with one gender being empty

Hello @felixknds ,
Do you think you could look at this issue some days before Wikimania ?

LanguagesGallery secret preview > search Esperanto : missing data for Esperanto.
./data/LL-LanguagesGenderData.json : 100 languages > no presence of Q25 (Esperanto)
./data/LL-LanguagesSpeakersData.json : 210 languages  > presence of Q25 (Esperanto)

    "iso": "epo",
    "wikidata": "Q143",
    "language": "Q25",
    "records": "33842",
    "speakers": "18",
    "speakersMales": "17",
    "speakersFemales": "0",
    "speakersOthers": "1"
  },

Le breton est dans le meme cas :
  {
    "iso": "bre",
    "wikidata": "Q12107",
    "language": "Q209",
    "records": "1391",
    "speakers": "5",
    "speakersMales": "4",
    "speakersFemales": "0",
    "speakersOthers": "1"
  },

UI
I do a speakersFemales+speakersOthers in the UI for now, so the 1 in Gender split actually means 0 (females) + 1 (others)

Faulty sparql
I suspect this SPARQL excludes any language where either males or females equal 0, so only 100 languages are returned.

./sparql/LL-LanguagesGenderData.sparql

LLQS

https://lingualibre.org/bigdata/#query - for tests

@felixknds Still some weirdities.
Esperanto has a male speaker with 29k recordings, but all recordings show as recordingsOthers.

After observation...
It seems that somehow, whenever recordsFemale is null, all recordsMale are counted as recordsOthers.

So, it seems as though OPTIONAL { INCLUDE %females } does not quite do what I thought it would do, so I moved the OPTIONAL clause into the subqueries instead of the outer query.

languageLabel
wikidata
iso
records
recordsMale
recordsFemale
recordsOthers

Breton
Q12107
bre
1391
1350
0
41

Esperanto
Q143
epo
33842
29917
0
3925

Gascon
Q35735
gsc
4887
4887
0
0

It's working ! Thank you so much @felixknds 🌹🌻🌼😍

https://hugolpz.github.io/LanguagesGallery/


Warning: componentWillMount, componentWillReceiveProps (React 16.x)

I'm on React 16.12, and seeing the following warning
Warning: componentWillMount has been renamed, and is not recommended for use. See https://fb.me/react-unsafe-component-lifecycles for details.

      * Move code with side effects to componentDidMount, and set initial state in the constructor.
      * Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 17.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.

      Please update the following components: styled.div, styled.img

(also a similar warning for componentWillReceiveProps)
It's originating from styled-components, which still uses these lifecycle methods in v3: https://github.com/Secretmapper/react-image-annotation/blob/master/package.json#L24
Upgrading to v4/v5 should fix this for anyone using react-image-annotation in React 16.9+ projects. Eventually, in React 17 it simply will not work.

+1 also running into this problem. Are you open to receiving a PR to fix this?


How to build ruleset?

Otherwise, try building the ruleset from source code, maybe the prebuilt releases are lagging behind.

Originally posted by @Thesola10 in https://github.com/Artemis-chan/osu-DIVA/issues/38#issuecomment-932796518_
Im having the same issue,i followed what you said there
but im still confused on how to build the ruleset from source code,
maybe can you show me how?

you can follow this https://github.com/Artemis-chan/osu-DIVA#compilation

I followed the steps,and it worked,thanks!


Add config option to disable network egress for pods launched w/o a captcha solution

Proposed change

Add a config option to allow BinderHub administrators to turn off network egress for pods launched without a solution to a captcha.
We propose to add an optional parameter to launch requests which contains the solution to a captcha (proof of human-ness). When a valid solution is submitted the Pod is launched with network egress, if no valid solution is submitted the pod is launched without egress.
Allowing launch requests w/o a captcha means we don't break API users like thebe or juniper or people using the API. The hypothesis is that most of those using these tools do not require network egress. If they do we need to investigate if it is possible to obtain a solution to the mybinder.org captcha from a page hosted at example.com or the command line. After some research I am not sure what the answer is. A potential avenue might be https://www.hcaptcha.com/accessibility
Limiting the amount of disruption and abuse from miners is tricky to balance with keeping the service easy to use for legitimate users. Removing network egress seems like a good trade off, especially if we find a way for API users to obtain captcha solutions.
Alternative options

Some alternative ideas we have had:

Limiting launch requests based on source IP - difficult for courses and such who are behind a proxy so that all users appear to have the same IP
Requiring authentication to launch pods - removes a major benefit of mybinder.orgg which is "no signup, no nothing, just go"
Starting all pods without egress and allowing people to enable it by solving a captcha - would need some UI work inside the pods and unclear if kubernetes even allows us to do this
Using "proof of work" (POW) to launch a pod - if launching a new pod is delayed by 20s or so required to solve the POW challenge, that does not really deter abusers who want to use hours of CPU time but is a major slowdown for normal users.

Who would use this feature?

This would benefit operators of large BinderHubs as it reduces the amount of time and effort spent on detecting and blocking abuse. In turn this benefits the users of large BinderHubs because they don't have to share resources with abusers or live with more restrictive resource allocations aimed at making the BinderHub a less attractive target for abusers.
(Optional): Suggest a solution
Add a widget from a service like https://www.hcaptcha.com/ to our launch form and launch pages. Submit the solution with the launch request as an additional query parameter. Check the solution server side and make a decision on the Pod's network egress configuration.
This idea came out of a discussion with @choldgraf on the twitters (sometimes all the social media is a benefit to humanity after all ;) )

I think this is probably a good idea, though it wouldn't significantly deter abusers who are manually starting sessions to kick-off mining runs. Obviously hard to say for sure, but I suspect a significant fraction are doing by hand in a browser:

launch binder
open terminal
paste kick-off script
repeat

Adding a captcha click doesn't really impact that workflow. If more folks were scripting mining abuse, I'd expect the cluster to get absolutely crushed more often, since it would not be hard to do.

Starting all pods without egress and allowing people to enable it by solving a captcha - would need some UI work inside the pods and unclear if kubernetes even allows us to do this

network policies are evaluated based on immutable properties of pods like labels, so I think we'd have to implement a different mechanism like running our own egress proxy through which all egress traffic unconditionally goes, and then have some runtime check to allow/deny requests to go through. I'm not sure how feasible that is if we allow more than just http(s).

Adding a captcha click doesn't really impact that workflow.

That is a good point. I had assumed that people were scripting things. Though it seems like a few clicks isn't a big deal if you hope to mine for "hours". Almost quicker to click than write the script :-/
You think it is worth the effort to build this?
Running our own, dynamically configured egress proxy sounds like "start a whole new open-source project to create the tool we need" in terms of effort :-/

You think it is worth the effort to build this?

I honestly don't know! I think it's at least worth the time to investigate how hard it would be and what it might look like.

hmmmm - I had also assumed that people were scripting and automating things as well. If we assume people are doing this manually via the UI, could a more lightweight solution be to add a little UI window like "still there?" that requires people to click in order to continue, and if they don't click after N seconds it shuts their pod down? I feel like this pattern is used across many services already (looking at you Netflix) so it won't be unfamiliar to users. And maybe it will create enough annoyance for the miners to prevent their abuse.
The group of non-abusers that would be most negatively affected would be people that innocently want to run long-running jobs on mybinder.org, but I'd argue that is not a usecase we want to design for anyway

I had also assumed that people were scripting and automating things as well.

I definitely could be wrong. My hunch is that we'd see a lot more abuse than we do if more of it was automated. We've definitely seen some automation in the past (identifiable because it launched other binder sessions from within binder).
I think "are you still there" is interesting and could work if everyone were in jupyterlab. I don't know how to make it work for proxied applications, though - RStudio, voilá, X, where we don't have control over what's on the page.
I wouldn't worry about the coffee breaks because the existing idle culler is probably terminating those sessions anyway.

I feel like we should shoot for pareto principle here. What are the minimal steps we can take to deter 80% of the abusers? I don't have a good intuition for this, but it feels like the major question to figure out.
Also FWIW, I reached out to geoff at gitpod but haven't heard back yet.

To me it sounds like investigating/creating a small prototype to see how it would work with a captcha is worth it. It won't be perfect but it will make it harder for some and/or we learn something.
I think something like a "are you still using this?" popup inside the UI Is going to be more tricky and it is one of my personal pet peeves in terms of UX. Maybe an idea to discuss/shape in a new thread.
Yet another idea (also for a new thread, maybe even on https://github.com/jupyterhub/mybinder.org-deploy/) for dealing with miners: can we fingerprint the mining executables and use a blocklist of md5s(?) to kill Pods that contain/are running executables on that block list?

can we fingerprint the mining executables and use a blocklist of md5s(?)

In theory, yes. We'd need to implement locating the executables to hash them (not sure how tricky that is on a host system when dealing with containers). I've no idea how many or varied they are.

2. Requiring authentication to launch pods - removes a major benefit of mybinder.orgg which is "no signup, no nothing, just go"

Just to say here that this is REALLY appreciated, thanks binder team :) This is sadly not the norm in "open" science.

Is there an existing solution to completely disable pod egress ? Lot of HPCs are doing that and we would like to do that.

Completely disabling egress for user pods is easy using a K8s networkPolicy.For example mybinder.org already uses a network policy to restrict outgoing ports https://github.com/jupyterhub/mybinder.org-deploy/blob/3420f08c6c8664bb9f52b4b090af599e6bb6b540/mybinder/values.yaml#L46-L60
Restricting egress for selected user pods based on some condition is more complicated.


Support excerpt variable

Hugo generates summaries for posts which can be used with the .Summary
page variable. The theme uses this to print the summary of each post
in the post list. As it is now, you cannot disable the summary
from being printed, so the partial header li.html is changed
to support the excerpt variable in posts.
When posts do not have an excerpt variable, the behavior is not changed
and the summary is being printed as before. If excerpt exists
and is not empty, then it is printed instead of the summary and if excerpt
is empty, then nothing is printed.

This is great. I'm currently using this on my blog (gonna upload it soon).

thanks ! i like this feature


[NEW] Adapting front to server services

Changes Unknown when pulling 19172643b8a48ac2d4a1f462d9af235476d05264 on zenika-dev-javi into ** on zenika-dev**.


Only run unit tests after explicit approval

Description TODO
Might be Helpful:

https://github.com/orgs/community/discussions/25100
https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#issue_comment-on-issues-only-or-pull-requests-only
https://docs.github.com/de/webhooks/webhook-events-and-payloads#issues
https://stackoverflow.com/a/59349906/

run tests

run tests

run tests

run tests

Closing this PR as there's not much we can do about it. We will continue to use the environment option instead. If you want a less cluttered view of commits, there's also the commit tab in the PR.


[XPRESS] Extract variable & constraint names only before writing MPS + fix a test

Fix a unit test in XPRESS interface (it was failing because of difficult-to-handle trailing spaces)
XPRESS interface: extract variable & constraint names, only before writing MPS, in order to have an MPS with clear names while avoiding extracting the names too often (extraction in XPRESS is costly)

CLA issue fixed in new commit : https://github.com/google/or-tools/pull/4185


Fixing CacheNodeData serialization...

Hey there. Had some issues with the lack of order of key/value pairs in Python v3.5 dict objects. I'm new to Python but also apparently output from repr() should be able to round-trip through eval() so I fixed that too... this is a breaking change for repr(CacheNodeData) but I expect that is not a big problem...

It looks good, but I want to make sure that the test suite runs on new pull requests, so I have to do some extra configuration to make that work.

So the issue I was having was that the test suite didn't complete correctly on a new pull request. Details are here: https://www.progclub.org/pipermail/programming/2018-December/003537.html -- so my change to the test_cache_repr() test (and corresponding changes to CachedNodeData) was to get the tests to pass... not sure what extra configuration you're referring to...

I mean that Github should also run the test suite through travis CI to show me that it works in the browser. Your change is fine, I just need to set it up on the repository.

Ah, all good. Good luck!

lol. I'm new. Can you tell? :P Thanks for being patient with me! :)

Going to try closing and reopening to see if that triggers the build. And of course, the commentary in your discussion group about my laziness implementing repr is spot on :)

Huzzah! Will merge after the tests pass


Watson Conversation Entities/Variables

Hi,
I am creating a dialogue to "make a complaint". The data to use in this dialog are:
Contract number: it can consist of 10 numbers or numbers and letters (Type : pattern)
Company (Type : entity)
Name: it can be composed of ([A-Za-z àâæçéèêëîïôœùûüÿÀÂÆÇnÉÈÊËÎÏÔŒÙÛÜŸ'- ", ]){1,} (Type : pattern)
First name: it can be composed of ([A-Za-z àâæçéèêëîïôœùûüÿÀÂÆÇnÉÈÊËÎÏÔŒÙÛÜŸ'- ", ]){1,} (Type : pattern)
Object of complaint : paragraph which can contain letters, numbers, characters, spaces, ... (Type : pattern)
After the collection of these data, a question will arise to the customer: your contract number is $num_contrat, your surname is: $surname your first name is: $first_name your claim is: $obj_reclamation. Do you confirm these data?
If yes, the claim will be recorded in the database. If not, the question that will be asked is: what data do you want to edit ? ...
Until now, my bot detects only the $company because it exists in the company entity and it does not detect $num_contrat, $surname, $first_name and $obj_reclamation.
Thanks.

Hi @AlaGarali I think you should ask that question in stackoverflow.com
Your question doesn't seem to be related to this sample so I'm going to close the issue


Remove Merge-Tree and SharedString ISegment Deprecations

The current ISegment interface over-exposes a number of properties which do not have an external use case, and any external usage could result in damage to the underlying merge-tree including data corruption.
The only use case that will continue to be supported is determining if a segment is removed. For this purpose we've add the following function segmentIsRemoved(segment: ISegment): boolean
For example, checking if a segment is not removed would change as follows:

if(segment.removedSeq === undefined){

if(!segmentIsRemoved(segment)){
The following properties are deprecated on ISegment and its implementations:

clientId
index
localMovedSeq
localRefs
localRemovedSeq
localSeq
movedClientsIds
movedSeq
movedSeqs
ordinal
removedClientIds
removedSeq
seq
wasMovedOnInsert
Additionally, the following types are also deprecated, and will become internal:
IMergeNodeCommon
IMoveInfo
IRemovalInfo
LocalReferenceCollection

https://github.com/microsoft/FluidFramework/pull/23323


Graphic Labels are not rendered for Distance and Direction widget in WAB 2.2

From @kgonzago on November 4, 2016 18:51
In WAB 2.2, the labels are not rendered after a line is created. This applies to circles, ellipses and range rings.
Copied from original issue: Esri/military-tools-webappbuilder#111

The labels are rendered accordingly after a line, circle, ellipse and/or range ring is created. A user will need to add showLabels in the mapOptions of the app config.json file and set that parameter to true.


footer logo ui fixed

Related Issue

fixed the UI issue that footer logo colour will change automatically after switching to different modes

Closes: #82
Screenshots (if applicable)
|      Original       |

|      Updated      |

Remove unnecessary comments

Yeah Sure

Remove unnecessary comments

removed comments

Remove unnecessary comments

zremoved Comments

Remove unnecessary comments

Removed comments can you please check and merge my pull request


Fixes/cms 3.4 compat

PR depends on PR #5795

added deprecation waring on unused method.

since get_parent_classes() became a classmethod, do not instantiate the plugin.

Coverage remained the same at 82.519% when pulling f56695545de9e2ad039076d4a448e4b3d29e8709 on jrief:fixes/CMS-3.4-compat into 1670ea9ef2f84945e700f0117c3ceae058d9555b on divio:release/3.4.x.

Coverage remained the same at 82.519% when pulling 17a85fcccaeafed0cc3a5c48b26e8f2996d934f4 on jrief:fixes/CMS-3.4-compat into 1670ea9ef2f84945e700f0117c3ceae058d9555b on divio:release/3.4.x.

Coverage remained the same at 82.519% when pulling b14f883bf118d80a2dae0ea09fe9549589031207 on jrief:fixes/CMS-3.4-compat into 1670ea9ef2f84945e700f0117c3ceae058d9555b on divio:release/3.4.x.

@czpython I'm currently porting djangocms-cascade to CMS-3.4.
What I see, is that a lot of code changed, therefore Cascade does not work anymore as it used to. I currently have to reread a lot of the changed code and therefore I stumbled across quite often at statements such as parent_classes or [] or child_classes or [].
I don't know if this has been documented somewhere, but the until version 3.3, if parent_classes = None meant, that we should not care if parents exists or not. Therefore having parent_classes = [] was fundamentally different from parent_classes = None. I'm unsure, if this is still the case in version 3.4.
Thanks

Coverage remained the same at 82.519% when pulling 17a85fcccaeafed0cc3a5c48b26e8f2996d934f4 on jrief:fixes/CMS-3.4-compat into 1670ea9ef2f84945e700f0117c3ceae058d9555b on divio:release/3.4.x.

@jrief In this case should not be a different behavior if attribute is set to None or empty list, the only reason for the or [] format is to do in operations. In some cases like https://github.com/divio/django-cms/blob/release/3.4.x/cms/plugin_base.py#L171 we can remove it as it will be the same for bool()

@czpython rebased

Coverage increased (+0.1%) to 82.622% when pulling f9b62031f64aa7d775f9d1befa7b6a70d0d1a719 on jrief:fixes/CMS-3.4-compat into 1670ea9ef2f84945e700f0117c3ceae058d9555b on divio:release/3.4.x.

Coverage increased (+0.1%) to 82.622% when pulling f9b62031f64aa7d775f9d1befa7b6a70d0d1a719 on jrief:fixes/CMS-3.4-compat into 1670ea9ef2f84945e700f0117c3ceae058d9555b on divio:release/3.4.x.

Hello @jrief,
Please add only the following entries:

Added a deprecation warning to method render_plugin() in class CMSPluginBase.
Since get_parent_classes() became a classmethod, do not instantiate plugin before invocation.

To the changelog here https://github.com/divio/django-cms/blob/release/3.4.x/CHANGELOG.txt and remove the file docs/upgrade/3.4.2.rst as we only add this file prior to releasing.

Hello @jrief,
Would you be able to make the requested changes before the end of the week?
We're planning to hit code freeze by then.

@czpython as you requested, I reverted some changes. However there seems to be a conflict in CHANGLELOG.txt, I can't resolve locally.
Also, why did you want me to remove code, which breaks Django-1.10 compatibility?

Thanks @jrief.
Which code are you referring to?

placeholderadmin.py line 744:
I reverted to this, which is incompatible with Django-1.10:
        return TemplateResponse(request, "admin/cms/page/plugin/delete_confirmation.html", context,
                                current_app=self.admin_site.name)

Ah that is because the PR with that fix was already merged in https://github.com/divio/django-cms/commit/824f389ee4b1907e28463c8b4bfa64742756df7b

yes, but that PR (824f389) was from myself, and this PR depended on that old one.
btw. I tried to fix the conflict in CHANGELOG.txt but did not succeed. Can you do that?

is why I asked for this one to be rebased with release/3.4.x so it picks up those changes.
No worries though, I will take care of the CHANGELOG.txt conflicts and rebase with release/3.4.x

ok, thanks

@jrief I've done the rebasing but I'm unable to push to your branch.
Did you enable "Edits from maintainers"? or better yet can you give me access to your fork?

Merged in a9e2a8d3b7a6b6bc4f6f0ca3edd492be6ddd05f0


Add phone numbers to users

Currently a User does not have a phone number.
Adding a phone number to the user can act as an identifier similar to email.
It also has the added benefit of providing the ability for easy to create internal phone lists.
This is being moved from orocrm / crm  #83 to platform because I believe this is where it belongs.

Hey, whats the status of this issue? We really like to customize our email communication and provide agent specific phone numbers for calls. Thank you,
best regars,
Christian

Hi @cawolf, this issue scheduled for development. You can create a custom field for your needs right now without this fix.

Hi @DimaSoroka, thank you, we will wait for the next release,
best regards,
Christian

Fixed this long ago.


Add "underlayColor" in TouchableHighlight.

Hi! :)
I'm using react-native-facebook-login component in my app, but my background color are green. So when I touch button, the view add a black background color in TouchableHighlight.
Example:

I added underlayColor={'transparent'} here:
https://github.com/magus/react-native-facebook-login/blob/master/index.android.js#L152
And worked. :) But I tested in Android only.

good catch thanks
i think the touchable highlight needs to inherit the property of the defined component so you can set the underlayColor like the following
<FBLogin underlayColor={'#fff'} />

Nice! :) Waiting for update.
thanks!


Fix: Resolve Discrepancy in Sphinx Dependency Names

This PR addresses an issue (#158) regarding a discrepancy in the naming of certain Sphinx dependencies. The requirements file previously included 'sphinx-panels' and 'sphinx-rtd-dark-mode', but on some platforms, these dependencies are known as 'sphinx_panels' and 'sphinx_rtd_dark_mode' respectively. This PR updates the requirements file to include both versions of each dependency's name to ensure cross-compatibility and avoid potential confusion or errors during the installation process.

Nice catch.

Thank you! :)


adding sqs server side encryption

Based on https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-kmsmasterkeyid
Tested new example and SQS queue is created with the specified encryption key.

Thanks!


Fix post login

Pull Request Test Coverage Report for Build 65

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 60.925%

Totals

Change from base Build 61:
0.0%

Covered Lines:
188

Relevant Lines:
282

💛  - Coveralls


System offering of router says its local storage but it ends up on different if the pools are disabled

ISSUE TYPE

Bug Report

COMPONENT NAME

Deployment planner

CLOUDSTACK VERSION

4.14

CONFIGURATION

OS / ENVIRONMENT

Have a local storage pool with some other pools as well
SUMMARY

Steps:
(localcloud) SBCM5> > list routers filter=name,serviceofferingid,,templateid,
{
  "count": 1,
  "router": [
    {
      "name": "r-21-VM",
      "serviceofferingid": "1f3d4c8c-c585-47f1-8cdb-f03cb4076988",
      "templateid": "62f6a3bd-0160-4e52-b72c-2e61fc74a987"
    }
  ]
}
(localcloud) SBCM5> > list templates id=62f6a3bd-0160-4e52-b72c-2e61fc74a987 templatefilter=all filter=directdownload,name,
{
  "count": 1,
  "template": [
    {
      "directdownload": true,
      "name": "ssvm4.14"
    }
  ]
}
(localcloud) SBCM5> > list serviceofferings issystem=true
    {
      "cpunumber": 1,
      "cpuspeed": 500,
      "created": "2020-02-20T07:23:35+0000",
      "defaultuse": true,
      "id": "1f3d4c8c-c585-47f1-8cdb-f03cb4076988",
      "iscustomized": false,
      "issystem": true,
      "isvolatile": false,
      "limitcpuuse": false,
      "memory": 256,
      "name": "System Offering For Software Router - Local Storage",
      "offerha": true,
      "provisioningtype": "thin",
      "storagetype": "local",
      "systemvmtype": "domainrouter"
    },

But there’s a system offering available for mountshare and it is not used:

 "serviceoffering": [
    {
      "cpunumber": 1,
      "cpuspeed": 1024,
      "created": "2020-02-25T09:45:03+0000",
      "defaultuse": false,
      "displaytext": "System offering for VR - Mountshare",
      "id": "43e8df56-6f4e-408e-b619-53cf6289dc30",
      "iscustomized": false,
      "iscustomizediops": false,
      "issystem": true,
      "isvolatile": false,
      "limitcpuuse": false,
      "maxiops": 0,
      "memory": 512,
      "miniops": 0,
      "name": "System offering for VR - Mountshare",
      "offerha": false,
      "provisioningtype": "thin",
      "storagetype": "shared",
      "systemvmtype": "domainrouter",
      "tags": "ms"
    },

MariaDB [cloud]> select id,pool_id from volumes where name ='ROOT-21';
+----+---------+
| id | pool_id |
+----+---------+
| 24 |       5 |
+----+---------+
1 row in set (0.00 sec)

MariaDB [cloud]> select pool_type from storage_pool where id=5;
+------------------+
| pool_type        |
+------------------+
| SharedMountPoint |
+------------------+
1 row in set (0.00 sec)

STEPS TO REPRODUCE

Enable maintenance on all Storage pools but a Sharedmountpoint

Restart a Network with cleanup

Observe that the new VR is created correctly on the only available storage pool, but the offering is not correct under which is created

EXPECTED RESULTS

Deployment to fail as there's no suitable storage

ACTUAL RESULTS

Deployment is successful on shared storage

this is one of those bugs that could be "featured" and be abused so I think a setting for the behaviour is desirable. in this case with old or "expected" behaviour as a reasonable default.

@DaanHoogland do you mean we should add a global setting which will govern the behaviour (to fail deployment or not) when when suitable local storage is found for router? cc @borisstoyanov

I think that is an implementation but certainly not that it is the most desirable. Other solutions may include a setting on zone level or a setting in the networkoffering that allows for it or not.

cc @Spaceman1984 any update on this?

I have ruled out the list routers api and I am investigating the creation process.

I have found the place in the code where the service offering is selected for a VR.
RouterDeploymentDefinition.java
392 protected void findServiceOfferingId() {
393     serviceOfferingId = networkOfferingDao.findById(guestNetwork.getNetworkOfferingId()).getServiceOfferingId();
394     if (serviceOfferingId == null) {
395         findDefaultServiceOfferingId();
396     }
397 }

Line 393 seems strange to me, I don't know how the service offering would be stored on the network offering - but it seems like this would be a way to select a specific service offering.
In my testing serviceOfferingId = null, meaning the default service offering is used, which is based on if the zone level variable system.vm.use.local.storage is set to true or not, either Cloud.Com-SoftwareRouter or Cloud.Com-SoftwareRouter-Local.
This happens before the VM is started or any storage pools are checked.
That information is then passed to the deployment planner which has to figure out which storage pool to use.
The deployment doesn't fail, because all storage allocators are checked to find any available storage pools.

@borisstoyanov it seems like if you want a specific system offering you have to set it in the network offering table in the db. Cloudstack will use the default if not set and then use whatever storage pool is available.
To make the deployment fail I can limit the storage allocators to local storage only if the variable is set to true and the VM is a system VM. Would that be desirable?

I believe this is a non-issue as the behaviour of the VR is consistent with deploying any other VM in Cloudstack.

cc @vladimirpetrov - what do you think based on Darrin's comment - should we close it?

@Spaceman1984 For user VMs, deployment fail when offering with local storage is used and there are no available, enabled local storage pools,
(localcloud) SBCM5> > list storagepools filter=id,name,scope,state,path
{
  "count": 4,
  "storagepool": [
    {
      "id": "1a5f7587-1b80-4d08-92b8-bd8cc3ed971d",
      "name": "pr4710-t330-kvm-centos7-kvm1-local-1a5f7587",
      "path": "/var/lib/libvirt/images",
      "scope": "HOST",
      "state": "Disabled"
    },
    {
      "id": "fb0e3692-1dfd-45ac-94ca-0c5acb354622",
      "name": "pr4710-t330-kvm-centos7-kvm2-local-fb0e3692",
      "path": "/var/lib/libvirt/images",
      "scope": "HOST",
      "state": "Disabled"
    },
    {
      "id": "402d65b4-07f0-38cd-82ec-d1f97b221c9e",
      "name": "pr4710-t330-kvm-centos7-kvm-pri2",
      "path": "/acs/primary/pr4710-t330-kvm-centos7/pr4710-t330-kvm-centos7-kvm-pri2",
      "scope": "CLUSTER",
      "state": "Up"
    },
    {
      "id": "2f8c15f5-6555-398e-beb7-0f5da9e8fe40",
      "name": "pr4710-t330-kvm-centos7-kvm-pri1",
      "path": "/acs/primary/pr4710-t330-kvm-centos7/pr4710-t330-kvm-centos7-kvm-pri1",
      "scope": "CLUSTER",
      "state": "Up"
    }
  ]
}
(localcloud) SBCM5> > list serviceofferings id=81bd3662-bb19-492b-9248-b182a241874a
{
  "count": 1,
  "serviceoffering": [
    {
      "cacheMode": "none",
      "cpunumber": 1,
      "cpuspeed": 1000,
      "created": "2021-04-23T08:20:28+0000",
      "defaultuse": false,
      "displaytext": "localstorageoffering",
      "id": "81bd3662-bb19-492b-9248-b182a241874a",
      "iscustomized": false,
      "issystem": false,
      "isvolatile": false,
      "limitcpuuse": false,
      "memory": 1024,
      "name": "localstorageoffering",
      "offerha": false,
      "provisioningtype": "thin",
      "rootdisksize": 0,
      "storagetype": "local"
    }
  ]
}
(localcloud) SBCM5> > deploy virtualmachine name=test1 zoneid=e261ed1b-22e4-44b3-a6ce-79b8b9c0ffa4 templateid=b83cc175-9329-11eb-b75b-1e0085000203 serviceofferingid=81bd3662-bb19-492b-9248-b182a241874a
{
  "accountid": "cd516a56-9329-11eb-b75b-1e0085000203",
  "cmd": "org.apache.cloudstack.api.command.admin.vm.DeployVMCmdByAdmin",
  "completed": "2021-04-23T08:25:33+0000",
  "created": "2021-04-23T08:25:33+0000",
  "jobid": "a02192a4-20d2-43f9-b645-d29baf400623",
  "jobinstanceid": "84725c21-4b0e-4139-a650-bbcf29d71fd2",
  "jobinstancetype": "VirtualMachine",
  "jobprocstatus": 0,
  "jobresult": {
    "errorcode": 533,
    "errortext": "Unable to create a deployment for VM[User|i-2-27-VM]"
  },
  "jobresultcode": 530,
  "jobresulttype": "object",
  "jobstatus": 2,
  "userid": "cd52af64-9329-11eb-b75b-1e0085000203"
}
🙈 Error: async API failed for job a02192a4-20d2-43f9-b645-d29baf400623

MS logs giving exception,
2021-04-23 08:25:33,642 DEBUG [o.a.c.s.a.LocalStoragePoolAllocator] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) LocalStoragePoolAllocator trying to find storage pool to fit the vm
2021-04-23 08:25:33,643 DEBUG [o.a.c.s.a.LocalStoragePoolAllocator] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) LocalStoragePoolAllocator returning 0 suitable storage pools
2021-04-23 08:25:33,643 DEBUG [o.a.c.s.a.ClusterScopeStoragePoolAllocator] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) ClusterScopeStoragePoolAllocator looking for storage pool
2021-04-23 08:25:33,643 DEBUG [o.a.c.s.a.ZoneWideStoragePoolAllocator] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) ZoneWideStoragePoolAllocator to find storage pool
2021-04-23 08:25:33,643 DEBUG [c.c.d.DeploymentPlanningManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) No suitable pools found for volume: Vol[27|vm=27|ROOT] under cluster: 1
2021-04-23 08:25:33,643 DEBUG [c.c.d.DeploymentPlanningManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) No suitable pools found
2021-04-23 08:25:33,643 DEBUG [c.c.d.DeploymentPlanningManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) No suitable storagePools found under this Cluster: 1
2021-04-23 08:25:33,644 DEBUG [c.c.d.DeploymentPlanningManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Could not find suitable Deployment Destination for this VM under any clusters, returning.
2021-04-23 08:25:33,645 DEBUG [c.c.d.FirstFitPlanner] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Searching all possible resources under this Zone: 1
2021-04-23 08:25:33,645 DEBUG [c.c.d.FirstFitPlanner] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Listing clusters in order of aggregate capacity, that have (at least one host with) enough CPU and RAM capacity under this Zone: 1
2021-04-23 08:25:33,646 DEBUG [c.c.d.FirstFitPlanner] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Removing from the clusterId list these clusters from avoid set: [1]
2021-04-23 08:25:33,647 DEBUG [c.c.d.FirstFitPlanner] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) No clusters found after removing disabled clusters and clusters in avoid list, returning.
2021-04-23 08:25:33,648 DEBUG [c.c.v.UserVmManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Destroying vm VM[User|i-2-27-VM] as it failed to create on Host with Id:null
2021-04-23 08:25:33,652 DEBUG [c.c.c.CapacityManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) VM state transitted from :Stopped to Error with event: OperationFailedToErrorvm's original host id: null new host id: null host id before state transition: null
2021-04-23 08:25:33,662 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Updating resource Type = volume count for Account = 2 Operation = decreasing Amount = 1
2021-04-23 08:25:33,666 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Updating resource Type = primary_storage count for Account = 2 Operation = decreasing Amount = (8.00 GB)<PHONE_NUMBER>
2021-04-23 08:25:33,673 WARN  [c.c.a.AlertManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) AlertType:: 8 | dataCenterId:: 1 | podId:: null | clusterId:: null | message:: Failed to deploy Vm with Id: 27, on Host with Id: null
2021-04-23 08:25:33,677 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Updating resource Type = user_vm count for Account = 2 Operation = decreasing Amount = 1
2021-04-23 08:25:33,681 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Updating resource Type = cpu count for Account = 2 Operation = decreasing Amount = 1
2021-04-23 08:25:33,684 DEBUG [c.c.r.ResourceLimitManagerImpl] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Updating resource Type = memory count for Account = 2 Operation = decreasing Amount = 1024
2021-04-23 08:25:33,690 INFO  [o.a.c.a.c.u.v.DeployVMCmd] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) com.cloud.exception.InsufficientServerCapacityException: Unable to create a deployment for VM[User|i-2-27-VM]Scope=interface com.cloud.dc.DataCenter; id=1
2021-04-23 08:25:33,692 INFO  [o.a.c.a.c.u.v.DeployVMCmd] (API-Job-Executor-2:ctx-7984b076 job-208 ctx-57e803cb) (logid:a02192a4) Unable to create a deployment for VM[User|i-2-27-VM]
com.cloud.exception.InsufficientServerCapacityException: Unable to create a deployment for VM[User|i-2-27-VM]Scope=interface com.cloud.dc.DataCenter; id=1
        at org.apache.cloudstack.engine.cloud.entity.api.VMEntityManagerImpl.reserveVirtualMachine(VMEntityManagerImpl.java:225)
        at org.apache.cloudstack.engine.cloud.entity.api.VirtualMachineEntityImpl.reserve(VirtualMachineEntityImpl.java:202)
        at com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:4913)
        at com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:4450)
        at com.cloud.vm.UserVmManagerImpl.startVirtualMachine(UserVmManagerImpl.java:4439)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)

Considering this I would say VRs should follow the same behaviour. If we have any concerns about behaviour change wrt previous ACS versions maybe we can introduce a global config that can govern this deployment behaviour.
Thoughts @rhtyd @borisroman @vladimirpetrov @andrijapanicsb @weizhouapache @GabrielBrascher @DaanHoogland ?

@Spaceman1984 @borisstoyanov can you discuss and agree next steps (close the ticket, identify and fix the issue?)


Make all private properties use private _ instead of #

This makes them not actually private and allows for internal use of the lib

:shipit:

:shipit:


Show changes when updating

After reading https://medium.com/@robbyrussell/d-oh-my-zsh-af99ca54212c I think two simple additions could increase engagement. One is that when you update fisherman or a plugin, a short description of the changes  (commit messages/ what files have changed) could be shown (this issue). Second, fisherman could automatically update every other week to make sure that people stay up to date with the latest and greatest (#169).

This could be a simple addition, but it depends on what and how we do it exactly. Like, just write the contents of git log <options> after the update. Or do you have something more elaborate in mind?

Oh my zsh seems to show the file change stats from git (https://raw.githubusercontent.com/babun/babun.github.io/master/images/screenshots/screen_zsh_update.png). I think the commit messages are more useful. Or even better: when fisherman updates to a new version, show the release log from https://github.com/fisherman/fisherman/releases.
Right now I don't even know whether updating actually installed a new version or not.

@domoritz So we could print a message saying Visit ... with a link to the releases page. Or do you want to read the file in your terminal?

It shows you the new version number, that's all it does. Maybe it should not show anything if Fisherman is already the latest version?

But not even that for plugins. And yes, if the latest version is already installed it's odd to get a message.
Just as a reference, this is the current output.
$ fisher update
▸ Updating Fisherman
Aye! Fisherman 1.3.1 updated (3s)
Updating plugins...
▸ thefuck
▸ spin
▸ fasd
▸ python
▸ grc
▸ bobthefish
▸ shark
▸ vscode
▸ osx
▸ grc
▸ thefuck
▸ fasd
12 plugin/s updated in 6s

What I'm suggesting is this issue is a) only show the items that actually changed, b) show from what version to what version we updated, or c) show a little summary of the commit messages or the release log since the last update (can be long so I can see why this is not always great).

Gotcha.
BTW plugins have no versions, but we could check whether there are any updates available and then update only if so.
So, hat kind of summary exactly? Since this is just text, can you write the desired output and post it here? That way we would be discussing something more concrete.

BTW plugins have no versions

But they have git hashes and dates when they were been updated.

Yes, they certainly do. There is a lot of data and I am wondering, what would be the best way to display this data to the user. Can you take a stab at the ideal text output while / after you update plugins.

$ fisher update
▸ Updating Fisherman
Aye! Fisherman updated from 1.3.1 to 1.4.0
▸ Updating plugins...
Updated thefuck spin fasd python
4 plugin/s updated (8 up to date)

$ fisher update
▸ Updating Fisherman
Aye! Fisherman updated from 1.3.1 to 1.4.0
Updating plugins...
▸ thefuck
4 new commits
▸ spin
1 new commit
▸ fasd
32 new commits
▸ python
2 new commits
4 plugin/s updated (8 up to date)

(it's odd that there is an arrow in front on different things (the message or the thing that has been updated)
$ fisher update
▸ Updating Fisherman
Aye! Fisherman updated from 1.3.1 to 1.4.0
▸ Updating plugins...
thefuck                                      5fb0dae -> 65b3f16        4 new commits
spin                                           5fb0dae -> 65b3f16        1 new commit
fasd                                           5fb0dae -> 65b3f16        32 new commits
python                                       5fb0dae -> 65b3f16        2 new commits

4 plugin/s updated (8 up to date)

And if fisherman is up to date
...
▸ Updating Fisherman
Aye! Fisherman is up to date.
...

If you also want to show the changes, it could look like this:
...
▸ Updating Fisherman
Aye! Fisherman updated from 1.3.1 to 1.4.0

Changes:
 * Better, faster [#123]
 * More usable [#312]
...

or just a link
...
▸ Updating Fisherman
Aye! Fisherman updated from 1.3.1 to 1.4.0 (see changes at https://github.com/fisherman/fisherman/releases/tag/1.3.1)
...

I totally dig this :smile:

@domoritz I think we have a wrapper c11ac1f.

Cool!
▸ Aye! Fisherman is up to date
▸ Updating 4 plugin/s
  grc                       Up to date
  thefuck                   Up to date
  fasd                      Up to date
  grc                       Up to date
No plugins were updated.


TImeline says it has "unauthenticated sources"

This is usually caused by imports that are not done using "https", since it technically violates the integrity of the sites overall https authenticity. The only example I found of this was <link href="http://cdnjs.cloudflare.com/ajax/libs/foundicons/3.0.0/foundation-icons.css" rel="stylesheet"> in application.html.erb
Just changing the "http" to "https" on this line could fix the problem but there might be more cases of this hiding in other files.

Anyone else see this error?

It won't give you the error unless you are accessing the site with https.

Ahhh this being changed to https gives me an error while doing bundle install for some reason.


DirectXMath 3.16 updates for Windows 10 SDK (10.0.20348.0)

Added topics for new functions: XMMatrixVectorTensorProduct , XMColorRGBToYUV_UHD, XMColorYUVToRGB_UHD, XMVectorLog10, and XMVectorExp10.

Added new directive _XM_SVML_INTRINSICS_ to table

Cleaned up remaining 'dead' references to msdn URLs

Updated library internals for recent changes, and a few cases of updating the remarks based on C++11 math functions.

@walbourn : Thanks for your contribution! The author(s) have been notified to review your proposed change.

These changes are of course dependent on this PR for sdk-api

@walbourn : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Issue with passwords that contain a  character

When setting a password, it's perfectly possible to put a "space" symbol in the password, however, when unlocking, hitting the spacebar while the cursor is at the end of the input (which is usually the case when you type) doesn't input the space symbol. The only way to actually input the space symbol is to type the next character then go back (arrow left) then press space.
Example:
my password is "Hello World"
I type, "H", "e", "l", "l", "o", "space" and here I can observe the problem. No matter how many time I hit the space bar, no extra character is added. However if I type "HelloW", then arrow left, "space", I can see the extra character being added, then I can proceed with "arrow right", "o", "r", "l", "d" to complete the password "Hello World"

And here's the problem: https://github.com/aurowallet/auro-wallet-browser-extension/blob/fda7509a420dfe94be6b6ee2b79bab508d0605a3/src/popup/pages/Lock/index.js#L42
Is there a good reason to use trim() here?


chore: update dev dependencies

upgrade all dev deps and move husky from 4->7

:broken_heart: Build Failed

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-02-24T04:28:51.006+0000

Duration: 6 min 3 sec

Steps errors
Expand to view the steps failures

Install precommit hooks

Took 0 min 0 sec . View more details here
Description:           export PATH=/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-464/bin:/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-464/.nvm/versions/node/v14.17.5/bin:/command:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin          ## Install with the hooks therefore ~/.cache/pre-commit will be created with the repos          pre-commit install --install-hooks

Install precommit hooks

Took 0 min 0 sec . View more details here
Description:           export PATH=/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-464/bin:/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-464/.nvm/versions/node/v14.17.5/bin:/command:/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin          ## Install with the hooks therefore ~/.cache/pre-commit will be created with the repos          pre-commit install --install-hooks

:robot: GitHub comments
To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.


Clean up long functions in virt-controller migration.go

What this PR does / why we need it: This PR cleans up two very long functions, sync and updateStatus in virt-controller migration.go, extracting code snippets in placing them into separate functions.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: The Boy Scout Rule was considered and applied if needed
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to the kubevirt-dev was considered

Release note:

NONE

/sig code-quality

There are quite some failures related to migration: pull-kubevirt-e2e-k8s-1.27-sig-compute-migrations

/retest-required

/test pull-kubevirt-e2e-arm64

@vasiliy-ul @alicefr Would you be able to take another look?

@prnaraya, thank you for addressing the comments. From my perspective, the PR looks good.
/approve
/retest-required

/retest-required

/retest-required


Pre-trained models

Hello Folks,
I am facing an issue while trying to use the pre-trained models. Here are the steps that I have followed.

I downloaded the "eca_resnet50_k3557.pth.tar" from google drive.
Constructed the model using models/eca_resnet.py and models/eca_module.py

Now the pre-trained model from step 1 has "module.conv1.." as its state keys while the model from step 2 has "conv1.weight.", which are key mismatches. I also found that the pre-trained model from Step 1 has a key "ärch = 'se_resnet50".
Question 1. Is this pre-trained model not of ECA Net but of SE Net?
Question 2. How to solve the key mismatch issues?
Could you please let me know how to solve this?

Thanks for your attention. Question 1: Pre-trained model is ECA. Question 2: The parameter name contains “module.”, which is a problem of the python mechanism. You can remove it manually

Thanks for your kind reply.
Could you perhaps post some hints on how to rename the keys since they are immutable?

reference: https://discuss.pytorch.org/t/transfer-learning-missing-key-s-in-state-dict-unexpected-key-s-in-state-dict/33264/3

Thank you very much. I appreciate the support and guidance 👍 😊


dvclive: Document images per step

Is there anywhere in the yolo callback that it can be used?

I've update the callback to "stack" the examples. I'll make a PR soon. They also improved a way to setup it (enable, disable).
https://github.com/iterative/dvc.org/assets/3659196/168804d6-8d1f-44fd-9a6b-910ffc3f32f3

Also, created a followup for the UX - https://github.com/iterative/vscode-dvc/issues/4493


Adding vertx logger system property to exec

Refered the answer for adding the java system property when deploying through mvn exec .
https://stackoverflow.com/a/18172511

The system property vertx.logger-delegate-factory-class-name=io.vertx.core.logging.Log4j2LogDelegateFactory  option basically setting vertx logging java system property,  so that vertx components & libraries (rabbitmq client, vertx pgclient, eventloop logs, io.netty lib etc.) also logs using log4j2 backend , refer docs

@ThorodanBrom Is this PR ready for merging?

Yeah, it's ready. Adding this to the pom prevents another flag being passed in the mvn exec command here.


fix: nil pointer in network checker of liqoctl info peer

Description
When the Endpoint field of the status of the GatewayServer resource is empty, liqoctl info peer returned a nil pointer exception.
This PR fixes this issue.

/rebase test=true

/rebase test=true


Cannot reload template file?

Hi there,
I came across this question a few times, but no solution helped. I have the following setup:
https://gist.github.com/citymonitor/93c4d2faeeef2e9fdd2c517fc3e071e0
It's all running fine. But I don't get how to reload the config (recreate default.conf from nginx.tmpl).
I tried: docker-compose up -d --force-recreate --build but this didn't help.
Can anyone tell me how to do this?

docker kill -s HUP nginx-gen

@buchdag thanks a lot but how do I verify it is actually reloaded or how do I check for errors? It still seems to be the same

@buchdag what exactly impacts default.conf? Does it recognize if the template file changes?

Your change to the template file have to result in changes to the default.conf file in your specific Docker environment.
For instance let's say you add some code the template file that generated additional configuration lines according to the value of a container environment variable called WHATEVER if and only if it is set. If you don't set the WHATEVER environment variable on any container, your change on the template file won't result in changes to the generated file.
No one but you can tell wether a change in the generated file should occur with a specific template file on your specific Docker environment with your own containers. And don't forget that docker-gen has option (like -only-exposed) that further restrain the containers it picks up.

@buchdag thanks a lot I will try that! I've added an additional location entry in the template and it did not pick up anything.
Just one more thing: is it possible to add an additional, custom, static config to this running nginx instance somehow?

Your question is specific to jwilder/nginx-proxy, you should read that repo's doc and ask your question there if the answer is not in the doc.

Thank you, I've posted in the group with the exact problem I'm trying to solve:
https://groups.google.com/forum/#!topic/nginx-proxy/bQ1xvRElJ4k


[CARBONDATA-3803] Mark CarbonSession as deprecated since 2.0

Why is this PR needed?
Better to use CarbonExtensions instead of CarbonSession in version 2.0.
What changes were proposed in this PR?
mark CarbonSession as deprecated since version 2.0.
Does this PR introduce any user interface change?

No

Is any new testcase added?

No, no need

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1247/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/2965/

Please print a log in CarbonSession to indicate to the user that this is deprecated

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1256/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/2974/

Please print a warn log in CarbonSession to indicate to the user that this is deprecated

done

LGTM


Support for tab indented literate files added

This PR adds support for trailing tab whitespace in literate files.
See #557 for more.

Thanks. It does seem like Literate CoffeeScript should indeed support 4 spaces or 1 tab. However I just tried it out on this test case.
This is a function that returns 'hello'
	() ->
		"hello"

Wow that was easy!

And it produces
(function() {

}).call(this);

Is this working on your end? I'm running node 4.0.0 (tried node 0.12.0 as well) running the latest coffeescript.
I looked around CoffeeScript's source code and it seems like a change made 3 years ago caused this so you may have to file an issue with them to get it fixed. After that I can merge in this code.
https://github.com/jashkenas/coffeescript/commit/52ca531b7c9f1fc6f3ba76d2ac2527c41f9ece68

Hi @swang Thank you for feedback!
I think your test case works well, it should produce an empty function, because Markdown requires one extra empty line before indented code. It's easy to test on GitHub comments. If I add one blank line before the code, everything works well. What do you think? Should coffeelint support this test case?

Ah I did not know that you needed to add an additional line since it doesn't seem to be mentioned in any of the docs. I assumed the indentation was enough.

Thank's for merging this into the main branch.
Do you know, when new version will be published in NPM?

I just released 1.15.1 that includes your PR.

@swang Thank you again for quick response. Have a nice day!


Server Issue

Is there any way to check whether the Lamini server was down or up ?
i submitted this job: https://app.lamini.ai/train/6143. it's completed successfully. but when i refresh the browser. it is loading for a while... still loading not able to see the page.

Hi @teja0508, are you able to see it in the train tab (https://app.lamini.ai/train)?
We do not currently have a status page. 🙇

Eda

Now i can able to see this link: https://app.lamini.ai/train , @edamamez thanks.


Add support for DuckDuckGo POST Requests in omnibox and via right-click menu

I don't know about this feature. What is the advantage of using POST requests over GET reequests?

Makes it more difficult for network managers to see what you are searching, if it is implemented it should be able to be turned on and off.

This is an old issue, that didn't show much activity recently and probably lost its significance — closing.
If you have any more information to add, let us know.


Arangodb illegal instruction core dumped in VM or Docker in VM

My Environment

ArangoDB Version:         3.11.4-1 (virtualbox) or 3.8 (docker in virtualbox)
Deployment Mode:       Single Server
Deployment Strategy:   Manual Start | Manual Start in Docker
Configuration:
Infrastructure:               own
Operating System:        Windows 10 Enterprise build 19.0.44 (host) Ubuntu 22.04 (virtualbox)
Total RAM in your machine:         8Gb.   (VM)
Disks in use:        virtualbox
Used Package:              Debian or Ubuntu .deb | Docker - official Docker library

Component, Query & Data
Affected feature:
Installation |  arangosh | arangodb docker image init
AQL query (if applicable):

AQL explain and/or profile (if applicable):
Dataset:

Size of your Dataset on disk:

Replication Factor & Number of Shards (Cluster only):

Steps to reproduce

sudo apt-get upgrade (to upgrade arangodb3)
OR
arangod OR arangosh
OR
starting the official arangodb docker image with docker-compose

Problem:
I'm getting an "illegal instruction - core dumped" whenever I try to use arangodb.
I have an Ubuntu 22.04 VM in virtualbox and I have arangodb 3.11.4-1 installed on the machine. Independently, inside the same VM,  I'm also creating a container from the official arangodb docker image version 3.8 in a docker compose scheme.
Until some days ago, everything worked fine. Now the arangodb container won't start with message
Initializing root user...Hang on...

Illegal instruction (core dumped)

Initializing database...Hang on...

ArangoDB didn't start correctly during init

Simply running arangosh or arangod  from the VM gives a similar message.
Ubuntu gives the following details about the failure:

And trying to upgrade or install it from scratch produces the same.
Expected result:
arangodb starts normally either on the VM or as a container.

Hi,
Please note that you need AVX and other more recent cpu features.
You may need to configure virtualbox to pass along these instruction sets into the VM.
you can check your host with cat /proc/cpuinfo (and the vm inside as well for sure) to revalidate this.

Update: I'm not sure I will be able to deactivate hyper-v as I don't have full control over this PC. So, I don't think I'll be able to pass these instructions to virtualbox
In any case, do you have any ideas why it suddenly stopped working? and why it isn't working even for arango version 3.8
'

With the release of ArangoDB 3.9 we enabled this in the compilers since by then processors with these features were over 10 years old.
Hence you need these processor features enabled in order to use the ArangoDB pre-compiled binaries.

Closing as "won't fix"