Import error

It looks likes the pyclits package is precisely what I am looking for. However after an installation that appeared to be successful, I unfortunately I got the following error message once I tried to import the package:
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-1-b62475b6da31> in <module>
----> 1 import pyclits

~/Programs/miniconda3/envs/oggm_env/lib/python3.6/site-packages/pyclits/__init__.py in <module>
      5 """
      6
----> 7 from data_loaders import *
      8 from empirical_model import EmpiricalModel
      9 from functions import *

ModuleNotFoundError: No module named 'data_loaders'

@jajcayn, could you help me solving this problem?

Dear @anoukvlug
unfortunately, pyclits is pretty old and unmaintained. The reason for your error is that pyclist was developed for python2.7 which is now deprecated. Last time I tried, it does not work with python3.
As for the future of pyclits, unfortunately I do not have the time right now to update it, but I started rewriting core functionality to python3 in branches rewrite/*. If you feel adventurous you might fork the package, checkout rewrite branch and try to finish basic core, then the installation on python3 should work.
Thanks for understanding,
Best,
Nikola

Dear Nikola,
Thank you for your fast and kind reply! Unfortunately it is not the right time for me to be adventures and dive into the code.
Kind regards,
Anouk

Dear Anouk,
sidenote to the discussion. The new code that is in my branch = hynek_
refactoring_.... supports Python3. The Python environment is better
contained using poetry that support simple packaging and publication of the
library.
Best,
Hynek
---------- Původní e-mail ----------
Od: Anouk Vlug<EMAIL_ADDRESS>Komu: jajcayn/pyclits<EMAIL_ADDRESS>Datum: 5. 6. 2020 12:53:18
Předmět: Re: [jajcayn/pyclits] Import error (#2)
"
Dear Nikola,
Thank you for your fast and kind reply! Unfortunately it is not the right
time for me to be adventures and dive into the code.
Kind regards,
Anouk
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
(https://github.com/jajcayn/pyclits/issues/2#issuecomment-639407967), or
unsubscribe
(https://github.com/notifications/unsubscribe-auth/ACKGZPS3SCHL5O5SBA3IA5DRVDFBPANCNFSM4NTNXHXA)
.
"

@mafycek thanks a lot for the advice! I just installed your branch and at first sight it seems to work :)

Ok, cool! I did not know that it should work in my branch :)
Btw. do you use virtual environment and poetry?
---------- Původní e-mail ----------
Od: Anouk Vlug<EMAIL_ADDRESS>Komu: jajcayn/pyclits<EMAIL_ADDRESS>Datum: 5. 6. 2020 14:38:46
Předmět: Re: [jajcayn/pyclits] Import error (#2)
"
@mafycek(https://github.com/mafycek) thanks a lot for the advice! I just
installed your branch and at first sight it seems to work :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
(https://github.com/jajcayn/pyclits/issues/2#issuecomment-639455823), or
unsubscribe
(https://github.com/notifications/unsubscribe-auth/ACKGZPQSOQBJCQCPKRS3Z7DRVDRNBANCNFSM4NTNXHXA)
.
"

Sorry, I wrote my previous message to early. I thought you meant the branch would work with python 3. So after I installed both the branch and was able able to load the package, I thought it would work. However I kept running into errors, when trying to using the functions. It won't recognize all the functions (some it does recognize though) that are actually there:
e.g.:
AttributeError                            Traceback (most recent call last)
<ipython-input-19-f363db24ae29> in <module>
----> 1 nino34 = clt.data_loaders.load_enso_index("/aop1/avlug/nino34raw.txt", "3.4", start_date = date(1870, 1, 1),
      2     end_date = date(2017, 7, 1), anom = False)
      3

AttributeError: module 'pyclits' has no attribute 'data_loaders'

For this I used a python environment (env not venv). I'm not familiar with poetry.

Actually, I wouldn't really need the data_loaders function, however I thought it would be good to get the example to work. As having an example would make it easier to figure out how to solve the error that I am having with the wavelet analysis function:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-23-4590a8ad37dc> in <module>
      1 wave, period, scale, coi = wavelet_analysis.continous_wavelet(df['001'].values, dt = dt, wavelet = mother,
----> 2                                                               dj = dj, s0 = s0, j1 = j1, k=k0)

~/Programs/miniconda3/envs/oggm_env/lib/python3.6/site-packages/pyclits/wavelet_analysis.py in continous_wavelet(X, dt, pad, wavelet, **kwargs)
    137     k = np.arange(1, np.fix(n/2) + 1)
    138     k *= (2. * np.pi) / (n * dt)
--> 139     k_minus = -k[int(np.fix(n-1))/2 - 1::-1]
    140     k = np.concatenate((np.array([0.]), k, k_minus))
    141

TypeError: slice indices must be integers or None or have an __index__ method

I have no clue if this error would be easy to solve or if it would get tricky and I can better look for another approach to do the wavelet analysis. @mafycek do you maybe know a quick fix for this problem? Or is this going to take quite some time to solve?

I think that the problem is in the missing init file. I never used the
code but I could help you if you send me the command that teriggers the
error.
I need whole stack to investigate the issue.
---------- Původní e-mail ----------
Od: Anouk Vlug<EMAIL_ADDRESS>Komu: jajcayn/pyclits<EMAIL_ADDRESS>Datum: 8. 6. 2020 12:40:42
Předmět: Re: [jajcayn/pyclits] Import error (#2)
"
Sorry, I wrote my previous message to early. I thought you meant the branch
would work with python 3. So after I installed both the branch and was able
able to load the package, I thought it would work. However I kept running
into errors, when trying to using the functions. It won't recognize all the
functions (some it does recognize though) that are actually there:
e.g.:
AttributeError                            Traceback (most recent call last)
 in
----> 1 nino34 = clt.data_loaders.load_enso_index("/aop1/avlug/nino34raw.txt", "3.4", start_date = date(1870, 1, 1),
2     end_date = date(2017, 7, 1), anom = False)
3
AttributeError: module 'pyclits' has no attribute 'data_loaders'

For this I used a python environment (env not venv). I'm not familiar with
poetry.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
(https://github.com/jajcayn/pyclits/issues/2#issuecomment-640523257), or
unsubscribe
(https://github.com/notifications/unsubscribe-auth/ACKGZPQEBELPGJIHJ2F5K2TRVS5Z3ANCNFSM4NTNXHXA)
.
"

Ok, here I see the problem. x/y return s float while x//y returns int. This
is deviation beteen Python 3 and 2.
---------- Původní e-mail ----------
Od: Anouk Vlug<EMAIL_ADDRESS>Komu: jajcayn/pyclits<EMAIL_ADDRESS>Datum: 8. 6. 2020 12:59:06
Předmět: Re: [jajcayn/pyclits] Import error (#2)
"
Actually, I wouldn't really need the data_loaders function, however I
thought it would be good to get the example to work. As having an example
would make it easier to figure out how to solve the error that I am having
with the wavelet analysis function:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
 in
1 wave, period, scale, coi = wavelet_analysis.continous_wavelet(df['001'].values, dt = dt, wavelet = mother,
----> 2                                                               dj = dj, s0 = s0, j1 = j1, k=k0)
~/Programs/miniconda3/envs/oggm_env/lib/python3.6/site-packages/pyclits/wavelet_analysis.py in continous_wavelet(X, dt, pad, wavelet, **kwargs)
137     k = np.arange(1, np.fix(n/2) + 1)
138     k *= (2. * np.pi) / (n * dt)
--> 139     k_minus = -k[int(np.fix(n-1))/2 - 1::-1]
140     k = np.concatenate((np.array([0.]), k, k_minus))
141
TypeError: slice indices must be integers or None or have an index method

I have no clue if this error would be easy to solve or if it would get
tricky and I can better look for another approach to do the wavelet
analysis. @mafycek(https://github.com/mafycek) do you maybe know a quick fix
for this problem? Or is this going to take quite some time to solve?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
(https://github.com/jajcayn/pyclits/issues/2#issuecomment-640531921), or
unsubscribe
(https://github.com/notifications/unsubscribe-auth/ACKGZPQZE6NWYBQXYSHW5GDRVS77JANCNFSM4NTNXHXA)
.
"

The problem should be fixed in the next commit.
---------- Původní e-mail ----------
Od: Anouk Vlug<EMAIL_ADDRESS>Komu: jajcayn/pyclits<EMAIL_ADDRESS>Datum: 8. 6. 2020 12:59:06
Předmět: Re: [jajcayn/pyclits] Import error (#2)
"
Actually, I wouldn't really need the data_loaders function, however I
thought it would be good to get the example to work. As having an example
would make it easier to figure out how to solve the error that I am having
with the wavelet analysis function:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
 in
1 wave, period, scale, coi = wavelet_analysis.continous_wavelet(df['001'].values, dt = dt, wavelet = mother,
----> 2                                                               dj = dj, s0 = s0, j1 = j1, k=k0)
~/Programs/miniconda3/envs/oggm_env/lib/python3.6/site-packages/pyclits/wavelet_analysis.py in continous_wavelet(X, dt, pad, wavelet, **kwargs)
137     k = np.arange(1, np.fix(n/2) + 1)
138     k *= (2. * np.pi) / (n * dt)
--> 139     k_minus = -k[int(np.fix(n-1))/2 - 1::-1]
140     k = np.concatenate((np.array([0.]), k, k_minus))
141
TypeError: slice indices must be integers or None or have an index method

I have no clue if this error would be easy to solve or if it would get
tricky and I can better look for another approach to do the wavelet
analysis. @mafycek(https://github.com/mafycek) do you maybe know a quick fix
for this problem? Or is this going to take quite some time to solve?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
(https://github.com/jajcayn/pyclits/issues/2#issuecomment-640531921), or
unsubscribe
(https://github.com/notifications/unsubscribe-auth/ACKGZPQZE6NWYBQXYSHW5GDRVS77JANCNFSM4NTNXHXA)
.
"


[package_info] Add signing certificate SHA1 for android

Use case

Provide the current signing certificate SHA1 at runtime.
The google maps API requires providing the SHA1 in a x-android-cert header when using platform-specific API keys.

Proposal

Add this data to the info returned on Android.

Hi @acoutts
I'm not sure if you're package_info is one of the packages in https://github.com/flutter/flutter/issues/83277 & non-critical PRs are no longer accepted.
cc: @stuartmorgan

Thanks. So I just need to submit it here? https://github.com/fluttercommunity/plus_plugins/tree/main/packages/

Thanks. So I just need to submit it here? https://github.com/fluttercommunity/plus_plugins/tree/main/packages/

Sure


#12254: Migrate moreh_adamw operation from tt_eager to ttnn

Ticket
Link to Github Issue: #12254
Problem description
moreh_adamw was deprecated alongside tt_dnn. This PR ports it to ttnn using its operation format.
What's changed

Removed moreh_adamw's tt_dnn implementations
Move device code to ttnn
Create new wrapper code for ttnn with new modules

Checklist

[x] Post commit CI passes: https://github.com/tenstorrent/tt-metal/actions/runs/10770978212
[ ] Blackhole Post commit (if applicable)
[ ] Model regression CI testing passes (if applicable)
[x] New/Existing tests provide coverage for changes

@ayerofieiev-tt could you review this PR, it passes all post-commit and approved by Moreh internal reviewers. Thanks.


MVP for alertmanager charm

This seems to be working perfectly. More tests coming soon.

It is already possible to merge this pull request. I believe @jlounder recommendation is that for pull requests against Canonical master branch, github settings should be such that two approvals are mandatory.


Loads all languages after migrate to next.js v11 (webpack 5)

It used to work well before updating.
Namespaces works fine, but load all languages:

You'll need to provide a reproducible repository. Thanks!

Yeah, sorry for that. It wasn't good from my side.
Git repo: https://github.com/olehkhalin/next-i18next-bug
Deployment preview: https://next-i18next-bug-tau.vercel.app/

This is actually not specific to NextJs v11, and is a regression introduced by #1186, cc @ktml. I will revert those changes now.


BH CI fails to run on specific branch

On a rebased branch docker image fails to be pulled when trying to run CI see;
https://github.com/tenstorrent/tt-metal/actions/runs/12359826668

https://github.com/tenstorrent/tt-metal/pull/16071


🐞 NodeSDK: Can't push image to local registry

What is the issue?
I am simply trying to push an image to a local registry instance. I setup the instance like this:
docker run -d -p 5000:5000 --restart=always --name registry registry:2

Note: Need to set this in docker/daemon.json:
"insecure-registries": [
    "localhost:5000"
  ]

Here is my code:
import Client, { connect } from<EMAIL_ADDRESS>
connect(async (client: Client) => {
	const node = client.container().from('node:18');
	await node.publish('localhost:5000/example-node:latest');
}, {
	LogOutput: process.stdout,
});

And here is the error I get:
#3 ERROR: failed to push localhost:5000/example-node:latest: failed to do request: Head "http://localhost:5000/v2/example-node/blobs/sha256:664da43398219f08e7221736ecbdacf3fd261080f913b3926fd599126943bbe6": dial tcp <IP_ADDRESS>:5000: connect: connection refused

I can run the docker build, tag, and push manually and it will work fine:
docker pull node:18
docker tag node:18 localhost:5000/example-node:latest
docker push localhost:5000/example-node:latest

Log output
ntroncoso@UALCFJPXF4MRQ quad % node --loader ts-node/esm scripts/poc-publish.mts
(node:80622) ExperimentalWarning: Custom ESM Loaders is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
#1 resolve image config for docker.io/library/node:18
#1 DONE 0.4s

#2 from node:18
#2 resolve docker.io/library/node:18
file:///Users/ntroncoso/projects/work/quad/node_modules/@dagger.io/dagger/dist/api/utils.js:5
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
                                                                ^
GraphQLRequestError: Error message
    at file:///Users/ntroncoso/projects/work/quad/node_modules/@dagger.io/dagger/dist/api/utils.js:121:23
    at Generator.throw (<anonymous>)
    at rejected (file:///Users/ntroncoso/projects/work/quad/node_modules/@dagger.io/dagger/dist/api/utils.js:5:65)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  cause: ClientError: failed to solve: failed to push localhost:5000/example-node:latest: failed to do request: Head "http://localhost:5000/v2/example-node/blobs/sha256:664da43398219f08e7221736ecbdacf3fd261080f913b3926fd599126943bbe6": dial tcp <IP_ADDRESS>:5000: connect: connection refused: {"response":{"data":null,"errors":[{"message":"failed to solve: failed to push localhost:5000/example-node:latest: failed to do request: Head \"http://localhost:5000/v2/example-node/blobs/sha256:664da43398219f08e7221736ecbdacf3fd261080f913b3926fd599126943bbe6\": dial tcp <IP_ADDRESS>:5000: connect: connection refused","locations":[{"line":2,"column":52}],"path":["container","from","publish"]}],"status":200,"headers":{}},"request":{"query":"\n        { container  { from (address: \"node:18\") { publish (address: \"localhost:5000/example-node:latest\") }} }\n      "}}
      at /Users/ntroncoso/projects/work/quad/node_modules/graphql-request/src/index.ts:498:11
      at step (/Users/ntroncoso/projects/work/quad/node_modules/graphql-request/dist/index.js:67:23)
      at Object.next (/Users/ntroncoso/projects/work/quad/node_modules/graphql-request/dist/index.js:48:53)
      at fulfilled (/Users/ntroncoso/projects/work/quad/node_modules/graphql-request/dist/index.js:39:58)
      at processTicksAndRejections (node:internal/process/task_queues:96:5) {
    response: { data: null, errors: [Array], status: 200, headers: [Headers] },
    request: {
      query: '\n' +
        '        { container  { from (address: "node:18") { publish (address: "localhost:5000/example-node:latest") }} }\n' +
        '      ',
      variables: undefined
    }
  },
  code: 'D100',
  requestContext: {
    query: '\n' +
      '        { container  { from (address: "node:18") { publish (address: "localhost:5000/example-node:latest") }} }\n' +
      '      ',
    variables: undefined
  },
  response: {
    data: null,
    errors: [ [Object] ],
    status: 200,
    headers: Headers { [Symbol(map)]: [Object: null prototype] }
  }
}
#2 resolve docker.io/library/node:18 0.3s done
#2 DONE 0.3s

#3 exporting to image
#3 exporting layers done
#3 exporting manifest sha256:bcc156037ef2e720cf01aa8794cf14093613e41971a5705f5ce874b016c9a15a done
#3 exporting config sha256:c426a435e799ab8d3cc4c868233d3d992ef91ba21ef69e8eaf55cd58b78a308f done
#3 pushing layers done
#3 ERROR: failed to push localhost:5000/example-node:latest: failed to do request: Head "http://localhost:5000/v2/example-node/blobs/sha256:664da43398219f08e7221736ecbdacf3fd261080f913b3926fd599126943bbe6": dial tcp <IP_ADDRESS>:5000: connect: connection refused
------
 > exporting to image:
------

Steps to reproduce
See problem description
SDK version
Node SDK 0.3.3
OS version
macOS Ventura 13.2

Can anyone please help? This seems pretty cut and dry with simple reproduction steps. Or maybe I'm just missing something.

@troncoso @noah-troncoso the connection refused error is due to the fact that the dagger engine runs in its own docker container and thus in a network isolated from other containers, including that registry you are spinning up. Basically, the localhost of the dagger engine (where the image is being pushed from) is not the same localhost of the registry.
Depending on your goal here, if you are just trying to test things out quickly and don't mind pushing to an external service, https://ttl.sh/ is an option that we use in our docs.
If you need to run the registry on localhost, then it's still possible but a bit more annoying. After running connect once from the sdk, a default dagger engine is spun up in your local docker installation. You can get the name of this container by running e.g. docker ps --filter "name=^dagger-engine-*" --format '{{.Names}}'.
After that, you can start up the registry container in docker in the same network namespace like this: docker run -d -p 5000:5000 --restart=always --name registry --network container:<DAGGER ENGINE CONTAINER NAME> registry:2. That should allow you to push to the localhost registry.
Let us know if that works for you.

Related discussion in Discord from Nic Jackson: https://discord.com/channels/707636530424053791/1081963303921799269/1081963303921799269.
I think Nic's solution would work for this case as well.

@troncoso did @sipsma's response help? Are you still blocked in any way?

I will close as completed, but please let us know if you need any additional support!


Enable toast top/bottom offset

Sometimes I need to set a bottom offset for the toast.
https://github.com/devxoul/Toaster has a pretty nice bottomOffsetPortrait/bottomOffsetLandscape settings.
It will be nice to have this feature.

You can present the toast at any point, so I think the current functionality already satisfies this without needed to bloat the api.

Yes, we can present at any point. As I know, when I need a bottom offset, I need to calculate the frame size of toast first, then I can calculate the correct point. But I do not see an easy way to do that. Any suggestions? Thanks!

I agree with this point, it doesn't make sense to need to calculate the toast view frame when all we need is simply to move the toast up from the bottom edge of the screen.
Besides, it doesn't make sense to add ToastManager.shared.style.verticalPadding in the centerPoint calculation. Changing this style property both increases the size of the toast as well as moves it up relative to the bottom edge of the view. This should be a separate style property, not interconnected in such a weird way. I can make a PR if you agree with this change, otherwise I'd need to fork the library, but it's really a very logical thing to do

@drinkius Thanks for your comment. FYI, there is a PR https://github.com/scalessec/Toast-Swift/pull/134

this is so necessary!


Working example requested

The example in the root of the repository does not work with the version of angular-vis.js.
Cannot find the code of the example inhttp://visjs.github.io/angular-visjs/#/home
I would like to use it, but with no working example the effort needed to get something working is too high.

Please take a look at the example in the github pages branch (gh-pages). There is a working example here (http://visjs.github.io/angular-visjs/#/home)

Nice. Will look at it tonight.

Demo in branch gh-pages works perfectly. Thanks


Create Posts “20221206-undivided-attention-going-here-now”

Automatically generated by Netlify CMS

👷 Deploy Preview for monetaboot processing.

Name
Link

🔨 Latest commit
a7b64dbf9733b322da8729f4189fc9f603498d37

🔍 Latest deploy log
https://app.netlify.com/sites/monetaboot/deploys/638f46d4fea96a000895184b


mlcache slower than shared_dict only

Hi There,
I'm benchmarking this module VS using only shared_dict and shared_dict has better results in terms of CPU and RPS.
Basically I have 2 functions which do the same.
One function using this module.
20 sec ttl, 100,000 lru
Foreach N Keys:

Key Get mlcache
Miss > Callback > Get from Redis and return string
Push result to table.
End Foreach
return table

The other one fetching with shard_dict
Foreach N Keys:

Key Get shared dict
2.1 Miss > Get Redis Pipeline key
2.1 HIT > Push result to table
End Foreach
Execute pipeline
Push results to table
return table

Please help me to understand why shared_dict outperformed this module.

Can you share the code? Or else I am afraid I can’t help much.

@Roycohen Any updates you can share?

@Roycohen I'll be closing this due to lack of activity for now. If you have more details to share, feel free to reopen with some example code. In my tests and our production usage, mlcache's performance is not worse than that of shared_dict, when used properly. Make sure that you do not re-instantiate a new mlcache instance per request, as stated in the README (and that lua_code_cache is enabled). Thanks.


Update data architecture to include a new Regulation entity

As discussed in our domain modeling session earlier today, Regulation joins Profession to Organisation, and enables one profession to be regulated in multiple areas or by mltiple regulators. See ADR for full details.

Looks like Prettier isn't happy either 😞

OK @pezholio this is ready for final review and merge now, once you're happy.


SegmentWithWatershedImageFilterTestPython3 failing test

This issue is derived from #131 to keep track of indivial examples failing tests.
The following tests fail with ITK's latest release:

SegmentWithWatershedImageFilterTest03Python

SegmentWithWatershedImageFilterTest03BaselineComparisonPython

The issue arrises on line 76 of src/Segmentation/Watersheds/SegmentWithWatershedImageFilter when the colormapImageFilter object attempts to initialize its enumeration value. Due to the recent transition from 'c' style enums to enum class objects in source ITK, many enums were changed and moved.
The enumeration: RGBColormapFilterEnumType  was created and moved outside its class: ScalarToRGBColormapImageFilter in source ITK. This enumeration was not wrapped and thus cannot be accessed in ITKPythonPackage 5.1b1. More information can be viewed in HEAD issue #131.
When these enumerations are properly wrapped and implemented into the ITKPythonPackage, the failing test should resolve. Subsequently, the BaselineComparison test should pass as the error should not affect the resulting image.

Fixed in #156. Closing now.


Update getting-phone-numbers-for-your-users.md

Fixing syntax for the URL.

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@CarolynRowe PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


openvpn client /luci Integration

can we integrate openvpn client related luci app package？

idk what it is

openvpn-openssl and luci-app-openvpn
I want to use openvpn client in a router, thanks

it's upstreamed, so we have it too
idk what do u mean by "integrate", it's already available in our opkg feeds

I am using SuLingGG /OpenWrt-Rpi, which is based on immortalwrt and seems does not have openvpn client installed by default, thanks for confirming.


Add Rust examples

Add example rust programs that demonstrate various program functionality.

@mvines Planning to link to these examples, using the new test framework, any comments before I commit them?


Implement REP-002.006: directive request syntax

This PR implements REP-002.006 in #673. Note this, the new syntax isn't meant to replace/deprecate the current requirements expansion feature as what REP-002.006 and REP-002.001 have said, but try to convert those wildcarded requests into new syntax internally while building package.
Delayed Requirement Expansion
Current requirements expansion feature expands requirements on package load, by scanning currently installed packages. In contrast, this new feature expands requirements with resolved package build context, which is being delayed (post-resolve).
Storing Additional Information
Information that parsed from directive syntax on package-load time, e.g. directive function name and arguments, need to be stored somewhere during package build. One possible option would be to attach them to PackageRequest or other related classes, which means to store them in package itself like attributes' metadata.
But the PackageRequest and other related classes are low level stuff, which isn't a good fit for this high level feature. Plus, by the nature of how package attributes are loaded before build, how attributes will be processed afterward, and how package variants will be spawned multiple times in different places, those information is hard to guarantee to be retrieved or written correctly at any given point without fighting more details in low level.
So instead, I end up storing them outside of package, and retrieve or modify those data by a key that is hashed from variant.
Caveats (discuss to improve)
Currently, for old style expansion syntax requests (those have wildcards), this new feature only try to convert them into new syntax, and fallback to early expansion route if the conversion result is not defined in new syntax.
For example, how request like foo-1+<2 will be harden is not yet been defined in REP-002.006, so for request like foo-1.*+<2.* can not be converted.
Also for case like foo<**, although it doesn't make sense in package requires but still can be converted, however the conversion result is foo//harden which means differently than the old style syntax.

CI test in latest commit has failed but is unrelated to this PR. See log.

Update

Refactored the test cases to prove the functionality and possible use case.
Moved bind_directives function from PackageMaker to DeveloperPackage, because the directives require the build process and PackageMaker generated package doesn't always ends up there.

Hey David,
I've had more time to think about this and here's where I'm at, let me know what you think.
Old/new syntax (wildard vs //harden)
Thinking about it more, I think we could avoid a lot of complexity by aiming to deprecate wildcards, and not attempt to convert them to new post-build hardening at all. We'll still support it but will print a deprecation warning. I'm not really sure that existing requirements expansion is used much, nor am I convinced that people will actually find it useful to support something like foo-1.*+<2 -> foo-1.3+<2 (for eg).
Directive class
Basically it should look something like (simplified eg of harden here):
class HardenDirective(DirectiveBase):
    name = "harden"

    def __init__(self, request_str, rank=None):
        super(HardenDirective, self).__init__(request_str)
        self._can_harden_request():  # raise error if not possible, eg it's a conflict request (uses !)
        self.rank = rank

    def get_pre_build_request(self):
        return self.request_str

    def get_post_build_request(self, build_context):
        pkg_name = self._get_pkg_name_from_req_str()
        variant = build_context.get_resolved_package(pkg_name)
        return '%s-%s' % (pkg_name, variant.version.trim(self.rank))

So, a string like "foo-1.2+<2//harden(3)" would cause a HardenDirective instance to be created, and init'd with request_str="foo-1.2+<2", rank=3.
Directive Manager
I think where I'm getting confused is that there's a global directive manager in the first place. A developer package gets eval'd and built all within a single build process, so managing directives should happen there. Basically all the relevant directive instances need to be created there, and then you could just track them in a simple dict (ie, keyed by original request string. Then every matching request in the package's requires/build_requires/variants gets replaced with the hardened equivalent, post build resolve).
In summary I think we could simplify things a lot by:

not converting wildcards to harden, and marking as deprecated
create harden directives within a build process instance, and update the package based on simple find/replace of items in requires/variants/etc.

What this means is that a developer package needs to be eval'd twice for two different cases - pre and post build. However this already happens, so we can take a similar approach (I need to look back at this code to refresh myself on the details): https://github.com/nerdvegas/rez/wiki/Package-Definition-Guide#available-objects. See how early-bound funcs are already eval'd twice. This is a kinda similar situation.
There are some other sutble details that we'll have to figure out, I won't go over them just yet as I need to think about them a bit more :)
Cheers
A

Thanks Allan,

I think we could avoid a lot of complexity by aiming to deprecate wildcards, and not attempt to convert them to new post-build hardening at all.

Yeah, that would simplified a lot :D
Just to be sure, the wildcards stay as pre-build expansion, and only //harden gets expands in post-build time, correct ?

..., nor am I convinced that people will actually find it useful to support something like foo-1.*+<2 -> foo-1.3+<2 (for eg).

Agree, I was struggling for this kind of cases, wondering if even anyone using this kind of expansion and how would that even get harden as.
About the global directive manager,

A developer package gets eval'd and built all within a single build process, so managing directives should happen there.

Yes, that's the most ideal. But the issue was, that the developer package gets loaded before the creation of build process, and we have to normalize those directive/wildcard syntax or the schema validation won't pass due to it's not a valid syntax for PackageRequest.
But. If now we are going to let wildcard expansion stay as is, and defining the harden behavior on ranged request as foo-1.3+<2//harden(3) -> foo.1.3.5, then the implementation will simplified a lot and trimming the // mark would be the only work when loading the developer package before build, which can be implemented in PackageRequest class in minimum performance cost and drop the global directive manager and do all the rest in build process.

Ok thanks for the explanation that makes sense.
"""Just to be sure, the wildcards stay as pre-build expansion, and only
//harden gets expands in post-build time, correct ?"""
Yup correct.
"""...But the issue was, that the developer package gets loaded before
the creation of build process..."""
So then, what if directives (and their mappings to the original request
they correspond to) are stored in the DeveloperPackage itself (ie the dev
pkg actually parses its request strings and creates directives itself)?
That seems less hacky - at load time the package can replace its //harden
requests with whatever the harden directive tells it to (ie, just drop the
//harden(...)). Then requests can be replaced when within the build context
later, as part of that second evaluation phase. I think really this is the
way to do it, that way nothing changes in PackageRequest (or anywhere
outside of DeveloperPackage really).
On Wed, May 5, 2021 at 2:16 AM David Lai @.***> wrote:

Thanks Allan,
I think we could avoid a lot of complexity by aiming to deprecate
wildcards, and not attempt to convert them to new post-build hardening at
all.
Yeah, that would simplified a lot :D
Just to be sure, the wildcards stay as pre-build expansion, and only
//harden gets expands in post-build time, correct ?
..., nor am I convinced that people will actually find it useful to
support something like foo-1.*+<2 -> foo-1.3+<2 (for eg).
Agree, I was struggling for this kind of cases, wondering if even anyone
using this kind of expansion and how would that even get harden as.
About the global directive manager,
A developer package gets eval'd and built all within a single build
process, so managing directives should happen there.
Yes, that's the most ideal. But the issue was, that the developer
package gets loaded before the creation of build process, and we have to
normalize those directive/wildcard syntax or the schema validation won't
pass due to it's not a valid syntax for PackageRequest.
But. If now we are going to let wildcard expansion stay as is, and
defining the harden behavior on ranged request as foo-1.3+<2//harden(3)
-> foo.1.3.5, then the implementation will simplified a lot and trimming
the // mark would be the only work when loading the developer package
before build, which can be implemented in PackageRequest class in minimum
performance cost and drop the global directive manager and do all the rest
in build process.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/nerdvegas/rez/pull/1060#issuecomment-832067188, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMOUSSINV2Q6X4AVKASYYDTMAMW5ANCNFSM423QUIWQ
.

I'll be damned.

So then, what if directives (and their mappings to the original request
they correspond to) are stored in the DeveloperPackage itself (ie the dev
pkg actually parses its request strings and creates directives itself)?

Just found that I can get the request string before schema validation from here, right before sending data into create_package
https://github.com/nerdvegas/rez/blob/3f66e9ca1a0db227af608757e8dced08e88bd461/src/rez/developer_package.py#L105-L106
I didn't realize that !

I think really this is the
way to do it, that way nothing changes in PackageRequest (or anywhere
outside of DeveloperPackage really).

Yeah, now I learnt the magic, will re-implement this soon !

So now the new approach is much simpler :

parse requirement strings and extract directives before developer package's creation
redo step 1. in package pre-processing
build process run
After local build process has completed the build successfully, re-evaluate the variant to apply directives with previously resolved build context. The variant re-evaluation will re-run Step 1. & 2. again but with the evaluated directive data.

Wasn't sure if that variant re-evaluation can be avoided, but currently cannot see an alternative that is safe and simple.

Found a way to apply harden directives back to variant before building variant payload and without re-running whole developer package loading process. 🎉

I just want to say this work is amazing @davidlatwe . I hope this effort gets completed soon. Great work.

hey @davidlatwe the need for this feature is gonna become more pressing soon (more on this soon!). I plan on diving back into this, we'll get it merged. Thanks for putting in the work, this is a tough one.


Screen shots for challenges

screens for challenge 1 and 2

Wait to merge until I add challenge 0 @carletex

yo @codenamejason
Thanks for this. I'll merge it once you add challenge 0.

@carletex should be good to go on the screens. Let me know if you see anything I may have missed and I will update.


Settings missing

Since the last update (6.7.15) the better bibtex menu is missing from the settings pane.
The log id is VB4PWJ4R-euc

Unfortunately, this didn't work. I've removed the plugin, restarted zotero, reinstalled and restarted again. I sent another log under ZPLKRGWV-euc

Can you try build 2904?

Hi, I had the same problem. Build 2904 fixed it for me.

Still not working, also new log: YCWE8J5B-euc

Still nothing... TLDJ9DYK-euc

Still nothing... TLDJ9DYK-euc

On it.

@tim-hilde can you send a log with "send cache" on?

My window looks similar to @tim-hilde and misses the entries corresponding to the auto exports after I installed test build <IP_ADDRESS>20. With the original built I missed the better bibtex menu in general. Here is the log: F83W2QV5-euc

🤖 this is your friendly neighborhood build bot announcing test build <IP_ADDRESS>35 ("keep ae- attribs")

The latest build worked! Thanks!

@retorquere test build <IP_ADDRESS>36 perfectly solved to problem and brought everything missing back 👍


enemy kills and transforming

"apparently if an enemy has kill enemies enabled it prevents other enemies from transforming upon that enemy"
i dunno what this means but i think it needs to be fixed

Should be fixed? cc4dc867428147cbc09b7f574fb31e14510b5e26


Add CocoaPods support

I've taken #24 and tried to bring it up to date with the current state of dependabot-core master. Where appropriate, I've tried to follow the pattern used for Go.
This is some way away from being ready to merge but I wanted to get this up as a WIP to check that there is an appetite to be able to use dependabot to keep CocoaPods up to date, and that this is the correct approach.
I know there is still the issue around ActiveSupport < 5, as well as the fact that this won't help those who have vendored/checked in their Pods/ directory, but for most cases I think this will be a good jumping off point.
I'll be continuing to look at getting this working for the Podfile and Podfile.lock, and get all the tests passing, but it'd be great to hear what you think so far.

Woah, this is a big contribution!
I'm swamped getting some JS stuff working perfectly, but will try to review this soon.
Fundamentally, I'm 👍 on Dependabot supporting CocoaPods.

FYI I'm planning to review this tomorrow. Sorry for the delay!

No problem on the delay! I just put a few specs right this evening (there are still more I need to do). It would be great to get a review though when you get the chance 🙂

I got sick! Going to get to this in the next couple of days, though 🤒

Apologies again for the delay in reviewing this! I've made a start, and been through the FileFetcher and FileParser. The FileFetcher looks great (I added some additional tests). The FileParser could use a little work (we've moved on quite a lot from the original code I wrote there), and I've added a couple of pending specs for how it should handle

