servers field doesn't work with Pydantic V2

Hello, thanks for quart-schema!
It looks like the servers argument to the QuartSchema class causes a serialization error with Pydantic V2. Here is some example code:
from quart import Quart
from quart_schema import QuartSchema, Server

app = Quart(__name__)

QuartSchema(app, servers=[Server(url='http://cool.internet')])

@app.route("/")
async def root() -> str:
    """Root page."""
    return "Hello!"

Accessing /openapi.json yields the following error:
TypeError: Object of type 'Url' is not JSON serializable

We've tried all different combinations of Pydantic object magic, but as far as we can tell quart-schema forces the type to be Server, which can't be serialized with Pydantic V2. Any assistance would be welcome!
For reference, this was with Python 3.10.12, and pip list says:
Package           Version
----------------- -------
aiofiles          23.2.1
annotated-types   0.6.0
blinker           1.6.3
click             8.1.7
Flask             3.0.0
h11               0.14.0
h2                4.1.0
hpack             4.0.0
hypercorn         0.14.4
hyperframe        6.0.1
itsdangerous      2.1.2
Jinja2            3.1.2
MarkupSafe        2.1.3
pip               23.0.1
priority          2.0.0
pydantic          2.4.2
pydantic_core     2.10.1
pyhumps           3.8.0
Quart             0.19.3
quart-schema      0.17.1
setuptools        65.5.0
tomli             2.0.1
typing_extensions 4.8.0
Werkzeug          3.0.0
wsproto           1.2.0

This should be fixed with 0.19.0 onwards


[Provider] Huggingface Text Embeddings Inference

https://github.com/huggingface/text-embeddings-inference

TEI is ideal for deploying rerank and embedding models, but it has its own rerank request format.
Hopefully this project can support it
https://huggingface.github.io/text-embeddings-inference/#/Text Embeddings Inference/rerank


fixing "one run" to "single run" and typo

Fixing a typo/leftover

Weird, we already merged a PR to change "one run" to "single run" two weeks ago. Why doesn't GitHub show the latest version of the CV with those changes in them?

Somehow not all terms where changed in the merge of #118, which should be fixed by this PR.

Ah weird, my search skills must be lacking then. I'll merge this PR.


Case mismatch between Android and iOS attachment names

The iOS lib stores attachments as ABCDEF.blob, whereas the Android library needs them to be loaded in to the replaceDatabase call as abcdef.blob.

Discussion with @zgramana  and @pasin about how to migrate from lower case file name to upper case file name.

Fixed version of CBL Android/Java should handle both uppercase and lowercase attachment file name.
If CBL found the lowercase attachment filename, show error or warning message.
Manager should have option for auto migrate for attachment filename.
If auto migration for attachment filename is TRUE, change all filenames from lowercase filename to uppercase filename.
If migration is down, store the flag into local doc.


Fix Train Tag and Frog

Test case was broken due to recent product changes.

:tada: This PR is included in version 0.344.10 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


qemu-mips64el-static qemu: uncaught target signal 4 (Illegal instruction) - core dumped

/kind bug

run mips binary test in host,  success!

