Modelio does not set type uml:Constraint when generating xmi

This is a sample entity that I made in modelio with a constraint of minlength 4.
Here is the xmi generated from this uml:
<?xml version="1.0" encoding="UTF-8"?>
<uml:Model xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_J2yYAL4fEeWDruD32SL_AQ" name="test">
  <eAnnotations xmi:id="_J2yYAb4fEeWDruD32SL_AQ" source="Objing">
    <contents xmi:type="uml:Property" xmi:id="_J2yYAr4fEeWDruD32SL_AQ" name="exporterVersion">
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_J2yYA74fEeWDruD32SL_AQ" value="3.0.0"/>
    </contents>
  </eAnnotations>
  <ownedRule xmi:id="_J2yYBL4fEeWDruD32SL_AQ" name="minlength" constrainedElement="_J2yYB74fEeWDruD32SL_AQ">
    <specification xmi:type="uml:LiteralString" xmi:id="_J2yYBb4fEeWDruD32SL_AQ" value="4"/>
  </ownedRule>
  <packagedElement xmi:type="uml:Class" xmi:id="_J2yYBr4fEeWDruD32SL_AQ" name="testclass">
    <ownedAttribute xmi:id="_J2yYB74fEeWDruD32SL_AQ" name="name" visibility="private" isUnique="false">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
    </ownedAttribute>
  </packagedElement>
</uml:Model>

This xmi does not work because for the ownedRule element, this is missing: xmi:type="uml:Constraint"
Because the element is missing, line 59 in modelio_parser.js never runs, and I get this error when I try to import it:
Parser detected: MODELIO.

Cannot read property '$' of undefined
TypeError: Cannot read property '$' of undefined
    at null.<anonymous> (C:\Users\anon.ymous\AppData\Roaming\npm\node_modules\jhipster-uml\lib\ed
itors\modelio_parser.js:244:26)
    at Array.forEach (native)
    at ModelioParser.fillConstraints (C:\Users\anon.ymous\AppData\Roaming\npm\node_modules\jhipst
er-uml\lib\editors\modelio_parser.js:242:34)
    at ModelioParser.parse (C:\Users\anon.ymous\AppData\Roaming\npm\node_modules\jhipster-uml\lib
\editors\modelio_parser.js:29:8)
    at Object.<anonymous> (C:\Users\anon.ymous\AppData\Roaming\npm\node_modules\jhipster-uml\jhip
ster-uml.js:71:27)
    at Module._compile (module.js:435:26)
    at Object.Module._extensions..js (module.js:442:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:313:12)
    at Function.Module.runMain (module.js:467:10)

Not sure if I made a mistake when making the constraint or missed an option, but I wasn't able to find anything in Modelio to set the type to Constraint manually.

If I add xmi:type="uml:Constraint" attribute manually, it creates this xmi:
<?xml version="1.0" encoding="UTF-8"?>
<uml:Model xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_J2yYAL4fEeWDruD32SL_AQ" name="test">
  <eAnnotations xmi:id="_J2yYAb4fEeWDruD32SL_AQ" source="Objing">
    <contents xmi:type="uml:Property" xmi:id="_J2yYAr4fEeWDruD32SL_AQ" name="exporterVersion">
      <defaultValue xmi:type="uml:LiteralString" xmi:id="_J2yYA74fEeWDruD32SL_AQ" value="3.0.0"/>
    </contents>
  </eAnnotations>
  <ownedRule xmi:type="uml:Constraint" xmi:id="_J2yYBL4fEeWDruD32SL_AQ" name="minlength" constrainedElement="_J2yYB74fEeWDruD32SL_AQ">
    <specification xmi:type="uml:LiteralString" xmi:id="_J2yYBb4fEeWDruD32SL_AQ" value="4"/>
  </ownedRule>
  <packagedElement xmi:type="uml:Class" xmi:id="_J2yYBr4fEeWDruD32SL_AQ" name="testclass">
    <ownedAttribute xmi:id="_J2yYB74fEeWDruD32SL_AQ" name="name" visibility="private" isUnique="false">
      <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
    </ownedAttribute>
  </packagedElement>
</uml:Model>

and jhipster-uml successfully creates the entity with the correct validation.

Interesting. Although this doesn't concern JHipster-UML, this is clearly something to be aware of.
Can you tell me the version of Modelio you used?

Yeah, I wasn't sure if it was appropriate to open an issue here but I didn't know where else to report it.
Modelio version:
Version 3.4.1
Build:<PHONE_NUMBER>03
System: win32 (6.1)
Architecture: x86_64

I've just tested it (I did everything you did, maybe not in the same order), and I couldn't reproduce it.
What are the export options you used?

May I ask how you added the constraint to the attribute?
the export option I used was the default one, with deselected "Adding modelio annotation" and compatibility "EMF UML3.0.0"

You used the wrong export option. You should have used the OMG UML2.4.1 instead of the EMF.
You did everything right apart from this little detail (I assume you added a constraint then added its name and its body).

You're right, it worked. I guess I misread the instructions on the JHipster-UML page. Sorry about that. Thank you very much!

You're welcome


docs(zod): add guide for zod

Status

READY
Description
I added guide for zod
Related PRs
none
Todos

[x] Tests
[x] Documentation
[x] Changelog Entry (unreleased)

Steps to Test or Reproduce
I'll check on document page after merged.

Since CI is failing, change this PR to ready after merged https://github.com/anymaniax/orval/pull/1307.

I did a little bit of rewording but it looks good!


VS Code: tree-sitter wasm bindings memory issue

Tree-sitter WASM bindings usage causes V8 external memory to grow linearly with the number of documents parsed with no clear way to free it.
Unit test for reproduction https://github.com/sourcegraph/cody/pull/3788
Related GitHub threads: #1, #2, #3
I'm able to clean up the V8 external memory that grows in tests, but for that, I hacked a couple of changes into the pre-build tree-sitter WASM bindings. With them, I re-create a new parser instance after parsing 10k documents which allows GC to clean up the previously created WebAssembly.Memory instance
Slack thread.

@valerybugakov I've run into a similar issue with web-tree-sitter, is there something you recommend for freeing the memory from a vscode extension using the wasm vs altering the wasm itself?

Hey @saoudrizwan! Check out this PR for the solution we came up with: https://github.com/sourcegraph/cody/issues/5460


ValueError: model.decoder.embed_tokens.weight doesn't have any device set.

i have downloaded the huge model and i get the above error when i run the example below
import galai as gal
model = gal.load_model("huge", 'float16', 1)
model.generate("Scaled dot product attention:\n\n\[",  device_map="auto")

Hi @mwanzu, can you check on galai 1.1.0? Also, with num_gpus=1 you'll get Out of Memory Exception, as the "huge" model weights are 240 GB in dtype=float16.


Any examples out there for how to use the Websocket side of this gem?

I can figure it out, but I'm just looking for some quickstart-style examples -- just to save some time :-)
Thanks!

I've added an example here:
https://github.com/bitfinexcom/bitfinex-api-rb/blob/b1ce138e85dadcd92bf81819053318515fca0080/examples/ws_client.rb
I'll create a PR soon

I've added several examples in the examples/ folder


Error in Example Java Arguments.

-XX:+PerfDisableSharedMem is written twice - in the 5th and 6th lines.

DONT USE THOSE


Commit filetype gets reset to conf

Description
When I write a commit message and I open telescope in this window - I use telescope for spellchecking - the filetype gets changed to conf after telescope closes. This does not happen with a normal gitcommit.
Neovim version
NVIM v0.6.0-dev+279-g9d5d72c38
Operating system and version
Arch Linux
Steps to reproduce
Open commit message, open telescope in commit message.
Expected behavior
Filetype remains as NeogitCommitMessage
Actual behavior
Filetype becomes conf
Minimal config
vim.cmd([[set runtimepath=$VIMRUNTIME]])
vim.cmd([[set packpath=/tmp/nvim/site]])
local package_root = "/tmp/nvim/site/pack"
local install_path = package_root .. "/packer/start/packer.nvim"
local function load_plugins()
  require("packer").startup({
    {
      "wbthomason/packer.nvim",
      {
        "TimUntersberger/neogit",
        requires = {
          { "nvim-lua/plenary.nvim" },
          { "sindrets/diffview.nvim" },
        },
        config = function()
          print("loaded neogit")
          require("neogit").setup()
        end,
      },
      {
        "nvim-telescope/telescope.nvim",
  	requires = { {'nvim-lua/plenary.nvim'} },
	cmd = "Telescope"
      },
    },
    config = {
      package_root = package_root,
      compile_path = install_path .. "/plugin/packer_compiled.lua",
      display = { non_interactive = true },
    },
  })
end
if vim.fn.isdirectory(install_path) == 0 then
  print("Installing neogit and dependencies.")
  vim.fn.system({ "git", "clone", "--depth=1", "https://github.com/wbthomason/packer.nvim", install_path })
end
load_plugins()
require("packer").sync()

This issue might help you: https://github.com/TimUntersberger/neogit/issues/181#issuecomment-919013652
Do you have telescope set to lazy load?

Sorry I forgot to update to minimal config.

Closing this - if it's still a problem, open a new issue.


Adds semaphores to sequence generator.

Semaphores have been added in order to decrease the number of concurrent
attempts to acquire distributed lock in Cassandra before sequence update.

have you done some benchmarking?

Yes, I have tested how it scales when you ramp up the number of concurrent requests. The old solution got slower the more concurrent requests we had (even the total throughput got a lot lower). The new solution keeps the same performance even if you ramp up the number of concurrent callers.
I can follow up with the results, just give me a moment :)

Ok. it's hard to get good reliable results without running hundreds of rounds with this test suite. However, you see the trend...
New version (with semaphores):
Size: 1, Time: 5
Size: 10, Time: 5
Size: 20, Time: 6
Size: 30, Time: 6
Size: 40, Time: 6
Size: 50, Time: 7
Size: 60, Time: 7
Size: 70, Time: 8
Size: 80, Time: 8
Size: 90, Time: 8
Size: 100, Time: 9
Size: 1000, Time: 9
Old version:
Size: 1, Time: 2
Size: 10, Time: 10
Size: 20, Time: 11
Size: 30, Time: 11
Size: 40, Time: 17
Size: 50, Time: 26
Size: 60, Time: 18
Size: 70, Time: 22
Size: 80, Time: 23
Size: 90, Time: 21
Size: 100, Time: 27
Size: 1000, Time: 28

Please note that the test were performed locally with extremely fast access to the Cassandra node with more performant hardware than our prod-servers. The penalty of calling Cassandra will be even bigger in production.

i will be convinced if we benchmark this in an environment similar to production, i really wanna se how this works with a lock across a network..

Sure, that would be interesting to see. I will do that....stay tuned..