git dependencies (should give details of their source. Alternatively it could just exclude them for v1)
sub-dependencies (should be included when parsing, with an empty array as their requirement)

I'll try to look at the UpdateChecker this week, too. I imagine that will be more time-consuming to review (as it's much more complex) but I'm keen to keep helping here. Just have to balance it with other pressures on the business (over the last couple of weeks the priority has been fixing bugs and improving our Python support).
Thanks again for your work on this!

Hi @greysteil - so it’s taking me a while but with the help of @RuudPuts I think this PR is ready 🚀
I’ve been able to test this with a handful of Podfiles and it is working as expected. I’m also happy that the test coverage is adequate and seems to match up with examples and specs for other dependency managers that are supported by Dependabot.
This was also blocked previously by Cocoapods having a dependency of activesupport < 5 (https://github.com/CocoaPods/CocoaPods/issues/7885) but that has been resolved in version 1.9.1. There’s more information on this in #416 .
I’d love any feedback you have on this PR, or if there are any other considerations I’ve missed, please let me know. I know a lot has changed since you first started this work in #24 but I really think this would be a useful addition to dependabot-core 🙂

Awesome! Cc @feelepxyz.
(I don't work on Dependabot any more - I'm on GitHub's code scanning initiatives these days, but you're in good hands with Phil and the team.)

Hi @feelepxyz,
not sure if your the one to ask, but - what is the status of the "CocoaPods support"?
It seems to be ready but not yet shipped, or do I miss something?

Hi @feelepxyz,
not sure if your the one to ask, but - what is the status of the "CocoaPods support"?
It seems to be ready but not yet shipped, or do I miss something?

We've been heads down focusing on integrating Dependabot natively in GitHub so have paused on adding more language support. We'd love to get back to this but will take a while as we're a tiny team atm. Adding a language to dependabot is a pretty big undertaking as it touches a bunch of systems and requires us to really understand it in order to fix bugs and debug (would also love to make adding language support less costly).

We use dependabot on our team and would love to have CocoaPods supported! :)