[root@localhost ~]# file mips
mips: ELF 64-bit LSB executable, MIPS, MIPS-III version 1 (SYSV), statically linked, not stripped
[root@localhost ~]#
[root@localhost ~]# ./mips
Hello, MIPS!
[root@localhost ~]#
[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-862.3.2.el7.x86_64 #1 SMP Mon May 21 23:36:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

docker run error info,   failure!

[root@localhost ~]# docker run --rm  -it --net=host --privileged    -v /usr/bin/qemu-mips64el-static:/usr/bin/qemu-mips64el-static  rhel_mips:7.4  date
qemu: uncaught target signal 4 (Illegal instruction) - core dumped

QEMU version:

[root@localhost ~]# docker version
Client:
 Version:      1.12.6
 API version:  1.24
 Go version:   go1.6.4
 Git commit:   78d1802
 Built:        Tue Jan 10 20:20:01 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.6
 API version:  1.24
 Go version:   go1.6.4
 Git commit:   78d1802
 Built:        Tue Jan 10 20:20:01 2017
 OS/Arch:      linux/amd64

same error info  on Docker CE 17.12

Same problem with you. Have you solved this? @theburn

Same problem with you. Have you solved this?@theburn

Same problem with you. Have you solved this?

Same problem with you. Have you solved this?

Same problem with you. Have you solved this?

Same problem with you. Have you solved this?

Same problem with you. Have you solved this?


Medical University of Warsaw

Added Medical University of Warsaw

@kacperSzczepaniak Please rename lib/domains/pl/edu/wum/student to lib/domains/pl/edu/wum/student.txt in your request. Thank you!

Done, it's renamed. Thank you for your help!

@kacperSzczepaniak Thank you for the update! Pull request merged.


QUESTION: HELP-Needed: how to increase the font size of remote-ftp's tree-view??

OBJECTIVE: increase font size of remote-ftp's tree-view
I'm am able to use styles.less to increase my local view's font size
I cannot find the file  "remote-ftp.less" on my windows 10 box
though on github remote-ftp.less it's there and has this in it
.ftptree-view-resizer
thinking that suggests i should be able to increase font size
would very much like to have the remote view tree show me bigger fonts
Could i get some help please

need to find the correct file to edit on my windows machine and what to put for css/less.
OR, the method that will allow me to increase the font size of the remote tree-view

THANKS!!!

Hoping for help on finding a way to increase font size of tree-view - WAY too small

Try:
1. Way
Add the focus on the tree and press [CTRL + "plus"] key combinate.
2. Way
Add CSS rule in your "global" styles.less file (File > Stylesheet)
Example:
.remote-ftp-view.ftptree-view-resizer.tool-panel {
    font-size: 16px;
}

I close this issue. If there is still a problem I can open it.


Microsoft learn as unique learning/video platform

There are too many Microsoft video/learning platforms, and instead reduce the number they keep increasing, can you figure it out a way to move everything under one unique platform as you did for docs?
https://developer.microsoft.com/en-us/collective/learning/courses
https://www.linkedin.com/learning/me
https://mva.microsoft.com/
https://channel9.msdn.com/
https://docs.microsoft.com/en-us/learn/
thanks
regards

@emiliano84 We are working towards this. Thank you for your feedback.

You can add academy.microsoft.com to the list.


changelog: v56-alpha

!!! DRAFT !!!

date: 01-October-2017
foreword: Here are the changes since the last changelog (v55-alpha).
note: the comments in the code snippets below are for this changelog's commentary

changelog: [all changes]

all user.js updates for Firefox v56 are detailed in our ToDo: diffs FF55-FF56 issue

includes links to the commits made for each pref, links to bugzilla tickets, our discussions etc.

renumbered a few sections to make room for our new section 4600: RFP (4500) ALTERNATIVES

privacy.resistFingerprinting will make more and more prefs obsolete. Instead of removing them from the user.js we'll move them to this section so that ESR and non-RFP users can continue to use them. We also added a reminder to the README section of the user.js:

/* EACH RELEASE check:
   - 4600s: reset prefs made redundant due to privacy.resistFingerprinting (RPF)
               or enable them as an alternative to RFP or for ESR users
   - 9999s: reset deprecated prefs in about:config or enable relevant section(s) for ESR

we no longer disable any of the available TLS/SSL ciphers ! (neither does TBB btw)
updated the [SETTING] lines to match the new Firefox Preferences layout
other minor things (typos, link fixes, wording, better/more infos, etc)

PC Principal Pants promptly replaced any and all mentions of add-ons with extensions :)
we renamed our debug pref ghacks_user.js.parrot to _user.js.parrot

this way it's the first thing you see when you open about:config :+1:

for all the rest see the full list of pref changes below

all pref changes:

new active prefs:

user_pref("extensions.formautofill.available", "off");
user_pref("extensions.formautofill.creditCards.enabled", false);
user_pref("extensions.getAddons.showPane", false);
user_pref("intl.regional_prefs.use_os_locales", false);
user_pref("security.data_uri.block_toplevel_data_uri_navigations", true);
user_pref("toolkit.telemetry.updatePing.enabled", false);

new in 56alpha but commented out by default:

//user_pref("browser.stopReloadAnimation.enabled", true);
//user_pref("privacy.resistFingerprinting.block_mozAddonManager", true);

changed values:

user_pref("extensions.webservice.discoverURL", ""); // 55alpha: "http://<IP_ADDRESS>"
//user_pref("general.platform.override", "Win64"); // 55alpha: "Win32"
//user_pref("general.useragent.override", "Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0"); // 55alpha: "Mozilla/5.0 (Windows NT 6.1; rv:45.0) Gecko/20100101 Firefox/45.0"

commented out: (don't forget to reset these in about:config if necessary!)

//user_pref("dom.indexedDB.enabled", false);
//user_pref("dom.presentation.controller.enabled", false);
//user_pref("dom.presentation.discoverable", false);
//user_pref("dom.presentation.discovery.enabled", false);
//user_pref("dom.presentation.enabled", false);
//user_pref("dom.presentation.receiver.enabled", false);
//user_pref("dom.presentation.session_transport.data_channel.enable", false);
//user_pref("dom.vr.enabled", false);
//user_pref("dom.w3c_touch_events.enabled", 0);
//user_pref("font.name.monospace.x-unicode", "Lucida Console");
//user_pref("font.name.monospace.x-western", "Lucida Console");
//user_pref("font.name.sans-serif.x-unicode", "Arial");
//user_pref("font.name.sans-serif.x-western", "Arial");
//user_pref("font.name.serif.x-unicode", "Georgia");
//user_pref("font.name.serif.x-western", "Georgia");
//user_pref("gfx.direct2d.disabled", true);
//user_pref("media.mediasource.enabled", false); // previously active with value: true
//user_pref("media.mediasource.mp4.enabled", false); // previously active with value: true
//user_pref("media.mediasource.webm.audio.enabled", false); // previously active with value: true
//user_pref("media.mediasource.webm.enabled", false); // previously active with value: true
//user_pref("security.ssl3.dhe_rsa_aes_128_sha", false);
//user_pref("security.ssl3.dhe_rsa_aes_256_sha", false);
//user_pref("security.ssl3.ecdhe_ecdsa_aes_128_sha", false);
//user_pref("security.ssl3.ecdhe_rsa_aes_128_sha", false);
//user_pref("security.ssl3.rsa_des_ede3_sha", false);

moved to 4600: RFP (4500) ALTERNATIVES:

user_pref("browser.zoom.siteSpecific", false);
// user_pref("device.sensors.enabled", false); // active in 55alpha
user_pref("dom.enable_performance", false);
user_pref("dom.enable_resource_timing", false);
// user_pref("dom.gamepad.enabled", false); // active in 55alpha
// user_pref("dom.maxHardwareConcurrency", 2);
user_pref("dom.netinfo.enabled", false);
user_pref("geo.enabled", false);
user_pref("geo.wifi.logging.enabled", false);
user_pref("geo.wifi.uri", "");
user_pref("geo.wifi.xhr.timeout", 1);
user_pref("media.webspeech.recognition.enable", false);
user_pref("media.webspeech.synth.enabled", false);

moved to 9999: DEPRECATED / REMOVED:

extensions.formautofill.experimental
extensions.screenshots.system-disabled

Any and all help, suggestions, recommendations, links, tips and tricks, questions, thank you's or whathaveyou are welcome - signup/login and start typing - thanks

changed values:

how did extensions.webservice.discoverURL get changed?
when I moved the UA section I updated the description etc - I just checked latest TBB and os is 32bit - I just changed it back

I wouldn't bother listing the UA changes at all, inactive and we do not recommend it

^^ so ummm .. how did that URL change?

I changed it together with extensions.getAddons.showPane when you told me to do a direct commit.

I wouldn't bother listing the UA changes at all, inactive and we do not recommend it

The purpose of the changelogs is to list all changes made to prefs and we did change them.
Yes they are inactive and we do not recommend it but someone might be using them regardless.
If you don't want them listed, don't change them ;)

That'll explain why I don't remember it - didn't realise we blanked the url, wot was the reasoning behind that - not that I really think it matters in terms of effectiveness

to prevent the unnecessary request to <IP_ADDRESS>:80

I'm deleting the alpha until we fix up these few changes - re RFP stuff, then I'll recreate a new one

Any reason this is still a draft? I've got nothing to add. Looks all good to me

ghacks article: https://www.ghacks.net/2017/10/05/firefox-56-new-preferences-and-ghacks-user-js-changes/


Integrate annotations in Typing in the ETC type checker

Integrate the Typing annotations, in order to use ETC on real TLA+ specs

This issue has been merged into unstable


Pin lockfree to the last version before dscheck dependency

Some recursive dependency of dscheck does not build on bytecode-only OCaml so pin lockfree before that change to keep that target.
Hopefully should close #258.

"All checks have passed" - very happy to see this again :smile: Good detective work, sir!


ReactorKit+RxViewController inherit  StoryboardView Error

I used the XIB layout and found an error when I used the ReactorKit+RxViewController。

class HomeVC: HHBaseVC,StoryboardView {
func bind(reactor:Reactor) {
rx.viewDidLoad
.subscribe(onNext: {
print("viewDidLoad 🎉")
})
.disposed(by: disposeBag)
}
}
No output is called。

You should make sure that the func Bind (Reactor :Reactor) call is prior to ViewDidLoad

Because StoryboardView binds on viewDidLoad().
I recommend View and set reactor before viewDidLoad().

init(reactor: HomeR) {
    super.init()
    self.reactor = reactor
}

I am initializing the binding Reactor，There are still problems。I tried RxTodo and I changed it to StoryboardView and I had this problem

I noticed that using rx.viewdidload when using your "Counter" also won't execute。Is there something I didn't understand correctly


Provide an order field on the level endpoit

In order to allow users to sort their result-framework we need to persist the attribute order on the endpoint
PUT https://dev.toladata.io/api/level/:id
Current behavior
No such field yet and the field sort (that can be confusing is used for other purposes)
Expected behavior
Save the order field
Steps to reproduce the behavior
create an item into the result framework
Additional details
again :  the field sort (that can be confusing is used for other purposes)

For what do we use the field sort? @bashz
I remember that @aziz-haddad has used that field to sort a list.

the sort field is used for sorting among the tree on the result framework (to know levels within the tree)
While the order would sort in a linear way

Just to clarify @bashz. We're using the sort field as I show in the diagram and you wanna create the order field to use as I show in the diagram as well, right? If yes, how do you know which node is liked to which one?

Ok. Thanks, @bashz. One of the other guys (@aziz-haddad and/or @wceolin) has to explain it to me better because I think we're not using it in the right way.

I talked to @aziz-haddad and you're right @bashz . They are using the sort field to sort it horizontally and they do this because they don't have the data sorted by the parent_id field. I'll update the endpoint, so we can fetch the data ordered. I need your help to update the frontend to remove the sort logic from there.

@odenypeter has reimplemented the Result Framework tree, so we don't need a new field anymore.

PR with the changes: https://github.com/Humanitec/TolaDataV2/pull/1137


Move all message & exception strings to Localization Files

The following modules need to have their strings moved to localization files:

[x] xComputer
[x] xScheduledTask
[x] xVirtualMemory
[x] CommonResourceHelper

This is now completed so closing.


Fixed an error in the helper regarding local tests

The test task ran every test locally when it is supposed to run none of them.

Coverage remained the same at 66.703% when pulling 3791e06fad0d82179e22542cb61f418c5f45d6c1 on Heliozoa:test-task-fix into 2458ed60c5210cec536d3465d8c1289ae86f7800 on tdd-pingis:master.


Mainframe Condensed data

Background [Optional]
"Condensed" data refers to data that has been compressed or shortened to take up less space in memory. This is typically done by removing any unnecessary or redundant information from the data. For example, a condensed representation of a series of numbers might store only the differences between each number, rather than the actual values themselves. This can help reduce the amount of memory required to store the data, which can be especially important in systems with limited resources.
Question
Does Cobrix parse Condensed mainframe files?

Hi, no it is not supported at the moment. We might add support, depending on the complexity of the feature.
Could you please point me to some documentation with more details about the data format? Specifically:

How condensed fields look in the copybook?
How the compression/decompression is performed?


Cocoa pods and Swift 2.0 - module not found

Hi there. Shortly:

Xcode 7 beta 3

Podfile:

source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '8.0'
use_frameworks!
inhibit_all_warnings!

pod 'Realm', :git => 'https://github.com/realm/realm-cocoa.git', :branch => 'swift-2.0'
pod 'RealmSwift', :git => 'https://github.com/realm/realm-cocoa.git', :branch => 'swift-2.0'

pod install (with Cocoapods 0.38)

import RealmSwift anywhere in project's code

Result:

This started happening after weekend. I can send you test project I have created to reproduce this issue.
very best!

Same issue here with fresh Xcode 7 beta 3 project.

Just one addition. Unlike before weekend, now RealmSwift group in Pods project does not contain any single file.

Thanks for the issue! I'll look into this momentarily.

@kordziu @d6u give it another shot, I should've just fixed this

ah actually there's another issue, hold on a moment

:+1:

Thanks a lot!


Updated Readme.md

Thanks for quick response @Sowham-3098 ... got few comments for you - please resolve them whenever you get time

@ankitwww please check if it is all right


doc notes

Update class reference. Include all Classes and public methods
Put examples in JS files, make sure they all work, and provide a link from doc to js files

Move async docs to carbon-client-js doc


JDBC connection to Oracle failed after upgrading to 4.0

Internal error connecting to jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME =) ) )
java.lang.NullPointerException:

Rollback to 3.5 is the only way to resolve. Same configuration working without issue on previous to 4.0 versions.

Duplicate of #1284


dev/new-plugin: originalName -> packPathName

Hm, I think we'll need an integration test to prevent similar regressions from happening

Hm, I think we'll need an integration test to prevent similar regressions from happening.
E.g. we could test that the script creates valid plugin-modules that can eval, build, & run for a handful of example inputs.
We'd probably need to use a fake plugin name but a real package name? The fake name to avoid conflicts, the real package to ensure it can eval/build/run.

Yeah, that's a good idea.

@mergifyio queue


Can't connect to some servers

There are some Minecraft servers, that I can't seem to connect to. For example, versai.pro, it is running the latest version of Pocketmine, but probably has some modifications. You can connect to it through the Minecraft client, but cannot through this library, it just says that the server is offline. The only thing I know is that the server may send an invalid MTU, and that may cause this issue.

Hello! I apologize greatly for taking so long to repsond to your bug report. Could I please see the code you are using to attempt to connect to servers? If you are getting any stack traces, I would also like those as well. Thank you!

Hello, I'm using the client example provided in the README. There are no stack traces, it just says that the server is offline.

I am attempting to connect to it from the latest release version of Minecraft on Windows 10, at address versai.pro:19132 and I am unable to ping it or connect to it. Likewise, the RakNetClient is unable to connect to it. I tested with some other servers running the latest version of Minecraft such as play.nethergames.org:19132, mcpe.plutonium.best:19132, rushnation.net:19132, and klobby.de:19132. I was able to ping and connect to all four of these servers on both Minecraft for WIndows 10 and with the RakNetClient via the example code.
Are you sure the server isn't simply down?

Hmm, the server wasn't down when I made this issue. But I found another server which I can connect to through the Minecraft client but can't from the library: play.fallentech.io:19132

Alright, thank you for creating this issue! I will look into this as soon as I can. If you find any more problems with the JRakNet API, please do not hesitate to create an issue for those as well! I deeply appreciate it :)

[19:59:22] [RakLibServer thread/NOTICE]: Refused connection from MyIpAddressHere 60155 due to incompatible RakNet protocol version (expected 10, got 9)
this seems to be the cause, as said in the pull request. You were right, you just had to check the console of the server to find out sooner lol.


Node v20

rewrite specs with node:test
https://glebbahmutov.com/blog/trying-node-test-runner/

Still waiting for LTS


[release-1.7] remove cni initContainers and volumes in remove-from-mesh (#26812)

(cherry picked from commit 707b28d8b8e6dac582f55fe40403109f4d3cbb4e)
Manual cherry pick of PR #26812
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[X] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

@tariq1890: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio_release-1.7
4850e890acf998ec18c39c8e4cedd4d1bf505a07
link
/test release-notes_istio_release-1.7

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test release-notes_istio_release-1.7

@JimmyCYJ @jwendell Requesting your review

@tariq1890 Could you please add a release note entry?

@jwendell Done


Add dSYMs to build and deploy process

Time Tracking: MA-118
This is done when:

[x] dSYM upload is added to CI/CD pipeline
[x] dSYM upload testing PASS in QA
[ ] dSYM upload added to all CI/CD workflows
[ ] dSYM upload testing workflows removed

Hi @mliu6723,
Ok to proceed on dSYM upload rollout to primary CI/CD workflows. See updated task list above.


Registry tool: remove id and kind from artifacts

Nearly all artifacts include the following two fields:
  // Artifact identifier. May be used in YAML representations to indicate the id
  // to be used to attach the artifact.
  string id = 1;

  // Artifact kind. May be used in YAML representations to identify the type of
  // this artifact.
  string kind = 2;

These were added to support a now-removed registry upload artifact command that used these fields to know what to do with external artifact serializations. This has now been replaced with Registry YAML, which includes these fields and other metadata in a standard wrapper that is outside the artifact body.
There is no need to store these fields in the registry; the id is implied by an artifact's location and the kind is in the artifact mimetype .
Based on the above, I'd like to delete these fields from existing artifact protos and stop adding them to new ones. To maintain compatibility with existing serialized artifacts, we should leave all of the other field numbers unchanged and replace the removed fields with reserved 1, 2;

Some downstream tools are using these fields, so this is mainly about getting that cleaned up.


Loading in external step files or mesh files

Thanks for making this code, I'm keen to see if it can be used for a project instead of the iron python build into ansys.
Taking a look at the docs and examples and I couldn't see a method of loading in a step file then meshing the file and using it in analysis. Is this a feature pyansys supports.
Alternatively if pyansys is able to load up an external mesh file (e.g. exo format or any format really) it would be great to see and example.
Sorry if I missed this in the docs or if it is not in the remit of pyansys.

Sorry about the late reply!
I'm not familiar with the *.exo format, but if you could provide an example, I'd gladly look at it.
Right now I'm working an example to solve and animate meshes from pyvista.  Here's a quick example (it won't work until 0.41.4 is out).
import os

import pyvista as pv
import pyacvd
import pyansys

# mesh = pv.Sphere(theta_resolution=200, phi_resolution=200)

mesh = pv.Cylinder(resolution=100).triangulate().clean()
mesh.subdivide(5, inplace=True)

clus = pyacvd.Clustering(mesh)
clus.cluster(2000)
clus.create_mesh()
clus.remesh.plot()
mesh = clus.remesh

# mesh = pv.Plane(i_resolution=100, j_resolution=100)

archive_filename = '/tmp/tmp.cdb'
pyansys.save_as_archive(archive_filename, mesh)

mapdl = pyansys.launch_mapdl('/ansys_inc/v194/ansys/bin/ansys194',
                             interactive_plotting=True,
                             prefer_pexpect=False,
                             additional_switches='-smp', override=True)

# mapdl = pyansys.launch_mapdl(prefer_pexpect=True, override=True)
response = mapdl.cdread('db', archive_filename)
# print('VTK UnstructuredGrid has %d cells' % surfgrid.n_cells)
# print(response.splitlines()[-1])

# verify cells are valid
mapdl.prep7()
mapdl.shpp('SUMM')

# specify shell thickness
mapdl.sectype(1, "shell")
mapdl.secdata(0.01)
mapdl.emodif('ALL', 'SECNUM', 1)

# specify material properties
# using aprox values for AISI 5000 Series Steel
mapdl.units('SI')
mapdl.mp('EX', 1, 200E9)  # Elastic moduli in Pa (kg/(m*s**2))
mapdl.mp('DENS', 1, 7700)  # Density in kg/m3
mapdl.mp('NUXY', 1, 0.3)  # Poissons Ratio
mapdl.emodif('ALL', 'MAT', 1)

# Run an unconstrained modal analysis
mapdl.run('/SOLU')
mapdl.antype('MODAL')  # default NEW
mapdl.modopt('LANB', 20, 1)  # First 6 modes above 1 Hz
mapdl.solve()
# fprintf(fid,'SOLVE\n');
# fprintf(fid,'FINI\n');

# mapdl.result
# result = mapdl.result

result = pyansys.read_binary('/tmp/ansys/file.rst')
# result.plot()

# result.animate_nodal_displacement(4, show_edges=False, lighting=True, style='wireframe',
#                                   loop=True, add_text=False, nangles=30,
#                                   movie_filename='tmp_wireframe.gif')

result.animate_nodal_displacement(4,
                                  show_edges=False,
                                  lighting=True,
                                  loop=True,
                                  add_text=False,
                                  nangles=30,
                                  movie_filename='tmp.mp4')

Thanks for the example, it looks great. I was wondering is it possible to do something like import the attached stp files in pyansys then mesh them and use them in ansys analysis
two_step_files.zip

Sadly, MAPDL doesn't directly support reading STEP files, but it turns out you can do it with gmsh!

I'm working on a tutorial right now, but the gist of it is:
import gmsh
import math
import os

gmsh.initialize()
gmsh.option.setNumber("General.Terminal", 1)

gmsh.model.add("t20")

# Load a STEP file (using `importShapes' instead of `merge' allows to directly
# retrieve the tags of the highest dimensional imported entities):
# path = os.path.dirname(os.path.abspath(__file__))
filename = 'pf_coil_case_1.stp'
v = gmsh.model.occ.importShapes(filename)

# Get the bounding box of the volume:
gmsh.model.occ.synchronize()

# Specify a global mesh size and mesh the partitioned model:
gmsh.option.setNumber("Mesh.CharacteristicLengthMin", 10)
gmsh.option.setNumber("Mesh.CharacteristicLengthMax", 10)
gmsh.model.mesh.generate(3)
gmsh.write("from_gmsh.msh")

# Show the result:
# gmsh.fltk.run()

gmsh.finalize()

That gives you your gmsh file.  You can then convert it to MAPDL with:
import pyvista as pv
import pyansys

filename = '/home/alex/.local/lib/python3.7/site-packages/gmsh-4.6.0-Linux64-sdk/share/doc/gmsh/tutorial/python/t20.msh'
mesh = pv.read_meshio(filename)
# mesh.plot()
mesh.points /= 1000
pyansys.save_as_archive('archive.cdb', mesh)

mapdl = pyansys.launch_mapdl(exec_file='/ansys_inc/v194/ansys/bin/ansys194',
                             override=True, additional_switches='-smp')
filename = '/home/alex/Downloads/two_step_files/archive.cdb'
mapdl.cdread('db', filename)

I'm going to have to clean it up for an example, but it's quite promising.  Once you have the mesh, you can go ahead and analyze it in MAPDL.  According to mesh.bounds, it seems that the dimensions are in mm.  You'll have to scale it down and then copy it over to MAPDL with mesh.points /= 1000 prior to saving it.
I did a quick modal analysis because they make great gifs, but you'll probably want to do a structural analysis.

# verify cells are valid
mapdl.prep7()
mapdl.shpp('SUMM')

# specify material properties
# using aprox values for AISI 5000 Series Steel
mapdl.units('SI')
mapdl.mp('EX', 1, 200E9)  # Elastic moduli in Pa (kg/(m*s**2))
mapdl.mp('DENS', 1, 7700)  # Density in kg/m3
mapdl.mp('NUXY', 1, 0.3)  # Poissons Ratio
mapdl.emodif('ALL', 'MAT', 1)

# Run an unconstrained modal analysis
mapdl.run('/SOLU')
mapdl.antype('MODAL')  # default NEW
mapdl.modopt('LANB', 20, 1)  # First 6 modes above 1 Hz
mapdl.solve()

result = mapdl.result

# result.plot(cpos='xy')
cpos = [(0.0, 0.3074999999873, 2),
        (0.0, 0.3074999999873, 0.5),
        (0.0, 1.0, 0.0)]

result.animate_nodal_displacement(4,
                                  cpos=cpos,
                                  show_edges=False,
                                  lighting=True,
                                  loop=True,
                                  add_text=False,
                                  nangles=30,
                                  movie_filename='tmp.gif')

If possible, could you please upload the step files with tagged surfaces?  I need to add some features to the archive writer to get it transferred to MAPDL.

Sorry I've not not got back to you on this, the method I am hoping to do this method of tagging
https://github.com/CadQuery/cadquery/pull/111

Can you tag the file within cadquery and then send it over to me?  I'll mesh it with gmsh and then have the tags preserved when transferring it over to MAPDL.

Closing due to inactivity.


Change .ds property from datatree to xarray.Dataset

After yesterday's discussion we landed on the conclusion that we should move away from datatree for the .ds property and instead use an xr.Dataset that includes both physical and BGC variables.
However, there is the complication that both the physical and BGC boundary variables need a dimension and coordinate bry_time (since this is hardcoded in ROMS), but the physical vs. BGC bry_time have different lengths and hold different frequencies. Given this complication, I can see three options for how to move forward.
Option A
The object
boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    physics_source={"name": "GLORYS", "path": path},
    bgc_source={"name": "CESM_REGRIDDED", "path": path, "climatology": True},
)

has a single attribute .ds that holds both physical and BGC variables. To avoid a name clash, the physical variables have the dimension and coordinate bry_time, whereas the BGC variables have the dimension and coordinate bry_time_bgc. The .save() method will then split the physical and BGC variables into two separate xarray.Datasets and rename bry_time_bgc to bry_time before saving to NetCDF.
Option B
The object
boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    physics_source={"name": "GLORYS", "path": path},
    bgc_source={"name": "CESM_REGRIDDED", "path": path, "climatology": True},
)

has two attributes, .ds and .ds_bgc. Each of these holds an xarray.Dataset with the physical and BGC variables, respectively. Both of these datasets can have the bry_time dimension and coordinate, and the .save() method will just save these two datasets to two separate NetCDF files.
Note that with this option, if the user skips the physics_source, i.e., does
boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    bgc_source={"name": "CESM_REGRIDDED", "path": path, "climatology": True},
)

there won't be an attribute .ds (as for the other classes like Grid, TidalForcing) but only an attribute .ds_bgc, which could potentially lead to confusion.
Option C
We force the user to process physical and BGC variables separately, i.e., via
physical_boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    physics_source={"name": "GLORYS", "path": path},
)

bgc_boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    bgc_source={"name": "CESM_REGRIDDED", "path": path, "climatology": True},
)

and then both physical_boundary_forcing and bgc_boundary_forcing have a single attribute .ds that holds the respective variables with dimension bry_time.
If the user tries to process both at the same time
boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    physics_source={"name": "GLORYS", "path": path},
    bgc_source={"name": "CESM_REGRIDDED", "path": path, "climatology": True},
)

they will get an error that tells them to specify either physics_source or bgc_source, but not both at the same time. This may be confusing for the user because the behavior is opposite to what happens for the initial conditions. For the initial conditions you would not be able to treat physics_source and bgc_sourceseparately; if you only specified a bgc_source, but no physics_source, you would get an error.
It would be great to get your opinions on what option you think is best @dafyddstephenson @TomNicholas @ubbu36 @abigale-wyatt.
Whatever option we decide on, I will implement the same for the surface forcing, even though we don't have the problem there that the time variable name is shared among physical and BGC variables. But I think it will be good to treat the SurfaceForcing class the same way as the BoundaryForcing class, to not confuse the user even more.

Option B is how I imagined it but reading this I think I prefer C. I think my preference is purely biased towards my experience with MATLAB roms-tools though, I'm not sure I can channel the perspective of a first-time user.
If we were to go B though I wonder if it makes sense for a single .ds to return a list of Dataset objects rather than having a separate.ds and .ds_bgc? Or perhaps some combination of B and C where the final example you present here (with two X_source parameters) could return a list, but one X_source parameter defaults to returning one dataset? If we assume widespread adoption in the ROMS community, I imagine most users will only be interested in physics modelling.

If we were to go B though I wonder if it makes sense for a single .ds to return a list of datasets rather than having a separate.ds and .ds_bgc?

If you're going to have .ds return anything other than xr.Dataset, you may as well have it return a DataTree.
I think I prefer C. Conceptually there are two different boundary forcing datasets needed to force the simulation, so you have to use the BoundaryForcing class twice. That seems reasonable to me. The only weird part about it is physics_source vs bgc_source, as opposed to e.g. source= and type={'physics', 'bgc'}.

I'm also leaning towards C I think. One question I had reading through this is what happens in option A and B if the user wants to set up a physics-only run?

Thanks for your comments! I think I also favor Option C!

The only weird part about it is physics_source vs bgc_source, as opposed to e.g. source= and type={'physics', 'bgc'}.

True, let's do
boundary_forcing = BoundaryForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    source={"type": "physics", "name": "GLORYS", "path": path},
    #source={"type": "bgc", "name": "CESM_REGRIDDED", "path": path, "climatology": True}  # alternatively
)

and
surface_forcing = SurfaceForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    source={"type": "physics", "name": "ERA5", "path": path},
    #source={"type": "bgc", "name": "CESM_REGRIDDED", "path": path}  # alternatively
)

@TomNicholas What naming convention do you recommend for the initial conditions, though? Currently, we have
surface_forcing = SurfaceForcing(
    grid=grid,
    start_time=start_time,
    end_time=end_time,
    physics_source={"name": "GLORYS", "path": path},
    bgc_source={"name": "CESM_REGRIDDED", "path": path, "climatology": True}  # optional
)

Keep the parameter names physics_source and bgc_source? Note that for the initial conditions we need to process these two together if BGC is to be included.


Add upgrade consideration note for version upgrade notifications

Wording mostly copied from the existing settings documentation at http://docs.wagtail.io/en/latest/advanced_topics/settings.html#update-notifications

Perfect, thanks.


Loading and alert breaks Xamarin Forms navigation

I've got a Xamarin forms application

navigating to another screen with a PushPageModel command (FreshMVVM) and
that page shows a loading indicator (page not is shown yet)
then the receiving screen throws an exception
shows an alert and I log and swallow the exception after showing the alert.

This causes the receiving screen never to be shown and breaking the navigation. After the exception has been thrown it's not possible to go to the second screen anymore even though the I can see the page on the navigation stack.
See the code below. I've also tried to execute a PopToRoot in the OnOk of the alert to force the app to go somewhere else. Any bright ideas are really welcome
        private void FindUsers()
        {
            try
            {
                _userDialogs.ShowLoading();
                SelectedUsers = new ObservableCollection<Gebruiker>(_databaseService.GetGebruikers(searchTerm));
                _userDialogs.HideLoading();
            }
            catch (NullReferenceException ex)
            {
                Insights.Report(ex);
                _userDialogs.HideLoading();
                _userDialogs.Alert(string.Format("Er ging iets mis bij het zoeken van de gebruiker:\n{0}", ex.Message));
            }
            catch (ArgumentOutOfRangeException ex)
            {
                Insights.Report(ex);
                _userDialogs.HideLoading();
                _userDialogs.Alert(new AlertConfig{
                    Message = "Geen geldige invoer. Voer een zoekterm in van minimaal 4 karakters.",
                    OnOk = new Action(()=> this.CurrentPage.Navigation.PopToRoot(true)),
                    Title= "GFY"
                } );
            }
            catch (Exception ex)
            {
                Insights.Report(ex);
                _userDialogs.HideLoading();
                _userDialogs.Alert(ex.ToString());
            }

        }

I need the platform and the exception to offer any advice.

Thanks for the response. The platform is iOS 9 and I am running a iPad Air2 Emulator and the exception is ArgumentOutOfRangeException.
I've found what solved it is not running the procedure that throws the exception - as stated above - in the init method but in the ViewIsAppearing.
If you have pointers for still using the init method I'd be grateful but this is an acceptable solution to me. The only ugly thing in this situation right now is that the view appears, throws the exception and then disappears.

I need the full exception stacktrace to really understand the issue and perhaps the code leading up to FindUsers.  I have no idea what context "init" is used in since it doesn't apply to an iOS execution path.


Board size is to large

First a big Thank You for this extension! This is what I have missed in Trello.
I have a lot of boards, working as a consultant and each customer has its own board. The dashboard is very nice, but the 'images' of the boards are to large and I can only get 3 of the per row.
It would be nice if I could change the size of the boards so that I get 'at least' 6 of them per row.
I'm running trello-dashboard on my own server, but I'm not a web developer. If you would give me an idea on how to change the size I would appreciate it! Or even better if you could add a configuration...
My monitor is 1920x1200
// Anders
PS! I have updated dashboard.css with the @media (min-width: 1440px) patch.

Hi,
Sorry for the delay. I've updated the page to show up to 6 columns on a 1920x1200 screen. If it's still not quite right, adjust the column widths in this section of dashboard.css:
@media (min-width: 1920px) {
  .container {
    width: 100%;
    padding: 0 50px;
  }
  /* Show more columns on larger screens */
  .row {
    -moz-column-width: 20em;
    -webkit-column-width: 20em;
  }

}
Hope that helps.


