Fix:vitejs#5265 Add disableDotRule option to allow path contains dot

Description

Additional context

What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[ ] Read the Pull Request Guidelines and follow the Commit Convention.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

I'm not sure if this is the right solution :thinking:

please correct title with (fix) and add a description telling which issue this will fix and why you believe this is the correct way to fix the issue

I don't see what this solves either. @gauntiantian Can you provide some context as to why this is needed?

check it out
https://www.npmjs.com/package/connect-history-api-fallback

please provide tests for this and give more of an explanation than just a link

Hi,
I guess I would benefit from this as well.
If route parameters of a vue app include dots (like a JWT), the route param won't be matched by Vite's dev server.
There was a "disableDotRule" option in webpack dev server to get around that as well: https://webpack.js.org/configuration/dev-server/#devserverhistoryapifallback

I need this in my project as well.
For example to display file information about a file in the app, an URL like this is used: example.com/file-info/some/path/to/file.txt
Currently the Vite dev server 404s when such URLs with a dot are loaded.
What do we need to do to get this merged?


Write a Dart program to find cube of a number

Description
Write a Dart program to find cube of a number
Input  : 2
Output : 8

How to contribute

Save the solution in find_cube_of_a_number.dart file
Add find_cube_of_a_number.dart file in find-cube-of-a-number folder

Hey @Chirag8023,
This issue has been assigned to you for more than 15 days.
We are unassigning you from this issue.
If you are still interested in contributing to this issue, please get auto-assigned on the issue by commenting !assign again.
Thanks for your contributions :)


Use static base class for Image if possible

🐛 Bug
tiny thing, but don't want to forget it... in image.py, this dynamic inheritance pattern breaks IDE inspection for anything annotated as an Image
_image_base_class = _get_image_base_class()

class Image(_image_base_class):

would be nice to figure out a way to accomplish the same goal without the dynamic base class.

would be nice to figure out a way to accomplish the same goal without the dynamic base class.

Any more details here can help @tlambert03 :)

sorry, will take care of it! :)


chore: add measurements to log mdc

Codecov Report

Merging #120 into test/performance-troubleshooting will decrease coverage by 1.79%.
The diff coverage is 44.61%.

@@                          Coverage Diff                          @@
##             test/performance-troubleshooting     #120     +/-   ##
=====================================================================
- Coverage                                  73%   71.21%   -1.8%
- Complexity                                246      249      +3
=====================================================================
  Files                                      38       39      +1
  Lines                                    1141     1195     +54
  Branches                                  109      117      +8
=====================================================================
+ Hits                                      833      851     +18
- Misses                                    249      281     +32
- Partials                                   59       63      +4

Impacted Files
Coverage Δ
Complexity Δ

...om/sinnerschrader/aem/react/ReactRenderEngine.java
80% <100%> (ø)
4 <1> (ø)
:arrow_down:

...sinnerschrader/aem/react/cache/ComponentCache.java
54.05% <41.37%> (-8.59%)
18 <2> (ø)

...ain/java/com/sinnerschrader/aem/react/MdcUtil.java
6.25% <6.25%> (ø)
1 <1> (?)

...java/com/sinnerschrader/aem/react/PoolManager.java
74.6% <75%> (+1.01%)
8 <1> (ø)
:arrow_down:

...om/sinnerschrader/aem/react/ReactScriptEngine.java
87.12% <85.71%> (-0.79%)
25 <13> (+2)

Continue to review full report at Codecov.

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


Bugfix/issue 360 print sha256sum after workflow release

Please write user-readable short description of the changes:
fix typo:
destory -> destroy
https://word.tips/spelling/destroy-vs-destory/
add sha256 in the binary output log
homebrew proton require the version number and sha256sum
https://github.com/timeplus-io/homebrew-timeplus/commit/1c8ef6ca4a74e576f13178482a98b1bf3eb85211
normally you have to download the binary to get the sha256 output , right now just check the releasebuild action workflow log.
this commit wanna take:
(minimal effort to relieve the way to upgrade homebrew)

#360


[5.1] Allow final on dynamic members

Dynamic is about dynamically replacing a method implementiation not
overriding.
rdar://49535048

@swift-ci Please test


Replace occurrences of example.local with drupal.local

The README contains references to example.local, but the Vagrantfile has server.vm.hostname = "drupal.local". So, it should be drupal.local that we're adding to /etc/hosts, right?

No, example.local is the role site name + .local. This can be found in chef/roles/example.json.


Does it not support referencing README.md?

Hi,
My main doc page is the same as README.md, thus docs/index.md is:
--8<-- "README.md"

But the callouts don't seem to work. Is there any way?

The only solution I can think of would be to force pymdownx.snippets to run before plugins, but I have zero control over this. The event we use is, as far as I can tell, the last in the chain before rendering (on_page_markdown, source)
Perhaps opening an issue in mkdocs/mkdocs-material would be fitting? It makes sense that snippets should take precedence over both plugins and markdown extensions as to not interfere with rendering

Thanks a lot for the pointer!

Apparently, it should be a PyMarkdown Extension, and not MkDocs plugin to make it work.. So I'll close the issue here!


Add requirement on README for OS version

Thought I would try a install to test it out. Incorrect OS 😒 Would be worth specifying what OS to run this on.

Added the OS family and major version requirements to the k3s install instructions.


Tanstack table mutates the props passed into it

TanStack Table version
8.20.5
Framework/Library version
React 18.3.1
Describe the bug and the steps to reproduce it
Typically in react, props are considered immutable - it is not expected that component / hook we pass into updates it.
While looks like it doesn't cause too many issues (?) for those who use redux will see below error, because redux freezes the store to prevent accidental mutations.
Uncaught TypeError: Cannot add property id, object is not extensible
Steps to reproduce

Open https://stackblitz.com/edit/sb1-syghbl?file=src%2Fcomponents%2FUserTable.tsx
Instead of columns2, pass columns1 to MaterialReactTable

PS: The example is of column Defs, but there could be more
Your Minimal, Reproducible Example - (Sandbox Highly Recommended)
https://stackblitz.com/edit/sb1-syghbl?file=src%2Fcomponents%2FUserTable.tsx
Screenshots or Videos (Optional)
No response
Do you intend to try to help solve this bug with your own PR?
None
Terms & Code of Conduct

[x] I agree to follow this project's Code of Conduct
[x] I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.

Hello @aarjithn, I think this issue should be created at Material React Table repository. The mutation of props seems to occur here, not in the TanStack repository.

Great catch, closing this one


This is a temporary camera fix for Android 10

This is why the camera wouldn't work, because it wasn't able to access storage. This fix is only temporary though, and a much better fix will be needed when Android 11 comes out (as scoped storage is forced then).

Thank you for the contribution :)

Thank you for the contribution :)

No problem, you might want to remove that bug mentioned in the description though


Low average precision value

I have a dataset with 12000 users and 500 items, and I used it to build a recommender model by different approaches. With user based collaborative filtering I have precision=0.1, with content based model precision=0.45. I expected to increase the precision value with TensorFlow by obvious reasons, but precision=0.0013, which does not make any sense.
I tried your basic_usage code, which generates ratings, user_features and item_features randomly by the function tensorrec.util.generate_dummy_data(), and I see precision=0.003. It makes sense because in this case we don't have any correlations between ratings and user-item features.
Please, clarify why real data and random numbers give the same level of precision.

I used your function get_book_crossing() as a prototype to load and convert the data in proper format--I just adjusted your code for my set of data.. So, I hope the data I use to fit the recommender model is valid.

Hey @vladimir-sevastyanov : What models are you using for the collaborative filters, and what methods are you using to calculate precision (both with the collaborative filter and with TensorRec)?
Can you paste a code snippet of the TensorRec model you're using?

This is my code:
import numpy as np
import tensorrec
from tensorrec.eval import fit_and_eval, eval_random_ranks_on_dataset
from dataLoad.datasets import get_data #, get_book_crossing
train_interactions, test_interactions, user_features, product_features = get_data(min_positive_score=1,
min_interactions_per_product=2,
user_indicators=False,
item_indicators=False,
cold_start_users=False,
cold_start_items=False)
Build the model with default parameters
model = tensorrec.TensorRec()
Fit the model and get a result packet
fit_kwargs = {'epochs': 500, 'learning_rate': .01, 'n_sampled_items': 100, 'verbose': True}
result = fit_and_eval(model, user_features, product_features, train_interactions, test_interactions, fit_kwargs,
recall_k=10, precision_k=10, ndcg_k=10)
Predict scores and ranks for all users and all items
predictions = model.predict(user_features=user_features,
item_features=product_features)
predicted_ranks = model.predict_rank(user_features=user_features,
item_features=product_features)
Calculate and print the recall at 10
r_at_k = tensorrec.eval.recall_at_k(predicted_ranks, train_interactions, k=10)
print(np.mean(r_at_k))
p_at_k = tensorrec.eval.precision_at_k(predicted_ranks, train_interactions, k=6)
print(np.mean(p_at_k))

That's the code to convert the data:
def get_data(min_positive_score=2, min_interactions_per_product=2, user_indicators=False, item_indicators=False,
cold_start_users=False, cold_start_items=False):
ratings = []
with open('C:/temp/RecommenderSystems/tensorrec-master/data/interactions.csv', 'rb') as ratings_file:
    ratings_lines = ratings_file.readlines()
    for line in ratings_lines:
        split_line = line.decode('iso-8859-1').replace('\r', '').replace('\n', '').split(',')

        # Throw out header
        if split_line[0] == 'TPID':
            continue

        tpid = int(split_line[0])
        offeringid = split_line[1]
        rating = int(split_line[2])
        rating = 1 if rating >= min_positive_score else 0

        # Skip 0 scores
        if rating == 0:
            continue

        ratings.append((tpid, offeringid, rating))

product_metadata_raw = {}
with open('C:/temp/RecommenderSystems/tensorrec-master/data/items.csv', 'rb') as products_file:
    products_lines = products_file.readlines()
    for line in products_lines:

        split_line = line.decode('iso-8859-1').replace('\r', '').replace('\n', '').split(',')

        # Throw out header
        if split_line[0] == 'OfferingID':
            continue

        # Store tuple of title, author, year, publisher, cover image URL
        offeringid = split_line[0]
        servicetype = split_line[1]
        technology = split_line[2]
        focusarea = split_line[3]

        # Convert year back to string for encoding
        product_metadata_raw[offeringid] = (servicetype, technology, focusarea)