Thanks @MrCloud and @sebastianvarela - just for those not watching issue #416, @jurre posted an update yesterday saying:

...at this time we've paused adding new ecosystems. We don't have a timeline available of when we'll be adding more ecosystems yet, but once we do and we have a sense of where CocoaPods would fall priority wise I'll be sure to update here

I'll leave this PR open, and maybe occasionally rebase it so long as that's straightforward, but it's blocked until new ecosystems are being considered again by the Github team. Thanks!

I'll leave this PR open, and maybe occasionally rebase it so long as that's straightforward, but it's blocked until new ecosystems are being considered again by the Github team. Thanks!

Thanks @jspargo, looking at how well put-together this PR looks I think it will make it a lot easier for us to prioritise supporting CocoaPods once we're ready to add more ecosystems 💛

are there any updates to this PR?

This is the yearly check-in message; is CocoaPods still on the horizon to be supported?


UABEA Crash when open sharedasset

info
Application: UABEAvalonia.exe
CoreCLR Version: 6.0.1222.56807
.NET Version: 6.0.12
Description: The process was terminated due to an unhandled exception.
Exception Info: System.ArgumentException: The output char buffer is too small to contain the decoded characters, encoding 'Unicode (UTF-8)' fallback 'System.Text.DecoderReplacementFallback'. (Parameter 'chars')
at System.Text.Encoding.ThrowCharsOverflow(DecoderNLS decoder, Boolean nothingDecoded)
at System.Text.Encoding.GetCharsWithFallback(ReadOnlySpan1 bytes, Int32 originalBytesLength, Span1 chars, Int32 originalCharsLength, DecoderNLS decoder)
at System.Text.UTF8Encoding.GetCharsWithFallback(ReadOnlySpan1 bytes, Int32 originalBytesLength, Span1 chars, Int32 originalCharsLength, DecoderNLS decoder)
at System.Text.Encoding.GetCharsWithFallback(Byte* pOriginalBytes, Int32 originalByteCount, Char* pOriginalChars, Int32 originalCharCount, Int32 bytesConsumedSoFar, Int32 charsWrittenSoFar, DecoderNLS decoder)
at System.Text.DecoderNLS.GetChars(Byte* bytes, Int32 byteCount, Char* chars, Int32 charCount, Boolean flush)
at System.Text.Decoder.GetChars(ReadOnlySpan1 bytes, Span1 chars, Boolean flush)
at System.IO.BinaryReader.Read()
at System.IO.BinaryReader.ReadChar()
at AssetsTools.NET.AssetsFileReader.ReadNullTerminated() in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Standard\AssetsFileFormat\AssetsFileReader.cs:line 117
at AssetsTools.NET.AssetsFileExternal.Read(AssetsFileReader reader) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Standard\AssetsFileFormat\AssetsFileExternal.cs:line 18
at AssetsTools.NET.AssetsFileMetadata.Read(AssetsFileReader reader, UInt32 version, Int64 dataOffset) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Standard\AssetsFileFormat\AssetsFileMetadata.cs:line 107
at AssetsTools.NET.AssetsFileMetadata.Read(AssetsFileReader reader, AssetsFileHeader header) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Standard\AssetsFileFormat\AssetsFileMetadata.cs:line 46
at AssetsTools.NET.AssetsFile..ctor(AssetsFileReader reader) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Standard\AssetsFileFormat\AssetsFile.cs:line 29
at AssetsTools.NET.Extra.AssetsFileInstance..ctor(Stream stream, String filePath) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Extra\AssetsManager\AssetsFileInstance.cs:line 21
at AssetsTools.NET.Extra.AssetsManager.LoadAssetsFile(Stream stream, String path, Boolean loadDeps, BundleFileInstance bunInst) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Extra\AssetsManager\AssetsManager.Assets.cs:line 16
at AssetsTools.NET.Extra.AssetsManager.LoadAssetsFile(FileStream stream, Boolean loadDeps) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Extra\AssetsManager\AssetsManager.Assets.cs:line 37
at AssetsTools.NET.Extra.AssetsManager.LoadAssetsFile(String path, Boolean loadDeps) in C:\Users\nesquack\Documents\GitReposLocal\AssetsTools.NET\AssetTools.NET\Extra\AssetsManager\AssetsManager.Assets.cs:line 42
at UABEAvalonia.MainWindow.OpenFiles(String[] files) in C:\Users\nesquack\Documents\GitRepos\uabequickfixes\UABEA\UABEAvalonia\MainWindow.axaml.cs:line 150
at System.Threading.Tasks.Task.<>c.b__128_0(Object state)
at Avalonia.Threading.AvaloniaSynchronizationContext.<>c__DisplayClass5_0.b__0() in //src/Avalonia.Base/Threading/AvaloniaSynchronizationContext.cs:line 33
at Avalonia.Threading.JobRunner.RunJobs(Nullable`1 priority) in //src/Avalonia.Base/Threading/JobRunner.cs:line 37
at Avalonia.Win32.Win32Platform.WndProc(IntPtr hWnd, UInt32 msg, IntPtr wParam, IntPtr lParam) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 278
at Avalonia.Win32.Interop.UnmanagedMethods.DispatchMessage(MSG& lpmsg)
at Avalonia.Win32.Win32Platform.RunLoop(CancellationToken cancellationToken) in //src/Windows/Avalonia.Win32/Win32Platform.cs:line 205
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 65
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 120
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 209
at UABEAvalonia.Program.Main(String[] args) in C:\Users\nesquack\Documents\GitRepos\uabequickfixes\UABEA\UABEAvalonia\Program.cs:line 52
hope this can fix... ty

Sounds like you opened a file that was detected as an assets file but wasn't one. What file did you try to open? What version of Unity is it and what platform is it running on?

this file is from some old game resource like 2012-2016 (idk how to check the version...) and it work fine on AssetStudio but i try to mod mesh file and got this crash

You can right click -> properties -> details tab -> look at file version/product version. Or you can open a level file in a hex editor or notepad or something and look for the numbers at the top.
2012-2016 seems pretty old though. Games from 2016 may be fine, but anything older than that I expect to be on Unity 4 which is not a version I support.

Yeah that is extremely old. You're better off using the original UABE over here: https://github.com/SeriousCache/UABE.
This version of UABEA was initially created to support newer versions of Unity, so I didn't bother with handling the old ones.

Yeah that is extremely old. You're better off using the original UABE over here: https://github.com/SeriousCache/UABE. This version of UABEA was initially created to support newer versions of Unity, so I didn't bother with handling the old ones.

ty so much but it might too old actually lol i try UABE with dump/raw import but the mesh just didnt load at all... even assetstudio cant find the one i try to mod with and it just disappear... guess i just have to use Unity Hub then... also ty so much you reply surpisingly quick and thats help me a lot


Frontend Project "numbertowords" Styling

Describe the Feature you want to end
Changing few styling properties of the website to improve its design.
Expected behavior
Improved design of the website.
Screenshots (optional)
Current Design

Expected Updated Design

Additional context (optional )
N/A

@MohitGupta121 Kindly assign me this issue.


State sum identifier clashes

What should we do when commit statesums clash?
Possible exploit: someone forks the repo, creates a new state
decending from an ancestor of commit X but with checksum
collision against X, pushes it back to the local repo and thus
rewrites history. Okay, this involves being able to forge SHA256
hash collisions and get your target to pull your changes.
More likely case: two commits are made which reach the same
state and thus have the same sum. One gets ignored. Maybe okay?
Possible bug: a commit reverts to the previous state, thus its
sum collides with that of an ancestor commit. This could be
problematic!
Possible solutions
Make each commit somehow mutate the state in a way that can't
be reversed. This avoids the revert-to-previous-state issue (if that is indeed
an issue), but not checksum-collision.
Do nothing. Does collision matter in the case of a revert? What happens in the
case of an accidental collision? Intentional collision is not really possible
with secure checksums.
Add a "comment" field to commits, or a per-partition "commit number" element or
some such. Include the value of this in the checksum. If the checksum clashes,
mutate it. This leaves two problems: (1) given a commit to merge in with
clashing sum, do we ignore it or mutate the sum and merge it, and (2) are there
other exploits or issues involving sum clashes we can't (currently) spot?
Plan
Make a variant of PartitionState which can be used to construct a commit.
Disallow pushing a "state" to a Partition (commits must be made).
Add a pseudo-element storing some metadata, including the parent(s)'
state-sums. This will be replaced by every commit. Thus the state-sum of a "no
changes" commit cannot equal its parent's sum.
Requirements: a commit must actively be made from a parent
state, rather than simply pushing an altered state.

Simpler alternative: do not construct a pseudo-element and its sum, instead
just use the parent's sum in the permutation calculation.

Commits and snapshots now store the following meta-data:

commit number and timestamp
number of parents
checksum of each parent
an optional "extra metadata" section of any length

Proposal: redefine "state sum" to combine the above with element sums (thus maintaining the ability to calculate from scratch as well as from a set of differences to a previous state).
How?

By making a checksum of the serialisation of this metadata. But serialisation is not identical in snapshot and commit files, and this is inconvenient for making new commits in-memory.
By contriving a sum from commit number and timestamp, taking the checksum of extra metadata (if present), and XORing these together with all parent state-sums.
Some other contrived sum...

This was done in the new-statesum branch.


Configure Azure Pipelines

This pipeline configuration builds the application and produces a build for the Release configuration.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: thedonkarlos sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Codepen buttons in the reference docs are not working anymore

This is since today's new UI redesign of Codepen which might have introduced a bug.
Filed this on Codepen's bug tracker since this must be on their side: https://bugcrowd.com/submissions/740a218bae3df924d0df4f9dd10adb635d65320e1249febf9678f9820fb16e76

Their samples still seem to work, so there could be something we're doing differently that doesn't work anymore. Investigating.

After some investigation it seems that posting to http://codepen.io/pen/define works but https://codepen.io/pen/define fails

Closed since #1683 has been merged.


[1.12.2] Crash with  IC2 Classic

Seems to be related to the new hazmat suit. https://pastebin.com/fYx0ysmZ

It looks like IC2Classic is using an old version of the IC2 API, which doesn't contain the new classes that NC uses for implementing IC2 radiation protection - I'll post an issue on their repo ;)


Class/ES6 Problem with Snowman 2

As reported on YouTube
"Is there any way to use ES6's classes in Snowman 2 so that I can have global custom data types? Would something like this work?"
s.object = class {
  constructor(x, y) {
    ...
  }
  ...
}

This seems to be tied to the #526 and #516 problem of how template code is handled internally. (This has been fixed in Snowman 3, but not back-ported to Snowman 2.)

The following worked for me, though I admittedly use a third party app (Tweezel) instead of the official Twine app so I'm not sure if it'll run on the official app.
s.Crop = class {
  constructor(type, maxAge, cost, price, season) {
    this.type = type;
    this.maxAge = maxAge;
    this.cost = cost;
    this.price = price;
    this.season = season;
  }
}

s.crops = [];
s.crops.push(new s.Crop("Potato", 6, 50, 100, "Spring"));
s.crops.push(new s.Crop("Cauliflower", 12, 80, 175, "Spring"));


Changes needed in HTML and CSS @rexyagami

@Astha0407 can you explain the issue, please?

Aligned the heading in the center, padding in sections and labels in progress bar are incorrect.

@Astha0407 label in the progress bar are correct, you just have to change the progress bar value and match the value with the label value. And yes the padding is incorrect you can find some hints in the CSS file

Yes @rexyagami  I have made the changes in CSS and changed the values of the progress bar matching to the label in HTML. and also made the Pull Request fixing all these issues

@Astha0407 Well Done :)


fix(docs): added modules overview

Added modules docstring with an overview of submodules.
Fixed some typos.

👍


Multi-instance resources not being mounted

Description

Terraform resources that create more than one instance of themselves (using count or for_each) are not being mounted to resources that they reference.
I have included an example Terraform file/plan that reproduces the issue.
To Reproduce

Feature File:

Feature: VPC bug testing
    Scenario: VPC should have subnets mounted
        Given I have aws_vpc defined
        Then it must have aws_subnet

    Scenario: VPC should have network ACLs mounted
        Given I have aws_vpc defined
        Then it must have aws_network_acl

    Scenario: VPC subnets should have VPC mounted
        Given I have aws_subnet defined
        Then it must have aws_vpc

    Scenario: VPC subnets should have network ACLs mounted
        Given I have aws_subnet defined
        Then it must have aws_network_acl

Plan File:
{
    "format_version": "0.1",
    "terraform_version": "1.0.0",
    "planned_values": {
        "root_module": {
            "child_modules": [
                {
                    "resources": [
                        {
                            "address": "module.vpc_module.aws_network_acl.vpc_subnet_acl",
                            "mode": "managed",
                            "type": "aws_network_acl",
                            "name": "vpc_subnet_acl",
                            "provider_name": "registry.terraform.io/hashicorp/aws",
                            "schema_version": 0,
                            "values": {
                                "tags": null
                            }
                        },
                        {
                            "address": "module.vpc_module.aws_subnet.vpc_subnet[0]",
                            "mode": "managed",
                            "type": "aws_subnet",
                            "name": "vpc_subnet",
                            "index": 0,
                            "provider_name": "registry.terraform.io/hashicorp/aws",
                            "schema_version": 1,
                            "values": {
                                "assign_ipv6_address_on_creation": false,
                                "cidr_block": "<IP_ADDRESS>/25",
                                "customer_owned_ipv4_pool": null,
                                "ipv6_cidr_block": null,
                                "map_customer_owned_ip_on_launch": null,
                                "map_public_ip_on_launch": false,
                                "outpost_arn": null,
                                "tags": null,
                                "timeouts": null
                            }
                        },
                        {
                            "address": "module.vpc_module.aws_subnet.vpc_subnet[1]",
                            "mode": "managed",
                            "type": "aws_subnet",
                            "name": "vpc_subnet",
                            "index": 1,
                            "provider_name": "registry.terraform.io/hashicorp/aws",
                            "schema_version": 1,
                            "values": {
                                "assign_ipv6_address_on_creation": false,
                                "cidr_block": "<IP_ADDRESS>/25",
                                "customer_owned_ipv4_pool": null,
                                "ipv6_cidr_block": null,
                                "map_customer_owned_ip_on_launch": null,
                                "map_public_ip_on_launch": false,
                                "outpost_arn": null,
                                "tags": null,
                                "timeouts": null
                            }
                        },
                        {
                            "address": "module.vpc_module.aws_vpc.vpc",
                            "mode": "managed",
                            "type": "aws_vpc",
                            "name": "vpc",
                            "provider_name": "registry.terraform.io/hashicorp/aws",
                            "schema_version": 1,
                            "values": {
                                "assign_generated_ipv6_cidr_block": false,
                                "cidr_block": "<IP_ADDRESS>/24",
                                "enable_dns_support": true,
                                "instance_tenancy": "default",
                                "tags": null
                            }
                        }
                    ],
                    "address": "module.vpc_module"
                }
            ]
        }
    },
    "resource_changes": [
        {
            "address": "module.vpc_module.aws_network_acl.vpc_subnet_acl",
            "module_address": "module.vpc_module",
            "mode": "managed",
            "type": "aws_network_acl",
            "name": "vpc_subnet_acl",
            "provider_name": "registry.terraform.io/hashicorp/aws",
            "change": {
                "actions": [
                    "create"
                ],
                "before": null,
                "after": {
                    "tags": null
                },
                "after_unknown": {
                    "arn": true,
                    "egress": true,
                    "id": true,
                    "ingress": true,
                    "owner_id": true,
                    "subnet_ids": true,
                    "tags_all": true,
                    "vpc_id": true
                },
                "before_sensitive": false,
                "after_sensitive": {
                    "egress": [],
                    "ingress": [],
                    "subnet_ids": [],
                    "tags_all": {}
                }
            }
        },
        {
            "address": "module.vpc_module.aws_subnet.vpc_subnet[0]",
            "module_address": "module.vpc_module",
            "mode": "managed",
            "type": "aws_subnet",
            "name": "vpc_subnet",
            "index": 0,
            "provider_name": "registry.terraform.io/hashicorp/aws",
            "change": {
                "actions": [
                    "create"
                ],
                "before": null,
                "after": {
                    "assign_ipv6_address_on_creation": false,
                    "cidr_block": "<IP_ADDRESS>/25",
                    "customer_owned_ipv4_pool": null,
                    "ipv6_cidr_block": null,
                    "map_customer_owned_ip_on_launch": null,
                    "map_public_ip_on_launch": false,
                    "outpost_arn": null,
                    "tags": null,
                    "timeouts": null
                },
                "after_unknown": {
                    "arn": true,
                    "availability_zone": true,
                    "availability_zone_id": true,
                    "id": true,
                    "ipv6_cidr_block_association_id": true,
                    "owner_id": true,
                    "tags_all": true,
                    "vpc_id": true
                },
                "before_sensitive": false,
                "after_sensitive": {
                    "tags_all": {}
                }
            }
        },
        {
            "address": "module.vpc_module.aws_subnet.vpc_subnet[1]",
            "module_address": "module.vpc_module",
            "mode": "managed",
            "type": "aws_subnet",
            "name": "vpc_subnet",
            "index": 1,
            "provider_name": "registry.terraform.io/hashicorp/aws",
            "change": {
                "actions": [
                    "create"
                ],
                "before": null,
                "after": {
                    "assign_ipv6_address_on_creation": false,
                    "cidr_block": "<IP_ADDRESS>/25",
                    "customer_owned_ipv4_pool": null,
                    "ipv6_cidr_block": null,
                    "map_customer_owned_ip_on_launch": null,
                    "map_public_ip_on_launch": false,
                    "outpost_arn": null,
                    "tags": null,
                    "timeouts": null
                },
                "after_unknown": {
                    "arn": true,
                    "availability_zone": true,
                    "availability_zone_id": true,
                    "id": true,
                    "ipv6_cidr_block_association_id": true,
                    "owner_id": true,
                    "tags_all": true,
                    "vpc_id": true
                },
                "before_sensitive": false,
                "after_sensitive": {
                    "tags_all": {}
                }
            }
        },
        {
            "address": "module.vpc_module.aws_vpc.vpc",
            "module_address": "module.vpc_module",
            "mode": "managed",
            "type": "aws_vpc",
            "name": "vpc",
            "provider_name": "registry.terraform.io/hashicorp/aws",
            "change": {
                "actions": [
                    "create"
                ],
                "before": null,
                "after": {
                    "assign_generated_ipv6_cidr_block": false,
                    "cidr_block": "<IP_ADDRESS>/24",
                    "enable_dns_support": true,
                    "instance_tenancy": "default",
                    "tags": null
                },
                "after_unknown": {
                    "arn": true,
                    "default_network_acl_id": true,
                    "default_route_table_id": true,
                    "default_security_group_id": true,
                    "dhcp_options_id": true,
                    "enable_classiclink": true,
                    "enable_classiclink_dns_support": true,
                    "enable_dns_hostnames": true,
                    "id": true,
                    "ipv6_association_id": true,
                    "ipv6_cidr_block": true,
                    "main_route_table_id": true,
                    "owner_id": true,
                    "tags_all": true
                },
                "before_sensitive": false,
                "after_sensitive": {
                    "tags_all": {}
                }
            }
        }
    ],
    "configuration": {
        "provider_config": {
            "aws": {
                "name": "aws",
                "expressions": {
                    "region": {
                        "constant_value": "us-east-1"
                    }
                }
            }
        },
        "root_module": {
            "module_calls": {
                "vpc_module": {
                    "source": "../vpc",
                    "module": {
                        "resources": [
                            {
                                "address": "aws_network_acl.vpc_subnet_acl",
                                "mode": "managed",
                                "type": "aws_network_acl",
                                "name": "vpc_subnet_acl",
                                "provider_config_key": "vpc_module:aws",
                                "expressions": {
                                    "subnet_ids": {
                                        "references": [
                                            "aws_subnet.vpc_subnet"
                                        ]
                                    },
                                    "vpc_id": {
                                        "references": [
                                            "aws_vpc.vpc"
                                        ]
                                    }
                                },
                                "schema_version": 0
                            },
                            {
                                "address": "aws_subnet.vpc_subnet",
                                "mode": "managed",
                                "type": "aws_subnet",
                                "name": "vpc_subnet",
                                "provider_config_key": "vpc_module:aws",
                                "expressions": {
                                    "cidr_block": {
                                        "references": [
                                            "count.index"
                                        ]
                                    },
                                    "vpc_id": {
                                        "references": [
                                            "aws_vpc.vpc"
                                        ]
                                    }
                                },
                                "schema_version": 1,
                                "count_expression": {
                                    "constant_value": 2
                                }
                            },
                            {
                                "address": "aws_vpc.vpc",
                                "mode": "managed",
                                "type": "aws_vpc",
                                "name": "vpc",
                                "provider_config_key": "vpc_module:aws",
                                "expressions": {
                                    "cidr_block": {
                                        "constant_value": "<IP_ADDRESS>/24"
                                    }
                                },
                                "schema_version": 1
                            }
                        ]
                    }
                }
            }
        }
    }
}

Sample Terraform Code:

This is an example of a resource setup that produces the issue.
resource "aws_vpc" "vpc" {
    cidr_block = "<IP_ADDRESS>/24"
}

resource "aws_subnet" "vpc_subnet" {
    count = 2

    vpc_id     = aws_vpc.vpc.id
    cidr_block = element(["<IP_ADDRESS>/25", "<IP_ADDRESS>/25"], count.index)
}

resource "aws_network_acl" "vpc_subnet_acl" {
    vpc_id     = aws_vpc.vpc.id
    subnet_ids = aws_subnet.vpc_subnet.*.id
}

Error Output:

The network ACL resource was successfully mounted to the VPC and subnet instances, but the subnets were not mounted to the VPC, and the VPC was not mounted to the subnets:
terraform-compliance output:
Feature: VPC Test

    Scenario: VPC should have subnets mounted
        Given I have aws_vpc defined
                Failure: module.vpc_module.aws_vpc.vpc (aws_vpc) does not have aws_subnet property.
        Then it must have aws_subnet
          Failure:

    Scenario: VPC should have network ACLs mounted
        Given I have aws_vpc defined
        Then it must have aws_network_acl

    Scenario: VPC subnets should have VPC mounted
        Given I have aws_subnet defined
                Failure: module.vpc_module.aws_subnet.vpc_subnet[0] (aws_subnet) does not have aws_vpc property.
                Failure: module.vpc_module.aws_subnet.vpc_subnet[1] (aws_subnet) does not have aws_vpc property.
        Then it must have aws_vpc
          Failure:

    Scenario: VPC subnets should have network ACLs mounted
        Given I have aws_subnet defined
        Then it must have aws_network_acl

Expected Behavior:
I would expect all of the scenarios in the snippet above to succeed.  Since the VPC is referenced in the subnets and in the network ACL, I would expect it to be mounted to both, and I would expect both the subnets and the ACL to be mounted to the VPC.
Tested Versions:

terraform-compliance version: 1.3.19
terraform version: 1.0.0
python version: 3.8.2

Oh, this is interesting, and sad :( Sorry for experiencing that.
Looking into

The problem does not seem about count or for_each. We use a lot of for_each and count in some projects, never had a problem as well.
When I debug your plan file, it looks like its mounting aws_network_acl.vpc_subnet_acl to' aws_vpc.vpc, and aws_subnetsintoaws_network_acl.vpc_subnet_acl, but not into aws_vpc.vpc. Looks like terraform-compliance` somehow get confused on that 😆 Interesting thing is I also have another similar example on my own with multiple-mounting on the same resource, it doesnt have a problem.
Digging a bit more, will fix this asap

I take me statement back, the problem was about count but that was not the only reason why this is happening :)
Fixed in #533