ADR-3082: adds a try-catch block to suppress the crash

[x] the crash is suppressed and keep a log of the exception

Let's point the android x PR to this branch, then we can version bump and merge this to master to avoid overwriting the old published library.


How accurate is the answer rate when using the teacher model to generate reasoning cot for the CommonsenseQA dataset?

Hi,
Thank you for open-sourcing the code and related data.  Fine-tune-CoT is a great work and I am some experiments recently while referencing your paper.
I have been attempting to utilize the OpenAI ChatGPT API to generate fine-tuned data for the student model, following the methods in your paper. I have tried constructing prompts to guide ChatGPT in generating the reasoning process. However, I have observed a high error rate in the generated answers. For instance: the query I sent to ChatGPT API is:
Q: Where can someone store extra sheets of paper? Answer choices:(A) printer,(B) box,(C) cutting and folding,(D) cabinet,(E) office. A: Let's think step by step.
The return answer from API is : A printer can hold some sheets of paper, but it may not be the best choice for storing extra sheets. A box, cabinet, or office can be used to store extra sheets of paper more effectively. Cutting and folding is not a place; it is a process, so this option is not suitable for storing extra sheets of paper. Based on these points, both (B) box and (D) cabinet would be suitable for storing extra sheets of paper. . But the reference answer key is E: office. So ChatGPT gives me a wrong answer and this situation is quite common. If I proceed with answer filtering, it may result in lower data effectiveness.
Have you encountered similar issues with the CommonsenseQA dataset? Do you have any suggestions for improving the accuracy of the generated answer results?
By the way, will you open source the data used to train your student models anytime soon?  Thanks again!