Ok. As promised, here comes results from running in test-env with similar network latency as in prod. I turned out that the current implementation performs even worse (with failures), while the proposed solution in this PR is quite stable:
Old solution:
Concurrent threads: 1, Time: 3882
Concurrent threads: 10, Time: 8150
Concurrent threads: 20, Time: 9045
Concurrent threads: 30, Time: 7782
Concurrent threads: 40, Time: 8052
Concurrent threads: 50, Time: 10380
Concurrent threads: 60, Time: 14726
Concurrent threads: 70, Time: 16681 (2 failures)
Concurrent threads: 80, Time: 16769
Concurrent threads: 90, Time: 17621 (2 failures)
Concurrent threads: 100, Time: 19490 (2 failures)
Concurrent threads: 1000, Time: 23328 (121 failures)
New:
Concurrent threads: 1, Time: 3885
Concurrent threads: 10, Time: 3697
Concurrent threads: 20, Time: 4479
Concurrent threads: 30, Time: 3104
Concurrent threads: 40, Time: 3145
Concurrent threads: 50, Time: 5037
Concurrent threads: 60, Time: 4635
Concurrent threads: 70, Time: 3165
Concurrent threads: 80, Time: 3083
Concurrent threads: 90, Time: 3148
Concurrent threads: 100, Time: 3058
Concurrent threads: 1000, Time: 3371

ok! perfect! :+1:

Thanks @MrShish!


Scripts for building and testing PowerShell repository code on Linux on VSTS.

PR Summary
Scripts for building and testing PowerShell repository code on Linux on VSTS.
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Change is not breaking
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: to the beginning of the title and remove the prefix when the PR is ready.

User-facing changes

[x] Not Applicable
OR
[ ] User-facing Documentation needed

[ ] Issue filed - Issue link:

Testing - New and feature

[x] Not Applicable or can only be tested interactively
OR
[ ] Make sure you've added a new test if existing tests do not effectively test the code changed

[ ] Add [feature] if the change is significant or affects feature tests

@kalgiz Is this YAML file for the Hosted Linux agent in VSTS or do you use your own agents? A comment in the yaml about the targeted platforms/agents would be good. Is this only for internal usage or will there be VSTS PR integration?

We plan to use the hosted agents

@TravisEz13 any way I can salvage this PR?

@rjmholt  I don't think this can be salvaged at this point.


Create plugin: Fix update command

[!NOTE]
This PR does not focus on refactoring, it is only focusing on putting the fires out. Refactoring (e.g. for template data) is planned to happen in an upcoming PR.

The Problem
There was a bug introduced in v4.0.0 which will stop externalising the react-router-dom dependency when updating existing plugins, and this breaks the UI, especially if they don't have any of the .cprc.json files. (The bug only affects app plugins.)
Digging into how to fix this issue revealed other bugs as well that we didn't know about: the templateData used when updating plugins didn't have the same fields as the one we are using in plugin generation, and this resulted in our templates working incorrectly.
What changed?

Use different configs during scaffolding and during updating (This was necessary because there are feature flags that we would like to enable by default for new scaffolds, but we don't want to enable them for existing plugins that doesn't have one (or both) of the .cprc.json files. This can be refactored later.
Start adding debug messages that can be displayed e.g. DEBUG=* - at this point it's for template data

📦 Published PR as canary version: Canary Versions

:sparkles: Test out this PR locally via:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

I'm not sure I understand this logic. I thought the changes to the update command would make it so, once run, it would align the configs and dependencies as thought it was a newly scaffolded plugin? However this sentence means that if I created a plugin with<EMAIL_ADDRESS>I will never get react-routerV6 upgrade as the cprc file will never exist? 🤔 If they don't exist on update should we be writing them both to disk?

Yeah, I know it's getting confusing, in fact these scanarios are not trivial.
Regarding migrating to react-router v6 we thought the following:

scaffolding a new plugin: we already give you react-router v6, as it doesn't cause any extra work for you and it's gonna get you in a better place. This means that we have to enable the feature flag by default.
updating: we still wouldn't like to force plugin devs to do the migration in case they would like to update their plugin, so we wouldn't enable the feature flag by default. We can generate the root/.cprc.json for them, but with a different value for feature flags compared to new scaffolds.

Based on the above I think the only difference between scaffolding and updating is going to be in feature flags. If you generate a new plugin, we can bootstrap you an opinionated set of features, while if you are updating we would like to focus on break as few things in your workflow as possible.
Does this make more sense? :)

Based on the above I think the only difference between scaffolding and updating is going to be in feature flags. If you generate a new plugin, we can bootstrap you an opinionated set of features, while if you are updating we would like to focus on break as few things in your workflow as possible.

Does this make more sense? :)
Yep, this summary makes perfect sense to me.
ERROR in ./src/components/Routes/Routes.tsx:2:10
TS2724: '"react-router-dom"' has no exported member named 'Redirect'. Did you mean 'redirect'?
    1 | import * as React from 'react';
  > 2 | import { Redirect, Route, Switch } from 'react-router-dom';
      |          ^^^^^^^^
    3 | import { SentryHomePage } from '../../pages/SentryHome';
    4 | import { SentryConfigPage } from '../../pages/SentryConfig';
    5 | import { prefixRoute } from '../../utils/utils.routing';

ERROR in ./src/components/Routes/Routes.tsx:2:27
TS2305: Module '"react-router-dom"' has no exported member 'Switch'.
    1 | import * as React from 'react';
  > 2 | import { Redirect, Route, Switch } from 'react-router-dom';
      |                           ^^^^^^
    3 | import { SentryHomePage } from '../../pages/SentryHome';
    4 | import { SentryConfigPage } from '../../pages/SentryConfig';
    5 | import { prefixRoute } from '../../utils/utils.routing';

ERROR in ./src/components/Routes/Routes.tsx:11:57
TS2322: Type '{ path: string; component: () => Element; }' is not assignable to type 'IntrinsicAttributes & RouteProps'.
  Property 'component' does not exist on type 'IntrinsicAttributes & RouteProps'. Did you mean 'Component'?
     9 |   return (
    10 |     <Switch>
  > 11 |       <Route path={prefixRoute(`${ROUTES.SentryHome}`)} component={SentryHomePage} />
       |                                                         ^^^^^^^^^
    12 |       <Route path={prefixRoute(`${ROUTES.SentryConfig}`)} component={SentryConfigPage} />
    13 |       <Redirect to={prefixRoute(ROUTES.SentryHome)} />
    14 |     </Switch>

ERROR in ./src/components/Routes/Routes.tsx:12:59
TS2322: Type '{ path: string; component: () => Element; }' is not assignable to type 'IntrinsicAttributes & RouteProps'.
  Property 'component' does not exist on type 'IntrinsicAttributes & RouteProps'. Did you mean 'Component'?
    10 |     <Switch>
    11 |       <Route path={prefixRoute(`${ROUTES.SentryHome}`)} component={SentryHomePage} />
  > 12 |       <Route path={prefixRoute(`${ROUTES.SentryConfig}`)} component={SentryConfigPage} />
       |                                                           ^^^^^^^^^
    13 |       <Redirect to={prefixRoute(ROUTES.SentryHome)} />
    14 |     </Switch>
    15 |   );

Found 4 errors in 2079 ms.

adding the external to webpack.config.js for react-router-dom fixes the problem.

note - running create plugin with v4.0.1 generates a scenes-app with
"react-router-dom": "v5.3.3",
but the update sets it to  "react-router-dom": "^6.22.0",
to duplicate, generate a scenes-app, then do an update right after, the same type of errors will occur.,

(@briangann looks like the last fix is fixing the issue, thanks again for the help.)


should throw earlier if styleSheets.length = 0

We just accidentally encountered a case that styleSheets.length === 0 caused by some unknow reasons (still under investigation, but pretty sure it has nothing with styled-components). Thought it would be more reasonable to handle such case rather than letting it falls into the for loop section.

As far as I know, this only happens if multiple copies of styled components are loaded at once

maybe throw a different error if size===0 ?

Beefed up the error in 3.4.8 to be more helpful and offer a potential fix


News

D2Common.0x6FDB64A0 and LoadItemStatCost Now they seem to work properly, however the STATLIST_InsertStatModOrFail_6FDB7690 and D2Common.0x6FDB5830 functions are not working properly.
STATLIST_InsertStatModOrFail_6FDB7690 it's wrong in some ISC, example: Cold Skill Damage %
D2Common.0x6FDB5830 it has a problem with the Auras. The auras of nearby friendly units do not share it with other friendly units (disabling it works perfectly).

Do you have more details about the Auras ?
It seems to work fine for me after patching 0x6FDB5830  by using an act2 mercenary.