Hi @chrisblutz, can you give a try with 1.3.24 on this problem please ?

perfect, glad to hear. closing this issue, please do not hesitate to create a new one if the problem somehow occurs again :)


Microsoft-Telefonielösungen Poster

Hi,
the link to the poster under "Microsoft-Telefonielösungen" leads to an error page.
Best regards,
Silvia

Dokumentdetails
⚠ Bearbeiten Sie diesen Abschnitt nicht. Er ist für die Verknüpfung von docs.microsoft.com zum GitHub-Artikel erforderlich.

ID: ad3ad624-9792-91b7-c85f-09b839b1ea44
Version Independent ID: e8288f91-11bd-599b-8a88-074917b315a4
Content: Microsoft Teams IT-Architektur- und Telefonielösungen Poster - Microsoft Teams
Content Source: Teams/teams-architecture-solutions-posters.md
Service: msteams
GitHub Login: @SerdarSoysal
Microsoft Alias: serdars

@SilviaEid thank you for the feedback. The article has now been human translated and the link appears to be working.

@SilviaEid thank you for the feedback. The article has now been human translated and the link appears to be working.

Hi @SilviaEid I'm closing this issue as the problem appears to be fixed.  Thanks again for reporting it.

Hi @SilviaEid I'm closing this issue as the problem appears to be fixed.  Thanks again for reporting it.


