CI for npm publish does not work

https://github.com/lambdalisue/deno-unknownutil/actions/runs/5652528753

Use Array.prototype.toSorted() in tests. However, it is an error because it does not exist some environment.

Use Array.prototype.toSorted() in tests. However, it is an error because it does not exist some environment.

I see. We should remove it.


fix: update to latest version of SWC

Update to the latest version of spectrum web components.
I tried to do this in the past but hit issues with popovers. I was able to fix the issue and traced it to the use of the ? operator in boolean attributes in lit. I've noticed issues using this syntax in the past and have been avoiding using it. TBH I'm not sure why it doesn't work for us.
The fix was to override renderOverlay in picker to not use the ? (which is shared with action-menu). There was also an issue with the the sp-overlay custom element not being "registered" when in fact it was. I removed the css that was hiding in the this situation.
Since we were previous a few versions behind (0.40.3 vs 0.43.0) in spectrum there was some other UI tweaks and changes to tabbing that I had to adjust for.

:tada: This PR is included in version 1.27.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add spec proving #225 is fixed by #227.

Coverage decreased (-0.7%) to 98.983% when pulling bbf94b9c103ca4bc2524ac4f8fe426aee83d7d1c on jnfeinstein:master into 7635d36efc2c22b4b9008345eb1c67740117316e on mongoid:master.

Danger is rightfully complaining about the extra period on your changelog line :)