user_metadata_raw = {}
with open('C:/temp/RecommenderSystems/tensorrec-master/data/Users.csv', 'rb') as users_file:
    users_lines = users_file.readlines()
    for line in users_lines:

        split_line = line.decode('iso-8859-1').replace('\r', '').replace('\n', '').split(',')

        # Throw out header
        if split_line[0] == 'TPID':
            continue

        tpid = split_line[0]
        country = split_line[1]
        companyname = split_line[2]

        # Convert country back to string for encoding
        user_metadata_raw[tpid] = (country, companyname)

offeringid_counter = {}
for _, offeringid, _ in ratings:
    offeringid_counter[offeringid] = offeringid_counter.get(offeringid, 0) + 1
ratings = [r for r in ratings if offeringid_counter[r[1]] >= min_interactions_per_product]

# Build map between users, offeringids, and rows/columns
user_to_row_map = {}
offeringid_to_column_map = {}
for user, offeringid, _ in ratings:
    if user not in user_to_row_map:
        user_to_row_map[user] = len(user_to_row_map)
    if offeringid not in offeringid_to_column_map:
        offeringid_to_column_map[offeringid] = len(offeringid_to_column_map)
row_to_user_map = {row: user for user, row in user_to_row_map.items()}
column_to_offeringid_map = {col: offeringid for offeringid, col in offeringid_to_column_map.items()}

interactions_raw = [(user_to_row_map[user], offeringid_to_column_map[offeringid], score) for user, offeringid, score in ratings]
r, c, v = zip(*interactions_raw)
interactions = sp.coo_matrix((v, (r, c)), dtype=np.float64)

user_metadata = []
for row in range(max(row_to_user_map) + 1):
    user = row_to_user_map[row]
    user_metadata.append(user_metadata_raw[str(user)])

product_metadata = []
for col in range(max(column_to_offeringid_map) + 1):
    offeringid = column_to_offeringid_map[col]
    try:
        product_metadata.append(product_metadata_raw[offeringid])
    except KeyError:
        product_metadata.append(('', '', '', '', ''))

product_transformers = [
    ('servicetype_pipeline', Pipeline([
        ('servicetype_extractor', TupleExtractor(0)),
        ('servicetype_vectorizer', CountVectorizer(min_df=2)),
    ])),
    ('technology_pipeline', Pipeline([
        ('technology_extractor', TupleExtractor(1)),
        ('technology_vectorizer', PipelineLabelBinarizer(sparse_output=True)),
    ])),
    ('focusarea_pipeline', Pipeline([
        ('focusarea_extractor', TupleExtractor(2)),
        ('focusarea_vectorizer', PipelineLabelBinarizer(sparse_output=True)),
    ])),
]
if item_indicators:
    product_transformers.append(('indicator', IndicatorFeature()))
product_pipeline = FeatureUnion(product_transformers)
product_features = product_pipeline.fit_transform(product_metadata)

user_transformers = [
    ('country_pipeline', Pipeline([
        ('country_extractor', TupleExtractor(0)),
        ('country_vectorizer', CountVectorizer(min_df=2)),
    ])),
    ('companyname_pipeline', Pipeline([
        ('companyname_extractor', TupleExtractor(1)),
        ('companyname_vectorizer', PipelineLabelBinarizer(sparse_output=True)),
    ])),
]
if user_indicators:
    user_transformers.append(('indicator', IndicatorFeature()))
user_pipeline = FeatureUnion(user_transformers)
user_features = user_pipeline.fit_transform(user_metadata)

if cold_start_users:
    train_interactions, test_interactions = _split_interactions_cold_start_users(interactions)
elif cold_start_items:
    train_interactions, test_interactions = _split_interactions_cold_start_items(interactions)
else:
    train_interactions, test_interactions = _split_interactions_warm_start(interactions)

return train_interactions, test_interactions, user_features, product_features

@vladimir-sevastyanov The data-conversion code looks okay to me -- I didn't notice any immediate issues.
I'm confused re: your precision concern. You said before that you had k=1000, but in this code k=6. When you received a precision value of .0013, what was your K value?

I experimented with different K values, but it does not impact the order of the precision value