[many ports] Add dependency boost-config

Fixes #35187, add dependency boost-config for some boost header only ports, they could be used in CMake project by the following usage:
    find_package(Boost REQUIRED)
    target_link_libraries(main PRIVATE Boost::boost)

[x] Changes comply with the maintainer guide
[ ] SHA512s are updated for each updated download
[ ] The "supports" clause reflects platforms that may be fixed by this new version
[ ] Any fixed CI baseline entries are removed from that file.
[ ] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

These files are automatically generated by scripts/boost/generate-ports.ps1 yet you didn't change the script. Next boost update will undo these changes.

Closed as duplicate of https://github.com/microsoft/vcpkg/pull/35693.


Added load/save of sensor to bone mappings

This is a fantastic tool! It seemed like it would be even more useful if you could save mappings for later use (and sharing), so I added that feature.

Added a more robust file format (for easier expansion later), change Save to use ExportHelper, and best of all -- added enable check boxes for the bones. This allows you to isolate and record only the upper body or only lower body or only the head.


Dropdown filter

Coverage remained the same at 84.863% when pulling 8748d673d1539bfc971b0d437d1eeedd82628ed9 on dropdown_filter into 8eac88b34477f3485ac7f672c3ab602580e4a6a5 on master.


Opencl instrumentation fixgtpinbindings