I checked all the code (this time updated) and only found 2 functions not working.
STATLIST_InsertStatModOrFail (sub_6FDB7690) Wrong ISC With OP 2
STATLIST_SetStat (#10463) Not Load The Game

in the case of the last function, in Vanilla it seems to be a independent function (which doesn't just make a call and "go"), and uses pUnit.

It's been a while and afaik I couldn't reproduce the issue (however it does not mean it is fixed).
Should I keep this issue open ?

It's been a while and afaik I couldn't reproduce the issue (however it does not mean it is fixed). Should I keep this issue open ?

Those issues were fixed.


[Feature] translate the chinaunion blog module of incubator-streampark-website

Search before asking

[X] I had searched in the feature and found no similar feature requirement.

Description
Translate the blog on the streampark official website into English
https://streampark.apache.org/blog/streampark-usercase-chinaunion
Usage Scenario
No response
Related issues
#3218
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

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

https://github.com/apache/incubator-streampark-website/pull/281


Use None to center widgets & to loop audio

Maybe fixes #154? The only other place it's used is in entity animations where you can specify -1 as the current member but changing that would require a bigger change with multiple parts.

I'll take a look at adding changes in Entity to this branch before merging.


Translation README in Persian language

Thanks for your input! Please let me know when the conflicts have been resolved so I can merge it! 😄

I'll close this PR now due to inactivity. If it's still an issue, feel free to reopen it! 😃


Featured Circuits/ Editor Picks

Desmos
Refer to the way Desmos shows featured works for more details.
Currently featured circuits is hardcoded temporarily. Will need a nice way for admins to selectively feature circuits.

[ ] Create Model FeaturedProjects - primary attribute - project_id
[ ] Send email to the featured project's author
[ ] Monthly/ Weekly send email to everyone about past month's/week's featured works
[ ] Ensure FeaturedProjects cannot be made private or limited access
[ ] Provide a way for people to submit their work to be featured

Is there any work left to be done on this @satu0king ?

Is there any work left to be done on this @satu0king ?

There has been no work done on this! The featured circuits you see on the home page are hardcoded.

Ok, cool then i will start working on this one.


Add jansson library as replaceable of json-c

Since jansson and json-c conflict with each other in namespace, they can't be used as dependency together in a project. That means libnsq can't be used with any other library which depends on jansson (e.g. avro-c).
Note: This PR is in conflict with #8 .

this is great!
@ploxiln any interest in reviewing this?

So, uh, I don't use libnsq, so I'm not the best to review it. But I can throw in a few comments from the peanut-gallery.
I think you could avoid using #define for everything in the new json.h. I think you could use a couple of typedefs e.g. typedef struct json_object nsq_json_t, and then write (static) functions that wrap the json-c or jansson functions. I think that would be better.

@ploxiln Thanks for your advices 🙂

this needs a rebase, but I think this is looking good
cc @ploxiln

LGTM 👍

@belltoy cool, looks like this needs a rebase and can you also squash down to one commit while you're doing that?  Thanks!

@mreiferson rebased

LGTM


add gen_outages_by_type dataset

This looks good! Running test_pjm locally, there is one test failure, test_get_interconnection_queue, but I think that was failing before.


the trialId is different with the trialId displayed in openpai

Describe the issue:
When I submit a trial to openpai using nni, the trialId is different with the trialId displayed in openpai. Please ignore the error of trail failed, which is caused by my program.
I note assigning environment ysqsa to trial Vj7Kl in nnimanager.log, in whichysqsa is shown in openpai, and Vj7Kl is shown in nni web page.
Environment:

NNI version: 2.5
Training service (local|remote|pai|aml|etc): openpai
Client OS:
Server OS (for remote mode only): Ubuntu 20.04.2 LTS (GNU/Linux 5.11.0-43-generic x86_64)
Python version: 3.9.7
PyTorch/TensorFlow version: pytorch1.10
Is conda/virtualenv/venv used?: conda
Is running in Docker?: no

Configuration:

Experiment config (remember to remove secrets!):

searchSpaceFile: search_space_test.json
useAnnotation: false
trialCommand: python3 train.py
trialGpuNumber: 0
trialConcurrency: 12
maxTrialNumber: 12
nniManagerIp: XXXXX
tuner:
  name: BatchTuner
trainingService:
  platform: openpai
  host: http://XXXXX
  username: XXXXXX
  token: XXXXX
  dockerImage: XXXXXXXXX
  trialCpuNumber: 2
  trialMemorySize: 10GB
  storageConfigName: XXXX
  localStorageMountPoint: XXXXX
  containerStorageMountPoint: XXXXXX
  virtualCluster: vc1

Search space:

{
  "combine_params": {
    "_type": "choice",
    "_value": [
      {
        "view_n_old": 2
      },
      {
        "view_n_old": 3
      },
      {
        "view_n_old": 4
      }
    ]
  }
}

Log message:

nnimanager.log:

[2022-04-26 21:40:27] INFO (NNIDataStore) Datastore initialization done
[2022-04-26 21:40:27] INFO (RestServer) RestServer start
[2022-04-26 21:40:28] INFO (RestServer) RestServer base port is 4682
[2022-04-26 21:40:28] INFO (main) Rest server listening on: http://<IP_ADDRESS>:4682
[2022-04-26 21:40:28] INFO (NNIManager) Starting experiment: Awj8Wq6i
[2022-04-26 21:40:28] INFO (NNIManager) Setup training service...
[2022-04-26 21:40:29] INFO (NNIManager) Setup tuner...
[2022-04-26 21:40:29] INFO (NNIManager) Change NNIManager status from: INITIALIZED to: RUNNING
[2022-04-26 21:40:29] INFO (NNIManager) Add event listeners
[2022-04-26 21:40:29] INFO (TrialDispatcher) TrialDispatcher: started channel: WebCommandChannel
[2022-04-26 21:40:29] INFO (TrialDispatcher) TrialDispatcher: copying code.
[2022-04-26 21:40:54] INFO (NNIManager) NNIManager received command from dispatcher: ID,
[2022-04-26 21:40:54] INFO (NNIManager) NNIManager received command from dispatcher: TR, {"parameter_id": 0, "parameter_source": "algorithm", "parameters": {"view_n_old": 2}, "parameter_index": 0}
[2022-04-26 21:40:54] INFO (NNIManager) NNIManager received command from dispatcher: TR, {"parameter_id": 1, "parameter_source": "algorithm", "parameters": {"view_n_old": 3}, "parameter_index": 0}
[2022-04-26 21:40:54] INFO (NNIManager) NNIManager received command from dispatcher: TR, {"parameter_id": 2, "parameter_source": "algorithm", "parameters": {"view_n_old": 4}, "parameter_index": 0}
[2022-04-26 21:40:54] INFO (NNIManager) NNIManager received command from dispatcher: NO, {"parameter_id": 0, "parameter_source": "algorithm", "parameters": "", "parameter_index": 0}
[2022-04-26 21:40:54] INFO (NNIManager) Change NNIManager status from: RUNNING to: TUNER_NO_MORE_TRIAL
[2022-04-26 21:40:55] INFO (TrialDispatcher) Initialize environments total number: 0
[2022-04-26 21:40:55] INFO (TrialDispatcher) TrialDispatcher: run loop started.
[2022-04-26 21:40:59] INFO (NNIManager) submitTrialJob: form: {
  sequenceId: 0,
  hyperParameters: {
    value: '{"parameter_id": 0, "parameter_source": "algorithm", "parameters": {"view_n_old": 2}, "parameter_index": 0}',
    index: 0
  },
  placementConstraint: { type: 'None', gpus: [] }
}
[2022-04-26 21:40:59] INFO (NNIManager) submitTrialJob: form: {
  sequenceId: 1,
  hyperParameters: {
    value: '{"parameter_id": 1, "parameter_source": "algorithm", "parameters": {"view_n_old": 3}, "parameter_index": 0}',
    index: 0
  },
  placementConstraint: { type: 'None', gpus: [] }
}
[2022-04-26 21:40:59] INFO (NNIManager) submitTrialJob: form: {
  sequenceId: 2,
  hyperParameters: {
    value: '{"parameter_id": 2, "parameter_source": "algorithm", "parameters": {"view_n_old": 4}, "parameter_index": 0}',
    index: 0
  },
  placementConstraint: { type: 'None', gpus: [] }
}
[2022-04-26 21:40:59] INFO (TrialDispatcher) Assign environment service pai to environment ysqsa
[2022-04-26 21:41:00] INFO (TrialDispatcher) requested environment ysqsa and job id is nni_exp_Awj8Wq6i_env_ysqsa.
[2022-04-26 21:41:00] INFO (TrialDispatcher) Assign environment service pai to environment EAdup
[2022-04-26 21:41:00] INFO (TrialDispatcher) requested environment EAdup and job id is nni_exp_Awj8Wq6i_env_EAdup.
[2022-04-26 21:41:00] INFO (TrialDispatcher) Assign environment service pai to environment u7YpN
[2022-04-26 21:41:00] INFO (TrialDispatcher) requested environment u7YpN and job id is nni_exp_Awj8Wq6i_env_u7YpN.
[2022-04-26 21:41:00] INFO (TrialDispatcher) requested new environment, live trials: 3, live environments: 0, neededEnvironmentCount: 3, requestedCount: 3
[2022-04-26 21:41:01] INFO (EnvironmentInformation) EnvironmentInformation: nni_exp_Awj8Wq6i_env_ysqsa change status from UNKNOWN to WAITING.
[2022-04-26 21:41:01] INFO (EnvironmentInformation) EnvironmentInformation: nni_exp_Awj8Wq6i_env_EAdup change status from UNKNOWN to WAITING.
[2022-04-26 21:41:01] INFO (EnvironmentInformation) EnvironmentInformation: nni_exp_Awj8Wq6i_env_u7YpN change status from UNKNOWN to WAITING.
[2022-04-26 21:41:04] INFO (TrialDispatcher) TrialDispatcher: env ysqsa received initialized message and runner is ready, env status: WAITING.
[2022-04-26 21:41:04] INFO (TrialDispatcher) TrialDispatcher: Version check in trialKeeper success!
[2022-04-26 21:41:05] INFO (TrialDispatcher) TrialDispatcher: env EAdup received initialized message and runner is ready, env status: WAITING.
[2022-04-26 21:41:06] INFO (TrialDispatcher) TrialDispatcher: Version check in trialKeeper success!
[2022-04-26 21:41:06] INFO (EnvironmentInformation) EnvironmentInformation: nni_exp_Awj8Wq6i_env_EAdup change status from WAITING to RUNNING.
[2022-04-26 21:41:06] INFO (TrialDispatcher) assigning environment EAdup to trial prvak.
[2022-04-26 21:41:06] INFO (TrialDispatcher) TrialDispatcher: env u7YpN received initialized message and runner is ready, env status: WAITING.
[2022-04-26 21:41:07] INFO (TrialDispatcher) TrialDispatcher: Version check in trialKeeper success!
[2022-04-26 21:41:09] INFO (NNIManager) Trial job prvak status changed from WAITING to RUNNING
[2022-04-26 21:41:11] INFO (EnvironmentInformation) EnvironmentInformation: nni_exp_Awj8Wq6i_env_ysqsa change status from WAITING to RUNNING.
[2022-04-26 21:41:11] INFO (EnvironmentInformation) EnvironmentInformation: nni_exp_Awj8Wq6i_env_u7YpN change status from WAITING to RUNNING.
[2022-04-26 21:41:11] INFO (TrialDispatcher) assigning environment ysqsa to trial Vj7Kl.
[2022-04-26 21:41:11] INFO (TrialDispatcher) assigning environment u7YpN to trial rim7M.
[2022-04-26 21:41:14] INFO (NNIManager) Trial job Vj7Kl status changed from WAITING to RUNNING
[2022-04-26 21:41:14] INFO (NNIManager) Trial job rim7M status changed from WAITING to RUNNING
[2022-04-26 21:41:24] INFO (NNIManager) Trial job prvak status changed from RUNNING to FAILED
[2022-04-26 21:41:24] INFO (NNIManager) NNIManager received command from dispatcher: NO, {"parameter_id": 12, "parameter_source": "algorithm", "parameters": "", "parameter_index": 0}
[2022-04-26 21:41:29] INFO (NNIManager) Trial job Vj7Kl status changed from RUNNING to FAILED
[2022-04-26 21:41:29] INFO (NNIManager) Trial job rim7M status changed from RUNNING to FAILED
[2022-04-26 21:41:29] INFO (NNIManager) NNIManager received command from dispatcher: NO, {"parameter_id": 13, "parameter_source": "algorithm", "parameters": "", "parameter_index": 0}

dispatcher.log:

[2022-04-26 21:40:29] INFO (nni.runtime.msg_dispatcher_base/MainThread) Dispatcher started
[2022-04-26 21:40:29] ERROR (nni.common.hpo_utils.validation/Thread-1) search space "combine_params" (choice) should only contain numbers or strings : OrderedDict([('_type', 'choice'), ('_value', [OrderedDict([('view_n_old', 2)]), OrderedDict([('view_n_old', 3)]), OrderedDict([('view_n_old', 4)])])])

nnictl stdout and stderr:

How to reproduce it?:

Or, how can I get the trailId displayed in openpai by some command like nni.get_experiment_id() or get_trial_id()?


api docs: replace subject with topic for Curl

subject is a deprecated alias since zulip 2.0.0
It seems to be the only hardcoded example according to https://github.com/zulip/zulip/commit/c4d805a82c94dad0ae2209ea6a23489f879c13bd

Testing plan:
tried a request on a zulipchat instance.

Merged, thanks @kraktus!


Tmux in iTerm and $TERM_PROGRAM

Tmux integration works on local machine and on SSH connection.
However if I do su - root, the integration doesn't work. Only if I do tmux -CCmyself.
Is there a way to disable checking for the $TERM_PROGRAM or recognize it in these situations?

The variable TERM_PROGRAM isn't being taken to the root when you change to superuser via su - root, even if it is set on the client:
SendEnv TERM_*

And on the server:
AcceptEnv TERM_*

As this only works for the user the session is initiated with and not for root, I suggest to remove the $TERM_PROGRAM condition (as oh-my-zsh does).

I don't use tmux. So, others who use it will have to comment.

the most universal and simple fix is the commit I referenced

kinda related question - is TERM_PROGRAM supposed to be automatically passed to the remote server? because it doesn't for me (env | grep TERM_PROGRAM is empty) and therefore the integration doesn't actually work


bitwise negation gives incorrect results

i tried to run
System.print(~1)

in wren and it is giving me "4294966895" which is different from what i am used to in c....
is this an error??

It should return ~(uint32t)1.

The answer you're getting appears to be ~400 rather than ~1.
The latter gives<PHONE_NUMBER> on my machine (or in hex 0xfffffffe) which is what I'd expect.
In Wren the operands are converted internally to unsigned 32 bit integers before bit-wise operations are performed.

Thanks for the replys...

Did you find the error? Because how you presented it can be various things?


The memory and CPU info won't worky!

As you can see, I compiled it with all the shit, but it still no worky worky! Can some smart guy help here?

Haha, now it worky!

Okay, upon compiling it didn't work. Shit, back to square one.

Now it REALLY worky!


ci: parallelize Examples tests with turbo

This is an alternative approach to #4190. There is more boilerplate, but it models each test of an example as its own workspace, so turbo can parallelize its execution. If when/we turn on remote caching in CI that will help even more.
Reviewer notes (please read 😄 )

Even though we have turbo.json configuration for what contributes to the cache key, we are still using the Github Actions to limit when this runs to changes in examples/ and examples-tests/**. Since these tests do not exercise a locally built turbo, this is fine. In the future we may want to run examples tests against CLI changes as well, but we will cross that bridge when we get there.
Because the examples/ directory itself is a single workspace, any change to any example will cause a cache miss on all examples-tests. This is not ideal, but I'm not attempting to solve that here.
There are some funky tests that don't really make sense to me (e.g. npm with the with-yarn). I'm not planning to change/delete those in this PR, unless I've translated the matrix wrong.
We are now validating the output of turbo. I had to do this mostly for debugging issues with this PR, but ended up keeping it. The disadvantage is that if a new version of turbo is published and changes this output, we won't know until the next time these tests are triggered. This exacerbates an existing problem, so I'm noting here, but I think it's actually a good problem to surface when it happens. We could consider running these examples tests on publishing a new version.

Closing in favor of #5011, because of so much noise from automation in this PR


Separate liver and tumor label at the same time

Hello, I want to segment the liver and tumor labels in LITS at the same time. Can they be used directly? Or need to modify the number of channels in the code?

Another problem is that when I run train, the Loading dataset will always be loaded after a short period of time. I found that my memory usage has reached the upper limit. How can I modify it to reduce the memory usage?

Hi, sorry for the late reply. Yes, you can do multi-label segmentation. Look at this tutorial: https://github.com/Project-MONAI/tutorials/blob/master/3d_segmentation/spleen_segmentation_3d.ipynb You have to set two channels out in the transforms. and change the loss function.
Memory usage is either with smaller batch_size, patch_size, or instead of : check_train = "monai.data.CacheDataset(data=train_dicts, transform=train_transforms)" use "monai.data.Dataset"

Hi, I added the modified version for multi-label segmentation. If you have liver and tumor remember to put 3 channels output, because you must include also the background.
For the dataset I confirm you must change Cache to Dataset in the loader


Remove old command to start heroku celery worker

fix for https://github.com/OpenSourcePolicyCenter/webapp-public/issues/20


Add CHANGELOG.md

Even though this is a new project, keeping up with its releases and navigating the history is already unnecessarily hard. At least for me.
I summed up the history in a basic changelog. I didn't want to clutter it (and spend much time on it), so it doesn't include changes in implementation traits, documentation or tests. Only "notable" changes to OneOf. I hope, you don't mind maintaining it. Feel free to make edits before merging.
To simplify the process, I also added tags like 0.3.0 on commits that modify the version in Cargo.toml. But it turns out that I can't move them over a pull request. Consider adding tags yourself, this sloudn't take much time. This simplifies git log navigation and also allows Github to autogenerate releases.

Maintaining this will slow down the experimentation that needs to happen quickly at this stage of the project, and I'm expecting it to essentially stop changing forever relatively soon, since it should be the kind of crate that doesn't require ongoing maintenance (at least not until std::error::Error::provide stabilizes)


[Rename]Changed seatunnel-engine to seatunnel-zeta

@hailin0
Good evening sir,
Contribution In #3857
I fix issue https://github.com/apache/incubator-seatunnel/issues/3857
Purpose of this pull request
I rename the seatunnel-engine to seatunnel-zeta as per your request and issue.
Check list

[ ] Code changed are covered with tests, or it does not need tests for reason:
[ ] If any new Jar binary package adding in your PR, please add License Notice according
New License Guide
[ ] If necessary, please update the documentation to describe the new feature. https://github.com/apache/incubator-seatunnel/tree/dev/docs
[ ] If you are contributing the connector code, please check that the following files are updated:

Update change log that in connector document. For more details you can refer to connector-v2
Update plugin-mapping.properties and add new connector information in it
Update the pom file of seatunnel-dist

[ ] Update the release-note.

waiting #3798 merged cc @hailin0

Please revert any changes that are not related to PR requirements

+1
@Sachin-2206 check files change
https://github.com/apache/incubator-seatunnel/pull/3888/files

@TyrantLucifer I think sir whn I changed package name seatunnel-engine to seatunnel-zeta . The java will unable to get old name as its package name same till now . If we change its package name , it will be alright

@TyrantLucifer Sir I will again try but now I will not change the import classes name, may be after that it will not return any issue. Give me some more time , I will done it by Monday. Thank you.


kube-rbac-proxy address already in use

What did you do?
Quick start with kube-prometheus
What did you expect to see?
running pods in monitoring namespace
Grafana is fine and metrics from master is fine. Pulling values from prometheus dashboard works.
What did you see instead? Under which circumstances?
node-exporter-d7mxn                    1/2       CrashLoopBackOff   219        19h
node-exporter-jzvnw                    2/2       Running            0          19h
node-exporter-pwfh4                    1/2       CrashLoopBackOff   220        19h
node-exporter-vbgmt                    1/2       CrashLoopBackOff   220        19h
Logs:
F0712 18:16:20.314448   21329 main.go:197] Failed to listen on secure address: listen tcp :9100: bind: address already in use
On each of them.
Environment

Kubernetes version information:
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.0", GitCommit:"91e7b4fd31fcd3d5f436da26c980becec37ceefe", GitTreeState:"clean", BuildDate:"2018-06-27T20:17:28Z", GoVersion:"go1.10.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.0", GitCommit:"91e7b4fd31fcd3d5f436da26c980becec37ceefe", GitTreeState:"clean", BuildDate:"2018-06-27T20:08:34Z", GoVersion:"go1.10.2", Compiler:"gc", Platform:"linux/amd64"}

Kubernetes cluster kind:
kubadm

Pointers?
Thanks,
Tom

Node exporter is running is in host networking. Thereby it binds to a port (9100) directly on your nodes interfaces. Can you make sure no other application is already set to that port on your node?
You could:

ssh into a node
run netstat -l

Feel free to post the output here so we can further debug your issue.

I think this is because two node-exporter pods are attempting to bind to the same hostport. I seem to recall there is some undocumented feature for the daemonset that enforces that a pod must be terminated before a new one is rolled out.

@tomsherrod could you try setting terminationGracePeriodSeconds: 0 in the daemonset's pod template?

@mxinden
netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 <IP_ADDRESS>:22              <IP_ADDRESS>:*               LISTEN      1236/sshd
tcp        0      0 <IP_ADDRESS>:53848           <IP_ADDRESS>:*               LISTEN      18706/rpc.statd
tcp        0      0 <IP_ADDRESS>:44325         <IP_ADDRESS>:*               LISTEN      23387/kubelet
tcp        0      0 <IP_ADDRESS>:10248         <IP_ADDRESS>:*               LISTEN      23387/kubelet
tcp        0      0 <IP_ADDRESS>:10249         <IP_ADDRESS>:*               LISTEN      23182/kube-proxy
tcp        0      0 <IP_ADDRESS>:9101          <IP_ADDRESS>:*               LISTEN      23983/node_exporter
tcp        0      0 <IP_ADDRESS>:111             <IP_ADDRESS>:*               LISTEN      18708/rpcbind
tcp6       0      0 :::30326                :::*                    LISTEN      23182/kube-proxy
tcp6       0      0 :::22                   :::*                    LISTEN      1236/sshd
tcp6       0      0 :::51035                :::*                    LISTEN      18706/rpc.statd
tcp6       0      0 :::30016                :::*                    LISTEN      23182/kube-proxy
tcp6       0      0 :::31680                :::*                    LISTEN      23182/kube-proxy
tcp6       0      0 :::30535                :::*                    LISTEN      23182/kube-proxy
tcp6       0      0 :::10250                :::*                    LISTEN      23387/kubelet
tcp6       0      0 :::32171                :::*                    LISTEN      23182/kube-proxy
tcp6       0      0 :::9100                 :::*                    LISTEN      1243/node_exporter
tcp6       0      0 :::111                  :::*                    LISTEN      18708/rpcbind
tcp6       0      0 :::10255                :::*                    LISTEN      23387/kubelet
tcp6       0      0 :::10256                :::*                    LISTEN      23182/kube-proxy
udp        0      0 <IP_ADDRESS>:650           <IP_ADDRESS>:*                           18706/rpc.statd
udp        0      0 <IP_ADDRESS>:652             <IP_ADDRESS>:*                           18708/rpcbind
udp        0      0 <IP_ADDRESS>:8472            <IP_ADDRESS>:*                           -
udp        0      0 <IP_ADDRESS>:43786           <IP_ADDRESS>:*                           18706/rpc.statd
udp        0      0 <IP_ADDRESS>:111             <IP_ADDRESS>:*                           18708/rpcbind
udp6       0      0 :::652                  :::*                                18708/rpcbind
udp6       0      0 :::47746                :::*                                18706/rpc.statd
udp6       0      0 :::111                  :::*                                18708/rpcbind
docker ps | grep exporter
b70f30ce4b62        ff5ecdcfc4a2                                                                                "/bin/node_exporte..."   42 hours ago        Up 42 hours                             k8s_node-exporter_node-exporter-d7mxn_monitoring_82e8896a-855a-11e8-9e2d-005056bc3ce7_0
5eb711ee6f59        k8s.gcr.io/pause:3.1                                                                                "/pause"                 42 hours ago        Up 42 hours                             k8s_POD_node-exporter-d7mxn_monitoring_82e8896a-855a-11e8-9e2d-005056bc3ce7_0
Within the working master node-exporter container:
tcp        0      0 <IP_ADDRESS>:9101          <IP_ADDRESS>:*               LISTEN      26537/node_exporter
tcp        0      0 :::9100                 :::*                    LISTEN      26595/kube-rbac-pro
A failing node node-exporter container:
tcp        0      0 <IP_ADDRESS>:9101          <IP_ADDRESS>:*               LISTEN      23983/node_exporter
tcp        0      0 :::9100                 :::*                    LISTEN      -
@brancz Will give it a try.
Thank you both!

@brancz No joy. Even after the change, they fall back into the CrashLoopBackOff.

@tomsherrod Did you find any solution to this problem? I am currently experiencing it as well. The port is in use by node-exporter, and setting a termination grace period (whether to 0 or something like 60) does not work.

@Dissonant-Tech I did not find a specific solution. I have installed it on a new cluster, actually a couple of other clusters without issue. I did find on one of the images being used, a host node_exporter set to start with machine startup. Why it was not showing up with netstat, not sure. I now make sure host images do NOT have node_exporter even installed.

have a official solution？the same problem

still getting the same error, even after the above fix.
node-exporter-62kqs                    1/2     CrashLoopBackOff   6          9m57s
node-exporter-92nl7                    1/2     CrashLoopBackOff   6          9m57s
node-exporter-9d2wl                    1/2     CrashLoopBackOff   6          9m57s
node-exporter-d578t                    1/2     CrashLoopBackOff   6          9m57s
node-exporter-hgdw2                    1/2     CrashLoopBackOff   6          9m57s
node-exporter-lgm2v                    1/2     CrashLoopBackOff   6          9m57s


Fix for Single Model Generation

This PR addresses the issue #5
It ensures that the following commands work as expected
php artisan generate:factory Car
php artisan generate:factory Car --path=app/Models

@chriischambers you should not need to add the --path option for any model in app/ or app/Models directory. This is resolved automatically


Allow PlatformColor to return user-defined named asset color

Summary
According to https://reactnative.dev/docs/platformcolor:

You can use the PlatformColor function to access native colors on the target platform by supplying the native color’s corresponding string value.

This should also include named asset colors as they are part of the colors available on the iOS platform.
See
https://developer.apple.com/documentation/uikit/uicolor/2877380-colornamed?language=objc
https://developer.apple.com/library/archive/documentation/Xcode/Reference/xcode_ref-Asset_Catalog_Format/Named_Color.html
This PR allows using PlatformColor to get a user-defined named asset color in the same manner that it works on android via xml resources:

<View style={{ backgroundColor: PlatformColor("MyCustomColor") }}>...</View>

would set the background color of the view to the named asset color "MyCustomColor". Currently this doesn't work.
Changelog

[iOS] [Added] - Allow PlatformColor to return user-defined named asset color
Test Plan

Define an asset color as specified here: https://developer.apple.com/documentation/xcode/supporting_dark_mode_in_your_interface?language=objc

Access the color via PlatformColor("asset color name")

Hi @shergin 👋 I would love to move this PR forward. Is there anything missing in order to get it merged?

@danilobuerger how do you supply custom Android colors?

The examples for PlatformColor in RNTester have tests for this behavior on Android. Can you add some examples to iOS to ensure that this keeps working?

@TheSavior You asked me the same thing in another PR (#29728) which I happily complied with and invested time in. Now that PR has again not seen any progress in nearly 3 months. So I wonder if I really should invest time again to add this here if my PRs just don't get merged. I started both PRs in August, now its January. It feels disrespectful to me if I invest all that time and effort into making PRs, but then they never get merged or answered in a reasonable time frame by the maintainers.

@TheSavior You asked me the same thing in another PR (#29728) which I happily complied with and invested time in. Now that PR has again not seen any progress in nearly 3 months. So I wonder if I really should invest time again to add this here if my PRs just don't get merged. I started both PRs in August, now its January. It feels disrespectful to me if I invest all that time and effort into making PRs, but then they never get merged or answered in a reasonable time frame by the maintainers.

@danilobuerger Can you try rebasing this branch? I suspect the failing Facebook Internal tests are due to the iOS 10 issues.


Slick Slider Image Rotation on IE9

I am currently facing an issue with slick slider image slideshow.Before moving into next slide the slider just scoots through every other image in the source library.Even on clicking the next or previous controls on the slider there is a slight glitch in which slider does a quick scooting through all the images before moving to the next slide.
This issue is particular to IE9 as works fine for >IE9
Any help would be immensely appreciated.

Please create a http://jsfiddle.net/ which demonstrates this occurring and we'll investigate :grin:
Simon


Upgrade Girder, Minerva, Romanesco common requirements

Fixes #194.
amqp changes at (not up to date):
https://github.com/celery/py-amqp/blob/master/Changelog
Billiard changes at (not up to date):
https://github.com/celery/billiard/blob/master/CHANGES.txt
Kombu changes at:
http://docs.celeryproject.org/projects/kombu/en/latest/changelog.html
Pillow changes at:
https://pillow.readthedocs.org/en/3.1.x/releasenotes/3.1.0.html
PyMongo changes at:
https://api.mongodb.org/python/current/changelog.html
pytz changes at (not up to date):
https://launchpad.net/pytz/+announcements
Requests changes at:
http://docs.python-requests.org/en/latest/community/updates/#release-and-version-history
Six changes at:
https://bitbucket.org/gutworth/six/src/1991f8b5b654f077e773f05695a08e0506b7367f/CHANGES

This should be merged along with: https://github.com/Kitware/minerva/pull/259 and https://github.com/girder/girder/pull/11773 to bring all three projects in sync and up to date (with respect to common requirements only).

Fixed a test failure caused by Pillow upgrade. In the test, the new version of Pillow generates an output image with a slightly different mean pixel value.
I'm not sure why this happens, to be honest.

Here's why the image test needed to be updated:
From the Pillow 2.7.0 release notes:

The GaussianBlur() implementation has been replaced with a sequential
application of box filters.

This results in a slightly different pixel mean value after blurring.

There was an error in the previous version of Pillow, where blur radius
(the standard deviation of Gaussian) actually meant blur diameter. For
example, to blur an image with actual radius 5 you were forced to use
value 10. This has been fixed. Now the meaning of the radius is the same
as in other software.

If you used a Gaussian blur with some radius value, you need to divide
this value by two.

This requires the input "blur_radius" parameters to be updated in the test.

I also fixed a test failure that appears to also be causing problems on the existing master. I think it's cropped up in the last 11 days, since master was last updated. If someone could confirm this (I don't have Romanesco set up to test locally, and I don't know how / have permission to force Travis to re-run tests on the current master), I'd appreciate it.
One of the tests makes calls to api.opentreeoflife.org. This service seems to now require the use of HTTPS.
Despite the fact that the Requests library is used to make these calls, this issue appears to be unrelated to the upgrade of this library (the failure occurs even with the prior version of the library).

This required system dependencies libjpeg-dev zlib1g-dev on Ubuntu 14.04.  This should be documented.

The API for Opentree has been evolving. I am not surprised if our test is out of date. As far as. Am concerned, we could drop a test that directly invokes open tree in favor of test for with a small tree file instead. Romensco tests should break it Opentree changes their API.

On Jan 16, 2016, at 7:49 PM, Brian Helba<EMAIL_ADDRESS>wrote:
I also fixed a test failure that appears to also be causing problems on the existing master. I think it's cropped up in the last 11 days, since master was last updated. If someone could confirm this (I don't have Romanesco set up to test locally, and I don't know how / have permission to force Travis to re-run tests on the current master), I'd appreciate it.
One of the tests makes calls to api.opentreeoflife.org. This service seems to now require the use of HTTPS.
Despite the fact that the Requests library is used to make these calls, this issue appears to be unrelated to the upgrade of this library (the failure occurs even with the prior version of the library).
—
Reply to this email directly or view it on GitHub.

Ping @jeffbaumes . I believe he wrote the tests in question.

Agreed that the opentree test should go away.

@jeffbaumes @mgrauer @zachmullen Ping.

@brianhelba  Can you also add those system packages to the installation.rst or link back from there?
I realize there may be a need for larger doc grooming, but I think this is a reasonable addition within this PR.

@mgrauer Updated my last commit to add the note in installation.rst.

LG from my end

Merging.


Tests failing when using django-storages (S3BotoStorage)

requirements
boto==2.38.0
django-storages==1.1.8

settings
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
AWS_S3_SECURE_URLS = True       # use http instead of https
AWS_QUERYSTRING_AUTH = False    # don't add complex authentication-related querying

AWS_S3_ACCESS_KEY_ID = 'MY-KEY'
AWS_S3_SECRET_ACCESS_KEY = 'MY-SECRET'
AWS_STORAGE_BUCKET_NAME = 'MY-BUCKET'

result
python runtests.py wagtail.wagtailimages --failfast

======================================================================
FAIL: test_closes_image (wagtail.wagtailimages.tests.test_models.TestGetWillowImage)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/wagtail-1.0/wagtail/wagtailimages/tests/test_models.py", line 239, in test_closes_image
    self.assertTrue(self.image.file.closed)
AssertionError: False is not true

----------------------------------------------------------------------
Ran 4 tests in 2.563s

FAILED (failures=1)
Destroying test database for alias 'default'...

This looks like a bug in django-storages to me.
When you call file.close() the file.closed property should return True.
django-storages doesn't override djangos default definition of this property: https://github.com/django/django/blob/master/django/core/files/base.py#L67-L69
This tells if the file is closed by simply accessing the .file attribute, this reopens the file: https://github.com/jschneier/django-storages/blob/master/storages/backends/s3boto.py#L120-L138
so .closed returns True

Closing as this isn't a Wagtail bug


Adds columns config field

This allows the setting of the table columns to use by name.
Useful for avoiding horizontal scroll-bars.
Also bumps the patch version.

Perhaps this should be a minor version now that I look at it.  Does not matter that much I guess

Oh and thanks for the code by the way. I find it very useful in my docs

Thanks!

Thanks for the review. And the merging! Could you publish the new version to pypi so readthedocs can use it?

Thanks!


feat: Add GitHub action to add owlbot:run label to newly opened PRs

Description
Thank you for opening a Pull Request!
Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

[X] Follow the CONTRIBUTING Guide.
[ ] ~You are listed as the author in your notebook or README file.~

[ ] ~Your account is listed in CODEOWNERS for the file(s).~

[X] Make your Pull Request title in the https://www.conventionalcommits.org/ specification.
[X] Ensure the tests and linter pass (Run nox -s format from the repository root to format).
[X] Appropriate docs were updated (if necessary)

@holtskinner:
The labeling part of this PR is working as expected. But the OwlBot logs don't look quite right to me, not sure if I'm testing or invoking it in an odd way. I can merge and we can try OwlBot in new test PRs if that works for you?
tep #5: Skipping: samples/AUTHORING_GUIDE.md
Step #5: Skipping: samples/CONTRIBUTING.md
Step #5: scripts/decrypt-secrets.sh
Step #5: scripts/readme-gen/readme_gen.py.j2
Step #5: scripts/readme-gen/templates/README.tmpl.rst
Step #5: scripts/readme-gen/templates/auth.tmpl.rst
Step #5: scripts/readme-gen/templates/auth_api_key.tmpl.rst
Step #5: scripts/readme-gen/templates/install_deps.tmpl.rst
Step #5: scripts/readme-gen/templates/install_portaudio.tmpl.rst
Step #5: setup.cfg
Step #5: testing/.gitignore
Step #5:     s.shell.run(["nox", "-s", "format"], hide_output=False)
Step #5:   File "/synthtool/synthtool/shell.py", line 39, in run
Step #5:     raise exc
Step #5:   File "/synthtool/synthtool/shell.py", line 27, in run
Step #5:     return subprocess.run(
Step #5:   File "/usr/local/lib/python3.10/subprocess.py", line 524, in run
Step #5:     raise CalledProcessError(retcode, process.args,
Step #5: subprocess.CalledProcessError: Command '['nox', '-s', 'format']' returned non-zero exit status 1.
Finished Step #5

That behavior is really weird. Maybe change the glob rule to add only when .py/.ipynb files are edited?

Oh neat, in the latest run OwlBot is happy, so I think it just didn't like some of my test invocations. I will merge and open a new PR with intentional lint failures in Python files to test. And I can test again with non-Python files to see if that error comes up again and if I need to change glob rules. Thanks!

@holtskinner, one other question. Do we want the owlbot:run label to only be applied by the action only when the PR is initially opened? Or some additional trigger(s)? Want to make sure that I reduce noise as much as possible (e.g., not on every commit) but have it run as often as we like.


Deprecate brew (un)linkapps.

Unfortunately brew linkapps cannot behave nicely with e.g. Spotlight using either aliases or symlinks and Homebrew formulae do not build "proper" .app bundles that can be relocated. Instead, please consider using brew cask and migrate formulae using .apps to casks.
CC @ilovezfs as we've talked about this before.

When this is actually removed, will it merit a bump to Homebrew 1.2.x?

When this is actually removed, will it merit a bump to Homebrew 1.2.x?

@ilovezfs Yes, most likely (although some will argue it warrants a bump to Homebrew <IP_ADDRESS>.0.0`

So does this imply, for instance, that the --with-cocoa option for emacs will be killed, or does it imply that the user will need to launch the .app from the Cellar directly?

It implies that it's not in keeping with Homebrew's general philosophy. As upstream provides no official alternative build I don't think we need to kill it as it's extremely widely used. Others can take this script and maintain it in a tap elsewhere, I just don't think we should be.

The UX involved with navigating directly to a .app bundle in the Cellar seems worse than the status quo. Wouldn't it be better to remove all .app bundles than to actively create an even worse experience?

I think eventually: probably. By then we may end up distributing our own Casks built by CI or something.

I think eventually: probably. By then we may end up distributing our own Casks built by CI or something.

Yeah. I think it's not going to be pretty telling people "so you need to press command + shift + G and then navigate to ...."

Sure. A while until then, though.

Sorry to jump on this I just brewed and got the warning for the first time.
I build the IDEs for -core projects as well (and the GUI for mpv for my SO):
Warning: `brew linkapps` has been deprecated and will eventually be removed!

Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using
either aliases or symlinks and Homebrew formulae do not build "proper" `.app`
bundles that can be relocated. Instead, please consider using `brew cask` and
migrate formulae using `.app`s to casks.
Linking: /usr/local/opt/mpv/mpv.app
Linking: /usr/local/opt/python/IDLE.app
Linking: /usr/local/opt/python/Python Launcher.app
Linking: /usr/local/opt/python3/IDLE 3.app
Linking: /usr/local/opt/python3/Python Launcher 3.app
Linking: /usr/local/opt/qt5/libexec/Assistant-qt5.app
Linking: /usr/local/opt/qt5/libexec/Designer-qt5.app
Linking: /usr/local/opt/qt5/libexec/Linguist-qt5.app
Linking: /usr/local/opt/qt5/libexec/pixeltool-qt5.app
Linking: /usr/local/opt/qt5/libexec/qml-qt5.app
Linked 10 apps to /Applications

Does this mean that for PythonX and QT I will need to install the environment from -core and the IDE's from Cask? Or will the formulas now actually move the .app instead of linking?
Sorry, the warning doesn't give a lot of detail, it might be helpful to throw a page up about what is going on that is printed in the warning.
Also as mentioned in caskroom/homebrew-cask#28988, mpv is more than a gui, it's a fork of mplayer-something, it is both a CLI and a GUI and they serve very different purposes. I stated with mplayer on linux shortly after 640kb was enough as a CLI. I started using MPlayerX and it's successors later when UX for SO's became more important. In all reality if I was to watch something I had ripped I would cd $MOVIES and mpv file_name.mkv. While others would use finder.
This says linking is dying, does that mean that we are changing the built .app to /Applications or even go back to ~/Applications. Or that -core will no longer build .app's at all? This may be particularly significant in -science as we may need to build OpenMP or use your own -L for your fortran, etc for a GUI frontend.

This says linking is dying, does that mean that we are changing the built .app to /Applications or even go back to ~/Applications. Or that -core will no longer build .app's at all? This may be particularly significant in -science as we may need to build OpenMP or use your own -L for your fortran, etc for a GUI frontend.

This means that you'll need to make any symlinks or aliases manually yourself and we're likely to remove GUIs in the long-term from homebrew/core.

This means that you'll need to make any symlinks or aliases manually yourself and we're likely to remove GUIs in the long-term from homebrew/core.

Would you be amenable to a standardized caveat in that case?
I am concerned about name-collision with cask and core. Will mpv be removed from core? or will the CLI system stay intact and the bundler just move along, and be replaced by an mpv cask? But one will be brew mpv and one brew cask mpv?

Would you be amenable to a standardized caveat in that case?

I don't think so as it'd be the same effect as brew linkapps: stating we support a use-case we don't/can't well.

I am concerned about name-collision with cask and core. Will mpv be removed from core? or will the CLI system stay intact and the bundler just move along, and be replaced by an mpv cask? But one will be brew mpv and one brew cask mpv?

I believe name collisions are being updated to be e.g. mpv-app.

I believe name collisions are being updated to be e.g. mpv-app.

Only in specific cases (emphasis added):

If a Homebrew formula and a Homebrew-Cask cask both exist with the same token and they both refer to the same app — respectively a CLI and a GUI — and the GUI app is simply a wrapper of the CLI tool but has been decided to provide enough value to warrant the inclusion of both the formula and the cask, the cask will have the -app suffix. This is the only instance where an -app suffix is allowed, precisely so the “why” is clear when you know the rule.

I don’t consider the mpv GUI to be a simple wrapper on the CLI (after all even te CLI calls a GUI). Another notable example is transmission. The CLI version is considerably less known than the GUI, addin -app to it would not make sense.

ah, I didn't realize that we had a transmission and a cask/transmission as well; and that this is already handled well by the codebase. I agree with @vitorgalvao that in both cases the GUI is more than a qt/gtk/etc front end, and that they are distinct.
I also see that most people that want "something" will likely want the GUI, and that the mpv.rb will live on like transmission and handbrake before it (the three I could think of where I use both that aren't just frontends).

Only in specific cases (emphasis added):

@vitorgalvao Apologies for the bad explanation and thanks for chiming in.

I also see that most people that want "something" will likely want the GUI, and that the mpv.rb will live on like transmission and handbrake before it (the three I could think of where I use both that aren't just frontends).

I agree in which case we should prioritise Cask over Homebrew. I realise the transition isn't going to be terribly pleasant but we need to get the basic idea that Homebrew is where you look for open-source command-line applications and Homebrew Cask is where you look for closed-source and/or GUI applications.

I'd much prefer we just deconflict these names rather than having these ongoing discussions about what should be the default when the names collide, which we should just make impossible.


Configuration for Emacs Lisp?

Apologies for the off-topic, but as the Clojure and Emacs community have a significant overlap, I was wondering whether anyone is using zprint to format elisp, and would share the configuration?

What an interesting question!  I expect the biggest impediment to using zprint on elisp would be the rewrite-clj parser used by zprint.  I would be amazed if it parsed a large enough subset of elisp to be useful, but perhaps you have passed your elisp to zprint already and found that it, at least, parsed correctly?
If you get that far, I'd be happy to help you configure zprint to format your elisp the way that you want it formatted.  It would help if you sent me the elisp in question formatted the way that you want zprint to format it.

I've collected some samples at https://github.com/bard/elisp-zprintrc in the form of failing tests, and I'm a little less optimistic.
On the parsing front, there are some issues with escapes (e.g. https://github.com/bard/elisp-zprintrc/blob/d4f6f66e0ead519d8bea1c6baee9d06148a300be/parse-tests/edt-user.el#L31) and unusual function names (e.g. https://github.com/bard/elisp-zprintrc/blob/d4f6f66e0ead519d8bea1c6baee9d06148a300be/parse-tests/calc-alg.el#L20). But perhaps they could all be taken care of by preprocessing (cue jokes about regular expressions...) or just avoiding the forms. Output of the parse test run: https://github.com/bard/elisp-zprintrc/blob/master/parse-tests.out
On the formatting front, I could get some of the behavior I was looking for. I didn't find a way to e.g. have this wrap on a single line:
(defun foo (bar) 1)

Or have the first branch of an if indent more:
(if foo
    bar
  baz)

Output of the full format test run: https://github.com/bard/elisp-zprintrc/blob/master/format-tests.out
Do you think there's hope, or is Emacs Lisp style just too quirky?

I don't know if there is hope or not for this approach.  I haven't looked at the parsing issues at all, but from the formatting aspect I can make four of your format tests and one of your examples from above to format correctly.  But I don't know if this is just the tip of the iceberg or not.
zprint.core=> (czprint i197 {:parse-string? true :fn-map {"cond" :none "defcustom" :arg2 "defun" :arg2 "if" [:guided {:guide [:element :element :newline :spaces 3 :element :newline :spaces 1 :element]}] "pcase" :arg1-body :default [:none {:list {:hang? false}}] "t" [:none {:list {:hang? true}}] "error" [:none {:list {:hang? true}}] "_" [:none {:list {:hang? true}}] "save-excursion" :none-body} :list {:indent-arg 1}})
(cond
 ((eq arg '-) (comment-kill nil))
 (arg
  (comment-normalize-vars)
  (save-excursion
    (beginning-of-line)
    (comment-search-backward)
    (beginning-of-line)
    (goto-char (comment-search-forward (line-end-position)))
    (setq comment-column (current-column))
    (message "Comment column set to %d" comment-column))
  (comment-indent))
 (t (setq comment-column (current-column))
    (message "Comment column set to %d" comment-column)))
nil
zprint.core=> (czprint i197a {:parse-string? true :fn-map {"cond" :none "defcustom" :arg2 "defun" :arg2 "if" [:guided {:guide [:element :element :newline :spaces 3 :element :newline :spaces 1 :element]}] "pcase" :arg1-body :default [:none {:list {:hang? false}}] "t" [:none {:list {:hang? true}}] "error" [:none {:list {:hang? true}}] "_" [:none {:list {:hang? true}}] "save-excursion" :none-body} :list {:indent-arg 1}})
(defcustom pcmpl-unix-group-file "/etc/group"
  "If non-nil, a string naming the group file on your system."
  :type '(choice file (const nil))
  :group 'pcmpl-unix)
nil
zprint.core=> (czprint i197b {:parse-string? true :fn-map {"cond" :none "defcustom" :arg2 "defun" :arg2 "if" [:guided {:guide [:element :element :newline :spaces 3 :element :newline :spaces 1 :element]}] "pcase" :arg1-body :default [:none {:list {:hang? false}}] "t" [:none {:list {:hang? true}}] "error" [:none {:list {:hang? true}}] "_" [:none {:list {:hang? true}}] "save-excursion" :none-body} :list {:indent-arg 1}})
(defun greet (name) (message "Hello, %s!" name))
nil
zprint.core=> (czprint i197c {:parse-string? true :fn-map {"cond" :none "defcustom" :arg2 "defun" :arg2 "if" [:guided {:guide [:element :element :newline :spaces 3 :element :newline :spaces 1 :element]}] "pcase" :arg1-body :default [:none {:list {:hang? false}}] "t" [:none {:list {:hang? true}}] "error" [:none {:list {:hang? true}}] "_" [:none {:list {:hang? true}}] "save-excursion" :none-body} :list {:indent-arg 1}})
(if (equal value "Hello, world!")
    (message "it's a greeting")
  (message "it's something else"))
nil
zprint.core=> (czprint i197d {:parse-string? true :fn-map {"cond" :none "defcustom" :arg2 "defun" :arg2 "if" [:guided {:guide [:element :element :newline :spaces 3 :element :newline :spaces 1 :element]}] "pcase" :arg1-body :default [:none {:list {:hang? false}}] "t" [:none {:list {:hang? true}}] "error" [:none {:list {:hang? true}}] "_" [:none {:list {:hang? true}}] "save-excursion" :none-body} :list {:indent-arg 1}})
(pcase run-command-completion-method
  ('helm (run-command--helm))
  (_ (error "[run-command] Unrecognized completion method: %s"
            run-command-completion-method)))
nil
zprint.core=> (czprint i197e {:parse-string? true :fn-map {"cond" :none "defcustom" :arg2 "defun" :arg2 "if" [:guided {:guide [:element :element :newline :spaces 3 :element :newline :spaces 1 :element]}] "pcase" :arg1-body :default [:none {:list {:hang? false}}] "t" [:none {:list {:hang? true}}] "error" [:none {:list {:hang? true}}] "_" [:none {:list {:hang? true}}] "save-excursion" :none-body} :list {:indent-arg 1}})
(defun foo (bar) 1)
nil

All of the examples above use the same options map, just so you aren't trying to compare them,
The formatting for if uses a newly created capability (that I have shipped in 1.1.2) that might not be fully general, though if is a pretty constrained function, actually.
I don't understand your point:

On the formatting front, I could get some of the behavior I was looking for. I didn't find a way to e.g. have this wrap on a single line:
(defun foo (bar) 1)

The i197e example above seems to me to be what you are looking for, but if not, please show me what you want.
I can't quite figure out which functions are supposed to allow hangs and which are not.   So I've had to put a lot of stuff in the options map for the functions that allow hangs based on your examples.  Alternatively, if you are open to using :respect-nl (respect new lines) as a style, the formatting is a lot easier -- since every newline you have in the input will be replicated in the output.  So that would remove most of the issues where I had to add :list {:hang? true} to a lot of functions and make things much easier.  But that may not be what you want, I don't know.
Having done all of this (which was the work of about 40 minutes, just FYI), I don't know if this is 5% of what you need or 75% of what you need from a formatting standpoint,  I'd be more than glad to do another 5-15 of these, but if we are talking 40 or 50, I'm probably going to run out of steam.  And as I said, I haven't dealt at all with the parsing issues.  I don't have any realistic ability (or, to be more accurate, desire) to modify the parser to handle elisp better.  If you can find a way to pre and post process things to get the parser to deal with it, then I think there might be a path to get what you want from a formatting standpoint.

Thanks for having a go. I didn't mention changing zprint as an options for addressing the parsing issues because I don't think it's reasonable to expect a tool for Clojure to bend all the way to support elisp. The reason why I tested a wider selection of sources is that there would be little point to the exercise if parsing issues were affecting very common forms.
Your examples are a great starting point, I'll play with them. I get the impression that a significant chunk of the work here is getting indentation right, so maybe leaving the indentation to Emacs as a post-processing step makes the most sense.
With regard to :respect-nl bit, would it cause something like this:
(defun foo (bar)
  (message "hello"
           )
  )

To not be formatted into something like this?
(defun foo (bar)
  (message "hello"))

In that case it might be a no-go. But from your examples it looks like zprint allows finer granularity, so maybe it can be told "leave just the first line of a defun/defcustom/defvar/etc alone".

As it happens, :respect-nl will indeed respect all newlines, so it would leave this:
(defun foo (bar)
  (message "hello"
           )
  )

alone.  There is not (yet?) a ":smart-respect-nl` which would only respect the important newlines and ignore the ones that weren't important.
However, as most formatting in Clojure is focused on the first line, there are plenty of ways to influence the first line of a function.  There isn't one which says ":respect-first-line-newline" or something, but if you know how many elements you want on the first line of a particular named function, I can quite easily get zprint to do that for all occurrences of that particular function.
Likewise, if you know the names of the specific functions that should format with what I call a "hang":
(like this
      foo
      bar
      baz)

or with what I call a "flow"
[like
  this
  foo
  bar
  baz)

Then I can make one the default and set up the formatting for the others to be specific.
I didn't put much of any effort into getting the indentation right.  I don't think of hang and flow as indentation issues, since what happens to the second element in the list is the important thing.  You may be right about letting emacs do the indentation, but I'm not ready to give up on zprint doing that right yet.
Let me know what I can do to help.

I'm guessing that you are not going to pursue this, but if I'm wrong, please reopen this issue!  Thanks!

Hey, yes, sorry for neglecting to update the issue myself, in the mean time I started using https://codeberg.org/ideasman42/emacs-elisp-autofmt and it fit the bill.


Dist training failed due to FileNotFoundError

Hi, @BIGWangYuDong @ZwwWayne ,  Thanks for your help and I appreciate it a lot.
Checklist

I have searched related issues but cannot get the expected help.
I have read the FAQ documentation but cannot get the expected help.
The bug has not been fixed in the latest version.

Describe the bug
I use two machines to train deformable-detr. The training is smooth but fail to eval, which means I have to re-train model after one single epoch.
Reproduction

What command or script did you run?

For node 1

NNODES=2 NODE_RANK=0 PORT=23456 MASTER_ADDR=xxxx bash tools/dist_train.sh configs/coco/deformable_detr_r50_16x2_50e_coco.py 8

For node 2

NNODES=2 NODE_RANK=1 PORT=23456 MASTER_ADDR=xxxx bash tools/dist_train.sh configs/coco/deformable_detr_r50_16x2_50e_coco.py 8

Did you make any modifications on the code or config? Did you understand what you have modified?
No.Yes.

What dataset did you use?
COCO2017

Error traceback
raceback (most recent call last):
  File "tools/train.py", line 242, in <module>
    main()
  File "tools/train.py", line 238, in main
    meta=meta)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmdet/apis/train.py", line 244, in train_detector
    runner.run(data_loaders, cfg.workflow)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 136, in run
    epoch_runner(data_loaders[i], **kwargs)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/runner/epoch_based_runner.py", line 58, in train
    self.call_hook('after_train_epoch')
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/runner/base_runner.py", line 317, in call_hook
    getattr(hook, fn_name)(self)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/runner/hooks/evaluation.py", line 271, in after_train_epoch
    self._do_evaluate(runner)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmdet/core/evaluation/eval_hooks.py", line 130, in _do_evaluate
    gpu_collect=self.gpu_collect)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmdet/apis/test.py", line 132, in multi_gpu_test
    results = collect_results_cpu(results, len(dataset), tmpdir)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmdet/apis/test.py", line 167, in collect_results_cpu
    part_list.append(mmcv.load(part_file))
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/fileio/io.py", line 67, in load
    with BytesIO(file_client.get(file)) as f:
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/fileio/file_client.py", line 1014, in get
    return self.client.get(filepath)
  File "/home/tiger/.local/lib/python3.7/site-packages/mmcv/fileio/file_client.py", line 535, in get
    with open(filepath, 'rb') as f:
FileNotFoundError: [Errno 2] No such file or directory: '/home/tiger/code/mmdet/work_dirs/deformable_detr_r50_16x2_50e_coco/.eval_hook/part_8.pkl'

Environment
sys.platform: linux
Python: 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0]
CUDA available: True
GPU 0,1,2,3,4,5,6,7: A100-SXM-80GB
CUDA_HOME: /usr/local/cuda
NVCC: Cuda compilation tools, release 11.3, V11.3.109
GCC: x86_64-linux-gnu-gcc (Debian 8.3.0-6) 8.3.0
PyTorch: 1.10.0
PyTorch compiling details: PyTorch built with:
  - GCC 7.3
  - C++ Version: 201402
  - Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications
  - Intel(R) MKL-DNN v2.2.3 (Git Hash 7336ca9f055cf1bfa13efb658fe15dc9b41f0740)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - LAPACK is enabled (usually provided by MKL)
  - NNPACK is enabled
  - CPU capability usage: AVX512
  - CUDA Runtime 11.3
  - NVCC architecture flags: -gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86
  - CuDNN 8.2
  - Magma 2.5.2
  - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=11.3, CUDNN_VERSION=8.2.0, CXX_COMPILER=/opt/rh/devtoolset-7/root/usr/bin/c++, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_KINETO -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -DEDGE_PROFILER_USE_KINETO -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=1.10.0, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON,

TorchVision: 0.11.1+cu113
OpenCV: 4.6.0
MMCV: 1.6.1
MMCV Compiler: GCC 9.3
MMCV CUDA Compiler: 11.3
MMDetection: 2.25.1+

Bug fix
If you have already identified the reason, you can provide the information here. If you are willing to create a PR to fix it, please also leave a comment here and that would be much appreciated!

Hi @ZwwWayne, Could you please help me since there is no reply from @BIGWangYuDong ?

@BIGWangYuDong

Hi, sorry for the late reply, have you fixed this issue?


Remove HTML / XML from Aeon POSTs

Describe the bug
Aeon does not support receiving HTML / XML in POST data.  If encountered, it will respond with a 500 stating:
Server Error in '/Logon' Application.
Runtime Error

Matt Calsada from Atlas Systems reports:

We can add a bug for this. Out of curiosity, what is the use case for the HTML/XML tags that you are passing in to your Aeon ItemInfo1 fields from the EAD? Is this just a one-off EAD that may have tags in it or do all of Pitt's EAD's have markup in the EAD that you'd be passing into Aeon. In general, we (and the ASP.NET defaults) don't support this as it is seen as a security risk, primarily as cross-site scripting concerns. We wouldn't display the tags in any web user interfaces.

In the meantime, we thought that stripping these tags in Pisces indexing would mitigate both the display in DIMES and the submission to Aeon:
https://github.com/RockefellerArchiveCenter/pisces/issues/507
https://github.com/RockefellerArchiveCenter/pisces/issues/508
As it turns out, however, the Request Broker is pulling data directly from ASpace rather than using Elastic data.
https://github.com/RockefellerArchiveCenter/request_broker/blob/9fc371944a231181f98fec90d29f9e7521e9cd9b/process_request/routines.py#L17-L73
To reproduce
Steps to reproduce the behavior:

Edit the title of any ASpace object to include HTML or XML
POST that item identifier to the api/deliver-request/reading-room endpoint
Atlas-Systems hosted Aeon will respond with a 500

Expected behavior
This really is, at core, an Aeon bug in preferring to raise an error in ASP.net rather than properly escaping HTML in the public UI.
But, in as a mitigation, it is reasonable to follow our strategy in pisces to strip HTML / XML.
Error message or screenshots
C.f. Description
Impact on your work
Objects with XML/HTML will cause requests to fail for end-users, with no clear messaging for cause or resolution.
Additional context
There may be a data leakage risk as nothing in the call stack checks to see if an item is indexed in Elastic before making the API call to ASpace and returning the request data.  The indexing restrictions implemented in pisces such as prefix or status restrictions may protect sensitive resources, where public exposure is unwanted.

@ctgraham would your proposal be to implement the same strip_tags method we use here?
Regarding:

There may be a data leakage risk as nothing in the call stack checks to see if an item is indexed in Elastic before making the API call to ASpace and returning the request data. The indexing restrictions implemented in pisces such as prefix or status restrictions may protect sensitive resources, where public exposure is unwanted.

That is technically true in the Request Broker context HOWEVER when requesting data from DIMES the PageMyList component has to fetch that data from the API, then provide the ArchivesSpace URI to the Request Broker: https://github.com/RockefellerArchiveCenter/dimes/blob/base/src/components/PageMyList/index.js#L41

The strip_tags method is my leading candidate for a workaround.
Regarding the data leak, an abusive actor would have to know or guess the ASpace IDs for the restricted records, then use the request-broker endpoint directly.  On the other hand, however, it would be pretty trivial to look at known ASpace IDs fetched from valid requests, and interpolate missing IDs and then query on those.  These records are protected behind the ASpace API, but the request broker can inadvertently serve as a proxy to bypass this protection.

Crucial detail I forgot to mention - we run our Request Broker instance behind our firewall, and restrict traffic to it from only the DIMES server, not only for the reasons you articulate but also because it returns location information. I'm reluctant to couple the Request Broker too tightly to the Argo API, because I think that takes away some of its usefulness as a service. If you have ideas for how to improve security I'm all ears though!
I'm fine with the strip_tags approach as a workaround.

Even though the request broker is not directly exposed, it is exposed by proxy through DIMES, and thus the proxy to ASpace is still present.  I'll send additional details privately.


An exception occurred while closing the Raven connection java.lang.IllegalStateException: Shutdown in progress

My code:
package com.example;

import java.io.*;
import java.util.Properties;

import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;

import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;

public class Main {
    private static final Logger logger = LogManager.getLogger(Main.class);
    static final String JDBC_DRIVER = "org.postgresql.Driver";

    public static void main(String[] args) {
        logger.trace("Reading properties.");
        Properties properties = new Properties();
        InputStream in = Main.class.getResourceAsStream("/main.properties");
        if (in == null) {
            logger.error("Resource file not found.");
            System.exit(1);
        }

        try {
            properties.load(in);
        } catch (IOException e) {
            logger.error("Can't read properties file.", e);
            System.exit(1);
        }

        for (String key : properties.stringPropertyNames()) {
            String value = properties.getProperty(key);
            logger.trace("Property " + key + " = " + value);
        }

        try {
            Class.forName(JDBC_DRIVER);
        } catch (ClassNotFoundException e) {
            logger.error("PostgreSQL JDBC driver not found", e);
            System.exit(1);
        }

        Connection connection = null;
        try {
            connection = DriverManager.getConnection(
                    "jdbc:postgresql://" + properties.getProperty("db_host") + ":" +
                            properties.getProperty("db_port") + "/" +
                            properties.getProperty("db_name"),
                    properties.getProperty("db_user"),
                    properties.getProperty("db_pass"));

        } catch (SQLException e) {
            logger.error("Connection failed", e);
            System.exit(1);
        }

        logger.error("Random error");
        logger.trace("Exiting application.");
    }
}

Getting:
2015-12-13 16:57:56,897 pool-1-thread-1 ERROR An exception occurred while closing the Raven connection java.lang.IllegalStateException: Shutdown in progress
	at java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:82)
	at java.lang.Runtime.removeShutdownHook(Runtime.java:239)
	at net.kencochrane.raven.connection.AsyncConnection.close(AsyncConnection.java:92)
	at net.kencochrane.raven.Raven.closeConnection(Raven.java:112)
	at net.kencochrane.raven.log4j2.SentryAppender.stop(SentryAppender.java:303)
	at org.apache.logging.log4j.core.config.AbstractConfiguration.stop(AbstractConfiguration.java:313)
	at org.apache.logging.log4j.core.LoggerContext.stop(LoggerContext.java:303)
	at org.apache.logging.log4j.core.LoggerContext$1.run(LoggerContext.java:262)
	at org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry$1.run(DefaultShutdownCallbackRegistry.java:100)
	at org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry.run(DefaultShutdownCallbackRegistry.java:74)
	at java.lang.Thread.run(Thread.java:745)

Setting raven.async.gracefulshutdown didn't helped

@tkaemming help me :)

I'm new to java, but it looks like a bug
https://github.com/getsentry/raven-java/blob/master/raven/src/main/java/net/kencochrane/raven/connection/AsyncConnection.java#L92
We don't need to removeShutdownHook if this.gracefulShutdown is false.
Do you agree guys ?

@artyomboyko - I think that the patch in #166 will fix the symptom of the issue that you are encountering by removing the call to Runtime.removeShutdownHook.
However, I think the root cause here is a different issue. SentryAppender.stop is called as part of the log4j2 shutdown hook (see the bits about DefaultShutdownCallbackRegistry in the traceback above), at which point mutating the Runtime shutdown hooks will throw an IllegalStateException.


debugging the call to a function defined in a diff't cell fails

Testing https://github.com/microsoft/vscode/issues/127362

TODO: not all cells were dumped when appropriate. We should never show the temp files.

this is fixed


“Kindle Comic Converter.app” is damaged and can’t be opened.

I downloaded the latest version [KindleComicConverter_osx_5.6.2.dmg], but after installation, I tried to open it and received a message saying “Kindle Comic Converter.app” is damaged and can't be opened. You should move it to the Trash. I am on MacOS Ventura.

This fixed it
xattr -d com.apple.quarantine /Applications/Kindle\ Comic\ Converter.app
xattr -d com.apple.quarantine -- /Applications/Kindle\ Comic\ Converter.app/Contents/Resources/7z

https://github.com/ciromattia/kcc/wiki/Installation#x86_64-version
If you can't open the last beta and the OS says it's damaged, fix it with:
xattr -d com.apple.quarantine /Applications/Kindle\ Comic\ Converter.app
xattr -d com.apple.quarantine -- /Applications/Kindle\ Comic\ Converter.app/Contents/Resources/7z


While it is working, I am getting the following error in the console on every load...

While it is working, I am getting the following error in the console on every load...
oing some fake async auth for foo-bar
Failed to decode downloaded font: http://localhost:8080/dist/fonts/glyphicons-halflings-regular.woff2
OTS parsing error: invalid version tag
Failed to decode downloaded font: data:application/font-woff;base64,bW9kdWxlLmV4cG9ydHMgPSBfX3dlYnBhY2tfcHVibGljX3BhdGhfXyArICJub2RlX21vZHVsZXMvYm9vdHN0cmFwL2ZvbnRzL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIud29mZj9mYTI3NzIzMjdmNTVkODE5ODMwMWZkYjhiY2ZjODE1OCI7
OTS parsing error: invalid version tag
Failed to decode downloaded font: http://localhost:8080/dist/14cb42445d5c69e464f66e7954fc9dab.ttf
OTS parsing error: invalid version tag

be great if we can get that fixed
Regards,
Sean

never mind, was due to bootstrap icons.. fixed!


fix: correctly imports commonjs "debug" package

Fix for #350
Changes the imports, so they handle the CommonJS exports from the "debug" package.

Looking through the code, I see there's a lot more references to debug in the code.
Think it might make more sense to make a simple "wrapper" around around it, that essentially re-exports it as ESM. Otherwise we'll end up doing this import dance in a lot of places.

That's true, we use debug quite extensively. Having some util makes sense. I was thinking about something like
// src/utils/debug.ts
import debugCjsImport from 'debug'

export const debug = debugCjsImport

What do you have in mind?

Yeah, exactly like that 👍

Let me know if this is ready for review 👀

Should be! Replaced all the debug imports with the one from utils

Released: v0.22.5 🎉
This has been released in v0.22.5!

📄 Release notes
📦 npm package

Make sure to always update to the latest version (npm i @mswjs/interceptors@latest) to get the newest features and bug fixes.

Predictable release automation by @ossjs/release.


Fav lists

Initial PR for Favorite Lists

PR is a WIP while we flesh UI and etc. Havent really touched things in 2023. Will pick this back up once feedback comes in


not equal

Sorry for this, didn't mean to open an issue; it was a cat-on-the-keyboard situation! (a smart cat though , who can spell).
Can be deleted.