As shown in Table 1 of our paper, the accuracy of the teacher model (in our case, text-davinci-002) is 61.75%–not always very accurate. It's pointed out in Kojima et al 2022 (https://arxiv.org/abs/2205.11916) that the model sometimes outputs multiple answers, similar to what you've found. We also found that many of the question/answers are quite subjective at times, which might contribute to the low accuracy.
We will upload all the data we have and make final updates to the code within 1 week. I'll let you know on this thread :)

I haven't really thought about how to increase the accuracy of the teacher on CommonSenseQA. You could consider using self-consistency (https://arxiv.org/abs/2203.11171), or try optimizing the zero-shot prompt for the specific task (maybe try to inspect the raw data and identify what kind of subjective biases went into the selection of answers).

Thanks for your reply!

@JiayiFu  The full raw experimental data is available for download! Check out the README and spread the word :)


[CP Staging] Add handling for undefined route

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/30126
PROPOSAL:
Tests

Same as QA
Offline tests

N/A requires logging in
QA Steps

Log in to a new account or an existing account
Verify that you are directed to a report, and not stuck on the /r/undefined report

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

N/A - mobile screens don't apply

Android: mWeb Chrome

N/A - mobile screens don't apply

iOS: Native

N/A - mobile screens don't apply

iOS: mWeb Safari