bind gtpin routines only if they are to be used. call them through function pointers rather than directly
add support for replacing dlmopen with dlopen and loading all shared libraries into the initial namespace
in hpcrun, replace dlmopen with dlopen when gtpin is used
in hpcrun, add --dlopen and --dlmopen arguments to force the handling of choice just in case
ensure that device finalizers never wait for event completions that may never occur when an application performs anything other than a normal exit

@mxz297 We found another problem on Friday. For some dpcpp applications, hpcrun records empty gpubins. I haven't investigated the problem yet.

Completed modifications according to comments. Also, modified hpcrun script to not introduce ::.

Completed modifications according to comments. Also, modified hpcrun script to not introduce ::.


WIP: Integrating basic F# support

PR Details
These changes from @Zeroto integrated basic F# support back then in his fork. As there was no progress etc. I'm opening this pull request here to get some attention on that the changes for basic F# support seem to be minimal.
I already saw that there are merge conflicts which means I'm probably going to fork the fork and adapt the code to open another PR (as I'm not sure whether @Zeroto is still interested in contributing this to stride).
Description
TBD
Related Issue
#781
Motivation and Context
I prefer to code in F# and noticed that the AssetCompiler doesn't support F# as start project.
I would like to be able to use F# projects as start project too.
Types of changes