K is deeply impactful to precision values. For example, here is Precision from LightFM:
                   k=10, user_features=None, item_features=None,
                   preserve_rows=False, num_threads=1, check_intersections=True):

    ranks = model.predict_rank(test_interactions,
                               train_interactions=train_interactions,
                               user_features=user_features,
                               item_features=item_features,
                               num_threads=num_threads,
                               check_intersections=check_intersections,
                               )

    ranks.data = np.less(ranks.data, k, ranks.data)

    precision = np.squeeze(np.array(ranks.sum(axis=1))) / k

    if not preserve_rows:
        precision = precision[test_interactions.getnnz(axis=1) > 0]

    return precision```

And this is precision in TensorRec:

```def precision_at_k(predicted_ranks, test_interactions, k=10, preserve_rows=False):

    positive_test_interactions = test_interactions > 0
    ranks = sp.csr_matrix(predicted_ranks * positive_test_interactions.A)
    ranks.data = np.less(ranks.data, (k + 1), ranks.data)

    precision = np.squeeze(np.array(ranks.sum(axis=1))).astype(float) / k

    if not preserve_rows:
        precision = precision[positive_test_interactions.getnnz(axis=1) > 0]

    return precision```

Can I use ratings from 1 to hundreds and thousands, or it must be binary: 0/1?
In my case I have rating as the number of licenses purchased by a company (user). Some companies have a few licences, but a few of them have hundreds and even thousands.
Is it possible that precision is calculated incorrectly because rating is not binary? Do I have to convert rating into a binary value?

Both (LightFM and TensorRec) precision calculations should tolerate any positive value just fine. If you try binarizing your data before passing it to the precision functions, and it changes the result, please let me know.
My immediate suspicion is that the low precision you saw (which was almost exactly 100x lower than the other precisions) is the result of a higher K value (1000, which is 100x higher). Can you confirm that you get wildly different precision values with the same K?

Yes, I confirm.
I just performed one more experiment: used the same sparse matrix to build TensorRec and LightFM models, and calculated precision for each model for the same k=10.
TensorRec precision=0.000216
LightFM precision=0.23
I suggest you to compare results in debug mode, and find out the difference

My code:
import numpy as np
import tensorrec
from tensorrec.eval import fit_and_eval, eval_random_ranks_on_dataset
from dataLoad.datasets import get_data #, get_book_crossing
train_interactions, test_interactions, user_features, product_features = get_data(min_positive_score=1,
min_interactions_per_product=2,
user_indicators=False,
item_indicators=False,
cold_start_users=False,
cold_start_items=False)
Build the model_tr with default parameters
model_tr = tensorrec.TensorRec()
Fit the model_tr and get a result packet
fit_kwargs = {'epochs': 500, 'learning_rate': .01, 'n_sampled_items': 100, 'verbose': True}
result = fit_and_eval(model_tr, user_features, product_features, train_interactions, test_interactions, fit_kwargs,
recall_k=10, precision_k=10, ndcg_k=10)
Predict scores and ranks for all users and all items
predictions = model_tr.predict(user_features=user_features,
item_features=product_features)
Calculate and print the recall at 10
p_at_k = tensorrec.eval.precision_at_k(predicted_ranks, train_interactions, k=10)
print(np.mean(p_at_k))
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
from lightfm import LightFM
model_lfm = LightFM(loss='warp')
model_lfm = LightFM(loss='bpr')
model_lfm.fit(train_interactions, epochs=50, num_threads=2)
from lightfm.evaluation import precision_at_k
print("Train precision: %.2f" % precision_at_k(model_lfm, train_interactions, k=10).mean())
print("Test precision: %.2f" % precision_at_k(model_lfm, test_interactions, k=10).mean())

When I used the suggested above variant
model_tr = tensorrec.TensorRec(loss_graph=tensorrec.loss_graphs.WMRBLossGraph())
I've got the error message "InvalidArgumentError (see above for traceback): 0-th value returned by pyfunc_0 is int32, but expects int64", which I described in the previous issue.
Default RMSE parameter does not generate the error:
model_tr = tensorrec.TensorRec()

hey @vladimir-sevastyanov -- I've been unable to reproduce the problem, and I got your LinkedIn note. I'm going to close this issue for now.


[Feature request] Add a model finder using SMT

In a research project at JPL we have encountered the need for obtaining a model from a contract. A model is defined as an assignment to the input variables and output variables that satisfies the conjunction of the assumptions and guarantees.
We suggest to use an SMT solver as a backend for this, and specifically the Z3 SMT solver https://github.com/Z3Prover/z3, which has a convenient Python interface.
There are other SMT solvers, but Z3 has for a long time been one of the main SMT solvers, winning numerous SMT competitions.
An attempt to implement a model finder has been made, adding the following method to the PolyhedralContract class:
def find_model(self) -> Optional[Dict[str, float]]: ...

Adding model finding capabilities via a call
def find_model(self)

is a good idea. Now we have the related function
https://github.com/pacti-org/pacti/blob/7a1d27968b68914840e3fb26a5c19baa995adc1f/src/pacti/contracts/polyhedral_iocontract.py#L184
This routine allows us to optimize an arbitrary linear objective. In some situations, we may want a model that optimizes some criteria; in other situations, we may just need a model. The function above, though, is not currently returning the values of the variables that optimize the argument. We can change the function to provide them to the user.
If we changed the prototype of optimize to return values for variables, the two routines above could be used as model finders. Here is a comparison:

Function
Technology
Supports Optimization
Support for unbounded polyhedra

find_model
SMT
Yes?
Always finds a model, if it exists

optimize
Linear programming
Yes
Optima may be unbounded

As find_model is in development using z3, something to consider is the user experience during installation. We will need to add the z3 Python bindings to Pacti's dependencies. Does installing z3 Python bindings include the installation of z3? It would be burdensome on users if we required them to separately install z3 if they don't plan to use find_model.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target/pull/503 is merged into live branch.
Auto archive content to https://github.com/VSC-Service-Account/docs-archive-test-target.git

Docs Build status updates of commit fcff7a1:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed]

Cannot sync git repo to specified commit because branch Release_Archive_master_2020-06-01-03-43-53 has been deleted or has been force pushed: fatal: couldn't find remote ref refs/heads/Release_Archive_master_2020-06-01-03-43-53

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Unclear error message when initializing a duplicate project

Describe the bug
When you try to create a new project with a name that conflict with an existing project, the error message is too vague to help debug.
Expected behavior
I believe the error message should state that a project with the name ____ already exists in insert location
Screenshots

Device Information
MacOS Monterey
go version go1.19 darwin/arm64

Thanks for bringing this to attention! This should be pretty easy to fix.

Fixed with #20. Thanks for your PR!


doc.text hyperlinking email address

I'm having and issue where I just want to output the text that is an email address, but it is additionally hyperlinking it. Is there a way to disable the hyperlink?
jspdf version: 1.5.3
see JSFiddle for example
https://jsfiddle.net/u03v915q/

The hyperlink is not in the PDF. Instead, some PDF viewers add a hyperlink. Try e.g. Firefox - there is no hyperlink there.


Update fail2ban documentation

Following the merge of #16278 we need to update the fail2ban
documentation to take account of the availability of the new
sshConnectionFailed failed authentication attempt log message.
Also add a deprecation notice regarding the previous publicKeyHandler
messages, as these may be a source of false positives.
Signed-off-by: Andrew Thornton<EMAIL_ADDRESS>

Codecov Report

Merging #16286 (0e20a91) into main (f825f20) will increase coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main   #16286      +/-   ##
==========================================
+ Coverage   45.42%   45.43%   +0.01%
==========================================
  Files         709      709
  Lines       83483    83483
==========================================
+ Hits        37919    37930      +11
+ Misses      39486    39473      -13
- Partials     6078     6080       +2

Impacted Files
Coverage Δ

modules/queue/queue_bytefifo.go
73.96% <0.00%> (-4.74%)
:arrow_down:

modules/queue/queue_disk.go
68.08% <0.00%> (-4.26%)
:arrow_down:

modules/queue/workerpool.go
54.96% <0.00%> (-1.53%)
:arrow_down:

modules/queue/unique_queue_disk_channel.go
47.26% <0.00%> (-1.37%)
:arrow_down:

services/pull/pull.go
42.42% <0.00%> (+0.43%)
:arrow_up:

routers/api/v1/repo/pull.go
28.74% <0.00%> (+0.59%)
:arrow_up:

services/pull/patch.go
55.93% <0.00%> (+1.69%)
:arrow_up:

modules/notification/mail/mail.go
38.23% <0.00%> (+1.96%)
:arrow_up:

services/pull/check.go
28.27% <0.00%> (+2.75%)
:arrow_up:

modules/queue/manager.go
68.36% <0.00%> (+2.82%)
:arrow_up:

... and 3 more

Continue to review full report at Codecov.

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


Add a global variable to disable search autocomplete

The new search autocomplete is due to be rolled out across GOV.UK.
Autocomplete uses a denylist to stop certain terms from serving suggestions. The process to update the denylist is very manual and developer heavy.
If might be difficult to update the denylist over the holiday period. In that situation the decision might be taken to temporarily turn off autocomplete entirely.
A global environment variable has been added to each environment rather than individual environment variables for each affect app, as the search bar exists in the header on all pages on GOV.UK. This means that it needs to be accessed by the layout_super_navigation_header 1 which is pulled in by static for use in 6 other rendering apps.
We are using an env var to disable this feature rather than enable it so that by default developers using these apps do not need to set-up extra env vars to use the app as it runs in production, with an expectation that it is unlikely that this feature would be disabled for a prolonged period.
When disableSearchAutcomplete is set to true an env var of GOVUK_DISABLE_SEARCH_AUTOCOMPLETE will be set with a value of "1", when disableSearchAutocomplete is false then no env var is set. Apps that use this env var can do:
if ENV["GOVUK_DISABLE_SEARCH_AUTOCOMPLETE"]
  # render search without autocomplete
else
  # render something with autocomplete
end

It is expected that once the autocomplete feature is settled in GOV.UK there will no longer be a need to disable it and this code can be removed, ideally this will happen in Q4 2024-2025 while the Search team is completing the deployment of this feature.

Thanks @theseanything we went down this route to avoid each of the numerous apps that use this needing to set-up the env var for local dev. Where the only way the suggestion you have would work for those is if they did a check of if ENV["GOVUK_ENABLE_SEARCH_AUTOCOMPLETE"] == "false" and that also feels strange to have a variable named "enable" but could only be used to disable.
I know not the most clean, but I don't think there is a purely clean route with boolean env vars.


Unable to open custom mzML file

Hi all,
I'm having some trouble using proteowizard tools with an mzML file that I've edited manually and am hoping you can give me some context for what I've done wrong. The error I'm getting is
[SpectrumList_mzML::create()] Bad istream.

when running
msconvert --mzXML mini_mzML.mzML

I've attached the gzipped file to this issue so you can replicate it (~200kB). This file originally came from a Thermo Orbitrap, was converted to mzML by msconvert (successfully) and then edited to include a subset of the masses and intensities. I'm pretty sure the problem is that I don't know what to change the defaultArrayLength to after I've shortened the associated binary. I successfully edited the binaryDataArray encodedLength parameter to reflect the shorter binary, but can't figure out what the defaultArrayLength should be or if it needs to be changed. Everything else in the file is the same as the original.
I'm asking here because you seem to be the foremost mzML experts currently, and this is vaguely related to an earlier issue opened here (#1583). The docs were unhelpful and I'm not sure who else to ask. If this is too off-topic, please feel free to close.
mini_mzML.mzML.gz

If you want to hand edit a .mzML file, you should make sure to add the "--noindex" argument to the msconvert commandline when you create it.
The index appears at the end of the .mzML file, and specifies the exact byte offsets in the file where each spectrum can be found. It would be really difficult to fix all of those numbers when you edit the file, so it is much easier to edit a file which does not have an index.
By the way, I am not exactly sure what "defaultArrayLength" means, but my guess would be that it's the number of m/z and intensity values that are in the "binaryDataArrayList" element later on in the spectrum xml. You would not want to change the "defaultArrayLength" value without also changing the contents of the "" elements later on in the spectrum. Those  tags contain base64 encoded zlib compressed numbers.

Brilliant! I'd forgotten about the index at the bottom of the file, and with your hint about the defaultArrayLength I was able to get it working. You were entirely correct - it's the number of m/z-int pairs in the scan. Thanks a bunch!

You could use the threshold filter for this to pick the N most intense peaks.

@chambm Unfortunately, I'm looking for a few low-abundance compounds in a sample that has high levels of contaminants at other m/z masses. As I understand the threshold filter, setting a limit with that would select mostly my noisy contaminants and actually remove the low-abundance peaks that I'm interested in. Is there a way to remove known contaminants or specific m/z windows during file conversion with ProteoWizard? I've only seen a way to subset a single window with the mzWindow argument.


Texture broken

All textures from Nemo Mtr expansion mod trains and rails wont show. I tried reinstalling the mod, restarting my pc, redownloading all mtr mods I had installed, tried looking through the files in the mod and reinstalled minecraft yet it isnt fixed. I try downloading newer versions yet it wont work. Can anyone help?

Could you plz post a screenshot?

Not the poster, but this is proof at what they were saying is true. (using pojav launcher mc 1.19.2 fabric)


added embedding of merchant map

embedding http://bit.ly/nav-accepted-here

Looks fine on a desktop but on smaller screens the map is too big

@ro-savage @matt-auckland I think I have solved this issue, can you check if it works?

@IfaqYurmama can you put a bit of spacing between the text underneath and the map? Perhaps:
.add-merchant { margin-top: 20px; }

There's also a white gap between the blue horizontal section and the grey map section. I think this is just caused by the line break in the .md file. Try removing the empty line between these shortcodes and see if the empty  tag goes away.

Please excuse that mess of commits but I think I fixed your notes @craigmacgregor

@IfaqYurmama you missed the whitespace in the merchants page index.md, but I've removed it for you

I am closing this PR as no follow up work has taken place. Feel free to re-open if something changes.


Line 133: Seems like this should be a method of assignment_participant; then the participant_id can be the receiver.

Suggested name: has_team_and_topic

This method (now called team_valid?) was already changed as part of #15. Not sure if further changes to it are warranted. The comments on it make it easy to understand its purpose.

Move to teams model?

Team_valid? cannot & should not be moved to a model IMO because of the flashing it does for error messages. Flashing is done from inside the controller only according to ruby docs. This method should stay in the controller where it is being called and can be easily referenced.
@suryamak can you close this issue if you agree?


Inventory methods should consistently account for pending operations

This is most important for enabling the full potential of python API (and future commands/features by extension).
Inventory methods catch invalid cases based on assessing whether something is or isn't an asset, dir, etc.
They would need to systematically account for the impact of already pending operations, though.
This involves a change to executors that currently report paths to stage/commit. That reporting needs to be structured and more informative. For example, we'd need to now what paths may be new or removed by an operation, so that subsequent operations can tell, whether an input will is expected to be valid at the point of execution.
One flavor of that is addressing #426 (move and rename dir in one go): First operation moves src to dst1, second one is renaming dst1 to dst2. Both think that dst1 is a path that needs committing, but at the point of committing that path doesn't exist and was never known to git.

Note: Based on "hacky" solutions so far, it seems like Inventory should have equivalents to OnyoRepo.is_inventory_dir and the likes, that would additionally check the pending operations (whereas the repo methods only check what's already in the repo).
Inventory methods would then simply have their conditions based on these instead and otherwise the logic remains the same.


Migrate away from bower to yarn.

Description
Coming from https://github.com/Polymer/polymer/issues/4772#issuecomment-320433058, which unfortunately did not directly link to a verbose explanation like https://bower.io/blog/2017/how-to-migrate-away-from-bower/, we know that bower is deprecating itself and suggesting users to migrate away from it, i.e. to yarn. This issue covers the transitioning process and collects implied changes. As there was no current open issue about the subject, it is left here to revive the discussion.
Steps to Reproduce
When we scaffold a new Polymer project following the Toolbox Set Up instructions, we are asked to use Bower for maintaining dependencies.
Expected Results
In the future, we may want to be asked to set up Yarn accordingly.

https://github.com/yarnpkg/yarn/issues/617#issuecomment-311868218
https://github.com/bower/bower/issues/1520#issuecomment-364310202

Actual Results
@TimvdLippe said in https://github.com/Polymer/polymer/issues/4772#issuecomment-322957658

this is not something we are going to change

Browsers Affected

none

Versions

all

#4772 discusses the change from our relative imports to absolute imports. In other words the change implies that Polymer bower_components are always in the root directory. This assumption is incorrect, so we can not make all our imports absolute.
Regarding the transition away from bower and adopting the npm ecosystem, that is tracked in https://github.com/Polymer/polymer/issues/326 More specifically, https://github.com/Polymer/polymer-modulizer/blob/master/docs/polymer-3-element-status.md contains the status of all our elements whether they are installable by npm (e.g. not with bower). Once the modulizer effort is finished, we have transitioned away from bower and can use npm.
Please subscribe to #326 to follow all updates.


MS SQL Server: Login failed for user ''.

System information:

mac os 10.14.3
-DBeaver Core	<IP_ADDRESS>902181142	org.jkiss.dbeaver.core.feature.feature.group	JKISS
java 1.8.0_152 (bundled with installer in download)
No additional extensions

Connection specification:

SQLServer 2012
mssql-jdbc-7.1.4.jre8-preview
no tunnels or proxies

Describe the problem you're observing:
Error message Login failed for user ''. when user name field is not blank and Active Directory - Passwword is selected
Steps to reproduce, if exist:

New connection
enter host/post/db/user/pass
select Active Directory - Passwword for authentication
Press Test Connection...

Include any warning/errors/backtraces from the logs
!ENTRY org.jkiss.dbeaver.model 2 0 2019-02-28 15:20:31.966
!MESSAGE Project 'General' not found in registry

Currently active directory authentication supported only for Azure driver.
Please try it (it should work for regular SQL Server too)

FYI @serge-rider your suggested fix did not work for me.  I had same error as OP.  I still get this error message when using Azure driver.  There is no observable difference to me between using Azure vs MSSQL drivers.  I still get the Login failed for user ''. message when using Active Directory - Password.

@JesseCastro main difference between Azure and SQL Server drivers is AD integration library:

Do you have it? IF yes please post error/debug logs (https://github.com/dbeaver/dbeaver/wiki/Log-files) with auth error.

I also get the same error on Windows "Login failed for user x" when connecting to AWS RDS (SQL Server 2017) using SQL Server authentication.
I can successfully connect  via SSMS with same connection settings but not DBeaver Enterprise 6.1.0:

The driver is com.microsoft.sqlserver.jdbc.SQLServerDriver which comes with DBeaver Enterprise 6.1.0

Is it still actual for you? If yes, tell which DBeaver version do you use now?

The problem is fixed for me in DBeaver Enterprise v7.0 on Mac Catalina, using Microsoft JDBC Driver for SQL Server (MSSQL)

Great!


pkg/proc: fix struct methods to unexported name & format by goimports

Currently, can't compile on darwin.
Fixed some variable to non-exported name.

/cc @aarzilli ?

@aarzilli Ah, sorry. I got it. I'll take care.

@aarzilli Thanks!


Some files(.xls) in Onedrive for personal do not have cTag

Although the documentation says that only folders do not have eTag,
GET /drives/D4FD82CA6DF96A47/items/D4FD82CA6DF96A47!22182
,
GET /drives/D4FD82CA6DF96A47/items/D4FD82CA6DF96A47!24854
and
GET /drives/D4FD82CA6DF96A47/items/D4FD82CA6DF96A47!26221
doesn't have cTag.
But I found that the extension of all those files is xls.
Is this intended? Is it a bug?

I just found that D4FD82CA6DF96A47!22113 doesn't have cTag but it is vsdx file.

I have a theory what could be going on here - it's nothing you can control). I'll mark it as a bug while I confirm.


series.type: 'scatter' single select selects multiple data points not just one

Version
5.3.3
Link to Minimal Reproduction
No response
Steps to Reproduce
option = {
...
series: [{
...
selectedMode: 'single',
...
}]
...
}
Current Behavior
MULTIPLE points are selected when click on a single point in scatter chart
Expected Behavior
select a single data point
Environment
- OS:ubuntu20.04
- Browser: Chrome
- Framework: React

Any additional comments?
No response

Might be releated to #17206


helm upgrade is not recreating pod

Hello
I'm updating my deployment to add or remove a container with a flag but the deployment isn't recreated
My deployment looks like this
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: {{ template "nginx.fullname" . }}
  labels:
    heritage: {{ .Release.Service }}
    release: {{ .Release.Name }}
    chart: {{ .Chart.Name }}-{{ .Chart.Version }}
    app: {{ template "nginx.name" . }}
spec:
  replicas: {{ .Values.replicaCount }}
  template:
    metadata:
      labels:
        app: {{ template "nginx.name" . }}
        release: {{ .Release.Name }}
    spec:
      containers:
        - name: {{ template "nginx.name" . }}
          image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
          imagePullPolicy: {{ .Values.image.pullPolicy }}
          ports:
            - name: http
              containerPort: 80
              protocol: TCP
          # This (and the volumes section below) mount the config map as a volume.
          volumeMounts:
            - mountPath: /usr/share/nginx/html
              name: wwwdata-volume
            - name: nginx-logs
              mountPath: /var/log/nginx/
          resources:
## Filebeat
      {{- if .Values.filebeat.enabled }}
      - name: {{ .Values.filebeat.name }}
        image: "{{ .Values.filebeat.image.repository }}:{{ .Values.filebeat.image.tag }}"
        imagePullPolicy: {{ .Values.filebeat.image.pullPolicy }}
        volumeMounts:
          - name: nginx-logs
            mountPath: /var/log/nginx/
      {{- end }}
      volumes:
        - name: wwwdata-volume
          configMap:
            name: {{ template "nginx.fullname" . }}
        - name: nginx-logs
          emptyDir: {}

and the command that I'm using is like this
helm upgrade <deployment> <chart> --set filebeat.enabled=True
I read some issues and I've found that it was a bug in earlier versions but I'm using the last one
Client: &version.Version{SemVer:"v2.6.2", GitCommit:"be3ae4ea91b2960be98c07e8f73754e67e87963c", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.6.2", GitCommit:"be3ae4ea91b2960be98c07e8f73754e67e87963c", GitTreeState:"clean"}

Hey @adawolfs. Thanks for submitting your issue. Let's see what's going on.
Does the Deployment manifest in the output of helm get manifest <release> look correct to you as in it has the updated configuration?

Oh I see what might be going on here. I tried to run this and got a YAML error. I indented this section:
  - name: {{ .Values.filebeat.name }}
        image: "{{ .Values.filebeat.image.repository }}:{{ .Values.filebeat.image.tag }}"
        imagePullPolicy: {{ .Values.filebeat.image.pullPolicy }}
        volumeMounts:
          - name: nginx-logs
            mountPath: /var/log/nginx/

and then it worked fine for me.
You might want to check to see if it's an indentation issue.
If it's not an indentation issue, what error are you seeing when you run the helm upgrade command?

ping

Hi everybody, thanks for your comments, I've found that my issue here was because in my original chart I've specified the namespace into the metadata and when run the upgrade a new deploy was created to the default namespace, but after remove the namespace definition it worked
I'm not sure if I was clear, please ask any question about it if you have doubts

I have the same issue, running on 2.7.0. The upgrade never recreates the pods, not even when Im trying to use the flag "--recreate-pods ". I checked the namespace and everything is ok, there is no new release deployed elsewhere

My bad, I figured out what was going on: the updateStrategy on StatefulSet is 'onDelete' by default, so as soon as I updated my statefulset to use  RollingUpdate  strategy, everything worked

I'm experiencing the same issue. The command helm upgrade was successfuland when I run helm history <name> I get that the latest status was DEPLOYED. Also, I look at the manifest files from Helm via helm get <name> and they look great. But when I check my deployment directly with kubectl commands I see that it has not been updated. I verified that is not an indentation issue. Not sure if I need to set the imagePullPolicy: Always I think it should not be necessary.
sebastianalvarado@Sebastians-MacBook-Pro ~/D/dap-deploy> helm version
Client: &version.Version{SemVer:"v2.8.2", GitCommit:"a80231648a1473929271764b920a8e346f6de844", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.9.1", GitCommit:"20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}

Any updates on this?

@sebasalvarado Did you already check in the default namespace and see if your deployment is there? or maybe deployed to any other?

Same problem with helm 2.11.0. I'm not sure what is the expected behavior. The pods are not recreated on upgrade.
helm version
Client: &version.Version{SemVer:"v2.11.0", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.11.0", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}

and the default stable/kubernetes-dashboard chart (it does not matter here that it crashes):
helm delete --purge kubernetes-dashboard
helm install --name kubernetes-dashboard stable/kubernetes-dashboard --version 0.7.4
helm list
NAME                	REVISION	UPDATED                 	STATUS  	CHART                     	APP VERSION	NAMESPACE
kubernetes-dashboard	1       	Wed Oct 31 17:19:05 2018	DEPLOYED	kubernetes-dashboard-0.7.4	1.10.0     	minikube
sleep 30 && kubectl get pod --all-namespaces | grep kubernetes-dashboard
minikube      kubernetes-dashboard-5746dd4544-bm7ww       0/1       CrashLoopBackOff   2          47s

helm upgrade kubernetes-dashboard stable/kubernetes-dashboard --version 0.7.5
helm list
NAME                	REVISION	UPDATED                 	STATUS  	CHART                     	APP VERSION	NAMESPACE
kubernetes-dashboard	2       	Wed Oct 31 17:20:08 2018	DEPLOYED	kubernetes-dashboard-0.7.5	1.10.0     	minikube
sleep 30 && kubectl get pod --all-namespaces | grep kubernetes-dashboard
minikube      kubernetes-dashboard-5746dd4544-bm7ww       0/1       CrashLoopBackOff   3          1m

However --recreate-pods helps:
helm upgrade --recreate-pods kubernetes-dashboard stable/kubernetes-dashboard --version 0.7.5
sleep 30 && kubectl get pod --all-namespaces | grep kubernetes-dashboard
minikube      kubernetes-dashboard-5746dd4544-5t9gr       1/1       Running   2          37s

This problem is chart-specific. Apparently another way of forcing pod redeployments is by using annotations https://github.com/kubernetes/kubernetes/issues/13488, but this may terminate the pods as --recreate-pods does https://stackoverflow.com/questions/44268277/on-kubernetes-helm-how-to-replace-a-pod-with-new-config-values. Again, this behavior is chart-specific.


"is" checks aren't considered with generic-method types

If I run the analyzer over the following code in strong mode:
void fn/*<T>*/(/*=T*/ object) {
  if (object is String) print(object.substring(1));
}

I get the error "The method 'substring' is not defined for the class 'Object'.". This seems incorrect, since I'm asserting that object is String immediately before calling substring().

I think this is covered by one of the items at:
https://github.com/dart-lang/sdk/issues/25565
... but that said, this one is probably fairly easy to fix on its own -- we just need to consider the type parameter bound; we already made several fixes along those lines for Strong Mode.
@munificent @leafpetersen - any word lately on improved type promotion and/or related features? we're in a really tough spot right now, with so much stuff not working. I know I bump into it quite a lot too.

I don't think considering the bound helps here, at least not directly.  Currently promotion is only done if the type you're testing against is a subtype of the static type of the thing you're testing, which isn't the case here (and in general will never be the case for type variables without contra-variant bounds except in trivial cases).   There does seem to a valid argument for not-promoting in some cases, but I can't think of any offhand in the type variable case.  It seems like promoting if the type being tested against is a subtype of the bound would make sense.

It seems like promoting if the type being tested against is a subtype of the bound would make sense.

yeah, agreed. I had the same thought at first: "well don't promote because T could be anything". But given a type parameter T extends S, we will only allow you to do operations on S. So given: (T t) { if (t is R) { ... } }, where R <: S, it would be safe to promote t to R, as that is a superset of the operations you could express statically.

https://codereview.chromium.org/2214833002

It occurs to me that an even better change would be to allow refinement of the upper bound, so that within the scope of the check the variable is treated as having an upper bound of the refined type.  I don't think that fits into the existing type promotion structure, but something to think about as a future refinement.

fyi -- I filed https://github.com/dart-lang/sdk/issues/27040 to track your comment Leaf.


Docasaurus framework

Update osu-dictionary repository to Docasaurus framework.
Note that the current version of PR is not suitable to merge directly to the main branch. Merging to a new dev-branch is recommended.

一开始可能是需要的，会在后期去掉

I think we can consider this PR closed now that I’ve been granted read/write access to the repository. I’ve set up a new branch named dev-docasaurus, separate from the main branch, to facilitate parallel development alongside the existing MkDocs solution.
No further merging actions will be considered from now as this Docasaurus framework is still in its infancy and is clearly not mature enough to get merged.
Some further development targets on this framework would be:

Automatic Github Pages deployment implemented by Github Actions
Commentation system

To reviewers: If you feel the need to close this PR, approve it by way of a comment, or you can click the Turn Off Pull Requests button yourself.

Temporarily closed due to staging development, longing for your following PRs!

This is not the real dev-docasaurus branch...


Media Service Account ID's (not Resource ID's) don't get deserialized correctly

Bug Report
Using v25.1.0 of the Azure SDK and this package:
"github.com/Azure/azure-sdk-for-go/services/mediaservices/mgmt/2018-07-01/media"

We've noticed that when creating a Media Services Account, we get the following response back from the Create/Get API calls:
{
	"name": "acctestmsapqbia",
	"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/190222141804566116/providers/Microsoft.Media/mediaservices/acctestmsapqbia",
	"type": "Microsoft.Media/mediaservices",
	"location": "West Europe",
	"properties": {
		"mediaServiceId": "995656da-aa0b-41bb-a1f8-e8199daef04f",
		"storageAccounts": [{
			"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/190222141804566116/providers/Microsoft.Storage/storageAccounts/acctestsa1pqbia",
			"type": "Primary"
		}]
	}
}

However when deserializing this, it appears the resp.ServiceProperties.MediaServiceID field isn't being deserialized correctly and comes back as nil.
Is there a particular reason this is being returned as a UUID rather than a String? Whilst that's technically the correct underlying value, I'm not sure it particularly makes much difference to users of the SDK?
Thanks!

Using your provided response body, I tried to unmarshal it into a Service struct and it works as expected.  Maybe there's more to the repro?
The decision to use uuid.UUID instead of string was before my time on the SDK so I don't know why this decision was made.  Unfortunately changing to string would be a pretty significant breaking change so I suspect we're stuck with this for now (if we ever do a "next gen" side-by-side SDK we can revisit this).

No further response from the customer, closing this one.
Feel free to reopen or raise new issues if any other questions occur.


skipResolveAppPath sets the wrong property in SwaggerConfiguration.java

I found a bug:
In the SwaggerConfiguration.java there is a method skipResolveAppPath which in turn calls setAlwaysResolveAppPath whereas it should be calling setSkipResolveAppPath.
Permalink to method
So now when the method(skipResolveAppPath) is called with value false (meaning do not skip it) like skipResolveAppPath(false) it calls setAlwaysResolveAppPath(false) (meaning it will not resolve the app path).
To make things a bit worse, this method is called from some of the modules (example). Current workaround is to tell it to skip it in order for it not to skip it.

thanks for reporting this! fixed in #4459


If we can somehow figure out how to run incremental tests on PRs as a way of speeding up Dev development  (but still require a full post-commit run on merge. this would be helpful
This functionality could extend to PRs where we suggest pipelines that should be run whenever a PR is submitted based on X change.

@afuller-TT @blozano-tt @rayraykay @tt-rkim @bkeith-TT
thoughts?

Brief search reveals we coudl try this tool
https://pypi.org/project/pytest-testmon/


multiprocessing pool hangs on join

I'm trying to run some python code in parallel.
Once I received a message , I would use multiprocessing.Pool and 'apply_async' to process this message.
A moment later, I found multiprocessing pool hangs on join and no messages consumed.
With ps -ppid=${pid} command, I found this:
  PID TTY          TIME CMD
  312 pts/42   00:00:05 ConsumeTP
  313 pts/42   00:00:05 ConsumeTP
  314 pts/42   00:00:07 ConsumeTP
  315 pts/42   00:00:00 ConsumeTP
  317 pts/42   00:00:05 ConsumeTP
44417 pts/42   00:00:01 ConsumeTP
44418 pts/42   00:00:02 ConsumeTP
44419 pts/42   00:00:00 ConsumeTP
44425 pts/42   00:00:01 ConsumeTP
44426 pts/42   00:00:00 ConsumeTP

These processes just in there without running.
I don't know if this is the reason why the process hangs and can't consume message.

What is your OS?
Ubuntu 16.04
What is your client version?
I'm using this python client from https://github.com/apache/rocketmq-client-python/issues/77#issuecomment-563075087, because have the same import error.
What is your RocketMQ version?
Not clear

Please provide a code snippet, it's hard to guess what the problem is without actual code.

Here is an example:
import multiprocessing as mp

from rocketmq.client import Producer
from rocketmq.client import PushConsumer
from rocketmq.client import Message

def message_parse(message_body):
    '''
    Deserialize message content and return a list from this message
    '''
    ... ...
    return a_list

def worker(task):
    """
    Every task is cpu bound.
    """
    try:
        ''' process '''
    except Exception as e:
        pass

    return process_result

def process(message_body):
    task_list = message_parse(message_body)
    running_pool = []
    pool = mp.Pool(processes=5)
    for task in task_list:
        _result = pool.apply_async(worker, args=(task))
        running_pool.append(_result)
    pool.close()
    pool.join()

    result_list = []
    for p in running_pool:
        try:
            result = p.get(timeout=5)
            result_list.append(result)
        except:
            pass

    return str(result)

def callback(rocketmq_msg):
        msg_body = process(rocketmq_msg.body)
        msg = Message(rocketmq_msg.topic)
        msg.set_keys(rocketmq_msg.keys)
        msg.set_body(msg_body)
        producer.send_sync(msg)

May this can help.

Once I received a message , I would use multiprocessing.Pool and 'apply_async' to process this message.
A moment later, I found multiprocessing pool hangs on join and no messages consumed.

Is there any message received? I'd add some logging/print to find out after which code did it hang.

You can also try py-spy to dump the stacktrace when it hangs.
py-spy dump -p <PID>

Hi @messense, stacktrace is here with main process:
Process 31197: python3 json_edit_server.py
Python v3.6.8 (/usr/local/python3.6.8/bin/python3.6)

Thread 31197 (idle): "MainThread"
    select (selectors.py:376)
    serve_forever (socketserver.py:236)
    serve_forever (werkzeug/serving.py:734)
    inner (werkzeug/serving.py:966)
    run_simple (werkzeug/serving.py:1009)
    run (flask/app.py:990)
    <module> (json_edit_server.py:261)
Thread 31344 (idle): "Dummy-2"
    _wait_for_tstate_lock (threading.py:1072)
    join (threading.py:1056)
    join (multiprocessing/pool.py:546)
    pic_edit (json_edit_server.py:122)
    process (json_edit_server.py:192)
    _on_message (rocketmq/client.py:385)
Thread 3585 (idle): "Thread-30"
    _handle_workers (multiprocessing/pool.py:406)
    run (threading.py:864)
    _bootstrap_inner (threading.py:916)
    _bootstrap (threading.py:884)
Thread 3586 (idle): "Thread-31"
    wait (threading.py:295)
    get (queue.py:164)
    _handle_tasks (multiprocessing/pool.py:415)
    run (threading.py:864)
    _bootstrap_inner (threading.py:916)
    _bootstrap (threading.py:884)
Thread 3587 (idle): "Thread-32"
    _recv (multiprocessing/connection.py:379)
    _recv_bytes (multiprocessing/connection.py:407)
    recv (multiprocessing/connection.py:250)
    _handle_results (multiprocessing/pool.py:463)
    run (threading.py:864)
    _bootstrap_inner (threading.py:916)
    _bootstrap (threading.py:884)
Thread 31345 (idle): "Dummy-1"
    _wait_for_tstate_lock (threading.py:1072)
    join (threading.py:1056)
    join (multiprocessing/pool.py:546)
    pic_edit (json_edit_server.py:122)
    process (json_edit_server.py:192)
    _on_message (rocketmq/client.py:385)
Thread 7602 (idle): "Thread-33"
    _handle_workers (multiprocessing/pool.py:406)
    run (threading.py:864)
    _bootstrap_inner (threading.py:916)
    _bootstrap (threading.py:884)
Thread 7603 (idle): "Thread-34"
    wait (threading.py:295)
    get (queue.py:164)
    _handle_tasks (multiprocessing/pool.py:415)
    run (threading.py:864)
    _bootstrap_inner (threading.py:916)
    _bootstrap (threading.py:884)
Thread 7604 (idle): "Thread-35"
    _recv (multiprocessing/connection.py:379)
    _recv_bytes (multiprocessing/connection.py:407)
    recv (multiprocessing/connection.py:250)
    _handle_results (multiprocessing/pool.py:463)
    run (threading.py:864)
    _bootstrap_inner (threading.py:916)
    _bootstrap (threading.py:884)

I solved it and this issue has nothing to do with rocketmq. Close it.

Hi, I actually met with the same problem using mp.Pool and apply_async similarly on Ubuntu 16.04 but under different context. I wrote the code in the same fashion as you so I am wondering what was the problem with your code (possibly whit mine as well) and how you solved it?

Maybe you will share the secret?


OutputManager: get rid of of the *_if_visible methods

This is helpful since

This lets us check if the future OutputManager singleton exist, and if not, then the code can just shortcut the if-body
This way we can put Rich-specific stuff inside the if-body (makes it easier to not require it inside the container)
The previous code was pretty complex? I struggle with the contextlib.nullcontext stuff

Thanks @mwaskom – happy to address anything outstanding in subsequent PRs!


Failed to map segment from shared object: Permission denied) in /etc/nginx/nginx.conf

I have check nginx -t and the configuration file is ok and successful. But it failed when I want to systemctl start nginx.service . I got the following error.
[emerg] 8572#0: dlopen() "/etc/nginx/modules/ngx_http_modsecurity_module.so" failed (/etc/nginx/modules/ngx_http_modsecurity_module.so: failed to map segment from shared object: Permission denied) in /etc/nginx/nginx.conf:10

You are like to be using fine access controls such as (SELinux or AppArmor). Make sure to bless ModSecurity library and/or ngnix elf with the permission to use shared memory. This is needed to provide communication in between the different nginx workers.

Need your further assistance.
OS: CentOs 7
Nginx 1.6
Modsec v3
I have tried setenforce 0 but still got the error.

I have same issue. Can anybody help ?

@msavara Do you happens to have the file ngx_http_modsecurity_module.so at /etc/nginx/modules/? What is the output of: ldd /etc/nginx/modules/ngx_http_modsecurity_module.so

You can try to disable SELinux temporarily. It will works.. The error are caused by SELinux


Remove Unverified Status from Seller Profile.

If seller is unverified don't show unverified tag meaning only show verified tag when seller is verified.

Hi @Mrhb787 ,
I can work on this issue.  please assign it to me.
Just clarifying the issue that we don't want to show unverified tag in the detail page if the seller is unverified.

@bkjain655 Assigned You.

Hi @Mrhb787 ,
Can you share login details, I have made the changes but wanted to test it once & your readme or env isn't sharing any such details?
Else I can raise a PR & you can validate it & approve it (if everything is fine).
Thank you,
Bhavesh.

@Mrhb787 : Validated & raised a PR (https://github.com/Bookshlf-in/Website/pull/269). Please check it.

Solved in #269.
Closing this issue.


feat: add support for encryption and decryption (Linux)

@lcforges Please resolve the merge conflicts in a MERGE commit. Do not rebase and force push


Fix setting a log level of .none.

Fixes #1550. There was a bug where setting the log level to .none had no effect if a call to MXLogDebug (etc) had already been called as the default configuration would already have been applied.

Codecov Report

Merging #1557 (8d9ec95) into develop (874699b) will decrease coverage by 32.77%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##           develop    #1557       +/-   ##
============================================
- Coverage    45.24%   12.46%   -32.78%
============================================
  Files          520      520
  Lines        84790    84791        +1
  Branches     37527    36191     -1336
============================================
- Hits         38365    10572    -27793
- Misses       45329    73833    +28504
+ Partials      1096      386      -710

Impacted Files
Coverage Δ

MatrixSDK/Utils/MXLog.swift
50.00% <0.00%> (-3.44%)
:arrow_down:

MatrixSDKTests/MatrixSDKTestsData.h
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Crypto/Data/MXOlmSession.m
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Data/MXPeekingRoomSummary.m
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Crypto/Utils/MXCryptoTools.m
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Crypto/Devices/MXDeviceList.h
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDKTests/MXPollBuilderTests.swift
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Space/MXSpaceChildrenResponse.m
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Crypto/Data/MXOlmSessionResult.m
0.00% <0.00%> (-100.00%)
:arrow_down:

MatrixSDK/Crypto/Data/MXExportedOlmDevice.m
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 247 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Support for OpenJDK

Will there ever be any sort of support for OpenJDK in TeaVM? If not, what should I replace it with?

TeaVM won't ever support OpenJDK. What are you going to replace? TeaVM I don't know, it depends. Perhaps, you can take a look at CheerpJ, but it's slower, supports only Java 8 (at least for now) and non-free.

Why not? What exactly prevents TeaVM support for OpenJDK?
Also I think CheerpJ has a free plan, but that won't cut it because I need at least Java 17.

Why not? What exactly prevents TeaVM support for OpenJDK?

TeaVM comes with its own emulation of Java standard library. Reliance on OpenJDK would solve some issues like compatibility. However, the whole OpenJDK was written to be compiled and run against hardware CPUs, not for efficient AOT transpilation into another high-level language that runs in the entirely different environment. This requires to write tons of patches to OpenJDK. Now consider I invested my time into this task. Then, the next version of OpenJDK comes and I have to carefully review all the patches and perhaps fix them. For the project which is maintained mostly by one person in its spare time it's nearly impossible. Other reason is: TeaVM was not designed to run Java applications without modification. Its primary goal is to give developers the tool to share their Java code between platforms, perhaps taking TeaVM specifics in mind when writing code. With the support of OpenJDK developers would result with megabytes of overhead in the generated JavaScript, which is not what they want.


[DOCFIX] update chinese doc

testing

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/905/
Test FAILed.

Build finished. Test FAILed.

@ijnyici42
According to the line under the title of this PR ijnyici42 wants to merge 10,000 commits into Alluxio:branch-0.2 from ijnyici42:master, it looks like you mistakenly merge your master branch to Alluxio branch-0.2.
I recommend you close this PR and open a new PR following https://www.alluxio.org/docs/master/en/contributor/Contributor-Getting-Started.html. Thanks for your contribution!

I close the PR now and feel free to recreate or reopen it. Thanks


Failing to pull Docker image due to incompatible mediaType in manifest for nosqlbench/nosqlbench:5.17.2 using docker version 19.03.1

What is the ideal scenario for using this feature?
Pulling nosqlbench/nosqlbench docker image from both external and internal repo
Is your feature request related to a problem? Please describe.
Fail to pull nosqlbench docker image from internal repository using the following command when building docker image
$ docker build --tag nosqlbench .
Sending build context to Docker daemon  2.048kB
Step 1/1 : from containerregistry-xxx.company.net/container-external/docker.io/nosqlbench/nosqlbench:5.17.2
mediaType in manifest should be 'application/vnd.docker.distribution.manifest.v2+json' not 'application/vnd.oci.image.manifest.v1+json'
Would you like to help implementing or testing it?
No permission to push the image to Docker Hub
https://github.com/nosqlbench/nosqlbench/blob/main/.github/workflows/release.yml#L77
uses<EMAIL_ADDRESS>Need to upgrade to uses: docker/build-push-action@v4
"You can rebuild the image by updating the FROM statement in your Dockerfile. If your image manifest is out-of-date, there is a chance the image pulled from your FROM statement in your Dockerfile is also out-of-date. See the Dockerfile reference and the Dockerfile best practices guide for more information on how to update the FROM statement in your Dockerfile "
Additional context
For Cassandra docker image the following command works but fails for nosqlbench
% docker manifest inspect cassandra
{
"schemaVersion": 2,
"mediaType": "application/vnd.docker.distribution.manifest.list.v2+json",
"manifests": [
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 2212,
"digest": "sha256:7da9eef9e4fe3aa1178efee2e14b09cea2ca93703743ae3b68d210364fa53651",
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 2212,
"digest": "sha256:187c63527e3743ee8b321222b736b669af016d0d78cccf842a707a5186121041",
"platform": {
"architecture": "arm",
"os": "linux",
"variant": "v7"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 2212,
"digest": "sha256:1416e52e1752dd76895c892aa4b378101195fd4b9e76ae1572a7ef1fe8454d2a",
"platform": {
"architecture": "arm64",
"os": "linux",
"variant": "v8"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 2212,
"digest": "sha256:47694e1e5c3aee5e532194741121000762eff2f32209620b8890b2a0899cb3e9",
"platform": {
"architecture": "ppc64le",
"os": "linux"
}
},
{
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"size": 2212,
"digest": "sha256:29cc89efbc78674ac91808e7cf8715d39a7bbee85f5d6209670dbe393aaa4fc2",
"platform": {
"architecture": "s390x",
"os": "linux"
}
}
]
}
% docker manifest inspect nosqlbench:5.17.2
errors:
denied: requested access to the resource is denied
unauthorized: authentication required

Created PR https://github.com/nosqlbench/nosqlbench/pull/1504


Database corruption in 1.0.9

      .cacheWeakRefEnable()
      .mmapFileEnableIfSupported
      .closeOnJvmShutdown
      .commitFileSyncDisable()
      .make

After a kill -15 shutdown, that should trigger the closeOnJvmShutdown, the database is occasionally corrupted one of a few different ways.    My understanding is that 'commitFileSyncDisable' is data-safe, but may lose some recent transactions.   It does not appear to be.
The first way I see an issue is:
app stderr | java.lang.NegativeArraySizeException
        at com.rr.sinks.storage.SyncMetaImpl$BitVectorSerializer$.deserialize(SyncMetaImpl.scala:810)
        at com.rr.sinks.storage.SyncMetaImpl$BitVectorSerializer$.deserialize(SyncMetaImpl.scala:801)
        at org.mapdb.HTreeMap$2.deserialize(HTreeMap.java:135)
        at org.mapdb.HTreeMap$2.deserialize(HTreeMap.java:121)
        at org.mapdb.Store.deserialize(Store.java:297)
        at org.mapdb.StoreDirect.get2(StoreDirect.java:486)
        at org.mapdb.StoreWAL.get2(StoreWAL.java:336)
        at org.mapdb.StoreWAL.get(StoreWAL.java:320)
        at org.mapdb.Caches$WeakSoftRef.get(Caches.java:481)
        at org.mapdb.EngineWrapper.get(EngineWrapper.java:58)
        at org.mapdb.HTreeMap.recursiveDirClear(HTreeMap.java:777)
        at org.mapdb.HTreeMap.clear(HTreeMap.java:747)

The line in my code that is throwing:
override def deserialize(in: DataInput, avail: Int): BitVector = {
      val bytes = new Array[Byte](in.readInt())

in.readInt is returning a negative value, which is impossible as long as the serialize completed.  The data is corrupt or truncated.  What is interesting is that this is happening at start-up on a dataset that I clear!   Why deserialize when clearing?  It appears to be WAL recovery that is triggering this and broken.
The other error is similar -- corrupted data:
java.lang.AssertionError: data were not fully read, check your serializer
app stderr | Exception in thread "main" java.lang.AssertionError: data were not fully read, check your serializer
app stderr |    at org.mapdb.Store.deserialize(Store.java:299)
        at org.mapdb.StoreDirect.get2(StoreDirect.java:486)
        at org.mapdb.StoreWAL.get2(StoreWAL.java:336)
        at org.mapdb.StoreWAL.get(StoreWAL.java:320)
        at org.mapdb.Caches$WeakSoftRef.get(Caches.java:481)
        at org.mapdb.EngineWrapper.get(EngineWrapper.java:58)
        at org.mapdb.BTreeMap$BTreeIterator.advance(BTreeMap.java:925)
        at org.mapdb.BTreeMap$BTreeEntryIterator.next(BTreeMap.java:1088)
        at org.mapdb.BTreeMap$BTreeEntryIterator.next(BTreeMap.java:1073)

The serializer is fine, this ONLY happens after shutdown and restart when the shutdown happens simultaneous to concurrent writing.
Things I may try:

turning off .mmapFileEnableIfSupported
turning off .closeOnJvmShutdown and using my own shutdown hook that sleeps before close -- in hopes that oustanding transactions end before closing
turning off .commitFileSyncDisable(), which will wreck my performance but might prevent corruption

Things I can't try:
mapdb2 or mapdb3, because that will result in classpath conflicts.   My library is used by other applications, and some of those applications are using mapdb 1.0.x.    Major versions should (ethically, morally, for the good of the world!) change packages to avoid such conflicts.  As it is I have to carefully coordinate versions with other libraries and applications, which is a completely unnecessary burden imposed by not changing packages.

I would try to enable checksum and maybe compression. Otherwise no idea. it is old branch, so not going to investigate :(
There is mapdb-renamed package which renames package on 1.0 branch


Artifact missing on maven central

I would like to use this reporter, but couldn't find the artifact on maven central. Would be great to put it there for ease of use.

Hello, please refer to:
https://github.com/azagniotov/codahale-aggregated-metrics-cloudwatch-reporter#dependencies

The desired information is not there

I am sorry if this is not clear enough, but the following section describes how to include the library as a dependency in your project using Gradle. The dropwizard-metrics-cloudwatch is the artifact ID
dependencies {
    compile("io.github.azagniotov:dropwizard-metrics-cloudwatch:1.0.7")
}

I will clarify the docs


Refactoring of systemd service implementation

This is a PR to address the concern raised here: https://github.com/dasource/partyman/issues/31
Overview of changes:

stop relying on the particld.service file in the main particl-core repo by creating a bespoke particld.service file in the partyman repo
Implement the particld.service as a "user service" (--user).  One benefit here is that the service is now user-agnostic.  I removed the check for user "particl" in the particld.service install subroutine. (though I did leave the warning to prefer running at user "particl")
refactor how partyman starts and stops particld so that it first attempts to use the particld.service.  if the service file doesnt exist it should revert back to the original method or starting/stopping
update the README to include a couple of dependencies that I have found necessary to make partyman work (Debian 10)
Lastly I made a small change to fix an error that is thrown when $PARTYD_PID does not exist (~line 1374) and unsets the variable if $PARTYD_HASPID does not equal 1.

I tested this with a few different setups and it seems to function as intended, but some other testing would be appreciated.  Most notably is that I did not do robust testing on how this would play with existing installs (because of the systemd fallback it should be ok)
Lastly, I am not a professional developer, so I would appreciate any feedback on how to improve any future PRs!

Ok this is ready for another look!

Hi @nkvr62
I have done more testing on this and the one use case which does not seem to be addressed is an existing install.
I was thinking maybe we could catch this on the "upgrade/reinstall" and if the old service is present remove it and add the new one, if the service is not present then add new one.
Thank you.

Have merged as-is since it does not interfere with existing installations.


files --starred option for retrieving just starred files

Split from #24.
Even better: support combining this with --full-text so you could do:
google-drive-to-sqlite files starred-projectx.db --full-text "project x" --starred

https://developers.google.com/drive/api/v3/ref-search-terms implies starred = true for this.

Also from that page, which would make good options:

--trashed can do trashed = true
--shared-with-me: sharedWithMe = true

Documentation: https://github.com/simonw/google-drive-to-sqlite/blob/16ac7b637090867607d42ae53a397f7a16040d81/README.md#google-drive-to-sqlite-files


Enqueuing page with diacritic char fails with TypeError [ERR_UNESCAPED_CHARACTERS]

From @VaclavRut:
For url https://www.autobazar.eu/bmw-rad-5-530d-f10uz-od-189€-mesacne-id13072958.html
I get error TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters
But it works without any issue in browser and it is href taken from the site, not manually built.
IMHO we should support these URLs automatically. If browsers can do it, so could we.

Apparently no longer valid, works fine with cheerio as well as playwright in v3.


[DNM] (review-only) WIP: OLM v1 API review

The Operator Framework group has been working on a re-vamp of the Operator Lifecycle Manager project that we have dubbed "OLM v1". Our upstream project has adopted the OpenShift API conventions and since we intend for it to go GA in OpenShift 4.18 we wanted to get the APIs reviewed before GA.
This PR adds a new olm directory containing the Go types for the two APIs that would be introduced:

ClusterExtension
ClusterCatalog

Each API is under a separate sub-directory in this PR because while they are fairly coupled, the APIs live in separate upstream projects:

The ClusterExtension API lives in the upstream project https://github.com/operator-framework/operator-controller (which has a downstream equivalent at https://github.com/openshift/operator-framework-operator-controller) and as such I named the subdirectory operator-controller
The ClusterCatalog API lives in the upstream project https://github.com/operator-framework/catalogd (which has a downstream equivalent at https://github.com/openshift/operator-framework-catalogd) and as such I named the subdirectory catalogd

~Also of note for reviewers, there is a portion of the ClusterCatalog API that is still a work-in-progress, but was included in this PR with what we anticipate it to look like. I will leave PR comments on the exact locations with references to the design document we have in place for the API change and functionality intended.~

here is example output for describing the ClusterExtension CRD

Hey @JoelSpeed , @deads2k just pinging you here to let you know that @everettraven updated this PR with our latest set of changes, and to reflect our understanding vis-a-vis resolved comments.
Please take another look when you have a chance.
I'll ping elsewhere as well, but covering all my bases.
Thanks!


Suggestion: change thead children from td to th

The advantage of th elements is that they can be used with position:sticky CSS. Which means it become very easy to always keep the headers frozen at the top with some CSS.
I've hacked the library to output th's in the thead, and have seen no adverse effects (yet). I've done this for the headers and the filters.

Any new on this please?


formit

Description of the new feature / enhancement
It would be greate if you could incorporate the zoomit tool in powertoys
Scenario when this would be used?
It's an awsome tool for anotations and to give classes
Supporting information
No response

/dup #149


HDDS-9651. Randomize read pipeline order when datanodes cannot be sorted by distance

What changes were proposed in this pull request?
Motivation
Currently data written as RATIS/THREE was primarily read from a single datanode, typically the pipeline leader. Upon researching this issue, two root causes were identified:
As the SCM cannot locate the client relative to the cluster topology (see ScmBlockProtocolServer.sortDatanodes), the client receives a Pipeline with a null nodesInOrder field, resulting in reads being done primarily from the leader datanode.
Solution
If datanode order is not defined for pipeline, client gets an ability to choose random node for read on its own, regardless of  ozone.network.topology.aware.read property value.
These changes improve read throughput and make the cluster's load when reading RATIS/THREE objects more balanced.
P.S. This PR was split into two parts. The rest of changes are now in https://github.com/apache/ozone/pull/5591
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-9651
How was this patch tested?
Added Integration test TestDnRatisRandomRead, which checks that objects stored as RATIS/THREE are read from all three nodes in a pipeline.

Thanks @ibrusentsev for the patch.  Please check basic CI failures:
https://github.com/ibrusentsev/ozone/actions/runs/6808496857/job/18513045594

@adoroszlai Done!

Thank you for the fix. Left some minor nits. Will try out the change once the comments are addressed. cc @tanvipenumudy

@adoroszlai thanks for your comments. According your suggestion, I split this PR into two: the first part with detecting gRPC client address was moved to HDDS-9681 https://github.com/apache/ozone/pull/5591.

Thanks @ibrusentsev for splitting it to #5574.  I just found that @vtutrinov has been working on similar change in #5590.
BTW, can you please let me know your Apache Jira username so I can assign these issues to you?

@adoroszlai

I would argue doing it on the server-side is better for the following reasons:

Good point, going to try this solution.
As for my Jira username - it is the same, ibrusentsev

Also note findbugs failure:
M D ST: Write to static field org.apache.hadoop.ozone.dn.ratis.TestDnRatisRandomRead.bucketName from instance method org.apache.hadoop.ozone.dn.ratis.TestDnRatisRandomRead.createVolumeAndBucket()  At TestDnRatisRandomRead.java:[line 137]
M D ST: Write to static field org.apache.hadoop.ozone.dn.ratis.TestDnRatisRandomRead.volumeName from instance method org.apache.hadoop.ozone.dn.ratis.TestDnRatisRandomRead.createVolumeAndBucket()  At TestDnRatisRandomRead.java:[line 135]
M D ST: Write to static field org.apache.hadoop.ozone.dn.ratis.TestDnRatisRandomRead.volumePath from instance method org.apache.hadoop.ozone.dn.ratis.TestDnRatisRandomRead.createVolumeAndBucket()  At TestDnRatisRandomRead.java:[line 136]

https://github.com/ibrusentsev/ozone/actions/runs/6850194465/job/18623889661#step:7:11

FYI: https://issues.apache.org/jira/browse/HDDS-9343 This will move the sorting of the nodes to OM to avoid front end traffic load hitting SCM and pushing peak read performance of OM.

There is an intermittent failure in TestKeyManagerImpl.testLookupKeyWithLocation:
AssertionFailedError: expected: <ddbebc72-ce20-4ec9-b6c6-5761cbe9bbab(localhost-<IP_ADDRESS>/<IP_ADDRESS>)> but was: <9d933e8b-900b-44bf-b6ed-fcc9df42c84a(localhost-<IP_ADDRESS>/<IP_ADDRESS>)>
  ...
  at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1141)
  at org.apache.hadoop.ozone.om.TestKeyManagerImpl.testLookupKeyWithLocation(TestKeyManagerImpl.java:852)

This part of the test asserts the old behavior, but may succeed sometimes due to random shuffle:
https://github.com/apache/ozone/blob/3aae6725764700ed7db2268b47f5867bbbabebc3/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestKeyManagerImpl.java#L849-L853
I think we can fix it by creating NetworkTopologyImpl with no-op shuffle here:
https://github.com/apache/ozone/blob/3aae6725764700ed7db2268b47f5867bbbabebc3/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestKeyManagerImpl.java#L184
like:
-    NetworkTopology clusterMap = new NetworkTopologyImpl(schemaManager);
+    NetworkTopology clusterMap = new NetworkTopologyImpl(schemaManager,
+        any -> {});

OR
the assertion can be changed to simply check we get back the same nodes in any order.
Not sure which one is better.

@kerneltime @xBis7 would you like to take another look?  The gRPC-specific part has been extracted to another HDDS-9663, so scope of this PR is now limited to read pipeline random order.

Thanks @ibrusentsev for the improvement, @kerneltime, @xBis7 for the review.


Cannot proceed after 'Join & Download Plex for this device' screen

Hi, I cannot proceed once this screen comes up, it correctly pushes users to my domain and to plex.
Below is the error that follows once this screen finishes loading.
11:15:15 INFO <IP_ADDRESS> - - [2023-10-11 11:15:15] "GET /api/invitations/TEST23/verify HTTP/1.0" 200 277 0.002304
11:15:22 INFO <IP_ADDRESS> - - [2023-10-11 11:15:22] "POST /api/plex HTTP/1.0" 200 313 0.925011
/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py:1095: InsecureRequestWarning: Unverified HTTPS request is being made to host 'discord.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

Hi,
Even after resolving the Unverified HTTPS request being made to discord.com I still cannot proceed past this screen.
The console is showing no errors,
Neither is the logs.
I am on wizarr:v3-beta-3.4.2
Running on Unraid 6.12.3 under NGINX reverse proxy and cloudflare

This isnt a bug, the WIzard was shortened because rewrote everything when doing V3, we are woking on Discord Widget screens and other screens for the Wizard in an upcoming update, please this isn't just directed at you but more so anybody coming across this post, stop comparing V2 to V3, they are both completely different softwares, rewritten from the ground up, so you can see why things in V2 may not be in V3 and things in V3 may not of been in V2.


Create DB Schema

Use @Column annotations for validation only.

Duplicated through #2.

Duplicated through #2.


Fix Editing and Scroll Position Saving

I broke this during the conversion to UISearchController. Thanks for noticing, @Pearapps. https://github.com/paulrehkugler/xkcd/pull/56/files#r48038602

it me


Add ActionReplay cheat function

The idea is that you add cheats through the UI, convert them to an array of uint32_t, and run each activated cheat using se_run_ar_cheat each frame. Here's a cheat you can hardcode to try if you want:
94000130 fdfc0002
1216398e 00000200
d2000000 00000000
94000130 fdfd0000
1216398e 00001c20
d2000000 00000000
94000130 000002dc
94000136 fffc0000
0224f90c 00000185
0224f910 030e8000
0224f914 00000000
0224f918 02ed8000
038090e0 eb9fe7c7
d2000000 00000000
Walk through walls
(Pokemon Black) (Hold L + A in game to activate, L + B to deactivate)

Things missing:

Disable input when the edit/add cheat window is focused
Better edit/add window layout
Actually run the valid cheats from the cheats array
Allow for pasting from the clipboard in the input inside the edit/add cheat window

It would be cool if we added in reading/writing of a cheat database too

Moved the AR code in nds.h (because it's different for every console) and also added the nds9_debug_read/write functions back, lmk if that's fine.

Hey could you fix up these items?

Done


Can't render on transparent window

I tried creating a transparent window using:
GLFW.glfwWindowHint(GLFW.GLFW_TRANSPARENT_FRAMEBUFFER, GLFW.GLFW_TRUE);
The window appears to be transparent but I can't render anything on it.
I won't send source code but I'll provide two images of when my program enables transparent framebuffer and when it doesn't.

LWJGL version: 3.2.1
Java version: jdk 1.8.0_191
Platform: Windows 10

The output of your render will be blended with the background behind the window based on the alpha channel you render to. You likely render alpha=0.0 (the fourth component of the framebuffer color output channel).

if you dont wanna show your real source code you can still show your idea with writing a runable demo with 100- lines...
That will  always save lots of time...

Closing, because there is no real issue here. It works fine when taking care of which value is written to the alpha/w channel of the color buffer (including: glClearColor, glColor4f, output of fragment shader).


Add SNIa intrinsic scatter functions

If we want to do this, it would allow for something like
obs_fluxes = SALT2_model(x1, c, ...) + scatter.g10(x1, c) + measurement_noise

I want to have grey, g10, c11 and bs21 models.

Maybe make this an collection of effects so they stay with the source object and can automatically be used by the simulation utility in SNCosmo.


Cleanup: Use internal linkage for functions which are only needed in SSLUtils.cc

Part of #5040.

Using static in this way is deprecated - you should use the anonymous namespace.

IIUC, it's undeprecated in C++11 :)

The use of static in namespace scope should not be deprecated. Anonymous namespaces are not a sufficient replacement for the functionality.
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3296.html#FI6

I don't have strong preference, but these're so many these static in our code. If we agree with using unnamed namespace instead of static, all of these should be replaced.


IDE Autocompletion and code navigation

Hi There,
I seem to be having an issue with my IDE (spyder/vscode) autocompleting and linting my code.
I learn libraries a lot faster if I can see what function/methods/attributes are available for a given class.
If anyone knows how to make it work it would really help.
Thanks,
Sam

That's hardly a pyglet related issue. You might fare better redirecting your very general question to the spyder oder visual code repositories, or stack overflow. For visual studio code, you need to install an extension first, e.g. https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance

All of the other modules I use autocomplete just fine. Which leads me to believe that it is a pyglet issue.
Please advise.
SM

Thanks will look into that. Cheers,

I changed some settings around. Seems to work no. I think it was the enable of docstring style linting.

Completion does not work!!! This is a big issue if you want people to adopt your module.
for example:
vertex_list = pyglet.graphics.vertex_list(...)
vertex_list. ???
usually the functions, variables, attributes that belong to verex_list will appear as a dropdown menu. But for pyglet this does not happen. This is very frustrating and limiting of your module. All other modules I use work just fine. Numpy, matplotlib, cv2, etc.
Please advise!!?!?!!?!?!?!

Works on my machine. As previously advised, it is probably best to check with the maintainers of your IDE.

Works on my machine. As previously advised, it is probably best to check with the maintainers of your IDE.

Thanks again Robert. When I use is in my IPython environment it works as you have shown. Is there a way of making that work like that in my editor?
You are right it is not a pyglet library issue. Must be the IDE. I will investigate.
Sincerely,
Sam

Is there a way of making that work like that in my editor
Most likely, but i don't know. Good luck with your investigation.

Autocomplete should work better in recent pyglet releases. Please give it a try with the latest 1.5.x release.
Thanks!


[Enhancement] Add webDependency alias support

We've seen a few requests come in to improve the "deep import" experience, and I think it makes sense to tackle that now. Especially as we start to bring in more Webpack users with existing apps/dependency trees, it makes sense to have a way to manually configure the package entrypoint and still use the package name as the import.
Today, to use a custom package entrypoint you need to do:
{
  "webDependencies": [
    "preact",
    "undux/dist.esnext/index.js"
  ]
}

import '/web_modules/preact.js';
import '/web_modules/undux/dist.esnext/index.js'; // Everywhere you import undux

Instead, we should be able to do:
{
  "webDependencies": [
    "preact",
-    "undux/dist.esnext/index.js"
+    ["undux", "undux/dist.esnext/index.js"],
  ]
}

import '/web_modules/preact.js';
import '/web_modules/undux.js';

Thoughts on the syntax? I don't have too strong of an opinion on tuple-array vs. object to define an alias, but I think simple is better at this point, so that if we DO decide we want some more complex syntax down the road we can easily map the old syntax to the new one (and deprecate it without removing it entirely).
Would love some help on this one, if anyone is interested! It shouldn't be too tricky, and will most likely involve adding an alias property to InstallTarget and then using that during install() instead of calling getWebDependencyName() to calculate the final location ourself like we normally do.

I am interested in trying that. Instead of adding an alias can't we just the specifier be either a string or a tuple? I will share my solution once it's done

A tuple is what I used in that code snippet above. Curious what you mean if you want to share an example of the interface you're picturing.
I'd recommend we walk through what you're thinking in this issue before you start coding, just to save time later on down the road.

Thank you for that, indeed that would be helpful :) My idea was to change the type of specifier to be string | [string, string] then check if it's a string, proceed as usual. If it's a tuple attempt to calculate the final location based on the user's input.

Sounds good! Your goal should be to pass something like getWebDependencyName(tuple[0]) as the key to depObject. Rollup reads depObject as input, and then creates the web_modules/ directory for us based on that object.

I think this is related, is there a way to deep import a minified prod .js file for prod, and a non-minified dev .js file for dev? I want them to map to the same file in the web_modules folder. An example would be deep importing the .js file from the npm module for React, where it has separate distributions for dev/prod.

I think this is related, is there a way to deep import a minified prod .js file for prod, and a non-minified dev .js file for dev? I want them to map to the same file in the web_modules folder. An example would be deep importing the .js file from the npm module for React, where it has separate distributions for dev/prod.

I'm using Vue and it has several builds, so I think this feature is really necessary. One alternative to your suggestion is to have seperated lib.js and lib.prod.js files, then using snowpack babel plugin to point to the right file based on --optimize flag.
The configuration syntax can be lib | [alias, lib] | [alias, lib, lib.prod] for simplicity and backward compatibility.

The per-env aliasing is an interesting idea, especially since ESM doesn't really have the ability to conditionally serve different package code based on NODE_ENV the same way that CJS does. It may be the responsibility of the package installer.
Lets tackle separately from this PR. @ChristopherBiscardi would still love to get this merged if you're available to get it over the line!

I put this on my schedule to finish up tomorrow

resolved via #249


Build image pipeline: Factor out each image build into it's own job?

This would allow us to rebuild a single image if one failed.
For the 2.2.0 release we had network issues which mean one of the images failed to build. In order to skip the already built images we had to modify and push the to concourse pipeline. Having the image builds in separate jobs would mean we could have avoided that.

@nwmac This is something I discussed with Irfan before he left. Are we any closer to being able to do list with the changes you've made?

@KlapTrap The easiest thing to do is what I did for the metrics - build the images in parallel - its a tiny tweak to the concourse pipeline that is simpler that creating a job for each.

Done