N/A - mobile screens don't apply
https://github.com/Expensify/App/assets/30609178/3bbb14fc-bfcd-4d1d-92fd-ac9d982fb1d1

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/30609178/3a89baec-0ae0-4006-9826-1973db6fffc4

MacOS: Desktop

https://github.com/Expensify/App/assets/30609178/e84cb986-746b-498d-9665-42ecf24543e9

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

🚀 Cherry-picked to staging by https://github.com/mountiny in version: 1.3.88-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Deployed to production by https://github.com/chiragsalian in version: 1.3.88-11 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


IE11 popup not closing

For some reason the popup seems not to be closing on IE11 the message(the URL with the token) can't be passed from the popup to the parent but this workaround seems to fix it and work on other browsers.
https://stackoverflow.com/a/36630058

I just tried this code and it doesn't seem to be working. Did you test it successfully?

Ok, yep -- it's working in the current version (prior to your changes) if the token server is in the same security zone as the client app.

Interesting as it is failing for me. And the popup never close. I am using identity server 3 though would that affect? And can you please explain to me what is same security zone?
On Fri, 11 May 2018, 5:26 pm Brock Allen, <notifications<EMAIL_ADDRESS>wrote:
Ok, yep -- it's working in the current version (prior to your changes) if the token server is in the same security zone as the client app.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/IdentityModel/oidc-client-js/pull/550#issuecomment-388414567, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJxRlcf8MpT1M6gc2AmM-Z_AuPiGPt7eks5txbvCgaJpZM4T7sJw.

Btw also my setup is that the identity server set on different domain than my source. So this kind of cross domain solution for me. Would that make more sense
On Fri, 11 May 2018, 5:26 pm Brock Allen, <notifications<EMAIL_ADDRESS>wrote:
Ok, yep -- it's working in the current version (prior to your changes) if the token server is in the same security zone as the client app.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/IdentityModel/oidc-client-js/pull/550#issuecomment-388414567, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJxRlcf8MpT1M6gc2AmM-Z_AuPiGPt7eks5txbvCgaJpZM4T7sJw.

I can change my work to pick up if it was a cross origin and ie then go through that work flow. Unless I am not making any sense :-)
On Fri, 11 May 2018, 5:26 pm Brock Allen, <notifications<EMAIL_ADDRESS>wrote:
Ok, yep -- it's working in the current version (prior to your changes) if the token server is in the same security zone as the client app.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/IdentityModel/oidc-client-js/pull/550#issuecomment-388414567, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJxRlcf8MpT1M6gc2AmM-Z_AuPiGPt7eks5txbvCgaJpZM4T7sJw.

Yes I have tested it on my set up and works great, without it IE11 users has the popup window and it never close down. And the token never passed to the src.
I think it will work if we put the target back as I think the bug in ie is solved with the adding the .href but will confirm that, you can cancel the request and let me investigate further and see if I can reproduce it with the sample code.
On Fri, 11 May 2018, 7:21 pm Brock Allen, <notifications<EMAIL_ADDRESS>wrote:
Most normal workflows will be cross origin.
Have you tested this change or not? I am still unclear.
Where I stand on this PR is that since the current version is working for me, I'm hesitant to make a change (especially it's technically a breaking one since target is now ignored) if there's not a problem I can reproduce.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/IdentityModel/oidc-client-js/pull/550#issuecomment-388445550, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJxRlWtSIb-RGrIV9cc1uRkvpE4OuGWpks5txdadgaJpZM4T7sJw.

Let me know if these two lines make a difference in your tests:
            this._popup.window.location.href = "about:blank";
            this._popup.window.location.href = params.url;


FedEx not guessed properly

Looks like https://shipit-api.herokuapp.com/api/guess/1001910564210009250700663553999167 isn't properly guessing the number as FedEx:
https://www.fedex.com/apps/fedextrack/?tracknumbers=1001910564210009250700663553999167

@bbodenmiller This doesn't look like a valid fedex tracking number. I tried to track it here.

At the time it worked but looks like FedEx doesn't keep records forever.


"pip install pymoo" doesn't compile

I've installed pymoo using pip / python 3.11 and it doesn't even attempt to compile cython extension as it should be, quoting https://pymoo.org/installation.html#installation
Maybe I'm missing some prerequisites ? I've numpy installed.
Thank you for the feedback

There are precompile wheels available for python 3.11 for Windows and macOS. So, I guess that you are using Linux. In that case, pip will try to install from source, but has you pointed out that does not trigger the compilation of the extensions. Which version of pip are you using? There has been a change v23 I think.

[ ] Check why there is no wheel for Linux for python 3.11
[ ] Move to pyproject.toml?

yes you're right about python.
pip version: 23.0.1

I don't see errors but tt doesn't seems to compile what's expected:
$ pip install https://github.com/anyoptimization/pymoo/archive/refs/ta
gs/<IP_ADDRESS>.tar.gz -vv
                              Using pip 23.0.1 from
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pip (python 3.11)

Non-user install because user site-packages disabled
                               Created temporary directory:
/tmp/pip-build-tracker-3gx77d1g