[ ] Docs change / refactoring / dependency upgrade
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Closing this in favour of  #1078


[feature] change rule's primary node label

This is useful to select more specific node.

I don't think this is too useful at the moment. Closing now.


Submission

Submission instructions
In the textbox provided on Canvas for the Milestone 2 assignment include:
The URL of your public project's repository
The URL of your notebook for this milestone
Link to screenshots folder?

the textbox provided on Canvas please put a link where TAs can find the following-
[ ] This notebook with solution to 1 & 3
[ ] Screenshot from
[ ] Output after trying curl. Here is a sample. This is just an example; your input/output doesn't have to look like this, you can design the way you like. But at a minimum, it should show your prediction value.
https://github.ubc.ca/MDS-2020-21/DSCI_525_web-cloud-comp_students/blob/master/Milestones/milestone4/images/curl_deploy_sample.png


Remove mediatype

This tries to address #42 and fixes the examples as per artifactType guidelines #39
Signed-off-by: Sajay Antony<EMAIL_ADDRESS>

To cleanup formatting, we can remove the differences between artifacts and image-spec as they're in the root ./readme.md

@shizhMSFT - I had to change example mediaTypes to reflect - https://www.rfc-editor.org/rfc/rfc4735.html.

😸 I know it's with mixed feelings about having things be self describing. I appreciate the consistency too

😸 I know it's with mixed feelings about having things be self describing. I appreciate the consistency too


Use transitionEnd in QUnit since we moved away from PhantomJS

Remove that code because it's useless since we moved away from PhantomJS, plus by doing that our coverage increased a lot 😍

Done @XhmikosR, plus I removed Util.supportsTransitionEnd which is useless now 👍

I wonder, won't this break stuff for people using Util.supportsTransitionEnd()?

it can be a breaking change but if we let this method it will be the same as :
supportsTransitionEnd() {
  return true
}

because we are compatible with browsers whose support transition end.

Yeah, I think we should keep compatibility and add a todo comment that this should be removed in v5

I did that 😉 Util.supportsTransitionEnd is back with a TODO

Thanks!
How about transitionEndTest()? Maybe we should do the same for this too?

transitionEndTest isn't callable currently, so it's not a breaking change


multiple suggestions with the same text

I'm seeing multiple suggestions with the same text (and it's causing test failures). Sorry if this is already a known issue!
found two matches:
match 1: {"id":"0.14050695088023146-19","text":"Buy gifts for Claire, estimate arrival date for Products recommended based on products from your browsing context (Minecraft Book plus 2 other items) and Claire's wishlist (Book: How to Draw plus 2 other items) (Book: How to Draw plus 2 other items), and estimate arrival date for products from your browsing context."}
match 2: {"id":"0.14050695088023146-20","text":"Buy gifts for Claire, estimate arrival date for Products recommended based on products from your browsing context (Minecraft Book plus 2 other items) and Claire's wishlist (Book: How to Draw plus 2 other items) (Book: How to Draw plus 2 other items), and estimate arrival date for products from your browsing context."}

Duplicate of #708.


optimizing time complexity of split field validator

Changelogs

Updates to the split field validator in the Benchmark model which significantly improve the validators time complexity (thank you for the suggestions and analysis, @jstlaurent and @cwognum)

Checklist:

[x] Was this PR discussed in an issue? It is recommended to first discuss a new feature into a GitHub issue before opening a PR. https://github.com/polaris-hub/polaris/issues/127
[x] Add tests to cover the fixed bug(s) or the newly introduced feature(s) (if appropriate).
[x] Update the API documentation if a new function is added, or an existing one is deleted.
[x] Write concise and explanatory changelogs above.
[x] If possible, assign one of the following labels to the PR: feature, fix, chore, documentation or test (or ask a maintainer to do it for you).

discussion related to that PR

Did you try splitting a large dataset again? How long did that take?

@cwognum I did try splitting a large dataset! I believe 200,000,000 rows took ~20 seconds and 100,000,000 took ~8 seconds. Much, much better.
It would be great to have more logging for when these validations are happening too. Just something to let the user know that we are running validations which can take some time (10-20 seconds of "hanging" could be confusing for a user). What do you think? Happy to create an issue.

Yeah, that makes sense to me. Not super high priority because I don't expect such large datasets any time soon, but improving the logging is an important, low hanging fruit to improve the UX!


Nice to have: website logs/analytics

@katestange mentioned today in dev meeting that it's nice to be able to view website usage stats, etc. I suspect @gwhitney might have some compunctions about the leading website analytics solution, so perhaps we could look into alternatives. We should at least be able to view and make sense of our Nginx logs.

This was tentatively scheduled for beta, so adding that milestone; could be pushed back if need be to get beta out the door.


SNAP:1976: set tx isolation changes

Changes proposed in this pull request

Allow operations on row and column tables if isolation level is set and autocommit is true (query routing is enabled). If autocommit is false, query routing will be disabled.  Refer to function Misc#routeQuery
Do not allow column table operations if query routing is disabled. Refer to GenericStatement#invalidQueryOnColumnTable(). Disallow insert on column tables via check in GemFireInsertResultSet constructor.
Changed implementation of SnappyActivation#isColumnTable to use container.isRowBuffer() check instead of a call to SnappyHiveCatalog.isColumnTable()
In GenericStatement() constructor also considering query routing flag for calculation of hash so that cached SnappyActivation will not be picked if same query is run first with route-query=true and later with route-query=false.
Also other changes to lcc: set internal-connection, autocommit etc.