For multiple referenced issues we do this:
* [#229](https://github.com/mongoid/mongoid-history/pull/229), [#225](https://github.com/mongoid/mongoid-history/pull/225): Fixed inheritance of `history_trackable_options` - [@jnfeinstein](https://github.com/jnfeinstein).

@dblock updated and passed CI.

Merged

@dblock shall I release 0.8.2?

Don't wait for my permission @jnfeinstein, maintainers release at will, amen.

@dblock thanks for the vote of confidence.  Sorry for delay, was actually vacationing in NYC.
Any concerns about this being a breaking change?  Anybody relying on this bug for configuration could be surprised by the change.  However it would also correct the configuration that they would have correctly mis-configured.  I could see it being 0.8.3 or 0.9.0.


updated codecov badge in README and docs

Codecov Report

Merging #19 (8e8dac2) into main (9d3b500) will decrease coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #19      +/-   ##
==========================================
- Coverage   49.21%   49.17%   -0.04%
==========================================
  Files         114      114
  Lines       25198    25198
==========================================
- Hits        12401    12391      -10
- Misses      12797    12807      +10

Impacted Files
Coverage Δ

ares/inference/ModelFit.py
64.29% <0.00%> (-1.17%)
:arrow_down:

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 9d3b500...8e8dac2. Read the comment docs.


[issue #2638] Fixes 10.8 / iOS 6 OBJC_CLASS$_NSURLSessionDataTask crash

Changes posted in https://github.com/AFNetworking/AFNetworking/issues/2638#issuecomment-94174154

Brilliant. Thanks so much for your help and patience on this. I'll cut a new release shortly.


Implement gamesOfPlayers getter function

Task
Implement a more abstract accessor for gamesOfPlayers (hiding array implementation details)
Associated story
Story: #39

At the moment, it is not possible to return dynamic arrays (http://ethereum.stackexchange.com/a/3590/1896).
We are currently doing the proposed workarount: https://github.com/ise-ethereum/on-chain-chess/blob/develop/app/javascript/gamesFactory.js#L251-L260

@chriseth I think you suggested writing an accessor function, but it seems that we cannot return arrays. Any ideas?

Returning arrays works fine. What is not possible is accessing returned arrays from within solidity.
So you can return arrays to "web3.js" but not to solidity.

@chriseth Do you have a code example for us?

Oh ok, it is not possible to return an array of structs - if that is your problem. But it is possible to return an array of elementary types:
contract c {
  uint[] data;
  function getData() returns (uint[]) {
    return data;
  }
}

We want to create an array of bytes32 (game ids), that are stored in a mapping. So we have to create a dynamic array in the function and return it.
I haven't found an example, where i can create an array and return it in a function.

contract c {
  function getData(uint length) returns (bytes32[]) {
    bytes32[] memory data = new bytes32[](length);
    data[0] = 1;
    data[1] = 2;
    return data;
  }
}

Thanks :)


how-google-xxx-series: Borg: the Next Generation

https://research.google/pubs/pub49065/

Done reading


Build the verifier with bazel. [phab:D186]

Created by zarko at 2015-04-15 18:16:46:

schroederc accepted this revision at 2015-04-15 18:17:49

zarko closed via commit 57c4658f2d1b8377fb4579036348a3212ef123e0 at 2015-04-15 18:21:05


Carla env and dataset issue

In the __init__.py file in the carla folder, the config for carla-lane-render-v0 environment is wrong.
The entry_point should be d4rl.carla:CarlaObsEnv instead of d4rl.carla:CarlaDictEnv; and the dataset_url should be the same as that of the carla-lane-v0 env. The current URL gives a 404 error.

This is still an issue when using the carla-lane-render-v0 environment:

d4rl/carla/__init__.py:32: entry_point is CarlaObsDict, this should be CarlaObsDictEnv
d4rl/carla/__init__.py:37: dataset_url of carla-lane-render-v0 is not a valid URL (Error 404). Can this be the same url as in the carla-lane-v0 environment?

Besides that, there are more issues with this env:

d4rl/carla/carla_env.py:930: local variable reward referenced before assignment
d4rl/carla/carla_env.py:933: local variable reward_dict referenced before assignment
d4rl/carla/carla_env.py:936: local variable done_dict referenced before assignment


Replace VoicingManager.speakIgnoringEnabled with a Property controlling speech

It is confusing that the voicingManager.enabledProperty can have a value of false but there can still be speech with speakIgnoringEnabled. A better way would be to provide a separate Property to control speech output while making it so that whenever voicingManager.enabledProperty is false there can be no speech. Here is some scratch illustrating the change we are thinking of.

Index: joist/js/audioManager.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/joist/js/audioManager.js b/joist/js/audioManager.js
--- a/joist/js/audioManager.js	(revision ddcffa71993bd7e06725b30f5a394124e7cff693)
+++ b/joist/js/audioManager.js	(date<PHONE_NUMBER>639)
@@ -135,6 +135,7 @@
           sim.isConstructionCompleteProperty,
           sim.browserTabVisibleProperty,
           sim.activeProperty,
+          this.simVoicingEnabledProperty, // passed to the PreferenceDialog, field on AudioManager
           sim.isSettingPhetioStateProperty,
           this.audioEnabledProperty
         ], ( simConstructionComplete, simVisible, simActive, simSettingPhetioState, audioEnabled ) => {
Index: scenery/js/accessibility/voicing/voicingManager.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/scenery/js/accessibility/voicing/voicingManager.js b/scenery/js/accessibility/voicing/voicingManager.js
--- a/scenery/js/accessibility/voicing/voicingManager.js	(revision 414d8cf0bf3cdabc1a9c8e6eb6b7e091ae8369cf)
+++ b/scenery/js/accessibility/voicing/voicingManager.js	(date<PHONE_NUMBER>241)
@@ -382,8 +382,8 @@
    *
    * @param {Utterance} utterance
    */
-  speakIgnoringEnabled( utterance ) {
-    if ( this.initialized ) {
+  speakIgnoringSpeechAllowed( utterance ) {
+    if ( this.initialized && this.enabledProperty.value ) {
       this.requestSpeech( utterance );
     }
   }

Likely related to https://github.com/phetsims/joist/issues/743 because that will determine where simVoicingEnabledProperty should live. COuld be on the AudioManager, but maybe it should be on a "PreferencesModel", whatever that ends up looking like.

This would happen in utterance-queue now that SpeechSynthesisAnnouncer lives there.


Remove mock_s3 from README.

Reporting Bugs
It seems that the @mock_s3 decorator has been deprecated in moto>=5.0 and replaced with @mock_aws. However, mock_s3 is still part of the README:
@mock_s3
def test_my_model_save():
   ...

Running this code leads to the following error: ImportError: cannot import name 'mock_s3' from 'moto'

Thanks for letting us know @Bougeant! That has now been updated to mock_aws

needs to be updated also from pipy: https://pypi.org/project/moto/

PyPi takes this description from the README @jordital, so I would expect that to be updated at the next release.


Update diagrams according to latest NotificationProxy updates

Proposed solution:
In all relevant diagrams update all relevant objectRefId with resource attribute
Problem description:

The NotificationProxy receives the objectRefId when it receives notifications from the Controller or devices
the NP specification has been changed to not deliver the objectRefId to its subscribers but the resource instead
the MWDI diagrams do not yet reflect this change
see diagrams 021-026
possibly also changes inside the diagrams related to notification sent out by the MWDI changes may be necessary (120-122) (depends on the callbacks)
comparison between callbacks from NP and MWDI are necessary

The format of the notifications sent by the NotificationProxy does no longer contain the objectRefId that is sent by the device.
The objectRefId gets replaced by the resource attribute.
All diagrams and lists have been corrected accordingly.


1657 resolve manifest warnings and optimize icon

Thank you for your contribution to the KodaDot NFT gallery.
👇  _ Do a quick check before the merge.
PR type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Before submitting Pull Request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried respect high code quality standards
[x] I've didn't break any original functionality
[x] I've posted screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </rmrk/collection/26902bc2f7c20c546a-1FVG7>
[ ] I've tested PR on mobile and everything works
[ ] I found edge cases

What's new?

[x] PR closes #1657
[x] resolve warnings in manifest file and added safe padding correctly

Had issue bounty label ?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot

[ ] My fix has changed something on UI, a screenshot for others, is best to understand changes.

hmm if we are changing logos everywhere, what's about favicon?

hmm if we are changing logos everywhere, what's about favicon?

yes, good catch. gonna append it to this PR. just give me a minute

@yangwao done

Perfect, I’ve sent the payout https://kusama.subscan.io/extrinsic/0x9706a64c3b009d960d08f160fa2666f70758a616004ca276aeef38ec5c1c9fcb
Let’s grab another issue and get rewarded!
https://github.com/kodadot/nft-gallery/issues/


if ~/.config/afx is a relative link, cannot execute the afx command

WHAT
if ~/.config/afx is a relative link, cannot execute the afx command
m ~/.config
❯ ls -la
total 20
drwxr-xr-x  5 m m 4096 May  3 20:29 .
drwxr-xr-x 22 m m 4096 May  3 20:29 ..
lrwxrwxrwx  1 m m   38 May  3 20:29 afx -> /home/m/projs/dotfiles/afx/.config/afx

m ~/.config
❯ afx
Package manager for CLI
...
...
Use "afx [command] --help" for more information about a command.

but, if ~/.config/afx is a relative link
❯ ls ~/.config/ -l
total 12
lrwxrwxrwx 1 m m   33 May  3 20:30 afx -> ../projs/dotfiles/afx/.config/afx

m ~/projs/dotfiles master ≡*+9 ~2 -1
❯ afx
[ERROR]: failed to initialize afx: /home/m/.config/afx: failed to walk dir: stat ../projs/dotfiles/afx/.config/afx: no such file or directory

WHY

Which version did you use? Maybe this case has been fixed on v0.1.21 (#41)

it works with regular dir/file

❯ ls -ld .config/afx
drwxr-xr-x 2 m m 4096 May  5 02:37 .config/afx
❯ afx --version  # it works
afx version 0.1.21 (v0.1.21/054f74c)

it also works with absolute link

❯ ls -la
total 24
drwxr-xr-x  6 m m 4096 May  5 02:52 .
drwxr-xr-x 24 m m 4096 May  5 02:51 ..
lrwxrwxrwx  1 m m   11 May  5 02:52 afx -> /home/m/afx
❯ afx --version
afx version 0.1.21 (v0.1.21/054f74c)

but, it not works with relative link

❯ ls ~/.config/afx -ld
lrwxrwxrwx 1 m m 34 May  5 02:41 /home/m/.config/afx -> ../projs/dotfiles/main/.config/afx
❯ afx --version # it not works
[ERROR]: failed to initialize afx: /home/m/.config/afx: failed to walk dir: stat ../projs/dotfiles/main/.config/afx: no such file or directory
❯ cat ~/.config/afx/main.yaml
github:
- name: stedolan/jq
  description: Command-line JSON processor
  owner: stedolan
  repo: jq
  release:
    name: jq
    tag: jq-1.6
  command:
    link:
    - from: '*jq*'
      to: jqm ~

Thank you. Now fixed on new version.

@b4b4r07

there is another problem: afx will fails if ~/.config/afx is not exist, Is it a design or a bug?

❯ afx --version
[ERROR]: failed to initialize afx: /home/m/.config/afx: failed to walk dir: lstat /home/m/.config/afx: no such file or directory

if the ~/.config/afx is a link(or more accuracy,  a relative link?), afx will not install or update the package

❯ afx --version
afx version 0.1.22 (v0.1.22/4b34e4c)
❯ afx install
No packages to install
❯ afx update
No packages to update
❯ ls -ld ~/.config/afx
lrwxrwxrwx 1 m m 34 May  5 14:45 /home/m/.config/afx -> ../projs/dotfiles/main/.config/afx
❯ cat ~/.config/afx/main.yaml
github:
- name: stedolan/jq
  description: Command-line JSON processor
  owner: stedolan
  repo: jq
  release:
    name: jq
    tag: jq-1.6
  command:
    link:
    - from: '*jq*'
      to: jqm ~/projs/dotfiles

if ~/.config/afx is a regular dir, it works

❯ rm ~/.config/afx -fr
❯ mkdir ~/.config/afx
❯ cp main/.config/afx/main.yaml ~/.config/afx/
❯ afx --version
afx version 0.1.22 (v0.1.22/4b34e4c)
❯ afx install
? OK to install these packages? stedolan/jq No
Cancelled

Okay,
let me think about this from the beginning...

if ~/.config/afx is a relative link, cannot execute the afx command

Why should I take care of this case? What kind of motivations or backgrounds do you have?

em...

~/projs/dotfiles is my dotfile repo
I use stow to link $HOME dotfiles towords my dotfile repo, stow creates the relative link
I want to add afx-package-infos in my dotfile repo, and stow will link ~/.config/afx to my dotfile repo's subdir main/.config/afx
if i am in a new system, i can stow -t ~ main and afx install to install packages

I think using relative symlink is rarely in the first place. I'm getting the feeling like relative link itself is not good link and also should not support it in app.
This is because generally we should use readlink system call in order to resolve symbolic link but that API will return just a linked path whether its path is relative or not. In that case, it's difficult to resolve absolute path. I can construct an absolute path by using filepath.Join and filepath.Clean etc but also difficult to continue to do walk dir inside app .
What do you think about this?

actually, I donot familiar with golang, but, if afx will suopprt (almost) unlimited dir level(with link),  the simplest implement is: recurrence like this:
def to_absolute_path(filepath):
    if filepath is absolutepath:
        return filepath
    else:
        return to_abs(filepath)  # maybe using joining

def walk(absolute_filepath, reutrn_list, visited_list):
    # make sure: absolute_filepath is not visited
    # make sure: absolute_filepath is absolute path not link

    visited_list.append(absolute_filepath)

    if absolute_filepath is regulare_file:
        reutrn_list.append(absolute_filepath) # maybe check wheather it is a valid yaml
        return
    else:
        for sub_filepath in absolute_filepath:
            sub_filepath = to_absolute_path(sub_filepath)

            if sub_filepath in visited_list:
                raise Exception('loop') # or just pass
            else:
                # sub_filepath is absolute path and not link
                # sub_filepath is not visited
                walk(sub_filepath, reutrn_list=reutrn_list, visited_list=visited_list)

config_root_dir_path = '/absolute/relative/or/regular/dir/path'
# make sure: config_root_dir_path is absolute path not link
config_root_dir_path = to_absolute_path(config_root_dir_path)

# make sure: config_root_dir_path is not visited
_visited_list = [] # a set

all_config_file_paths = [] # a set

walk(config_root_dir_path, reutrn_list=all_config_file_paths, visited_list=_visited_list)

Of course we can implement this but what I wanted to say is whether I should support this case or not. Relative symbolic link is rare case, right?

ok,  It's up to you to decide


Removing mobilecheck method

I'm thinking about removing mobilecheck function from InteractiveComponent.
It shouldn't be this class concern, the isMobile should be decided by the user of the class. I'm thinking to replace it by a getter setter in the class that will (remove and) add the proper listeners.
By default isMobile will be false and set to true if window.isMobile exists, otherwise it will need to be triggered manually.
This function is hard to maintain and should not be inside this module.

You're right. It will be more convenient since with already have the detection on the server side.

Done in commit https://github.com/brindille/brindille-interactive-component/commit/6eadf6f65046de0f9e5d3f4b180845c977e83386


core: allow to control style tag insertion location

Internally Griffel ensures its style tags are inserted in the correct order to provide deterministic results. However, when used in an application that lazy loads code and styles, Griffel's style tags may become interleaved with the application's style tags, resulting in non-deterministic results.
This manifests in real-world applications that use lazy loading of React components (and CSS modules for application styles in this case but I don't think that's necessarily relevant) and Fluent UI React v9 for controls. In this case application authors want to override default Fluent styles with their own CSS but because their components are lazily loaded and they cannot control where Griffel styles are loaded in the document they cannot be guaranteed their styles will have greater specificity than Fluent's built in Griffel styles.
I've created a rough demo of this on Codesandbox: Griffel Lazy Load
With the default example, by inspecting the source, you can see how some application CSS is loaded in the document first, then Griffel styles, then more app CSS.
I'd like an API for Griffel that allows me to control where Griffel's style tags are inserted so I can ensure they are in the correct place relative to my application's styles.

FYI: You can control insertion of lazy loaded non-Griffel CSS by both style-loader and mini-css-extract-plugin:

https://www.npmjs.com/package/style-loader#insert
https://webpack.js.org/plugins/mini-css-extract-plugin/#insert

I checked closest competitors and see following.
Emotion
Has undocumented (https://github.com/emotion-js/emotion/issues/2774) insertionPoint option:
https://github.com/emotion-js/emotion/blob/0283f88aa05fe591f0e9cf18bfe7d8a1e6830f1c/packages/sheet/src/index.js#L95-L100
styled-components
Has target option:
https://github.com/styled-components/styled-components/blob/447342685c0a9d7b09a658bb75cd1a2195a7e61f/packages/styled-components/src/sheet/dom.ts#L23-L25
Fela
Doesn't have anything:
https://github.com/robinweser/fela/blob/3665a44e015e5b8ab0f2f1c6df2bec4173507220/packages/fela-dom/src/dom/connection/createNode.js#L44-L48
merge-styles
Has a support for "placeholder" tag (https://github.com/microsoft/fluentui/issues/9786):
https://github.com/microsoft/fluentui/blob/9231f2bdb426a3f8223335cccac171a68ecbb485/packages/merge-styles/src/Stylesheet.ts#L377-L391

We need to keep all style elements created by a Griffel in a group. To ensure that it's true we need to keep the existing approach with style buckets and being them siblings.
The more reasonable option for me is insertionPoint, going to create a PR with.


My Visual Studio Code often crashes to prompt oom

I am using Vue to develop the website,I have two Vscodes open at the same time,One for Vue and one for Node,
This is my PC info

Yes, I just updated Windows11 22h2
This is my version of Vscode

Hopefully it will be fixed soon

@deepak1556 Can you please help diagnosing this?

@leessmin Maybe this issue is caused by one of your installed extensions. All extensions execute together on a single nodejs process, so in order to narrow down the possible problematic extension, please try the following:

run F1 > Help: Start Extension Bisect
(this will restart VS Code with half of your extensions disabled)
try to do the steps which reproduce the problem
if the problem reproduces, click "This is bad" (this narrows down the problematic extension to the half which was enabled)
if the problem does not reproduce, click "Good now" (this narrows down the problematic extension to the half which was disabled)
these steps will repeat until the problematic extension is found

initial
step
final

@leessmin Maybe this issue is caused by one of your installed extensions. All extensions execute together on a single nodejs process, so in order to narrow down the possible problematic extension, please try the following:

run F1 > Help: Start Extension Bisect
(this will restart VS Code with half of your extensions disabled)
try to do the steps which reproduce the problem
if the problem reproduces, click "This is bad" (this narrows down the problematic extension to the half which was enabled)
if the problem does not reproduce, click "Good now" (this narrows down the problematic extension to the half which was disabled)
these steps will repeat until the problematic extension is found

initial	step	final

It is really the problem of plug-in, I have uninstalled that plug-in, thank you very much for your help

This issue is caused by an extension, please file it with the repository (or contact) the extension has linked in its overview in VS Code or the marketplace for VS Code. See also our issue reporting guidelines. If you don't know which extension is causing the problem, you can run Help: Start extension bisect from the command palette (F1) to help identify the problem extension.
Happy Coding!


SDK does not support the ability to say if parameter is client side or not. It is coming in near future

SDK does not support the ability to say if parameter is client side or not. It is coming in near future

No modification for Python


Fix PWA vercel deployment

Description
We have a deployment issues in Vercel for the apps/pwa.
Tasks

[ ] Fix the build in local
[ ] Fix the build in Vercel (try to deploy it and check if it's works)

Info:
Error occurred prerendering page "/about". Read more: https://nextjs.org/docs/messages/prerender-error

Can I tackle this one?

Mind if I try this one?

Can I work on this, please?

I will love to work on this.
ETA: 24hrs


Use palette to set colors in SpeakerDetail page

Fixes #581 and #573
@mananwason @mariobehling Please review

Current coverage is 11.58% (diff: 0.00%)

No coverage report found for development at 4cd55ba.

Powered by Codecov. Last update 4cd55ba...9e41bb7

@mananwason Please check


Full Calendar does not completely load on mobile devices (iphone, ipad). Window remains blank no matter if I change view settings or restart

Is there a solution for this already?
Full Calendar does not completely load on mobile devices (iphone, ipad). Window remains blank no matter if I change view settings or restart
Originally posted by @Ambursley in https://github.com/davish/obsidian-full-calendar/issues/127#issuecomment-1714437720

I also got this issue on linux fedora

Is there an update on this? Thank you.

No :/ I have my vault synchronised via obsidian-git and on Windows it works perfectly normal but on linux it doesn't. The bug could be that the plugin has a wrong configuration set due to the synchronisation, but I don't see how a reinstall could not fix that (and I tried reinstall it doesn't work) so I am clueless...


DRAFT: support moving opensearch domain into the VPC

Demonstrates changes that may be required in order to move an existing Opensearch domain into a VPC.
See #700 for more context.

Correct @sunu.
The approach I recommend would be this.

Deploy this infrastructure configuration into the staging environment
Perform the migrations steps that we detailed above
Make necessary modifications in the application codebase for "switching over" to the private opensearch domain
Remove the "old" os_domain from the CDK code. (instantiations, environment variables, etc)
The final deployment will remove the public opensearch domain, leaving us with only the private opensearch domain

Let me know what you think. We can async communicate in slack if you have any cdk questions arising.
I propose for @sunu to deploy this in staging, test, and I will support prod deployment.
cc: @wrynearson


cargo install using massive memory footprint under Docker/Buildx/QEMU

Problem
Docker with QEMU and Buildx seems to be incapable of any cargo command without enough memory demand to crash GitHub Actions. Which means it's using at least 4GB Ram (GitHub Actions free version capacity), which seems unreasonable...
Example:
https://github.com/simbleau/cddns/actions/runs/3457952620/jobs/5771886161
Steps
Inside a Dockerfile, run cargo install ...
Possible Solution(s)
No response
Notes
No response
Version
No response

Looks like it failed during Updating crates.io index. It is likely an issue of libgit2 memory usage. Please try out this solution https://github.com/rust-lang/cargo/issues/10583#issuecomment-1129997984 or use unstable feature sparse-registry to fetch registry data on demand.
I am going to close this at this moment, as it seems to be a duplicate of #10583. If you think this is a different one, please comment below. We'll consider reopen then. Thank you!


require through service modules problem

Sails version: 0.12.13
Node version: 6.11.2
NPM version: 5.1.0
DB adapter name: N/A
DB adapter version: N/A
Operating system: Mac 10.12.6

api/services/A.js
console.log('A required')
const B = require('./B')
global.sails.on('lifted', () => console.log(B === global.B))

api/services/B.js
console.log('B required')

stdout
A required
B required
B required
false

I think, in A.jsB === global.B should true
I found loadServices hook is using include-all and
in include-all source, clearing require.cache before each require.
I think service hook(or include-all) should like below
(clear all caches before require files)
api/hooks/services.js
const fs = require('fs')
const path = require('path')
const _ = require('lodash')

module.exports = function (sails) {
  return {
    defaults: {globals: {services: true}},
    configure () { sails.services = {} },
    loadModules (cb) {
      try {
        sails.log.silly('Loading app services...[custom]')
        const servicePath = sails.config.paths.services
        let modules = {}
        let fileMatches = fs.readdirSync(servicePath)
          .map(x => x.match(/^(.+)\.(?:(?!md|txt).)+$/)).filter(x => x)
          .map(([fileName, keyName]) => ({fileName, keyName, filePath: path.resolve(servicePath, fileName)}))
        // clear caches before require. here's difference between built-in services hook
        for (let {filePath} of fileMatches) {
          let resolved = require.resolve(filePath)
          if (!require.cache[resolved]) continue
          let modulesToRemove = [require.cache[resolved]]
          while (modulesToRemove.length) {
            let moduleToRemove = modulesToRemove.pop()
            _.chain(require.cache)
              .get([moduleToRemove.id, 'children'])
              .reject(child => child.id.match(/\.node$/))
              .forEach(x => modulesToRemove.push(x)).value()
            delete require.cache[moduleToRemove.id]
          }
        }
        for (let {keyName, filePath} of fileMatches) modules[keyName] = require(filePath)
        _.assign(sails.services, modules)
        if (sails.config.globals.services) {
          _.forEach(sails.services, function (service, identity) {
            let globalId = service.globalId || service.identity || identity
            global[globalId] = service
          })
        }
        cb()
      } catch (err) {
        sails.log.error('Error occurred loading modules ::')
        sails.log.error(err)
        return cb(err)
      }
    }
  }
}

stdout
A required
B required
true

Hey @Elevista, thanks for posting.  We've tried this before, but the issue is that it wipes out stateful modules.  Generally, there shouldn't be any, but since services are the wild west, and you can do anything you want in there, folks sometimes do implement code that gets messed up if we clear the require cache.
(Aside:  As for doing that in include-all in general, another problem is that most adapters currently rely on per-module state for keeping track of open connections to the database.  This is not ideal, and unfortunately it's going to be a big endeavor to solve-- but I'm committed to solving it as we pick back up on the road to Sails v2 later this year.)


What's the state of this repo

Hi @sbidoul ,
Thanks for this awesome work, I've discovered your talk in Odooexp22 and it was awesome!
Is this repo the best place to test, share and report issues?
Regards

@flotho you can test with this repo, together with this Odoo patch: https://github.com/odoo/odoo/pull/103227. We recently rebased it on the latest 16.0.
Of course to get the full benefits, the Odoo ORM patch needs to be elaborated a little bit, and then it must percolate to official addons. Maybe @rco-odoo can give an update about Odoo plans about this.

one more question: it seems we can provide type checker some extra type declaration stubs files. Seems this is used for type inference with legacy libraries.
What about generating such stubs files in OCA/OCB automatically untill odoo/odoo start integrating the new field syntax?

@rvalyi yes, many things can be done. For instance it should be feasible and not that hard to write a script that automatically convert the inheritance declarations. So there are way to accelerate the conversions. Creating typing stubs for models.py fields.py and api.py may be feasible, but I'm not sure it's feasible for the official addons.


Enabling shell script for release management

Enabling shell script for release management

Hi @ankitgo, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;


Create slowmode command and fix amod2 slowmode effect

In amodv2, when the effect to set slow mode to a channel is triggered, after the duration is gone, instead of making the slow mode go back to it's original state, it's removed completely.
So, for example, if your channel is constantly at a 5s RL slow mode, then a rule is triggered to set it to 1h RL, when that rule expires the channel will have the slow mode removed instead of coming back to 5s RL.
This PR fixes this.
The second part of the PR is a slowmode command -slowmode
Syntax is: -slowmode <rate limit> <optional delay>
The same command can be used to remove the slowmode by just using a ratelimit of 0.

This needs to be updated. Converting to draft for now.


Bug with jpg  pointing at XCAssets/drawable-resources

https://facebook.github.io/react-native/docs/images.html says:

you can still use images that are already bundled into the app (via Xcode asset catalogs or Android drawable folder):
<Image source={{uri: 'app_icon'}} style={{width: 40, height: 40}} />

However, this is apparently only true of png images. If I have a jpg image, then I must do the following incantation to get it to work:
<Image source={{uri: Platform.OS === 'ios' ? 'app_icon.jpg' : 'app_icon'}} ...
Android needs an extension-less filename, as it uses context.getResources().getIdentifier(), which does not need/want the extensions.
It looks like iOS's RCTIsXCAssetURL will only return True on png or extension-less image names. So passing an extensionless image does work here, but then fails in RCTXCAssetImageLoader.loadImageForURL's [UIImage imageNamed:] without the extension for some reason (I suspect, but haven't verified, that it needs to check extension-less, with an extension-ed fallback lookup).
However, if I pass the jpg extension , RCTIsXCAssetURL skips it, which then causes it to get (successfully!) loaded as a file:// URL. But it makes for a really ugly difference between platforms, that took me a couple hours of sleuthing around to figure out the right incantation per platform, and that I was even doing wrong (since the documentation was inaccurate and mislead me into thinking I was doing the Right Thing).

I stumbled upon the same issue. RCTImageLoader is doing some crazy things regarding the extension. If there is no extension, it will automatically add ".png", otherwise the imageName won't be passed thru as is.
Thats why png-files will work out of the box, while JPEG needs the explicit extension when requeted with {{"uri: xxx.jpg" }}.
However, if one use require("image!name"), it won't work neither with or without the explicit extension and will only handle png properly.

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with ProductPains! Check out its new home: https://productpains.com/post/react-native/bug-with-jpg-image-pointing-at-xcassetsdrawable-resources
Product Pains has been very useful in highlighting the top bugs and feature requests:
https://productpains.com/product/react-native?tab=top
Also, if this issue is a bug, please consider sending a pull request with a fix.


Update active-directory-federation-metadata.md

Removed unneeded space that makes copying/pasting URLs a hassle.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

@jstrom-MSFT : Thanks for your contribution to the Azure documentation! The author, @priyamohanram, has been notified to review your proposed change.

#sign-off for Priya, per Jo Molnar.

Thanks @BryanLa


Fix SQL formatting for start_query_execution

Feature or Bugfix

Bugfix

Detail

The SQL formatting in start_query_execution was incorrect

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubStandardCodeBuild8C06-llutOAimTATs
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubLoadTests5656BB24-s6u9F3qN9oFy
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubStandardCodeBuild8C06-llutOAimTATs
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubStandardCodeBuild8C06-llutOAimTATs
Commit ID: d91ed267aaa8454990ae73c9b9f39d092e357526
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


[Question] UPC-UA aggregation server

Maybe this is a feature request. I'll change the title accordingly, if so.
Is there a possibility to create an aggregation server with reference type from multiple servers?
The scenario would be to have multiple servers with distinct models and one central server that has to model all the sub-servers together, without the need of touching the central server every time a new sub-server comes to live.

node-opcua has a serverclient concept, but I need more time to devolp that feature ... Milestone 3.x / 4.x

feel free to contribute and send your pull request


Write a guide to setup tailcall on AWS serverless

Write an engaging guide to deploy tailcall on AWS serverless. Leverage AWS features to manage tailcall configuration and server deployment and configuration.
Requirements

Make no grammatical or spelling errors.
Keep the guide tone neutral, non non-emotional.
Keep the writing style free-flowing and engaging.
Fact-check everything, connect on Discord if you are confused.
Make the writing cohesive, to the point, and related to the title.

PS: DON'T CREATE LOW-EFFORT CHATGPT GENERATED CONTENT!

@tusharmath can i work on that

@ibishal Please do some research on this first. I think it might require some work on our end before.

ok @tusharmath


README assets

See https://medium.com/@jackywangdeveloper/tips-tricks-how-to-add-a-demo-video-in-your-git-readme-md-bbf8376a4b74


Fix Repeating Faculties Hint Bug

This PR adds the following:

Unique faculty list condition
Additional test for repeating faculties bug

This PR closes issue #54.


Add bashcomp for --example...

...and restrict --manifest-path to propose only *.toml files.
Also add .gitignore to registry folder

r? @alexcrichton
(rust_highfive has picked a reviewer for you, use r? to override)

Done

@bors: r+ e28ef064f06fb5131835d32b25b3dfb21642e2d5
Thanks!

:hourglass: Testing commit e28ef06 with merge 86be4e4...

:sunny: Test successful - cargo-linux-32, cargo-linux-64, cargo-mac-32, cargo-mac-64, cargo-win-32, cargo-win-64


GitHub Actions needed for in Nixpkgs

There is a lot of work we could automate or improve automation for. For some of these tasks we have ofBorg, and others are already done using GH Actions.
This ticket lists tasks we could automate and the type of bot we need for it. By using GitHub Actions it is hopefully easier to get more people that are interested involved.
Backport pull requests (PR)
Backporting is a hassle. To do it correctly, one should wait until the original PR is merged and then cherry-pick -x. This is demotivating for contributors, especially in case of trivial cherry picks. Thus, we need a bot that backports as much as trivially possible.
The Action should check for the 9.needs: port to stable, although likely we should change the label to explicitly say the branch or NixOS version. The label needs to be set by a nixpkgs-committer.

https://github.com/marketplace/actions/backporting. Note, however, it seems to have trouble with forks and does not allow you to use custom label names.

https://github.com/NixOS/nixpkgs/pull/124273
Check backports have a valid hash (PR)
The rule when backporting is to use cherry-pick -x so the hash of the original commit being cherry-picked is included in the new commit in the line `cherry picked from commit``. Sometimes this is forgotten, and sometimes the hash is simply incorrect, because the original was rebased instead of merged or the commit contents was simply changed.
https://github.com/NixOS/ofborg/issues/437
Set labels based on issue and PR title and text (Issue/PR)
Based on the title as well as the fields in an issue and PR, we can set a bunch of labels.

https://github.com/marketplace/actions/issue-auto-labeling-and-assigning

Set labels based on changed paths (PR)
Based on the paths that are changed by a PR, certain labels should be set. Note this is implemented currently by ofBorg https://github.com/NixOS/ofborg/blob/d39605727d9509826a61a4d38e18766a6a07277f/config.public.json#L116.

Labeler: https://github.com/marketplace/actions/labeler

Comment on PR based on changed paths (PR)
Based on the paths that are changed by a PR, certain comments should be posted. An example are field-specific checklists.

Changed files: https://github.com/marketplace/actions/get-changed-files

https://github.com/NixOS/nixpkgs/pull/113077
Invite maintainers to issue (Issue)
For the packages mentioned in the title and in the attributes field, invite the maintainers.
This requires an evaluation or at least a cache such as the packages-list file.
Merge master into staging branches daily
Mass-rebuilds should target staging and reach master via staging-next. To keep these two branches up to date, the master branch is merged into staging-next and then staging-next into staging. This is typically done daily and could be automated. Upon failure (merge conflict) a message is sent or issue opened.
Important is that these merges are not fast-forwards.

https://github.com/marketplace/actions/merge-branch uses the GitHub API which does --no-ff.

Extends https://github.com/NixOS/nixpkgs/issues/99722.

I feel I should note, before more GitHub Actions start being added, that, at least to my understanding, Actions configured with the default GITHUB_TOKEN, as seems common (e.g., all the Actions linked above say to use this token), have the equivalent of full push access (see, e.g., (1), (2), (3)), which most or all of these tasks shouldn't need. Per (1), one should be able to use a custom, more restricted token instead.

I feel I should note, before more GitHub Actions start being added, that, at least to my understanding, Actions configured with the default GITHUB_TOKEN, as seems common (e.g., all the Actions linked above say to use this token), have the equivalent of full push access (see, e.g., (1), (2), (3)), which most or all of these tasks shouldn't need. Per (1), one should be able to use a custom, more restricted token instead.

I'm not actually sure it's that easy to drop permissions. You can overwrite the GITHUB_TOKEN environment variable, but it's still available as github.token context. In addition, using the provided GITHUB_TOKEN means you won't inadvertently trigger a GitHub Actions loop.

I'd like to propose to add a shellcheck action for modified shell scripts only. I could make a PR if this is wanted.

I'd like to propose to add a shellcheck action for modified shell scripts only. I could make a PR if this is wanted.

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

@lukegb wrote—

I'm not actually sure it's that easy to drop permissions. You can overwrite the GITHUB_TOKEN environment variable, [...]

Is there a GITHUB_TOKEN environment variable? "GitHub Actions / Reference / Environment variables" doesn't seem to mention one; GITHUB_TOKEN seems to be a property of the secrets context.

[...] but it's still available as github.token context.

Available to a running action, if the author of the workflow (YAML file) doesn't provide it? I don't see that in the documentation, though it's very possible that I missed it.

@lukegb wrote—

I'm not actually sure it's that easy to drop permissions. You can overwrite the GITHUB_TOKEN environment variable, [...]

Is there a GITHUB_TOKEN environment variable? "GitHub Actions / Reference / Environment variables" doesn't seem to mention one; GITHUB_TOKEN seems to be a property of the secrets context.

[...] but it's still available as github.token context.

Available to a running action, if the author of the workflow (YAML file) doesn't provide it? I don't see that in the documentation, though it's very possible that I missed it.

I did an action for auto updating nodePackages #112831. Feedback is appreciated.

Set labels based on changed paths

#113077

I feel I should note, before more GitHub Actions start being added, that, at least to my understanding, Actions configured with the default GITHUB_TOKEN, as seems common (e.g., all the Actions linked above say to use this token), have the equivalent of full push access (see, e.g., (1), (2), (3)), which most or all of these tasks shouldn't need. Per (1), one should be able to use a custom, more restricted token instead.

The year after I posted the above, GitHub added a permissions field to control the permissions granted through the GITHUB_TOKEN: https://github.blog/changelog/2021-04-20-github-actions-control-permissions-for-github_token/.  Adding this field seems easier than using a custom token.


How to attach some buttons to this component?

I need attach some buttons to this component(out of the area of this component),
Is there any slot to do that?
or should  I build my own component and use script to make my own component to follow it?

I tried using CSS to show some button in the component looks like outside of the area.


Encode unencoded glyphs as F0000 + hex(GID)

I was chatting with @twardoch today about how glyph names are the 'primary key' for fonts, because in any contemporary font you have so many unencoded glyphs, accessed with OpenType Layout logic... But unencoded glyphs are tricky to precisely call, because OTL logic is per-font. I mentioned that I might like to use the Unicode Private Use Area to encode otherwise-unencoded glyphs.
Adam kindly mentioned he already thought about this, and he concluded that the Private Use Plane A (Unicode Plane 15) is ideal for this, as its U+F0000..U+FFFFD so you can use a value of F0000 + hex(GID) to cleanly, logically, encode all unencoded glyphs.
Let's do it!

[x] add a "3.10" cmap subtable

Per TypeThursday's Laura Worthington article we should do this, its important for casual users.

What's this article you are referring to?

Oh its not out yet. Stay tuned.

ok. I hope you don't want to revive the idea of using PUA codes in released fonts...

Oh its not out yet.   Ping us when it is.  That said, people have had bad ideas forever; doesn't mean we should support them.  I'm more willing to implement a HarfBuzz tool to render arbitrary glyphs than to add a hack in fonttools.

The issue is that a lot of text environments that users are using do not
support OTL; for text typefaces this isn't really an issue, but for display
types then users really do want that particular glyph from that particular
font, and for it to work everywhere. When composing a 3 word text, the
scenarios where PUA text doesn't make sense are less important.

@anthrotype @behdad the article is at https://medium.com/type-thursday/casual-users-and-the-font-market-a1c5c2f19149

I used to be anti-PUA for a long time but now I’m more inclined to support it, because the software makers have failed to support OpenType Layout for the last 15 years.
However, I’m more inclined to use the Supplementary PUA plane because it creates another “soft” hurdle.
I’m not much helped by PUA-less fonts if OpenType gets supported widely 20 years after I’m dead :)
BTW, instead of PUA, I’d actually be happier to produce “feature-frozen TTCs” that at least expose the most important 1:1 GSUB font features (small caps, stylistic sets, oldstyle nimerals) via the cmap as supplementary font menu items (Source Han does this). It’s a cleaner solution than PUA, with little overhead, and it seems that most modern OSes and apps do support TTCs. CFF-based TTCs have much less backwards compatibility than TT-based TTCs, though.

The problem with TTCs though is that hardly any commercial font distributor is equipped to carry/sell them.

Of course I understand why Behdad categorically (LOL) rejects this. It essentially undermines the last ten years of his work. :) With HarfBuzz, Behdad actually has made OpenType Layout much more attainable towards “normal” software developers, and from a “hobby clone” project has turned HB into being on par with the reference inplementation, or at times, surpass it.
The actual problem is actually the primitive UX behind font selection and glyph input.

I can see the case for pyfeatfreeze based TTFs... but will TTCs work for
users of https://en.wikipedia.org/wiki/Creative_Writer or
https://en.wikipedia.org/wiki/3D_Movie_Maker or whatever it is kids use
these days? And what about OTFs?

Microsoft has been shipping Cambria only as TTC since 2007, and numerous Chinese fonts well before that. All their APIs support TT-based TTCs well. Only a small fraction very obscure apps that do their own font handling might have a problem. Cambria is a major font, default in many documents. I've never heard any problems related to this, not in printing or any noteworthy apps. Windows APIs handle this completely transparently. CFF--based TTC support is newer on Windows, not sure how new.
OS X handles TTCs (both TT and CFF) since at least 10.7, maybe older. The OS X upgrade rate is much faster given thir upgrades were always cheap or, recently, free. Most Apple system fonts are TTC, some CFF-based, so Apple must be confident their APIs handle it well.

By CFF-based TTC, I mean OTF-based. They have the same extension, .ttc.

I agree, although the upgrade rate is slowed because of hardware
requirements; there are some minority of users stuck on 10.6 old hardware
(and I believe some are stuck out of choice thanks to allegiance to old
'trusty' FL5 versions... :)
I wonder what Laura thinks.

@kenlunde might know what repercussions of shipping CFF-based TTCs are, given Adobe's decision to ship Source Han as CFF-based TTCs but also in several split forms.

On 8 February 2016 at 15:00, Adam Twardoch<EMAIL_ADDRESS>wrote:

However, I’m more inclined to use the Supplementary PUA plane because it
creates another “soft” hurdle.

What does this look like for the newbie customer described in the
interview?

Ps. If Lato had small caps or another big 1:1 feature, I would have shipped it as featfrozen TTCs from day 1. But the number of OT glyphs in Lato is tiny so I didn't bother. If we ever add small caps, I'll make the official release as TTCs.

@twardoch: The only downside to shipping OTCs is that Windows doesn't support them. Adobe apps, CS6 and higher, installed on Windows support OTCs, but the font resource needs to be installed into the app's private font folder. OS X started to support OTCs from Version 10.8, if memory serves. It's a superb delivery format for Source Han Sans.

Laura is a somewhat special case. She makes calligraphic fonts where only 30% or less of the glyphs are encoded. People pay for her fonts, then cannot use it.
The only opensource font of that kind that comes to my mind is Pecita, where users might want to insert glyphs individually. SPUA should not make it difficult to achieve the double-click-on-glyph-palette glyph insertion. But it'd be easier to track the SPUA character codes in documents in case someone wants to cleanse them later.
The featfrozen TTC method, on the other hand, would give millions of LibreOffice/OpenOffice users access to full-blown small caps (also Microsoft Office!), and to other major features (oldstyle figures, significant stylistic sets).
I personally consider featfrozen TTCs not a hack, because they don't "break" anything. The user just changes the font in the menu, like going to an italic.
The reason I contributed my SPUA code was mostly to make special font versions for use in webfont specimens, or glyphmaps, where you really want to "look", display non-printing glyphs, or override script-specific shaping. That's what I do myself and how I use it. I never shipped an end-user font like this.
Suggestion: the OFL version of the Noto fonts should not use SPUA, but the Apache 2 versions might, for all glyphs ;)

Ah, so Windows still does not support CFF-based TTCs. Bugger :(

Since this is about naieve users of crappy Windows apps (you know, the ones
they use to make T shirt designs and Blurb self-publishing books and so on)
then the lack of Windows support makes this a non-starter. However, perhaps
OTC isn't so important.

Of course I understand why Behdad categorically (LOL) rejects this. It essentially undermines the last ten years of his work. :)

That's not the reason.  It's "this is font-dependent text encoding" and hence BAD.  But I see your point.

its become important for casual users of desktop fonts.

And you're the one advocating for Google being exemplary on the Roboto repo… if current applications are incapable then make one that is. That's what I'm doing with font editors.

This isn't about libre software, it is about proprietary software that will
never improve.

Way to give up Dave. Make it better than proprietary as Stallman said and ppl will use it.

On 10 February 2016 at 04:09, Adrien Tétar<EMAIL_ADDRESS>wrote:

Way to give up Dave. Make it better than proprietary as Stallman said and
ppl will use it

Now who is wearing the GNU T shirt? :)

It's "this is font-dependent text encoding" and hence BAD

This reminds me of XHTML vs HTML5. I understand it offends technical purity. But it hurts users from getting their jobs done and getting on with their lives, and is only a fallback for when OT isn't available.

Now who is wearing the GNU T shirt? :)

I'm talking to you in your language. Look, existing font editors didn't work for me so I made one.

You seem to still be missing my point: New software doesn't matter. This is
about entrenched existing proprietary software, which can not be patched,
or switched away from.

Conceptually, I'm with Dave insofar that fonts in the SFNT container are an unusually broad in the sense of OS and app coverage and lifespan. Also, people are more likely to switch fonts than apps because apps are, well, more specific to their needs.
Also: text encoding is not an "easy" thing. There are no perfect solutions. Since 2001 I kept asking the industry how OT features should be marked up in "rich text" and the answer came in 2011 with CSS font-feature-settings. That's because it wasn't obvious at all. And it still isn't perfect (in order to get just one different glyph, you needs to surround the character with a HTML span and apply a super-long CSS property, but this will likely segment the text run so that isolated character stops interacting with the rest of the line OT-wise.
It's shit. :)

how OT features should be marked up

This is a great point, I've added it to the wikimedia page, https://meta.wikimedia.org/w/index.php?title=Future_Global_Font_Format_Requirements&type=revision&diff=15336305&oldid=14437375

Supplementary Private Use Area-A is 65534 codepoints from U+F0000 to U+FFFFD, which means that practically all fonts can be encoded (as they can hold max. 64K glyphs). My idea to use it was that each glyph ID gets assigned a codepoint F0000 + GID, so something like “harfbuzz.js” could do all the GSUB+GPOS processing even if a browser doesn't support some shaping, and then such harfbuzz.js would emit a series of GIDs, and in order to display them, F0000 is added to each resulting GID and then the font’s cmap gets requested for such codepoint, which in turn let the browser actually display these glyphs. Since the F0000+ codepoints in the font corresponds exactly to the GID order, this can be stored very efficiently in the font’s cmap format 12, adding only a few bytes to the font regardless of its size.
The BMP PUA (E000-F8FF) only allows for 6400 codes so it wouldn't be enough for some fonts. Plus some fonts have a legitimate “corporate” usage of the BMP PUA (SIL, MUFI), while SPUA is really obviously “last resort”.

Ps. In my method, ALL glyphs are encoded in the SPUA, not just the “unencoded” ones. But if the SPUA codes are used, the OS/app shaper does not apply any shaping since it knows nothing of the script. This allows me to do my own external shaping (e.g. via said harfbuzz.js or another JS shaper). So in essence, this is a simple poor man’s API for glyph access in apps that can only talk to fonts via the cmap. It a decdnt web implementation, those SPUA codes could live in some shadow DOM or something, while proper selectable/searchable text woul live “on top”.

...or via CSS generated content. People dealing with icon fonts (Bootstrap using Font Awesome etc.) have been using PUA in an elegant way that does not expose garbage to search. But it’s still fonts rather than SVG, so it’s fast, cacheable, works everywhere etc.
 I prefer to treat users as reasonably smart. Users obviously prefer to just type their text on the keyboard, and that'll use normal Unicode. They will resort to some glyph palette insertion or some fancy PUA codes only if they're really “desperate” i.e. when they really have no other choice.

They will resort to some glyph palette insertion or some fancy PUA codes only if they're really “desperate” i.e. when they really have no other choice.

Right, that is why Laura uses the BMP PUA, and I agree that this would be better for her (and generally.)
One remaining question for me is if this should be done for all fonts or only OT-intense display fonts.

I don’t have an opinion on that.
However, I want to add one thing: in early OpenType days, Adobe used a portion of the BMP PUA as a “corporate use area”, where they standardized certain codes for things like small caps, oldstyle numerals or certain ligatures. So, an oldstyle “3” orva smallcap “A” always had a certain code regardless of the Adobe font used. Now that was a bad idea because this practice created an illusion that these codes had some claim of universality, or longtime relevance. So they stopped using PUA after a few years.
But with purely font-specific encoding, I don’t see this as a problem. If you have a series of SPUA codepoints assigned to correspond to GIDs in a specific font, then everyone agrees that no machine “knows”, or is expected to know, what any of these codepoints “mean”. As long as all sides agree that no presumptions can be made, I think it’s fine.
In Adobe’s case U+F761 was semi-standardized as “smallcap A”, and all their early OTFs used U+F761 as small-cap A, so the danger was that some apps might start expecting that U+F761 just “means smallcap A”. But with the purely GID-oriented SPUA, U+F0761 will mean something else with every single font. So it really is “private”, and substituting fonts will yield unecpected results.
Which is fine because users will more likely not except any stability of this encoding and will use it mostly as an input mechanism for specific glyphs in very specific situations — often with the goal being print, or laser cut, or automated engraving. Most of these laser cut or engraving apps have no OT features UI and never will be.
So SPUA entry may be the only way for the user to get work done. If the user could find a better method, they’d already be using it.

As long as all sides agree that no presumptions can be made, I think it’s fine.

I worry that glyphs/fontmake might create predictable map from common unicodes to GID ordering...

I risk saying something stupid here, but if a strict mapping should not be infered to be normative, then can't these tools randomise mappings on purpose?

randomise mappings on purpose?

That seems wise, to mitigate the practical problem with PUA text.

PUA Text: Hope for best, expect the worst.

@kenlunde I understand the categorical criticism of this, but I'm curious what your advise is for Laura Worthington. What should she do to serve her customers?

@davelab6: I wrote the following at the bottom of page 162 of CJKV Information Processing, Second Edition: "The use of PUA code points should be avoided at all costs, because their interpretation, in terms of character properties, and their interaction with legacy character set standards (in other words, interoperability) cannot be guaranteed."
With that said, Laura's article suggests that PUA usage is a necessary evil in order to access glyphs that are not directly encoded. However, the main caveat is that the more an implementation depends on PUA code points, the more closed said implementation is.

the more closed said implementation is

I'm not entirely sure what you mean by 'closed,' please could you clarify? :)
I am framing this as fallback to help users of implementations that are so poorly done that this is the only way to make the font useful. It isn't that implementations should depend on the PUA codepoints for providing large glyph sets to users, it is that they are oblivious to this need and PUA is a workaround for people who are held hostage by these implementations' incompetence.

@davelab6: What I mean by closed is that the implementation is closely tied to the PUA mappings of a particular font, and changing the selected font to anything else is virtually guaranteed to result in illegible text.
Furthermore, in the context of font fallback, I would claim that PUA usage is at least an order of magnitude more dangerous than environments that do not employ it, because it is not clear from which font (or fonts) the glyphs are being displayed.
Also, for fonts with glyphs that are not encoded and require OpenType feature support to access them, there may also be metrics-related dependencies that would likely be overlooked by simpler apps, meaning that even if a user is somehow able to enter a glyph via a PUA code point, the resulting glyph may not behave as expected, due to limitations in the simpler authoring app.

Hmm.
So, it seems that Laura should simply pyfeafreeze her font into a set of single-style font families, and I should set up a freezemyfont.com site to make it easy for regular people to freeze their libre OT fonts to use in such implementations, and maybe lobby Font Squirrel to add this to the Web Font Generator.

Where is the glyph positioning of all this (so 60s) PUA talk, it is not like OpenType is only about glyph replacements. OK you are not building fonts that need mark positioning or all this fancy stuff, but what about kerning?

@davelab6: I am not sure what pyfeafreeze is and its ramifications. I have no strong objections to someone who feels the need to use PUA code points, and my point is that those who decide to go down that path simply need to understand the consequences, which is that nothing is guaranteed, and any oddball behavior is likely to be related to the decision to use PUA code points.
@khaledhosny: That was sort of my point, specifically that there is more to glyphs that merely having them encoded. Perhaps such an approach works for Western fonts, but I can pretty much guarantee that it will crumble when non-Western fonts enter into the picture.

All OpenType substitutions and positioning happen on the glyph level. Principally, it doesn't matter which codepoints a glyph is invoked through.
Of course since the OT Layout model relies on per-script shaping engines, reordering happens or certain features are automatically applied in a specific order when glyphs are invoked via their true Unicode codepoints.
If the same glyphs are invoked via PUA, the shaper probably classifies them as "DFLT" script. Indeed if a PUA codepoint is inserted in the middle of "true" Arabic or Devanagari or even Latin or Cyrillic text, some OTL engines may interpret that single glyph inserted via PUA as a separate run, and then would not execute feature interactions with meighboring glyphs (kern, mark etc.). Which does indeed pose a problem.
Other engines may fold that glyph into the dominant run and it will work. Inconsistent run itemization and inability to perform positionings or contextual substitutions across run boundaries is indeed a very weak aspect of OTL.
But if the PUA-invoked glyphs end up to be in the same run, universally applied default features like kern or mark, and any explicitly user specified features, both GSUB and GPOS, will work.
The pyftfeatfreeze method isn't problematic. It only remaps the "cmap" and typically does so within the same languagesystem, so the new default glyphs (assigned to Unicode codepoints) remain within the same script run, and everything works as it should, unless your features do really weird circular stuff.
For example, if you have swash Arabic glyphs in the "swsh" feature inside the "arab" languagesystem, these glyphs would normally already partake in the init, medi, fina, isol, curs or mark features in the original font. If you freeze the swsh feature using pyftfeatfreeze, those swash glyphs get mapped as the default Arabic letters in the cmap table, but since they get classified as the Arabic run, are fed into the Arabic shaper and already partake in the "arab" features defined in the font, everything works as expected.
Freezing "swsh" is sometimes even a better method than applying a user defined feature to one character via, say a span with a local style="font-feature-settings: 'swsh'" property, because doing the latter may force a run break (or generally cause the span to be rendered in a separate step), which also stops the interaction with the neighbors -- unless the higher-level text engine is smart enough to detect and ignore certain span changes or somehow fuses the line together before passing it to the OTL engine.
 :)

Khaled, non-OT implementations are TrueType implementations; thus they use
the KERN table. :)
Ken, please see
https://github.com/twardoch/fonttools-utils/tree/master/pyftfeatfreeze

On 11 February 2016 at 09:13, Adam Twardoch<EMAIL_ADDRESS>wrote:

If the same glyphs are invoked via PUA, the shaper

Hmm. Do we have concrete examples of implementations that have an OT
shaper, but no UI for users to set/unset non-default features? (I'll ask
Laura on TypeDrawers about this.)

@kenlunde pyftfeatfreeze is a tool I published which e.g. could turn the Source Han Sans superfont that uses the OT features to switch between SC, TC, J and K variants into a series of SC, TC, J and K fonts which all have the appropriate variants mapped in the cmap. In fact, after you published Source Han Sans, I realized that such an approach may no longer as frowned upon as it used to be by some people, and I finished and published the tool (I had a simple working version of it for a long time now).

@davelab Start with Notepad. :) I supports calt (contextual alternates) but gives no way to override its results. Zapfino Extra LT Pro that I made in 2003 shows how this works -- you see substitutions happening as you type but if you finished typing, there is no way to pick another variant. And then virtually every Windows app that uses the standard GDI Windows text controls, any Photoshop clone, older versions of Word or Corel Draw, and tons of simple "add text to image" apps, or apps for vinyl sign cutting or CAD apps or motion graphics/video editing apps or apps that add subtitles or captions etc. All that uses the standard text stack on Windows.

Right. I see why this is a really big problem :angry:
Looking back at Laura's post on TD, she says that feeding the new hobbyist retail market PUA fonts is increasing their use and appreciation of fonts, that puts pressure on app developers to provide better typography features.... but the example is a glyph picker, not a real OpenType UI. I wonder if any apps have added OT UIs, so I've updated my question to Laura to be about that :)

That swash example makes no sense at all, since you usually want to enable it for just part of the word (at least for Arabic), and you can’t do that with a “frozen” font. That is really just another hack suitable for certain fonts. That CSS font-features currently force run breaks is an implementation bug, Firefox, for example, apply many style changes across spans without breaking OpenType logic and it should do that for font features too (since HarfBuzz already support that).

@dave I don’t see how kern table can handle all kinds of kerning supported by GPOS pain positioning, nor how it is certain that the kern table will be always supported in these situations.

@khaledhosny Replace "swash" with any other, e.g. one variant letter accessible through ss02 that you want to appear consistently in your text, or a localized form. Though admittedly, pyftfeatfreeze does not currently allow to freeze a feature for only some glyphs.

I'm going to be dogmatic here and say that encoding stuff in the PUA for general-purpose fonts is a bad idea and if anything we should check that it's not happening. I understand that it's a necessarily evil for old applications which don't read the glyph table, but fontbakery is about best practices, not bad practices. If anyone still strongly insists that it should happen, feel free to ~fight me~ reopen the issue.


[Bug] Inaccurate selection

Describe the bug
On some websites only, not all of them, the selection of elements is not correct.
Please see video : https://youtu.be/Y7ErIGZpgWA

Thanks for reporting, I will work on improving the automated CSS selector generation. In the meanwhile, you can still manually enter the CSS selector by inspecting using Chrome Dev Tools.


Update eventEmitter.ts

Catch 'unable to auto initialize connection', add optional error callback.
This has been discussed here: https://github.com/dooboolab-community/react-native-iap/issues/2836
and here: https://github.com/dooboolab-community/react-native-iap/issues/2265

My changes have nothing to do with failing iOS example (swiftLint)

My changes have nothing to do with failing iOS example (swiftLint)

Looks like swfitlint version updates causes the problem. I'll fix it!


Add .DS_Store files to gitignore

Nothing major, but I see a few stray .DS_Store files.

Thank you for your report @MikeModder 😃 and as you can see the .DS_Store only appear in the master and broken-blog branch, which means we are already fixed it 😉


Convert recursive AVL Tree node insertion to an iterative one

Fixes #35

@dubielt1Nice !!!

Should have done some re-basing so that the changes showed as one commit, still learning! Still want me to open a new pull request?

@dubielt1 No it's ok 🍻 !!! Nice work!
Don't be disappointed, I started learning git and GitHub about a year ago and here I am still learning 😆.


How to put panel_sidebar on the side?

Thanks for this awesome package, in just 2 hours I had a basic app running (deployment included!)
I have been struggling to understand how to make the panel_sidebar actually appear on the side? My suspicion is that it is related to the autosizing of the plots (which take the entire width).
According to this image in the docs, it should appear next to panel_main automatically.

from https://shiny.posit.co/py/docs/ui-page-layouts.html#common-structure
Refs:

my app: https://basnijholt.github.io/adaptive-lighting/
source: https://github.com/basnijholt/adaptive-lighting/blob/main/webapp/app.py

Hi, in Shiny 0.5.0, we had a bug with the sidebar (#666). We've just released an updated version with a fix, 0.5.1.
If you were using 0.5.0, please try updating to 0.5.1.

Nice application, @basnijholt!

Yes, it indeed works now! Thanks a lot 😄


Simplified Try.map, added Future tests

Current coverage is 90.95%

Merging #867 into master will increase coverage by +0.21% as of b1d3fef

@@            master    #867   diff @@
======================================
  Files           80      80
  Stmts         8608    8604     -4
  Branches      1696    1695     -1
  Methods          0       0
======================================
+ Hit           7811    7826    +15
+ Partial        210     208     -2
+ Missed         587     570    -17

Review entire Coverage Diff as of b1d3fef

Powered by Codecov. Updated on successful CI builds.


Add possibility to manually run deletion job on backbone

Readiness checklist

[ ] I added/updated tests.
[x] I ensured that the PR title is good enough for the changelog.
[x] I labeled the PR.

Migrated into #356


Improve .toString(2) performance

Coverage increased (+0.006%) to 94.223% when pulling e631d629d0806040c7fb32b51ad01ae64d606adf on Azero123:master into 2e0619371f90aedb8e44cb3ab983b18a5ac699aa on peterolson:master.

Coverage increased (+0.006%) to 94.223% when pulling e631d629d0806040c7fb32b51ad01ae64d606adf on Azero123:master into 2e0619371f90aedb8e44cb3ab983b18a5ac699aa on peterolson:master.

Coverage increased (+0.006%) to 94.223% when pulling e631d629d0806040c7fb32b51ad01ae64d606adf on Azero123:master into 2e0619371f90aedb8e44cb3ab983b18a5ac699aa on peterolson:master.

Coverage increased (+0.006%) to 94.223% when pulling e631d629d0806040c7fb32b51ad01ae64d606adf on Azero123:master into 2e0619371f90aedb8e44cb3ab983b18a5ac699aa on peterolson:master.

Good point @Yaffle, that makes me realize that the alphabet argument isn't working for base 10 either. I should add more tests for the toString method with the alphabet argument


Very low resource configuration on Kafka cluster

In https://github.com/keventmesh/eventing-platform-architecture/blob/main/platform/manifests/kafka/kafka.yaml we provide a common config for the kafka installation. However it uses super low resource configuration values.
Let's make clear in a comment or so that these are actually low.

/assign @pierDipi


Lambda times out reading JSON data from S3 using AWS wrangler

Lambda function scans few partitions in S3 and has to read about 40-50 files in total with no more than couple thousand records. I have configured the Lambda function with about 1GB memory and 5 minutes time out. Lambda execution times out while reading data from S3 using wrangler. I even tried reading data in chunks using chunksize parameter in read_json function but still no luck. By seeing lambda monitoring metrics, this does not seem to be memory issue (as usage is around 250-300 MBs for most executions) but compute issue. Any suggestion to resolve this compute issue will be much appreciated.
Code:
        df_existing_data = pd.DataFrame()
        for partition in s3_partitions_list:
            bucket_filter_prefix = f"{s3_dir}/{partition}/"
            path_prefix = f"{s3_path}/{partition}/"
            for obj in bucket.objects.filter(Prefix=bucket_filter_prefix):
                temp_df = wr.s3.read_json(path=path_prefix)
                df_existing_data = df_existing_data.append(temp_df)

Raw data in JSON format:
{
 "key1": {"0": value1, "1": value2},
 "key2": {"0": value1, "1": value2}
}

Note: When I use boto3, I do not face this issue. Lambda execution completes smoothly.
Using wrangler version 2.14.0

I'm having a similar issue. Any suggestions on how to improve reading performance from S3 using aws data wranger?

Hi folks,
I am slightly confused by these lines:
            for obj in bucket.objects.filter(Prefix=bucket_filter_prefix):
                temp_df = wr.s3.read_json(path=path_prefix)

It's looping over every object in a partition and then reading all the objects in the partition into a dataframe? So if say a partition has 4 objects, it would create 4 dataframes which would each contain ALL objects in that partition?

Ah yes! Thank you.
Modified code:
df_existing_data = pd.DataFrame()
for partition in s3_partitions_list:
bucket_filter_prefix = f"{dest_s3_log_dir}/{partition}/"
for obj in bucket.objects.filter(Prefix=bucket_filter_prefix):
obj_uri = f"s3://{obj.bucket_name}/{obj.key}"
temp_df = wr.s3.read_json(path=obj_uri)
df_existing_data = df_existing_data.append(temp_df)

Glad it helped, I am closing the issue. As a side note, your code can further be optimised as the loop is completely unnecessary. You could simply run:
objs = bucket.objects.filter(Prefix=bucket_filter_prefix)
df = wr.s3.read_json(path=objs)

or simply:
df = wr.s3.read_json(path=f"{s3_path}/{partition}/")

without the need for a loop as the method accepts an S3 prefix or list of objects anyways.


fix: bump github-actions-models

Brings in https://github.com/woodruffw/github-actions-models/issues/14.

I can confirm that this fixes the parsing error I was facing.


Undefined injected services even after #111 or #122

I'm trying to include ocLazyLoad module in my current Angular application, but I can't succeed.
Context:

Angular 1.2.28
Many dependencies: ui-router, angular-translate, angular-google-maps, ui-bootstrap, ...
Many internal modules
Many Karma + Jasmine tests on PhantomJS

Tests with ocLazyLoad 0.5.2
Add oclazyload.js script to the build
All tests are OK
Add oc.LazyLoad module dependency to my app
Some tests fail (~1/3) because of undefined injected services.
These can be internal services of Angular ones ($httpBacked)
Undefined services are consistant between tests executions.
As the errors encountered look like thoses described in #111 or #122, I tried with ocLazyLoad from master (98aad14141e2eae1d04f9fc1fe09d85cd4b14713).
Tests with ocLazyLoad 98aad14141e2eae1d04f9fc1fe09d85cd4b14713
Add oclazyload.js script to the build
Even if oc.LazyLoad module is not loaded, tests don't run at all! No error log, nothing to understand what happens.
INFO [karma]: Karma v0.12.24-1 server started at http://localhost:49221/
INFO [launcher]: Starting browser PhantomJS
INFO [PhantomJS 1.9.8 (Linux)]: Connected on socket xxWbU2HShENLlRvi9jck with id 43520942

PhantomJS 1.9.8 (Linux): Executed 0 of 60 ERROR (0.056 secs / 0 secs)

What's wrong with my project ?

Hi !
ocLazyLoad uses promises and they are only resolved when Angular triggers a digest.
If you take a look at my tests you'll see that I use a setInterval to trigger digests once every x ms to make sure that all promises get resolved, otherwise the tests will never end (that's probably what happened to you here).
If you find a better way to do it than to use setInterval, I'll take it :)

I understand you wrote some hacks to make your tests run. But I don't understand your answer according to my context and my Angular application.
Do you mean I should improve my unit tests to support oclazyload script or module when they are included in my application ?

@ocombe some clue to help me to diagnose what happens? Is there a debug mode I can enable which may help to understand what is wrong in my application?
Thank you

Yes, $ocLazyLoad returns a promise that can be rejected if there is an error. If you set debug to true, $ocLazyLoad will also log all errors & list all events to the console.
$ocLazyLoadProvider.config({
    debug: true
});

And regarding the tests, if you want to make your tests run with ocLazyLoad in your app, You'll have to find a way to execute the $digest multiple times to execute the promises.
You could also stub $q to make it auto resolve, it might work

Closing this due to lack of activity, ask me if you need it reopened.


Renamed client to consumer

renamed client to consumer whenever a consumer connector was meant
Dominik Pinsel<EMAIL_ADDRESS>Daimler TSS GmbH, legal info/Impressum

@MoritzKeppler Sorry for the delay, the merge conflict is now resolved :)

Here are some of my thoughts.
The following files/package names still have relevant occurrences of the term "client:

IdsPolicyService.java
samples/commandline/client contains a namespace org.eclipse.dataspaceconnector.client....
samples/run-from-junit contains the class ClientRunner.java
samples/streaming: see PushStreamFlowControllerjava:25

apart from that there will likely be more client->consumer renamings incoming from other PRs but lets defer that for later.

@beardyinc I looked at the context didn't rename all occurrences of the client. Therefore these clients should still exist.

@beardyinc done :) Thanks for the input!

I am not allowed to approve formally, but from my point of view this can be merged.


redirect is routing POST requests to GET

const Koa = require('koa')
const Router = require('koa-router')

const app = new Koa()
const router = new Router()

router.post('/newRoute/subPath', (ctx) => {
    ctx.body = 'Hello, from POST';
});

router.get('/newRoute/subPath', (ctx) => {
    ctx.body = 'Hello, from GET';
});

router.put('/newRoute/subPath', (ctx) => {
    ctx.body = 'Hello, from PUT';
});

router.delete('/newRoute/subPath', (ctx) => {
    ctx.body = 'Hello, from DELETE';
});

router.all(/^\/oldRoute\//, (ctx) => {
    const newUrl = ctx.url.replace(/^\/oldRoute\/(.*)/, '/newRoute/$1');
    console.log(`-- redirecting request -- ${ctx.url} -> ${newUrl}`);

    ctx.redirect(newUrl);
});

app
    .use(router.routes())
    .use(router.allowedMethods());

app.listen(3002, () => console.log('Koa app listening on 3002'));

Calling localhost:3002/oldRoute/subPath with GET, PUT, and DELETE methods correctly redirect to the new url with the same method. However, calling that url with a POST method redirects to the new url but ends up in the GET method handler when it should end up in the POST handler for the new url.

It seems not to be Koa's problem. https://stackoverflow.com/questions/8138137/http-post-request-receives-a-302-should-the-redirect-request-be-a-get

That's right. The problem was resolved by setting ctx.status = 308 before redirecting.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308

I encountered the same problem, set 308 to display Method Not Allowed, how did you solve it?

@shinelp100 see my previous comment. That's all I did.

but i setting ctx.status = 308; chrome give me :405 Method Not Allowed

ctx.status = 307 works for me on POST redirection (https://softwareengineering.stackexchange.com/questions/99894/why-doesnt-http-have-post-redirect)


[Refactor] Optimize the jdbc_scanner.cpp _precheck_data_type method

Why I'm doing:
What I'm doing:
Fixes #47725
What type of PR is this:

[ ] BugFix
[ ] Feature
[ ] Enhancement
[x] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.3
[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

@stdpain ptal

From a functional perspective, this patch can be accepted. However, we can consider maintaining this relationship through a configuration file (xml or other). The hard-coded method is still too heavy and not flexible enough.

From a functional perspective, this patch can be accepted. However, we can consider maintaining this relationship through a configuration file (xml or other). The hard-coded method is still too heavy and not flexible enough.

Indeed


Finetune sdk dory proxy test debug

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: Raphael Cristal:x: raphaelcristalRaphael Cristal seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


fix dead homepage link

joe currently links to an old homepage that often 404's in web browsers. I replaced mentions of the old homepage with the new one.

It works just fine.

$ curl -i https://goel.io/joe
HTTP/1.1 301 Moved Permanently
Server: cloudflare-nginx
Date: Sat, 14 Mar 2015 16:26:25 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
Set-Cookie: __cfduid=d323dca4e9cacdbfa86ac172e99f7a8271426350385; expires=Sun, 13-Mar-16 16:26:25 GMT; path=/; domain=.goel.io; HttpOnly
Location: http://karan.github.io/joe/
CF-RAY: 1c71571280e90292-SJC

<title>301 Moved Permanently</title>

301 Moved Permanently

nginx/1.4.6 (Ubuntu)

111

For some reason, Chrome and other browsers often have trouble with this particular redirect. Could we just link directly to the new homepage URL?

Could be the cache. Can you confirm this is still an issue please?


Compute Resource for Model

[ ] compute resource can handle 10,000 + genomes (does not go out of memory)
[ ] compute resource can be shared by multiple users
[x] compute resource allows us to train the confidence model

Currently have settled on a single user compute - we seem to be having issues with shared compute. This configuration is not necessary for our team due to the connection we have with our members; however, it is worth mentioning to our client.

The first two checks here seem to be unnecessary as we were able to run our model with acceptable accuracy on a training set of just 1000. We did discuss the memory issues we were getting with Shankar, he recommended that we just stick to lower values for the time being.


Delete .github/workflows/close_inactive_issues.yml

“Stale Issue Bots” are the scourge of GitHub. A disease that has affected so many projects I use or contribute to.
It blows my mind that some people have made it their life’s work to go around adding these bots to as many repos as possible. Said people seem to like looking at blank issues sections, “out of sight out of mind” for unresolved issues. Let’s sweep it under the carpet and pretend it doesn't exist.
But high percentage of issues are open because they haven't been dealt with!
The reasoning for adding this to Huginn was stated as a large number of unresolved issues would discourage people from contributing. I have not seen any changes in contributions since the issues were started to be deleted. If they were all deleted, people might get the impression that this project is very active with fast response times, timely resolutions to bugs, and so on. So, really there's no right or wrong way here, but it seems that there must be a better way of closing issues that have not been looked at or addressed by contributors.

https://github.com/huginn/huginn/issues/3092

Closed but still a problem

https://github.com/huginn/huginn/issues/3091
https://github.com/huginn/huginn/issues/3089


Run End to End Tests Locally

Pull Request
Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.

#132  👈
main

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

Join @JackPlowman and the rest of your teammates on  Graphite

Merge activity

Sep 26, 5:59 PM EDT: @JackPlowman merged this pull request with Graphite.


racket bytecode expansion (with testing hookup)

Current coverage is 79.63%

Merging #189 into master will decrease coverage by -0.34% as of 969cda3

@@            master    #189   diff @@
======================================
  Files           66      66
  Stmts        15462   15541    +79
  Branches      2168    2185    +17
  Methods          0       0
======================================
+ Hit          12365   12376    +11
- Partial        622     631     +9
- Missed        2475    2534    +59

Review entire Coverage Diff as of 969cda3

Powered by Codecov. Updated on successful CI builds.

Awesome, great work @cderici! :-)

Great to hear that, thanks @cfbolz!


Extract skills and specialisations from the core rulebook 2022

Proposed extracted data structures as two types of table:

A table containing all top-level skills, with columns:

skill name,
skill description.

One table per top-level skill that has specialities, with columns:

speciality name,
description and examples of a skill check combined.

https://forum.mongoosepublishing.com/threads/travdata-getting-data-out-of-the-pdfs.124617/
Mongoose recently posted this repo to extract data from the PDFs.  From a quick glance it looks like it works for just the Core 2022 rule book, but I could be wrong.  Hope you don’t mind me posting something here.
Cheers

Fixed in 396e99d1520a88c2d004af3c6f938eaad7a61414.


Possible issue with mailgun setting names and Heroku

In a side project the generated setting names don't work so well. However, I've made lots of modifications so what I did may not apply to stock cookiecutter-django.
How I generated the potential issue:

Created new Django project from cookiecutter-django
Deployed to Heroku, including the mailgun app
Tried to generate emails via signup and error management.

I've been seeing the same 500 Error using stock settings with mailgun.
Besides, I had never used the service before, therefore I've switched to default django emailing with my Gmail.
Any suggestion how to use mailgun with no issues?

Possibly related to https://github.com/pydanny/cookiecutter-django/issues/323

Have we resolved setting up MailGun with Heroku? I'm still having issues - the app can't send any emails.
I did verify that DJANGO_MAILGUN_API_KEY and DJANGO_MAILGUN_API_KEY and correct - and have tested sending emails from https://mailgun.com/app/dashboard for that domain. However, those setting do not work on Heroku in production.
Setting EMAIL_BACKEND = env('DJANGO_EMAIL_BACKEND', default='django.core.mail.backends.console.EmailBackend')  is a temporary solution for verifying email addresses but the root problem is still there. The app cannot send emails via MailGun.
Any thoughts?

I believe the problem may have been with django-mailgun, which we no longer use (we use django-anymail now). If my assumption is incorrect, please reopen.

I may have reproduced this via an error very similar to the one posted at the start of #323 also under Heroku. I will create a new issue if appropriate, but though it best to double check this to avoid creating a duplicate. I think it emerged after changing ACCOUNT_AUTHENTICATION_METHOD = 'username' to ACCOUNT_AUTHENTICATION_METHOD = 'email'. I've tried to change that back but I get the socket similar to the start of #323. Is this likely to be related or should I open a new ticket?

If I run under heroku local (rather than manage.py runserver as I do in the previous comment) I get
Forbidden (403)
CSRF verification failed. Request aborted.

on the browser and Session data corrupted errors on the heroku terminal.


Failed Project Preparation (app_id='s~gcloud-1104'). Billing not enabled.

➜  gcloud-1104 git:(master) ✗ gcloud preview app deploy app.yaml --set-default
WARNING: The --set-default flag is deprecated. Please use the --promote flag instead.
WARNING: Soon, deployments will set the deployed version to receive all traffic by
You are about to deploy the following modules:

gcloud-1104/default (from [/home/sajjad/rails_projects/gcloud-1104/app.yaml])
Deployed URL: [https://gcloud-1104.appspot.com]

Do you want to continue (Y/n)?
Beginning deployment...
Verifying that Managed VMs are enabled and ready.
WARNING: If this is your first deployment, please try again.
ERROR: (gcloud.preview.app.deploy) Server responded with code [400]:
Bad Request Unexpected HTTP status 400.
Failed Project Preparation (app_id='s~gcloud-1104'). Billing not enabled.

"metadata": {
"target": "apps/trial-project-1103/modules/default/versions/20151021t150435",
"insertTime": "2015-10-21T10:07:26.887Z",
"method": "google.appengine.v1beta4.Versions.CreateVersion",
"user"<EMAIL_ADDRESS>"operationType": "create_version",
"@type": "type.googleapis.com/google.appengine.v1beta4.OperationMetadata"
},
"done": true,
"name": "apps/trial-project-1103/operations/f1b5a0cc-48bf-4935-ab6c-1dc4204816c0",
"error": {
"message": "Not enough VMs ready (0/1 ready, 1 still deploying). Deployed Version: 20151021t150435.388002528879822709",
"code": 13
}
}
Updating module [default]...failed.
DEBUG: (gcloud.preview.app.deploy) Error Response: [13] Not enough VMs ready (0/1 ready, 1 still deploying). Deployed Version: 20151021t150435.388002528879822709
Traceback (most recent call last):
File "/home/sajjad/google-cloud-sdk/./lib/googlecloudsdk/calliope/cli.py", line 589, in Execute
result = args.cmd_func(cli=self, args=args)
File "/home/sajjad/google-cloud-sdk/./lib/googlecloudsdk/calliope/backend.py", line 1221, in Run
resources = command_instance.Run(args)
File "/home/sajjad/google-cloud-sdk/./lib/googlecloudsdk/appengine/app_commands/deploy.py", line 250, in Run
images.get(module))
File "/home/sajjad/google-cloud-sdk/./lib/googlecloudsdk/appengine/lib/appengine_api_client.py", line 78, in DeployModule
return operations.WaitForOperation(self.client.apps_operations, operation)
File "/home/sajjad/google-cloud-sdk/./lib/googlecloudsdk/appengine/lib/api/operations.py", line 55, in WaitForOperation
encoding.MessageToPyValue(completed_operation.error)))
OperationError: Error Response: [13] Not enough VMs ready (0/1 ready, 1 still deploying). Deployed Version: 20151021t150435.388002528879822709
ERROR: (gcloud.preview.app.deploy) Error Response: [13] Not enough VMs ready (0/1 ready, 1 still deploying). Deployed Version: 20151021t150435.388002528879822709

runtime: custom
vm: true
api_version: 1
module: default
resources:
cpu: .5
memory_gb: 1.3
disk_size_gb: 10
automatic_scaling:
min_num_instances: 1
max_num_instances: 5
cool_down_period_sec: 60
cpu_utilization:
target_utilization: 0.5

Hi @sajjadmurtaza-ror,
Is this bug related to the Ruby client library? I don't see anything noting that...? This seems like an issue better suited for Stack Overflow.
If I had to guess, the answer is that you don't have your credit card and everything set in the cloud console, but SO may be able to help more!

@jgeewax Thanks for your quick response!
@sajjadmurtaza-ror Please post a link on this issue to your Stack Overflow question, it may help others who encounter the same obstacle in the future.


Single Choice List Dialogs is displayed incorrectly

On API 15, Single Choice List Dialog is displayed incorrectly and item cannot be selected:

Let me know if that commit fixes it, I don't have a quick way to test 4.0.3

Confirmed, now it's ok.


Error / blank page about sbot.conn

In 2021.6.1, ssb-conn is expected. I'm using ssb-server which doesn't have ssb-conn. Pages are empty and the error in the console: sbot.conn is undefined.

@clehner I ended up pushing a removal of the code that relied on ssb-conn before seeing the PR you sent. The code below your changes was part of trying to implement Rooms 2.0 HTTP Auth but it didn't work, and it couldn't work because the flow needs to happen in the backend, not the front-end. In essence, that code was a leftover from an attempt to implement a feature.
This commit pushes both that removal, a version bump, and a prebuilt webextension in the dist/ folder. It should work for you and fix #113
Be aware that there is one last piece of code that relies in ssb-conn to work and that is joining rooms 2.0.
From src/core/platforms/ssb/rooms2.js:
  connectAndRemember: (address) => {
    return new Promise((resolve, reject) => {
      ssb.sbot.conn.connect(address, (err, data) => {
        if (err) {
          reject(err)
        } else {
          ssb.sbot.conn.remember(address)
          resolve({address, data})
        }
      })
    })
  },

I will figure out a way to provide a version of that that doesn't rely on ssb-conn. Do you have any tips about how to do it?
Except for that feature, the rest of Patchfox should work for you now. Unless there are other plugins I'm relying on that you don't have, but that is good because I want to make this more agnostic and would gladly patch patchfox to solve these situations.

@soapdog I would suggest to call sbot.gossip.connect if ssb-gossip is present and not ssb-conn.
I don't think a separate "remember" step is needed, since although ssb-gossip has gossip.add, the gossip.connect implementation calls it already internally.
I haven't tested this with actual rooms.
From 021296dd70aa9e1098663ac50d4d42320608b224 Mon Sep 17 00:00:00 2001
From: "Charles E. Lehner"<EMAIL_ADDRESS>Date: Mon, 14 Jun 2021 21:17:49 -0400
Subject: [PATCH] Support ssb-gossip in connectAndRemember

---
 src/core/platforms/ssb/rooms2.js | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/core/platforms/ssb/rooms2.js b/src/core/platforms/ssb/rooms2.js
index fdad5c9..41beb63 100644
--- a/src/core/platforms/ssb/rooms2.js
+++ b/src/core/platforms/ssb/rooms2.js
@@ -17,11 +17,19 @@ const rooms2 = {
   },
   connectAndRemember: (address) => {
     return new Promise((resolve, reject) => {
-      ssb.sbot.conn.connect(address, (err, data) => {
+      let gossipOrConn = ssb.sbot.gossip || ssb.sbot.conn
+      if (!gossipOrConn) {
+        return reject(new Error('Missing ssb-gossip or ssb-conn'))
+      }
+      gossipOrConn.connect(address, (err, data) => {
         if (err) {
           reject(err)
         } else {
-          ssb.sbot.conn.remember(address)
+          if (ssb.sbot.conn) {
+            ssb.sbot.conn.remember(address)
+          } else {
+            // gossip.connect calls gossip.add internally
+          }
           resolve({address, data})
         }
       })
--
2.30.2