Initialized build tracking at /tmp/pip-build-tracker-3gx77d1g
                              Created build tracker:
/tmp/pip-build-tracker-3gx77d1g

Entered build tracker: /tmp/pip-build-tracker-3gx77d1g
                               Created temporary directory:
/tmp/pip-install-ggvlcg0i

Created temporary directory: /tmp/pip-ephem-wheel-cache-mih39cuv
                               Collecting
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz

  Created temporary directory: /tmp/pip-req-build-by6j1_pd
                                 Created temporary directory:
/tmp/pip-unpack-w08deh_x
  Looking up "
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz"
in the cache       No cache entry available
  Starting new HTTPS connection (1): github.com:443
                                https://github.com:443 "GET
/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz HTTP/1.1" 302 0
  Status code 302 not in (200, 203, 300, 301, 308)
                                 Looking up "
https://codeload.github.com/anyoptimization/pymoo/tar.gz/refs/tags/<IP_ADDRESS>"
in the cache
  Current age based on date: 62
                                Starting new HTTPS connection (1):
codeload.github.com:443
  https://codeload.github.com:443 "GET
/anyoptimization/pymoo/tar.gz/refs/tags/<IP_ADDRESS> HTTP/1.1" 304 0      Using
cached
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz

  Added
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz
to build tracker '/tmp/pip-build-tracker-3gx77d1g'
  Running setup.py (path:/tmp/pip-req-build-by6j1_pd/setup.py) egg_info for
package from
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz

  Created temporary directory: /tmp/pip-pip-egg-info-48yzf68o
                                Running command python setup.py egg_info
  Compiling pymoo/cython/calc_perpendicular_distance.pyx because it
changed.                                Compiling
pymoo/cython/decomposition.pyx because it changed.

  Compiling pymoo/cython/hv.pyx because it changed.
                                Compiling pymoo/cython/info.pyx because it
changed.
  Compiling pymoo/cython/non_dominated_sorting.pyx because it changed.
                                 Compiling
pymoo/cython/stochastic_ranking.pyx because it changed.

  [1/6] Cythonizing pymoo/cython/calc_perpendicular_distance.pyx
                                 [2/6] Cythonizing
pymoo/cython/decomposition.pyx
  [3/6] Cythonizing pymoo/cython/hv.pyx
                                [4/6] Cythonizing pymoo/cython/info.pyx
  [5/6] Cythonizing pymoo/cython/non_dominated_sorting.pyx
                                 [6/6] Cythonizing
pymoo/cython/stochastic_ranking.pyx

  running egg_info
                                 creating
/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info
  writing /tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/PKG-INFO
  writing dependency_links to
/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/dependency_links.txt
  writing requirements to
/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/requires.txt
       writing top-level names to
/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/top_level.txt
  writing manifest file
'/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/SOURCES.txt'

  reading manifest file
'/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/SOURCES.txt'
  reading manifest file
'/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/SOURCES.txt'

  reading manifest template 'MANIFEST.in'

  no previously-included directories found matching '.'

  adding license file 'LICENSE'

  writing manifest file
'/tmp/pip-pip-egg-info-48yzf68o/pymoo.egg-info/SOURCES.txt'

***************************************************************************

  Compilation Successful.
  Installation with compiled libraries succeeded.

***************************************************************************

  Preparing metadata (setup.py) ... done

  Source in /tmp/pip-req-build-by6j1_pd has version <IP_ADDRESS>, which
satisfies requirement pymoo==<IP_ADDRESS> from
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz

  Removed pymoo==<IP_ADDRESS> from
https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz
from build tracker '/tmp/pip-build-tracker-3gx77d1g'

Requirement already satisfied: Deprecated in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(1.2.13)

Requirement already satisfied: alive-progress in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(3.1.2)

Requirement already satisfied: autograd>=1.4 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(1.5)

Requirement already satisfied: cma==3.2.2 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(3.2.2)

Requirement already satisfied: dill in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(0.3.6)

Requirement already satisfied: matplotlib>=3 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(3.7.1)

Requirement already satisfied: numpy>=1.15 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(1.24.3)
Requirement already satisfied: scipy>=1.1 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from pymoo==<IP_ADDRESS>)
(1.10.1)

Requirement already satisfied: future>=0.15.2 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
autograd>=1.4->pymoo==<IP_ADDRESS>) (0.18.3)

Requirement already satisfied: contourpy>=1.0.1 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (1.0.7)

Requirement already satisfied: cycler>=0.10 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (0.11.0)

Requirement already satisfied: fonttools>=4.22.0 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (4.39.4)
Requirement already satisfied: kiwisolver>=1.0.1 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (1.4.4)

Requirement already satisfied: packaging>=20.0 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (23.1)
Requirement already satisfied: pillow>=6.2.0 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (9.5.0)

Requirement already satisfied: pyparsing>=2.3.1 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (3.0.9)

Requirement already satisfied: python-dateutil>=2.7 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
matplotlib>=3->pymoo==<IP_ADDRESS>) (2.8.2)

Requirement already satisfied: about-time==4.2.1 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
alive-progress->pymoo==<IP_ADDRESS>) (4.2.1)
Requirement already satisfied: grapheme==0.6.0 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
alive-progress->pymoo==<IP_ADDRESS>) (0.6.0)
Requirement already satisfied: wrapt<2,>=1.10 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
Deprecated->pymoo==<IP_ADDRESS>) (1.15.0)

Requirement already satisfied: six>=1.5 in
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages (from
python-dateutil>=2.7->matplotlib>=3->pymoo==<IP_ADDRESS>) (1.16.0)
Created temporary directory: /tmp/pip-unpack-2zekeavs
Removed build tracker: '/tmp/pip-build-tracker-3gx77d1g'

$ python -c "from pymoo.util.function_loader import
is_compiled;print('Compiled Extensions: ', is_compiled())"

Compiled Extensions:  False

I ran this exact command with pip=23.0.1 in a clean docker container and it seems to work, but my output is definitely longer and I see gcc instructions.
I have already had issues with the test
python -c "from pymoo.util.function_loader import is_compiled;print('Compiled Extensions: ', is_compiled())"

because it was loading a different pymoo.
What do you see when you run the following?
python -c "import pymoo; print(pymoo.__path__)"

$ python -c "import pymoo; print(pymoo.__path__)"
['/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo']

this seems right. No .so there.

Hum, I give it another try this morning, suspecting that an env var I had to fix mypy problem (SETUPTOOLS_ENABLE_FEATURES =legacy-editable) could be the problem.
And now, it compiles with and without this env var when using pip install https://github.com/anyoptimization/pymoo/archive/refs/tags/<IP_ADDRESS>.tar.gz -vv and when using pip install pymoo (provided I removed the cached wheel in ~/.cache/pip).
Now I get:
$ find ~/tmp/venvs/dev/lib/python3.11/site-packages/pymoo -name "*.so"
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo/cython/stochastic_ranking.cpython-311-x86_64-linux-gnu.so
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo/cython/hv.cpython-311-x86_64-linux-gnu.so
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo/cython/calc_perpendicular_distance.cpython-311-x86_64-linux-gnu.so
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo/cython/non_dominated_sorting.cpython-311-x86_64-linux-gnu.so
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo/cython/decomposition.cpython-311-x86_64-linux-gnu.so
/home/syt/tmp/venvs/dev/lib/python3.11/site-packages/pymoo/cython/info.cpython-311-x86_64-linux-gnu.so

Nothing changed in my virtual env beside installation of black, isort, flake8 and some of its extensions. Doesn't seem related but may be it is. This feels weird but AFAIC this bug can be closed.


Old project with grunt: not able to make some change

Hello.
I have to make some change on an old project (FoundationPress with grunt).
grunt
Loading "sass.js" tasks...ERROR

Error: /Volumes/Dev Studio12/www/LeSaint/dev/wp-content/themes/LeSaintZurbPress/node_modules/node-sass/bin/darwin-x64-v8-4.6/binding.node is missing. Try reinstalling node-sass?

Seems there is a problem with sass but bower update do not change anything... I tried 'npm install node-sass' without success...
In the meantime, I use Codekit to compile the CSS but I really prefer grunt or Gulp...
Any idea?

Am I the online who change old project sometime? I can't find a solution for now, same problem with another project...
Is there a way to change it to gulp or to run bower without error?

So for the now the only solution I found after trying to install without success node-sass is to switch to grunt-contrib-sass...

I have the same issue. I have also been looking for an answer.

Compatibility with versioning of node dependencies & npm seems to be a persistent problem. See the README.md file included with your version of FP and check which version of Node.js is supported. You can upgrade / downgrade your version of node.js with Homebrew . If this does not work, I'm afraid I can not help here.