Patch testing
Have added basic unit tests (refer to Snappy PR https://github.com/SnappyDataInc/snappydata/pull/813)
precheckin to be run before merge
ReleaseNotes changes
Docs being updated
Other PRs
https://github.com/SnappyDataInc/snappydata/pull/813

Merged the changes. If there are review comments from Sumedh, will incorporate those afterwards.


TechDebt: CLI commands.go

Rethink globals:
localClient and client.

get rid of localClient
make client FabricClient type and recast to cliClient.GrpcClient when needs as param to called function

Was fixed by Lio.


Issue fetching data from jira

i have configured Hygieia to fetch data from jira but i keep on getting following error, please help:
2017-01-03 14:07:00,434 INFO  c.c.d.collector.CollectorTask - Team Data              11        0s
2017-01-03 14:07:00,595 INFO  c.c.d.collector.CollectorTask - Project Data           11        0s
2017-01-03 14:07:00,750 ERROR c.c.d.collector.FeatureCollectorTask - Failed to collect jira information
java.lang.NullPointerException: null
at com.capitalone.dashboard.util.FeatureWidgetQueries.getStoryQuery(FeatureWidgetQueries.java:111) ~[classes/:na]
at com.capitalone.dashboard.client.DefaultJiraClient.getIssues(DefaultJiraClient.java:94) ~[classes/:na]
at com.capitalone.dashboard.client.story.StoryDataClientImpl.updateStoryInformation(StoryDataClientImpl.java:160) ~[classes/:na]
at com.capitalone.dashboard.collector.FeatureCollectorTask.collect(FeatureCollectorTask.java:119) [classes/:na]
at com.capitalone.dashboard.collector.FeatureCollectorTask.collect(FeatureCollectorTask.java:1) [classes/:na]
at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:63) [classes/:na]
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) [spring-context-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [na:1.8.0_111]
at java.util.concurrent.FutureTask.run(Unknown Source) [na:1.8.0_111]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source) [na:1.8.0_111]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) [na:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.8.0_111]
at java.lang.Thread.run(Unknown Source) [na:1.8.0_111]

Issue fixed after updating application.properties file with following values:
feature.jiraIssueTypeNames=Story
feature.jiraStoryPointsFieldName=customfield_10002


yarn add -WD @storybook/addon-viewport

For evaluating / testing component implementation quality across device categories, this addon looks relatively useful.
https://github.com/storybooks/storybook/tree/master/addons/viewport
Your thoughts?

I have considered various Storybook addons (storysource, viewport etc) but using them will make building a Storybook a bit longer, it is already taking around 5 seconds on my nachine.
At this point, I don't plan to build any components for complex layouts, so I don't see any benefit in using this particular addon for Aybolit. I might reconsider that in future though.


nsc-events-nextjs _ 4 _ 95 _ change-password-Page

resolves #95
Working without package-lock.json file change.
https://github.com/SeattleColleges/nsc-events-nestjs/assets/77989401/ebb12ecf-910d-40ed-a361-c1e2f1393495

@TuongPhamM Please address the CodeFactor issues so that your PR can be merged.

@TuongPhamM Please address the CodeFactor issues so that your PR can be merged.

Okay, it should have passed all the checks by now.


Documentation Help

I've updated the docs (and there's been a major version increase).
I'd like to ask for help in going over the docs and adding to them and improving them. Especially to @eek and @dodekeract who have been so involved and helpful recently. Feel free to test out the new major version (some big changes...I don't doubt hiccups), and do PRs for documentation improvements.
Thanks!

I know I'm not that good guys...there's gotta be some majorly important concept I'm missing in the docs. Feel free to suggest and/or PR.

@BryanGrezeszak sorry, I can't really comment on this anymore since I switched to redux due to the memory leak issue I had.
Only thing I immediately noticed is that you decided to use var instead of const. I suppose that's intentional, but what's the reasoning?
In addition to that I couldn't find anything on server-rendering. Since I had memory leaks with that I suggest to include enough documentation to allow users to implement it without leaking memory.

I thought you were going to open an issue about that? I don't even have info on what's happening in your memory leaks...so I can't really work on them :)
I don't like const at the moment. It used to be function level scope in some browsers, but ES6 defined it as block level scope (like let). So new browsers are gonna use it as block scope. And I just plain don't want block level scope most the time. And since babel is turning it into var anyway, it's not like we're getting any speed boosts. I just don't see any advantage in it yet. One day...but I'm not hopping on it yet.
As far as server rendering...I guess I honestly don't know what is different about server rendering with Reflux? I would assume if you know how to server render React, then using Reflux doesn't change that...or am I wrong on that? If you've got some good info/tips about server rendering with Reflux then feel free to pass 'em to me, I'd love to have them.

@BryanGrezeszak As far as I understood with server rendering the issue is that Reflux uses componentWillMount instead of componentDidMount for attaching the subscribe listener.
That means that there are references between the components and stores, which (as far as I understand) create the issues I had.
I decided not to open an issue since it's easier for me to just switch and reflux seems to be broken by design. I'm quite certain that I didn't do anything odd and every time someone tries to use Reflux for server-rendering it will result in the same issue I had.
If I did do something wrong then an example is needed, as I consider myself to be experienced with React/Flux/Node and I obviously didn't manage to implement it properly.
If I didn't do anything wrong then an example is the perfect repro for the bug.

If there's no references between components and stores then how would components have data from the stores? That would be true for pretty much any flux implementation. So I highly doubt it's an unsolvable problem. I just haven't even tried to solve it yet, because I thought you were going to submit an issue with some code that replicated the problem. If not then I'll just try to replicate it myself.

@BryanGrezeszak as far as I know that's what getInitialState is for.

@dodekeract - I'm a little confused by what you mean there.
I'm assuming you mean the constructor, because we don't have getInitialState anymore in React, it's been deprecated and replaced by constructors in ES6.
But either way, It would still need reference to the store somewhere/somehow in order to get data from the store for initial state. It's no easier/harder to clean up references from getInitialState/constructor than it is from componentWillMount.

@BryanGrezeszak oh, didn't know they removed that. I'm using ES6/7 only so I didn't notice it's gone. :)

@BryanGrezeszak here's Facebook saying that you shouldn't do subscriptions in componentWillMount.

@dodekeract - I understand that subscribing during server rendering is likely where the leaks are starting, since componentWillUnmount never happens to remove them. And solutions to make sure all subscriptions get removed server-side is probably the first thing I'd look to do. And honestly, I don't think it'll be that hard.
But I'm trying to understand how you're saying getInitialState/constructor solves that? It still runs during server rendering.
If this allows for some sort of solution, then I don't want to miss it by simply misunderstanding you...but as far as I can tell it's just changing around where we're adding the leak, not actually doing anything to help it.

@BryanGrezeszak there is no need to subscribe at all on the server side. That's why it's usually done in componentDidMount. getInitialState/constructor is only there to get the initial state. There is no need for any other actions besides the initial hydration.

@dodekeract - User's constructor state setting would then kill off what's set from the store.
    constructor(props)
    {
        super(props); // <-- state from store would get set during super
        this.state = {}; // <-- brand new object is set which doesn't have store state
    }

You can't set state before the user defined constructor. And in the chain, the user's defined constructor goes last.

Just pushing the state to the component during componentWillMount and not actually listening until componentDidMount is an option though. So the concept could fly. But I don't think the constructor itself can be utilized for this.

Just pushing the state to the component

That's exactly what getInitialState/constructor is supposed to be used for. 🙂

Is that compatible with reflux? I was under the impression that reflux is supposed to be the only thing that manages the state for every component it's assigned to.

Definitely compatible. It's been designed/documented from the start that you can still have your own component specific parts of the state, and use them like you would in any normal component.
Reflux tries not to break normal React usage. If you have a normal React.Component and just flip the extends to Reflux.Component then the grand majority of the time it will work the exact some out of the box. It tries as much as possible to only augment it with new capabilities (like this.store, etc.) without removing any of the old.

That's exactly what getInitialState/constructor is supposed to be used for.

Exactly. And that's why we need to leave that capability intact.
I think you're looking at it wrong. For us (as people making tools to be used with react, as opposed to actually building projects with react components) the best practices of what you're supposed to do when making react components are abilities to make sure we maintain (because the people using our library are making react components, so they need those best practices to remain unchanged).
So if we remove the ability of the person making react components to set this.state in the constructor for the sake of doing some of our own state stuff in the constructor...then we're not following react's guidelines, we're breaking them. 🙂

Therefore you actually don't need to listen for changes from the stores and adding a handler for getInitialState/constructor is exactly the place where the components can grab the initial state.

This is true. It just doesn't require getInitialState/constructor to remain true.
One can push state in WillMount and then start listen in DidMount and it would serve the same functionality. I don't know if the DidMount stuff in general is what I'll do, but it's an option on the table. I don't like the idea of needing to super the DidMount part of the lifecycle in general, because it's very commonly used...so I'm not committing to it by any means. But we'll see where it goes.

This has been open long enough as far as the request for doc help.
And the convo about memory leaks that it turned into has been solved at https://github.com/reflux/refluxjs/issues/507
So closing this.


Feature Suggestion: Print selection.

Subj.
It would be ideal to combine this with another feature: accumulate selected fragments one by one into the clipboard, and then send them to print (or paste them elsewhere). I'm probably not the only one who misses this.

Cool idea, but a bit to complex for what I have in mind for this plugin: to simply print things from your workspace :)


Use a different icon for closed issues in the Issues view

While testing https://github.com/microsoft/vscode-pull-request-github/issues/1591
I noticed that if I edited the issue query to include closed issues, we don't distinguish those in the issues view. We should use the "closed" icon as appropriate.

To verify, you can use the githubIssues.queries setting to make a query that will show closed issues.


Add --wait command to get deployment command

When we run commands to get a deployment we first receive that the deploy is running. We can solve this with a bash loop but it would be nicer if the command can handle this like:
lagoon get deployment -e master -p [PROJECT] --remoteid [REMOTEID] --wait

I'll see what we can do, the graphql library we use doesn't support subscriptions so we may need to do it a slightly different way.