10 November, 2023
How to pass multiple values as sql array for a parameter? (Or how can I cirumvent limit of parameters of prepared statement?)
Programing Coderfunda November 10, 2023 No comments
The query is currently created like this:
static final QInvoiceEntity invoiceEntity = ...
void queryInvoicesWithId(String... ids) {
JPAQuery query = ...
query.where(invoiceEntity.id.in(ids));
}
This works if no more than 32767 parameters are passed. If you pass more than that (e.g. 38000) the following exception is thrown:
Caused by: java.io.IOException: Tried to send an out-of-range integer as a 2-byte value: 38000
at org.postgresql.core.PGStream.sendInteger2(PGStream.java:275)
One solution according to 1 is to use ANY and pass the parameters as an array. I've tried the following but to no avail:
query.where(Expressions.booleanTemplate("{0} = ANY {1}", invoiceEntity.id, ids);
But this throws the following exception:
org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: ? near line 3, column 31 [select invoiceEntity
from InvoiceEntity invoiceEntity
where invoiceEntity.id = ANY (?1)
I've even tried to pass the parameters as a string and convert it back in the query:
query.where(Expressions.booleanTemplate("{0} = ANY string_to_array({1}, ',')", invoiceEntity.id, String.join(",", ids));
But this throws the following exception:
org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: ( near line 3, column 45 [select invoiceEntity
from InvoiceEntity invoiceEntity
where invoiceEntity.id = ANY string_to_array(?1, ',')
How to get the cell's output data from a azure databricks notebook to a file
Programing Coderfunda November 10, 2023 No comments
Getting an image from the database using path images on the client side
Programing Coderfunda November 10, 2023 No comments
import multer from 'multer';
const storageConfig = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, './images')
},
filename: (req, file, cb) => {
cb(null, Date.now() + '-' + file.originalname)
}
})
const upload = multer({storage: storageConfig});
let path = '';
app.post('/upload',upload.single('image'), (req, res) => {
res.setHeader('Access-Control-Allow-Origin', '
http://localhost:3000');
/> if(req.file) {
console.log(req.file);
path = req.file.path;
res.send('hi')
return;
}
res.send('bye')
})
after I received the file path I saved it in the database, but I don’t know how to use it later to show this picture on the screen
09 November, 2023
The Ultimate "git nah" Alias
Programing Coderfunda November 09, 2023 No comments
Recently, developer Liam Hammett shared a fabulous git nah snippet on Twitter that is better than your existing git nah alias 🔥
I know lots of people use a "nah" alias to abort their current changes, but they usually limit it to "git reset --hard".
I like to do more by cleaning and aborting any potential rebase. If I use the "nah" command, I know I want a fresh start, so this helps
He shared two versions, including setting it up as a git alias:
# Git alias ⬇️
[alias]
nah = "!f(){ git reset --hard; git clean -df; if [ -d ".git/rebase-apply" ] || [ -d ".git/rebase-merge" ]; then git rebase --abort; fi; }; f"
If you prefer a bash function instead, here's that version that you would add to your .bashrc or .zshrch file:
# Bash function ⬇️
nah () {
git reset --hard
git clean -df
if [ -d ".git/rebase-apply" ] || [ -d ".git/rebase-merge" ]; then
git rebase --abort
fi
}
Depending on which snippet you prefer, here's how you'd run it:
# Alias
$ git nah
# Bash
$ nah
What are some of your favorite git aliases? Share them with us!
The post The Ultimate "git nah" Alias appeared first on Laravel News.
Join the Laravel Newsletter to get Laravel articles like this directly in your inbox.
Laravel Nova gets a fresh new website
Programing Coderfunda November 09, 2023 No comments
Laravel Nova is a beautifully-designed administration panel for Laravel. Carefully crafted by the creators of Laravel, and they just launched a brand new website with a fresh design.
Nova allows you to create beautiful, easy-to-use, and complete application backends that handle all of your needs.
Gone are the days of cobbling together lackluster administration panels. Nova is designed and crafted by the Laravel team, so it integrates perfectly with the framework.
Nova is the easiest way to quickly manage your data, view your key application metrics, or handle any custom process your application requires.
To celebrate the new launch, all Nova licenses are discounted by ~30%. You can even renew your existing license early to lock in the 30% discount. Visit nova.laravel.com for all the details.
The post Laravel Nova gets a fresh new website appeared first on Laravel News.
Join the Laravel Newsletter to get Laravel articles like this directly in your inbox.
How to prevent GitHub Actions from being run based on name of the branch merging into other branch
Programing Coderfunda November 09, 2023 No comments
on:
pull_request:
branches: [main]
I only want GitHub Actions to run when the branch I'm making the PR from does not start with "random/name*".
I found this in the docs:
on:
pull_request:
# Sequence of patterns matched against refs/heads
branches-ignore:
- 'mona/octocat'
- 'releases/**-alpha'
but it only excludes it when making a PR to that branch, I want it to ignore branches I'm making the PR from. Is this possible?
How to prevent dialog from disappearing? Reactjs
Programing Coderfunda November 09, 2023 No comments
const popupRef = useRef(null);
const handleClickOutside = (event: MouseEvent) => {
if (
popupRef.current &&
!popupRef.current.contains(event.target as Node)
) {
onClose();
}
};
useEffect(() => {
document.addEventListener('mousedown', handleClickOutside);
return () => {
document.removeEventListener('mousedown', handleClickOutside);
};
}, []);
onClose is callback that closes the popup. Now when button is clicked I create the dialog like so:
{showCancelConfirmationDialog &&
}
const handleCloseDialog = () => {
console.log("closing");
setShowCancelConfirmationDialog(false);
}
const handleCancelReservation = () => {
console.log("block")
block.isReserved = false;
block.reservedBy = "notMe";
onClose();
}
Dialog code:
interface DeleteConfirmationDialogProps {
onCancel: () => void;
onConfirm: () => void;
name: string;
}
const DeleteConfirmationDialog: React.FC = ({ onCancel, onConfirm, name }) => {
return (
Te jazdy sÄ… zarezerwowane przez: {name}
Czy na pewno chcesz je przesunąć i powiadomić o tym kursanta?
Usuń i powiadom
Anuluj
);
}
export default DeleteConfirmationDialog;
And now the problem is that wherever I click everything disappears because useEffect and handleClickOutside is triggered no matter what and I have no idea what it is happening. If I comment out this code it works fine. I tried adding another popupRef for the dialog but it didn't work. I also tried to control it via boolean when dialog is active but it also does not work.
Using route group in NextJS 13 stops tailwind from working
Programing Coderfunda November 09, 2023 No comments
This is my tailwind.config file:
import type { Config } from 'tailwindcss'
const config: Config = {
content: [
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
'./src/components/**/*.{js,ts,jsx,tsx,mdx}',
'./src/app/**/*.{js,ts,jsx,tsx,mdx}',
],
theme: {
extend: {
backgroundImage: {
'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
'gradient-conic':
'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
},
},
},
plugins: [],
}
export default config
08 November, 2023
Laravel Pail - The easiest way to tail your log files
Programing Coderfunda November 08, 2023 No comments
Laravel Pail is a package that allows you to easily dive in and tail your application's log files. Pail is designed to work with any log driver, be super easy to remember, and provide a set of useful filters to help you quickly find what you're looking for.
Installing Laravel Pail
Installation is as easy as requiring the package from Composer:
composer require laravel/pail
Then start it to begin tailing your logs:
php artisan pail
Laravel Pail has some flags that allow you to filter log messages in useful ways:
Filter logs by exception type
php artisan pail --filter="QueryException"
Filter by message
php artisan pail --message="User created"
Filter by Log level
php artisan pail --level=error
You can use any of the levels: emergency, alert, critical, error, warning, notice, info, and debug.
Filter by User ID
php artisan pail --user=1
The source code is available on GitHub at laravel/pail, and you can view the full documentation on the Laravel site.
The post Laravel Pail - The easiest way to tail your log files appeared first on Laravel News.
Join the Laravel Newsletter to get Laravel articles like this directly in your inbox.
Laravel 10.31 Released
Programing Coderfunda November 08, 2023 No comments
This week, the Laravel team released v10.31, the ability to place batches within job chains. You can run jobs sequentially, then parallelize a batch of jobs, and continue with the chain once that batch has been completed.
Allow placing a batch on a chain
Sebastien Armand added the ability to run batches of jobs within a job chain
This is a use case we encounter in a couple places at Square where we have a serial process of jobs that need to be handled and one or more of the steps either should be worked on in parallel or are of unknown length when initially triggering the workflow and will create additional jobs, but we need to know when this is finished to ensure we keep the chain going.
Here's an example from the updated Chains & Batches documentation, where you could first flush the cache, release a batch of podcasts, and then batch notifications of those podcasts:
use App\Jobs\FlushPodcastCache;
use App\Jobs\ReleasePodcast;
use App\Jobs\SendPodcastReleaseNotification;
use Illuminate\Support\Facades\Bus;
Bus::chain([
new FlushPodcastCache,
Bus::batch([
new ReleasePodcast(1),
new ReleasePodcast(2),
]),
Bus::batch([
new SendPodcastReleaseNotification(1),
new SendPodcastReleaseNotification(2),
]),
])->then(function () {
// ...
})->dispatch();
Sleep::until() handles string timestamps
James Hulse contributed the ability to pass a timestamp string to Sleep::until(), which will still ensure the value is numeric:
Sleep::until("1699411804");
Added support for Sec-Purpose header
@nanos contributed support for the Sec-Purpose header when relying on the $request->prefetch() method:
Whilst most User Agents set Purpose: prefetch in prefetch requests, Firefox uses Sec-Purpose: prefetch in the latest version, as described in the above MDN article. This means that calling the ->prefetch() method on the request will return false for requests sent via the Firefox browser, regardless of prefetch status.
Release notes
You can see the complete list of new features and updates below and the diff between 10.30.0 and 10.31.0 on GitHub. The following release notes are directly from the changelog:
v10.31.0
* [10.x] Allow Sleep::until() to be passed a timestamp as a string by @jameshulse in
https://github.com/laravel/framework/pull/48883
/>
* [10.x] Fix whereHasMorph() with nullable morphs by @MarkKremer in
https://github.com/laravel/framework/pull/48903
/>
* [10.x] Handle class_parents returning false in class_uses_recursive by @RoflCopter24 in
https://github.com/laravel/framework/pull/48902
/>
* [10.x] Enable default retrieval of all fragments in fragments() and fragmentsIf() methods by @tabuna in
https://github.com/laravel/framework/pull/48894
/>
* [10.x] Allow placing a batch on a chain by @khepin in
https://github.com/laravel/framework/pull/48633
/>
* [10.x] Dispatch 'connection failed' event in async http client request by @gdebrauwer in
https://github.com/laravel/framework/pull/48900
/>
* authenticate method refactored to use null coalescing operator by @miladev95 in
https://github.com/laravel/framework/pull/48917
/>
* [10.x] Add support for Sec-Purpose header by @nanos in
https://github.com/laravel/framework/pull/48925
/>
* [10.x] Allow setting retain_visibility config option on Flysystem filesystems by @jnoordsij in
https://github.com/laravel/framework/pull/48935
/>
* [10.x] Escape forward slashes when exploding wildcard rules by @matt-farrugia in
https://github.com/laravel/framework/pull/48936
/>
The post Laravel 10.31 Released appeared first on Laravel News.
Join the Laravel Newsletter to get Laravel articles like this directly in your inbox.
SwiftUI / Xcode: ForEach closed range vs half open range - error with Text function. Why the difference?
Programing Coderfunda November 08, 2023 No comments
I do not understand why PostgreSQL indicates that a procedure does not exist
Programing Coderfunda November 08, 2023 No comments
Here is my code :
DROP TABLE IF EXISTS clients, accounts, transactions, failed_transactions CASCADE;
CREATE TABLE IF NOT EXISTS clients
(
id int PRIMARY KEY,
name varchar
);
CREATE TABLE IF NOT EXISTS accounts
(
id int PRIMARY KEY,
balance float,
client int,
FOREIGN KEY (client) REFERENCES clients(id),
CHECK (balance >= -500)
);
CREATE TABLE IF NOT EXISTS transactions
(
id serial PRIMARY KEY,
amount float
);
CREATE TABLE failed_transactions
(
id serial,
account_id integer,
attempted_amount float,
timestamp timestamp DEFAULT NOW()
);
CREATE OR REPLACE PROCEDURE log_failed_transaction(new_line record, old_line record)
LANGUAGE plpgsql
AS $$
BEGIN
IF new_line.balance
I can't get new data after apolo fetchMore
Programing Coderfunda November 08, 2023 No comments
I want to use fetchMore when handleLoadMore is called to get 10 data from the 11th one, but the data in console.log(data) is from 0 to 10, which is the first data I got.
I tried to open the DevTool network, but the network shows data from 11.
import {
Box,
Button,
} from '@chakra-ui/react'
import Image from 'next/image'
import { useRouter } from 'next/router'
import { useState } from 'react'
import { ChannelLayout } from '@/components/Layouts/ChannelLayout'
import { useFindMyMoviesQuery } from '@/generated/request'
import type { NextPageWithLayout } from '@/types/layout'
const Cannel: NextPageWithLayout = () => {
const router = useRouter()
const { data, loading, fetchMore } = useFindMyMoviesQuery({
variables: { skip: 0, take: 10 },
})
const [currentPage, setCurrentPage] = useState(1)
console.log(data)
if (loading) return loading...
const handleLoadMore = () => {
const pageSize = 10
fetchMore({
variables: {
skip: 11,
take: 10,
},
}).then((result) => {
setCurrentPage(page)
})
}
return (
)
}
Cannel.getLayout = ChannelLayout
export default Cannel
As noted above.
07 November, 2023
forEach is not a function (for translation tool) [closed]
Programing Coderfunda November 07, 2023 No comments
Uncaught TypeError: country.languages.forEach is not a function
when trying this code:
var arrayLanguage = [];
country["languages"].forEach(function (element) {
arrayLanguage.push(element["name"]);
});
self.selectedLanguage = country["languages"].length > 0 ? arrayLanguage.join(", ") : "N/A";
I was trying to realise a searchbar input field where independent of the language used (e.g. Germany, Germania, Deutschland,...) through typing in a country's name into the searchbox input field the right country name will be found and shown - I'm using the restcountries api.
Any ideas how I could adapt the code?
Marklogic SVC-FILRD error even when file is present on the filesystem
Programing Coderfunda November 07, 2023 No comments
1.0-ml] SVC-FILRD: xdmp:subbinary(fn:doc("mc-2022-vol57/mc-2022-vol57.ch06/graphic/mc-2022-vol57.ch06_g05.tif")/binary(), 1, 8) -- File read error: open '/var/opt/MarkLogic/Forests/content-lake-raw-1/Large/3fe/ffa6dd5438c09a48': No such file or directory
even though I can clearly see this location in the s3 bucket from where I am doing the restore. Why are some files not getting restored?
Map two different entities to the same table?
Programing Coderfunda November 07, 2023 No comments
What I'd like to do is add in an Entity manually, and then simply map it to the original table, but delete the columns I don't need. I set this all up, but I get the rather self-explanatory error of:
Problem in mapping fragments
...EntitySets 'FmvHistoryTrimmed' and
'FMVHistories' are both mapped to
table 'FMVHistory'. Their primary keys
may collide.
Is there some other way I should go about this? Again, most of the time all of the columns are used, so I don't want to trim down the original entity and put the "extra" fields into a complex type.
The user is following himself
Programing Coderfunda November 07, 2023 No comments
the followUser code:
const followUnfollowUser = async(req, res) => {
try {
const { id } = req.params;
const userToModify = await User.findById(id);
const currentUser = await User.findById(req.user._id);
if(userToModify === currentUser) {
return res.status(400).json({ message: "You cannot follow/unfollow yourself!" });
}
if(!userToModify || !currentUser) return res.status(400).json({ message: "User not found!" });
const isFollowing = currentUser.following.includes(id);
if (isFollowing) {
// unfollow user
await User.findByIdAndUpdate(id, { $pull: { followers: req.user._id } });
await User.findByIdAndUpdate(req.user._id, { $pull: { following: id } });
res.status(200).json({ message: "User unfollowed successfully" });
} else {
// Follow User
await User.findByIdAndUpdate(id, { $push: { followers: req.user._id } });
await User.findByIdAndUpdate(req.user._id, { $push: { following: id } });
res.status(200).json({ message: "User followed successfully" });
}
} catch (err) {
res.status(500).json({ message: err.message });
console.log("Error in follow or unfollow User: ", err.message);
}
};
Note: I'm using post method in router file. Is this fine or I should use (patch or put) for that?
OnCollisionEnter does not work correctly at high speeds?
Programing Coderfunda November 07, 2023 No comments
{
public float speed;
[SerializeField] Rigidbody rb;
[SerializeField] GameObject impactEffect;
void Start()
{
rb = GetComponent();
Destroy(gameObject, 4f);
}
void Update()
{
rb.velocity = transform.forward * speed;
}
private void OnCollisionEnter(Collision collision)
{
ContactPoint contactPoint = collision.contacts[0];
Quaternion rotation = Quaternion.FromToRotation(Vector3.forward, contactPoint.normal);
Instantiate(impactEffect, transform.position, rotation);
Destroy(this.gameObject);
}
}
Youtube Link - Listen without sound. There is a crazy fan sound :)
I am trying to make a when bullet collides with something to be destroyed and instantiate a hitteffect but OnCollisionEnter or OnTriggerEnter does not work as intended at high speed objects I guess. Sometimes impactEffect instantiates inside colision object and even sometimes on the other side of object. (See Video). I have tried to write contactPoint[0].transform and it is also same. Does anybody have a solution ?
06 November, 2023
ABP Problem with loading @abp/ng.identity module
Programing Coderfunda November 06, 2023 No comments
the provided screens show the errors that appear when you go to the users or roles page.
enter image description here
enter image description here
Here is part of my app-routing.module.ts routing file:
import { NgModule } from '@angular/core'
import { RouterModule, Routes } from '@angular/router'
const routes: Routes = [
{
path: '',
pathMatch: 'full',
loadChildren: () => import('./pages/home/home.module').then(m => m.HomeModule),
},
{
path: 'account',
loadChildren: () => import('@abp/ng.account').then(m => m.AccountModule.forLazy()),
},
{
path: 'identity',
loadChildren: () => import('@abp/ng.identity').then(m => m.IdentityModule.forLazy()),
},
{
path: 'tenant-management',
loadChildren: () => import('@abp/ng.tenant-management').then(m => m.TenantManagementModule.forLazy()),
},
{
path: 'setting-management',
loadChildren: () => import('@abp/ng.setting-management').then(m => m.SettingManagementModule),
},
{
path: 'page-content',
loadChildren: () => import('./pages/home/pages/page-content').then(m => m.PageContentModule),
},
{
path: 'theme',
loadChildren: () => import('./pages/home/pages/theme').then(m => m.ThemeModule),
},
{
path: 'languages',
loadChildren: () => import('./pages/home/pages/languages').then(m => m.LanguagesModule),
},
{
path: 'countries',
loadChildren: () => import('./pages/home/pages/countries').then(m => m.CountriesModule),
},
{
path: 'users',
loadChildren: () => import('./pages/home/pages/users').then(m => m.UsersModule),
},
{
path: 'roles',
loadChildren: () => import('./pages/home/pages/roles').then(m => m.RolesModule),
},
{
path: 'media',
loadChildren: () => import('./pages/home/pages/media').then(m => m.MediaModule),
},
{
path: 'menu-section',
loadChildren: () => import('./pages/home/pages/menu-section').then(m => m.MenuSectionModule),
},
{
path: 'categories',
loadChildren: () => import('./pages/home/pages/categories').then(m => m.CategoriesModule),
},
]
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule],
})
export class AppRoutingModule {}
Recreating bar chart with R and ggplot2
Programing Coderfunda November 06, 2023 No comments
library(ggplot)
library(tidyverse)
library(ggthemes)
We were thinking of creating two separate graphs and combining them using patchwork or cowplot and also ggthemes for the design. Would be great if anyone with some more experience could help us with how to approach this task. Any help is much appreciated!
Apache Pulsar implementation in a distributed system
Programing Coderfunda November 06, 2023 No comments
Is there any way to implement the same using C# language.
Kindly help me with the guideline to implement it!
SQL or NoSQL batabase for online strategy
Programing Coderfunda November 06, 2023 No comments
In different sources write absolute different solution but I didn't understand what use better for this case
The fact is that in my work I have always specialized The fact is that in my work I have always specialized in web backend but not for games.
Could not access file "$libdir/age": No such file or directory in Windows
Programing Coderfunda November 06, 2023 No comments
To compile the source code on windows machine I'm using msys2 as it can be use to build native windows software.
The make install command is successful :
# make install
/usr/bin/mkdir -p 'C:/PROGRA~1/POSTGR~1/12/lib'
/usr/bin/mkdir -p 'C:/PROGRA~1/POSTGR~1/12/share/extension'
/usr/bin/mkdir -p 'C:/PROGRA~1/POSTGR~1/12/share/extension'
/usr/bin/install -c -m 755 age.so 'C:/PROGRA~1/POSTGR~1/12/lib/age.so'
/usr/bin/install -c -m 644 .//age.control 'C:/PROGRA~1/POSTGR~1/12/share/extension/'
/usr/bin/install -c -m 644 .//age--1.1.1.sql 'C:/PROGRA~1/POSTGR~1/12/share/extension/'
and age file is present there
# ls "C:\Program Files\PostgreSQL\12\lib" |grep age
age.so
pageinspect.dll
But I'm getting Could not access file "$libdir/age": No such file or directory in psql shell.
05 November, 2023
Should the card board or just the card be statefull?
Programing Coderfunda November 05, 2023 No comments
The card model looks like this:
class Playcard {
Playcard({
required this.front,
required this.back,
required this.flipped,
});
final String front;
final String back;
bool flipped;
}
The board widget is showing the cards from the card widget.
The cards can be flipped. Initially all cards have flipped=false. When a card is flipped=true.
To show the card with the new value flipped=true should the board or the card be stateful?
I have created a card provider that sets the value of the card to true if it is flipped.
NSwag openapi2cscontroller: handle controller return type for errors
Programing Coderfunda November 05, 2023 No comments
This is how my swagger looks like
paths:
'/Products/{id}':
get:
tags:
- Products
operationId: getProductById
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/ProductResponseDto'
'404':
description: Entity not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorDto'
The generated interface looks like
/// Success
System.Threading.Tasks.Task GetProductByIdAsync(string id);
and it does not allow to return the ErrorDto in case of error.
I know it is possible to throw an exception and add a middleware to handle it, but I want to find a solution that does not involve throwing exceptions.
This is how the target is defined in the csproj
create a directory name from a string in python
Programing Coderfunda November 05, 2023 No comments
Something like description.replace(" ", "_") but that also removes / replaces punctuations and other whitespaces, and maybe other edge cases I haven't thought about.
The mapping can be lossy (you don't need to be able to reproduce the original string), it just needs to be a reasonable approximation to the given description, and of course - if there's a standard implementation somewhere that's a big bonus
Thanks!
Example:
"I'm thinking Avocado toast" -> "im_thinking_avocado_toast"
Disable audit object on oracle 11
Programing Coderfunda November 05, 2023 No comments
NOAUDIT ALL;
NOAUDIT NETWORK;
NOAUDIT SESSION;
NOAUDIT ALL ON DEFAULT;
NOAUDIT SELECT INSERT UPDATE DELETE EXECUTE PROCEDURE;
NOAUDIT PRIVILEGES;
But audit still generate, grows fast and, of course, my db becomes full.
When I query sys.aud, audit objects like insert, delete, update are being logged to sys.aud.
If someone has solution to this problem, please help me.
How to create a new Bitbucket pull request via API?
Programing Coderfunda November 05, 2023 No comments
{
"title": "My new PR",
"description": "This is my new PR.",
"state": "OPEN",
"open": true,
"closed": false,
"fromRef": {
"id": "refs/heads/this-is-my-branch",
"repository": {
"slug": "my-repo",
"name": 'My repo',
"project": {
"key": "KE"
}
}
},
"toRef": {
"id": "refs/heads/master",
"repository": {
"slug": "my-repo",
"name": 'My repo',
"project": {
"key": "KE"
}
}
},
"locked": false,
"reviewers": [
{
"user": {
"name": "jeremywat"
}
}
]
}
This is the request (I'm using PowerShell):
Invoke-RestMethod -Headers @{Authorization = "Basic $BasicAuth"} -Body $JsonBody -ContentType 'application/json' -Method POST -Uri
https://my-bitbucket-server.com/rest/api/1.0/projects/KE/repos/my-repo/pull-requests
/>
The example provided in the Atlassian documentation includes some additional information in the request body and I tried including all that info as well, but still receive the same (400) Bad Request. error.
I know the credentials ($BasicAuth) are correct because I can get PRs, comment on PRs, etc. via the API with the same credentials. I can also create a new PR from the Bitbucket web interface.
So can anyone tell me what I'm doing wrong and what's the correct way to accomplish this?
04 November, 2023
How to unload assemblies without using AppDomain.Unload?
Programing Coderfunda November 04, 2023 No comments
Loading them is ok but i cant use AppDomain.CreateDomain() and unload appdomain to unload loaded assemblies.If i use the method, this exception will appear:
NotSupportedException: Specified method is not supported.
System.Runtime.Remoting.RemotingServices.IsTransparentProxy (System.Object proxy) in :0
System.Runtime.Remoting.RemotingServices.Marshal (System.MarshalByRefObject Obj, System.String ObjURI, System.Type RequestedType) in :0
System.AppDomain.GetMarshalledDomainObjRef () in :0
System.AppDomain.InvokeInDomain (System.AppDomain domain, System.Reflection.MethodInfo method, System.Object obj, System.Object[] args) (at :0)
System.Runtime.Remoting.RemotingServices.GetDomainProxy (System.AppDomain domain) (at :0)
System.AppDomain.CreateDomain (System.String friendlyName, System.Security.Policy.Evidence securityInfo, System.AppDomainSetup info) (at :0)
System.AppDomain.CreateDomain (System.String friendlyName) (at :0)
Also i have tried to use System.Runtime.Loader package instead, but it seems not supported on .net framwork. Is there any way to solve this problem? Or is there any other ways to unload assemlies?