Ole I'm looking at my README.md file and can't see anything telling which version of node.js to use. This is all I have, I think:
**Okay, so you'll need to have the following items installed before continuing.**

  * [Node.js](http://nodejs.org)
  * [Grunt](http://gruntjs.com/): Run `[sudo] npm install -g grunt-cli`
  * [Bower](http://bower.io): Run `[sudo] npm install -g bower`

## Quickstart


[DO NOT MERGE] [ci] Run only HD tests on FPGA Staging

Run the HyperDebug tests on the FPGA Staging pipeline.
Need to check a particular HyperDebug board is working.

Aside, it would be great to have a more convenient way to run these kinds of tests without having to create PRs.
I see in the Azure interface you can manually run jobs with custom variable settings and you can decide which stages to run.
Maybe we could split up the pipeline into stages so that we can disable, for example, OTBN, verilator, or FPGA jobs when we don't need to run them.
It would be helpful to make the "agent pool" a variable so that we can change this from FPGA to FPGA Staging when testing hardware configurations. (This is the pool we move individual FPGAs to when checking them.)

HyperDebug tests passed, so the board is working.


Question about abstract vs. concrete type in enumerate_paths

I suspect that g::Graph in this function https://github.com/AlgebraicJulia/Catlab.jl/blob/main/src/graphs/GraphAlgorithms.jl#L122 should actually be g::HasGraph?

I agree.

@epatters I also noticed in https://github.com/AlgebraicJulia/Catlab.jl/blob/main/src/graphs/GraphSearching.jl that we have dfs_tree(g::AbstractGraph, s::Integer; dir=:out) but bfs_tree(g::ACSet, s::Integer; dir = :out). I assume that most of the graph algorithms take g::ACSet because outneighbors and inneighbors are also defined for wiring diagrams which aren't in the same inheritance hierarchy as the graph types. Is that right? And also, it seems that, following that logic, the type for dfs_tree should be ACSet.


Hole In The Wall

Your checklist for this pull request
Author name
**Author:*Abel0000*

About your game
What is your game about?
Filling randomly generated holes
How do you play your game?
WASD to move, collect power-ups by going on top of them, and use them with J-K-L for the first second and third powerup
but most importantly fill in the gaps with I
Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file.

Nice job with this game! I had a lot of fun with the time-constrained nature of this game. I'm approving this, and you'll see it in the gallery starting next week.
If you're a teenager, you can request a free Sprig console at this link and join our online Slack community to chat with other people making Sprig games.


resolve Rhea mapping for 'undecaprenyl-diphosphatase activity' GO:0050380

undecaprenyl-diphosphatase activity ProperSubClassOf all-trans-undecaprenyl diphosphate + H2O = all-trans-undecaprenyl phosphate + H(+) + phosphate		0.08
di-trans,octa-cis-undecaprenyl diphosphate + H2O = di-trans,octa-cis-undecaprenyl phosphate + H(+) + phosphate EquivalentTo EC:<IP_ADDRESS>	(most probable)	0.75
undecaprenyl-diphosphatase activity EquivalentTo METACYC:UNDECAPRENYL-DIPHOSPHATASE-RXN	(most probable)	0.8
di-trans,octa-cis-undecaprenyl diphosphate + H2O => di-trans,octa-cis-undecaprenyl phosphate + H(+) + phosphate EquivalentTo METACYC:UNDECAPRENYL-DIPHOSPHATASE-RXN	(most probable)	0.75
undecaprenyl-diphosphatase activity EquivalentTo EC:<IP_ADDRESS>	(most probable)	0.8

I will change the RHEA mapping to RHEA:28094, since this is the RHEA that is mapped to EC:<IP_ADDRESS>


Add the idea with playlists and random playlists

This should be fixed for MVP

This is solved with commit:
0d67a94


Crash

java.lang.NullPointerException:
at java.io.File.fixSlashes (File.java:185)
at java.io.File. (File.java:134)
at com.liulishuo.filedownloader.download.DownloadRunnable.run (DownloadRunnable.java:121)
at com.liulishuo.filedownloader.download.DownloadLaunchRunnable.realDownloadWithSingleConnection (DownloadLaunchRunnable.java:593)
at com.liulishuo.filedownloader.download.DownloadLaunchRunnable.run (DownloadLaunchRunnable.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:587)
at java.lang.Thread.run (Thread.java:818)

@Jeffin21 可否告知下版本号?

latest version

@Jeffin21 可否告知下具体哪个版本的Android系统，我查下File的源码，这个问题比较奇怪。

Samsung Galaxy J2 (2018) (j2y18lte), 1536MB RAM, Android 7.1

i added codes for this https://github.com/lingochamp/FileDownloader/issues/949  issue  by @rantianhua

https://github.com/lingochamp/FileDownloader/pull/958/commits/56462365bdb6a680c3ffe724aba303aad3667041 https://github.com/lingochamp/FileDownloader/pull/958/commits/e45ffa53c90c5164bcc49e020b692eb5a0bbff43

@Jeffin21 thanks for your issue, but this crash is different with #949 . It seems that something wrong on File.java,  which has been discussed on here .

it happens on  7.0 and above

this crash happens in so many above 7.0 devices , i only gave one device sample to you

@Jeffin21 Okay, thanks, I test FileDownloader sample project on devices 8.0.0 can't reproduce such crash, and check the source code(only match 4.2.2 source code, 7.1.0 or 7.0 didn't provide File.java source, and 6.0 source can't match 185 line number you provide), and on the 4.2.2 source code indicate only if we provide null on File constructor such as new File(null) can produce such problem. But DownloadRunnable.java(121) you provide can't match any possible line number on v1.7.1.

so what i supposed to do ?

here is the code
/*

Copyright (c) 2015 LingoChamp Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package com.liulishuo.filedownloader.download;
import android.os.Process;
import com.gagate.gdm.PreferenceHelper;
import com.ggates.android.gdm.application.GDMApplication;
import com.ggates.android.gdm.database.TasksManagerDBController;
import com.ggates.android.gdm.domain.TasksManagerModel;
import com.liulishuo.filedownloader.connection.FileDownloadConnection;
import com.liulishuo.filedownloader.database.FileDownloadDatabase;
import com.liulishuo.filedownloader.exception.FileDownloadGiveUpRetryException;
import com.liulishuo.filedownloader.model.ConnectionModel;
import com.liulishuo.filedownloader.model.FileDownloadHeader;
import com.liulishuo.filedownloader.model.FileDownloadModel;
import com.liulishuo.filedownloader.util.FileDownloadLog;
import com.liulishuo.filedownloader.util.FileDownloadUtils;
import java.io.File;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.util.List;
/**

The single download runnable used for establish one connection and fetch data from it.
*/
public class DownloadRunnable implements Runnable {
private final ConnectTask connectTask;
private final ProcessCallback callback;
private final String path;
private final boolean isWifiRequired;
private FetchDataTask fetchDataTask;
private volatile boolean paused;
private final int downloadId;
final int connectionIndex;
private DownloadRunnable(int id, int connectionIndex, ConnectTask connectTask,
ProcessCallback callback, boolean isWifiRequired, String path) {
this.downloadId = id;
this.connectionIndex = connectionIndex;
this.paused = false;
this.callback = callback;
this.path = path;
this.connectTask = connectTask;
this.isWifiRequired = isWifiRequired;
}
public void pause() {
paused = true;
if (fetchDataTask != null) fetchDataTask.pause();
}
public void discard() {
pause();
}
@Override
public void run() {
Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);
 FileDownloadConnection connection = null;
 final long beginOffset = connectTask.getProfile().currentOffset;
 boolean isConnected = false;
 do {

     try {
         if (paused) {
             return;
         }

         isConnected = false;
         connection = connectTask.connect();
         final int code = connection.getResponseCode();

         if (FileDownloadLog.NEED_LOG) {
             FileDownloadLog
                     .d(this, "the connection[%d] for %d, is connected %s with code[%d]",
                             connectionIndex, downloadId, connectTask.getProfile(), code);
         }

         if (code != HttpURLConnection.HTTP_PARTIAL && code != HttpURLConnection.HTTP_OK) {
           /*  throw new SocketException(FileDownloadUtils.
                     formatString(
                             "Connection failed with request[%s] response[%s] "
                                     + "http-state[%d] on task[%d-%d], which is changed"
                                     + " after verify connection, so please try again.",
                             connectTask.getRequestHeader(),
                             connection.getResponseHeaderFields(),
                             code, downloadId, connectionIndex));*/

             //FileDownloader.getImpl().pause(downloadId);
             TasksManagerDBController task = new TasksManagerDBController();
             TasksManagerModel model = task.getItemByID(String.valueOf(downloadId));
             String path = model.getPath();

             if(PreferenceHelper.getToastMsgService(GDMApplication._appContext,downloadId)==0) {
                 System.out.println("download runnable:");
                 PreferenceHelper.setToastMsgService(GDMApplication._appContext, 1, downloadId);
             }

             FileDownloadDatabase database = CustomComponentHolder.getImpl().getDatabaseInstance();
             database.updateConnectionCount(downloadId, 1);
             new File(path).delete();

         } else {
             isConnected = true;
             final FetchDataTask.Builder builder = new FetchDataTask.Builder();

             if (paused) return;
             fetchDataTask = builder
                     .setDownloadId(downloadId)
                     .setConnectionIndex(connectionIndex)
                     .setCallback(callback)
                     .setHost(this)
                     .setWifiRequired(isWifiRequired)
                     .setConnection(connection)
                     .setConnectionProfile(this.connectTask.getProfile())
                     .setPath(path)
                     .build();

             fetchDataTask.run();

             if (paused) fetchDataTask.pause();
             break;
         }
     } catch (IllegalAccessException | IOException | FileDownloadGiveUpRetryException
             | IllegalArgumentException e) {
         if (callback.isRetry(e)) {
             if (isConnected && fetchDataTask == null) {
                 // connected but create fetch data task failed, give up directly.
                 FileDownloadLog.w(this, "it is valid to retry and connection is valid but"
                         + " create fetch-data-task failed, so give up directly with %s", e);
                 callback.onError(e);
                 break;
             } else {
                if (fetchDataTask != null) {
                      //update currentOffset in ConnectionProfile
                    final long downloadedOffset = getDownloadedOffset();
                    if (downloadedOffset > 0) {
                        connectTask.updateConnectionProfile(fetchDataTask.currentOffset);
                        }
                     }
                 callback.onRetry(e);
             }
         } else {
             callback.onError(e);
             break;
         }

     } finally {
         if (connection != null) connection.ending();
     }
 } while (true);

}
private long getDownloadedOffset() {
final FileDownloadDatabase database = CustomComponentHolder.getImpl().getDatabaseInstance();
if (connectionIndex >= 0) {
// is multi connection
List connectionModels = database.findConnectionModel(downloadId);
for (ConnectionModel connectionModel : connectionModels) {
if (connectionModel.getIndex() == connectionIndex) {
return connectionModel.getCurrentOffset();
}
}
} else {
// is single connection
FileDownloadModel downloadModel = database.find(downloadId);
return downloadModel.getSoFar();
}
return 0;
}
public static class Builder {
private final ConnectTask.Builder connectTaskBuilder = new ConnectTask.Builder();
private ProcessCallback callback;
private String path;
private Boolean isWifiRequired;
private Integer connectionIndex;
 public Builder setCallback(ProcessCallback callback) {
     this.callback = callback;
     return this;
 }

 public Builder setId(int id) {
     connectTaskBuilder.setDownloadId(id);
     return this;
 }

 public Builder setUrl(String url) {
     connectTaskBuilder.setUrl(url);
     return this;
 }

 public Builder setEtag(String etag) {
     connectTaskBuilder.setEtag(etag);
     return this;
 }

 public Builder setHeader(FileDownloadHeader header) {
     connectTaskBuilder.setHeader(header);
     return this;
 }

 public Builder setConnectionModel(ConnectionProfile model) {
     connectTaskBuilder.setConnectionProfile(model);
     return this;
 }

 public Builder setPath(String path) {
     this.path = path;
     return this;
 }

 public Builder setWifiRequired(boolean wifiRequired) {
     isWifiRequired = wifiRequired;
     return this;
 }

 public Builder setConnectionIndex(Integer connectionIndex) {
     this.connectionIndex = connectionIndex;
     return this;
 }

 public DownloadRunnable build() {
     if (callback == null || path == null || isWifiRequired == null
             || connectionIndex == null) {
         throw new IllegalArgumentException(FileDownloadUtils.formatString("%s %s %B",
                 callback, path, isWifiRequired));
     }

     final ConnectTask connectTask = connectTaskBuilder.build();
     return new DownloadRunnable(connectTask.downloadId, connectionIndex, connectTask,
             callback, isWifiRequired, path);
 }

 DownloadRunnable buildForTest(ConnectTask connectTask) {
     return new DownloadRunnable(connectTask.downloadId, 0, connectTask,
             callback, false, "");
 }

}
}

FileDownloadDatabase database = CustomComponentHolder.getImpl().getDatabaseInstance();
database.updateConnectionCount(downloadId, 1);
new File(path).delete();
@Jacksgong  this code in that place

so... you change the code? I don't think the following logic is the originDownloadRunnable.java does:
                  /*  throw new SocketException(FileDownloadUtils.
                            formatString(
                                    "Connection failed with request[%s] response[%s] "
                                            + "http-state[%d] on task[%d-%d], which is changed"
                                            + " after verify connection, so please try again.",
                                    connectTask.getRequestHeader(),
                                    connection.getResponseHeaderFields(),
                                    code, downloadId, connectionIndex));*/

                    //FileDownloader.getImpl().pause(downloadId);
                    TasksManagerDBController task = new TasksManagerDBController();
                    TasksManagerModel model = task.getItemByID(String.valueOf(downloadId));
                    String path = model.getPath();

                    if(PreferenceHelper.getToastMsgService(GDMApplication._appContext,downloadId)==0) {
                        System.out.println("download runnable:");
                        PreferenceHelper.setToastMsgService(GDMApplication._appContext, 1, downloadId);
                    }

                    FileDownloadDatabase database = CustomComponentHolder.getImpl().getDatabaseInstance();
                    database.updateConnectionCount(downloadId, 1);
                    new File(path).delete();

Yes , i changed the code. i told you before need a feature. Some URLs like dailymotion video they dont support multidownload the only way to download that files is to 1st check multi threading is supported if not it go to give upretry expection and we again try to download with single thread and it workds we made some changes for our need

First of all, on here, because of codes changed I don't know why model.getPath() is null on here, you please finger out by yourself.
Secondly, I have already told you the solution and cause, and the worst plan is if the download failed on the first time for the task, just change the connection count for it by ConnectionCountAdapter, you can do such things very clean.

finally, if you think the solution you provide is nice the PR is very welcome.

we did with ConnectionCountAdapter and that wont work in our case

@Jeffin21 If the second time it doesn't invoke ConectionCountAdapter to judge the connection count, you can invoke FileDownloader#clear(id, path) to clear data of it.

Let me try it . Thanks


Add to documentation that compute nodes need internet access

We received an error report from a tester on a slurm system with the following output:
WARN: Unable to get file attributes file: s3://scpca-references/barcodes/10X/3M-february-2018.txt -- Cause: com.amazonaws.SdkClientException: Unable to execute HTTP request: No route to host (Host unreachable)
WARN: Unable to get file attributes file: s3://scpca-references/homo_sapiens/ensembl-104/annotation/Homo_sapiens.GRCh38.104.spliced_intron.tx2gene_3col.tsv -- Cause: com.amazonaws.SdkClientException: Unable to execute HTTP request: No route to host (Host unreachable)
Error executing process > 'map_quant_rna:fry_quant_rna (run01-rna)'

Caused by:
 No route to host (Host unreachable)

I suspect this is because the compute node does not have access to the internet, which is a common security practice. Often there is a way to override it, or use a proxy of some kind, but this is an area of configuration that we will want to add documentation about.

closed by #230 & #231


sketchup reporting of references

the idea is that before a response comes it we can show references that an extension has used to create a prompt.
this is just the API sketch that I have in mind and nothing is hooked up in the UI yet

One more thing- there are two ways that reference come in, they can be inline in the actual response (Matt's scenario), or they can be in the "used references" section at the bottom. We can handle both with progress events, but there should be something to differentiate them. Or, ones that go to the "used references" section could be returned as part of the result object instead of as progress.


Add http2 directive to enable or disable for server block

http2 directive
This directive is used to enable or disable http2 for server block.
$ssl_handshake_time
This variable is used to output the SSL handshake time in the access log.

This PR is stale... Ping @jinjiu


Add Cns digit calculator

Codecov Report

Merging #18 into master will decrease coverage by 8.66%.
The diff coverage is 37.5%.

@@            Coverage Diff             @@
##           master      #18      +/-   ##
==========================================
- Coverage   98.34%   89.67%   -8.67%
==========================================
  Files           8       10       +2
  Lines         241      281      +40
==========================================
+ Hits          237      252      +15
- Misses          3       28      +25
  Partials        1        1

Impacted Files
Coverage Δ

internal/calculator/cns.go
0% <0%> (ø)

cns.go
100% <100%> (ø)

Continue to review full report at Codecov.

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


Column layout doesn't go to the correct folder level

Description
When using column layout and open a subfolder is already opened in a new column, actual folder path still keeps in the current level.
For example, when I open "Downloads" folder from home, the tab name and file path are correct.

But when I (double or single) click on any subfolder, it is opened in a new column on the right, but neither the path nor the tab name is changed.

This becomes a problem when I want to create new files or copy files into this opened subfolder. I thought I have already opened it, but after I ctrl+v or create new stuffs, they will be in "Downloads", rather than the opened "DiskGenius" folder, since the current path is not updated into it.
For now, I have to click one more time in the column of the newly opened folder to "activate" it.
Also, no matter how deep I navigate into a folder tree, the tab name is always the root folder. In this case "Downloads".
Steps To Reproduce

Set the layout as "Columns"
Start from some root folder
Open a subfolder
Then you see this subfolder is not in the folder path, also not in the tab name.
If you just hit ctrl+v or create new stuffs, they won't be in the opened subfolder, but in the root.

Expected behavior
As long as I clicked to open a subfolder, the subfolder should be the "active" "current" folder. The folder path should be updated, as long as the tab name.
Files Version
Version: <IP_ADDRESS>
Windows Version
Windows 11 Pro 21H2 22000.348
Relevant Assets
No response

@yaira2  @Josh-65 duplicate of #9103